Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie...

38
Progressive Simplicial Progressive Simplicial Complexes Complexes Jovan Popovic Jovan Popovic Carnegie Mellon University Carnegie Mellon University Hugues Hoppe Hugues Hoppe Microsoft Research Microsoft Research

Transcript of Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie...

Page 1: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

Progressive Simplicial Progressive Simplicial ComplexesComplexes

Jovan PopovicJovan PopovicCarnegie Mellon Carnegie Mellon

UniversityUniversity

Jovan PopovicJovan PopovicCarnegie Mellon Carnegie Mellon

UniversityUniversity

Hugues HoppeHugues HoppeMicrosoft ResearchMicrosoft Research

Hugues HoppeHugues HoppeMicrosoft ResearchMicrosoft Research

Page 2: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

•RenderingRendering

•StorageStorage

•TransmissionTransmission

•RenderingRendering

•StorageStorage

•TransmissionTransmission

Complex Models

232, 974 faces

Page 3: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

Previous Work

Progressive MeshesProgressive Meshes [Hoppe, [Hoppe, ‘96]‘96]Progressive MeshesProgressive Meshes [Hoppe, [Hoppe, ‘96]‘96]

150150

MM00

vsplvspl00MM11

152152

MM175175

500500

… … vsplvsplii … …

13,54613,546

vsplvspln-1n-1

MMnn=M=M̂̂MM00

vsplvspl00 … … vsplvsplii … … vsplvspln-1n-1

Progressive Mesh (PM) representation

Page 4: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

PM Features

Continuous LOD sequenceContinuous LOD sequence

Smooth visual transitions Smooth visual transitions (Geomorphs)(Geomorphs)

Progressive transmissionProgressive transmission

Space-efficient representationSpace-efficient representation

Continuous LOD sequenceContinuous LOD sequence

Smooth visual transitions Smooth visual transitions (Geomorphs)(Geomorphs)

Progressive transmissionProgressive transmission

Space-efficient representationSpace-efficient representation

Page 5: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

Would also like:

PM Restrictions

Supports only “meshes”Supports only “meshes”(orientable, 2-dimensional manifolds)(orientable, 2-dimensional manifolds)

Supports only “meshes”Supports only “meshes”(orientable, 2-dimensional manifolds)(orientable, 2-dimensional manifolds)

Page 6: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

PM Restrictions

Supports only “meshes”Supports only “meshes”(orientable, 2-dimensional manifolds)(orientable, 2-dimensional manifolds)

Preserves topological typePreserves topological type

Supports only “meshes”Supports only “meshes”(orientable, 2-dimensional manifolds)(orientable, 2-dimensional manifolds)

Preserves topological typePreserves topological type

MM00 MMnn

Page 7: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

PM Restrictions

Supports only “meshes”Supports only “meshes”(orientable, 2-dimensional manifolds)(orientable, 2-dimensional manifolds)

Preserves topological typePreserves topological type

Supports only “meshes”Supports only “meshes”(orientable, 2-dimensional manifolds)(orientable, 2-dimensional manifolds)

Preserves topological typePreserves topological type

167,744167,7448,0008,0002,5222,522MM00 MMnn… … MMii … …

Page 8: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

Progressive Simplicial Complexes (PSC)

edge collapseedge collapse(ecol)(ecol)

vertex splitvertex split(vspl)(vspl)

PMPM

Page 9: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

Previous Work

Vertex unification schemesVertex unification schemes[Rossignac-Borrel ‘93][Rossignac-Borrel ‘93]

[Schaufler-St[Schaufler-Stürzlinger ‘95]rzlinger ‘95]

Vertex unification schemesVertex unification schemes[Rossignac-Borrel ‘93][Rossignac-Borrel ‘93]

[Schaufler-St[Schaufler-Stürzlinger ‘95]rzlinger ‘95]

Page 10: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

Progressive Simplicial Complexes (PSC)

edge collapseedge collapse(ecol)(ecol)

vertex splitvertex split(vspl)(vspl)

PMPMvertex unificationvertex unification

(vunify)(vunify)

PSCPSC

Page 11: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

Progressive Simplicial Complexes (PSC)

edge collapseedge collapse(ecol)(ecol)

vertex splitvertex split(vspl)(vspl)

PMPMvertex unificationvertex unification

(vunify)(vunify)

generalized vertex splitgeneralized vertex split(gvspl)(gvspl)

PSCPSC

Page 12: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

