2emovaloftopologicalandgeometricalerrors · pdf file · 2015-09-28mario botsch...

83
Mesh Editing Mario Botsch Bielefeld University

Upload: hatruc

Post on 18-Mar-2018

219 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mesh Editing

Mario BotschBielefeld University

Page 2: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Mesh Deformation

Global deformationwith intuitive

detail preservation

2

Page 3: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Mesh Deformation

3

Local & globaldeformations

Page 4: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Mesh Deformation

4

Editing of complex meshes

Page 5: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Mesh Deformation

5

Editing of“bad” meshes

Page 6: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Overview

6

• Surface-based deformation– Energy minimization– Multiresolution editing– Differential coordinates

• Space deformation– Freeform deformation– Energy minimization

• Linear vs. nonlinear methods

Page 7: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Overview

7

• Surface-based deformation– Energy minimization– Multiresolution editing– Differential coordinates

• Space deformation– Freeform deformation– Energy minimization

• Linear vs. nonlinear methods

Page 8: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Spline Surfaces

• Tensor product surfaces– Rectangular grid of control points– Rectangular surface patches

8

Page 9: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Spline Surfaces

• Tensor product surfaces– Rectangular grid of control points– Rectangular surface patches

• Problems:– Many patches for complex models– Smoothness across patch boundaries

Use irregular triangle meshes!

9

Page 10: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

• Paint three surface regions– Support region (blue)– Fixed vertices (gray)– Handle regions (green)

Modeling Metaphor

10

Page 11: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

• Mesh deformation by displacement function d– Interpolate prescribed constraints– Smooth, intuitive deformationPhysically-based principles

Modeling Notation

11

S S ! = p + d (p) |p ! S

d : S ! IR3

d (pi) = di

Page 12: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Physically-Based Deformation

• Non-linear stretching & bending energies

• Linearize energies

12

Ωks

I− I2 + kb

II− II2 dudv

stretching bending

Ωks

du2 + dv2

+ kb

duu2 + 2 duv2 + dvv2

dudv

stretching bending

Page 13: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Physically-Based Deformation

• Minimize linearized bending energy

• Variational calculus, Euler-Lagrange PDE

“Best” deformation that satisfies constraints

13

∆2d := duuuu + 2duuvv + dvvvv = 0

E(d) =

Sduu2 + 2 duv2 + dvv2 dS → minf(x)→ min

f (x) = 0

Page 14: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Deformation Energies

14

(Membrane)

(Thin plate)Initial state

(Membrane)∆2d = 0

∆2p = 0∆p = 0

∆d = 0

Page 15: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Discretization

15

• Laplace discretization

• Sparse linear system

xj

xi

Ai!ij

!ij

∆di =1

2Ai

j∈Ni

(cot αij + cot βij)(dj − di)

∆2

0 I 00 0 I

=:M

...di...

=

00

δhi

∆2di = ∆(∆di)

Page 16: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Discretization

16

• Sparse linear system (19 nz/row)

• Can be turned into symm. pos. def. system– Right hand sides changes each frame!– Use efficient linear solvers...

∆2

0 I 00 0 I

=:M

...di...

=

00

δhi

Page 17: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Sparse SPD Solvers• Dense Cholesky factorization

– Cubic complexity– High memory consumption (doesnʼt exploit sparsity)

• Iterative conjugate gradients– Quadratic complexity– Need sophisticated preconditioning

• Multigrid solvers– Linear complexity– But rather complicated to develop (and to use)

• Sparse Cholesky factorization?17

Page 18: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Dense Cholesky Solver

1. Cholesky factorization

2. Solve system

18

A = LLT

y = L−1b, x = L−T y

Ax = bSolve

Page 19: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Sparse Cholesky Factorization

19

PTAP

Reordering

14k non-zeros

L

36k non-zeros

Cholesky Factorization

A=LLT

500×500 matrix3500 non-zeros

7k non-zeros

Page 20: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Pre-computation

Per-frame computation

Sparse Cholesky Solver

1. Matrix re-ordering

2. Cholesky factorization

3. Solve system

20

A = PTAP

A = LLT

y = L!1PT b, x = PL!T y

Ax = bSolve

Page 21: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Bi-Laplace Systems

21

0s

13s

25s

38s

50s

10k 20k 30k 40k 50k

Conjugate Gradients Multigrid Sparse Cholesky

Setup + Precomp. + 3 Solutions

