MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn moreOpportunities for recent engineering grads.

Apply Today
Asked by Layla on 21 Mar 2014

Hi everyone,

I have 14 sets of 3D points where each set represents a sub-nucleus of a region in the brain. I'd like to do two things with this data:

1. Create volumes (not surfaces!) of each sub-nuclei data set

2. Plot all 14 volumes at once, and view (orthogonal) slices at whatever X-value (for YZ, or Sagittal Images), Y-value (for XZ, or Coronal Images), or Z-value (for XY, or Axial images) I choose.

So far, I've done this by generating Delaunay Triangulations, and changing the limits of the axes. However, the resulting plots are quite messy. I dislike being able to see the lines that show the triangles. The sub-nuclei are color-coded, so I'd rather not see any connectivity lines. Is there a cleaner, smoother way of doing this?

Thanks!

*No products are associated with this question.*

Answer by Sean de Wolski on 21 Mar 2014

Edited by Sean de Wolski on 21 Mar 2014

Accepted answer

Well I can help you with the lines, set the *'edgecolor'* to *'none'*

[x,y] = meshgrid(1:15,1:15); tri = delaunay(x,y); z = peaks(15); h=trisurf(tri,x,y,z); set(h,'EdgeColor','none')

Layla on 21 Mar 2014

Thanks Sean! That certainly makes the slices look nicer.

Would a Delaunay Triangulation be your choice for creating the 3D volume in the first place?

Sean de Wolski on 26 Mar 2014

That really depends on your end goal. For just viewing it? Sure!

For more complicated analysis, I would probably first voxelize it and then work on it as a three dimensional image (at least to get started).

http://www.mathworks.com/matlabcentral/fileexchange/27390-mesh-voxelisation

## 1 Comment

Direct link to this comment:http://www.mathworks.com/matlabcentral/answers/122618#comment_203462

I have edited the code for simplicity to demonstrate what I'm doing:

I've attached a picture of what the result looks like. It's messy. I wish I could get rid of the black lines! Maybe there's a different way of generating volumes out of this XYZ-coordinate data though?