MATLAB: Model reconstruction from CT slices

image processingimage segmentation

Hello everyone,
I apologize if this topic was repeated but I have not found the solution yet. I have 537 DICOM images, and i can extract the coordinates (x,y) of the bony region (the intensity which is equal to 1). Now i need reconstruct all images in a 3D model and i have no idea how to do it. I need pair/match the pixels that are 1?
Best regards and thanks for your attention,
Nuno

Best Answer

Dear Nuno,
You can load and plot the individual DICOM images with the hand made code below. Make sure that the path of the m-file is equal to the path of the images. As a test I used the images from this thread .
clc;clear all;close all;
% Read the series of images.
for p=1:9
filename = sprintf('00000%d.dcm', p);
X(:,:,1,p) = dicomread(filename);
X(:,:,1,p) = imadjust(X(:,:,1,p),[0 0.022],[]); % increase contrast

end
for p=10:42
filename = sprintf('0000%d.dcm', p);
X(:,:,1,p) = dicomread(filename);
X(:,:,1,p) = imadjust(X(:,:,1,p),[0 0.022],[]); % increase contrast
end
numberOfSlices = p;
figure(1); montage(X,[]);
% to plot for example one image (here nr. 10)
figure(2); imshow(X(:,:,1,10))
The second step would be to stack the 2D images together. In this thread multiple possibilities are gives how to do this. A nice feature is sliding viewer. If you download that m-file and put the files in the map where also the images are located and then write in your matlab-prompt:
D=double(squeeze(X));
slidingviewer(D);
you will see a 3D image of your CT scan.
Good luck! Christiaan
Related Question