none
Using Kinects Depth Camera to see in the Dark RRS feed

  • Question

  • Im trying to read the depth camera data from the kinect sensor with the MS Kinect SDK and create a depth map so that you can make out features in the dark, kind of a night vision feedback. Ive been mucking around with the standard monochrome look provided with the samples and it is very hard to make out any features really is good just to see outlines of objects, you cant really make out rises and falls in objects. Looking at ending up something like the 3d image done here 3d Kinect Depth Map (http://www.youtube.com/watch?v=B9pafKHWnCo).

    Just wondering if this is possible? And if so how to go about it with the new MS Kinect SDK?

    Thanks in advance

    Tuesday, December 13, 2011 9:53 PM

All replies

  • It's how you're shading. You're mapping 3200 depth values to 256 shades of grey, of course you lost detail. Map it to 4k colors instead and you lose no detail. One way is rainbow shading. You split the 12 depth into 4 bits for each color channel, i.e. the high order four bits. A little less psychedelic is take every 3rd bit to assemble the high order four bits for each channel.

    It helps to understand how the depth works though. The easiest way is track a pixel. Create an array of 3200 array of boolean values all initialized to false. If the corresponding depth value for that array entry appears mark it as true. When you're done write out the indices of the true entries. You'll only get about 256 or 340 entries depending upon the depth resolution. Walk slowly forward in front of that pixel so it registers all possible depths for that pixel. Seeing how those depths are spaced will help you understand the depth data far better.

    Expanding upon that is how an object actually appears in the depth image. A sphere appears as a stack of discs. It's not a smooth curved surface, it's a stair step. It's not a tesselated sphere, it's a stack of discs. The center of those steps is the closest to the reported depth. It's not throwing darts at a dartboard, but taking measurements to the nearest mark on a tape measure. One differance here is the spacing between those marks increase with the square of the distance.

    It's an old post I'm responding to, but a common question and worth answering repeatedly.

    Saturday, February 4, 2012 6:41 AM