Basic questions on vector processing

Post Reply
mb78
Posts: 6
Joined: Thu Feb 14, 2013 6:47 am

Basic questions on vector processing

Post by mb78 »

Hello forum,

since I could not find any detailed documentation, I am working off the VectorTracking example provided in the Camera SDK in combination with our TrackIR5 sensor and make good progress so far.

Now I need to home in on some details and for that I need to know:

* What is the result of cModuleVectorProcessing::GetPosition() and cModuleVectorProcessing::GetOrientation()?
In what coordinate system (and units) are the returned values, and how/where does the SDK determine the "head" pivot?

* What exactly is the cModuleVectorProcessing::Recenter() function doing?

* Where can I find more information on the smoothing functionality?


Apologies if this has been covered elsewhere. If so, a pointer would also be much appreciated.

Thanks a lot in advance
Martin
mb78
Posts: 6
Joined: Thu Feb 14, 2013 6:47 am

Re: Basic questions on vector processing

Post by mb78 »

*bump*

Anyone got any ideas?

Thanks!
Martin
jolsonsalem
Posts: 323
Joined: Thu Oct 11, 2012 9:18 am

Re: Basic questions on vector processing

Post by jolsonsalem »

I have passed your questions on to our developers and hope to have an answer for you soon.
mb78
Posts: 6
Joined: Thu Feb 14, 2013 6:47 am

Re: Basic questions on vector processing

Post by mb78 »

Thanks very much! I could really use some more information on this soon.

I tried looking at the Python module posted here on the forum but I am not sure it is treating the coordinates in the right way as I am getting some weird transformations out of it, just as it is.

So there is no further documentation beyond the example codes and the few .txt files that ship with the SDK? I was hoping I am simply missing something... ;)

Can't wait to get more information on the rotation values!

Thanks
Martin
mb78
Posts: 6
Joined: Thu Feb 14, 2013 6:47 am

Re: Basic questions on vector processing

Post by mb78 »

In addition to the above:

Is there any documentation available for the cVectorProcessingSettings class defined in modulevectorprocessing.h?

What do PivotOffsetX/Y/Z, ProcessedScale, CenterX/Y/Z and mCenterOrientation do?

Thank you!
Martin
beckdo
Posts: 520
Joined: Tue Jan 02, 2007 2:02 pm

Re: Basic questions on vector processing

Post by beckdo »

The cModuleVectorProcessing class's only purpose to ease the burden of having to manually deal with the raw results of what comes out of cModuleVector. It provides scaling of orientation & position, recentering, and allows you to hook in your own smoothing approach.

The values you get from GetPosition & GetOrientation are the final results that are ready for use and take into account everything listed above.

Everything is in millimeters but you can easily test that yourself to confirm.

Just like the TIR5 software, the cModuleVectorProcessing::Recenter allows you to 'center' the users head based on the current location.

Smoothing is stubbed out in cModuleVectorProcessor. The intent is that if you want to add smoothing, you'll derive from cModuleVectorProcessor with your own class that implements the Smooth method. The Smooth method will get called with the requested smoothing amount for X, Y, Z, and orientation as well as the raw 6 DOF values that need smoothing applied.
mb78
Posts: 6
Joined: Thu Feb 14, 2013 6:47 am

Re: Basic questions on vector processing

Post by mb78 »

Doug,

thanks very much for responding! It seems that the different scalings in cModuleVectorProcessing are different than one if they are not set explicitly?

Can you please clarify which point in space (with respect to the VectorClip) GetPosition & GetOrientation describe?

I still have the feeling I am missing the main documentation for all this? So far, all I have is some very sparsely documented example code that came with the SDK.

Thanks again
Martin
Post Reply