none
Kinect Skeletal Tracking RRS feed

  • Question

  • Hi,

    I would like to know how does the Kinect infrared sensor differentiate between the skeletal joints and any other random object? I have tried placing an inanimate object right in front of the Kinect sensor, but it does not detect the object, whereas it works for a human body. Is there something special about the human skeletal joints such that the Kinect infrared sensor is able to detect it and differentiate it from any other object? Thank you for answering my question.

    Tuesday, February 21, 2012 1:42 AM

All replies

  • It all lies in the algorithm used to perform skeletal tracking. The algorithm works in such a way that it would recognize and track only a human that is within the viewing area of the Kinect Sensor.  An object recognition approach is taken to identify the joints on the human body from depth images.

    You can find a publication giving an idea of how it was implemented here:

    http://research.microsoft.com/apps/pubs/?id=145347

    Hope I helped abit.

    Josiah

    Tuesday, February 21, 2012 3:40 AM
  • Thanks Josiah. So am I correct to say that the Kinect sensor is not able to detect object or object movement because it does not have the necessary algorithm? 

    Tuesday, February 21, 2012 6:53 AM
  • It's not a limitation of the Kinect sensor device per se. Skeletal tracking is performed entirely in software, which analyzes the depth data provided by the sensor. The skeletal tracking algorithm is "trained" to detect objects that resemble shape of a human body.

    It's entirely possible to write other tracking algorithms to detect other kinds of objects; but no such algorithms are included in the Kinect for Windows SDK.

    John
    K4W Dev

    Tuesday, February 21, 2012 8:09 PM