Convert 2D image to 3D with color map
11 views (last 30 days)
Show older comments
Hello,
I have a color image of radiation pattern.
I'd like to convert this image into a 3D image, based on color map (which is coming along with the image).
Example of image that I have.
Please suggest.
1 Comment
Answers (2)
Image Analyst
on 7 Jul 2016
That's an RGB image so it's already 3D.
By 3-D, do you mean a surface, like you'd get from surf()? If so, you'll have to read the colors in your color bar and then create a colormap - a 10 by 3 array of RGB colors. Then you'll have to use rgb2ind() to turn that RGB image into a single valued, monochrome image, at which point you can then use surf to make a 2.5-D perspective rendering where the gray level is like a height above the x-y plane.
7 Comments
Image Analyst
on 11 Jul 2016
I can agree with that. They're both 3D arrays but they're just interpreted differently. One is interpreted as a color or hyperspectral image while the other is interpreted as a grayscale volumetric image. You could even have a 4D array interpreted as a color volumetric image or as a series of color images (like a video). To view a 3-D monochrome or color volumetric image you'd have to use a different program like Avizo, because MATLAB just isn't set up for that kind of visualization and is limited to primitive cut-away slice views and isosurfaces.
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!