How to visualize a volume with isosurfaces

3 views (last 30 days)
Hi all. I have a 3d array of a TC scan, of 512x512x125, and i want to obtain a 3d visualization to rotate and see from different angles. I used vol3d but it seems it's impossible to use the original grayscale, so i'd like to use other tools like the in built function isosurface (i tried slice but it's too heavy for my pc and it freezes). However i don't understand the correct syntax, because just with
isosurface(V,value)
i get a white box, with nothing represented. How do i correctly use it? Thanks in advance.
  4 Comments
Walter Roberson
Walter Roberson on 19 Mar 2016
I tried vol3d with uint16 images. The only difficulty I had was in not giving it the right syntax, and not doing the view(3) after
vol3d('CData', YourTCMatrix);
view(3)
Alessandro Russo
Alessandro Russo on 19 Mar 2016
If i use this syntax i still get a coloured image and not the wanted grayscale original image!

Sign in to comment.

Answers (1)

James Ryland
James Ryland on 11 May 2017
Isosurface is incredibly expensive, you probably do not want to use it for densely sampled data like structural mri scans. I know because I tried exactly that method years ago when I was trying to develop 3D visualization techniques in matlab. Lucky for you there are matlab programs that could help.
Solution 1: Volumetric 3 is a full matlab application for visualizing layered 3D density matrices. It was designed to work with fmri and mri but it can handle arbitrary 3D arrays stored as .mat files.
https://www.mathworks.com/matlabcentral/fileexchange/59161-volumetric-3?s_tid=srchtitle
Solution 2: A much simpler tool is Vol3D. But with a lot of programming on your end you can get it to do pretty much anything volumetric 3 does, in that they use highly similar (though distinct) techniques for generating visualizations.

Community Treasure Hunt

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

Start Hunting!