%load your binary/logical image
load(logical.mat)%just example
Voxels = sum(labels(:)==1)
VoxelVol = sum((labels==1).*dV,'all');
%If you have varying size of the voxels, for example if the voxels in the first and last slices are larger than the ones in the centre, then you have to take that into account. For example if the size varies as:
[x,y,z] = meshgrid(1:130,1:130,1:36);
dV = 1 + 4/36^2*(z-18.5).^2;
% To just extract the tumor-flagged voxels from your imstack3-variable you can do just this:
Tumor_vals = imstack3(labels(:));
%If you need to find the location/indices of the tumors you can do:
[idx1] = find(labels(:));
[i1,i2,i3] = ind2sub(size(labels),idx1);
slice(double(imstack3),63,60,7),shading flat
hold on
plot3(i2,i1,i3,'r.')
引用格式
mohd akmal masud (2025). calculate the volume of tumor in logical image (https://www.mathworks.com/matlabcentral/fileexchange/119443-calculate-the-volume-of-tumor-in-logical-image), MATLAB Central File Exchange. 检索时间: .
MATLAB 版本兼容性
创建方式
R2022a
兼容任何版本
平台兼容性
Windows macOS Linux标签
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!版本 | 已发布 | 发行说明 | |
---|---|---|---|
1.0.0 |