Progressive CPU Volume Rendering with Sample Accumulation

We present a new method for progressive volume rendering by accumulating object-space samples over successively rendered frames. Existing methods for progressive refinement either use image space methods or average pixels over frames, which can blur features or integrate incorrectly with respect to depth. Our approach stores samples along each ray, accumulates new samples each frame into a buffer, and progressively interleaves and integrates these samples. Though this process requires additional memory, it ensures interactivity and is well suited for CPU architectures with large memory and cache. This approach also extends well to distributed rendering in cluster environments. We implement this technique in Intel’s open source OSPRay CPU ray tracing framework and demonstrate that it is particularly useful for rendering volumetric data with costly sampling functions.

[1]  Loren C. Carpenter,et al.  The A -buffer, an antialiased hidden surface method , 1984, SIGGRAPH.

[2]  Robert Haimes,et al.  ElVis: A System for the Accurate and Interactive Visualization of High-Order Finite Element Solutions , 2012, IEEE Transactions on Visualization and Computer Graphics.

[3]  Markus Hadwiger,et al.  Real‐Time Ray‐Casting and Advanced Shading of Discrete Isosurfaces , 2005, Comput. Graph. Forum.

[4]  Marc Levoy,et al.  Volume rendering by adaptive refinement , 1990, The Visual Computer.

[5]  Cláudio T. Silva,et al.  Hardware-assisted visibility sorting for unstructured volume rendering , 2005, IEEE Transactions on Visualization and Computer Graphics.

[6]  Charles D. Hansen,et al.  Distributed interactive ray tracing for large volume visualization , 2003, IEEE Symposium on Parallel and Large-Data Visualization and Graphics, 2003. PVG 2003..

[7]  Shayan Moini-Yekta,et al.  The LAVA Computational Fluid Dynamics Solver , 2014 .

[8]  Kwan-Liu Ma,et al.  Interactive Progressive Visualization with Space-Time Error Control , 2014, IEEE Transactions on Visualization and Computer Graphics.

[9]  Ryutarou Ohbuchi,et al.  Incremental Volume Rendering Algorithm for Interactive 3D Ultrasound Imaging , 1991, IPMI.

[10]  M. Ament,et al.  Volume Rendering , 2015 .

[11]  Kelly P. Gaither,et al.  RBF Volume Ray Casting on Multicore and Manycore CPUs , 2014, Comput. Graph. Forum.

[12]  Kwan-Liu Ma,et al.  Parallel volume rendering using binary-swap compositing , 1994, IEEE Computer Graphics and Applications.

[13]  William M. Hsu,et al.  Segmented ray casting for data parallel volume rendering , 1993, Proceedings of 1993 IEEE Parallel Rendering Symposium.

[14]  Anders Ynnerman,et al.  Transfer function based adaptive decompression for volume rendering of large medical data sets , 2004, 2004 IEEE Symposium on Volume Visualization and Graphics.

[15]  Sylvain Lefebvre,et al.  GigaVoxels: ray-guided streaming for efficient and detailed voxel rendering , 2009, I3D '09.

[16]  Peter-Pike J. Sloan,et al.  Interactive Ray Tracing for Volume Visualization , 1999, IEEE Trans. Vis. Comput. Graph..

[17]  Naohisa Sakamoto,et al.  Sorting-free pre-integrated projected tetrahedra , 2009, UltraVis '09.

[18]  皓仁 柯 Sample Buffer: A Progressive Refinement Ray-Casting Algorithm for Volume Rendering , 1993 .

[19]  Andreas Kolb,et al.  Topology-Caching for Dynamic Particle Volume Raycasting , 2010, VMV.

[20]  Aaron Knoll,et al.  OSPRay - A CPU Ray Tracing Framework for Scientific Visualization , 2017, IEEE Transactions on Visualization and Computer Graphics.

[21]  Thomas Ertl,et al.  Space-time volumetric depth images for in-situ visualization , 2014, 2014 IEEE 4th Symposium on Large Data Analysis and Visualization (LDAV).

[22]  Markus Hadwiger,et al.  Interactive Volume Exploration of Petascale Microscopy Data Streams Using a Visualization-Driven Virtual Memory Approach , 2012, IEEE Transactions on Visualization and Computer Graphics.

[23]  Hans Hagen,et al.  Full-resolution interactive CPU volume rendering with coherent BVH traversal , 2011, 2011 IEEE Pacific Visualization Symposium.

[24]  James P. Ahrens,et al.  Cinema image-based in situ analysis and visualization of MPAS-ocean simulations , 2016, Parallel Comput..

[25]  Klaus Mueller,et al.  Overview of Volume Rendering , 2005, The Visualization Handbook.

[26]  Timo Ropinski,et al.  Voreen: A Rapid-Prototyping Environment for Ray-Casting-Based Volume Visualizations , 2009, IEEE Computer Graphics and Applications.

[27]  M. Pharr,et al.  ispc: A SPMD compiler for high-performance CPU programming , 2012, 2012 Innovative Parallel Computing (InPar).

[28]  Kwan-Liu Ma,et al.  Explorable images for visualizing volume data , 2010, 2010 IEEE Pacific Visualization Symposium (PacificVis).

[29]  Thomas Ertl,et al.  Explorable Volumetric Depth Images from Raycasting , 2013, 2013 XXVI Conference on Graphics, Patterns and Images.

[30]  Markus Hadwiger,et al.  State‐of‐the‐Art in GPU‐Based Large‐Scale Volume Visualization , 2015, Comput. Graph. Forum.

[31]  Tom Lokovic,et al.  Deep shadow maps , 2000, SIGGRAPH.

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

[33]  Marc Levoy,et al.  Display of surfaces from volume data , 1988, IEEE Computer Graphics and Applications.