Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp,...

38
Multiresolution Analysis of Arbitrary Meshes Matthias Eck Matthias Eck joint with joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Michael Lounsbery and Werner Stuetzle U. of Darmstadt , U. of Washington , Microsoft , Alias U. of Darmstadt , U. of Washington , Microsoft , Alias

Transcript of Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp,...

Page 1: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

Multiresolution Analysis of Arbitrary Meshes

Matthias EckMatthias Eck

joint withjoint with

Tony DeRose, Tom Duchamp, Hugues Hoppe,Tony DeRose, Tom Duchamp, Hugues Hoppe,

Michael Lounsbery and Werner StuetzleMichael Lounsbery and Werner Stuetzle

Matthias EckMatthias Eck

joint withjoint with

Tony DeRose, Tom Duchamp, Hugues Hoppe,Tony DeRose, Tom Duchamp, Hugues Hoppe,

Michael Lounsbery and Werner StuetzleMichael Lounsbery and Werner Stuetzle

U. of Darmstadt , U. of Washington , Microsoft , AliasU. of Darmstadt , U. of Washington , Microsoft , Alias

Page 2: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

Overview

1. 1. Motivation and applicationsMotivation and applications

2. 2. Our contributionOur contribution

3. 3. ResultsResults

4. 4. Summary and future workSummary and future work

1. 1. Motivation and applicationsMotivation and applications

2. 2. Our contributionOur contribution

3. 3. ResultsResults

4. 4. Summary and future workSummary and future work

Page 3: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

Motivation

problem: problem: complex shapes = complex meshescomplex shapes = complex meshes problem: problem: complex shapes = complex meshescomplex shapes = complex meshes

I have I have 70,00070,000 faces !faces !

Page 4: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

Difficulties:Difficulties:

– StorageStorage

– TransmissionTransmission

– RenderingRendering

– EditingEditing

Multiresolution analysisMultiresolution analysis

Difficulties:Difficulties:

– StorageStorage

– TransmissionTransmission

– RenderingRendering

– EditingEditing

Multiresolution analysisMultiresolution analysis

Page 5: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

multiresolution representation of mesh Mmultiresolution representation of mesh M

==

base shape base shape MM 0 0

++

sum of local correction terms sum of local correction terms

((wavelet termswavelet terms))

multiresolution representation of mesh Mmultiresolution representation of mesh M

==

base shape base shape MM 0 0

++

sum of local correction terms sum of local correction terms

((wavelet termswavelet terms))

Page 6: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

base shape base shape M M 00

mesh Mmesh M

Page 7: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

Applications

1. 1. CompressionCompression

2. 2. Multiresolution editingMultiresolution editing

3. 3. Level-of-detail controlLevel-of-detail control

4. 4. Progressive transmission and renderingProgressive transmission and rendering

Page 8: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

~70,000 faces ~11,000 faces~70,000 faces ~11,000 faces

tight error boundstight error bounds

Page 9: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

Applications

1. 1. CompressionCompression

2.2. Multiresolution editingMultiresolution editing

3. 3. Level-of-detail controlLevel-of-detail control

4. 4. Progressive transmission and renderingProgressive transmission and rendering

Page 10: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.
Page 11: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

Applications

1. 1. CompressionCompression

2. 2. Multiresolution editingMultiresolution editing

3. Level-of-detail control3. Level-of-detail control

4. 4. Progressive transmission and renderingProgressive transmission and rendering

Page 12: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

no visual discontinutiesno visual discontinuties

Page 13: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

Applications

1. 1. CompressionCompression

2. 2. Multiresolution editingMultiresolution editing

3. 3. Level-of-detail controlLevel-of-detail control

4.4. Progressive transmission and renderingProgressive transmission and rendering

Page 14: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

base shape M base shape M 00

mesh Mmesh M

Page 15: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

2. Our contribution

Page 16: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

2. Our contribution

Page 17: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

Previous work

Lounsbery, DeRose, Warren 1993Lounsbery, DeRose, Warren 1993

– provides general framework for MRAprovides general framework for MRA

– extends wavelet analysis to surfaces of extends wavelet analysis to surfaces of arbitrary topologyarbitrary topology

Schroeder, Sweldens 1995Schroeder, Sweldens 1995

– similar work on sphere similar work on sphere

Lounsbery, DeRose, Warren 1993Lounsbery, DeRose, Warren 1993

– provides general framework for MRAprovides general framework for MRA

– extends wavelet analysis to surfaces of extends wavelet analysis to surfaces of arbitrary topologyarbitrary topology

Schroeder, Sweldens 1995Schroeder, Sweldens 1995

– similar work on sphere similar work on sphere

Page 18: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

However ... However ...

input surface must be parametrized over a input surface must be parametrized over a simple simple domain meshdomain mesh

However ... However ...

input surface must be parametrized over a input surface must be parametrized over a simple simple domain meshdomain mesh

x x)

Page 19: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

The problem ...

Meshes are typically given as collection of triangles, thus Meshes are typically given as collection of triangles, thus

MRA algorithms cannot directly be appliedMRA algorithms cannot directly be applied

