Image Processing (3D and 2D)

4 views (last 30 days)
Chris
Chris on 4 Jun 2014
Answered: Image Analyst on 5 Jun 2014
Hi All!
I'm working on Image Processing, in which I have a 2D X-Ray image of a cylinder material with some circular/oval defects inside. Since the defects are different density to that of the original material, I was hoping to distinguish how many defects there are by plotting the pixel intensities against their positions on the picture.
What I have now is a 3D representation graph, in which the Z axis is pixel intensity, and the xy plane is the position on the plane, so if you look at the XY plane directly, it shows the pixel intensity.
Is there any way I can make this 3D graph into a 2D graph?
Also, I need to distinguish the colors from the defects. Any way to do a cluster analysis/idea on how to identify objects within an object using matlab?
Here is my code:
imagename=picture; I=imread(imagename); K=rgb2gray(I); [x,y]=size(K); X=1:x; Y=1:y; [xx,yy]=meshgrid(Y,X); i=im2double(K); figurelmesh(xx,yy,i); colorbar
Basically, I want the colors to be on the XY plane (projected onto it), save it as an image itself, and then perform some type of analysis to analyze how many of the defects are in the cylinder. If anyone can suggest some type of analysis, that would be great. Any advice would be appreciated!
Thanks Everyone!

Answers (1)

Image Analyst
Image Analyst on 5 Jun 2014
I don't know what a "3D representation graph" is. Do you have a volumetric image where you have a density value for every (x,y,z) location? If so, just find the voids/defects directly from the 3D volumetric image instead of a 2D projection.

Categories

Find more on Images in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!