doi:10.1016/S0097-8493(00)00030-3
Copyright © 2000 Elsevier Science B.V. All rights reserved.
Data Visualization
Maximum intensity projection at warp speed
Institute of Computer Graphics, Vienna University of Technology, 5th Floor, Favoritenstrasse 9/5 Stock, Karlsplatz 13/186/2, A-1040 Vienna, Austria
Available online 13 June 2000.
References and further reading may be available for this article. To view references and further reading you must
purchase this article.
Abstract
Maximum intensity projection (MIP) is a volume rendering technique which is used to extract high-intensity structures from volumetric scalar data. At each pixel the highest data value encountered along the corresponding viewing ray is determined. MIP is commonly used to extract vascular structures from medical MRI data sets, i.e., angiography. The usual way to compensate for the loss of spatial and occlusion information in MIP images is to view the data from different view points by rotating them. As the generation of a MIP is usually non-interactive, this is done by calculating multiple images offline and playing them back as an animation. In this paper a novel algorithm is proposed which is capable of interactively generating Maximum Intensity Projection images even on low-end hardware using parallel projection. Two methods for preprocessing data and removing voxels which will due to their neighborhood never contribute to a MIP are discussed. The remaining voxels are stored in a way which guarantees optimal cache coherency regardless of the viewing direction. For use on low-end hardware, a preview-mode is included which renders only the more significant parts of the volume during user interaction. Furthermore, we demonstrate the usability of our data structure for extensions of the MIP technique like MIP with depth-shading and local maximum intensity projection (LMIP).
Author Keywords: Volume visualization; Maximum intensity projection; Real-time rendering; Angiography
Fig. 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: (c) high, (d) low.
Fig. 2. Detection of voxels V which do not contribute to MIP. For simplicity, the different cases are shown in 2D. (a) V irrelevant for rays through Wi as d(Wi)
d(V) (b) V irrelevant for rays through Wi. (c) V irrelevant for rays through Wi as ray maxima are determined by voxels Um. (d) V irrelevant for rays through Wi, as ray maxima are determined by Un.
Fig. 3. Tracking the influence of distant parts of the volume on rays through Wi,V and Wj. As all of them pass either through U1,U2 or U3 and d(U2)>d(V), V does not influence rays through U2,Wj,V and Wi. As d(U1)<d(V) and d(U3)<d(V), further tracking of rays passing through U1 or U3 is required.
Fig. 4. Removal of hidden voxels in 2D: (a) viewpoint-independent preprocessing: relevance of voxel V depends on rays passing through eight neighbors. (b) 4 view-sets: relevance of V depends on three neighbors. (c) 8 view-sets: dependency minimized (two neighbors).
Fig. 5. View-point-dependent voxel removal (2D). (a) Shadowed voxel sweep. (b) Leading voxel sweep.
Fig. 6. Value-sorted array structure: All voxels are sorted according to data value and their position in space is stored in an array. An additional index points to the first voxel in the array for each possible data value.
Fig. 7. (a) MIP of the mr01 data set, 2.6M voxels. (b) Interactive preview of the same data at 10 fps on a P233MMX with approximately 25% of the volume data displayed. Only slight differences are noticeable.
Fig. 8. (a) MIP of an angiography with depth shading. (b) LMIP of a stenosis of the aorta.
Fig. 9. Local maximum intensity projection for non-sequential samples: (a) new voxel in front of z (b) new voxel between z and zb.
Fig. 10. MIP of the vessels in a hand: MIP, Depth-shaded MIP, LMIP.
Table 1. Volume reduction: Fast optimization (“Fast”) considers direct neighbors, full optimization (“Full”) performs recursion up to a distance of 10 voxels. Direction-dependent optimization (“dir.dep”) produces 24 view-dependent sets of voxels. The results show the percentage of voxels removed and the time required for preprocessing on a PII/450 PC

Table 2. Frame rendering times (with direction independent/direction dependent preprocessing)
