ABSTRACT Splatting is a fast volume rendering algorithm which achieves its speed by projecting voxels in the form of pre-integrated interpo- lation kernels, or splats. Presently, two main variants of the splat- ting algorithm exist: (i) the original method, in which all splats are composited back-to-front, and (ii) the sheet-buffer method, in which the splats are added in cache-sheets, aligned with the vol- ume face most parallel to the image plane, which are subsequently composited back-to-front. The former method is prone to cause bleeding artifacts from hidden objects, while the latter method reduces bleeding, but causes very visible color popping artifacts when the orientation of the compositing sheets changes suddenly as the image screen becomes more parallel to another volume face. We present a new variant of the splatting algorithm in which the compositing sheets are always parallel to the image plane, elimi- nating the condition for popping, while maintaining the insensitiv- ity to color bleeding. This enables pleasing animated viewing of volumetric objects without temporal color and lighting discontinu- ities. The method uses a hierarchy of partial splats and employs an efficient list-based volume traversal scheme for fast splat access. It also offers more accuracy for perspective splatting as the decom- position of the individual splats facilitates a better approximation to the diverging nature of the rays that traverse the splatting ker- nels. 1 INTRODUCTION Volume rendering has gained great popularity in recent years as it allows the user to comprehend and visualize a volumetric dataset in its true continuous three-dimensional representation, and not just as a shell of isosurfaces, as is the case in polygonal models. In volume rendering, the three-dimensional structures do not need to be segmented into binary objects, but can retain their natural fuzzy character, which is more appropriate considering that a voxel possibly constitutes a mix of various materials. A binarization with the goal of producing an isosurface, tiled with polygons, destroys this interplay of microsurfaces that will produce subtle but percep- tible variations of color in a volumetric display. With volume visu- alization, objects of interest can be rendered embedded in their surrounding structures, represented by semitransparent clouds. This helps the user to keep track of existing spatial relationships, and at the same time makes for a more natural and realistic display. Maintaining the volumetric representation also enables users to manipulate volumes and interact with its structures. Volume mor- phing, sculpting and surgical simulations are just a few examples of the immense potential that such a representation has to offer. Volume rendering is appropriate for any discrete dataset that was acquired from a formerly continuous object via sampling. Most medical imaging technologies, such as MRI, CT, Ultrasound, PET, and SPECT fall into this category. Volume rendering is also often used in scientific simulations, such as CFD or FEM, which approximate a continuum by a discrete representation, and gener- ate their output on some discrete grid, usually irregular or curvilin- ear. The medical applications, on the other hand, mostly acquire their data as an axial stack of 2D slices, where the slices are uni- formly sampled on a square grid, but the axial distance between slices is larger than the L 1 sample distance within the slices. Hence, a voxel is not a cube, but a box with a square base. Interpolation of intermittent slices is required if one desires a cubic grid. Shape- based interpolation [5] has become the method of choice for this task, but note that the interpolation of slice data increases the mag- nitude of the already large volume datasets even more. It is prefera- ble that the volume renderer can deal with this unequal grid scaling without requiring extra interpolated slices. Polygonal surface renderers compress the 3D data into a very sparse, vertex-edge-polygon representation, which enables fast dis- play, even if none of the widely available polygon graphics hard- ware is used. Volume renderers, on the other hand, consider the full, uncompressed dataset, which increases both the required com- putational effort and the demands on data management. In recent years, various volume rendering methods have been proposed that all aim to be faster than the traditional raycasting method. One way to classify these algorithms is by how much graphics hardware they utilize. On one end is the pure software- based shear-warp algorithm, which achieves impressive speeds by using a smart data structure and intensive data pre-processing [8]. On the other end is the class of dedicated volume rendering boards [7][14]. The performance of the shear-warp algorithm is very sen- sitive to changes in the transfer functions, while the hardware solu- tions, although extremely fast, suffer from the symptoms of any hardwired approach: they provide less flexibility than an algorithm configured on a general purpose machine. For this ongoing research our philosphy is to exploit the readily available, highly optimized polygon graphics hardware with 2D texturing as much as possible for the purpose of volume rendering, without adding dedicated custom hardware. On the other hand, we also seek an algorithm that can be efficiently used should no graphics hardware be at hand. The method that fits our demands best is the splatting tech- nique, proposed by Lee Westover [19]-[21]. This algorithm reduces the interpolation complexity of raycasting from the num- ber of samples along the rays to the number of voxels within one or several iso-ranges. In splatting, each voxel is represented by a 3D kernel which is pre-integrated into a 2D footprint, weighted by the voxel value and mapped onto the image plane. The collection of all projected footprints then forms the final image. By mapping this footprint as an image onto a polygon, we can employ standard 2D texture mapping hardware for the projection process [2]. However, the footprint interpolation is also easily done in software with fast DDA and bit-blt procedures [10][12]. Splatting can be performed either in object-order [19]-[21] or, as a ray-based approach, in image-order [12]. Each approach offers its own set of acceleration techniques: iso-voxel lists [3], splat hierarchies [9] for the object- order technique, and space leaping [23], bounding boxes [16], and early ray-termination [4] for the ray-based approach. The optimal choice depends on the nature of the data. The use of pre-integrated kernels introduces inaccuracies into the compositing process since the 3D reconstruction kernel is com- Eliminating Popping Artifacts in Sheet Buffer-Based Splatting Klaus Mueller and Roger Crawfis Department of Computer and Information Science The Ohio State University, Columbus, OH 2015 Neil Ave, 395 Dreese Lab, Columbus, OH 43210, {mueller, crawfis}@cis.ohio-state.edu, Appeared in the Proceedings of the Visualization’98 conference, pp. 239-245