Draw a 3D array containing only 0,1 into a 3D image

1 view (last 30 days)
I have a 100*100*100 mat file with only 0 and 1 in it. Now I want to draw it as a 3D image, with 0 skeleton and 1 pore. Similar to the picture below. Ask for code! ! ! ! Ask for code! ! ! !

Accepted Answer

KSSV
KSSV on 29 Aug 2022
[m,n,p] = size(A) ;
[X,Y,Z] = meshgrid(1:m,1:n,1:p) ;
x = X(:) ;
y = Y(:) ;
z = Z(:) ;
v = A(:) ;
idx = v==1 ;
scatter3(x(idx),y(idx),z(idx),[],'b','filled')

More Answers (1)

Abderrahim. B
Abderrahim. B on 29 Aug 2022
Hi!
You have a volumetric data; I recommend that you use Volume Viewer to visualize it. An example below:
M = randi([0 1], 100,100,100) ;
volumeViewer(M)
Note that volumeViewer requires image processing toolbox.
Hope this helps

Products


Release

R2016b

Community Treasure Hunt

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

Start Hunting!