Presentation is loading. Please wait.

Presentation is loading. Please wait.

Martin Isenburg UC Berkeley Jack Snoeyink UNC Chapel Hill Early Split Coding of Triangle Mesh Connectivity.

Similar presentations


Presentation on theme: "Martin Isenburg UC Berkeley Jack Snoeyink UNC Chapel Hill Early Split Coding of Triangle Mesh Connectivity."— Presentation transcript:

1 Martin Isenburg UC Berkeley Jack Snoeyink UNC Chapel Hill Early Split Coding of Triangle Mesh Connectivity

2 Geometry Connectivity – Efficient Rendering – Progressive Transmission – Compact Storage Mesh Compression “Geometry Compression” [ Deering, 95 ] Surface Meshes – triangular – polygonal Volume Meshes – tetrahedral, hexahedral storage / network main memory

3 Connectivity Triangle Mesh Connectivity v -9.7 1.6 -0.2 v -6.6 1.4 3.3 v -1.6 1.4 2.3 v -3.3 -1.4 3.0 v 5.6 1.7 4.5 v -6.6 1.4 6.1 v -3.3 –4.4 3.7 v -1.6 1.4 2.1 v -5.4 -1.6 6.4... f 1 2 3 f 3 2 4 f 2 1 5 f 2 5 4 f 6 4 5 f 6 5 7 f 5 1 8 f 4 8 7 f 7 8 9 f 9 8 10 f 10 11 7... Geometry each index uses log 2 ( v ) bits  6 log 2 ( v ) bpv  3.24 bpv enumeration of triangulated planar graphs [ Tutte 62 ]

4 “Out-of-Core Compression”[ Isenburg & Gumhold ‘03 ] “Delphi Coding”[ Coors and Rossignac ‘04 ] “FreeLence”[ Kälberer et al. ‘05 ] Compression Schemes “Cut-Border Machine”[ Gumhold & Strasser ‘98 ] “Triangle Mesh Compression”[ Touma & Gotsman ‘98 ] “Edgebreaker”[ Rossignac ‘99 ] “Face Fixer”[ Isenburg & Snoeyink ‘00 ] “Angle Analyzer”[ Lee, Alliez & Desbrun ‘02 ] “Degree Duality Coder”[ Isenburg ‘02 ] “Near-optimal Coding”[ Khodakovsky et al. ‘02 ] “Valence-Driven Encoding”[ Alliez & Desbrun ‘01 ] Computer Graphics “Succinct encodings of planar graphs”[ He, Yao, & Hu ‘99 ] “Short encodings of planar graphs”[ Keeler & Westbrook ‘95 ] “Succinct Representations of Graphs”[ Turan ‘84 ] “Optimal Coding”[ Poulahlon & Schaeffer ‘03 ] Planar Graph Coding

5 Connectivity Graph Traversal split offset

6 Connectivity Graph Traversal

7 CBM – Edgebreaker – TG coder label-based split offset “Cut-Border Machine”[ Gumhold & Strasser ‘98 ] “Edgebreaker”[ Rossignac ‘99 ] “Early Split Coding” [ this paper ] CRCRRS... RCRERC degree-based “Triangle Mesh Compression” [ Touma & Gotsman ‘98 ] 3... 64444544 S split offset

8 CBM and Edgebreaker

9 5 processed region unprocessed region compression boundary

10 CBM and Edgebreaker 5 processed region unprocessed region compression boundary C C

11 CBM and Edgebreaker 5 processed region unprocessed region compression boundary C C C

12 CBM and Edgebreaker 5 processed region unprocessed region compression boundary C C R C C R

13 CBM and Edgebreaker 5 processed region unprocessed region compression boundary C C R C C C R C

14 CBM and Edgebreaker 5 processed region unprocessed region compression boundary C C R C R C C R C R

15 CBM and Edgebreaker 5 processed region unprocessed region compression boundary C C R C R S C C R C R S 1 2 3 4 5 6 7 8 9 10 11 offset = 11

