Problem of increased 3D volume after reconstruction from 2D CT slides
2 views (last 30 days)
Show older comments
Dear Everyone,
I have a problem of accuracy after reconstructing CT slides to 3D volume.
In this example, the width of the patient's head is about 140mm as seen from the CT slide. After reconstructing to 3D volume, it was found that the width has increased to about 300mm after outputting to STL file.
Here is the sample of 2D slide and an image of the 3D volume after reconstruction :
Here is the code :
for i = 30 : 160
info = dicominfo(dirOutput(i).name,'UseDictionaryVR',true);
imgTemp = dicomread(info);
imgCropped = imcrop(imgTemp,croppedArea);
imgCroppedBin = imbinarize(imgCropped,0.51728); %Binarize the image
I(:,:,i) = imgCroppedBin;
end
Is = smooth3(I,'gaussian');
fv2 = isosurface(Is,0.5);
fv2 = smoothpatch(fv2,0,3,1,1); %"Smooth Triangulated Mesh" by Dirk-Jan Kroon
patch(fv2,...
'FaceColor',[1,.75,.65],...
'EdgeColor','none');view(35,30); axis off, daspect([1,1,1]);lightangle(45,30);lighting gouraud;
%Create filename according to current timestamp and output 3D model to .STL file
t = datetime('now');
timestamp = datestr(t,30);
fname = '../Desktop/MatLab Demo/TestResult/3Dreconst_';
fext = '.stl';
outfname = strcat(fname,timestamp,fext);
stlwrite(outfname,fv2);
Grateful if anyone can help. Thanks, Ringo
2 Comments
Answers (0)
See Also
Categories
Find more on DICOM Format in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!