Difference between revisions of "ECE597 Project Interactive Pong"
J Lipscomb (talk | contribs) |
|||
(14 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
+ | This project is part of the ECE597 32-bit Embedded Linux class at Rose-Hulman Institute of Technology in Terre Haute, IN. | ||
+ | |||
+ | ==Project Goal== | ||
+ | The goal of this project is to implement a simple game of "Pong" on the Beagle Board that allows a user to play the game by gesturing with their hands rather than using a mouse or keyboard. | ||
+ | |||
+ | ==Team Members== | ||
+ | Elliot Simon | ||
+ | |||
+ | Mitch Garvin | ||
+ | Matt Luke | ||
− | + | Jian Li | |
− | + | ==System Setup== | |
+ | Currently the hand-tracking and Pong games run in different processes. Hand-tracking requires a picture called "sshou.bmp" in the /home/user-name directory that is used as a reference for the histogram that tracks hands. The hand-tracking writes to a temporary pipe in /usr/yval, which the Pong game then reads the latest value from. To run, start the hand-tracking program in a root shell, then the Pong game in a separate root shell. Press [Spacebar] to begin a game, then [Spacebar] to release a ball. Moving a hand up and down in front of the camera causes the user's paddle to move and reflect that. The user's paddle will not move if there is not a ball "in play". | ||
+ | |||
+ | ==Task List== | ||
+ | Below is an estimated list of tasks to complete Task list will be updated as necessary | ||
+ | |||
+ | {| border="1" cellspacing="0" cellpadding="5" | ||
+ | ! Task | ||
+ | ! Status | ||
+ | ! Description | ||
+ | |- | ||
+ | | Pong on the Beagle Board | ||
+ | | Complete | ||
+ | | Port a simple game of classic pong onto the Beagle Board with keyboard/mouse input | ||
+ | |- | ||
+ | | Webcam interface with the Beagle Board and OpenCV | ||
+ | | Complete | ||
+ | | Get the Beagle Board to recognize the webcam and perform basic functionalities from OpenCV (connect to camera, snapshot, etc.) | ||
+ | |- | ||
+ | | Refactor Pong | ||
+ | | Complete | ||
+ | | Refactor Pong to work with a different input (camera) | ||
+ | |- | ||
+ | | Track hands with camera and OpenCV | ||
+ | | Complete | ||
+ | | Track user's hands using OpenCV library functions on the Beagle Board | ||
+ | |- | ||
+ | | Interface tracking camera with pong | ||
+ | | Complete | ||
+ | | Join the tracking and game into one system such that users can play pong with their hands | ||
+ | |- | ||
+ | |} | ||
+ | |||
+ | ==Files== | ||
+ | [[File:PyPong.tgz]] | ||
+ | |||
+ | [[File:cvex1.zip]] | ||
+ | |||
+ | [[File:Ubuntu_9.10_opencv2.0.doc]] | ||
+ | |||
+ | ==Links== | ||
+ | [http://www.logitech.com/en-us/webcam_communications/webcams/devices/6333 Logitech Webcam Pro 9000] | ||
+ | [[Category:ECE597]] |
Revision as of 09:34, 24 May 2010
This project is part of the ECE597 32-bit Embedded Linux class at Rose-Hulman Institute of Technology in Terre Haute, IN.
Project Goal
The goal of this project is to implement a simple game of "Pong" on the Beagle Board that allows a user to play the game by gesturing with their hands rather than using a mouse or keyboard.
Team Members
Elliot Simon
Mitch Garvin
Matt Luke
Jian Li
System Setup
Currently the hand-tracking and Pong games run in different processes. Hand-tracking requires a picture called "sshou.bmp" in the /home/user-name directory that is used as a reference for the histogram that tracks hands. The hand-tracking writes to a temporary pipe in /usr/yval, which the Pong game then reads the latest value from. To run, start the hand-tracking program in a root shell, then the Pong game in a separate root shell. Press [Spacebar] to begin a game, then [Spacebar] to release a ball. Moving a hand up and down in front of the camera causes the user's paddle to move and reflect that. The user's paddle will not move if there is not a ball "in play".
Task List
Below is an estimated list of tasks to complete Task list will be updated as necessary
Task | Status | Description |
---|---|---|
Pong on the Beagle Board | Complete | Port a simple game of classic pong onto the Beagle Board with keyboard/mouse input |
Webcam interface with the Beagle Board and OpenCV | Complete | Get the Beagle Board to recognize the webcam and perform basic functionalities from OpenCV (connect to camera, snapshot, etc.) |
Refactor Pong | Complete | Refactor Pong to work with a different input (camera) |
Track hands with camera and OpenCV | Complete | Track user's hands using OpenCV library functions on the Beagle Board |
Interface tracking camera with pong | Complete | Join the tracking and game into one system such that users can play pong with their hands |
Files
File:Ubuntu 9.10 opencv2.0.doc