progressive encoding of complex isosurfaces haeyoung lee mathieu desbrun peter schröder usc usc...
Post on 15-Jan-2016
216 views
TRANSCRIPT
![Page 1: Progressive Encoding of Complex Isosurfaces Haeyoung Lee Mathieu Desbrun Peter Schröder USC USC Caltech](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649d2a5503460f949ff716/html5/thumbnails/1.jpg)
Progressive Encoding of Progressive Encoding of Complex IsosurfacesComplex Isosurfaces
Progressive Encoding of Progressive Encoding of Complex IsosurfacesComplex Isosurfaces
Haeyoung Lee Mathieu Desbrun Peter Schröder
USC USC Caltech
![Page 2: Progressive Encoding of Complex Isosurfaces Haeyoung Lee Mathieu Desbrun Peter Schröder USC USC Caltech](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649d2a5503460f949ff716/html5/thumbnails/2.jpg)
2
MotivationMotivationMotivationMotivationLargest meshes come from volume data
MRI, CT, Laser Scan Scientific simulation
Challenging to store and/or transmit
![Page 3: Progressive Encoding of Complex Isosurfaces Haeyoung Lee Mathieu Desbrun Peter Schröder USC USC Caltech](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649d2a5503460f949ff716/html5/thumbnails/3.jpg)
3
Background on Background on CompressionCompressionBackground on Background on CompressionCompression Mesh Encoding vs. Geometry Encoding
Connectivity + Geometry, or Geometry only
Single-rate vs. Progressive Compression
Progressivity is preferred for huge meshes
T r a n s m i s s i o n
Single-rate
Progressive
![Page 4: Progressive Encoding of Complex Isosurfaces Haeyoung Lee Mathieu Desbrun Peter Schröder USC USC Caltech](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649d2a5503460f949ff716/html5/thumbnails/4.jpg)
4
Our ContextOur ContextOur ContextOur Context High genus and many components
Remeshing impractical » best known coders unusable!
Extracted from volume data Very special mesh structure
V: 280039CC:183Genus: 425Skull, extracted from 257x257x257 MRI
volume data
![Page 5: Progressive Encoding of Complex Isosurfaces Haeyoung Lee Mathieu Desbrun Peter Schröder USC USC Caltech](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649d2a5503460f949ff716/html5/thumbnails/5.jpg)
5
OutlineOutlineOutlineOutline
Definitions
Previous Work
Our progressive compression Connectivity Geometry
Our results
Conclusion and Future work
![Page 6: Progressive Encoding of Complex Isosurfaces Haeyoung Lee Mathieu Desbrun Peter Schröder USC USC Caltech](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649d2a5503460f949ff716/html5/thumbnails/6.jpg)
6
DefinitionsDefinitionsDefinitionsDefinitions
Volume data
Binary Sign
Isosurface
Piercing edge
Homogeneous
Inhomogeneous
![Page 7: Progressive Encoding of Complex Isosurfaces Haeyoung Lee Mathieu Desbrun Peter Schröder USC USC Caltech](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649d2a5503460f949ff716/html5/thumbnails/7.jpg)
7
Previous Work (1)Previous Work (1)Previous Work (1)Previous Work (1)Single-rate Isosurface Compression
Connectivity: locate piercing edges» Saupe & Kuska ’01,’02: Octree» Zhang et al ’01: Binary sign and cell map» Yang & Wu ’02: 3D chessboard» Taubin ’02 (BLIC): Binary Sign map
Geometry: displacements along piercing edges
Much lower rates than general mesh encoders
![Page 8: Progressive Encoding of Complex Isosurfaces Haeyoung Lee Mathieu Desbrun Peter Schröder USC USC Caltech](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649d2a5503460f949ff716/html5/thumbnails/8.jpg)
8
Previous Work (2)Previous Work (2)Previous Work (2)Previous Work (2)Progressive Isosurface Compression
Laney et al. 2002» Distance transformation & wavelet
decomposition
Samet and Kochut 2002» Octree encoding, without explicit geometry
Problems: » Very limited test sets» Bitrates much worse than single-rate
encoders
![Page 9: Progressive Encoding of Complex Isosurfaces Haeyoung Lee Mathieu Desbrun Peter Schröder USC USC Caltech](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649d2a5503460f949ff716/html5/thumbnails/9.jpg)
9
Our ContributionsOur ContributionsOur ContributionsOur ContributionsProgressive Isosurface Codec
Connectivity Encoding» Novel octree encoding of binary bitmaps
Geometry Encoding» Dual contouring for crack-free
visualization
Best bitrates so far even better than any single-rate isosurface
encoders
![Page 10: Progressive Encoding of Complex Isosurfaces Haeyoung Lee Mathieu Desbrun Peter Schröder USC USC Caltech](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649d2a5503460f949ff716/html5/thumbnails/10.jpg)
10
Our Design Choices (1)Our Design Choices (1)Our Design Choices (1)Our Design Choices (1)
Adaptive Octree for Connectivity Encoding
Enable progressive localization Provide contexts for entropy coding Avoid redundancy
Horse: 9*9*9 (level 3) 17*17*17 (level 4) 33*33*33 (level 5)
![Page 11: Progressive Encoding of Complex Isosurfaces Haeyoung Lee Mathieu Desbrun Peter Schröder USC USC Caltech](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649d2a5503460f949ff716/html5/thumbnails/11.jpg)
11
Our Design Choices (2)Our Design Choices (2)Our Design Choices (2)Our Design Choices (2)
Dual Contouring [Ju et al 02, SW02]
Watertight meshes Sharp features
for hermite data Vertices in cells,
not on edges
![Page 12: Progressive Encoding of Complex Isosurfaces Haeyoung Lee Mathieu Desbrun Peter Schröder USC USC Caltech](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649d2a5503460f949ff716/html5/thumbnails/12.jpg)
12
Our Encoder At A GlanceOur Encoder At A GlanceOur Encoder At A GlanceOur Encoder At A Glance•Read in & Process volume data•Build Octree •Create Isosurface by DC
•Encode Geometry
•Encode Connectivity during a breadth-first traversal
![Page 13: Progressive Encoding of Complex Isosurfaces Haeyoung Lee Mathieu Desbrun Peter Schröder USC USC Caltech](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649d2a5503460f949ff716/html5/thumbnails/13.jpg)
13
Connectivity EncodingConnectivity EncodingConnectivity EncodingConnectivity Encoding Sign bits (Inside/Outside)
Encode binary signs at grid vertices » Cells with children:
encode necessary signs» Cells without children:
deduce sign from the parent
Leaf bits (Leaf/Non-leaf) Encode the presence of children
» Identify non-empty cells
![Page 14: Progressive Encoding of Complex Isosurfaces Haeyoung Lee Mathieu Desbrun Peter Schröder USC USC Caltech](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649d2a5503460f949ff716/html5/thumbnails/14.jpg)
14
Context ModelingContext ModelingContext ModelingContext ModelingCompression ratios depend on context choice
Sign bitstream: 15-bit context (best bit rates):
7 neighbors + 8 of parent» Differs from JBIG
Leaf bitstream: 1-bit context: previous bit (best bit rates)
![Page 15: Progressive Encoding of Complex Isosurfaces Haeyoung Lee Mathieu Desbrun Peter Schröder USC USC Caltech](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649d2a5503460f949ff716/html5/thumbnails/15.jpg)
15
Geometry Encoding?Geometry Encoding?Geometry Encoding?Geometry Encoding?
Sometimes, octree bits enough! Octree provides coarse geometry during
decoding» Barycenters of midpoints of the piercing
edges
w/o geo
w/ geo
w/o geo
w/ geo
![Page 16: Progressive Encoding of Complex Isosurfaces Haeyoung Lee Mathieu Desbrun Peter Schröder USC USC Caltech](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649d2a5503460f949ff716/html5/thumbnails/16.jpg)
16
Geometry Encoding Geometry Encoding Geometry Encoding Geometry Encoding
Local Coordinate System Least-square fitted plane
» through midpoints of piercing edges Two passes
» normal(z) & tangential(x,y) Context : 8 signs of the cell
Center
P
Center
P
![Page 17: Progressive Encoding of Complex Isosurfaces Haeyoung Lee Mathieu Desbrun Peter Schröder USC USC Caltech](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649d2a5503460f949ff716/html5/thumbnails/17.jpg)
17
ImplementationImplementationImplementationImplementation
Beware of Memory Footprint! Octree data structure can be overkill
» 2573 grids use up more than 1Gb
We use a “linearized” data structure» Unfolds the octree in a bitmap» No pointers, no recursive calls» Allows 10253 grids (or bigger) on your
PC
![Page 18: Progressive Encoding of Complex Isosurfaces Haeyoung Lee Mathieu Desbrun Peter Schröder USC USC Caltech](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649d2a5503460f949ff716/html5/thumbnails/18.jpg)
18
Our Results (1)Our Results (1)Our Results (1)Our Results (1)Total: 6.10b/v on average out of 10 models
Connectivity: 0.65 b/v on average 24% better than Taubin’s single-rate BLIC
Geometry: 5.45 b/v on average For a distortion similar to 12-bit
quantization
![Page 19: Progressive Encoding of Complex Isosurfaces Haeyoung Lee Mathieu Desbrun Peter Schröder USC USC Caltech](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649d2a5503460f949ff716/html5/thumbnails/19.jpg)
19
Our Results (2)Our Results (2)Our Results (2)Our Results (2)
Oct. level
Bytes
Distort (10-
4)
5
622
303.47
7
8,411
32.72
8
20,324
3.66
8+ 100% geo.
145,708
0.47
Bonsai (level 5 to end of geo)
0
50
100
150
200
9 10 11 12 13 14 15 16 17 18
Log(bytes,2)
Dis
tort
ion
![Page 20: Progressive Encoding of Complex Isosurfaces Haeyoung Lee Mathieu Desbrun Peter Schröder USC USC Caltech](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649d2a5503460f949ff716/html5/thumbnails/20.jpg)
20
Our Results (3)Our Results (3)Our Results (3)Our Results (3)
Octree level
Bytes passed
Distortion(10-
4)
5
507 bytes
166.18
8 + 33% geo.
92,156 bytes
4.06
8 + 100% geo.
226,554 bytes
0.65
7
8,605 bytes
22.02
Headscan (level 5 to end of geo)
0
50
100
150
200
8 10 12 14 16 18
Log(bytes, 2)
Dis
tort
ion
![Page 21: Progressive Encoding of Complex Isosurfaces Haeyoung Lee Mathieu Desbrun Peter Schröder USC USC Caltech](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649d2a5503460f949ff716/html5/thumbnails/21.jpg)
21
Results (4)Results (4)Results (4)Results (4)
For High Genus, High Complexity Geometry
30Kb 115Kb 602Kb
![Page 22: Progressive Encoding of Complex Isosurfaces Haeyoung Lee Mathieu Desbrun Peter Schröder USC USC Caltech](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649d2a5503460f949ff716/html5/thumbnails/22.jpg)
22
Results (5)Results (5)Results (5)Results (5)
Encoding a raw mesh often requires > 15b/v
3.95 b/v(0.58 + 3.37)
3.21 b/v(0.51 + 2.70)
3.45 b/v(0.09 + 3.39)
![Page 23: Progressive Encoding of Complex Isosurfaces Haeyoung Lee Mathieu Desbrun Peter Schröder USC USC Caltech](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649d2a5503460f949ff716/html5/thumbnails/23.jpg)
23
ConclusionConclusionConclusionConclusion Progressive isosurface compression
Progressive coding of binary octree
Encoding of dual contouring mesh vertices
Context modeling with arithmetic coding
Competitive compression ratios 24% better than the leading single-rate on
connectivity alone
![Page 24: Progressive Encoding of Complex Isosurfaces Haeyoung Lee Mathieu Desbrun Peter Schröder USC USC Caltech](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649d2a5503460f949ff716/html5/thumbnails/24.jpg)
24
Future WorkFuture WorkFuture WorkFuture Work Reducing bit rate further
Sophisticated binary valued wavelet?
View-dependent compression View-dependent encoding View-dependent decoding
Volume compression Neighboring isosurfaces