16 CBM and Edgebreaker 5 processed region unprocessed region compression boundary C C R C R S L C C R C R S L offset = 11

17 CBM and Edgebreaker 5 processed region unprocessed region compression boundary C C R C R S L C C C R C R S L C offset = 11

18 CBM and Edgebreaker 5 processed region unprocessed region compression boundary C C R C R S L C R C C R C R S L C R offset = 11

19 CBM and Edgebreaker 5 processed region unprocessed region compression boundary C C R C R S L C R C C C R C R S L C R C offset = 11

20 CBM and Edgebreaker 5 processed region unprocessed region compression boundary C C R C R S L C R C R C C R C R S L C R C R offset = 11

21 CBM and Edgebreaker 5 processed region unprocessed region compression boundary C C R C R S L C R C R C C C R C R S L C R C R C offset = 11

22 CBM and Edgebreaker 5 processed region unprocessed region compression boundary C C R C R S L C R C R C R C C R C R S L C R C R C R offset = 11

23 CBM and Edgebreaker 5 processed region unprocessed region compression boundary C C R C R S L C R C R C R R C C R C R S L C R C R C R R offset = 11

24 CBM and Edgebreaker 5 processed region unprocessed region compression boundary C C R C R S L C R C R C R R R C C R C R S L C R C R C R R R offset = 11

25 CBM and Edgebreaker 5 processed region unprocessed region compression boundary C C R C R S L C R C R C R R R L C C R C R S L C R C R C R R R L offset = 11

26 CBM and Edgebreaker 5 processed region unprocessed region compression boundary C C R C R S L C R C R C R R R L C C C R C R S L C R C R C R R R L C offset = 11

27 CBM and Edgebreaker 5 processed region unprocessed region compression boundary C C R C R S L C R C R C R R R L C R C C R C R S L C R C R C R R R L C R offset = 11

28 CBM and Edgebreaker 5 processed region unprocessed region compression boundary C C R C R S L C R C R C R R R L C R R C C R C R S L C R C R C R R R L C R R offset = 11

29 CBM and Edgebreaker 5 processed region unprocessed region compression boundary C C R C R S L C R C R C R R R L C R R R C C R C R S L C R C R C R R R L C R R R offset = 11

30 CBM and Edgebreaker 5 processed region unprocessed region compression boundary C C R C R S L C R C R C R R R L C R R R S C C R C R S L C R C R C R R R L C R R R S 1 2 offset = 3 offset = 11

31 CBM and Edgebreaker 5 processed region unprocessed region compression boundary C C R C R C C R C R S L C R C R C R R R L C R R R S R S L C R C R C R R R L C R R R S R offset = 3 offset = 11

32 CBM and Edgebreaker 5 processed region unprocessed region compression boundary C C R C R S L C R C R C R R R L C R R R S E R C C R C R S L C R C R C R R R L C R R R S R E offset = 3 offset = 11

33 CBM and Edgebreaker 5 processed region unprocessed region compression boundary C C R C R S L C R C R C R R R L C R R R S E R E C C R C R S L C R C R C R R R L C R R R S R E E offset = 11 offset = 3

34 CBM and Edgebreaker 5 processed region unprocessed region compression boundary C C R C R S L C R C R C R R R L C R R R S E R E C C R C R S L C R C R C R R R L C R R R S R E E C offset = 11 offset = 3 +1+3 +1+1 +1+3 = 4 = 12 C...

35 Subsequences of Labels are self-contained Encodings

36 S L C R C R C R R R L C R R R S R E E Subsequences are self-contained reversible ……

37 S L C R C R C R R R L C R R R S R E E Subsequences are self-contained E reversible ……

38 S L C R C R C R R R L C R R R S R E E Subsequences are self-contained reversible E E ……

39 S L C R C R C R R R L C R R R S R E E Subsequences are self-contained E reversible R E ……