Simplicial Complex

VV KKMM̂̂

Page 13: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

Simplicial Complex

VV KKMM̂̂

Page 14: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

KK

Simplicial Complex

VVMM̂̂ 1122 33 44

55

66

77

= {1, 2, 3, 4, 5, 6, 7} + = {1, 2, 3, 4, 5, 6, 7} + simplicessimplices

abstract abstract simpliciasimplicia

l l complexcomplex

{1}, {2}, …{1}, {2}, … 0-0-dimdim

Page 15: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

Simplicial Complex

5511

22 33 4466

77

= {1, 2, 3, 4, 5, 6, 7} + = {1, 2, 3, 4, 5, 6, 7} + simplicessimplices

VV KKMM̂̂

{1}, {2}, …{1}, {2}, … 0-0-dimdim{1, 2}, {2, 3}…{1, 2}, {2, 3}…1-1-dimdim

abstract abstract simpliciasimplicia

l l complexcomplex

Page 16: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

Simplicial Complex

5511

22 33 4466

77

= {1, 2, 3, 4, 5, 6, 7} + = {1, 2, 3, 4, 5, 6, 7} + simplicessimplices

{1}, {2}, …{1}, {2}, … 0-0-dimdim{1, 2}, {2, 3}…{1, 2}, {2, 3}…1-1-dimdim

VV KKMM̂̂

{4, 5, 6}, {6, 7, 5}{4, 5, 6}, {6, 7, 5}2-dim2-dim

abstract abstract simpliciasimplicia

l l complexcomplex

Page 17: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

PSC representation

PSC Representation

MM11 MM2222

gvsplgvspl11MM116116

… … gvsplgvsplii … … gvsplgvspln-1n-1

MMnn=M=M̂̂

arbitrary simplicial arbitrary simplicial complexescomplexes

Page 18: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

PSC Features Video

Destroyer PSC sequenceDestroyer PSC sequence

PM, PSC comparisonPM, PSC comparison

PSC GeomorphsPSC Geomorphs

Line DrawingLine Drawing

Destroyer PSC sequenceDestroyer PSC sequence

PM, PSC comparisonPM, PSC comparison

PSC GeomorphsPSC Geomorphs

Line DrawingLine Drawing

Page 19: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

Generalized Vertex Split Encoding

vunifvunifyy

Page 20: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

Generalized Vertex Split Encoding

gvspgvspll

vunifvunifyy

aa

ii

gvsplgvsplii = = {a {aii},},

Page 21: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

Connectivity Encoding

case case (1)(1)

case case (2)(2)

case case (3)(3)

case case (4)(4)

0-dim0-dim

1-1-dimdim

2-dim2-dim

undefinundefineded

undefinundefineded

Page 22: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

Connectivity Encoding

case case (1)(1)

case case (2)(2)

case case (3)(3)

case case (4)(4)

0-dim0-dim

1-1-dimdim

2-dim2-dim

undefinundefineded

undefinundefineded

Page 23: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

Connectivity Encoding

case case (1)(1)

case case (2)(2)

case case (3)(3)

case case (4)(4)

0-dim0-dim

1-1-dimdim

2-dim2-dim

undefinundefineded

undefinundefineded

SS

Page 24: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

gvsplgvsplii = = {a {aii},},

Generalized Vertex Split Encoding

vunifvunifyy

aa

ii

gvspgvspll

0-0-simplicessimplices

44

Page 25: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

Generalized Vertex Split Encoding

vunifvunifyy

aa

ii

gvsplgvsplii = = {a {aii}, 4 34122}, 4 34122

gvspgvspll

1-1-simplicessimplices

Page 26: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

gvsplgvsplii = = {a {aii}, 4 34122 }, 4 34122 1212

Generalized Vertex Split Encoding

vunifvunifyy

aa

ii

2-2-simplicessimplices

gvspgvspll

Page 27: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

gvsplgvsplii = = {a {aii}, 4 34122 }, 4 34122 1212

Generalized Vertex Split Encoding

vunifvunifyy

aa

ii

connectivitconnectivityy

gvspgvspll

SS

Page 28: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

Generalized Vertex Split Encoding

vunifvunifyy

gvsplgvsplii = = {a {aii}, 4 34122 }, 4 34122 12,12,

vpos

gvspgvspll

Page 29: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

Connectivity Encoding Analysis

vunifvunifyy

example:example:15 bits15 bits

