How to compute 3D surface area from 2D CT images
10 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
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 comentarios
Respuestas (2)
Image Analyst
el 1 de Sept. de 2016
Editada: Image Analyst
el 1 de Sept. de 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.
2 comentarios
Gopichandh Danala
el 1 de Sept. de 2016
Editada: Gopichandh Danala
el 1 de Sept. de 2016
Koray Ertan
el 21 de Ag. de 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 comentarios
Ver también
Categorías
Más información sobre Lighting, Transparency, and Shading en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!