40 S L C R C R C R R R L C R R R S R E E Subsequences are self-contained E reversible R E ……

41 S L C R C R C R R R L C R R R S R E E Subsequences are self-contained E reversible R E ……

42 S L C R C R C R R R L C R R R S R E E Subsequences are self-contained E reversible R E ……

43 S L C R C R C R R R L C R R R S R E E Subsequences are self-contained E reversible R E ……

44 S L C R C R C R R R L C R R R S R E E Subsequences are self-contained E reversible R E S ……

45 S L C R C R C R R R L C R R R S R E E Subsequences are self-contained E reversible R E S R ……

46 S L C R C R C R R R L C R R R S R E E Subsequences are self-contained E reversible R E S R R ……

47 S L C R C R C R R R L C R R R S R E E Subsequences are self-contained E reversible R E S R R R ……

48 S L C R C R C R R R L C R R R S R E E Subsequences are self-contained E reversible R E S R R R C ……

49 S L C R C R C R R R L C R R R S R E E Subsequences are self-contained E reversible R E S R R R C L ……

50 S L C R C R C R R R L C R R R S R E E Subsequences are self-contained E reversible R E S R R R C L R ……

51 S L C R C R C R R R L C R R R S R E E Subsequences are self-contained E reversible R E S R R R C L R R ……

52 S L C R C R C R R R L C R R R S R E E Subsequences are self-contained E reversible R E S R R R C L R RR ……

53 S L C R C R C R R R L C R R R S R E E Subsequences are self-contained E reversible R E S R R R C L R RR C ……

54 S L C R C R C R R R L C R R R S R E E Subsequences are self-contained E reversible R E S R R R C L R RR C R ……

55 S L C R C R C R R R L C R R R S R E E Subsequences are self-contained E reversible R E S R R R C L R RR C R C ……

56 S L C R C R C R R R L C R R R S R E E Subsequences are self-contained E reversible R E S R R R C L R RR C R C R ……

57 S L C R C R C R R R L C R R R S R E E Subsequences are self-contained E reversible R E S R R R C L R RR C R C R …… C

58 S L C R C R C R R R L C R R R S R E E Subsequences are self-contained E reversible R E S R R R C L R RR C R C R …… C L we did not need split offsets !!!

59 TG coder

60 5 processed region unprocessed region compression boundary slot counts

61 TG coder 5 processed region unprocessed region compression boundary 7 7

62 TG coder 5 processed region unprocessed region compression boundary 7 6 7 6 zero slot

63 TG coder 5 processed region unprocessed region compression boundary 7 6 7 6

64 TG coder 5 processed region unprocessed region compression boundary 7 6 5 7 6 5 zero slot

65 TG coder 5 processed region unprocessed region compression boundary 7 6 5 7 6 5

66 TG coder 5 processed region unprocessed region compression boundary 7 6 5 S 2 4 6 7 8 11 12 13 15 16 18 offset = 18 7 6 5 S

67 TG coder 5 processed region unprocessed region compression boundary 7 6 5 S 7 6 5 S offset = 18

68 TG coder 5 processed region unprocessed region compression boundary 7 6 5 S 7 7 6 5 S 7 offset = 18

69 TG coder 5 processed region unprocessed region compression boundary 7 6 5 S 7 7 6 5 S 7 offset = 18 zero slot

70 TG coder 5 processed region unprocessed region compression boundary 7 6 5 S 7 7 6 5 S 7 offset = 18 zero slot

71 TG coder 5 processed region unprocessed region compression boundary 7 6 5 S 7 7 6 5 S 7 offset = 18

72 TG coder 5 processed region unprocessed region compression boundary 7 6 5 S 7 6 7 6 5 S 7 6 offset = 18

73 TG coder 5 processed region unprocessed region compression boundary 7 6 5 S 7 6 7 6 5 S 7 6 offset = 18