models models (avg):(avg):30 bits30 bits

1 1 1 1 11 1 1 1 1 11 1 12 2 2 2 2 2 2 22 2 2 2 22

33 33 3 3 3 3 3 3 3 3 3 33 344 4 4 44 4 4 4 4 4 4 4 44 4

gvspgvspll

Page 30: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

Connectivity Encoding Constraints

vunifvunifyy

1 1 1 1 11 1 1 1 1 11 1 12 2 2 2 2 2 2 22 2 2 2 22

33 33 3 3 3 3 3 3 3 3 3 33 344 4 4 44 4 4 4 4 4 4 4 44 4

gvspgvspll

Page 31: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

1 1 1 1 11 1 1 1 1 11 1 12 2 2 2 2 2 2 22 2 2 2 22

33 33 3 3 3 3 3 3 3 3 3 33 344 4 4 44 4 4 4 4 4 4 4 44 4

Connectivity Encoding Compression

vunifvunifyy

example:example:15 bits15 bits

models models (avg):(avg):30 bits30 bits

example:example:10.2 bits10.2 bits

models models (avg):(avg):14 bits14 bits

gvspgvspll

Page 32: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

Space Analysis

Average 2D manifold meshAverage 2D manifold meshn vertices, 3n edges, 2n trianglesn vertices, 3n edges, 2n triangles

PM representationPM representation

n ( logn ( log22n + 4 ) bitsn + 4 ) bits

PSC representationPSC representation

n ( logn ( log22n + 7 ) bitsn + 7 ) bits

Average 2D manifold meshAverage 2D manifold meshn vertices, 3n edges, 2n trianglesn vertices, 3n edges, 2n triangles

PM representationPM representation

n ( logn ( log22n + 4 ) bitsn + 4 ) bits

PSC representationPSC representation

n ( logn ( log22n + 7 ) bitsn + 7 ) bits

Page 33: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

Form a set of candidate vertex pairsForm a set of candidate vertex pairsForm a set of candidate vertex pairsForm a set of candidate vertex pairs

PSC Construction

1-simplices of KDT1-simplices of K

candidate vertex pairs

Page 34: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

Unify pair with lowest costUnify pair with lowest cost•updating costs of affected candidatesupdating costs of affected candidates

Unify pair with lowest costUnify pair with lowest cost•updating costs of affected candidatesupdating costs of affected candidates

PSC Construction

Form a set of candidate vertex Form a set of candidate vertex pairspairs

•1-simplices of K 1-simplices of K1-simplices of K 1-simplices of KDTDT

Compute cost of each vertex Compute cost of each vertex pairpair

•∆∆E = ∆EE = ∆Edistdist + ∆E + ∆Ediscdisc + E + E∆area ∆area + E+ Efoldfold

Form a set of candidate vertex Form a set of candidate vertex pairspairs

•1-simplices of K 1-simplices of K1-simplices of K 1-simplices of KDTDT

Compute cost of each vertex Compute cost of each vertex pairpair

•∆∆E = ∆EE = ∆Edistdist + ∆E + ∆Ediscdisc + E + E∆area ∆area + E+ Efoldfold

Page 35: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

Simplification Results

72,346 72,346 trianglestriangles

674 triangles674 triangles

Page 36: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

Simplification Results

8,936 8,936 trianglestriangles

170 170 trianglestriangles

Page 37: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

PSCPSC

VV KK

MM̂̂

MM11

gvsplgvspl

progressive geometry progressive geometry and topologyand topology

losslesslossless

any triangulationany triangulation

single single vertexvertex

PSC Summary

arbitrary arbitrary simplicial simplicial complexcomplex

Page 38: Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues.

Continuous LOD sequenceContinuous LOD sequence

Smooth transitions Smooth transitions (Geomorphs)(Geomorphs)

Progressive transmissionProgressive transmission

Space-efficient representationSpace-efficient representation

Continuous LOD sequenceContinuous LOD sequence

Smooth transitions Smooth transitions (Geomorphs)(Geomorphs)

Progressive transmissionProgressive transmission

Space-efficient representationSpace-efficient representation

PSC Summary

Supports topological changesSupports topological changes

Models of arbitrary dimensionModels of arbitrary dimension

Supports topological changesSupports topological changes

Models of arbitrary dimensionModels of arbitrary dimensione.g. LOD in volume renderinge.g. LOD in volume renderinge.g. LOD in volume renderinge.g. LOD in volume rendering