Kinect v2 Quaternions RRS feed

  • Question

  • Hello all,

    I have been working with the Kinect (V2) and I have a question regarding the quaternions that describe the orientation of the joints. as far as I understood this quaternions are calculated with respect to the previous (parent) joint but is there a way to calculate them with respect to a fixed coordinate frame (joint)?. for example I would like to calculate the quaternion of the left hand with respect to the center of the hip. I know than in the previous distribution of the SDK (1.8) it was possible to choose an absolute orientation over the relative one. is there something like that in the new version? or should I do it manually? if it is like this, can you give me a hint or advice on how to do it?. any help will be really appreciated.

    • Edited by faev999 Saturday, January 3, 2015 7:41 PM
    Saturday, January 3, 2015 7:39 PM

All replies

  • There is no option like that for v2. This thread may help further with implementing a solution:

    Carmine Sirignano - MSFT

    Monday, January 5, 2015 7:47 PM
  • Carmine, I can't access to your link, why?
    Wednesday, January 7, 2015 10:57 PM
  • I cannot access the  link. 
    Thursday, January 8, 2015 10:20 AM
  • sorry linked to the wrong discussion, here is the right one:

    Understand a lot of this will be dependent on the models rigging and orientation is aligned to the Kinect coordinate system. Otherwise there will be a lot of twisting in the model you will need to correct for in code.

    Carmine Sirignano - MSFT

    Thursday, January 8, 2015 6:50 PM
  • Carmine, thanks for the link I had already seen, unfortunately, this does not help more....

    Is it so difficult to have some example of code such as the one used in the demo video there ?

    This is from may 2013, and I think the application is  MS's one !

    Or maybe the boxman there is not achieved with orientation?

    • Edited by Morphée Friday, January 9, 2015 4:08 PM
    Friday, January 9, 2015 4:07 PM
  • Boxman is a segmented model, so the orientations are a simple application of the data. Since each bone segment is an independent mesh applying a local position and rotation is easier. We posted the code for Kinect Evolution in the SDK Browser so you can see the code yourself. If you are connected to the Internet, you will see it has an update that will download the code from the server.

    If you are using a skinned model with a "bone" system, applying the orientations require a that the model is correct orientation as well as some math to ensure the orientation can be applied directly to that bones rotation. You may have to apply a conjugate of the current applied joint orientation to get this to identity apply the Kinect orientation and then reapply to get back to the model orientation space. There are many factors that will be model or graphics engine specific to ensure these work. The only advice here is apply one joint at a time starting with spine base and see if you can get the retargeting to work.

    Carmine Sirignano - MSFT

    Friday, January 9, 2015 7:11 PM
  • You mean that orientations given are in the global reference, and in the boxman above all bones are animated independently, with position and orientation?

    The difficulty is to set quaternions transformations AND a model at the same time, so a working set of model + code would be an appreciated start material....

    Friday, January 9, 2015 7:53 PM
  • About the boxman code, it seems that I can't download the KE SDK update cause I am under W8 and the update is available only under 8.1.

    Updating 8.1 is impossible at the time, the update screwed each time I tried....

    Thursday, January 15, 2015 8:14 PM
  • Carmine, now I have 8.1 and KE, can you tell me where I can find boxman source code?


    • Edited by Morphée Tuesday, October 13, 2015 10:01 PM
    Tuesday, October 13, 2015 9:35 PM