How to compute 3D surface area from 2D CT images
6 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Hi, I work with 2D slices of CT images (Dicom images). I segmented tumor from all these 20 slices using some segmentation algorithms.
Now, I have 20 slices of segmented CT scans lets say slice1, slice2, ...slice20
Now I have to combine this 20 slices somehow and extract surface area.
I found this link:
I don't understand how is x-cord,y-cord, and z-cord computed here.
And I think some of this code is repeated and wrong.
Can someone please help me compute the 3D surface area by combing all the individual 2D slices.
Any help is greatly appreciated.
Thanks,
Gopi
0 Kommentare
Antworten (2)
Image Analyst
am 1 Sep. 2016
Bearbeitet: Image Analyst
am 1 Sep. 2016
Simply call bwperim() on your segmented tumor images, which you say you already have. Then sum up the image
totalSurfaceArea = 0;
for slice = 1 : numSlices
thisBinaryImage = .......whatever, your segmented image.
thisPerimeter = bwperim(thisBinaryImage)
voxelsInThisSlice = sum(thisPerimeter(:));
totalSurfaceArea = totalSurfaceArea + voxelsInThisSlice;
end
Essentially you're counting up all voxels that are on the outer edge of your tumor and touch other tissue or air or whatever is not tumor.
Koray Ertan
am 21 Aug. 2022
I think the above approach may be wrong because you do not account for the slope of the surface when you just sum the voxelized area.
boundary function may be a better fit for this task.
https://www.mathworks.com/help/matlab/ref/boundary.html
0 Kommentare
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!