How to compute cross sectional area and volume from a stack of segmented images?

4 次查看(过去 30 天)
Hi,
I have a stack of segmented images. How do i compute the cross sectional area of these images and volume if xvoxel=0.01(mm/pixel) and zvoxel=0.20(mm/pixel)? Attached images are 256*256.

回答(1 个)

Yazan
Yazan 2021-7-22
编辑:Yazan 2021-7-22
Binarize the image, then use region properties to compute the area (number of pixels). Once you know the number of pixels, you can get the area by multiplying by the area of one pixel.
Im = imread('29_predict.bmp');
mask = Im>188; % binarize the image
area = regionprops(mask, 'Area');
areaReal = area.Area*0.01^2; % real-world area
If you have a 3d image (stack of 2d binary images), you can also call regionprops to compute the number of voxels. To get the real-world volume, multiply the number of voxels by the volume of one voxel.

类别

Help CenterFile Exchange 中查找有关 Image Segmentation and Analysis 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by