74 TG coder 5 processed region unprocessed region compression boundary 7 6 5 S 7 6 5 7 6 5 S 7 6 5 offset = 18

75 TG coder 5 processed region unprocessed region compression boundary 7 6 5 S 7 6 5 7 6 5 S 7 6 5 offset = 18

76 TG coder 5 processed region unprocessed region compression boundary 7 6 5 S 7 6 5 7 6 5 S 7 6 5 offset = 18

77 TG coder 5 processed region unprocessed region compression boundary 7 6 5 S 7 6 5 7 6 5 S 7 6 5 offset = 18

78 TG coder 5 processed region unprocessed region compression boundary 7 6 5 S 7 6 5 7 6 5 S 7 6 5 offset = 18

79 TG coder 5 processed region unprocessed region compression boundary 7 6 5 S 7 6 5 6 7 6 5 S 7 6 5 6 offset = 18

80 TG coder 5 processed region unprocessed region compression boundary 7 6 5 S 7 6 5 6 7 6 5 S 7 6 5 6 offset = 18

81 TG coder 5 processed region unprocessed region compression boundary 7 6 5 S 7 6 5 6 7 6 5 S 7 6 5 6 offset = 18

82 TG coder 5 processed region unprocessed region compression boundary 7 6 5 S 7 6 5 6 7 6 5 S 7 6 5 6 offset = 18

83 TG coder 5 processed region unprocessed region compression boundary 7 6 5 S 7 6 5 6 7 6 5 S 7 6 5 6 offset = 18

84 TG coder 5 processed region unprocessed region compression boundary 7 6 5 S 7 6 5 6 7 6 5 S 7 6 5 6 offset = 18

85 TG coder 5 processed region unprocessed region compression boundary 7 6 5 S 7 6 5 6 7 6 5 S 7 6 5 6 7 offset = 18 7 … E

86 Subsequences of Degrees are not self-contained Encodings

87 Subsequences are not self-contained … S 7 6 5 6 E … 5 S

88 5 S Subsequences are not self-contained

89 … S 7 6 5 6 E … 5 S Subsequences are not self-contained

90 … S 7 6 5 6 E … 5 S Subsequences are not self-contained

91 … S 7 6 5 6 E … 5 S Subsequences are not self-contained

92 … S 7 6 5 6 E … 5 S Subsequences are not self-contained

93 Not unique without split offsets … S 4 3 E 4 3 E 4 3 3 4 4 3 4 3 6 6 5 6 6 5 6 …5 7 5 6 6 6 5 …

94 Early Split Coder

95 encode with labels or degrees traverse triangles in same order – new label W – earlier split operations one-to-one mapping  insights: – how to turn degree subsequences into self-contained encodings – decoding strategy decides success

96 R C R C C R The new label W

97 R C C R C C R

98 R C C R C C R C

99 R C C R C R C C R wart R C R C C R

100 The new label W R C R C C R C R C C R C R C C R wart zero slot

101 The new label W R C R C C R C W R C C R C R C C R wart

102 The new label W R C R C C R C W C R C C R C R C C R wart

103 The new label W R C R C C R C W C R R C C R C R C C R wart

104 The “early split” operation R R C R C

105 S R R C R C

106 S R R C R C R

107 S R R C R C R L

108 S R R C R C R L R

109 S R R C R C R L R L zero slot

110 The “early split” operation S R R C R C R L R L

111 S R R C R C R L R L

112 S R R C R C R L R L

113 S R R C R C R L R L

114 S R R C R C R L R L R R C R C C

115 S R R C R C R L R L R R C R C C S zero slot

116 The “early split” operation S R R C R C R L R L R R C R C C S W zero slot

117 The “early split” operation S R R C R C R L R L R R C R C C W S W

118 S R R C R C R L R L R R C R C C W S W C

119 S R R C R C R L R L R R C R C C W S W C R