Page 22: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Bi-Laplace Systems

22

0s

4s

8s

11s

15s

10k 20k 30k 40k 50k

3 Solutions (per frame costs)

Conjugate Gradients Multigrid Sparse Cholesky

Page 23: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

0 50 100 150 200 250 300 350 400

8

16

24

32

Laplace System

23

Setup + Precomp. + 3 Solutions

Multigrid

SparseCholesky

[Shi et al, SIGGRAPH 06]

Page 24: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Laplace System

24

0 50 100 150 200 250 300 350 400

1

2

3

4

5

3 Solutions (per frame costs)

Multigrid

SparseCholesky

[Shi et al, SIGGRAPH 06]

Page 25: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Discretization

25

• Sparse linear system

• Can be turned into symm. pos. def. system– Right hand sides changes each frame– Sparse Cholesky factorization– Very efficient implementations publicly available

∆2

0 I 00 0 I

=:M

...di...

=

00

δhi

Page 26: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

More Efficient Solution

• Handle is transformed affinely

• Precompute linear basis functions

26

...di...

= M−1

00

δhi

= M−1

00Q

B∈ IRn×4

(δa, δb, δc, δd, )T

(. . . , !hi, . . .) = Q (!a, !b, !c, !d)T

(. . . ,hi, . . .) = Q (a,b, c,d)T

Page 27: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Front Deformation

27

Page 28: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Overview

28

• Surface-based deformation– Energy minimization– Multiresolution editing– Differential coordinates

• Space deformation– Freeform deformation– Energy minimization

• Linear vs. nonlinear methods

Page 29: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

• Even pure translations induce local rotations!– Inherently nonlinear coupling

• Or: Linear model + multi-scale decomposition...

Multiresolution Modeling

29

Original Non-linear deform.Linear deform.

Page 30: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Multiresolution Editing

Frequency decomposition

Change lowfrequencies

Add high frequency details, stored in local frames

30

Page 31: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Multiresolution Editing

Multiresolution

Modeling

31

S

Dec

ompo

sitio

n

DetailInformation

B

Freeform

Modeling

B

Reconstruction

S

Page 32: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Normal Displacements

32

Page 33: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Limitations

33

• Neighboring displacements are not coupled– Surface bending changes their angle– Leads to volume changes or self-intersections

Original Normal Displ. Nonlinear

Page 34: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Limitations

34

Normal Displ. NonlinearOriginal

• Neighboring displacements are not coupled– Surface bending changes their angle– Leads to volume changes or self-intersections

Page 35: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Limitations

35

• Neighboring displacements are not coupled– Surface bending changes their angle– Leads to volume changes or self-intersections– See course notes for some other techniques...

• Multiresolution hierarchy difficult to compute for meshes of complex topology / geometry– Might require more hierarchy levels

Page 36: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Overview

36

• Surface-based deformation– Energy minimization– Multiresolution editing– Differential coordinates

• Space deformation– Freeform deformation– Energy minimization

• Linear vs. nonlinear methods

Page 37: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Differential Coordinates

1. Manipulate differential coordinates instead of spatial coordinates– Gradients, Laplacians, ...

2. Then find mesh with desired differential coords– Basically an integration step

37

Page 38: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Gradient-Based Editing

38

Original Rotated DiffCoords Reconstructed Mesh

Page 39: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Gradient-Based Editing

• Manipulate gradient field of a function (surface)

• Find function f’ whose gradient is (close to) g’

• Variational calculus yields Euler-Lagrange PDE

39

g → gg = ∇p

S∇p − g2 dS → min

∆p = div g

Page 40: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Gradient-Based Editing

• Use piecewise linear coordinate function

• Its gradient is

40

p(u, v) =

vi

pi · φi(u, v)

φ2

x1

x2

x3

1 x1

x2

x3

1φ3

x1

x2

x3

1 φ1

∇p(u, v) =

vi

pi ·∇φi(u, v)

Page 41: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Gradient-Based Editing

• Use piecewise linear coordinate function

• Its gradient is

• It is constant per triangle

41

p(u, v) =

vi

pi · φi(u, v)

∇p(u, v) =

vi

pi ·∇φi(u, v)

!p|fj=: Gj " IR

3!3

Page 42: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Gradient-Based Editing

• Constant per triangle

• Manipulate per-face gradients

42

!p|fj=: Gj " IR

3!3

!

"#

G1

.

.

.

GF

$

%& = G

