34
Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 1 visualization and graphics research group CIPI C Progressive Meshes (SIGGRAPH ’96) By Hugues Hoppe Presented by Yong Kil and Christopher Co

Progressive Meshes (SIGGRAPH ’96)

  • Upload
    royce

  • View
    32

  • Download
    0

Embed Size (px)

DESCRIPTION

Progressive Meshes (SIGGRAPH ’96). By Hugues Hoppe Presented by Yong Kil and Christopher Co. 13,000. 1,000. 200. Previous Work. [Schroeder-etal92] (decimation) [Turk92] (re-tiling) [Hoppe-etal93] (mesh optimization) [Rossignac-Borrel93] (vertex clustering) - PowerPoint PPT Presentation

Citation preview

Page 1: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 1

visualization and graphics research group

CIPIC

Progressive Meshes(SIGGRAPH ’96)

By Hugues Hoppe

Presented byYong Kil and Christopher Co

Page 2: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 2

visualization and graphics research group

CIPIC

Previous Work

[Schroeder-etal92] [Schroeder-etal92] (decimation)(decimation)

[Turk92] [Turk92] (re-tiling)(re-tiling)

[Hoppe-etal93] [Hoppe-etal93] (mesh optimization)(mesh optimization)

[Rossignac-Borrel93] [Rossignac-Borrel93] (vertex clustering)(vertex clustering)

[Cohen-etal96] [Cohen-etal96] (simplification envelopes)(simplification envelopes)

... MRA (later)... MRA (later)

13,00013,000

1,0001,000 200200

?

Page 3: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 3

visualization and graphics research group

CIPIC

Introduction• What is Progressive Mesh?

Arbitrary mesh M stored as coarser mesh M0 together with a sequence of n detail records that indicate how to incrementally refine M0 exactly back into the original mesh M = Mn.

150150

MM00 MM11

vsplvspl00

152152

MM175175

500500

… … vsplvsplii … …

13,54613,546

vsplvspln-1n-1

MMnn

progressive mesh (PM)progressive mesh (PM) representation representation

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

MM00 MMnn

Page 4: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 4

visualization and graphics research group

CIPIC

Edge Collapse and Vertex Split

ecol(vecol(vs s ,v,vt t , , vvss ))

vvll vvrr

vvtt

vvss

vvssvvll vvrr’’

’’

vspl(svspl(s ,l,l ,r,r ,t, A),t, A)

A = A = (( {v {vs s ,v,vt t }, {discrete values}, {scalar values} }, {discrete values}, {scalar values} ))

Discrete values: associated with Discrete values: associated with facesfaces. . I.e. material identifier such as texture map.I.e. material identifier such as texture map.

Scalar values: associated with Scalar values: associated with corners corners (vertex, face)(vertex, face). . E.g color, normal, texture coordinate.E.g color, normal, texture coordinate.

Page 5: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 5

visualization and graphics research group

CIPIC

PM Construction

13,54613,546 500500 152152 150 faces150 faces

MM00MM11MM175175

ecolecol00ecolecoliiecolecoln-1n-1

MMnn

ecol(vecol(vs s ,v,vt t , , vvss ))

vvll vvrr

vvtt

vvss

vvssvvll vvrr’’

’’

vspl(vvspl(vs s ,v,vl l ,v,vr r , A), A)

Page 6: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 6

visualization and graphics research group

CIPIC

Mesh Simplification• Which edge to collapse?• Minimize the Energy Function:

– E(M) = Edist(M) + Espring(M) + Escalar(M) + Edisc(M)

• For each potential edge collapse, calculate ∆E and add to priority queue.

• Pop edge from queue (with lowest ∆E) and collapse.• Update affected edges and every pop next edge.

(b) Sampled points X = {x1, x2, …, xn}(a) Object to be sampled

Sample Points X

Page 7: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 7

visualization and graphics research group

CIPIC

Distance Energy

i

