I wrote it looks like a real table. But only from the point of view of the camera.
In this mode, BAM is trying to trace the "camera" ... or viewer. I cannot keep track of the eyes ... but I can keep track of the IR diode. To track IR LED, I use two cameras mounted in WiiMotes. They are arranged in such a way that they identify an LED placed on players cap. This process is called Head Tracking. Video from the main page was done by placing the LED on a cellphone cam.
Before you can track the LED you need to calibrate cameras. For that you need to use "calibration board". This tool is just 4 IR LEDs. The program needs to know the relative position of these diodes. Choose Calibration Board and enter the coordinates of three LEDs. Coordinates of the first LED is 0.0. See picture on the right.
The two frames on right shows points/leds detected by the cameras. Below frames is:
- the battery state in WiiMotes
- picture quality - this value shows how visible the IR-LEDs' lights are
- Calibration Quality
- CamID - id codes of WiiMotes. There should be two different values here.
The calibration process begins by selecting Start Calibration of WiiMotes. On right there will be instructions "what to do". We need 20 frames. They should be different. You should move "Calibration Board". A few tips on how to move:
- Start at "center" for both cams
- Try to not rotate board
- Don't try to cover whole space
- Keep board in radius ~20 cm from start position
- First 5-10 frames are most important
- Try at begin have one fram at center, and 4 frames at square corners at same distance from cams
After collecting 20 frames counter is replaced by Calculations in progress. The calculations may take a few minutes (on my i5-2500 it takes 10-15 seconds). CalibrationQuality is displayed below battery status. Lower value is better. Lower than 10.0 is ok.
From that moment instead of "calibration board" we use a single diode. Calibrated cameras track the point, the coordinate system is calculated in relation to one camera only. In order to make system work properly, we need to know where the table is located and what are its dimensions. To do this, we collect the position of 3 points on the screen surface. Put the "camera" (single IR LED) on three points displayed on the screen . The first point is in the lower left corner of the screen and is marked with a red diamond. After placing the "camera" on this point, select Set Point in the menu. Then the second point (bottom right) - select Set Point again. The third point is at the center of the table. No need to place the camera exactly at this point, but as close as possible and on the screen surface. After storing the third point "camera" tracking will work immediately.
Here are two comments:
- After finishing the calibration exit from menu (press ~) . Calibration results are stored.
- Please note that 3 consecutive points used to determine the location and size of the table were called by the term "camera". If you place the IR LED (As an example) 1 inch above these points and then 1 inch above the eye, your eye will be the "camera.
After any displacement of camera, you should recalibrate . After calibrating the cameras, you can load different tables. You can also exit the program. Calibration parameters are loaded at startup.