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".

−

+

−

/*Get the color of the hand, so that we can track the movement of the hand automatically.*/

Contents

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