Next: Voxel Elimination
Up: Interactive Rendering
Previous: Interactive Rendering
  Contents
Real-Time Maximum Intensity Projection
The ability to depict blood vessels is of enormous importance for many
medical imaging applications. CT and MR scanners are used to
obtain volumetric data sets, which then allow the extraction of vascular
structures. Especially data sets originating from MR, which are most
frequently used for
this purpose, exhibit some properties which make the application of
standard volume visualization techniques like ray
casting [26] or iso-surface
extraction [33] difficult. MR data sets usually contain
a significant amount of noise. Inhomogeneities in the sampled data make
it difficult to extract surfaces of objects by specifying a single
iso-value.
MIP exploits the fact, that within
angiography data sets the data values of vascular structures are higher
than the values of the surrounding tissue. By depicting the maximum
data value seen through each pixel, the structure of the vessels
contained in the data is captured. A straight-forward method for
calculating MIP is to perform ray casting and search for the maximum
sample value along each ray instead of the usual compositing process
done in volume rendering.
In contrast to direct volume rendering, no early ray termination is
possible and the whole volume has to be processed.
Depending on the quality requirements of the resulting image,
different strategies for finding the maximum value along a ray can be
used.
- Analytical solution: for each data cell which is
intersected by the ray the maximum value encountered by the ray is
calculated analytically. Trilinear blending of the cell vertices is
usually assumed for data values within a cell, thus the maximum of a
third degree polynomial has to be calculated. This is the most
accurate but also computationally most expensive method [51].
- Sampling and interpolation: as usually done for ray
casting, data values are sampled along a ray using trilinear
interpolation. The cost of this approach depends on how many
interpolations can be avoided that will not affect the ray
maximum [51,67].
- Nearest neighbor interpolation: values of data points
closest to the ray are used as maximum estimations. In combination
with discrete ray traversal this is the fastest method. As no
interpolation is performed, the voxel structure is visible in the
resulting image as aliasing [5].
Recent algorithms for MIP employ a set of
approaches for speeding up the rendering:
- Ray traversal and interpolation optimization: Sakas and
others [51] interpolate only if
the maximum value of the examined cell is larger than the ray-maximum
calculated so far. For additional speed-up they use integer
arithmetic for ray traversal and a cache-coherent volume storage
scheme. Zuiderveld and others [67] apply a
similar technique to avoid trilinear interpolations. In addition,
cells containing only background noise are not interpolated. For
further speed-up a low-resolution image containing lower-bound
estimations for the maximum of clusters of rays is generated before
the projection. Cells with maximum values below this bound can be
skipped when the final image is generated. Finally a distance-volume
is used to skip empty spaces efficiently.
- Using graphics hardware: Heidrich and
others [24] use
conventional polygon rendering hardware to simulate
MIP. Several iso-surfaces for different threshold values are extracted
from the data set. Before rendering, the geometry is
transformed in a way, that the depth of a polygon corresponds to the
data value of its iso-surface. MIP is approximated by displaying the
z-buffer as a range of gray values.
Recently the VolumePro board [48] became available
as a purely hardware-based solution for MIP. The board is able to
produce medium-quality MIP using shear/warp-based projection at
interactive frame rates.
- Splatting and shear/warp: Several
approaches [5,9] exploit the
advantages of shear/warp rendering to speed up
MIP. Cai and others [5] use an intermediate
``worksheet'' for
compositing interpolated intensity contributions for projection of a
single slice of the volume. The worksheet is then combined with
the shear image to obtain the maxima. Several splatting modes with
different speed/quality-tradeoffs are available, run-length encoding and
sorting of the encoded segments by value are used to achieve
further speed-up.
Figure 4.1:
a: MIP of a test data set containing soft
bounded cylinders; b: although depth shading provides some depth
impression, the cylinders seem to intersect; c, d: While LMIP provides
more information on the spatial structure, the results are sensitive
to the threshold.
![\includegraphics[width=4.9cm]{Figures/test.ps}](img64.png) |
![\includegraphics[width=4.9cm]{Figures/testd.ps}](img65.png) |
| a) MIP |
b) depth shaded MIP |
![\includegraphics[width=4.9cm]{Figures/testll.ps}](img66.png) |
![\includegraphics[width=4.9cm]{Figures/testlh.ps}](img67.png) |
| c) LMIP - high threshold |
d) LMIP - low threshold |
|
As a MIP image contains no shading
information, depth and occlusion information is lost (see
figure 4.1a). Structures with
higher data values lying behind a lower valued object
appear to be in front of it. The most common way to ease the
interpretation of such images is to animate the viewpoint while
viewing (interactive frame-rates are essential here).
Another approach is to modulate the data values by their depth to
achieve a kind of depth shading [24] (see
figure 4.1b). As the
data values are modified before finding the maximum, MIP and
depth-shaded MIP (DMIP) of the same data may display different objects.
Depth shading provides some hints on the spatial relation of
objects. However it's performance is rather poor especially for
tightly grouped structures. In such cases Closest Vessel
Projection [51] or
LMIP [52] can be used. Similar to MIP, for LMIP the
volume is traversed along a
ray, but the first local maximum which is above a user-defined
threshold is depicted. If no value above the
threshold is found along a ray, the
global maximum along the ray is used for the pixel. With a high
threshold value this method produces the same result as MIP, with a
carefully selected one, less intense structures in front
of more intense background are depicted, producing an effect similar
to shading (see figures 4.1c, d). As this method is very
sensitive to the setting of the threshold, the ability to
interactively tune this parameter is extremely important.
In the following a novel approach to generate MIP
images really fast is presented [42,43]. In
Section 4.1.1 several
algorithms for preprocessing the volume data to eliminate voxels,
which will not contribute to a MIP, are discussed. Furthermore,
a volume storage scheme which is based on RenderLists is
presented which is optimized for
skipping non-contributing voxels during rendering. In section 4.1.4
extensions of the algorithm for generating depth-shaded MIP and LMIP
using the optimized data structure are discussed.
Subsections
Next: Voxel Elimination
Up: Interactive Rendering
Previous: Interactive Rendering
  Contents
Lukas Mroz, May 2001, mailto:mroz@cg.tuwien.ac.at.