How to create a depth map of a given image?

33 views (last 30 days)
Supritha  Injeti
Supritha Injeti on 17 Jul 2014
Edited: John Kelly on 27 Feb 2015
Hey all! I am not sure as to what Matlab function to use to create depth map of a given image. Hope you know the answer to this!

Answers (2)

Dima Lisin
Dima Lisin on 18 Jul 2014
Edited: John Kelly on 27 Feb 2015
You can do this using the Computer Vision System Toolbox.
If your cameras are not calibrated, then you can do uncalibrated stereo image rectification, and then use the disparity() function to compute stereo dispartiy, which is proportional to depth. Unfortunately, you cannot easily get depth in world units with an uncalibrated stereo pair, unless you know distances between some points in the world, and you can locate these points in the image.
A better approach is to use calibrated cameras. Please see this http://www.mathworks.com/help/vision/examples/stereo-calibration-and-scene-reconstruction.html of how to calibrate a stereo pair of cameras and reconstruct the scene using the Computer Vision System Toolbox.

Image Analyst
Image Analyst on 17 Jul 2014
You need more information than just a grayscale optical image. You need special sensors (e.g. profilometer, Microsoft Kinect, or stereo cameras).
  3 Comments
Image Analyst
Image Analyst on 17 Jul 2014
I don't know - I haven't done that since I don't work in that field. I suggest you do a search, for example starting at VisionBib: http://www.visionbib.com/bibliography/contents.html, or search the Answers forum for stereo or stereoscopy.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!