Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues."— Presentation transcript:

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

2 Triangle Meshes {f 1 } : { v 1, v 2, v 3 } {f 2 } : { v 3, v 2, v 4 } … connectivity geometry {v 1 } : (x,y,z) {v 2 } : (x,y,z) … face attributes {f 1 } : “skin material” {f 2 } : “brown hair” …

3 Triangle Meshes {v 2,f 1 } : (n x,n y,n z ) (u,v) {v 2,f 2 } : (n x,n y,n z ) (u,v) … corner attrib. {f 1 } : { v 1, v 2, v 3 } {f 2 } : { v 3, v 2, v 4 } … connectivity geometry {v 1 } : (x,y,z) {v 2 } : (x,y,z) … face attributes {f 1 } : “skin material” {f 2 } : “brown hair” …

4 Rendering Rendering Storage Storage Transmission Transmission Rendering Rendering Storage Storage Transmission Transmission Complex Models 232, 974 faces

5 Previous Work Model M=(K,V,D,S) Progressive mesh representation Model M=(K,V,D,S) Progressive mesh representation

6 Simplification: Edge collapse 13,546500152 150 faces M0M0M0M0 M1M1M1M1 M 175 ecol 0 ecol i ecol n-1 MnMnMnMn ecol(v s,v t, v s ) vlvlvlvl vrvrvrvr vtvtvtvt vsvsvsvs vsvsvsvs vlvlvlvl vrvrvrvr (optimization) ’ ’

7 Previous Work Progressive Meshes [Hoppe, ‘96] 150 M0M0M0M0 vspl 0 M1M1M1M1152 M 175 500 … vspl i … 13,546 vspl n-1 M n =M ^ M0M0M0M0 vspl 0 … vspl i … vspl n-1 Progressive Mesh (PM) representation

8 Application: Progressive transmission Transmit records progressively: M0M0M0M0 Receiver displays: time M0M0M0M0 vspl 0 vspl 1 vspl i-1 MiMiMiMi (~ progressive GIF & JPEG) MnMnMnMn vspl n-1

9 Application: Continuous- resolution LOD From PM, extract M i of any desired complexity. M0M0M0M0 vspl 0 vspl 1 vspl i-1 vspl n-1 MiMiMiMi 3,478 faces? 3,478 M0M0M0M0 MnMnMnMn MiMiMiMi ~400K faces/sec!

10 PM Features Continuous LOD sequence Smooth visual transitions (Geomorphs) Progressive transmission Space-efficient representation Continuous LOD sequence Smooth visual transitions (Geomorphs) Progressive transmission Space-efficient representation

11 Would also like: PM Restrictions Supports only “meshes” (orientable, 2-dimensional manifolds) Supports only “meshes” (orientable, 2-dimensional manifolds)

12 PM Restrictions Supports only “meshes” (orientable, 2-dimensional manifolds) Preserves topological type Supports only “meshes” (orientable, 2-dimensional manifolds) Preserves topological type M0M0M0M0 MnMnMnMn

13 PM Restrictions Supports only “meshes” (orientable, 2-dimensional manifolds) Preserves topological type Supports only “meshes” (orientable, 2-dimensional manifolds) Preserves topological type 167,7448,0002,522 M0M0M0M0 MnMnMnMn … M i …

14 PM Restrictions Supports only “meshes” (orientable, 2-dimensional manifolds) Preserves topological type minimal vertex num of closed g genus mesh Supports only “meshes” (orientable, 2-dimensional manifolds) Preserves topological type minimal vertex num of closed g genus mesh 7 4 10 10

15 PM Restrictions Volumetric data :

16 Progressive Simplicial Complexes (PSC) edge collapse (ecol) vertex split (vspl) PM

17 Progressive Simplicial Complexes (PSC) edge collapse (ecol) vertex split (vspl) PM vertex unification (vunify) PSC

18 Progressive Simplicial Complexes (PSC) edge collapse (ecol) vertex split (vspl) PM vertex unification (vunify) generalized vertex split (gvspl) PSC

19 PSC representation PSC Representation M1M1M1M1 M 22 gvspl 1 M 116 … gvspl i … gvspl n-1 M n =M ^ arbitrary simplicial complexes

20 Abstract simplicial complexes (ASC)

21

22 Abstract simplicial complexes

23 Geometric vs toplogical realizations

24 Graph representation. First level – principle simplicesFirst level – principle simplices discrete attributes discrete attributes

25 Abstract simplicial complexes Manifold-adjecent Not manifold-adjecent

26

27 aiaiaiai bibibibi aiaiaiai s s’

28 * MN – manifold adjacent neighbors

29

30 Connectivity Encoding case (1) case (2) case (3) case (4) 0-dim 1-dim 2-dim undefinedundefined

31

32 Geomorps. (smooth transform.)

33 Simplicial Complex VK M ^

34 V K M^

35 K V M^ 1 23 4 567 = {1, 2, 3, 4, 5, 6, 7} + simplices abstract simplicial complex {1}, {2}, …0-dim

36 Simplicial Complex 5 1 23 467 = {1, 2, 3, 4, 5, 6, 7} + simplices V K M ^ {1}, {2}, …0-dim {1, 2}, {2, 3}…1-dim abstract simplicial complex

37 Simplicial Complex 5 1 23 467 = {1, 2, 3, 4, 5, 6, 7} + simplices {1}, {2}, …0-dim {1, 2}, {2, 3}…1-dim VK M ^ {4, 5, 6}, {6, 7, 5}2-dim abstract simplicial complex

