progressive encoding of complex isosurfaces
Download
Skip this Video
Download Presentation
Progressive Encoding of Complex Isosurfaces

Loading in 2 Seconds...

play fullscreen
1 / 24

Progressive Encoding of Complex Isosurfaces - PowerPoint PPT Presentation


  • 110 Views
  • Uploaded on

Progressive Encoding of Complex Isosurfaces. Haeyoung Lee Mathieu Desbrun Peter Schröder USC USC Caltech. Motivation. Largest meshes come from volume data MRI, CT, Laser Scan Scientific simulation

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Progressive Encoding of Complex Isosurfaces' - juana


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
progressive encoding of complex isosurfaces

Progressive Encoding of Complex Isosurfaces

Haeyoung Lee Mathieu Desbrun Peter Schröder

USC USC Caltech

motivation
Motivation
  • Largest meshes come from volume data
    • MRI, CT, Laser Scan
    • Scientific simulation
  • Challenging to store and/or transmit
background on compression

T r a n s m i s s i o n

Background on Compression
  • Mesh Encoding vs. Geometry Encoding
    • Connectivity + Geometry, or Geometry only
  • Single-rate vs. Progressive Compression
    • Progressivity is preferred for huge meshes

Progressive

Single-rate

our context
Our Context
  • High genus and many components
    • Remeshing impractical
      • best known coders unusable!
  • Extracted from volume data
    • Very special mesh structure

V: 280039CC:183Genus: 425

Skull, extracted from 257x257x257 MRI volume data

outline
Outline
  • Definitions
  • Previous Work
  • Our progressive compression
    • Connectivity
    • Geometry
  • Our results
  • Conclusion and Future work
definitions
Definitions
  • Volume data
  • Binary Sign
  • Isosurface
  • Piercing edge
  • Homogeneous
  • Inhomogeneous
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

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
our contributions
Our Contributions
  • Progressive 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
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)

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
our encoder at a glance
Our Encoder At A Glance
  • Read in & Process volume data
  • Build Octree
  • Create Isosurface by DC
  • Encode Connectivity

during a breadth-first traversal

  • Encode Geometry
connectivity encoding
Connectivity 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
context modeling
Context Modeling
  • Compression 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)
geometry encoding

w/o geo

w/o geo

w/ geo

w/ geo

Geometry Encoding?
  • Sometimes, octree bits enough!
    • Octree provides coarse geometry during decoding
      • Barycenters of midpoints of the piercing edges
geometry encoding1

P

P

Center

Center

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
implementation
Implementation
  • 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
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
our results 2
Our Results (2)

8+ 100% geo.

145,708

0.47

5

622

303.47

Oct. level

Bytes

Distort (10-4)

8

20,324

3.66

7

8,411

32.72

our results 3

5

507 bytes

166.18

7

8,605 bytes

22.02

8 + 33% geo.

92,156 bytes

4.06

8 + 100% geo.

226,554 bytes

0.65

Our Results (3)

Octree level

Bytes passed

Distortion(10-4)

results 4
Results (4)
  • For High Genus, High Complexity Geometry

30Kb 115Kb 602Kb

results 5
Results (5)
  • Encoding a raw mesh often requires > 15b/v

3.45 b/v

(0.09 + 3.39)

3.95 b/v

(0.58 + 3.37)

3.21 b/v

(0.51 + 2.70)

conclusion
Conclusion
  • 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
future work
Future Work
  • Reducing bit rate further
    • Sophisticated binary valued wavelet?
  • View-dependent compression
    • View-dependent encoding
    • View-dependent decoding
  • Volume compression
    • Neighboring isosurfaces
ad