A Program for
Visualizing Volume Data

by Michael Knapp
Visualisierung LU, WS 2000/2001

 

What is it ? This Program is designed for viewing computer tomography volume data interactively. The volume data is rendered by a direct volume rendering algorithm, which is explained briefly in the section "The Algorithm" below.
Features Supported file formats: Raw volume data files and Hewlett-Packard volume data files
Orthogonal Projection
Interactive Transparency Control
Interactive Threshold Control
Interactive Rotating - Fast Preview using OpenGL
Threshold Rendering
Maximum Intensity Rendering
The Algorithm Raycasting: First the volume data is transformed into an orthogonal grid. After that the shading and the transparency information is generated from this data using user defined parameters mentioned above in the "Features" section. For every pixel drawn there is a ray casted into these data sets from front to the back. The accumulated value is used for the pixel color.
Requirements Microsoft Windows 95/98/NT/2000/XP with OpenGL

Download

Download VolVis 1.0 with MSVC++ 6.0 Source Code (kontaktiere die Übungsleitung)
ZIP file, 250KB
Screenshot

Rendering Examples


Figure 1: Threshold Rendering: Nearest Neighbour vs. Trilinear Filtering


Figure 2: Threshold Rendering: Trilinear Filtering and Highlighting with and without Transfer Function


Figure 3: Transparency Rendering with transfer Function: Nearest Neighbour vs. Trilinear Filtering


Figure 4: Transparency Rendering with Transfer Function: Nearest Neighbour vs. Trilinear Filtering

User's Guide

Select View Mode

Slice - You can view the volume data set slice wise, in three different orientations, which can be selected by clicking on XY Plane, XZ Plane or YZ Plane. If Threshold for Slices is enabled you can view the slice as black & white image. The threshold can be changed by moving the threshold slider. The threshold modified by this slider affects also the overview mode and the threshold rendering mode.
Overview
- Here the volume data set is displayed as 3d object consisting of small cubes. You can rotate the object into all directions. The view direction in the overview affects all rendering operations
Volume
- Displays the last rendered image.

Volume Renderer

Render Volume - Pressing this button starts the rendering of the volume data
Enable Highlights
- If this option is enabled, objects with a glossy surface are generated.
Image == Window - fits the rendering image size to the window size.
Image Size Slider - Here you can change the rendering image size easily. Attention: changing the size destroys the last rendered image
Step Length Slider - Sets the ray step length. Smaller values: better quality, less speed. Large values: bad quality, higer speed. For Transpareny Rendering, the length is fixed to 1.

Rendering Mode

Fast (low quality) - When enabled: High speed, but low quality. Renders the volume data using nearest neighbour values while rendering. Otherwise triliniear filtering values are used, which lead to high quality images
Threshold
- Generates Images of the object with a opaque surface using the threshold, which is set using the threshold slider
Max Intensity
- Generates maximum intensity images. only the highest density value of every ray is taken to set the pixel color
Transparency - Uses the Transfer Function to generate semi transparent images

Transfer Function

Edit Transfer Function - Pressing this button opens the Transfer Function Window
Slice Viewer - Enabling this option affects the slice viewer
Rendering - Enabling this option affects the threshold rendering and the maximum intensity mode

Transfer Function Window


The Transfer Function used in Figure 3, Rendering Examples

By clicking into the Histogram and Opacity area the opacity function can be modified. Clicking Choose Color opens the color selection window as shown in the screenshot above. There you can choose the Current Color. The Current Color can be used to modify the color bar below the Histogram and Opacity area. By clicking on Use Current Color as Background, the current color is used as background color in the Transparency Rendering Mode. The Threshold Slider can be also used to modify the treshold (blue line). It has the same effects like the threshold slider mentioned in the Select View Mode section above.