martin isenburg jack snoeyink university of north carolina at chapel hill

102

Upload: talon-holloway

Post on 31-Dec-2015

24 views

Category:

Documents


0 download

DESCRIPTION

S PIRALE R EVERSI. Reverse Decoding of the Edgebreaker Encoding. Martin Isenburg Jack Snoeyink University of North Carolina at Chapel Hill. Introduction. Mesh compression is hip Edgebreaker encodes mesh connectivity Original dec oding algorithm - PowerPoint PPT Presentation

TRANSCRIPT

Martin Isenburg Jack Snoeyink

University of North Carolina at Chapel Hill

Reverse Decoding of theReverse Decoding of theEdgebreaker EncodingEdgebreaker Encoding

SSPIRALE PIRALE RREVERSIEVERSI

IntroductionIntroduction

• Mesh compression is hip

• Edgebreaker encodes mesh connectivity

• Original decoding algorithm– worst case time complexity: O(n2)

• Wrap & Zip decoding algorithm– worst case time complexity: O(n)

Spirale Reversi decoding algorithm

OverviewOverview

• Connectivity Compression

• Edgebreaker

• Four Examples– Edgebreaker Encoding– Edgebreaker Decoding– Wrap & Zip Decoding– Spirale Reversi Decoding

• Holes and Handles

Connectivity Connectivity CompressionCompression

vertex1 (x,y,z)vertex2 (x,y,z)vertex3 (x,y,z)

vertexn

Standard RepresentationStandard Representation

triangle1 1 2 3triangle2 3 4 3triangle3 5 2 1

trianglem

connectivity

n = 10,000 100 KB 60 KBn = 100,000 1245 KB 600 KB

n = 1,000,000 15 MB 6 MB

geometry

Compression SchemesCompression Schemes

• Geometry Compression, Deering, 1995• Short Encodings of Planar Graphs and Maps, Keeler and Westbrook, 1995• Geometric Compression through Topological Surgery, Taubin and Rossignac, 1996• Good orders for incremental (re)construction, Snoeyink and vanKrefeld, 1997• Encoding a triangulation as a permutation of its point set, Denny and Sohler, 1997• Triangle Mesh Compression, Touma and Gotsman, 1998• Real time compression of triangle mesh connectivity, Gumhold and Strasser, 1998• Mesh Connectivity Coding by Dual Graph Approach, Li and Kuo, 1998• Edgebreaker: Connectivity Compression for Triangle Meshes, Rossignac, 1998• Mesh Collapse Compression, Isenburg and Snoeyink, 1999• Single Resolution Compression of Arbitrary Triangular Meshes with Properties, Bajaj,

Pascucci, and Zhuang, 1999• Triangle Strip Compression, Isenburg, 2000• Face Fixer: Compressing Polygon Meshes with Properties, Isenburg and Snoeyink, 2000• Efficient Coding of non-triangular Meshes, Kronrod and Gotsman

esh Connecesh Connec

esh Collapsesh Collaps

timetime

EdgebreakerEdgebreaker

Compression SchemesCompression Schemes

• Geometry Compression, Deering, 1995• Short Encodings of Planar Westbrook, 1995• Geometric Compression ubin and Rossignac, 1996• Good orders for increm nd vanKrefeld, 1997• Encoding a triangulation y and Sohler, 1997• Triangle Mesh Compre• Real time compression d and Strasser, 1998• Mesh Connectivity Co o, 1998 • Edgebreaker: Connectivity ossignac, 1998• Mesh Collapse Compressi• Single Resolution Compres hes with Properties, Bajaj,

Pascucci, and Zhuang, 1999• Triangle Strip Compression, Isenburg, 2000• Face Fixer: Compressing Polygon Meshes with Properties, Isenburg and Snoeyink, 2000• Efficient Coding of non-triangular Meshes, Kronrod and Gotsman

EdgebreakerEdgebreaker

EncodingEncoding

• Encodes meshconnectivity asa sequence oflabels

• Best worst casebound for meshconnectivity

• Less than 4 bits per vertex for meshes without holes and handles

DecodingDecoding

• Original decoding replays encoding traversal– but O(n2) worst case time complexity

• Wrap & Zip decoding “sort of” replays encoding traveral– only O(n) time complexity– but multiple traversals of labels (triangles)

for mesh with boundary (handles)– “zipping” is un-necessary overhead

EdgebreakerEdgebreaker Encoding Encoding

C

R

C

R

C R

R

C R R

L

RC R R

L

S

RC R R

L SRC R

L

R

L SRC R

E

LR

L SRC R

C

ELR

L SRC R CELR

R

L SRC R CELR R

R

L SRC R CELR R R

E

L SR EC R CELR R R

EdgebreakerEdgebreakerDecodingDecoding

Changes in boundary length

Computing initial boundary length

L SR EC R CELR R R

0

Changes in boundary length

Computing initial boundary length

L SR EC R CELR R RC

+1

+10

Changes in boundary length

Computing initial boundary length

L SR EC R CELR R R

