Non-Photorealistic Rendering Greg Turk College of Computing and GVU Center.
05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB)...
-
Upload
luke-underwood -
Category
Documents
-
view
218 -
download
2
Transcript of 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB)...
![Page 1: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/1.jpg)
05 Edgebreaker , 1Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Edgebreaker (EB)
Second generation 3D compression Faster,
simpler, more effective“Edgebreaker: Connectivity compression for triangle meshes,” J. Rossignac, IEEE Transactions on Visualization and Computer Graphics, vol. 5, no. 1, pp. 47–61, 1999.
“Optimal Bit Allocation in Compressed 3D Models”. D. King and J. Rossignac. Computational Geometry, 14:91–118, 1999.
“Wrap&Zip decompression of the connectivity of triangle meshes compressed with Edgebreaker,” J. Rossignac and A. Szymczak. Computational Geometry: Theory and Applications, 14(1-3):119-135, 1999.
“Connectivity compression for irregular quadrilateral meshes,” D. King, J. Rossignac, and A. Szymczak, Technical Report TR–99–36, GVU, Georgia Tech, 1999.
“An Edgebreaker-based efficient compression scheme for regular meshes,” A. Szymczak, D. King, and J. Rossignac, in Proceedings of 12th Canadian Conference on Computational Geometry, 20(2):257–264, 2000.
“3D Compression and progressive transmission,” J. Rossignac. Lecture at the ACM SIGGRAPH conference July 2-28, 2000.
“3D compression made simple: Edgebreaker on a corner-table.” J. Rossignac, A. Safonova, and A. Szymczak. In Proceedings of the Shape Modeling International Conference, 2001.
“Edgebreaker on a Corner Table: A simple technique for representing and compressing triangulated surfaces”, J. Rossignac, A. Safonova, A. Szymczak, in Hierarchical and Geometrical Methods in Scientific Visualization, Farin, G., Hagen, H. and Hamann, B., eds. Springer-Verlag, Heidelberg, Germany, 2002.
“Guess Connectivity: Delphi Encoding in Edgebreaker”, V. Coors and J. Rossignac, GVU Technical Report. June 2002.
“A Simple Compression Algorithm for Surfaces with Handles”, H. Lopes, J. Rossignac, A. Safanova, A. Szymczak and G. Tavares. ACM Symposium on Solid Modeling, Saarbrucken. June 2002.
![Page 2: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/2.jpg)
05 Edgebreaker , 2Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
• Vertex: – Location of a sample
• Triangles: – Decompose approximating surface
• Edge: – Bounds one or more triangles– Joins two vertices
• Corner: – Abstract association of a triangle with a vertex– May have its own attributes (not shared by corners with same vertex)• Used to capture surface discontinuities
• Border (oriented half-edge, dart):– Association of a triangles with a bounding edge.– Orientation cycle around triangle, inverse of opposite border
• A triangle has 3 borders and 3 corners
T-mesh primitives
triangleborder
vertexcorner
edge
![Page 3: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/3.jpg)
05 Edgebreaker , 3Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Classes of T-meshes
• Triangle soup– Any collection of triangles (may intersect each other)
• 2D simplicial complex– Collection of edges, vertices, faces that join but do not intersect
• Orientable manifold with boundary– Each edge has 1 or 2 incident triangles. One incident cone per vertex.
• Boundary of a (regularized) solid– Each edge has 2k incident triangles (non-manifold). Orientable. Handles.
• Zero-genus boundary of a manifold solid (simple mesh)– Orientable. Manifold. Connected. No holes. No handles.
![Page 4: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/4.jpg)
05 Edgebreaker , 4Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
First, the case of a simple mesh
• A simple mesh is a deformed triangulated sphere– Orientable– 2-manifold– No boundary (no holes)– No handles (no throu-holes)
• Properties– Each edge has exactly 2 incident triangles– Each vertex has a single cycle of incident triangles
– May be drawn as a planar graph
![Page 5: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/5.jpg)
05 Edgebreaker , 5Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Simple meshes and patches
• A patch is a simple portion of a simple mesh– Simply connected
• Bounded by a single manifold edge-loop
• Its boundary is a connected manifold loop– Cycle of border edges
• It may be obtained from a simple mesh– by removing one or more triangles
![Page 6: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/6.jpg)
05 Edgebreaker , 6Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
• Dual graph:– Nodes represent triangles– Links represent edges
• That join adjacent triangles
• Vertex Spanning Tree (VST)– Edge-set connecting all vertices– No cycles– Cuts mesh into simply connected polygon with no interior vertices
• Triangle-Spanning Tree (TST)– Graph of remaining edges– No loops– Connects all triangles
Dual graphs and spanning treesFrom Bosen
VST
TST
![Page 7: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/7.jpg)
05 Edgebreaker , 7Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Euler formula for Simple Meshes
• Mesh has V vertices, E edges, and T triangles• E = (V-1)+(T-1)
– VST has V nodes and thus V-1 links– TST has T nodes and thus T-1 links
• E = 3T/2– There are 3 borders (edge-uses) per triangle– There are twice more edge-uses then edges
• Therefore: T = 2V - 4– Because (V-1)+(T-1) = 3T/2– we have V-2 = 3T/2-T = T/2– There are about twice as many triangles as vertices
• The number C of corners (vertex-uses) is about 6V– C=3T=6V-12– On average, a vertex is used 6 times
![Page 8: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/8.jpg)
05 Edgebreaker , 8Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
• For each triangle:– For each one of its 3 corners, store:
• Location• Attributes (may be the same for neighboring corners)
• Each vertex location is repeated (6 times on average)– geometry = 36 B/T (float coordinates: 9x4 B/T)– Plus 3 attribute-sets per triangle (6 per vertex)
Representation as independent triangles
x y z x y z x y zx y z x y z x y z
x y z x y z x y z
vertex 1
vertex 2
vertex 3
Triangle 2
Triangle 1
Triangle 3
Very verbose! Not good for traversal.
![Page 9: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/9.jpg)
05 Edgebreaker , 9Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Representation as Triangle strips
• Continue a strip by attaching a new triangle to an edge of the previous one
• Need only indicate which edge and when to start a new strip– 1 Left/Right bit per triangles plus 1 strip-end bit per triangle
• Send one vertex per triangle– Plus 2 vertices per strip to start it
• Each vertex is transmitted twice on average
L
R R
![Page 10: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/10.jpg)
05 Edgebreaker , 10Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
“3D compression made simple: Edgebreaker on a corner-table.” J. Rossignac, A. Safonova, and A. Szymczak. In Proceedings of the Shape Modeling International Conference, 2001.
• Table of corners, for each corner c store:– c.v : integer reference to vertex table– c.o : integer reference to opposite corner
• The 3 corners of each triangle are consecutive– List them according to ccw orientation of triangles
– Trivial access to triangle ID: c.t = INT(c/3)– c.n = 3c.t + (c+1)MOD 3, c.p = c.n.n, c.l = c.p.o, c.r = c.n.o
Corner table: data structure for T-meshes
vertex 1 x y z
vertex 2 x y z
vertex 3 x y z
vertex 4 x y z
Triangle 0 corner 0 1 7
Triangle 0 corner 1 2 8
Triangle 0 corner 2 3 5
Triangle 1 corner 3 2 9
Triangle 1 corner 4 1 6
Triangle 1 corner 5 4 2
v o
1
2
340
12
3
4 5
c.t
c
c.v
c.o
c.n
c.p
c.l
c.r
![Page 11: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/11.jpg)
05 Edgebreaker , 11Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Using adjacency table for T-mesh traversal
• Visit T-mesh (triangle-spanning tree)– Mark triangles as you visit– Start with any corner c and call Visit(c)– Visit(c)
• mark c.t;• IF NOT marked(c.r.t) THEN visit(c.r);• IF NOT marked(c.l.t) THEN visit(c.l);
• Label vertices– Label vertices with consecutive integers– Label(c.n.v); Label(c.n.n.v); Visit(c);– Visit(c)
• IF NOT labeled(c.v) THEN Label(c.v);• mark c.t;• IF NOT marked(c.r.t) THEN visit(c.r);• IF NOT marked(c.l.t) THEN visit(c.l);
![Page 12: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/12.jpg)
05 Edgebreaker , 12Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
• c.o can be derived from c.v (needs not be transmitted):
• Build table of triplets {min(c.n.v, c.n.n.v), max(c.n.v, c.n.n.v), c}– 230, 131, 122, 143, 244, 125, …
• Sort (bins, linear cost): – 122, 125 ...131... 143 ...230...244 …
• Pair-up consecutive entries 2k and 2k+1– (122, 125)...131... 143...230...244…
• Their corners are opposite– (122,125)...131...143...230...244…
Computing adjacency from incidence
Triangle 1 corner 0 1 a
Triangle 1 corner 1 2 b
Triangle 1 corner 2 3 c
Triangle 2 corner 3 2 c
Triangle 2 corner 4 1 d
Triangle 2 corner 5 4 e
v o a
Triangle 1 corner 0 1 a
Triangle 1 corner 1 2 b
Triangle 1 corner 2 3 5 c
Triangle 2 corner 3 2 c
Triangle 2 corner 4 1 d
Triangle 2 corner 5 4 2 e
v o a
1
2
340
12
3
4 5
0
12
3
4 5
1
2
34
![Page 13: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/13.jpg)
05 Edgebreaker , 13Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Connectivity/geometry discrepancy
• Connectivity of T-mesh may conflict with actual geometry– Vertices with different names may be coincident– Edges with different names may be coincident– Triangles, edges, and vertices may intersect
• T-mesh with consistent geometry– Triangles, edges, vertices are pairwise disjoint
• We consider edges and triangles to be open – I.e., not containing their boundary
• Manifold graphs may be used with invalid geometry– Coincident edges and vertices: Non-manifold singularities
– Self-intersecting surfaces
Non-manifold shape
Manifold graph
![Page 14: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/14.jpg)
05 Edgebreaker , 14Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Edgebreaker: A simple, fast, and effective second generation 3D compression
Jarek RossignacGVU Center and College of
ComputingGeorgia Tech, Atlanta
http://www.gvu.gatech.edu/~jarek
![Page 15: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/15.jpg)
05 Edgebreaker , 15Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Edgebreaker encodes construction steps
Binary format
Binary format
Compress
Decompress
Compress
Decompress
Area not yet covered
Specification of the next triangle
Sequence of specification for adding triangles
![Page 16: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/16.jpg)
05 Edgebreaker , 16Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
? ?x
?x
?x
?x
?x
?
?
?
Edgebreaker is a state machine
C
L
R
S ?
E
if tip vertex not marked then Celse if left neighbor marked
then if right neighbor marked then E else L
else if right neighbor marked then R else S
if tip vertex not marked then Celse if left neighbor marked
then if right neighbor marked then E else L
else if right neighbor marked then R else S
Encode sequence of codesC: 0, L:110, R: 101, S:100, E:111
and vertices as encountered by C operations
Marked (visited)Not marked
? Next to be encodedTo-do stack
x Last visited
Only 2T bits (because |C|=V=T/2)
![Page 17: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/17.jpg)
05 Edgebreaker , 17Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Edgebreaker compression
C? ?
L? ?
R? ?
? S ?
? E ?
x
x
x
x
x
CC
CC
C
C
CC
R
R
R
CCCCRCCRCRC…
RL EC
RRRLE
…CRSRLECRRRLEC R
S
![Page 18: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/18.jpg)
05 Edgebreaker , 18Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
EB re-numbering of vertices
![Page 19: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/19.jpg)
05 Edgebreaker , 19Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
recursive procedure compress (c)repeat {
c.t.m:=1; # mark the triangle as visited
if c.v.m == 0 # test whether tip vertex was visited
then { write(vertices, c.v); # append vertex index to “vertices”
write(clers, C); # append encoding of C to “clers”
c.v.m:= 1; # mark tip vertex as visited
c:=c.r } # continue with the right neighbor
else if c.r.t.m==1 # test whether right triangle was visited
then if c.l.t.m== 1 # test whether left triangle was visited
then {write(clers, E); # append encoding of E to clers string
return } # exit (or return from recursive call)
else {write(clers, R); # append encoding of R to clers string
c:=c.l } # move to left triangle
else if c.l.t.m == 1 # test whether left triangle was visited
then {write(clers, L); # append encoding of L to clers string
c:=c.r } # move to right triangle
else {write(clers, S); # append encoding of S to clers string
compress(c.r); # recursive call to visit right branch first
c:=c.l } } # move to left triangle
vertices=…ab, clers = ...CRSRLECRRRLE (2T bit code: C=0, L=110, R=101, S=100, E=111)
T1 c0 1 7
T1 c1 2 8
T1 c2 3 5
T2 c3 2 9
T2 c4 1 6
T2 c5 4 2
v o v1 x y
z
v2 x y z
v3 x y z
v4 x y z
C RS R
L ECRRR
LE a
b
cc.t
c.v
c.l
c.r
c.o
Edgebreaker compression algorithm Source code, examples:
http://www.gvu.gatech.edu/~jarek/edgebreaker/eb
![Page 20: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/20.jpg)
05 Edgebreaker , 20Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Edgebreaker decompression
• How does it work?– No problem, except at S– Can you recover where the tip of each S is from the CLERS string alone?
• Three solutions:– Count changes of border length in CLERS string (Rossignac)• Read CLERS string backwards to compute there the tip of each S is
– Wrap&Zip (Rossignac&Szymczak)• Build TST polygon and then fold it
– Spirale Reversi (Isenberg&Snoeyink)• Read CLERS string backward and build mesh in reverse order
![Page 21: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/21.jpg)
05 Edgebreaker , 21Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
EB decompression: how come it works?
C RS R
L ECR
RRL
E
…CRSRLECRRRLE
Receive the CLERS sequence
Decode it
Construct the TST polygon
Decode&reconstruct vertices
How to fold the polygon?
“Wrap&Zip decompression of the connectivity of triangle meshes compressed with Edgebreaker,” J. Rossignac and A. Szymczak. Computational Geometry: Theory and Applications, 14(1-3):119-135, 1999.
![Page 22: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/22.jpg)
05 Edgebreaker , 22Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
C
Wrap&Zip EB decompression (with Szymczak)
Orient bounding edges while building triangle tree at decompression. All oriented clockwise (up tree), except for C and the seed triangle:
Then ZIP all pairs of adjacent bounding edges when both point away from their common vertex.
S
C RR
LR
C L E R Sseed
RR
EL
CRSRLECRRRLE
C RS R
L ECRRR
LE
C RS R
L ECR
RRL
EE
Linear time complexity. Zip only after L and E.
![Page 23: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/23.jpg)
05 Edgebreaker , 23Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Wrap&Zip more complex example
![Page 24: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/24.jpg)
05 Edgebreaker , 24Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Spirale Reversi decompression for EB
C R L S E
clers = …CCRRCCRRRCRRCRCRRCCCRRCRRCRCRRRCRCRCRRSCRRSLERERLCRRRSEE
reversi = EESRRRCLRERELSRRCSRRCRCRCRRRCRCRRCRRCCCRRCRCRRCRRRCCRRCC…
compression
decompression
M. Isenburg and J. Snoeyink. Spirale reversi: Reverse decoding of the Edgebreaker encoding. Technical Report
TR-99-08, Department of Computer Science, University of British Columbia, October 4 1999.
![Page 25: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/25.jpg)
05 Edgebreaker , 25Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Reversi details
O = EESRRRCLRERELSRRCS
O = EESRRRCLREREL O = EESRRRCLRERELSRRC
O = EESO = E
1O = EE
1O = EESRRRCLR
1O = EESRRRCLRER
1
2
2
1
1
O = EESRRRCLRERELSRRCSRRCRCRCRRRCRCRRCRRCCCRRCRCRRCRRRCCRRCC…
![Page 26: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/26.jpg)
05 Edgebreaker , 26Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Edgebreaker Results
• Compression results for connectivity information– Guaranteed 2T bits for any simple mesh (improved later to 1.80T bits)
– Entropy down to 0.9T bits for non-trivial large models• Frequency: C=50%, R about 35%, S and E = 1-to-5%
– Source code available: 3 page detailed pseudo-code, arrays of integers, fast• http://www.gvu.gatech.edu/~jarek/edgebreaker/eb
• Publications <http://www.gvu.gatech.edu/~jarek/papers>– Rossignac, Edgebreaker Compression, IEEE TVCG’99
• Sigma Xi Best Paper Award– Rossignac&Szymczak, Wrap&zip, CGTA’99– King&Rossignac: Guaranteed 3.67V bit encoding..., CCCG’99
– Szymczak&King&Rossignac: Mostly regular meshes, CCCG’00– ….
![Page 27: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/27.jpg)
05 Edgebreaker , 27Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Spiraling solutions
• Several approaches visit the same spiraling TST aItai,Rodeh: Representation of graphs, Acta Informatica, 82Keeler,Westbrook: Short encoding of planar graphs and maps,
Discrete Applied Math, 93Gumbold,Straßer: Realtime Compression of Triangle Mesh
Connectivity, Siggraph, 98Rossignac: Edgebreaker: Compressing the incidence graph of
triangle meshes, TVCG, 99Touma,Gotsman: Triangle Mesh Compression, GI, 98 Taubin,Rossignac: Geometric compression through topological
surgery, ACM ToG, 98
• They encode how each new triangle is attached to previously restored ones
![Page 28: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/28.jpg)
05 Edgebreaker , 28Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Edgebreaker extensions and improvements
• Better connectivity compression– Tighter guaranteed upper bound (King&Rossignac, Gumhold): 1.80T
bits– Sufficiently regular meshes (with Szymczak and King): 0.81T bits
guaranteed– Delphi Connectivity predictors (with Coors): between 0.2T and 1.5T
bits• Topological extensions
– Quadrilateral meshes (with Szymczak and King): 1.34T bits– Handles/holes (with Safonova, Szymczak, Lopes, and Tavares)– Non manifold solids (with Cardoze)
• Implementation (with Safonova, Coors, Szymczak, Shikhare, Lopes)
• Retiling and loss optimization – Optimal quantization (with King and Szymczak): best B and T– Piecewise regular resampling (with Szymczak and King) 1T bits
total– Uniform C-triangles (with Attene, Falcidieno, Spagnuolo): 0.4T
bits total • Higher dimension
– Tetrahedra for FEM (with Szymczak): 7T bits (prior to entropy)– Pentatopes for 4D simulations (with Szymczak, and with Snoeyink)
![Page 29: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/29.jpg)
05 Edgebreaker , 29Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Edgebereaker compression contributors
Rossignac (Atlanta): Edgebreaker
Szymczak (Atlanta): regularity, resampling
King (Atlanta): 1.84Tbits, quads
Safonova (CMU): Holes, code
Coors (Germany): Prediction
Lopes (Brasil): Handles
Gotsman (Israel): Polygons
Isenburg (UCS): Reversi
Gumhold (Germany): 1.80T bits
Shikhare (India): translation
Attene (Italy): retiling
![Page 30: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/30.jpg)
05 Edgebreaker , 30Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Guaranteed 1.84T bit (King&Rossignac 99)
• “Guaranteed 3.67v bits encoding of planar triangle graphs”– Proc. 11th Canadian Conference on Computational Geometry, August 1999
• Encoding of symbols that follow a C– C is 0, S is 10, R is 11
• 3 possible encoding systems for symbols that do not follow a C– Code I: C is 0, S is 100, R is 101, L is 110, E is 111– Code II: C is 00, S is 111, R is 10, L is 110, E is 01– Code III: C is 00, S is 010, R is 011, L is 10, E is 11
• One of these 3 codes takes less than (2-1/6)T bits– Use a 2-bit switch to identify which code is used for each model
![Page 31: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/31.jpg)
05 Edgebreaker , 31Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Guaranteed 1.80T bit(Gumhold 00)
“New bounds on the encoding of planar triangulations”, S. Gumhold, Siggraph course notes on “3D Geometry Compression”
• 1.8T bits guaranteed for encoding CLERS string• Exploits the length of the outer boundary of T-patch (>2)– Not convenient for treating non-manifolds (See later)
• CE is impossible– Was at least 3, C increased it to at least 4, can’t have an E
• CCRE is impossible– Was at least 3, CC increased it to at least 5, R reduced it by 1, can’t have an E
• These constraints impact the probability of the next symbol and improve coding
![Page 32: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/32.jpg)
05 Edgebreaker , 32Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Triangulated quad 1.34T bits guaranteed
"Connectivity Compression for Irregular Quadrilateral Meshes" D. King, J. Rossignac, A Szymczak.
• Triangulate quads as you reach them• Always \ , never /• Consecutive in CLERS sequence• Guaranteed 2.67 bits/quad
– 1.34T bits – Cheaper to encode that triangulation – Less than Tutte’s lowest bound
• Fewer Q-meshes than T-meshes– With same vertex count– Theoretical proof
• Extended to polygons– Fan boundaries
FaceFixer, Isenburg&Snoeyink
![Page 33: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/33.jpg)
05 Edgebreaker , 33Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
• “Connectivity Compression of Irregular Quad Meshes”
• Surfaces often approximated by irregular quad meshes
• Instead of triangulating, we encode quads directly– Measured 0.24V to 1.14V bits, guaranteed 2.67V bits (vs 3.67)
• Equivalent to a smart triangulation + Edgebreaker– Only \-splits (no /-split), as seen from the previous quad
– Guarantees the triangle-pair is consecutive in triangle tree
– First triangle of each quad cannot be R or E: 13 symbol pairs possible
Quad meshes (King,Rossignac,Szymczak 99)
x
?
![Page 34: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/34.jpg)
05 Edgebreaker , 34Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
D. King, J. Rossignac, and A. Szymczak, “Connectivity compression for irregular quadrilateral meshes,” Technical Report TR–99–36, GVU, Georgia Tech, 1999.
• Triangulate each polygon as a fan and encode as CLERS– Record which edges are added (1 bit per triangle)– Guaranteed cost: min(5V, 5P) bits using primal or dual
– Guaranteed cost: 2.5 bits per edge– Exploit planarity for geometry prediction
M. Isenburg and J. Snoeylink, “Face fixer: Compressing polygon meshes with properties,” in Siggraph 2000, Computer Graphics Proceedings, 2000, pp. 263–270.
B. Kronrod and C. Gotsman,“Efficient Coding of Non-Triangular Meshes”, Technical Report, Computer Science Department, Technion-Israel Institute of Technology, 1999.
Encoding polygon meshes, 5P bits
L
C SE
![Page 35: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/35.jpg)
05 Edgebreaker , 35Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Manifold meshes may have handles
• Number of handles H– Is half the smallest number of closed curves cuts necessary to make the surface homeomorphic to a disk
• T=2V+4(H-S)– T triangles, E edges, V vertices, H handles, S shells
– Euler: T-E+V=2S -2H – 2 borders per edge and 3 borders per triangle: 2E=3T
• H=S-(T-E+V)/2– Shared edges: E=3T/2– 3 borders per triangle, 2 borders per edge
disk
![Page 36: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/36.jpg)
05 Edgebreaker , 36Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Simple encoding of handles in Edgebreaker
“A Simple Compression Algorithm for Surfaces with Handles”, H. Lopes, J. Rossignac, A. Safanova, A. Szymczak and G. Tavares. ACM Symposium on Solid Modeling, Saarbrucken. June 2002.
• VST and TST miss 2 edges per handle• Encode their adjacency explicitly
– As corner pairs of “glue” edges– Additional connectivity cost 2Hlog(3T)
• Need to restart zipping – From each glue edge
S*
![Page 37: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/37.jpg)
05 Edgebreaker , 37Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Example: EB compression of torus
• Each handle creates two S that will not be able to go left• Encode the pair of opposite corner IDs
![Page 38: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/38.jpg)
05 Edgebreaker , 38Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Plug holes with dummy triangle fans
C. Touma and C. Gotsman, “Triangle mesh compression,” in Graphics Interface, 1998.
• Encoder– Create a dummy vertex – Triangulate the hole as a star– Encode mesh with the holes filled– Encode the IDs of dummy vertices– Skip tip ID of biggest hole– RLE number of initial Cs
• Decoder – Receives filled mesh and IDs of dummy vertices– Reconstructs complete mesh– Removes star if dummy vertices
• What is a hole?– With Safonova, Szymczak
![Page 39: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/39.jpg)
05 Edgebreaker , 39Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Non-Manifolds
• Solid models have non-manifold edges and vertices
• Compression exploits manifold data structures
• Matchmaker: Manifold BReps for non-manifold r-sets– Rossignac&Cardoze, ACM Symposium on Solid Modeling, 1999.
– Match pairs of incident faces for each NME– Respects surface orientation & minimizes number of NMVs
1
2
340
12
3
4 5
![Page 40: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/40.jpg)
05 Edgebreaker , 40Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Delphi: Guessed Connectivity = 0.74T bits
“Guess Connectivity: Delphi Encoding in Edgebreaker”, V. Coors and J. Rossignac, GVU Technical Report. June 2002.
• Predict Edgebreaker code from decoded meshAlready traversed covered area
Active loop
c
Xdg(c
)VrVl
v
GE
c.v
c
c.n
c c
c
c.p
c.o
Figure 2: Connectivity guessed by parallelogram prediction
![Page 41: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/41.jpg)
05 Edgebreaker , 41Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Delphi correct guesses
Guess C
Guess L
X
g(c)
Guess R
X
g(c)
Guess S Guess E
Xg(c)
Xg(c)
Xg(c)
Figure 3: Guess clers Symbol based on geometry prediction.
Depending on the model, between 51% and 97% of guesses are correct.
83% correct guesses: 1.47bpv = 0.74T bits
![Page 42: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/42.jpg)
05 Edgebreaker , 42Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Delphi: Wrong non-C guessesGuess wrong R
Situation L
X
g(c)
Situation C
X
g(c)
Situation S
X
g(c)
Guess wrong L
Situation R
X
g(c)
Situation C
X
g(c)
Situation S
X
g(c)
Guess wrong S
Xg(c)
Situation R
Xg(c)
Situation L
Xg(c)
Situation C
Xg(c)
Situation S
Guess wrong E
Situation C
g(c)
X
Figure 5 Wrongly guessed non-C triangles. They grey triangle shows the actual situation. The yellow triangle visualizes the parallelogram prediction.
Half of the wrong guesses are Cs mistaken for Rs
![Page 43: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/43.jpg)
05 Edgebreaker , 43Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Delphi wrong C-guesses
Guess C in
Xg(c)
Situation S
Situation R
Xg(c)
Situation L
Xg(c)
g(c)
X
Situation E
Figure 4: Wrongly guesses C triangles
28% of wrong guesses are Rs mistaken for Cs.
![Page 44: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/44.jpg)
05 Edgebreaker , 44Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Apollo sequence encoding of Delphi
Figure 6: Example Apollo encoding: Let us assume that we guessed the first triangle of the example correctly as type C. We than predict the tip of the right triangle at g(c) using the parallelogram rule. SinceBecause the distance of g(c) and the active border is too large, we guess again a type C triangle. Unfortunately, that guess was wrong. In fact, the right triangle, shown in gray color in the first picture, is of type R. In the Apollo sequence we encode this situation as (f,R) and continue the traversal with the left triangle of R. The prediction scheme is performed for all triangle in Edgebreaker sequence and leads to the following Apollo sequence: ((t), (f, R), (t), (t), (t), (t), (t), (t), (t), (f,R), (t), (t), (t)). With a trivial encoding scheme we can compress this sequence with 16 bits instead of 32 bits for the corresponding CLERS sequence.
![Page 45: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/45.jpg)
05 Edgebreaker , 45Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Remeshing techniques
• What if you do not need to preserve the exact model• Allow discrepancy between original and received models– Imprecise vertex locations– Different connectivity– New selection of vertices on or near the surface– Simpler topology
• Now we can use other representations– Subdivision surface– Semi analytic (CSG)– Implicit (radial basis function interpolant)
• Or develop new ones designed for better compression– One parameter per sample (normal displacement, not tangential)• Want most vertices to be regular elevation over 2D grid (PRM)• Want mostly triangles to be isosceles (SwingWrapper)
![Page 46: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/46.jpg)
05 Edgebreaker , 46Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Piecewise Regular Meshes (PRM)
“Piecewise Regular Meshes: Construction and Compression”. A. Szymczak, J. Rossignac, and D. King. To appear in Graphics Models, Special Issue on Processing of Large Polygonal Meshes, 2002.
• Split surface into terrain-like reliefs• Resample each relief on a regular grid• Merge reliefs and fill topological cracks• Encode irregular part with Edgebreaker• Compress with range coder (2 char context)• Parallelogram prediction (x,y) & z
![Page 47: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/47.jpg)
05 Edgebreaker , 47Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
PRM results: 1T bits total, with 0.02% error
• Resampling chosen to limit surface error to less than 0.02%– Using 12-bit quantization on vertex location– Measured using Metro
• Decreases Entropy by 40%– 80% storage savings when compared to Touma&Gotsman
• 0.6T - 1.8T bits total (geometry and connectivity)– 89% Geometry – 8% Connectivity of the regular part of reliefs– 3% Irregular triangles
• Simple implementation – Re-sampling: 5 mns (not optimized) – Compression: 4 seconds– Simpler than MAPS (Lee, SIG98)
![Page 48: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/48.jpg)
05 Edgebreaker , 48Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
SwingWrapper: semi-regular retiling
“SwingWrapper: Retiling Triangle Meshes for Better Compression”, M. Attene, B. Falcidieno, M. Spagnuolo and J. Rossignac, Technical Report. March 2002
• Resample mesh to improve compression• Try to form regular triangles
– All C triangles are Isosceles – with both new edges of length L
• Fill cracks with irregular triangles• Encode connectivity with Edgebreaker• Encode one hinge angle per vertex
Cxα
x
180° 2/3L 180°+α
L
L
![Page 49: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/49.jpg)
05 Edgebreaker , 49Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Swing-Wrapper resolution control
![Page 50: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/50.jpg)
05 Edgebreaker , 50Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
SwingWrapper results: 0.4Tb total (0.01%)
CLERS
CLERS
134,074T
WRL=4,100,000B
13,642T
L2 error 0.007%
3.5Tb total
0.36Tb wrt original T
678-to-1 compression
1505T
L2 error 0.15%
5.2Tb total
0.06Tb wrt original T
4000-to-1 compression
![Page 51: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/51.jpg)
05 Edgebreaker , 51Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Triangles surrounded by valence 6 vertices
![Page 52: 05 Edgebreaker, 1 Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002 Edgebreaker (EB) Second generation 3D compression Faster, simpler, more.](https://reader035.fdocuments.us/reader035/viewer/2022062716/56649dea5503460f94ae506a/html5/thumbnails/52.jpg)
05 Edgebreaker , 52Jarek Rossignac, CoC & GVU Center, Georgia Tech SM, June 2002
Summary
• Topological Surgery (MPEG-4): RLE of TST and VST• Edgebreaker connectivity (CLERS):
– Efficient Wrap&Zip or Reversi decompression– Guarantee 1.80Tb for simple meshes and 0.81T for mostly regular
meshes – Simple extensions to handles, holes, and non-manifold boundaries– Delphi connectivity predictors: between 0.2Tb and 1.5Tb– Smart triangulation of quad-meshes: 1.34T bits– Encode vertex location using reordering and parallelogram
prediction– Publicly available 2 page source code and examples
• Resampling and simplification– Simplification (vertex clustering and edge-collapse)– Optimal compromise between quantization and simplification
(E=K/V)– Piecewise Regular Meshes (reliefs): 1Tb total
geometry+connectivity (0.02% error)– Swing&Wrapper: Isosceles Cs, 0.36Tb total ( 0.007% error),
0.06Tb (0.15% error)