Medical Imaging Interaction Toolkit  2018.4.99-cfdaacfc
Medical Imaging Interaction Toolkit
The Volume Visualization Plugin
volume_visualization.svg
Icon of the Volume Visualization Plugin

Overview

The Volume Visualization Plugin is a basic tool for visualizing three dimensional medical images. MITK provides generic transfer function presets for medical CT data. These functions, that map the gray-value to color and opacity, can be interactively edited. Additionally, there are controls to quickly generate common used transfer function shapes like the threshold and bell curve to help identify a range of grey-values.

QmitkVolumeVisualization_Overview.png

Enable Volume Rendering

Loading an image into the application

Load an image into the application by

  • dragging a file into the application window.
  • selecting file / load from the menu.

Volume Visualization imposes following restrictions on images:

  • It has to be a 3D-Image Scalar image, that means a normal CT or MRT.
  • 3D+T are supported for rendering, but the histograms are not computed.
  • Also be aware that volume visualization requires a huge amount of memory. Very large images may not work, unless you use the 64bit version.

Enable Volumerendering

QmitkVolumeVisualization_Checkboxen.png

Select an image in datamanager and click on the checkbox left of "Volumerendering". Please be patient, while the image is prepared for rendering, which can take up to a half minute.

Dropdown menus for the rendering and blend modes

Two dropdown menus allow selection of rendering mode (Default, RayCast, GPU) and the blend mode (Composite, Max, Min, Avg, Add).

Any Volume Rendering mode requires a lot of computing resources including processor, memory and often also graphics card. The Default selection usually finds the best rendering mode for the available hardware. Alternatively, it is possible to manually specify the selections RayCast and GPU. The RayCast selection is based on CPU computation and therefore typically slow, but allows to render without hardware acceleration. The GPU selection uses computing resources on the graphics card to accelerate volume rendering. It requires a powerful graphics card and OpenGL hardware support for shaders, but achieves much higher frame rates than software-rendering.

Blend modes define how the volume voxels intersected by the rendering rays are pooled. The composite mode specifies standard volume rendering, for which each voxel contributes equally with opacity and color. Other blend modes simply visualize the voxel of maximum / minimum intensity and average / add the intentities along the rendering ray.

Applying premade presets

Internal presets

There are some internal presets given, that can be used with normal CT data (given in Houndsfield units). A large set of medical data has been tested with that presets, but it may not suit on some special cases.

Click on the "Preset" tab for using internal or custom presets.

QmitkVolumeVisualization_InternalPresets.png
  • "CT Generic" is the default transferfunction that is first applied.
  • "CT Black&White" does not use any colors, as it may be distracting on some data.
  • "CT Cardiac" tries to increase detail on CTs from the heart.
  • "CT Bone" emphasizes bones and shows other areas more transparent.
  • "CT Bone (Gradient)" is like "CT Bone", but shows from other organs only the surface by using the gradient.
  • "MR Generic" is the default transferfunction that we use on MRT data (which is not normalized like CT data).
  • "CT Thorax small" tries to increase detail.
  • "CT Thorax large" tries to increase detail.

Saving and loading custom presets

After creating or editing a transferfunction (see Customize transferfunctions in detail or Interactively create transferfunctions), the custom transferfunction can be stored and later retrieved on the filesystem. Click "Save" (respectively "Load") button to save (load) the threshold-, color- and gradient function combined in a single .xml file.

Interactively create transferfunctions

Beside the possibility to directly edit the transferfunctions (Customize transferfunctions in detail), a one-click generation of two commonly known shapes is given.

Both generators have two parameters, that can be modified by first clicking on the cross and then moving the mouse up/down and left/right.

The first parameter "center" (controlled by horizontal movement of the mouse) specifies the gravalue where the center of the shape will be located.

The second parameter "width" (controlled by vertical movement of the mouse) specifies the width (or steepness) of the shape.

Threshold

Click on the "Threshold" tab to active the threshold function generator.

QmitkVolumeVisualization_Threshold.png

A threshold shape begins with zero and raises to one across the "center" parameter. Lower widths results in steeper threshold functions.

Bell

Click on the "Bell" tab to active the threshold function generator.

QmitkVolumeVisualization_Bell.png

A threshold shape begins with zero and raises to one at the "center" parameter and the lowers agains to zero. The "width" parameter correspondens to the width of the bell.

Customize transferfunctions in detail

Choosing grayvalue interval to edit

QmitkVolumeVisualization_Slider.png

To navigate across the grayvalue range or to zoom in some ranges use the "range"-slider.

All three function editors have in common following:

  • By left-clicking a new point is added.
  • By right-clicking a point is deleted.
  • By left-clicking and holding, an exisiting point can be dragged.
  • By pressing arrow keys, the currently selected point is moved.
  • By pressing the "DELETE" key, the currently selected point is deleted.
  • Between points the transferfunctions are linear interpolated.

There are three transferfunctions to customize:

Grayvalue -> Opacity

QmitkVolumeVisualization_Opacity.png
grayvalues will be mapped to opacity.

An opacity of 0 means total transparent, an opacity of 1 means total opaque.

Grayvalue -> Color

QmitkVolumeVisualization_Color.png
grayvalues will be mapped to color.

The color transferfunction editor also allows by double-clicking a point to change its color.

Grayvalue and Gradient -> Opacity

QmitkVolumeVisualization_Gradient.png

Here the influence of the gradient is controllable at specific grayvalues.