# HOW TO CHANGE BINARY IMAGES TO 3D ARRAY (CONVERT TO 3D DIMENSION)

30 views (last 30 days)
mohd akmal masud on 7 Oct 2021
Commented: Image Analyst on 8 Oct 2021
Hi all, I have 41 binary images.
Anyone know how convert it into 3D?
I means now my binary images just have dimension(let say 256 x 256). Then how to add thickness (as example thickness: 2.332) into that binary images?
So that my binary images now in 3D, (example 256x256x2.332)
Anyone can help me?
mohd akmal masud on 8 Oct 2021
Hi sir Image Analyst, can you help me, maybe you can write the code?

DGM on 8 Oct 2021
As per Rik's suggestion:
% ...
% assuming that your dicom images and binary images have same page geometry
numframes = 41;
s = [size(P,1) size(P,2)];
for f = 1:numframes
if f == 1
end
end
% build location arrays
[X Y Z] = ndgrid(1:s(1),1:s(2),0:2.332:(numframes-1)*2.332);
Or something like that.
##### 1 CommentShowHide None
mohd akmal masud on 8 Oct 2021
yah, dicom images and binary images have same page geometry.
but after that, how to develop it into 4D?
is it like this?
% to view as 4D
p = patch(isosurface(X, Y, Z));
axis equal
set(p,'FaceColor','c','EdgeColor','none');
alpha(p,1)
hold

### More Answers (1)

Image Analyst on 8 Oct 2021
If you want, just consider your 256x256 image as having a thickness of 2.332 millimeters or centimeters or whatever. There is nothing to do to the image. However if you compute something like area of some region and want the volume in 3-D you have to multiply the area by the square of the lateral pixelsPerMm and then by the z-direction slice spacing of 2.332 to get the volume in mm.
##### 2 CommentsShowHide 1 older comment
Image Analyst on 8 Oct 2021
Again, you're overwriting I on each iteration so it will only have the last image in it. I don't see where you're calling smooth3 but if you're passing it I, and if I is only a 2-D array, you'll get that error.

R2021a

### Community Treasure Hunt

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

Start Hunting!

Translated by