フィルターのクリア

How can I visualise and extract 3D data without using isosurface function

1 回表示 (過去 30 日間)
William von Witt
William von Witt 2015 年 7 月 10 日
編集済み: Walter Roberson 2015 年 7 月 11 日
I have a model of a tumour that evolves over time, essentially a 4D matrix of cellc concentration c(r,t) size (m,n,p,t). I can do some nice looking things using the built in functions to visualise it and make movies of growth. However I want to be able to extract the isosurface to make some quantitative calculations, or surface area, volume and a measure of the irregularity of the isosurface, essentially a gradient function.
The data is a grid of voxels with a cell concentration c at each voxel. Say I want to look at the surface where c > x. I can extract a matrix with logical indexing by ISO = Tumour > x, which then gives me a 3D matrix. I want to visualise this and calculate the surface area. I can do volume by sum(sum(sum(ISO)))*voxelsize, but visualising the surface without isosurface is stumping me. Also calculating the gradient. I wrote a 2D code:
%%Anisotropy Measure using gradient integral
%A quantitative measure of tumour anisotropy,
%1/(2*pi*R)*Integraldxdy* absolute value of grad phi
%discretised version:
%Sigma(ijk) abs(grad c(r)) =
%sqrt((partialc/partialx)^2+(partialc/partialy)^2+(partialc/partialz))dV
%partialc/partialx = ((Ci+1,j,k - Ci-1,j,k)/2deltax)
%practice code
RR = rand(10);
dx = 1
for i = 1:8, j = 1:10
dcdxsq =((RR(i+2,j) - RR(i,j))/2).^2
end
for i=1:10, j=1:8
dcdysq=((RR(i,j+2) - RR(i,j))/2).^2
end
Aniso = sqrt(sum(sum(dcdxsq)) + sum(sum(dcdysq)))
figure
surf(RR)
str = sprintf('Random surface with Anisotropy = %f',Aniso);
title(str);
now I want to do this with the 3D data, is there a neat way to do it without counting all the interior points of the surface? Essentially it's still a 2D surface, I just need to extract it neatly.
Suggestions?

回答 (0 件)

カテゴリ

Help Center および File ExchangeScalar Volume Data についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by