GPU accelerated image aligned splatting

Splatting is a popular technique for volume rendering, where voxels are represented by Gaussian kernels, whose pre-integrated footprints are accumulated to form the image. Splatting has been mainly used to render pre-shaded volumes, which can result in significant blurring in zoomed views. This can be avoided in the image-aligned splatting scheme, where one accumulates kernel slices into equi-distant, parallel sheet buffers, followed by classification, shading, and compositing. In this work, we attempt to evolve this algorithm to the next level: GPU (graphics processing unit) based acceleration. First we describe the challenges that the highly parallel "Gather" architecture of modern GPUs poses to the "Scatter" based nature of a splatting algorithm. We then describe a number of strategies that exploit newly introduced features of the latest-generation hardware to address these limitations. Two crucial operations to boost the performance in image-aligned splatting are the early elimination of hidden splats and the skipping of empty buffer-space. We describe mechanisms which take advantage of the early z-culling hardware facilities to accomplish both of these operations efficiently in hardware.

[1]  Lutz Latta Building a Million Particle System , 2004 .

[2]  Roger Crawfis,et al.  Efficient Splatting Using Modern Graphics Hardware , 2003, J. Graphics, GPU, & Game Tools.

[3]  Torsten Möller,et al.  Accelerated Splatting using a 3D Adjacency Data Structure , 2001, Graphics Interface.

[4]  Klaus Mueller,et al.  Squeeze: numerical-precision-optimized volume rendering , 2004, Graphics Hardware.

[5]  Eduard Gröller,et al.  Optimal regular volume sampling , 2001, Proceedings Visualization, 2001. VIS '01..

[6]  Matthias Zwicker,et al.  3 Ideal Resampling 3 . 1 Sampling and Aliasing , 2022 .

[7]  Pat Hanrahan,et al.  Hierarchical splatting: a progressive refinement algorithm for volume rendering , 1991, SIGGRAPH.

[8]  Klaus Mueller,et al.  An anti-aliasing technique for splatting , 1997 .

[9]  Lee Westover,et al.  Footprint evaluation for volume rendering , 1990, SIGGRAPH.

[10]  Klaus Mueller,et al.  Splatting Errors and Antialiasing , 1998, IEEE Trans. Vis. Comput. Graph..

[11]  Klaus Mueller,et al.  Space-time points: 4D splatting on efficient grids , 2002, Symposium on Volume Visualization and Graphics, 2002. Proceedings. IEEE / ACM SIGGRAPH.

[12]  Klaus Mueller,et al.  Post-convolved Splatting , 2003, VisSym.

[13]  Matthias Zwicker,et al.  Hardware-accelerated adaptive EWA volume splatting , 2004, IEEE Visualization 2004.

[14]  Roger Crawfis,et al.  Eliminating popping artifacts in sheet buffer-based splatting , 1998 .

[15]  Matthias Zwicker,et al.  Surface splatting , 2001, SIGGRAPH.

[16]  Rüdiger Westermann,et al.  UberFlow: a GPU-based particle engine , 2004, SIGGRAPH '04.

[17]  Klaus Mueller,et al.  FastSplats: optimized splatting on rectilinear grids , 2000, VIS '00.

[18]  Klaus Mueller,et al.  Splatting without the blur , 1999, Proceedings Visualization '99 (Cat. No.99CB37067).

[19]  Jian Huang,et al.  High-Quality Splatting on Rectilinear Grids with Efficient Culling of Occluded Voxels , 1999, IEEE Trans. Vis. Comput. Graph..