Kinect v2 Floor Plane RRS feed

  • Question

  • I tried to implement a floor plane for my programm. I wanted to correct the floor. For example, when I start or move the Kinect, the coordinates of the Kinect will change, but I want that the Kinect 'thinks' that the floor is straight .

    In my opinion it would be better if the Kinect checks the floor every second , not every frame.

    Right now the important part for this plan in my programm looks like this :

    yNew = vector(floorPlane.A, floorPlane.B, floorPlane.C);
    zNew = vector(0,1,-floorPlane.B/floorPlane.C);
    xNew =CrossProduct(yNew, zNew);

    rotMatrix = matrix(xNew.x, xNew.y, xNew.z,0,
    yNew.x, yNew.y, yNew.z,0,
    zNew.x, zNew.y, zNew.z,0,0,0,0,1);

    translationMatrix = matrix(1,0,0,0,0,1,0,-floorPlane.D,0,0,1,0,0,0,0,1);

    transform = translationMatrix * rotMatrix;

    Do you have some ideas ?

    • Moved by Kristin Xie Wednesday, April 15, 2015 5:15 AM
    Tuesday, April 14, 2015 9:32 AM

All replies

  • Hi Antj13,

    Visual C# forum is discuss and ask questions about the C# programming language, IDE, libraries, samples, and tools. Your question related to Kinect. I am afraid you posted in an inappropriate forum. I will move your thread to Kinect for Windows SDKs     >  Kinect for Windows v2 SDK  forum for better support.

    Best regards,


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    • Edited by Kristin Xie Wednesday, April 15, 2015 5:16 AM
    Wednesday, April 15, 2015 5:13 AM
  • Does the sensor have clear and unobstructed view of the floor? If there are shelf edges or chairs this will affect the quality of how it sees the floor. Does the w component of the property return the correct height? That might give you an idea of what it thinks is the floor.

    As for the property value, this already gives you the plane normal for the floor. If you want to know the Up direction of the floor, multiply that by Vector.Up(0,1,0).

    Carmine Sirignano - MSFT

    Wednesday, April 15, 2015 6:51 PM