MI05-MI01-118 T-Shell Rendering and Manipulation
George J. Grevera, Jayaram K. Udupa, and Dewey Odhner
MI01 Visualization, Image-Guided Procedures, and Display
Contact Author: George J. Grevera
Author Preferred Presentation Type: Oral

University of Pennsylvania
Radiology/MIPG
4th floor Blockley Hall, 423 Guardian Drive
Philadelphia, PA 19104-6021
USA
Phone: 215 662 6780
Fax: 215 898 8246
Email: grevera@mipg.upenn.edu

Abstract Text: In previous meetings, we demonstrated that shell rendering is an ultrafast digital rendering method that is an order of magnitude faster than hardware-based isosurface rendering methods such as Marching Cubes. We also demonstrated that shell rendering is versatile. Depending upon the user-defined crispness of the shell, shell rendering behaves like surface rendering, volume rendering, or anywhere in between. In a subsequent meeting, we demonstrated the volume rendering capabilities of shell rendering, compared it with hardware-based (via 3D texture mapping) volume rendering, and showed that volume rendering via shell rendering produces comparable renditions at comparable speed. Coming back to digital shell rendering and triangle-based surface rendering, we note that, although both methods produce high quality, comparable renditions, they remain visually different in their appearance. This difference prompted us to develop T-shell (triangulated shell) rendering (which was presented at a recent meeting). T-shell rendering employs the data structures and algorithms of digital shell rendering to produce triangulated surfaces that are more like those produced by hardware-based triangulated surface rendering methods. T-shell techniques may either be used to speed up hardware-based methods (as we most recently demonstrated) or to produce rendering of triangulated surfaces that are more like hardware-based methods in appearance (as we will demonstrate in this work) entirely in software. In addition, we will demonstrate the ability to interact with the T-shell in realtime, in a manner that is not possible for other methods, for applications such as interactive surgical planning, and show that software-based T-shell rendering is comparable in speed to hardware-based triangulated surface rendering.

Purpose: In previous meetings, we described the shell rendering method [1-5] of volume visualization. Shell rendering is an extremely efficient rendering method that is entirely based in software and can be used for surface rendering, volume rendering, or anything in between. We also demonstrated that the digital shell rendering data structure can be augmented to what we refer to as T-shells (triangulated shells) to improve the performance of hardware-based surface rendering by using software [6]. In this work, we demonstrate how T-shells representing triangulated surfaces may be rendered entirely in software to produce renditions that are comparable in appearance to hardware-based methods at comparable or greater speeds, and show how surfaces and objects may be manipulated (edited) in 3D in realtime by using T-shells.

Methods: Digital shell [2] is a data structure that is a quintuple < B, nc, sn, M, G >. For our discussion (and for surface rendering), only the first three items of the quintuple are relevant. B is the set of voxels in the shell, which is represented by a pointer-based linear list. nc stores the neighbor code indicating the neighborhood configuration of each voxel in B. sn contains a unit normal vector estimated at each voxel in B, which is utilized for shading computation. The T-shell is a data structure identical in form to the digital shell with only two differences. First, B now is a set of marching cubes (instead of voxels) as defined in the Marching Cubes method [7]. Second, nc represents one of the 256 possible Marching Cubes configurations. With these modifications, and with the recognition that triangulated surfaces produced by the marching cubes family of methods are inherently digital, digital shell rendering techniques can be readily applied to T-shells. The high efficiency of shell (and now T-shell) rendering comes from the fact that the digital treatment allows us to reduce almost all expensive computations related to hidden surface removal and shading to table lookup operations. The decimation techniques commonly used to simplify the triangles (and that destroy the elegant digital geometry) are neither needed nor recommended. Further, digital surface manipulation techniques [1] can be readily employed to manipulate (cut, separate, move, reflect, edit) T-shells with minor modifications.

Results: We demonstrate that T-shell renditions are similar in appearance to hardware-based, triangulated surface rendering and are produced at comparable or greater speed. Additionally, we demonstrate that the T-shell data structures allow for the realtime interaction with the surfaces in a manner that is not possible via hardware-based methods.

New Work: We describe and demonstrate a method of triangulated surface rendering extending principles of digital surface rendering that is based entirely in portable software and that produces renditions that are comparable in both appearance and speed to hardware-based methods. Additionally, we demonstrate how the T-shell data structure and algorithms can be used to manipulate (edit in 3D) the surfaces of objects in realtime in a manner that is not possible by using hardware-based methods.

Conclusions: T-shell rendering can produce renditions that are similar in appearance to hardware-based, triangulated surface rendering at comparable speeds but entirely in software. The triangle decimation techniques commonly used to simplify the triangles (and that destroy the elegant digital geometry) are neither needed nor recommended. Further, digital surface manipulation techniques [1] can be readily employed to manipulate (cut, separate, move, reflect, edit) T-shells with minor modifications.

References:
[1] Udupa, J.K. and Odhner, D.: "Fast Visualization, Manipulation, and Analysis of Binary Volumetric Objects," IEEE Computer Graphics and Applications, 11(6):53-62, 1991.
[2] Udupa, J.K. and Goncalves, R.J.: "Shell Rendering," IEEE Computer Graphics and Applications, 13(6):58-67, 1993.
[3] Grevera, G.J., Udupa, J.K. and Odhner, D.: "An Order of Magnitude Faster Surface Rendering in Software on a PC Than Using Dedicated Rendering Hardware," IEEE Transactions on Visualization and Computer Graphics, 6(4):335-345, 2000.
[4] Falcao, A.X., Rocha, L.M. and Udupa, J.K.: "Comparative Analysis of Shell Rendering and Shear-Warp Rendering," SPIE Proceedings, 4681:472-482, 2002.
[5] Falcao, A.X., Rocha, L.M. and Udupa, J.K.: "Combined Approach of Shell and Shear-Warp Rendering for Efficient Volume Visualization," SPIE Proceedings, 5029:64, 2003.
[6] Grevera, G.J., Udupa, J.K. and Odhner, D.: "T-Shell Rendering," SPIE Proceedings, 4319:413-425, 2001.
[7] Lorensen, W. and Cline, H.: "Marching Cubes: A High Resolution 3D Surface Construction Algorithm," Computer Graphics, 23:185-194, 1989.