1.02k likes | 1.21k Views
S PIRALE R EVERSI. Reverse Decoding of the Edgebreaker Encoding. Martin Isenburg Jack Snoeyink University of North Carolina at Chapel Hill. Introduction. Mesh compression is hip Edgebreaker encodes mesh connectivity Original dec oding algorithm
E N D
SPIRALE REVERSI Reverse Decoding of theEdgebreaker Encoding Martin Isenburg Jack Snoeyink University of North Carolina at Chapel Hill
Introduction • Mesh compression is hip • Edgebreaker encodes mesh connectivity • Original decoding algorithm • worst case time complexity: O(n2) • Wrap & Zip decoding algorithm • worst case time complexity: O(n) Spirale Reversi decoding algorithm
Overview • Connectivity Compression • Edgebreaker • Four Examples • Edgebreaker Encoding • Edgebreaker Decoding • Wrap & Zip Decoding • Spirale Reversi Decoding • Holes and Handles
connectivity geometry n = 10,000 100 KB 60 KB n = 100,000 1245 KB 600 KB n = 1,000,000 15 MB 6 MB Standard Representation triangle1 1 2 3 triangle2 3 4 3 triangle3 5 2 1 trianglem vertex1 (x,y,z) vertex2 (x,y,z) vertex3 (x,y,z) vertexn
Compression Schemes • Geometry Compression, Deering, 1995 • Short Encodings of Planar Graphs and Maps, Keeler and Westbrook, 1995 • Geometric Compression through Topological Surgery, Taubin and Rossignac, 1996 • Good orders for incremental (re)construction, Snoeyink and vanKrefeld, 1997 • Encoding a triangulation as a permutation of its point set, Denny and Sohler, 1997 • Triangle Mesh Compression, Touma and Gotsman, 1998 • Real time compression of triangle mesh connectivity, Gumhold and Strasser, 1998 • Mesh Connectivity Coding by Dual Graph Approach, Li and Kuo, 1998 • Edgebreaker: Connectivity Compression for Triangle Meshes, Rossignac, 1998 • Mesh Collapse Compression, Isenburg and Snoeyink, 1999 • Single Resolution Compression of Arbitrary Triangular Meshes with Properties, Bajaj, Pascucci, and Zhuang, 1999 • Triangle Strip Compression, Isenburg, 2000 • Face Fixer: Compressing Polygon Meshes with Properties, Isenburg and Snoeyink, 2000 • Efficient Coding of non-triangular Meshes, Kronrod and Gotsman
Compression Schemes time • Geometry Compression, Deering, 1995 • Short Encodings of Planar Westbrook, 1995 • Geometric Compression ubin and Rossignac, 1996 • Good orders for increm nd vanKrefeld, 1997 • Encoding a triangulation y and Sohler, 1997 • Triangle Mesh Compre • Real time compression d and Strasser, 1998 • Mesh Connectivity Co o, 1998 • Edgebreaker: Connectivity ossignac, 1998 • Mesh Collapse Compressi • Single Resolution Compres hes with Properties, Bajaj, Pascucci, and Zhuang, 1999 • Triangle Strip Compression, Isenburg, 2000 • Face Fixer: Compressing Polygon Meshes with Properties, Isenburg and Snoeyink, 2000 • Efficient Coding of non-triangular Meshes, Kronrod and Gotsman esh Connec Edgebreaker esh Collaps
Encoding • Encodes meshconnectivity asa sequence oflabels • Best worst casebound for meshconnectivity • Less than 4 bits per vertex for meshes without holes and handles
Decoding • Original decoding replays encoding traversal • but O(n2) worst case time complexity • Wrap & Zip decoding “sort of” replays encoding traveral • only O(n) time complexity • but multiple traversals of labels (triangles) for mesh with boundary (handles) • “zipping” is un-necessary overhead
C R
C R R
C R R R
C L R R R
C S L R R R
C S L L R R R
C E S L L R R R
C C E S L L R R R
C C E S L L R R R R
C C E S L L R R R R R
C C E E S L L R R R R R
C C E E S L L R R R R R
C C E E S L L R R R R R Changes in boundary length Computing initial boundary length 0
C C C E E S L L R R R R R Changes in boundary length Computing initial boundary length +1 0 +1
C C E E S L L R R R R R R Changes in boundary length Computing initial boundary length +1 -1 0 +1 0
C C E E S L L R R R R R R Changes in boundary length Computing initial boundary length +1 -1 -1 0 +1 0 -1
C C E E S L L R R R R R R Changes in boundary length Computing initial boundary length +1 -1 -1 -1 0 +1 0 -1 -2
C C E E S L L L R R R R R Changes in boundary length Computing initial boundary length +1 -1 -1 -1 -1 0 +1 0 -1 -2 -3
C C E E S S L L R R R R R Changes in boundary length Computing initial boundary length +1 -1 -1 -1 -1 +1 0 +1 0 -1 -2 -3 -2
C C E E S S L L R R R R R Changes in boundary length Computing initial boundary length Computing offset for label +1 -1 -1 -1 -1 +1 0 +1 0 -1 -2 -3 -2 0
C C E E S S L L L R R R R R Changes in boundary length Computing initial boundary length Computing offset for label +1 -1 -1 -1 -1 +1 -1 0 +1 0 -1 -2 -3 -2 -3 0 -1
C C E E E S S L L R R R R R Changes in boundary length Computing initial boundary length Computing offset for label +1 -1 -1 -1 -1 +1 -1 -3 0 +1 0 -1 -2 -3 -2 -3 -6 0 -1 -4
C C C E E S S L L R R R R R Changes in boundary length Computing initial boundary length Computing offset for label +1 -1 -1 -1 -1 +1 -1 -3 +1 0 +1 0 -1 -2 -3 -2 -3 -6 -5 0 -1 -4
C C E E S S L L R R R R R R Changes in boundary length Computing initial boundary length Computing offset for label +1 -1 -1 -1 -1 +1 -1 -3 +1 -1 0 +1 0 -1 -2 -3 -2 -3 -6 -5 -6 0 -1 -4
C C E E S S L L R R R R R R Changes in boundary length Computing initial boundary length Computing offset for label +1 -1 -1 -1 -1 +1 -1 -3 +1 -1 -1 0 +1 0 -1 -2 -3 -2 -3 -6 -5 -6 -7 0 -1 -4
C C E E E S S L L R R R R R Changes in boundary length Computing initial boundary length Computing offset for label +1 -1 -1 -1 -1 +1 -1 -3 +1 -1 -1 -3 0 +1 0 -1 -2 -3 -2 -3 -6 -5 -6 -7 -10 0 -1 -4
C C E E S L L R R R R R
C C C C E E S L L R R R R R
C C E E S L L R R R R R R R
C C E E S L L R R R R R R R
C C E E S L L R R R R R R R
C C E E S L L L L R R R R R
C C E E S S S L L R R R R R use pre-computed offset
C C E E S L L L L R R R R R
C C E E E E S L L R R R R R
C C C C E E S L L R R R R R