السبت، 20 فبراير 2010

Phase I:: Basic IR Tracking

At first we had to collect all the information about the wii-mote device and its capabilities, before implementing the IR Tracking module. After that we began to search for ready made libraries that deals with the wii-mote device.


1- Background Information:


Wiibrew is wonderful source of information on this device, to know its details.






But for this project we only needed certain information which are,


- Connecting to wii:
In order to interface with the wiimote, it must first be placed in discoverable mode by either pressing the 1 and 2 buttons at the same time, or by pressing the red sync button under the battery cover. Once in this mode, the Wii Remote can be queried by the Bluetooth HID driver on the host.

- Wii Reports:
This block includes an enumeration of reports that the device understands. A report can be thought of similar to a network port assigned to a particular service. An "Input" report is sent by the Wii Remote to the host. An "Output" report is sent by the host to the Wii Remote. The Wii Remote has a number of different data reporting modes. Each of these modes combines certain Core data features with data from external peripherals, and sends it to the host through one of the report IDs.

- Wii IR Camera:
We use the IR Camera inside, which has an object tracking processor (IR Blob Tracking).
It's capable of tracking up to 4 moving objects, and these data are the only data available to the host. The IR camera has an effective field of view is about 33 degrees horizontally and 23 degrees vertically (as measured on one unit).

2- Implementation Details:

We used Brian Peek's WiimoteLib ,
and its wrapper  BobCat Library

and inside the Bobcat wrapper we used the first layer ( Code Layers )
because it had 2 main features that we needed
a) it performs smoothing
b) it keeps track of points to keep point indexes consistent as they move.

ليست هناك تعليقات:

إرسال تعليق