olga sorkine, tu berlin, 2007 1 cg 11 as-rigid-as-possible surface modeling olga sorkine marc alexa...
TRANSCRIPT
Olga Sorkine, TU Berlin, 2007 1
CG
11
As-Rigid-As-Possible Surface Modeling
Olga Sorkine Marc Alexa
TU Berlin
Olga Sorkine, TU Berlin, 2007 2
CG
22
Surface deformation – motivation
Interactive shape modeling• Digital content creation• Scanned data
Modeling is an interactive, iterative process• Tools need to be intuitive
(interface and outcome)• Allow quick experimentation
Olga Sorkine, TU Berlin, 2007 3
CG
33
What do we expect from surface deformation?
Smooth effect on the large scale As-rigid-as-possible effect on the small scale
(preserves details)
Olga Sorkine, TU Berlin, 2007 4
CG
44
Previous work
FFD (space deformation)• Lattice-based (Sederberg & Parry 86, Coquillart 90,
…)• Curve-/handle-based (Singh & Fiume 98, Botsch et al. 05,
…)• Cage-based (Ju et al. 05, Joshi et al. 07, Kopf et al.
07) Pros:
• efficiency almost independent of the surface resolution • possible reuse
Cons:• space warp, so can’t precisely control surface properties
images taken from [Sederberg and Parry 86] and [Ju et al. 05]
Olga Sorkine, TU Berlin, 2007 5
CG
55
Previous work
Surface-based approaches• Multiresolution modeling
Zorin et al. 97, Kobbelt et al. 98, Lee 98, Guskov et al. 99, Botsch and Kobbelt 04, …
• Differential coordinates – linear optimization Lipman et al. 04, Sorkine et al. 04, Yu et al. 04, Lipman et al. 05, Zayer et al. 05, Botsch et al. 06, Fu et al. 06, …
• Non-linear global optimization approachesKraevoy & Sheffer 04, Sumner et al. 05, Hunag et al. 06, Au et al. 06, Botsch et al. 06, Shi et al. 07, …
“On Linear Variational Surface Deformation Methods”M. Botsch and O. Sorkineto appear at IEEE TVCG
“On Linear Variational Surface Deformation Methods”M. Botsch and O. Sorkineto appear at IEEE TVCG
NEW!
images taken from PriMo, Botsch et al. 06
Olga Sorkine, TU Berlin, 2007 6
CG
66
Surface-based approaches
Pros:• direct interaction with the surface• control over surface properties
Cons:• linear optimization suffers from artifacts (e.g. translation
insensitivity)• non-linear optimization is more expensive and non-trivial to
implement
Olga Sorkine, TU Berlin, 2007 7
CG
77
Direct ARAP modeling
Preserve shape of cells covering the surface• Cells should overlap to prevent shearing at the
cells boundaries• Equally-sized cells, or compensate for varying
size
Olga Sorkine, TU Berlin, 2007 8
CG
88
Direct ARAP modeling
Let’s look at cells on a mesh
Olga Sorkine, TU Berlin, 2007 9
CG
99
Cell deformation energy
Ask all star edges to transform rigidly by some rotation R, then the shape of the cell is preserved
vi vj1
vj2
2
( )
min ( ) ( )i j i i jj N i
R
v v v v
Olga Sorkine, TU Berlin, 2007 10
CG
1010
Cell deformation energy
If v, v׳ are known then Ri is uniquely defined
So-called shape matching problem• Build covariance matrix S = VV׳T
• SVD: S = UWT
• Ri = UWT (or use [Horn 87])
vi vj1
vj2v׳i v׳j1
v׳j2
Ri
Ri is a non-linear function of v׳Ri is a non-linear function of v׳
Olga Sorkine, TU Berlin, 2007 11
CG
1111
2
1 ( )
min ( ) ( )n
i j i i ji j N i
R
v
v v v v
. . ,j js t j C v c
Total deformation energy
Can formulate overall energy of the deformation:
We will treat v׳ and R as separate sets of variables, to enable a simple optimization process
Olga Sorkine, TU Berlin, 2007 12
CG
1212
Energy minimization
Alternating iterations• Given initial guess v ׳
0 , find optimal rotations Ri– This is a per-cell task! We already showed how to
define Ri when v, v׳ are known
• Given the Ri (fixed), minimize the energy by finding new v׳
2
1 ( )
min ( ) ( )n
i j i i ji j N i
R
v
v v v v
Olga Sorkine, TU Berlin, 2007 13
CG
1313
Energy minimization
Alternating iterations• Given initial guess v ׳
0 , find optimal rotations Ri– This is a per-cell task! We already showed how to
define Ri when v, v׳ are known
• Given the Ri (fixed), minimize the energy by finding new v׳
L v b
Uniform mesh Laplacian
Olga Sorkine, TU Berlin, 2007 14
CG
1414
The advantage
Each iteration decreases the energy (or at least guarantees not to increase it)
The matrix L stays fixed• Precompute Cholesky factorization• Just back-substitute in each iteration (+ the
SVD computations)
L v b
Olga Sorkine, TU Berlin, 2007 15
CG
1515
First results
Non-symmetric results
Olga Sorkine, TU Berlin, 2007 16
CG
1616
Need appropriate weighting
The problem: lack of compensation for varying shapes of the 1-ring
2
( )
( ) ( )cell i j i i jj N i
E R
v v v v
Olga Sorkine, TU Berlin, 2007 17
CG
1717
Need appropriate weighting
Add cotangent weights [Pinkall and Polthier 93]:
Reformulate Ri optimization to include the weights (weighted covariance matrix)
2
( )
( ) ( )cell ij i j i i jj N i
E w R
v v v v
vi
vj
ij
ij
1cot α cot β
2ij ij ijw
Olga Sorkine, TU Berlin, 2007 18
CG
1818
Weighted energyminimization results
This gives symmetric results
n
i iNjjiijiijtotal RwE
1 )(
2)()( vvvv
Olga Sorkine, TU Berlin, 2007 19
CG
1919
Initial guess
Can start from naïve Laplacian editing as initial guess and iterate
initial guess 1 iteration 2 iterations
1 iterations 4 iterationsinitial guess
Olga Sorkine, TU Berlin, 2007 20
CG
2020
Initial guess
Faster convergence when we start from the previous frame (suitable for interactive manipulation)
Olga Sorkine, TU Berlin, 2007 21
CG
2121
Some more results
Demo
Olga Sorkine, TU Berlin, 2007 22
CG
2222
Discussion
Works fine on small meshes• fast propagation of rotations across the mesh
On larger meshes: slow convergence• slow rotation propagation
A multi-res strategy will help• e.g., as in Mean-Value Pyramid Coordinates
[Kraevoy and Sheffer 05] or in PriMo [Botsch et al. 06]
Olga Sorkine, TU Berlin, 2007 23
CG
2323
More discussion
Our technique is good for preserving edge length (relative error is very small)
No notion of volume, however• “thin shells for the poor”?
Can easily extend to volumetric meshes
Olga Sorkine, TU Berlin, 2007 24
CG
2424
Conclusions and future work
Simple formulation of as-rigid-as-possible surface-based deformation
Iterations are guaranteed to reduce the energy Uses the same machinery as Laplacian editing,
very easy to implement No parameters except number of iterations per
frame (can be set based on target frame rate)
Is it possible to find better weights? Modeling different materials – varying rigidity
across the surface
Olga Sorkine, TU Berlin, 2007 25
CG
2525
Acknowledgement
Alexander von Humboldt Foundation
Leif Kobbelt and Mario Botsch SGP Reviewers
Olga Sorkine, TU Berlin, 2007 26
CG
2626
Thank you!
Olga [email protected]
m
Marc [email protected]
berlin.de