Download presentation
Presentation is loading. Please wait.
1
Compressing Hexahedral Volume Meshes Martin Isenburg UNC Chapel Hill Pierre Alliez INRIA Sophia-Antipolis
2
Overview Volume Meshes Related Work Compressing Connectivity –Coding with Edge Degrees –Boundary Propagation –Adaptive Traversal Compressing Geometry –Parallelogram Prediction Demo
3
Take this home: “The connectivity of a hexahedral mesh can be coded through a sequence of its edge degrees.” “This encoding naturally exploits the regularity commonly found in such data sets.”
4
Volume Meshes
5
scientific & industrial applications – thermodynamics – structural mechanics – … visualization & simulation unstructured / irregular ( not on a grid ) tetrahedral, hexahedral, polyhedral
6
Hexahedral Volume Meshes have “numerical advantages in finite element computations” challenging to generate their internal structure looks “nice” compared to tetrahedral meshes
7
Ingredients geometry : positions of vertices connectivity : which vertices form a hexahedron properties: attached to vertices density, pressure, heat,...
8
Standard Representation connectivity geometry vtx 1 ( x, y, z ) vtx 2 ( x, y, z ) vtx 3 ( x, y, z ) vtx v hex 1 13647892 hex 2 45829167 hex 3 75… hex h 8h * 32 bits 3v * 32 bits 71572 hexahedra 78618 vertices log 2 ( v ) 16 size: 3.23 MB 1.69 less than 84 KB
9
Related Work
10
Surface Mesh Compression –Geometry Compression, [ Deering, 95 ] –Topological Surgery, [ Taubin & Rossignac, 98 ] –Cut-Border Machine, [ Gumhold & Strasser, 98 ] –Triangle Mesh Compression, [ Touma & Gotsman, 98 ] –Edgebreaker, [ Rossignac, 99 ] –Spectral Compression of Geometry, [ Karni & Gotsman, 00 ] –Face Fixer, [ Isenburg & Snoeyink, 00 ] –Valence-driven Connectivity Coding, [ Alliez & Desbrun, 01 ] –Near-Optimal Coding, [ Khodakovsky, Alliez, Desbrun & –Degree Duality Coder, [ Isenburg, 02 ] –Polygonal Parallelogram Prediction, [ Isenburg & Alliez, 02 ] Schröder, 02 ]
11
Volume Mesh Compression –Grow & Fold, [ Szymczak & Rossignac, 99 ] –Cut-Border Machine, [ Gumhold, Guthe & Strasser, 99 ] !! only for tetrahedral meshes !! –Rendering of compressed volume data, [ Yang et al., 01] Simplification: –Simplification of tetrahedral meshes, [ Trotts et al., 98 ] –Progressive Tetrahedralizations, [ Staadt & Gross, 98 ] Progressive Compression: –Implant Sprays, [ Pajarola, Rossignac & Szymczak, 99 ]
12
Surface / Volume Connectivity a mesh with v vertices has maximal surfaces: 2v-2triangles ~ 6v indices v-1quadrilaterals ~ 4v indices connectivity dominates geometry even more for volume meshes volumes: O ( v 2 ) tetrahedra ~ 12v indices O ( v 2 )hexahedra ~ 8v indices
13
Degree Coding for Connectivity Triangle Mesh Compression, [ Touma & Gotsman, 98 ] Valence-driven Connectivity Coding, [ Alliez, Desbrun, 01 ] Degree Duality Coder, [ Isenburg, 02 ] Near-Optimal Connectivity Coding, [ Khodakovsky, Alliez, Desbrun, Schröder, 02 ] 4 5... 3 644444444 7 3 6445 6 7 6 6 6 compressed with arithmetic coder converges to entropy
14
Entropy for a symbol sequence of t types # of type t pi =pi = i = 1 t Entropy = p i log 2 ( ) bits pipi 1 # total 2.0 bits 1.3 bits 0.2 bits
15
Average Distribution 2 3 4 5 6 7 8 9+ vertex degrees 3 4 5 6 7 8 9+ face degrees [ over a set of 11 polygonal meshes ]
16
“Worst-case” Distribution … 3 4 5 6 7 8 9 vertex degrees … … [ Alliez & Desbrun, 01 ] 3.241… bpv [ Tutte, 62 ]
17
Adaptation to Regularity 6 vertex degrees face degrees 3... 3 vertex degrees face degrees 6... 4 vertex degrees face degrees 4...
18
Degree Coding for Volumes ? tri tetquad hex vertex degrees edge degrees
19
Regular Volume Meshes? elements for regular 2D tiling – regular triangle – regular quadrilateral – regular hexagon elements for regular 3D tiling – regular tetrahedron – regular hexahedron
20
Compressing Connectivity
21
Space Growing similar in spirit to “region growing”: algorithm maintains hull enclosing processed hexahedra pick incomplete face on hull process adjacent hexahedra record degrees of its free edges 1.initialize hull with a border face 2.iterate until done
22
Coding with Edge Degrees focus face
23
Coding with Edge Degrees focus face
24
Coding with Edge Degrees focus face slots
25
Coding with Edge Degrees
27
border faces incomplete faces
28
Coding with Edge Degrees
33
edges on hull maintain slot count
34
Coding with Edge Degrees edges with a slot count of zero are “zero slots” zero slots
35
Coding with Edge Degrees
47
Resulting Symbols – border edge degrees – interior edge degrees... 33333 2 4 2 4 5 4444 3 4 Y NNNNNNNNNNNNN – border ?... Y NNNNNNNNNNNNN – join ?
48
Average Distributions 2 3 4 56+ border degrees 3 4 5 67+ interior degreesborder? 2 join? no yes no yes
49
Possible Configurations
50
hut step bridge roof pit den tunnel gapcorner
51
Configuration: “hut” “hut” hut zero-slots:0 free faces5 free edges8 free vertices4 not a zero slot free edge free vertex free face
52
Configuration: “step” “step” 0 this is a zero slot step zero-slots:1 free faces4 free edges5 free vertices2
53
Configuration: “bridge” “bridge” 0 0 bridge zero-slots:2 free faces3 free edges2 free vertices--
54
“hut” or “roof” for the free face of “hut” that potentially forms a roof: “join?” / Y N hut roof ? “roof” “join” operation
55
other “join” operations free vertex already on hull free edge already on hull hutstep for every free vertex / edge: “join?” / Y N
56
Adaptive traversal to avoid “join”operations
57
Reason for “join” operations hull
58
Reason for “join” operations hull
59
Reason for “join” operations hull
60
Reason for “join” operations hull
61
Reason for “join” operations processed region unprocessed region hull
62
Reason for “join” operations processed region unprocessed region hull
63
Reason for “join” operations processed region unprocessed region hull
64
Reason for “join” operations processed region unprocessed region hull
65
Reason for “join” operations processed region unprocessed region join hull
66
Adaptive Traversal Valence-driven connectivity encoding for 3D meshes [ Alliez & Desbrun, 01 ] avoid creation of cavities focus face pick face with largest # of zero slots
67
Propagating the border information
68
Explaining Example border face border face & slot count = 1
69
Explaining Example border face border edges
70
Explaining Example interior edges incomplete faces
71
Explaining Example for everything else: “border?” / Y N remaining elements
72
hanger ra bump … warped hutch c1 5.3 2.9 2.1 … 0.2 0.3 0.6 Results ( Connectivity ) raw bits per hexahedron ( bph ) model compressed 72.0 80.0 88.0 … 112.0 112.0 136.0 1 : 14 1 : 28 1 : 42... 1 : 621 1 : 361 1 : 226 ratio average compression ratio = 1 : 163
73
hanger ra bump … warped hutch c1 5.3 2.9 2.1 … 0.2 0.3 0.6 Results ( Connectivity ) raw bits per hexahedron ( bph ) model compressed 72.0 80.0 88.0 … 112.0 112.0 136.0 1 : 14 1 : 28 1 : 42... 1 : 621 1 : 361 1 : 226 ratio average compression ratio = 1 : 163
74
Compressing Geometry
75
Predictive Compression 1.quantize positions with b bits ( 1.2045, -0.2045, 0.7045 ) ( 1008, 67, 718 ) floating point integer
76
Predictive Compression 1.quantize positions with b bits 2.traverse positions ( 1.2045, -0.2045, 0.7045 ) ( 1008, 67, 718 ) floating point integer
77
Predictive Compression 1.quantize positions with b bits 2.traverse positions 3.predict position from neighbors ( 1.2045, -0.2045, 0.7045 ) ( 1008, 67, 718 ) floating point integer ( 1004, 71, 723 ) prediction
78
Predictive Compression 1.quantize positions with b bits 2.traverse positions 3.predict position from neighbors 4.store corrective vector ( 1.2045, -0.2045, 0.7045 ) ( 1008, 67, 718 ) floating point integer ( 4, -3, -5 ) corrector ( 1004, 71, 723 ) prediction
79
Parallelogram Rule across “non-convex” triangles across “non-planar” triangles within “planar” & “convex” quadrilateral Triangle Mesh Compression, [ Touma & Gotsman, 98 ]
80
8 Position Predictions init hut 0 4 12 3 56 7 0 12 3 v 0 0 v 1 v 0 v 2 v 1 v 3 v 0 - v 1 + v 2 v 4 2v 0 – v 8 (or v 0 ) v 5 v 1 – v 0 + v 4 v 6 v 2 – v 1 + v 5 v 7 v 3 – v 2 + v 6 vertex prediction rule
81
hanger ra bump … warped hutch c1 23.2 30.8 24.4 … 10.5 19.9 5.9 Results ( Geometry ) raw bits per vertex ( bpv ) model compressed 48.0 … 48.0 48.0 1 : 2.1 1 : 1.6 1 : 2.0... 1 : 4.6 1 : 2.4 1 : 8.1 ratio average compression ratio = 1 : 3.7
82
Demo
83
Summary degree coding for volume mesh connectivity – edge degrees – boundary propagation – adaptive traversal parallelogram prediction for volume mesh geometry – “within” predictions
84
Current / Future Work Mixed Volume Meshes – hex + tet + prism + pyramid cells Universal Connectivity Coder – face, vertex, and edge degrees – tri / quad / poly surfaces – tet / hex / poly volumes – surface mesh = cell of volume mesh – bit-rate like specialized coder
85
Acknowledgements data sets Alla Sheffer Steven Owen Scott Mitchell Claudio Silva financial support ARC TéléGéo grant from INRIA
86
Thank You!
87
Old Beijing & Duck Whoever had expressed interest in going to eat duck in the ancient-style “hutong” area: meet me 10-15 minutes after end of PG in front of hotel bring : map address card of your hotel ~100 yuan (smaller bills for subway / bus)
91
Configurations: “roof” “roof” zero-slots:0 adjacent faces:1 free faces4 free edges4 free vertices-- roof
92
Configurations: “tunnel” tunnel “tunnel” zero-slots:2 adjacent faces:4 free faces2 free edges-- free vertices-- 0 0 0 0
93
corner Configuration: “corner” “corner” zero-slots:2 adjacent faces:3 free faces3 free edges3 free vertices1 0 0 0
94
gap Configuration: “gap” “gap” zero-slots:3 adjacent faces:4 free faces2 free edges1 free vertices-- 0 0 0 0 0
95
Configurations: “pit” 0 0 0 0 pit zero-slots:4 adjacent faces:5 free faces1 free edges-- free vertices-- “pit” 0 0 0 0
96
den Configurations: “den” zero-slots:4 adjacent faces:6 free faces-- free edges-- free vertices-- “den” 0 0 0 0 0 0
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.