## How to convert a binary 3d matrix to mesh.

### MG Poirot (view profile)

on 29 Apr 2016
Latest activity Commented on by Md Nurul Karim

### Md Nurul Karim (view profile)

on 19 Nov 2019 at 15:59

### Mike Garrity (view profile)

I have a 3D binary matrix with 1 being filled volume, and 0 being empty. For example I've added a representation of this matrix filled with a sphere but the matrix could also have been filled with irregular content.
I would like to construct a mesh from 3D binary matrix volume, how would I go about it?
I have come across the isosurf function, but I was not sure if it was applicable or how to get my data in the right format.
Thanks.

### Mike Garrity (view profile)

on 29 Apr 2016

Yes, I would think that isosurface is the first thing to try. Just give it the 3D array and an isolevel of 1/2. It'll use linear interpolation to put a surface down the middle of where the 1's and 0's meet.
[x,y,z] = ndgrid(-1:.05:1);
v = sqrt(x.^2+y.^2+z.^2) < .5;
isosurface(v,1/2)
As you can see, the result can be a little lumpy.
If you want your mesh to follow the grid without any interpolation, then you'll probably want a different approach.

MG Poirot

### MG Poirot (view profile)

on 29 Apr 2016
Thanks! This'll work great for visualizing and exporting my MRI data!
Karima benzaid

### Karima benzaid (view profile)

on 22 Apr 2017
Hi,
I have a 3D binary grid of a canyon (obstacle=1, free-space=0). I would like to get something like this (with filled volume)
But, what I get when using isosurface(Map) is this
Am I missing something?
Thanks.
Xander May

### Xander May (view profile)

on 5 Jun 2017
Karima, it would seem your 3D object does not have a 'Surface' anywhere besides what you are seeing. The ISOSURFACE function creates a mesh of the surface of an object, but because your object only has a surface where the interior walls of the canyon are, with other thigns extending out of the view window, that is the only part ISOSURFACE is able to render

### Noor Aamer (view profile)

on 4 May 2018

How can I get a 3D binary image from 2D binary image?

Md Nurul Karim

### Md Nurul Karim (view profile)

on 19 Nov 2019 at 15:59
Just stack the 2D binary images on top of each other and make a 3D binary matrix.
then you can watch it in Volume viewer app.
You can also extract surface out of it.