120 S R R C R C R L R L R R C R C C W S W C R R zero slot

121 The “early split” operation S R R C R C R L R L R R C R C C W S W C R R W

122 Complete Example

123 One Scheme & Four Encodings label-based degree-based

124 Forward Decoding with offsets

125 V 5 V 4 V 5 V 5 V 6 V 6 V 4 V 8 V 5 V 5 S 1,0,0 C C C C R C R C R W C R C S 1 C R R E C R E

126 Forward Decoding with offsets V 5 V 4 V 5 V 5 V 6 V 6 V 4 V 8 V 5 V 5 S 1,0,0 C C C C R C R C R W C R C S 1 C R R E C R E

127 Forward Decoding with offsets V 5 V 4 V 5 V 5 V 6 V 6 V 4 V 8 V 5 V 5 S 1,0,0 C C C C R C R C R W C R C S 1 C R R E C R E

128 Forward Decoding with offsets V 5 V 4 V 5 V 5 V 6 V 6 V 4 V 8 V 5 V 5 S 1,0,0 C C C C R C R C R W C R C S 1 C R R E C R E

129 Forward Decoding with offsets V 5 V 4 V 5 V 5 V 6 V 6 V 4 V 8 V 5 V 5 S 1,0,0 C C C C R C R C R W C R C S 1 C R R E C R E zero slot

130 Forward Decoding with offsets V 5 V 4 V 5 V 5 V 6 V 6 V 4 V 8 V 5 V 5 S 1,0,0 C C C C R C R C R W C R C S 1 C R R E C R E

131 Forward Decoding with offsets V 5 V 4 V 5 V 5 V 6 V 6 V 4 V 8 V 5 V 5 S 1,0,0 C C C C R C R C R W C R C S 1 C R R E C R E zero slot

132 Forward Decoding with offsets V 5 V 4 V 5 V 5 V 6 V 6 V 4 V 8 V 5 V 5 S 1,0,0 C C C C R C R C R W C R C S 1 C R R E C R E

133 Forward Decoding with offsets V 5 V 4 V 5 V 5 V 6 V 6 V 4 V 8 V 5 V 5 S 1,0,0 C C C C R C R C R W C R C S 1 C R R E C R E zero slot

134 Forward Decoding with offsets V 5 V 4 V 5 V 5 V 6 V 6 V 4 V 8 V 5 V 5 S 1,0,0 C C C C R C R C R W C R C S 1 C R R E C R E zero slot

135 Forward Decoding with offsets V 5 V 4 V 5 V 5 V 6 V 6 V 4 V 8 V 5 V 5 S 1,0,0 C C C C R C R C R W C R C S 1 C R R E C R E

136 Forward Decoding with offsets V 5 V 4 V 5 V 5 V 6 V 6 V 4 V 8 V 5 V 5 S 1,0,0 C C C C R C R C R W C R C S 1 C R R E C R E

137 Forward Decoding with offsets V 5 V 4 V 5 V 5 V 6 V 6 V 4 V 8 V 5 V 5 S 1,0,0 C C C C R C R C R W C R C S 1 C R R E C R E

138 Forward Decoding with offsets V 5 V 4 V 5 V 5 V 6 V 6 V 4 V 8 V 5 V 5 S 1,0,0 C C C C R C R C R W C R C S 1 C R R E C R E

139 Forward Decoding with offsets V 5 V 4 V 5 V 5 V 6 V 6 V 4 V 8 V 5 V 5 S 1,0,0 C C C C R C R C R W C R C S 1 C R R E C R E

140 Forward Decoding with offsets V 5 V 4 V 5 V 5 V 6 V 6 V 4 V 8 V 5 V 5 S 1,0,0 C C C C R C R C R W C R C S 1 C R R E C R E

141 Forward Decoding with offsets V 5 V 4 V 5 V 5 V 6 V 6 V 4 V 8 V 5 V 5 S 1,0,0 C C C C R C R C R W C R C S 1 C R R E C R E

