RACBVHs: Random-Accessible Compressed Bounding Volume Hierarchies Tae-Joon Kim Bochang Moon Duksu Kim Sung-Eui Yoon KAIST (Korea Advanced Institute of.

Slides:



Advertisements
Similar presentations
Sven Woop Computer Graphics Lab Saarland University
Advertisements

Christian Lauterbach COMP 770, 2/16/2009. Overview  Acceleration structures  Spatial hierarchies  Object hierarchies  Interactive Ray Tracing techniques.
Collision Detection CSCE /60 What is Collision Detection?  Given two geometric objects, determine if they overlap.  Typically, at least one of.
IIIT Hyderabad Hybrid Ray Tracing and Path Tracing of Bezier Surfaces using a mixed hierarchy Rohit Nigam, P. J. Narayanan CVIT, IIIT Hyderabad, Hyderabad,
Introduction to Massive Model Visualization Patrick Cozzi Analytical Graphics, Inc.
Visibility Culling using Hierarchical Occlusion Maps Hansong Zhang, Dinesh Manocha, Tom Hudson, Kenneth E. Hoff III Presented by: Chris Wassenius.
Mesh Layouts for Block-Based Caches Sung-Eui Yoon Peter Lindstrom Lawrence Livermore National Laboratory.
FASTCD: Fracturing-Aware Stable Collision Detection Jae-Pil Heo 1, Joon-Kyung Seong 1, Duksu Kim 1, Miguel A. Otaduy 2, Jeong-Mo Hong 3, Min Tang 4, and.
Experiences with Streaming Construction of SAH KD Trees Stefan Popov, Johannes Günther, Hans-Peter Seidel, Philipp Slusallek.
VLSH: Voronoi-based Locality Sensitive Hashing Sung-eui Yoon Authors: Lin Loi, Jae-Pil Heo, Junghwan Lee, and Sung-Eui Yoon KAIST
Haptic Rendering using Simplification Comp259 Sung-Eui Yoon.
Max-Plank Institut für Informatik systematic error parallelogram rule polygonal rules exact prediction Geometry Prediction for High Degree Polygons Martin.
Memory-Savvy Distributed Interactive Ray Tracing David E. DeMarle Christiaan Gribble Steven Parker.
GPU Proximity Queries with Swept Sphere Volumes COMP Robotics Project Proposal Qi Mo.
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University.
Face Fixer Compressing Polygon Meshes with Properties Martin Isenburg Jack Snoeyink University of North Carolina at Chapel Hill.
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Quick-VDR: Interactive View-Dependent Rendering of Massive Models Sung-Eui Yoon Brian Salomon Russell Gayle.
Surface Simplification & Edgebreaker Compression for 2D Cel Animations Vivek Kwatra & Jarek Rossignac GVU Center, College of Computing Georgia Institute.
Lossless Compression of Floating-Point Geometry Martin Isenburg UNC Chapel Hill Peter Lindstrom LLNL Livermore Jack Snoeyink UNC Chapel Hill.
With Parallelogram Prediction Compressing Polygon Mesh Geometry Martin Isenburg UNC Chapel Hill Pierre Alliez INRIA Sophia-Antipolis.
Overview Class #10 (Feb 18) Assignment #2 (due in two weeks) Deformable collision detection Some simulation on graphics hardware... –Thursday: Cem Cebenoyan.
Compressing Polygon Mesh Connectivity
Streaming Compression of Triangle Meshes Martin Isenburg University of California at Berkeley Jack Snoeyink University of North Carolina at Chapel Hill.
Ray Tracing Dynamic Scenes using Selective Restructuring Sung-eui Yoon Sean Curtis Dinesh Manocha Univ. of North Carolina at Chapel Hill Lawrence Livermore.
Optimized Subdivisions for Preprocessed Visibility Oliver Mattausch, Jiří Bittner, Peter Wonka, Michael Wimmer Institute of Computer Graphics and Algorithms.
R-LODs: Fast LOD-based Ray Tracing of Massive Models Sung-Eui Yoon Lawrence Livermore National Lab. Christian Lauterbach Dinesh Manocha Univ. of North.
Martin Isenburg UC Berkeley Jack Snoeyink UNC Chapel Hill Early Split Coding of Triangle Mesh Connectivity.
Bounding Volume Hierarchies and Spatial Partitioning Kenneth E. Hoff III COMP-236 lecture Spring 2000.
Apex Point Map for Constant-Time Bounding Plane Approximation Samuli Laine Tero Karras NVIDIA.
1 Advanced Scene Management System. 2 A tree-based or graph-based representation is good for 3D data management A tree-based or graph-based representation.
Out-of-Core Compression for Gigantic Polygon Meshes Martin IsenburgStefan Gumhold University of North CarolinaWSI/GRIS at Chapel Hill Universität Tübingen.
Collision Detection David Johnson Cs6360 – Virtual Reality.
1 A Novel Page-Based Data Structure for Interactive Walkthroughs Behzad Sajadi Yan Huang Pablo Diaz-Gutierrez Sung-Eui Yoon M. Gopi.
Data Management Techniques Sung-Eui Yoon KAIST URL:
Data Structures for Computer Graphics Point Based Representations and Data Structures Lectured by Vlastimil Havran.
Bounds on the Geometric Mean of Arc Lengths for Bounded- Degree Planar Graphs M. K. Hasan Sung-eui Yoon Kyung-Yong Chwa KAIST, Republic of Korea.
Semi-regular 3D mesh progressive compression and transmission based on an adaptive wavelet decomposition 21 st January 2009 Wavelet Applications in Industrial.
Random-Accessible Compressed Triangle Meshes Sung-eui Yoon Korea Advanced Institute of Sci. and Tech. (KAIST) Peter Lindstrom Lawrence Livermore National.
1 Real-time visualization of large detailed volumes on GPU Cyril Crassin, Fabrice Neyret, Sylvain Lefebvre INRIA Rhône-Alpes / Grenoble Universities Interactive.
Click to edit Master title style HCCMeshes: Hierarchical-Culling oriented Compact Meshes Tae-Joon Kim 1, Yongyoung Byun 1, Yongjin Kim 2, Bochang Moon.
Interactive Rendering With Coherent Ray Tracing Eurogaphics 2001 Wald, Slusallek, Benthin, Wagner Comp 238, UNC-CH, September 10, 2001 Joshua Stough.
Fast BVH Construction on GPUs (Eurographics 2009) Park, Soonchan KAIST (Korea Advanced Institute of Science and Technology)
Real-time Rendering of Heterogeneous Translucent Objects with Arbitrary Shapes Stefan Kinauer KAIST (Korea Advanced Institute of Science and Technology)
Spectral Compression of Mesh Geometry (Karni and Gotsman 2000) Presenter: Eric Lorimer.
Hierarchical Penumbra Casting Samuli Laine Timo Aila Helsinki University of Technology Hybrid Graphics, Ltd.
Efficient Streaming of 3D Scenes with Complex Geometry and Complex Lighting Romain Pacanowski and M. Raynaud X. Granier P. Reuter C. Schlick P. Poulin.
Maximizing Parallelism in the Construction of BVHs, Octrees, and k-d Trees Tero Karras NVIDIA Research.
Presented by Paul Phipps
Compact, Fast and Robust Grids for Ray Tracing Ares Lagae & Philip Dutré 19 th Eurographics Symposium on Rendering EGSR 2008Wednesday, June 25th.
Compact, Fast and Robust Grids for Ray Tracing
Rendering Large Models (in real time)
Fifth International Conference on Curves and Surfaces Incremental Selective Refinement in Hierarchical Tetrahedral Meshes Leila De Floriani University.
David Luebke 3/5/2016 Advanced Computer Graphics Lecture 4: Faster Ray Tracing David Luebke
Efficient Ray Tracing of Compressed Point Clouds Erik Hubo Tom Mertens Tom Haber Philippe Bekaert Expertise Centre for Digital Media Hasselt University.
Interactive Continuous Collision Detection for Polygon Soups Xin Huang 11/20/2007.
CHC ++: Coherent Hierarchical Culling Revisited Oliver Mattausch, Jiří Bittner, Michael Wimmer Institute of Computer Graphics and Algorithms Vienna University.
APE'07 IV INTERNATIONAL CONFERENCE ON ADVANCES IN PRODUCTION ENGINEERING June 2007 Warsaw, Poland M. Nowakiewicz, J. Porter-Sobieraj Faculty of.
1 The Method of Precomputing Triangle Clusters for Quick BVH Builder and Accelerated Ray Tracing Kirill Garanzha Department of Software for Computers Bauman.
Layout by orngjce223, CC-BY Compact BVH StorageFabianowski ∙ Dingliana Compact BVH Storage for Ray Tracing and Photon Mapping Bartosz Fabianowski ∙ John.
Bounding Volume Hierarchies and Spatial Partitioning
Hybrid Ray Tracing and Path Tracing of Bezier Surfaces using a mixed hierarchy Rohit Nigam, P. J. Narayanan CVIT, IIIT Hyderabad, Hyderabad, India.
Bounding Volume Hierarchies and Spatial Partitioning
Deformable Collision Detection
Real-Time Ray Tracing Stefan Popov.
A Brief History of 3D MESH COMPRESSION ORAL, M. ELMAS, A.A.
Hybrid Ray Tracing of Massive Models
Cache-Efficient Layouts of BVHs and Meshes
Collision Detection.
Deformable Collision Detection
Boolean Operations for Free-form Models Represented in Geometry Images
Presentation transcript:

RACBVHs: Random-Accessible Compressed Bounding Volume Hierarchies Tae-Joon Kim Bochang Moon Duksu Kim Sung-Eui Yoon KAIST (Korea Advanced Institute of Science and Technology) To appear at IEEE TVCG 09

Goal   Design a compact representation for interactive geometric and graphics applications of massive models   Support random access   Support various applications   Improve performance of applications

Motivation – Massive Models   Take high disk/memory spaces   Long data access time and low I/O performance St. Matthew model (372M triangles) Power plant with Hugo model (82M triangles)

Low Growth Rate of Data Access Speed Accumulated growth rate during 1999~2009 (log scale) Reducing data access time is critical! access speed disk access speed

Large Scale Applications   Ray tracing   Collision detection   Visibility queries   Dynamic simulation   Motion planning

Large Scale Applications   Common geometric data structures   Meshes   Acceleration hierarchies   k-d trees   Bounding volume hierarchies (BVHs)   Usually require random access on meshes and hierarchies Supporting random access is important!

Our Approach   Compress bounding volume hierarchies (BVHs) to reduce expensive data access time   Support random access   Support fast runtime decompression for performance improvements   Provide general API for various applications Random-Accessible Compressed BVHs

Ray Tracing of St. Matthew Model   128M triangles (4GB)   256M BVH (8GB)   9.6:1 compression ratios for the BVH over original uncompressed BVH   4.4:1 runtime performance improvement

Related Work   Mesh compression   Compression and random access   Tree and BVH compression

Mesh Compression   Designed to achieve a maximum compression ratio or efficient transmission   [Touma and Gotsman 98, Devillers and Gandoin 00]   Encode vertices   [Alliez and Desbrun 01, Kälberer et al. 05]   Encode edges   [Isenburg and Snoeyink 00]   Encode faces   [Gumhold and Strasser 98, Rossignac 99, Lee et al. 02] Do not directly support random access

Compression and Random Access   Quite common in video & audio encoding   E.g., MPEG video   Single or multi-resolution mesh compression   [Choe et al. 04, Yoon and Lindstrom 07, Choe et al. 09]   [Gobbetti et al. 06, Kim et al. 06]   Regular volumetric grids and images   [Ihm and Park 99, Rodler 99, Lefebvre and Hoppe 06]

Tree and BVH Compression   Tree compression   [Zaks 80, Zerling 85, Katajainen and Makinen 90]   Do not support random access   Encode bounding volumes   Quantization: [Cline et al. 06, Mahovsky 05, Terdiman 03]   Hierarchical encoding: [Rusinkiewicz and Levoy 00, Hubo et al. 06]   Encode tree structures   Assume a particular tree structure: [Lauterbach et al. 07 and 08]   Assume a particular layout for the tree: [Lefebvre and Hoppe 07]

Outline   Overview   Compression at preprocessing   Runtime data access framework   Results

Outline   Overview   Compression at preprocessing   Runtime data access framework   Results

Overview - Compression at Preprocessing   Decompose the BVHs into set of clusters   Compress each cluster separately   Each cluster serves as an access point C1C1 C2C2 C3C3 BVH

Overview - Runtime BVH Access Framework Main memory Applications External drive Compressed data pool Cached data Cluster c 0 Cluster c 1 Cluster c 2 Cluster c 3 Cluster c 4 Cluster c 5 … Cluster c n … … n Offset table Request data Requested data Decompress using CPU power

Overview - Runtime BVH Access Framework Main memory Applications Compressed data pool Cached data Cluster c 0 Cluster c 1 Cluster c 2 Cluster c 3 Cluster c 4 Cluster c 5 … Cluster c n … … n Offset table Request data Requested data Preloaded data

Outline   Overview   Compression at preprocessing   Runtime data access framework   Results

Bounding Volume Hierarchies (BVHs)   A node of BVHs has:   Indices of children nodes   A bounding volume (BV)   We use the axis-aligned bounding box (AABB) and a binary BVH   Due to its simplicity and the wide use   Can be easily extended to other types of BVs and k-ary BVHs BV Index of child node

Layouts of BVHs   Order of stored BV nodes in memory   Affect the performance of applications   Our method preserves the original layouts   Support any layouts   Use cache-efficient layouts for the best performance [Yoon and Manocha 06] Layout of a BVH

Cluster-based Compression   Cluster has:   Fixed number (e.g. 4K) of consecutive nodes in the layouts   Compute clusters with cache-coherent nodes   Implicitly performed by using cache-coherent layouts of BVHs C1C1 C2C2 C3C3

Encoding Bounding Volumes   Quantize min and max extents of BVs   Predict child BVs using their parent BV   Use the simple median prediction   Encode prediction errors   Use a dictionary-based encoder for fast decompression Parent BV Left BV Right BV Prediction error

Front-based Tree Structure Encoding   Maintain a front of nodes, one of whose child nodes is uncompressed yet   Average size of front: 13   4K nodes with cache-efficient layouts   Encode tree structures using only a few bits by connecting uncompressed nodes to a node in the front : Not yet compressed nodes : Compressed nodes n6n6 n6n6 n7n7 n7n7 n8n8 n8n8 n9n9 n9n9 n 10 n 11 n 13 n 14 n 12 n1n1 n1n1 n3n3 n3n3 n5n5 n5n5 n4n4 n4n4 n2n2 n2n2 n0n0 n0n0 n2n2 n2n2 n3n3 n3n3 n4n4 n4n4 n5n5 n5n5 Front n1n1 n1n1 n3n3 n3n3 n5n5 n5n5 n4n4 n4n4 n2n2 n2n2 n0n0 n0n0

Outline   Overview   Compression at preprocessing   Runtime data access framework   Results

  Various applications can transparently access our representation using the following API: Applications BVH Access API Main memory External drive Compressed data pool Cached data Cluster c 0 Cluster c 1 Cluster c 2 Cluster c 3 Cluster c 4 Cluster c 5 … Cluster c n … … n Offset table Decompression  GetRootIndex (.)  GetBV (.)  IsLeaf (.)  GetLeftChildIndex (.)  GetRightChildIndex (.)  GetTriangleIndex (.)

Outline   Overview   Compression at preprocessing   Runtime data access framework   Results

Compression Results Model Tri. (M) St. Matthew128 Iso surface102 Lucy28 Power plant13 CAD turbine1.8 Comp. ratio over uncomp. BVH 9.6:1 8.8:1 8.7:1 12:1 8.3:1 Compression bits per node TreeBV  16 bits quantization for BVs  4K nodes per cluster Size (MB) of uncomp. BVH 7,811 6,254 1,

Benchmark Applications   Ray tracing   Typically traverses large portions of BVHs   Collision detection   Accesses smaller and more localized portions of BVHs than ray tracing

Video for Benchmark Applications

Performance Improvement   Mainly due to higher I/O performance   Reduce the data size by using compression → Reduce or remove the expensive disk I/O time   Use CPU power to efficiently decompress the data

Parallel Random Access   Ray tracing of St. Matthew model (128M tri.) using only primary rays Speedup

Limitation   Lower (by up to 3%) the performance with small models which can fit in main memory   Overhead of identifying clusters   Less tight BVs due to a conservative quantization

Summary & Conclusion   Low storage requirement   Achieve up to a 12:1 compression ratio   Improved performance with random accessibility   Achieve a 4:1 runtime performance improvement   Wide applicability   Allows various applications to access the compressed BVHs   High scalability   Achieve a 3.6:1 performance improvement when using 4 threads over single thread

Future Work   Compact in-core representations   Apply to highly parallel architectures   GPU   Larrabee   Apply to levels-of-detail (LOD) hierarchies

Acknowledgments   Members of SGLab. in KAIST   Model contributors   Funding agencies   KAIST seed grant   Ministry of Knowledge Economy   Samsung   Microsoft Research Asia   Korea Research Foundation

Any Questions? Q & A Thank you!