38 Generalized Vertex Split Encoding vunify aiaiaiai aiaiaiai bibibibi

39 gvspl vunify aiaiaiai gvspl i = {a i }, aiaiaiai aiaiaiai bibibibi

40 Connectivity Encoding case (1) case (2) case (3) case (4) 0-dim 1-dim 2-dim undefinedundefined

41 Connectivity Encoding case (1) case (2) case (3) case (4) 0-dim 1-dim 2-dim undefinedundefined

42 Connectivity Encoding case (1) case (2) case (3) case (4) 0-dim 1-dim 2-dim undefinedundefined S

43 gvspl i = {a i }, Generalized Vertex Split Encoding vunify aiaiaiai gvspl 0-simplices 4 1 2 3 4 5 aiaiaiai aiaiaiai bibibibi

44 vunify aiaiaiai gvspl i = {a i }, 4 14223 gvspl 1-simplices 1 2 3 4 5 aiaiaiai bibibibi

45 gvspl i = {a i }, 4 14223 12 Generalized Vertex Split Encoding vunify aiaiaiai 2-simplices gvspl aiaiaiai bibibibi 1 2

46 gvspl i = {a i }, 4 14223 12 Generalized Vertex Split Encoding vunify aiaiaiai connectivity gvspl S aiaiaiai bibibibi

47 vunify gvspl i = {a i }, 4 14223 12,  vpos gvspl aiaiaiai bibibibi

48 Generalized Vertex Split Encoding vunify gvspl i = {a i }, 4 14223 12,  vpos gvspl aiaiaiai bibibibi 1 2 3 4 5 1 2 If a simplex has split code c in {1, 2}, all of its parents have split code c.If a simplex has split code c in {1, 2}, all of its parents have split code c. If a simplex has split code 3, none of its parents have split code 4.If a simplex has split code 3, none of its parents have split code 4.

49 Connectivity Encoding Constraints vunify gvspl 12451 2 3 1 2 3 4 5 1 2 1 1 1 1 1 1 1 2 2 2 2 2 2 2 3 3 3 3 3 33 3 4 4 4 4 4 44 4

50 Space Analysis Average 2D manifold mesh n vertices, 3n edges, 2n triangles PM representation n ( log 2 n + 4 ) bits PSC representation n ( log 2 n + 7 ) bits Average 2D manifold mesh n vertices, 3n edges, 2n triangles PM representation n ( log 2 n + 4 ) bits PSC representation n ( log 2 n + 7 ) bits

51 PSC Construction Form a set of candidate vertex pairs 1-simplices of K some pairs from different components1-simplices of K some pairs from different components Form a set of candidate vertex pairs 1-simplices of K some pairs from different components1-simplices of K some pairs from different components For each candidate vertex pairs a, b : calculate accuracy of vunify (a,b) calculate accuracy of vunify (a,b) Sort candidate vertices according to accuracy For each candidate vertex pairs a, b : calculate accuracy of vunify (a,b) calculate accuracy of vunify (a,b) Sort candidate vertices according to accuracy

52 PSC Construction How to get pairs from different components Octree of model’s bbox Octree of model’s bbox How to get pairs from different components Octree of model’s bbox Octree of model’s bbox

53 PSC Construction How to get pairs from different components Delaunay triangulation K DT Delaunay triangulation K DT How to get pairs from different components Delaunay triangulation K DT Delaunay triangulation K DT No point in P is inside the circumcircles of any simplex in K DT Center of circumcircles gives Voronoi diagram

54 Unify pair with lowest cost updating costs of affected candidatesupdating costs of affected candidates Unify pair with lowest cost updating costs of affected candidatesupdating costs of affected candidates PSC Construction Form a set of candidate vertex pairs 1-simplices of K + 1-simplices of K DT1-simplices of K + 1-simplices of K DT Compute cost of each vertex pair ∆E = ∆E dist + ∆E disc + ∆ E area + E fold∆E = ∆E dist + ∆E disc + ∆ E area + E fold Form a set of candidate vertex pairs 1-simplices of K + 1-simplices of K DT1-simplices of K + 1-simplices of K DT Compute cost of each vertex pair ∆E = ∆E dist + ∆E disc + ∆ E area + E fold∆E = ∆E dist + ∆E disc + ∆ E area + E fold

55 Form a set of candidate vertex pairs PSC Construction 1-simplices of K DT 1-simplices of K candidate vertex pairs

56 Computing ∆E

57

58 Simplification Results 72,346 triangles 674 triangles

59 Simplification Results 8,936 triangles 170 triangles

60 PSC Features Video Destroyer PSC sequence PM, PSC comparison PSC Geomorphs Line Drawing

61 PSC Features Video

62 PSC VK M^ M1M1M1M1 gvspl n progressive geometry and topology lossless n any triangulation single vertex PSC Summary arbitrary simplicial complex

63 Continuous LOD sequence Smooth transitions (Geomorphs) Progressive transmission Space-efficient representation Continuous LOD sequence Smooth transitions (Geomorphs) Progressive transmission Space-efficient representation PSC Summary Supports topological changes Models of arbitrary dimension Supports topological changes Models of arbitrary dimension e.g. LOD in volume rendering


Download ppt "Progressive Simplicial Complexes Jovan Popovic Carnegie Mellon University Jovan Popovic Carnegie Mellon University Hugues Hoppe Microsoft Research Hugues."

Similar presentations


Ads by Google