Question about skeleton tracking coordinate

While developing with the skeleton tracking, we noticed that the relative position of the joints (e.g. right hand related to right shoulder) are different, when camera position is changed (e.g. on top of a TV, on the table, and on the ground). Is there any wrapper or helper class inside nuitrack, that takes somewhere on the body as origin point, and get the relative position correctly for body, so that when camera position moves, the value stays the same on an exact same pose?

Hi,
We have a Moving Sensor, check this

Hi, Thanks for the quick reply, is there any documentation for the Moving Sensor? And also, I doubt if it’s our case. Because we’re not moving the sensor actively during play.

The sensor will be placed on a fixed place, but it will be vary from space to space. In our usecase, sometimes it will be above a TV, sometimes it will be on a table which is only a little higher than ground. But once it’s settled, then the camera is not moving at all.

The problem is, based on our test, the skeleton joints relative position also changes because the camera has different perspecitve. Are there any convenient ways to “normalize” the joints position regardless of the camera position? For example, use ground as vertical coordinate origin, and world up is actually “world up” instead of camera up (which is probably tilted.)

Hi,
Sorry for misunderstanding.
Could you please record a .bag/.oni file where you demonstrate the issue and send it to support-nuitrack@3divi.com?

It’s not an issue, it’s a technical question. And because we don’t know how to record thing to .bag or .oni file, we can’t provide anything here.

We are working on our own solution for joint relative position to another joint, but I hope that your API can already provide such things, which consider foot or torso or head or whatever as origin point of coordinate, and other joint as “local position” to that origin point.

Hi,

Sorry, but we don’t have such functionality right now.

Hello @dongyiCai_retrobrain
Are you using unity for development?
If so, you can see how SkeletonAvatar (script and prefab) works from our NuitrackSDK.Unitypackage. There, after calibration (you need to stand for 1 second in t-pose), the skeleton is aligned
I also think the idea of a normal floor (http://download.3divi.com/Nuitrack/doc/classnuitrack_1_1UserFrame.html) should work, but we don’t have a ready-made example. And you will always need to ensure that the floor is in the field of view of the sensor