- control the mouse pointer with your head
[DE] Ein Headtracker – auch Kopfmaus genannt – kann eine herkömmliche Computer-Maus vollständig ersetzen. Hierbei wird mit einer (beim XO eingebauten) Webcam die Bewegung des Kopfs aufgenommen und in Mauszeigerbewegungen umgesetzt. Durch Verweilen auf einer Schaltfläche wird nach einer einstellbaren Zeitspanne ein Mausklick ausgefuehrt. Als Zwischenschritt ist sogar Drag’n’drop, also Maustaste gedrückt halten, möglich. Eine Aktivity für Sugar zum einfachen kalibrieren ist abschliessend für dieses Projekt geplant. Der Headtracker ist Teil vom XOAccessibilty Projekt.
[EN] A head tracker can fully replace a traditional computer mouse. It works by capturing head movement with a web cam (built in to the XO) and translating it to the mouse cursor. Staying idle over a button presses it after a configurable time interval. Even drag and drop operations are possible. A sugar activity for easy calibration is planned as a final step for this project. Headtracker is part of the XOAccessibility Project.
- If you could only move your head but not your hands you could still control the XO by using the headtracker.
- If you need both hands for typing or whatever and also need the mouse to control the XO.
- Research of head movement (which things you are looking at first)
- headtracker acts like a real mouse
- typing text with an Onscreen Keyboard or better with [dasher]
more technical description
The built in camera is tracking a special sticker on your glasses/hat/forehead. If you move your head the software recognizes this and moves the mouse pointer accordingly. Holding the mouse pointer a few seconds over a button causes a click.
- Video camera: 640×480 resolution, 30FPS, Omnivision OV7670. The camera and device driver support disabling AGC and automatic color balancing, to enable its use as a photometric sensor for educational applications. 
- maybe we need some IR LEDs to get a stable tracking. Powered from USB port, roundabout $3,00
indeed, we need infrared light. I have made a video with the adapter but the record activity saves movies in such a low quality that you can’t actually see anything. I’ll try to provide a high quality video some other time.
USB IR Adapter
The prototype of the USB-IR-ADAPTER. It is constructed on a “Lochrasterplatine”, 3 IR-LEDs and one resistor. You can stick this board directly into the USB port near the camera. Works fine 🙂
We do not want to capture and process all the information of typical video. We only want to grep a little shiny point that moves. That’s why we are using an IR-FILTER. The cheapest filter you can get is a snippet of an unexposed but processed slide positive film. Here are two pictures: One with the filter, the other one without the filter. The shiny point is a very small sticker (3mm x 5mm) at my spectacles’ frame. It reverberates the light from the Infrared LEDs.
I tried not to move my eyes but my head and looking to the four corners and the center of the XO display. The display is very small so I moved my head really not that much. Here is the IR-Result merged from 5 snapshots:
The area is somewhat around 90×30 pixels in size. So I am searching for a cheap mag lens to improve the resolution of the headtracker. What I have found is a very cheap macro lens. I took it from a one-way-camera and put it directly in front of the web cam lens. The difference is obvious. It is possible to put two (ore more) lenses in line but the quality isn’t very well, then. I did not find a magnification lens yet. 🙁
The images are recorded (and compressed) with the record activity on a B4 XO.
The lens itself: