Presentation is loading. Please wait.

Presentation is loading. Please wait.

Compressing Hexahedral Volume Meshes Martin Isenburg UNC Chapel Hill Pierre Alliez INRIA Sophia-Antipolis.

Similar presentations


Presentation on theme: "Compressing Hexahedral Volume Meshes Martin Isenburg UNC Chapel Hill Pierre Alliez INRIA Sophia-Antipolis."— Presentation transcript:

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

26

27 border faces incomplete faces

28 Coding with Edge Degrees

29

30

31

32

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

36

37

38

39

40

41

42

43

44

45

46

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)

88

89

90

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


Download ppt "Compressing Hexahedral Volume Meshes Martin Isenburg UNC Chapel Hill Pierre Alliez INRIA Sophia-Antipolis."

Similar presentations


Ads by Google