+1 -1

+1 00

R

Changes in boundary length

Computing initial boundary length

L SR EC R CELR R R

+1 -1 -1

+1 0 -10

R

C

Changes in boundary length

Computing initial boundary length

L SR ER CELR R R

+1 -1 -1 -1

+1 0 -1 -20

R

C

Changes in boundary length

Computing initial boundary length

L SR ER CELR R R

+1 -1 -1 -1 -1

+1 0 -1 -2 -30

L

C

Changes in boundary length

Computing initial boundary length

L SR ER CELR R R

+1 -1 -1 -1 -1 +1

+1 0 -1 -2 -3 -20

S

C

Changes in boundary length

Computing initial boundary length

Computing offset for label

L SR ER CELR R R

+1 -1 -1 -1 -1 +1

+1 0 -1 -2 -3 -20

0

S

C

Changes in boundary length

Computing initial boundary length

Computing offset for label

L SR ER CELR R R

+1 -1 -1 -1 -1 -1+1

+1 0 -1 -2 -3 -3-20

-10

S

L

C

Changes in boundary length

Computing initial boundary length

Computing offset for label

L SR ER CELR R R

+1 -1 -1 -1 -1 -1 -3+1

+1 0 -1 -2 -3 -3 -6-20

-1 -40

S

E

Changes in boundary length

Computing initial boundary length

Computing offset for label

L SR ER CELR R RC

+1 -1 -1 -1 -1 -1 -3 +1+1

+1 0 -1 -2 -3 -3 -6 -5-20

-1 -40

S

C

C

Changes in boundary length

Computing initial boundary length

Computing offset for label

L SR ER CELR R R

+1 -1 -1 -1 -1 -1 -3 -1+1+1

+1 0 -1 -2 -3 -3 -6 -6-5-20

-1 -40

S

R

C

Changes in boundary length

Computing initial boundary length

Computing offset for label

L SR ER CELR R R

+1 -1 -1 -1 -1 -1 -3 -1-1+1+1

+1 0 -1 -2 -3 -3 -6 -7-6-5-20

-1 -40

S

R

C

Changes in boundary length

Computing initial boundary length

Computing offset for label

L SR ER CELR R R

+1 -1 -1 -1 -1 -1 -3 -3-1-1+1+1

+1 0 -1 -2 -3 -3 -6 -10-7-6-5-20

-1 -40

S

E

L SR ER CELR R RC

L SR EC R CELR R R

C

C

L SR EC R CELR R R

R

R

L SR EC R CELR R R

R

R

L SR EC R CELR R RR

R

L SR EC R CELR R R

L

L

usepre-computed

offset

L SR EC R CELR R R

S

S

L SR EC R CELR R R

L

L

L SR EC R CELR R R

E

E

L SR EC R CELR R R

C

C

L SR EC R CELR R R

R

R

L SR EC R CELR R R

R

R

L SR EC R CELR R R

E

E

L SR EC R CELR R R

Wrap & ZipWrap & ZipDecodingDecoding

L SR EC R CELR R R

L SR EC R CELR R R

C

C

L SR EC R CELR R R

R

R

L SR EC R CELR R R

R

R

L SR EC R CELR R RR

R

L SR EC R CELR R R

L

L

zip ...

L SR EC R CELR R R

L SR EC R CELR R R

S

S

L SR EC R CELR R R

L

L

L SR EC R CELR R R

E

E

L SR EC R CELR R R

C

C

L SR EC R CELR R R

R

R

L SR EC R CELR R R

R

R

L SR EC R CELR R R

E

E

zip ...

L SR EC R CELR R R

zip ...

L SR EC R CELR R R

zip ...

L SR EC R CELR R R

zip ...

L SR EC R CELR R R

L SR EC R CELR R R

L SR EC R CELR R R

Spirale ReversiSpirale ReversiDecodingDecoding

L SR EC R CELR R R

E

E

L SR EC R CELR R R

R

R

L SR EC R CELR R R

R

R

L SR EC R CELR R R

C

C

L SR EC R CELR R R

E

E

L SR EC R CELR R R

L

L

L SR EC R CELR R R

S

S

L SR EC R CELR R R

S

L SR EC R CELR R R

S

L SR EC R CELR R R

S

L SR EC R CELR R R

S

L SR EC R CELR R R

S

L SR EC R CELR R R

L

L

L SR EC R CELR R RR

R

L SR EC R CELR R R

R

R

L SR EC R CELR R R

R

R

L SR EC R CELR R R

C

C

L SR EC R CELR R R

Holes andHoles andHandlesHandles

Encoding a holeEncoding a hole

M

Encoding a holeEncoding a hole

Encoding a handleEncoding a handle

M

Encoding a handleEncoding a handle

Encoding a handleEncoding a handle

Yeez … this bunny again!Yeez … this bunny again!

AcknowledgementsAcknowledgements

• Davis King for details on Edgebreaker during our “pool session” at SCG 99

• Jarek Rossignac for suggesting the name “Spirale Reversi”