Volumevis 0.6.2 review

by rbytes.net on

Volumevis displays pixel-based 3-dimensional datasets

License: GPL (GNU General Public License)
File size: 670K
Developer: Christoph Spuhler
0 stars award from rbytes.net

Volumevis displays pixel-based 3-dimensional datasets. 3-D pixel datasets mostly come from 3-D computer tomography (CT) and magnetic resonance (MR) images. These datasets usually come in the form of a set of 2-D picture files each being a slice of the 3D dataset.

To be displayed by volumevis, the files have to be ordered with identical names except for a number somwhere in the name corresponding to the slice number. Most image formats (jpg, tiff, dicom, etc ..) are supported.

Volumevis is a tool for visualizing 3D dimensional pixel-based datasets. Most computer 3D visualization in the world is with surfaced-based visualization. This is true for most 3D games, CAD tool, etc.

By stating it simply, surface-based rendering works by dividing a predefined surface into small triangles, and then sending those triangles along with their color to graphicscard to be rendered. For example,if you want to render a sphere in 3D, you would create a surface of the sphere, divide it into triangles, send the triangles to the graphics card, which would then turn the triangles into pixels and displaythem.

The unfortunate side-effect of this is, that if you happen to cut the sphere, or go inside it, you will see that it's in fact hollow. Also, you cannot see any of the details that might be inside of the sphere.

Volume visualization is the equivalent in 3D of displaying a photo in 2D. The surface 3D visualizations on the other hand, are the equivalent of reducing a photo to a representation of lines (such as the outlines of people and houses) and drawing the lines on screen. Obviously a lot of information goes lost in the line representation.

The visualization works like this. In openGL (a graphics programming API), all fragments (3D equivalent of pixels) have an alpha value. The alpha value corresponds to the opacity of the fragment. If the fragment has a small alpha value, it will be easy to see through it and see the fragments behind it.

If the alpha value is high, the fragments behind it will be obscured. A 3D dataset is simply a block of data in the shape of a cube. Somewhere in the image there is an object which is white or grey. All the other places in the image are black. To render the object, all the pixels which are black are assigned and alpha value of 0 (meaning they are transparent). Therefore we don't see the black pixels.

The fragments belonging to the object are white and have an alpha value higher than zero. Therefore it's not possible to see through them, and we perceive the location of the object fragment to be the surface of the object. Depending on the alpha value of the fragment, we might also be able to see some of the fragments behind it a bit (see inside the object).

At the moment, Volumevis only supports black/white images (which is fine for most CT and MRI datasets).

What's New in This Release:
A bug with slice loading of textures which are not a power of two was fixed.
Movie recording, cropping, and file saving for slices were fixed.
Various feature improvements were made.

Volumevis 0.6.2 keywords