Meshes are typically given as collection of triangles, thus Meshes are typically given as collection of triangles, thus

MRA algorithms cannot directly be appliedMRA algorithms cannot directly be applied

Page 20: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

I’m not I’m not parametrized !parametrized !

MM

Page 21: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

... and our solution

step 1: step 1: construct construct a simple a simple domain mesh domain mesh KKstep 1: step 1: construct construct a simple a simple domain mesh domain mesh KK

KK MM

Page 22: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

... and our solution

step 1: step 1: construct construct a simple a simple domain mesh domain mesh KK

step 2: step 2: construct construct aa parametrization parametrization ofof MM over over KK

step 1: step 1: construct construct a simple a simple domain mesh domain mesh KK

step 2: step 2: construct construct aa parametrization parametrization ofof MM over over KK

KK MM

MRA !!!MRA !!!

Page 23: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

step1:Construction of domain mesh

Main idea: Main idea:

partitionpartition M into triangular regions M into triangular regions

domain mesh Kdomain mesh K

Main idea: Main idea:

partitionpartition M into triangular regions M into triangular regions

domain mesh Kdomain mesh K

Page 24: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

mesh M mesh M partitionpartition domain mesh Kdomain mesh K

Page 25: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

How to get partition ?

Our requirements:Our requirements:

• topological type of topological type of KK = topological type of = topological type of MM

• small number of triangular regionssmall number of triangular regions

• smooth and straight boundariessmooth and straight boundaries

• fully automatic procedurefully automatic procedure

Our requirements:Our requirements:

• topological type of topological type of KK = topological type of = topological type of MM

• small number of triangular regionssmall number of triangular regions

• smooth and straight boundariessmooth and straight boundaries

• fully automatic procedurefully automatic procedure

Page 26: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

construct construct Voronoi-likeVoronoi-like

diagram diagram on Mon M

construct construct Delaunay-likeDelaunay-liketriangulationtriangulation

mesh M mesh M

Page 27: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

step 2:Construction of parametrization

parametrization parametrization

parametrization parametrization

• map each face of domain mesh to corresponding map each face of domain mesh to corresponding triangular regiontriangular region

• local maps agree on boundaries:local maps agree on boundaries:

• map each face of domain mesh to corresponding map each face of domain mesh to corresponding triangular regiontriangular region

• local maps agree on boundaries:local maps agree on boundaries:

Page 28: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

local maplocal map

Page 29: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

How to map locally?

Requirements:Requirements:

– fixed boundary conditionsfixed boundary conditions

– small distortionsmall distortion

Best choice: Best choice: harmonic mapsharmonic maps

– well-known from differential geometrywell-known from differential geometry

– minimizing the metric distortionminimizing the metric distortion

Requirements:Requirements:

– fixed boundary conditionsfixed boundary conditions

– small distortionsmall distortion

Best choice: Best choice: harmonic mapsharmonic maps

– well-known from differential geometrywell-known from differential geometry

– minimizing the metric distortionminimizing the metric distortion

Page 30: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

local map

planar triangleplanar triangle triangular regiontriangular region

Page 31: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

4. Results

Page 32: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

4. Results

Page 33: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

34 min. , 70,000 faces34 min. , 70,000 faces

162 faces162 faces 2,000 faces , 2,000 faces , < 2.0 % < 2.0 % 4,600 faces , 4,600 faces , < 1.2 % < 1.2 %

Page 34: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

40 min. , 100,000 faces40 min. , 100,000 faces

229 faces229 faces 2,000 faces , 2,000 faces , < 2.0 % < 2.0 % 4,700 faces , 4,700 faces , < 1.5 % < 1.5 %

Page 35: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

Summary

• Given: An arbitrary mesh MGiven: An arbitrary mesh M

• We construct: a simple domain mesh and an We construct: a simple domain mesh and an exactexact parametrization for Mparametrization for M

• Allows MRA to be appliedAllows MRA to be applied

– tight error boundstight error bounds

• Useful in other applicationsUseful in other applications

• Given: An arbitrary mesh MGiven: An arbitrary mesh M

• We construct: a simple domain mesh and an We construct: a simple domain mesh and an exactexact parametrization for Mparametrization for M

• Allows MRA to be appliedAllows MRA to be applied

– tight error boundstight error bounds

• Useful in other applicationsUseful in other applications

Page 36: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.
Page 37: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

5. Future work

Other potential applications of parametrization:Other potential applications of parametrization:

• texture mappingtexture mapping

• finite element analysisfinite element analysis

• surface morphingsurface morphing

• B-spline fitting B-spline fitting

• texture mappingtexture mapping

• finite element analysisfinite element analysis

• surface morphingsurface morphing

• B-spline fitting B-spline fitting

Page 38: Multiresolution Analysis of Arbitrary Meshes Matthias Eck joint with Tony DeRose, Tom Duchamp, Hugues Hoppe, Michael Lounsbery and Werner Stuetzle Matthias.

approximating surfaceapproximating surface B - spline control meshB - spline control mesh

B - spline fitting