Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie...
-
Upload
christopher-figueroa -
Category
Documents
-
view
221 -
download
1
Transcript of Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie...
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
•RenderingRendering
•StorageStorage
•TransmissionTransmission
•RenderingRendering
•StorageStorage
•TransmissionTransmission
Complex Models
232, 974 faces
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
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
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)
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
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 … …
Progressive Simplicial Complexes (PSC)
edge collapseedge collapse(ecol)(ecol)
vertex splitvertex split(vspl)(vspl)
PMPM
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]
Progressive Simplicial Complexes (PSC)
edge collapseedge collapse(ecol)(ecol)
vertex splitvertex split(vspl)(vspl)
PMPMvertex unificationvertex unification
(vunify)(vunify)
PSCPSC
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
Simplicial Complex
VV KKMM̂̂
Simplicial Complex
VV KKMM̂̂
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
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
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
PSC representation
PSC Representation
MM11 MM2222
gvsplgvspl11MM116116
… … gvsplgvsplii … … gvsplgvspln-1n-1
MMnn=M=M̂̂
arbitrary simplicial arbitrary simplicial complexescomplexes
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
Generalized Vertex Split Encoding
vunifvunifyy
Generalized Vertex Split Encoding
gvspgvspll
vunifvunifyy
aa
ii
gvsplgvsplii = = {a {aii},},
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
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
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
gvsplgvsplii = = {a {aii},},
Generalized Vertex Split Encoding
vunifvunifyy
aa
ii
gvspgvspll
0-0-simplicessimplices
44
Generalized Vertex Split Encoding
vunifvunifyy
aa
ii
gvsplgvsplii = = {a {aii}, 4 34122}, 4 34122
gvspgvspll
1-1-simplicessimplices
gvsplgvsplii = = {a {aii}, 4 34122 }, 4 34122 1212
Generalized Vertex Split Encoding
vunifvunifyy
aa
ii
2-2-simplicessimplices
gvspgvspll
gvsplgvsplii = = {a {aii}, 4 34122 }, 4 34122 1212
Generalized Vertex Split Encoding
vunifvunifyy
aa
ii
connectivitconnectivityy
gvspgvspll
SS
Generalized Vertex Split Encoding
vunifvunifyy
gvsplgvsplii = = {a {aii}, 4 34122 }, 4 34122 12,12,
vpos
gvspgvspll
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
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
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
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
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
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
Simplification Results
72,346 72,346 trianglestriangles
674 triangles674 triangles
Simplification Results
8,936 8,936 trianglestriangles
170 170 trianglestriangles
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
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