'()*

!IR3F!V

·

!

"#

pT1

.

.

.

pTV

$

%&

Gj !" G!

j

Page 43: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

• Reconstruct mesh from changed gradients– Overdetermined problem– Weighted least squares system– Linear Poisson (Laplace) system

divdiv! = !

Gradient-Based Editing

43

GT DG ·

!

"

#

p!

1

T

.

.

.

p!

V

T

$

%

&= GT D ·

!

"

#

G!

1

.

.

.

G!

F

$

%

&

G ! IR3F!V

Page 44: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Gradient-Based Editing

44

Original Rotated DiffCoords Reconstructed Mesh

Page 45: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Construct Scalar Field

• Construct smooth scalar field [0,1]• s(x)=1: ! Full deformation (handle)• s(x)=0: ! No deformation (fixed part)• s(x)∈(0,1):! Damp handle transformation (in between)

45

Page 46: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Construct Scalar Field

• Construct a smooth harmonic field– Solve

– with

46

!(s) = 0

s (p) =

!

1 p ! handle0 p ! fixed

Page 47: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Damp Handle Transformation

• Full handle transformation– Rotation: ! R(c, a, α)– Scaling: ! S(s)

• Damped by scalar λ– Rotation: ! R(c, a, λ·α)– Scaling: ! S(λ·s + (1-λ)·1)

47

Page 48: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Gradient-Based Editing

48

Original Rotated Gradients Reconstructed Mesh

Page 49: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Laplacian-Based Editing

• Manipulate Laplacians of a surface

• Find surface whose Laplacian is (close to) δ’

• Variational calculus yields Euler-Lagrange PDE

49

δi = ∆(pi) , δi → δi

∆2p = ∆δ

S

∆p − δ2 dS → min

Page 50: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Discretization

• Discretize Euler-Lagrange PDE

• Frequently used (wrong) version

50

∆2p = ∆δ L2p = Lδ

LT Lp = LT δδ = Lp δ → δ

Page 51: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Discretization

51

L2p = LδLT Lp = LT δ

Irregular mesh

Page 52: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Connection to Plate Energy?

• Neglect change of Laplacians for a moment...

52

∆2(p + d) = ∆2p

∆2p = ∆δ

p = p + dδ = ∆p

∆2d = 0

• Basic formulations equivalent!• Differ in detail preservation

• Rotation of Laplacians• Multi-scale decomposition

∆p − δ2 → min

duu2 + 2 duv2 + dvv2 → min

Page 53: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Limitations

• Differential coordinates work well for rotations– Apply damped handle rotations to diff. coords.

• Pure translations donʼt have rotation component– Translations donʼt change differential coordinates– “Translation insensitivity”

53

Page 54: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Overview

54

• Surface-based deformation– Energy minimization– Multiresolution editing– Differential coordinates

• Space deformation– Freeform deformation– Energy minimization

• Linear vs. nonlinear methods

Page 55: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Surface-Based Deformation• Problems with

– Highly complex models– Topological inconsistencies– Geometric degeneracies

55

Page 56: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Freeform Deformation

• Deform objectʼs bounding box– Implicitly deforms embedded objects

56

Page 57: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Freeform Deformation

• Deform objectʼs bounding box– Implicitly deforms embedded objects

• Tri-variate tensor-product spline

57

d(u, v, w) =l

i=0

m

j=0

n

k=0

dijkNi(u) Nj(v) Nk(w)

Page 58: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Freeform Deformation

• Deform objectʼs bounding box– Implicitly deforms embedded objects

• Tri-variate tensor-product spline

58

Page 59: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Freeform Deformation

• Deform objectʼs bounding box– Implicitly deforms embedded objects

• Tri-variate tensor-product spline– Aliasing artifacts

• Interpolate deformation constraints?– Only in least squares sense

59

Page 60: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Overview

60

• Surface-based deformation– Energy minimization– Multiresolution editing– Differential coordinates

• Space deformation– Freeform deformation– Energy minimization

• Linear vs. nonlinear methods

Page 61: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

• Mesh deformation by displacement function d– Interpolate prescribed constraints– Smooth, intuitive deformationPhysically-based principles

Space Deformation

d (pi) = di

61

p → p + d(p)

d : IR3 → IR3

Page 62: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Volumetric Energy Minimization

• Minimize similar energies to surface case

• But displacements function lives in 3D...– Need a volumetric space tessellation?– No, same functionality provided by RBFs

