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

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! ! ! !

 Risposta accettata

[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')

Più risposte (1)

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

Prodotti

Release

R2016b

Richiesto:

岚
il 29 Ago 2022

Risposto:

il 29 Ago 2022

Community Treasure Hunt

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

Start Hunting!

Translated by