How to convert from 2D (RGB image) to 3D?

7 views (last 30 days)
I have a database of RGB, JPEG images where each image has a size of 1398 x 1611 x 3. Original images are in 2D. My intention is to build a 3D model from these images. Couple of questions came up to my mind while struggling with this issue:
1. I want to give the spacing to each slice.But how? (what i meant here is: to give the slice thickness(z direction),
calculate [real width of the image (mm)/image width (pixel)] (x direction),
[real height of the image (mm)/image height (pixel))] (y direction)
2. Then build a 3D model by stacking those 2D images. Does MatLab support 3D modeling? Atleast a 3D mesh would be fine.
Can anyone help me with this? I really appreciate any help.

Accepted Answer

Image Analyst
Image Analyst on 28 Feb 2016
A color image is #D already. Two lateral dimensions and then the third dimension for the 3 different color planes. To make a stack of these, you'd need a 4D array.
MATLAB does not have great 3D volume visualization. You're pretty much limited to cutaway views and isosurfaces. To get true volume visualization you'd have to use a program like Avizo.
  3 Comments
Image Analyst
Image Analyst on 28 Feb 2016
Yes, you can have a spatial calibration factor for any of the 3 spatial dimensions to convert indexes (voxels) into real world units such as cm or mm or whatever.
Chathu
Chathu on 28 Feb 2016
Thank you so much for your prompt response Image Analyst. Really appreciate it.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!