none
Kinect Fusion Coordinate frames and transforms RRS feed

  • Question

  • Hi,

    I'm brand new to Kinect development and am starting a couple of volume scanning projects utilizing fusion SDK 2.0.

    I've been playing with Fusion explorer, but I'd like a little bit better grasp on how things actually work particularly the interactions of the cameraToWorld transform and the worldToVolume transforms. Before I start to ask specific questions is there any good documentation that explains these coordinate frames and transforms and how they interact? or a simpler C# fusion example then the explorer whose documentation/comments are a bit more robust? I guess what I'm looking for is something with a bit more detail then the kickstarter video and more holisitic then the api?

    Any thoughts would be greatly appreciated.

    Luke

    Thursday, May 21, 2015 2:24 PM

Answers

  • More detailed documentation would be awesome; I imagine they are hesitant because it's subject to change.

    Stuff like what do the specific values in a Matrix4 represent would be nice; unfortunately, the only way I've found was to do trail and error to determine what specific functions do and values do.

    From what I recall, there is an xyz coordinate system; within this system you can have a volume - and you don't have to have the volume aligned to the z axis, it can be shifted around.  Also, you have a camera - which is located somewhere in the xyz system; if the camera is not facing the volume then no data can be added from the camera into the volume.

    The camera doesn't have to be inside of the volume, it just has to project data into the volume;  you can work with multiple volumes and even use multiple cameras (eg the virtual pov camera can be separate from the virtual kinect camera).

    Thursday, May 21, 2015 9:36 PM
  • as mention it is mainly a trail and error approach to understanding the world camera. Basically the samples provide a working sample of taking the camera coordinate and building out the world reconstruction volume. Everything starts at the identity based on the initial start position of the sensor when you start. When you click reset that generates a new start.

    As for docs, you can refer back to the v1 documentation as it is very similar:

    https://msdn.microsoft.com/en-us/library/dn188670.aspx

    or the MSR whitepaper:

    http://research.microsoft.com/en-us/projects/surfacerecon/

    We cover general guidelines for scanning in the MVA video posted here:

    http://channel9.msdn.com/Series/Programming-Kinect-for-Windows-v2/05


    Carmine Sirignano - MSFT

    Tuesday, May 26, 2015 4:53 PM

All replies

  • More detailed documentation would be awesome; I imagine they are hesitant because it's subject to change.

    Stuff like what do the specific values in a Matrix4 represent would be nice; unfortunately, the only way I've found was to do trail and error to determine what specific functions do and values do.

    From what I recall, there is an xyz coordinate system; within this system you can have a volume - and you don't have to have the volume aligned to the z axis, it can be shifted around.  Also, you have a camera - which is located somewhere in the xyz system; if the camera is not facing the volume then no data can be added from the camera into the volume.

    The camera doesn't have to be inside of the volume, it just has to project data into the volume;  you can work with multiple volumes and even use multiple cameras (eg the virtual pov camera can be separate from the virtual kinect camera).

    Thursday, May 21, 2015 9:36 PM
  • as mention it is mainly a trail and error approach to understanding the world camera. Basically the samples provide a working sample of taking the camera coordinate and building out the world reconstruction volume. Everything starts at the identity based on the initial start position of the sensor when you start. When you click reset that generates a new start.

    As for docs, you can refer back to the v1 documentation as it is very similar:

    https://msdn.microsoft.com/en-us/library/dn188670.aspx

    or the MSR whitepaper:

    http://research.microsoft.com/en-us/projects/surfacerecon/

    We cover general guidelines for scanning in the MVA video posted here:

    http://channel9.msdn.com/Series/Programming-Kinect-for-Windows-v2/05


    Carmine Sirignano - MSFT

    Tuesday, May 26, 2015 4:53 PM