vi KxdME |))(|,()( 2distance

2

||

2 ||)(||min|))(|,( iviKb

vi bxKxdi

Surface of M

Page 8: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 8

visualization and graphics research group

CIPIC

Spring Energy

Kkj

kj vvcME},{

2spring ||||)(

Page 9: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 9

visualization and graphics research group

CIPIC

Distance and Spring• Where to collapse to have local minimum energy?

• Mesh Optimization (Hoppe ’93) creates non-linear equations and solves using iterative method.

• PM chooses 3 locations out of the infinite set: {0, 0.5, 1}

vvtt

vvss

vvss’’

vvss

??

’’

Page 10: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 10

visualization and graphics research group

CIPIC

Scalar Energy

i

ivj bxcME 22scalarscalar ||)(||)()(

.attributesscalar

Page 11: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 11

visualization and graphics research group

CIPIC

Discontinuity Energy

Sharp Edge (in yellow)1. Boundary edge2. Two adjacent faces have different discrete

attributes3. Adjacent corners have different scalar

attributes.

xi

Page 12: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 12

visualization and graphics research group

CIPIC

Using PM – LOD

13,54613,546 500500 152152 150 faces150 faces

MM00MM11MM175175MMnn

Each intermediate representation of the meshcan be considered a LOD

Page 13: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 13

visualization and graphics research group

CIPIC

Using PM – Transmission and Compression

• Transmission– Transmit M0, then transmit sequence of vsplit records

• Compression– Use connectivity coding and efficient use of bits

– Use delta-encoding to reduce storage of scalar attributes

– Coherence in mesh attributes can be exploited

Page 14: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 14

visualization and graphics research group

CIPIC

Geomorph

• Alpha blend between different resolutions to avoid “snapping”

• Blending occurs between each pair of vertices related by edge collapses performed (ancestor map)

Page 15: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 15

visualization and graphics research group

CIPIC

Selective Refinement

MM00 vsplvspl00 vsplvspl11 vsplvspli-1i-1 vsplvspln-1n-1

Page 16: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 16

visualization and graphics research group

CIPIC

Selective Refinement

Perform vspl( si, li, ri, Ai ) if:

• (1) vertices {si,li,ri} exist

• (2) REFINE(si) is true

REFINE(si) is defined per application

Relax constraint

• (1’) vertex si and A’(li) and A’(ri) exist

• Perform vspl( si, A’(li), A’(ri), Ai )

A’() is an ancestor map similar to that used by geomorphin

Page 17: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 17

visualization and graphics research group

CIPIC

Previous Work - MRA

• Multiresolution Analysis (MRA)

• Analysis produces base mesh with wavelet coefficients (B) using filter A

• Synthesis produces mesh of desired resolution using a refining filter and a perturbing filter

• Figure courtesy of Lounsbery, et al. (`94)

Page 18: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 18

visualization and graphics research group

CIPIC

PM vs. MRA

• Advantages of MRA– encodes geometry & color independently– supports multiresolution editing– guarantees maximum error bound

• Advantages of PM– lossless– can be more accurate– captures discrete attributes– captures discontinuities (creases)

Page 19: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 19

visualization and graphics research group

CIPIC

Results – PM vs. MRA

Page 20: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 20

visualization and graphics research group

CIPIC

Results – Escalar

Page 21: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 21

visualization and graphics research group

CIPIC

Results – Radiosity Solution

Page 22: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 22

visualization and graphics research group

CIPIC

Conclusion

• Contribution: PM data structure

• Advantages– Solves a variety of problems (LOD, Progressive Transmission,

Selective Refinement, etc.)

– Deals with various mesh attributes aside from geometry

• Disadvantages– Mesh parameterization can be non-intuitive

– Energy function is complex

Page 23: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 23

visualization and graphics research group

CIPIC

Sharing Mesh Attributes

wedgewedge

vertexvertex

faceface

cornercorner

Page 24: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 24

visualization and graphics research group

CIPIC

Vertex Correspondence

MMnn MM00MMccMMff

vv11

vv22

vv33

vv44

vv55

vv66

vv77

vv88

vv11

vv22

vv33

MMf-1f-1

vv11

vv22

vv33

vv44

vv55

vv66

vv77

ecolecol

MMf-2f-2

vv11

vv22

vv33

vv44

vv55

vv66

ecolecol ecolecol

Page 25: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 25

visualization and graphics research group

CIPIC

Select refine

b

aab

Page 26: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 26

visualization and graphics research group

CIPIC

Misc• MRA vs PM?• Review of PM

– Selective refinement as primary contribution.

– What improvements have been made from this paper.• i.e. who refers to this paper?

Page 27: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 27

visualization and graphics research group

CIPIC

Figures

Page 28: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 28

visualization and graphics research group

CIPIC

vertexvertex

cornercorner

faceface

Page 29: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 29

visualization and graphics research group

CIPIC

{f{f11} : { v} : { v11 , v, v22 , v , v33 } }

{f{f22} : { v} : { v33 , v , v22 , v , v44 } }

……

connectivityconnectivity

geometrygeometry{v{v11} : (x,y,z)} : (x,y,z)

{v{v22} : (x,y,z)} : (x,y,z)

……

face attributesface attributes{f{f11} : } : “skin material”“skin material”

{f{f22} : } : “brown hair”“brown hair”

……

Page 30: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 30

visualization and graphics research group

CIPIC

{v{v22,f,f11} : (n} : (nxx,n,nyy,n,nzz) (u,v)) (u,v)

{v{v22,f,f22} : (n} : (nxx,n,nyy,n,nzz) (u,v)) (u,v)

……

corner attrib.corner attrib.

{f{f11} : { v} : { v11 , v, v22 , v , v33 } }

{f{f22} : { v} : { v33 , v , v22 , v , v44 } }

……

connectivityconnectivity

geometrygeometry{v{v11} : (x,y,z)} : (x,y,z)

{v{v22} : (x,y,z)} : (x,y,z)

……

face attributesface attributes{f{f11} : } : “skin material”“skin material”

{f{f22} : } : “brown hair”“brown hair”

……

Page 31: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 31

visualization and graphics research group

CIPIC

PM benefit

PMPM

VVnn

MMnn

MM00

progressive transmissionprogressive transmission continuous-resolutioncontinuous-resolution smooth LODsmooth LOD geometry compressiongeometry compression

losslesslossless

single resolutionsingle resolution

vsplvsplFFnn

attributesattributes

Page 32: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 32

visualization and graphics research group

CIPIC

ecol(vecol(vs s ,v,vt t , , vvss ))

vvll vvrr

vvtt

vvss

vvssvvll vvrr’’

’’

Page 33: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 33

visualization and graphics research group

CIPIC

Vertex Split

vvssvvll vvrr

vspl(vvspl(vs s ,v,vl l ,v,vr r , , vvss ,,vvtt ,…),…)

vvll vvrr

vvtt

vvss

’’ ’’’’

’’

attributesattributes

Page 34: Progressive Meshes (SIGGRAPH ’96)

Feb 18, 2003 Multiresolution (ECS 289L) - Winter 2003 34

visualization and graphics research group

CIPIC

Reconstruction

150150

MM00 MM11

vsplvspl00

152152

MM175175

500500

… … vsplvsplii … …

13,54613,546

vsplvspln-1n-1

MMnn

progressive mesh (PM)progressive mesh (PM) representation representation

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

MM00 MMnn