142 Reverse Decoding without offsets

143 Reverse Decoding w/o offsets E V 3 E V 4 S V 5 V 5 W V 8 V 4 V 6 V 6 V 5 V 5 E R C E R R C S C R C W R C R C R C C C C

144 Reverse Decoding w/o offsets E V 3 E V 4 S V 5 V 5 W V 8 V 4 V 6 V 6 V 5 V 5 E R C E R R C S C R C W R C R C R C C C C

145 Reverse Decoding w/o offsets E V 3 E V 4 S V 5 V 5 W V 8 V 4 V 6 V 6 V 5 V 5 E R C E R R C S C R C W R C R C R C C C C

146 Reverse Decoding w/o offsets E V 3 E V 4 S V 5 V 5 W V 8 V 4 V 6 V 6 V 5 V 5 E R C E R R C S C R C W R C R C R C C C C

147 Reverse Decoding w/o offsets E V 3 E V 4 S V 5 V 5 W V 8 V 4 V 6 V 6 V 5 V 5 E R C E R R C S C R C W R C R C R C C C C

148 Reverse Decoding w/o offsets E V 3 E V 4 S V 5 V 5 W V 8 V 4 V 6 V 6 V 5 V 5 E R C E R R C S C R C W R C R C R C C C C

149 Reverse Decoding w/o offsets E V 3 E V 4 S V 5 V 5 W V 8 V 4 V 6 V 6 V 5 V 5 E R C E R R C S C R C W R C R C R C C C C

150 Reverse Decoding w/o offsets E V 3 E V 4 S V 5 V 5 W V 8 V 4 V 6 V 6 V 5 V 5 E R C E R R C S C R C W R C R C R C C C C

151 Reverse Decoding w/o offsets E V 3 E V 4 S V 5 V 5 W V 8 V 4 V 6 V 6 V 5 V 5 E R C E R R C S C R C W R C R C R C C C C

152 Reverse Decoding w/o offsets E V 3 E V 4 S V 5 V 5 W V 8 V 4 V 6 V 6 V 5 V 5 E R C E R R C S C R C W R C R C R C C C C

153 Reverse Decoding w/o offsets E V 3 E V 4 S V 5 V 5 W V 8 V 4 V 6 V 6 V 5 V 5 E R C E R R C S C R C W R C R C R C C C C

154 Reverse Decoding w/o offsets E V 3 E V 4 S V 5 V 5 W V 8 V 4 V 6 V 6 V 5 V 5 E R C E R R C S C R C W R C R C R C C C C

155 Reverse Decoding w/o offsets E V 3 E V 4 S V 5 V 5 W V 8 V 4 V 6 V 6 V 5 V 5 E R C E R R C S C R C W R C R C R C C C C

156 Reverse Decoding w/o offsets E V 3 E V 4 S V 5 V 5 W V 8 V 4 V 6 V 6 V 5 V 5 E R C E R R C S C R C W R C R C R C C C C

157 Reverse Decoding w/o offsets E V 3 E V 4 S V 5 V 5 W V 8 V 4 V 6 V 6 V 5 V 5 E R C E R R C S C R C W R C R C R C C C C

158 Reverse Decoding w/o offsets E V 3 E V 4 S V 5 V 5 W V 8 V 4 V 6 V 6 V 5 V 5 E R C E R R C S C R C W R C R C R C C C C

159 Results

160 Compression Results

161 Improving the TG coder 5 “Valence-Driven Encoding”[ Alliez & Desbrun ‘01 ] degree of vertex must be at least 5 ( at least 6 for early-split ) degree of vertex must be at least 4 ( at least 5 for early-split )

162 Thank You


Download ppt "Martin Isenburg UC Berkeley Jack Snoeyink UNC Chapel Hill Early Split Coding of Triangle Mesh Connectivity."

Similar presentations


Ads by Google