FreeTrack Forum

Welcome, you're not connected. ( Log in - Register )

RSS >  tweaking and calibrating, how to get the 'head' moving the way you want it to!
petroleus #1 12/04/2010 - 21h05

Class : Apprenti
Posts : 11
Registered on : 12/04/2010

Off line

Hey,

I've just installed the software on my win 7 laptop, with an adapted logitec c200 cam, and a baseballcap 3-points powered by dc adapter.

I've looked around in all the tweaking and calibration settings I could find, but none of them seemed to fix the issue I am having: axes being mixed and messed up.

When I fix my head IRL and do pure yaw, freetrack will measure backward/foreward and sideways translation as well. Similarly, for pure pitch, it will also register foreward and backward translation, and a bit of upward/downward as well. Roll seems to be fine after tweaking the model parameters.

I've tweaked all I can think of, tried if there was any setting at all for the model parameters that would remove or even reduce these mixed readings, but nothing seems to work. isn't it obvious that rotation will also cause translation on the horizontal plane, considering the model is not exactly on my center of rotation, and why doesn't freetrack understand that?

edit: just looked at it again, and now I also notice a yaw that is registerd when I perform pure sideways translation.

greetz,

Peet
Edited by petroleus on 12/04/2010 at 21h10.
buccaneer #2 13/04/2010 - 19h31

Class : Apprenti
Posts : 24
Registered on : 14/03/2010

Off line

I guess you selected 3-point-cap model in FT. Also check [Profile] and what yaw-pitch-roll-x-y-z maps to. Do dots on preview screen show and move correctly (no mirroring, upside-down)?
petroleus #3 15/04/2010 - 20h07

Class : Apprenti
Posts : 11
Registered on : 12/04/2010

Off line

perhaps I was a bit unclear, sorry. What I mean is that aside from the desired movement, roll giving roll, pitch giving pitch, zoom giving zoom, etc, there is also movement from other axes. so when I apply pure yaw, the response I get is yaw plus translation on the horizontal plane.

by the way I found out that 'view relative translation', in the advanced profile page solves some of those problems. For instance peeking over your shoulder and applying roll no longer gives reversed roll. But the 'contamination' as I would call it persists.

Addittionally I was wondering if there was any way to tell freetrack where exactly in space my camera is relative to my head, sothat parallax and perspective effects can be applied. For instance, when I move my head in pure side to side translation, from the camera's point of view there is also yaw. so to actually see pure sideways translation ingame I actually need to rotate my head on the horizontal plane, with the camera being the rotational axis. the same goes for all axes really.


back to the contamination issue: with the "model position" "depth" and "vertical" options, in combination with side-view, I can get my pitch to be pretty much pure pitch, only slight movement forward and backward....

here: click for video  :)

first is pure pitch, second pure yaw, third pure side to side translation
Edited by petroleus on 15/04/2010 at 20h09.
buccaneer #4 16/04/2010 - 08h48

Class : Apprenti
Posts : 24
Registered on : 14/03/2010

Off line

Hi

petroleus @ 15/04/2010 - 20h07 a dit:

perhaps I was a bit unclear, sorry. What I mean is that aside from the desired movement, roll giving roll, pitch giving pitch, zoom giving zoom, etc, there is also movement from other axes. so when I apply pure yaw, the response I get is yaw plus translation on the horizontal plane.

by the way I found out that 'view relative translation', in the advanced profile page solves some of those problems. For instance peeking over your shoulder and applying roll no longer gives reversed roll. But the 'contamination' as I would call it persists.


it was good to see your video. You have to play with [Model]>[Model position] parameters. You need to set position of R point relative to head pivot point (where skull is attached to spinal column).
From that video it looks like R point is positioned somewhere inside of your neck  :blink:  (V=-32mm, D=29mm).
(Hint: from last section of this post you can get an idea how to measure that position precisely with imaging software.)


Addittionally I was wondering if there was any way to tell freetrack where exactly in space my camera is relative to my head, sothat parallax and perspective effects can be applied. For instance, when I move my head in pure side to side translation, from the camera's point of view there is also yaw. so to actually see pure sideways translation ingame I actually need to rotate my head on the horizontal plane, with the camera being the rotational axis. the same goes for all axes really...


I don't know whether FT calculates parallax effect correctly but real world position estimations are configured from [Cam]>[Calibration] panel. FT has no clue what type of optics it works with. Maybe cam has zoom and with all zoom-in(high focal lenth) you are sitting 10m away from cam, or cam has wide-angle lens (low focal length) and you are sitting 50cm away from cam.
Try to play with those params to find what fits you best.
petroleus #5 22/04/2010 - 15h42

Class : Apprenti
Posts : 11
Registered on : 12/04/2010

Off line

Well, on my first model, which was in terms of dimensioning pretty much the same as the second, setting the model positioning parameters to the actual values didn't give the correct results at all, and these strange, seemingly impossible pivot positions were determined simply by trial and error: I would move my head and change the slides until FT would move as similar as possible to my actual head movements.

Now with my new and improved model for some reason the actual values do give proper results, eventhough the contamination is still present, primarely in yaw at high angles. By the way, where did those green limitation-lines come from, I didn't notice them when I just installed the program, but now my head seems to be limited (and it is only near or over these limits that the contamination is strong, ie turning my head beyond the limitation is interpreted as translation).

The parallax implementation is quite simple, or at least the trigonometry involved in it: an equal translation of two points at differing distances from the point of view result in different observed translations. More specifically, a point close to the camera seems to move more than a point farther away, at the same translation. The only math you'd need to implement is the 'angle' resulting from parallaxed translation, and subtract that from the observed angle to get the actual head's angle. The only new input required is the distance to the camera. I'm surprised FT doesn't have this already. Any way to get this implemented? I can script, but am totally entirely unfemiliar with doing so in windows-based programs :P.

 >  Fast reply

Message

 >  Stats

2 user(s) connected during the last 10 minutes (0 member(s) and 2 guest(s)).