1.35k likes | 1.58k Views
Valence-based Connectivity Coding. Hu Jianwei 2007-11-07. Why Mesh Compression. Slow networks require data compression to reduce the latency Small storage devices need data compression to save space. Surface Based Meshes. Connectivity How the vertices connect with each other Geometry
E N D
Valence-based Connectivity Coding Hu Jianwei 2007-11-07
Why Mesh Compression • Slow networks require data compression to reduce the latency • Small storage devices need data compression to save space
Surface Based Meshes • Connectivity • How the vertices connect with each other • Geometry • Coordinates of the vertices vertex1 ( x, y, z ) vertex2 ( x, y, z ) vertex3 ( x, y, z ) vertexv face1 1 2 3 4 face2 3 4 3 face3 5 2 1 3 facef
Classification • Connectivity encoding • Geometry encoding • Single-rate compression • Progressive compression
Valence-based Compression • Triangle Mesh Compression [98 Touma & Gotsman] • Valence-Driven Connectivity Encoding for 3D Meshes [01 Alliez & Desbrun] • Near-Optimal Connectivity Encoding of 2-Manifold Polygon Meshes [02 Khodakovsky et al.] • Compressing Polygon Mesh Connectivity with Degree Duality Prediction [02 Isenburg]
Key Observation 98 Touma & Gotsman • A genus-0 manifold mesh is topologically equivalent to a planar graph • The vertices incident on any mesh vertex may be ordered
Code Words 98 Touma & Gotsman • The topology may be encoded with: • add<degree> • split<offset> • merge<index><offset> • Then entropy encoded • Huffman • arithmetic • run-length
Example Traversal 98 Touma & Gotsman
Example Traversal 98 Touma & Gotsman
Example Traversal 98 Touma & Gotsman
Example Traversal 98 Touma & Gotsman
Example Traversal 98 Touma & Gotsman
Example Traversal 98 Touma & Gotsman
Example Traversal 98 Touma & Gotsman
Example Traversal 98 Touma & Gotsman
Example Traversal 98 Touma & Gotsman
Example Traversal 98 Touma & Gotsman
Example Traversal 98 Touma & Gotsman
Example Traversal 98 Touma & Gotsman
Example Traversal 98 Touma & Gotsman
Add dummy vertices 98 Touma & Gotsman
Example Traversal 98 Touma & Gotsman
Encoding 98 Touma & Gotsman
Encoding 98 Touma & Gotsman
Encoding 98 Touma & Gotsman Add 6; Add 7 ; Add 4 ;
Encoding 98 Touma & Gotsman Add 6; Add 7 ; Add 4 ;
Encoding 98 Touma & Gotsman Add 6; Add 7 ; Add 4 ; Add 4 ;
Encoding 98 Touma & Gotsman Add 6; Add 7 ; Add 4 ; Add 4 ;
Encoding 98 Touma & Gotsman Add 6; Add 7 ; Add 4 ; Add 4 ; Add 8 ;
Encoding 98 Touma & Gotsman Add 6; Add 7 ; Add 4 ; Add 4 ; Add 8 ; Add 5 ;
Encoding 98 Touma & Gotsman Add 6; Add 7 ; Add 4 ; Add 4 ; Add 8 ; Add 5 ; Add 5 (focus full) ;
Encoding 98 Touma & Gotsman Add 6; Add 7 ; Add 4 ; Add 4 ; Add 8 ; Add 5 ; Add 5 ;
Encoding 98 Touma & Gotsman Add 6; Add 7 ; Add 4 ; Add 4 ; Add 8 ; Add 5 ; Add 5 ;
Encoding 98 Touma & Gotsman Add 6; Add 7 ; Add 4 ; Add 4 ; Add 8 ; Add 5 ; Add 5 ; Add 4 ;
Encoding 98 Touma & Gotsman Add 6; Add 7 ; Add 4 ; Add 4 ; Add 8 ; Add 5 ; Add 5 ; Add 4 ; Add 5 ;
Encoding 98 Touma & Gotsman Add 6; Add 7 ; Add 4 ; Add 4 ; Add 8 ; Add 5 ; Add 5 ; Add 4 ; Add 5 ; Split 5 ;
Encoding 98 Touma & Gotsman Add 6; Add 7 ; Add 4 ; Add 4 ; Add 8 ; Add 5 ; Add 5 ; Add 4 ; Add 5 ; Split 5 ;
Encoding 98 Touma & Gotsman Add 6; Add 7 ; Add 4 ; Add 4 ; Add 8 ; Add 5 ; Add 5 ; Add 4 ; Add 5 ; Split 5 ; Add 4 ;
Encoding 98 Touma & Gotsman Add 6; Add 7 ; Add 4 ; Add 4 ; Add 8 ; Add 5 ; Add 5 ; Add 4 ; Add 5 ; Split 5 ; Add 4 ; Add 4 (focus full) ;
Encoding 98 Touma & Gotsman Add 6; Add 7 ; Add 4 ; Add 4 ; Add 8 ; Add 5 ; Add 5 ; Add 4 ; Add 5 ; Split 5 ; Add 4 ; Add 4 ;
Encoding 98 Touma & Gotsman Add 6; Add 7 ; Add 4 ; Add 4 ; Add 8 ; Add 5 ; Add 5 ; Add 4 ; Add 5 ; Split 5 ; Add 4 ; Add 4 ; Add Dummy 6 ;
Encoding 98 Touma & Gotsman Add 6; Add 7 ; Add 4 ; Add 4 ; Add 8 ; Add 5 ; Add 5 ; Add 4 ; Add 5 ; Split 5 ; Add 4 ; Add 4 ; Add Dummy 6 ;
Encoding 98 Touma & Gotsman Add 6; Add 7 ; Add 4 ; Add 4 ; Add 8 ; Add 5 ; Add 5 ; Add 4 ; Add 5 ; Split 5 ; Add 4 ; Add 4 ; Add Dummy 6 ; Add 4 (focus full);
Encoding 98 Touma & Gotsman Add 6; Add 7 ; Add 4 ; Add 4 ; Add 8 ; Add 5 ; Add 5 ; Add 4 ; Add 5 ; Split 5 ; Add 4 ; Add 4 ; Add Dummy 6 ; Add 4 ; (focus full)
Encoding 98 Touma & Gotsman Add 6; Add 7 ; Add 4 ; Add 4 ; Add 8 ; Add 5 ; Add 5 ; Add 4 ; Add 5 ; Split 5 ; Add 4 ; Add 4 ; Add Dummy 6 ; Add 4;
Encoding 98 Touma & Gotsman Add 6; Add 7 ; Add 4 ; Add 4 ; Add 8 ; Add 5 ; Add 5 ; Add 4 ; Add 5 ; Split 5 ; Add 4 ; Add 4 ; Add Dummy 6 ; Add 4;
Encoding 98 Touma & Gotsman Add 6; Add 7 ; Add 4 ; Add 4 ; Add 8 ; Add 5 ; Add 5 ; Add 4 ; Add 5 ; Split 5 ; Add 4 ; Add 4 ; Add Dummy 6 ; Add 4; Huffman coding run-length coding
Decoding 98 Touma & Gotsman Add 6; Add 7 ; Add 4 ; Add 4 ; Add 8 ; Add 5 ; Add 5 ; Add 4 ; Add 5 ; Split 5 ; Add 4 ; Add 4 ; Add Dummy 6 ; Add 4;
Decoding 98 Touma & Gotsman Add 6; Add 7 ; Add 4 ; Add 4 ; Add 8 ; Add 5 ; Add 5 ; Add 4 ; Add 5 ; Split 5 ; Add 4 ; Add 4 ; Add Dummy 6 ; Add 4;
Decoding 98 Touma & Gotsman Add 6; Add 7 ; Add 4 ; Add 4 ; Add 8 ; Add 5 ; Add 5 ; Add 4 ; Add 5 ; Split 5 ; Add 4 ; Add 4 ; Add Dummy 6 ; Add 4;