How can i convert kinect depth data in a range [0 255] or can say calculate in intensity format

4 views (last 30 days)
How can I find out the intensity value from depth image within a range [0 255] since depth image represents distances in mm of each pixel from sensor. Generally i want to convert uint16 bit depth image to uint8 bit image within a range 0 to 255 and save it.
thanks.

Answers (1)

Image Analyst
Image Analyst on 4 Jul 2017
I don't have a kinect. Does the Kinect produce two images, a depth image and an optical intensity image? If not, then you're stuck with the depth (range) image and there is no way to convert that into an intensity image where the pixels represent the optical reflectance of the material or subject being imaged.
By the way, to convert any data into the range 0-1 where the min goes to 0 and the max goes to 1, you can use mat2gray. If you want 0-255 you can multiply by 255 of course, and if you want uint8 you can send that into uint8().
uint8Image = uint8(255 * mat2gray(doubleImage));
  1 Comment
sufian ahmed
sufian ahmed on 5 Jul 2017
Edited: sufian ahmed on 5 Jul 2017
It can take RGB, depth, infrared image.But in depth image it includes only distance. but i recently read some paper they showed the depth intensity corresponding to depth distance from the depth image . how they do that ?

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!