Class : Apprenti
Posts : 15
Registered on : 08/11/2007
Off line
I am using FreeTrack to control the position of the mouse based on the position of a single LED. I am measuring the mouse position so that I can calculate the position of the LED in real units based on its distance from the camera, which I know.
Can I confirm that the process by which the mouse position is calculated goes as follows...
The image point (as shown in the left column of the main view) is determined by the distance (in number of pixels) from the centred position.
To convert this to yaw and pitch the co-ordinates are divided by the video resolution, expressed as a percentage (i.e. 0-50) and then multiplied according to the corresponding curve value.
So far this all seems logical.
Now, to get from the yaw and pitch values (in the second column of the main page) to mouse co-ordinates it would appear that I must divide by 144. That is the pitch and yaw values which cause the pointer to reach the edge of the monitor both horizontally and vertically is 72.
Is that correct? And is there a particular reason for these numbers? At first I thought it could be to do with the screen resolution, but changing it makes no difference.
Also, is there a way to set the curve points other than with the mouse - i.e. so that I know I have got a perfectly straight line?
Sorry for the long post. I hope I have made sense.
Cheers,
Ally
P.S. I tried looking in the code to answer this question myself but I'm not familiar with the programming language and there were too many files to read them all!
Class : Webmaster (admin)
Posts : 780
Registered on : 13/07/2007
Off line
1) Point relative to camera center expressed in fraction.
2) Multiplied by 0.4*pi (72 in degees) <- magic number to make single point tracking similar to the other tracking methods.
3) Relative to the user-defined center point.
4) Smoothing (relative deadzone filtering).
5) Sensitivity multiplier.
6) Response curve mapping (not multiplication) that also define limits.
Right click -> Linear on curve to apply a preset curve (unfortunately this is NOT perfectly linear)
7) Absolute mouse mode uses (65535, 65535) as the coordinate range.