62

IR3duu2 + duv2 + . . . + dww2 dV → min

Page 63: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Radial Basis Functions

• Represent deformation by RBFs

• Triharmonic basis function– C2 boundary constraints– Highly smooth / fair interpolation

63

d (x) =!

j

wj · ! (!cj " x!) + p (x)

! (r) = r3

IR3duuu2 + dvuu2 + . . . + dwww2 du dv dw → min

Page 64: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

RBF Fitting

• Represent deformation by RBFs

• RBF fitting– Interpolate displacement constraints– Solve linear system for wj and p

64

d (x) =!

j

wj · ! (!cj " x!) + p (x)

Page 65: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

RBF Fitting

• Represent deformation by RBFs

• RBF evaluation– Function d transforms points– Jacobian ∇d transforms normals– Precompute basis functions– Evaluate on the GPU!

65

d (x) =!

j

wj · ! (!cj " x!) + p (x)

Page 66: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

RBF Deformation

66

1M vertices

Page 67: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

“Bad Meshes”

• 3M triangles• 10k components• Not oriented• Not manifold

67

Page 68: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Overview

68

• Surface-based deformation– Energy minimization– Multiresolution editing– Differential coordinates

• Space deformation– Freeform deformation– Energy minimization

• Linear vs. nonlinear methods

Page 69: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Comparison

69

NonlinearOriginal Bending Min. Gradient

Page 70: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Linear vs. Nonlinear

70

[Botsch & Sorkine, TVCG 08]

• Analyze existing methods– Some work for translations– Some work for rotations– No method works for both

Page 71: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

GradientBending Min.

Linear vs. Nonlinear

71

Nonlinear

Page 72: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Nonlinear Deformation?

72

• Sounds easy: “Just donʼt linearize.”

• Not so easy though...– Solve nonlinear problems (Newton, Gauss-Newton)– No convergence guarantees– Robustness issues– Considerably slower

Page 73: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Subspace Gradient Domain Mesh Deformation

• Nonlinear Laplacian coordinates

• Least squares solution on coarse cage subspace

73[Huang et al, SIGGRAPH 06]

Page 74: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Mesh Puppetry

• Skeletons and Laplacian coordinates

• Cascading optimization

74[Shi et al, SIGGRAPH 07]

Page 75: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

PriMo: Coupled Prisms for Intuitive Surface Modeling

75[Botsch et al, SGP 06]

• Nonlinear shell-like energy

• Rigid cells ensure robustness

• Hierarchical solver

Page 76: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

PriMo: Coupled Prisms for Intuitive Surface Modeling

76[Botsch et al, SGP 06]

• Nonlinear shell-like energy

• Rigid cells ensure robustness

• Hierarchical solver

Page 77: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Adaptive Space DeformationBased on Rigid Cells

• Nonlinear elastic energy for solids and shells

• Rigid cells ensure robustness

• Dynamic, adaptive discretization

77[Botsch et al, Eurographics 07]

Page 78: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Embedded Deformations

• As-rigid-as-possible space deformation

• Coarse deformation graph

78[Sumner et al, SIGGRAPH 07]

Page 79: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Overview

79

• Surface-based deformation– Energy minimization– Multiresolution editing– Differential coordinates

• Space deformation– Freeform deformation– Energy minimization

• Linear vs. nonlinear methods

Page 80: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Summary

80

vs.

Differential Coords• Designed for large

rotations

• Problems with translations

• How to determine local rotations?

Bending Energy• Precise control of

continuity

• Requires multi-resolution hierarchy

• Problems with large rotations

Page 81: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Summary

81

vs.

Space Deformation– Doesnʼt know about

embedded surface

+ Works for complex and “bad” input

Surface-Based+ More precise control

of surface properties

– Depends on surface complexity & quality

Page 82: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Summary

82

vs.

Nonlinear– Numerically much

more complex

+ Easier edits, fewer constraints

Linear+ Highly efficient &

numerically robust

– Many constraints for large-scale edits

Page 83: 2EMOVALOFTOPOLOGICALANDGEOMETRICALERRORS  · PDF file · 2015-09-28Mario Botsch Mesh Deformation Global deformation with intuitive detail preservation 2

Mario Botsch

Overview

83

• Surface-based deformation– Energy minimization– Multiresolution editing– Differential coordinates

• Space deformation– Freeform deformation– Energy minimization

• Linear vs. nonlinear methods