37
PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH Aachen

PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

  • Upload
    others

  • View
    13

  • Download
    0

Embed Size (px)

Citation preview

Page 1: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

PriMo: Coupled Prisms for

Intuitive Surface Modeling

1

Mario Botsch, Mark Pauly, Markus Gross

ETH Zurich

Leif Kobbelt

RWTH Aachen

Page 2: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

Surface Deformation

• Requirements– Easy and intuitive user interaction

– Large-scale deformations

– Robustness

– Efficiency

2

Page 3: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

Surface Deformation

• Recent methods focus more on efficiency– Real-time deformations of large models

• Requires linearization– Problems with large deformations

• Split large deformations– Specify more constraints

– More user guidance required

3

Page 4: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

Linear Techniques

4

Original VarMin Grad

Page 5: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

Non-Linear Surface Deformation

• Use a non-linear deformation model– Too slow, complicated, instable?

• Physically plausible vs. physically correct

• Trade physical correctness for

– Computational efficiency

– Numerical robustness

5

Page 6: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

Comparison

6

Original VarMin Grad PriMo

Page 7: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

Outline

• Motivation

• Prism Representation

• Geometric Optimization

• Results

7

Page 8: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

• Qualitatively emulate thin-shell behavior

• Thin volumetric layer around center surface

• Extrude polygonal prism Pi per mesh face Fi

Elastically Connected Rigid Prisms

8

Page 9: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

• How to deform prisms?– FEM has problems if elements degenerate...

• Prevent prisms from degenerating➡ Keep them rigid

Elastically Connected Rigid Prisms

9

Page 10: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

• Connect prisms along their faces– Non-linear elastic energy

– Measures bending, stretching, twisting, ...

Elastically Connected Rigid Prisms

10

Page 11: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

Elastically Connected Rigid Prisms

11

• Pairwise prism energy

Eij =

!

[0,1]2

"

"fi!j(u) ! f

j!i(u)"

"

2du

Pi

Pj

fi!j(u)

fj!i(u)

Page 12: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

Physical Interpretation

12

Pi

Pj

disc

retiz

e

Pi

Pj

Eij =

!

[0,1]2

"

"fi!j(u) ! f

j!i(u)"

"

2du

Sum of spring energies

Integral over infinitesimal spring fibres

Eij !

!

k

"

"

"

fi!j

k " fj!i

k

"

"

"

2

Page 13: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

Elastically Connected Rigid Prisms

13

• Pairwise prism energy

• Global energy

Eij =

!

[0,1]2

"

"fi!j(u) ! f

j!i(u)"

"

2du

E =

!

{i,j}

wij · Eij , wij =!eij!

2

|Fi| + |Fj |Fj

Fi

Pi

Pj

fi!j(u)

fj!i(u)

Page 14: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

Prism-Based Surface Deformation

14

1. Prescribes position/orientation for prisms

2. Find optimal rigid motions per prism

3. Update vertices by average prism transformations

Page 15: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

Outline

• Motivation

• Prism Representation

• Geometric Optimization

• Results

15

Page 16: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

• Find rigid motion (Ri, ti) per prism Pi

Non-Linear Minimization

16

min{Ri, ti}

!

{i,j}

wij

"

[0,1]2

#

#Ri fi!j(u) + ti ! Rj f

j!i(u) ! tj

#

#

2du

Pi

Pj

fi!j(u)

fj!i(u)

Page 17: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

Continuous Shape Matching

17

min{Ri, ti}

!

{i,j}

wij

"

[0,1]2

#

#Ri fi!j(u) + ti ! Rj f

j!i(u) ! tj

#

#

2du

Pi

Pj

min{Ri, ti}

!

{i,j}

wij

!

k

"

"

"

Ri fi!j

k + ti ! Rj fj!i

k ! tj

"

"

"

2

du

disc

retiz

e

Pi

Pj

Page 18: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

• Find rigid motion (Ri, ti) per prism Pi

• Generalized shape matching problem

– Discrete point correspondences vs. continuous face correspondences

➡ Adapt techniques for point-set registration

Non-Linear Minimization

18

min{Ri, ti}

!

{i,j}

wij

"

[0,1]2

#

#Ri fi!j(u) + ti ! Rj f

j!i(u) ! tj

#

#

2du

Page 19: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

Iterated Local Shape Matching

• Iterate this:– Randomly pick one prism

– Optimize its position/orientation [Horn87]

• Corresponds to error diffusion– Rapidly removes high error frequencies

– Impractically slow convergence

19

minRi, ti

!

j!Ni

wij

"

[0,1]2

#

#Ri fi"j(u) + ti ! f

j"i(u)#

#

2du

Page 20: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

Global Shape Matching [Pottmann 04]

• First order approx. of rigid motions

• Quadratic minimization wrt. velocities

• Yields affine motion Ai per prism

– Project to manifold of rigid motions

20

Ri (·) + ti ! (·) + !i " (·) + vi =: Ai (·)

min{vi, !i}

!

{i,j}

wij

"

[0,1]2

#

#Ai

$

fi!j(u)

%

! Aj

$

fj!i(u)

%#

#

2du

Page 21: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

Global Shape Matching

• Find “closest” rigid motion– Measure distance of transformations’ images

– Another local shape matching

• Larger steps, fewer iterations– Factor 50 faster than [Pottmann02]

21

Pi

Ri P

i + ti

Ai(Pi)

Page 22: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

Global Shape Matching

22

while not converged

{

find optimal velocities [vi,wi]

∀i: (Ri,ti) = project(vi,wi)

∀i: Pi = Ri*Pi + ti

}

Performance: ~7k prism updates per second

Page 23: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

Hierarchical Shape Matching

• Local and global matching alone don’t work– Slow convergence of local matching

– High complexity of global matching

• Hierarchical multi-grid matching– Solve global matching on coarse level

– Apply local matching on finer levels

23

Page 24: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

24

Robustness

Page 25: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

Robustness

25

Page 26: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

Outline

• Motivation

• Prism Representation

• Geometric Optimization

• Results

26

Page 27: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

PriMoRotInvGradRBFVarMin

Dragon Deformation

27

Page 28: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

28

Prism Parameters

Original Height Width Angle-- Angle++

Page 29: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

29

Stiffness Control

Height

Width

Angle++

Angle--

Page 30: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

30

Control Surface Area

Height

Width

Angle++

Angle--

Page 31: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

31

Non-Shrinking Smoothing

Height

Width

Angle++

Angle--

Page 32: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

32

Detail Enhancement

Height

Width

Angle++

Angle--

Page 33: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

Force-Based Deformation

33

• Separately prescribe – positions and/or

– orientations

• Forces can be more intuitive– Physically intuitive

– Constraints = high forces

• Incorporate forces– Just another spring energy

Page 34: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

Force-Based Deformation

34

Page 35: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

Goblin Posing

35

Page 36: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

• Decreased stiffness at joints

• Forces & hard constraints

• 180k triangles at about 1 fps

• Whole session < 5 min

Goblin Posing

36

Page 37: PriMo: Coupled Prisms for Intuitive Surface Modeling · PriMo: Coupled Prisms for Intuitive Surface Modeling 1 Mario Botsch, Mark Pauly, Markus Gross ETH Zurich Leif Kobbelt RWTH

Conclusion

37

• Non-linear surface deformation model– Physically plausible

– Intuitive parameters for surface behavior

– Constraint-based and force-based

• Hierarchical shape matching– Extremely robust

– Reasonably efficient

– Easy implementation