![Page 1: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/1.jpg)
Algorithms and Interfaces for Real-Time Deformation of 2D and 3D Shapes
Alec Jacobson ETH Zurich
June 9, 2013
![Page 2: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/2.jpg)
# June 9, 2013 Alec Jacobson 2
skinning deformation modeling in Maya 3d printing
analysis and manipulation creation consumption
Deformation is an important phase in the life of a shape
Image courtesy Romain Prévost
![Page 3: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/3.jpg)
# June 9, 2013 Alec Jacobson 3
skinning deformation modeling in Maya 3d printing
analysis and manipulation creation consumption
Deformation is an important phase in the life of a shape
Image courtesy Romain Prévost
![Page 4: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/4.jpg)
# June 9, 2013 Alec Jacobson 4
procedural constraints
User constraints drive deformation toward goal
explicit constraints
![Page 5: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/5.jpg)
# June 9, 2013 Alec Jacobson 5
procedural constraints
User constraints drive deformation toward goal
explicit constraints
![Page 6: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/6.jpg)
# June 9, 2013 Alec Jacobson 6
procedural constraints
User constraints drive deformation toward goal
explicit constraints
![Page 7: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/7.jpg)
#
Deformation applies to images as planar shapes
June 9, 2013 Alec Jacobson 7
non-convex “cut-out” cartoons
entire image rectangle
![Page 8: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/8.jpg)
#
Deformation applies to images as planar shapes
June 9, 2013 Alec Jacobson 8
non-convex “cut-out” cartoons
entire image rectangle
![Page 9: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/9.jpg)
# June 9, 2013 Alec Jacobson 9
2D 3D
Real-time performance critical for interactive design and animation
![Page 10: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/10.jpg)
# June 9, 2013 Alec Jacobson 10
2D 3D
Real-time performance critical for interactive design and animation
![Page 11: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/11.jpg)
#
Real-time performance critical for interactive design and animation
June 9, 2013 Alec Jacobson 11
![Page 12: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/12.jpg)
#
Many previous techniques provide quality, but not speed
June 9, 2013 Alec Jacobson 12
high-quality solutions to nonlinear elasticity energy minimizations: ~seconds e.g. [Botsch et al. 2006]
physically accurate muscle systems require off-line simulation e.g. [Teran et al. 2005]
Image courtesy Joseph Teran
![Page 13: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/13.jpg)
#
Other techniques limit user interface
June 9, 2013 Alec Jacobson 13
![Page 14: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/14.jpg)
#
Other techniques limit user interface
June 9, 2013 Alec Jacobson 14
e.g. [Ju et al. 2005]
![Page 15: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/15.jpg)
#
Other techniques limit user interface
June 9, 2013 Alec Jacobson 15
![Page 16: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/16.jpg)
#
Other techniques limit user interface
June 9, 2013 Alec Jacobson 16
![Page 17: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/17.jpg)
#
Other techniques limit user interface
June 9, 2013 Alec Jacobson 17
![Page 18: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/18.jpg)
#
Each handle type has a specific task, more than just different modeling metaphor
June 9, 2013 Alec Jacobson 18
![Page 19: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/19.jpg)
#
Each handle type has a specific task, more than just different modeling metaphor
June 9, 2013 Alec Jacobson 19
![Page 20: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/20.jpg)
#
Each handle type has a specific task, more than just different modeling metaphor
June 9, 2013 Alec Jacobson 20
![Page 21: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/21.jpg)
# June 9, 2013 Alec Jacobson 21
Real-time applications deserve ample interfaces and high-quality deformations
SGP 2010 SIGGRAPH 2011 SGP 2012
![Page 22: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/22.jpg)
# June 9, 2013 Alec Jacobson 22
Real-time applications deserve ample interfaces and high-quality deformations
SIGGRAPH Asia 2011
SGP 2010 SIGGRAPH 2011 SGP 2012
![Page 23: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/23.jpg)
# June 9, 2013 Alec Jacobson 23
Real-time applications deserve ample interfaces and high-quality deformations
SIGGRAPH Asia 2011
SGP 2010 SIGGRAPH 2011 SGP 2012
SIGGRAPH 2012
![Page 24: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/24.jpg)
# June 9, 2013 Alec Jacobson 24
Real-time applications deserve ample interfaces and high-quality deformations
SIGGRAPH Asia 2011
SGP 2010 SIGGRAPH 2011 SGP 2012
SIGGRAPH 2012 SIGGRAPH 2013
![Page 25: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/25.jpg)
# June 9, 2013 Alec Jacobson 25
Real-time applications deserve ample interfaces and high-quality deformations
SIGGRAPH Asia 2011
SGP 2010 SIGGRAPH 2011 SGP 2012
SIGGRAPH 2012 SIGGRAPH 2013
![Page 26: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/26.jpg)
# June 9, 2013 Alec Jacobson
load shape
Linear Blend Skinning has known artifacts but makes up in real-time performance
26
![Page 27: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/27.jpg)
#
Linear Blend Skinning has known artifacts but makes up in real-time performance
June 9, 2013 Alec Jacobson
load shape place handles
27
![Page 28: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/28.jpg)
# June 9, 2013 Alec Jacobson
load shape place handles
Linear Blend Skinning has known artifacts but makes up in real-time performance
define weights (bind time)
28
![Page 29: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/29.jpg)
# June 9, 2013 Alec Jacobson
load shape place handles define weights
(bind time) deform shape (pose time)
Linear Blend Skinning has known artifacts but makes up in real-time performance
29
![Page 30: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/30.jpg)
# June 9, 2013 Alec Jacobson
load shape place handles
Linear Blend Skinning has known artifacts but makes up in real-time performance
define weights (bind time)
30
Tjwj
![Page 31: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/31.jpg)
#
Warping and deformation tasks require different user interactions
Alec Jacobson
points skeletons cages
June 9, 2013 31
![Page 32: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/32.jpg)
#
Weights should be smooth, shape-aware, positive and intuitive
June 9, 2013 Alec Jacobson 32
![Page 33: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/33.jpg)
#
Weights should be smooth, shape-aware, positive and intuitive
June 9, 2013 Alec Jacobson 33
![Page 34: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/34.jpg)
#
Weights must be smooth everywhere, especially at handles
June 9, 2013 Alec Jacobson 34
our method [SIGGRAPH 2011]
extension of Harmonic Coordinates [Joshi et al. 2005]
![Page 35: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/35.jpg)
#
Weights must be smooth everywhere, especially at handles
June 9, 2013 Alec Jacobson 35
our method [SIGGRAPH 2011]
extension of Harmonic Coordinates [Joshi et al. 2005]
![Page 36: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/36.jpg)
# June 9, 2013 Alec Jacobson 36
Weights must be smooth everywhere, especially at handles
our method [SIGGRAPH 2011]
extension of Harmonic Coordinates [Joshi et al. 2005]
![Page 37: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/37.jpg)
#
Shape-awareness ensures respect of domain’s features
June 9, 2013 Alec Jacobson 37
our method non-shape-aware methods e.g. [Schaefer et al. 2006]
![Page 38: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/38.jpg)
# June 9, 2013 Alec Jacobson 38
our method non-shape-aware methods e.g. [Schaefer et al. 2006]
Shape-awareness ensures respect of domain’s features
![Page 39: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/39.jpg)
#
Non-negative weights are mandatory
June 9, 2013 Alec Jacobson 39
our method
unconstrained biharmonic [Botsch & Kobbelt 2004]
![Page 40: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/40.jpg)
#
Non-negative weights are mandatory
June 9, 2013 Alec Jacobson 40
our method
unconstrained biharmonic [Botsch & Kobbelt 2004]
![Page 41: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/41.jpg)
#
unconstrained ext. of [Botsch & Kobbelt 2004]
June 9, 2013 Alec Jacobson 41
local max
local min
Spurious extrema cause distracting artifacts
![Page 42: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/42.jpg)
#
bounded [SIGGRAPH 2011]
June 9, 2013 Alec Jacobson 42
local max
local min
Spurious extrema cause distracting artifacts
![Page 43: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/43.jpg)
# June 9, 2013 Alec Jacobson 43
local max
local min
We explicitly prohibit spurious extrema our improved [SGP 2012]
![Page 44: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/44.jpg)
#
Constrained optimization ensures satisfaction of all properties
June 9, 2013 Alec Jacobson 44
+ shape-aware
ext. of [Botsch & Kobbelt 2004]
argminwj , j=1,...,m
mX
j=1
kLwjk2
![Page 45: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/45.jpg)
#
Constrained optimization ensures satisfaction of all properties
June 9, 2013 Alec Jacobson 45
+ shape-aware + smoothness + mesh independence
[SGP 2010]
argminwj , j=1,...,m
mX
j=1
Z
⌦(�wj)
2 dV
![Page 46: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/46.jpg)
#
Constrained optimization ensures satisfaction of all properties
June 9, 2013 Alec Jacobson 46
+ shape-aware + smoothness + mesh independence+ non-negativity + locality + arbitrary handles
0 wj 1, j = 1, . . . ,m[SIGGRAPH 2011]
argminwj , j=1,...,m
mX
j=1
Z
⌦(�wj)
2 dV
![Page 47: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/47.jpg)
#
Constrained optimization ensures satisfaction of all properties
June 9, 2013 Alec Jacobson 47
+ shape-aware + smoothness + mesh independence+ non-negativity + locality + arbitrary handles + monotonicity
[SGP 2012]
argminwj , j=1,...,m
mX
j=1
Z
⌦(�wj)
2 dV
rwj ·ruj > 0, j = 1, . . . ,m
![Page 48: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/48.jpg)
# June 9, 2013 Alec Jacobson 48
Weights in 3D retain nice properties
Demo
![Page 49: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/49.jpg)
# June 9, 2013 Alec Jacobson 49
Weights in 3D retain nice properties
Demo
![Page 50: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/50.jpg)
#
Variational formulation allows additional, problem-specific constraints
June 9, 2013 Alec Jacobson 50
![Page 51: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/51.jpg)
#
Variational formulation allows additional, problem-specific constraints
June 9, 2013 Alec Jacobson 51
![Page 52: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/52.jpg)
# June 9, 2013 Alec Jacobson 52
Linear blending subspace is still too small
![Page 53: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/53.jpg)
# June 9, 2013 Alec Jacobson 53
Linear blend skinning etc. are not rich enough to stretch and twist along bones
LBS our extension [SIGGRAPH Asia 2011]
![Page 54: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/54.jpg)
# June 9, 2013 Alec Jacobson 54
Linear blend skinning etc. are not rich enough to stretch and twist along bones
LBS our extension [SIGGRAPH Asia 2011]
![Page 55: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/55.jpg)
#
Second set of our weights expands skinning subspace
June 9, 2013 Alec Jacobson 55
![Page 56: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/56.jpg)
#
Stretching facilitates exaggeration, a basic principle of life-like animation
June 9, 2013 Alec Jacobson 56
![Page 57: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/57.jpg)
#
Stretching facilitates exaggeration, a basic principle of life-like animation
June 9, 2013 Alec Jacobson 57
![Page 58: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/58.jpg)
#
Good weights alone aren’t enough to guarantee intuitive results
June 9, 2013 Alec Jacobson 58 pseudo-edges [SIGGRAPH 2011] our improved method [SIGGRAPH 2012]
![Page 59: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/59.jpg)
#
Good weights alone aren’t enough to guarantee intuitive results
June 9, 2013 Alec Jacobson 59 pseudo-edges [SIGGRAPH 2011] our improved method [SIGGRAPH 2012]
![Page 60: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/60.jpg)
#
Good weights alone aren’t enough to guarantee intuitive results
June 9, 2013 Alec Jacobson 60 pseudo-edges [SIGGRAPH 2011] our improved method [SIGGRAPH 2012]
![Page 61: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/61.jpg)
#
Many previous techniques provide quality, but not speed
June 9, 2013 Alec Jacobson 61
high-quality solutions to nonlinear elasticity energy minimizations: ~seconds e.g. [Botsch et al. 2006]
physically accurate muscle systems require off-line simulation e.g. [Teran et al. 2005]
Image courtesy Joseph Teran
![Page 62: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/62.jpg)
#
Other reduced models employ skinning, but still too slow
June 9, 2013 Alec Jacobson 62
significant performance tuning, but grid determines complexity ~milliseconds e.g. [McAdams et al. 2011]
needs examples, choice of energy complicates per-frame computation ~milliseconds e.g. [Der et al. 2006]
![Page 63: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/63.jpg)
# June 9, 2013 Alec Jacobson 63
We achieve speeds measured in microseconds
80k triangles 20µs per iteration
![Page 64: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/64.jpg)
# June 9, 2013 Alec Jacobson 64
We achieve speeds measured in microseconds
80k triangles 20µs per iteration
![Page 65: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/65.jpg)
# June 9, 2013 Alec Jacobson 65
We achieve speeds measured in microseconds
80k triangles 20µs per iteration
![Page 66: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/66.jpg)
# June 9, 2013 Alec Jacobson 66
We achieve speeds measured in microseconds
80k triangles 20µs per iteration
![Page 67: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/67.jpg)
#
This means speed comparable to rendering
June 9, 2013 Alec Jacobson 67 30fps
![Page 68: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/68.jpg)
#
This means speed comparable to rendering
June 9, 2013 Alec Jacobson 68 30fps
![Page 69: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/69.jpg)
#
User specifies subset of parameters, optimize to find remaining ones
June 9, 2013 Alec Jacobson 69
full optimization
mesh vertex positions
![Page 70: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/70.jpg)
#
User specifies subset of parameters, optimize to find remaining ones
June 9, 2013 Alec Jacobson 70
full optimization
reduced model
skinning degrees of freedom
![Page 71: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/71.jpg)
#
User specifies subset of parameters, optimize to find remaining ones
June 9, 2013 Alec Jacobson 71
full optimization
reduced model
matrix form
![Page 72: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/72.jpg)
#
User specifies subset of parameters, optimize to find remaining ones
June 9, 2013 Alec Jacobson 72
full optimization
reduced model
matrix form
reduced optimization
![Page 73: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/73.jpg)
#
Enforce user constraints as linear equalities
June 9, 2013 Alec Jacobson 73
user constraints
reduced optimization
full
position only
unconstrained
![Page 74: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/74.jpg)
#
Enforce user constraints as linear equalities
June 9, 2013 Alec Jacobson 74
user constraints
reduced optimization
full
position only
unconstrained
![Page 75: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/75.jpg)
#
We reduce any as-rigid-as-possible energy
June 9, 2013 Alec Jacobson 75
full energies
![Page 76: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/76.jpg)
#
We reduce any as-rigid-as-possible energy
June 9, 2013 Alec Jacobson 76
full energies
triangles [Liu et al. 2008]
“spokes” [Sorkine & Alexa 2007]
“spokes and rims” [Chao et al. 2010]
tetrahedra [Chao et al. 2010]
![Page 77: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/77.jpg)
#
global step: fix , minimize with respect to
We reduce any as-rigid-as-possible energy
June 9, 2013 Alec Jacobson 77
full energies
V0R
local step: fix , minimize with respect to RV0
local/global optimization
![Page 78: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/78.jpg)
#
global step: large, sparse linear solve
We reduce any as-rigid-as-possible energy
June 9, 2013 Alec Jacobson 78
full energies
local step: fix , minimize with respect to RV0
local/global optimization
V0 = A�1b
precompute
![Page 79: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/79.jpg)
#
We reduce any as-rigid-as-possible energy
June 9, 2013 Alec Jacobson 79
full energies
local step: 3x3 SVD for each rotation in R
local/global optimization
global step: large, sparse linear solve V0 = A�1b
![Page 80: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/80.jpg)
#
global step: small, dense linear solve
We reduce any as-rigid-as-possible energy
June 9, 2013 Alec Jacobson 80
full energies
local step: 3x3 SVD for each rotation in R
local/global optimization precompute
similar to: [Huang et al. 06] [Der et al. 06] [Au et al. 07] [Hildebrandt et al. 12]
substitute
T = A�1b
![Page 81: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/81.jpg)
#
Direct reduction of elastic energies brings speed up and regularization…
June 9, 2013 Alec Jacobson 81
![Page 82: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/82.jpg)
#
Direct reduction of elastic energies brings speed up and regularization…
June 9, 2013 Alec Jacobson 82
full ARAP solution
![Page 83: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/83.jpg)
#
Direct reduction of elastic energies brings speed up and regularization…
June 9, 2013 Alec Jacobson 83
full ARAP solution
our smooth subspace solution
![Page 84: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/84.jpg)
#
local step: 3x3 SVD for each rotation in
global step: small, dense linear solve
We reduce any as-rigid-as-possible energy
June 9, 2013
but #rotations ~ full mesh discretization
Alec Jacobson 84
full energies
local/global optimization
substitute
R
T = A�1b
![Page 85: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/85.jpg)
#
local step: 3x3 SVD for each rotation in
global step: small, dense linear solve
local/global optimization
substitute
R
T = A�1b
We reduce any as-rigid-as-possible energy
June 9, 2013 Alec Jacobson 85
full energies
Cluster
Ek
![Page 86: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/86.jpg)
#
Rotation evaluations may be reduced by clustering in weight space
June 9, 2013 Alec Jacobson 86
full energies
triangles [Liu et al. 2008]
“spokes” [Sorkine & Alexa 2007]
“spokes and rims” [Chao et al. 2010]
tetrahedra [Chao et al. 2010]
![Page 87: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/87.jpg)
#
Rotation evaluations may be reduced by k-means clustering in weight space
June 9, 2013 Alec Jacobson 87
full energies
xj =
2
6664
w1(vj)w2(vj)
...wm(vj)
3
7775
weight space
![Page 88: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/88.jpg)
#
Rotation evaluations may be reduced by clustering in weight space
June 9, 2013 Alec Jacobson 88
full energies
![Page 89: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/89.jpg)
#
Rotation evaluations may be reduced by clustering in weight space
June 9, 2013 Alec Jacobson 89
full energies
r = 2 r = 4 r = 64
![Page 90: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/90.jpg)
#
#rotations ~ #T, independent of full mesh resolution
local step: 3x3 SVD for each rotation in
global step: small, dense linear solve
local/global optimization
substitute
R
T = A�1b
We reduce any as-rigid-as-possible energy
June 9, 2013 Alec Jacobson 90
full energies
Cluster
Ek
![Page 91: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/91.jpg)
#
With more and more user constraints we fall back to standard skinning
June 9, 2013 Alec Jacobson 91
![Page 92: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/92.jpg)
#
With more and more user constraints we fall back to standard skinning
June 9, 2013 Alec Jacobson 92
![Page 93: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/93.jpg)
#
With more and more user constraints we fall back to standard skinning
June 9, 2013 Alec Jacobson 93
![Page 94: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/94.jpg)
#
no extra weights
Extra weights expand deformation subspace
June 9, 2013 Alec Jacobson 94
15 extra weights
![Page 95: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/95.jpg)
#
no extra weights
Extra weights expand deformation subspace
June 9, 2013 Alec Jacobson 95
15 extra weights
![Page 96: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/96.jpg)
#
Subspace now rich enough for fast variational modeling
June 9, 2013 Alec Jacobson 96 full non-linear optimization
[Botsch et al. 2006]
our reduced method
![Page 97: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/97.jpg)
#
Subspace now rich enough for fast variational modeling
June 9, 2013 Alec Jacobson 97 full non-linear optimization
[Botsch et al. 2006]
our reduced method
![Page 98: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/98.jpg)
#
Subspace now rich enough for fast variational modeling
June 9, 2013 Alec Jacobson 98 full non-linear optimization
[Botsch et al. 2006]
our reduced method
![Page 99: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/99.jpg)
#
Subspace now rich enough for fast variational modeling
June 9, 2013 Alec Jacobson 99 full non-linear optimization
[Botsch et al. 2006]
our reduced method
![Page 100: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/100.jpg)
#
Subspace now rich enough for fast variational modeling
June 9, 2013 Alec Jacobson 100 full non-linear optimization
[Botsch et al. 2006]
our reduced method
![Page 101: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/101.jpg)
#
Subspace now rich enough for fast variational modeling
June 9, 2013 Alec Jacobson 101 full non-linear optimization
[Botsch et al. 2006]
our reduced method
![Page 102: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/102.jpg)
#
Extra weights and disjoint skeletons make flexible control easy
June 9, 2013 Alec Jacobson 102
From Cartoon Animation by Preston Blair
![Page 103: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/103.jpg)
# June 9, 2013 Alec Jacobson 103
Extra weights and disjoint skeletons make flexible control easy
![Page 104: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/104.jpg)
# June 9, 2013 Alec Jacobson 104
Extra weights and disjoint skeletons make flexible control easy
![Page 105: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/105.jpg)
# June 9, 2013 Alec Jacobson 105
Demo
Physical dynamics also benefit from our reduction
![Page 106: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/106.jpg)
# June 9, 2013 Alec Jacobson 106
Demo
Physical dynamics also benefit from our reduction
![Page 107: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/107.jpg)
#
Our reduction preserves nature of different energies, at no extra cost
June 9, 2013 Alec Jacobson 107
Surface ARAP Volumetric ARAP
V0surf = MsurfT V0
vol
= Mvol
T
![Page 108: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/108.jpg)
#
Our reduction preserves nature of different energies, at no extra cost
June 9, 2013 Alec Jacobson 108
Surface ARAP Volumetric ARAP
V0surf = MsurfT V0
vol
= Mvol
T
![Page 109: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/109.jpg)
# June 9, 2013 Alec Jacobson 109
Volumetric deformation differs drastically from surface-based
![Page 110: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/110.jpg)
# June 9, 2013 Alec Jacobson 110
Volumetric deformation differs drastically from surface-based
![Page 111: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/111.jpg)
#
Surface artifacts prevent volume meshing, prevent volumetric processing
June 9, 2013 Alec Jacobson 111
![Page 112: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/112.jpg)
#
Continuous winding number for watertight surfaces generalizes to unclean triangle meshes
June 9, 2013 Alec Jacobson 112
w(p) =1
4⇡
ZZ
S
sin(�)d✓d�
w(p) =1
4⇡
mX
f=1
⌦f
[SIGGRAPH 2013]
![Page 113: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/113.jpg)
#
Generalized winding number is ideal indicator for graphcut segmentation of convex hull
June 9, 2013 Alec Jacobson 113
w(p) =1
4⇡
ZZ
S
sin(�)d✓d�
w(p) =1
4⇡
mX
f=1
⌦f
[SIGGRAPH 2013]
![Page 114: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/114.jpg)
# June 9, 2013 Alec Jacobson 114
Each advance inspires new improvements, new interfaces
SIGGRAPH Asia 2011
SGP 2010 SIGGRAPH 2011 SGP 2012
SIGGRAPH 2012 SIGGRAPH 2013
![Page 115: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/115.jpg)
#
We derive a powerful subspace via input shape and handle descriptions
● Intrinsics from shape’s geometry ● Semantics from handles ● Fully automatic ● New interfaces ● Real-time as an invariant
June 9, 2013 Alec Jacobson 115
![Page 116: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/116.jpg)
#
Future outlook
● More semantics: large data, collisions, etc.
June 9, 2013 Alec Jacobson 116
![Page 117: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/117.jpg)
#
Future outlook
● More semantics: large data, collisions, etc. ● Physical interfaces
June 9, 2013 Alec Jacobson 117
![Page 118: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/118.jpg)
#
Acknowledgements Coauthors: Ladislav Kavan, Ilya Baran, Jovan Popović, Kaan Yücer, Alex Sorkine-Hornung, Tino Weinkauf, Denis Zorin, Olga Sorkine-Hornung Colleagues at NYU and ETH Friends and family This thesis was supported in part by NSF award IIS-0905502, ERC grant iModel (StG-2012-306877), SNF award 200021_137879, the Intel Doctoral Fellowship and a gift from Adobe Systems.
June 9, 2013 Alec Jacobson 118
![Page 119: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/119.jpg)
Algorithms and Interfaces for Real-Time Deformation of 2D and 3D Shapes
Alec Jacobson [email protected]
June 9, 2013
Papers, videos, code: people.inf.ethz.ch/~jalec/
![Page 120: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/120.jpg)
![Page 121: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/121.jpg)
#
Weights should be smooth everywhere, especially at handles
June 9, 2013 Alec Jacobson #121
Our method Extension of Harmonic Coordinates [Joshi et al. 2005]
![Page 122: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/122.jpg)
#
Open cages allow arbitrary line constraints
June 9, 2013 Alec Jacobson 122
![Page 123: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/123.jpg)
#
Sparsity helps maintain local influence
June 9, 2013 Alec Jacobson #123
Smoothed extension of Harmonic Coordinates [Joshi et al. 2005]
Our method
![Page 124: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/124.jpg)
#
Sparsity helps maintain local influence
June 9, 2013 Alec Jacobson #124
Smoothed extension of Harmonic Coordinates [Joshi et al. 2005]
Our method
![Page 125: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/125.jpg)
#
Sparsity helps maintain local influence
June 9, 2013 Alec Jacobson #125
Smoothed extension of Harmonic Coordinates [Joshi et al. 2005]
Our method
![Page 126: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/126.jpg)
#
Sparsity helps maintain local influence
June 9, 2013 Alec Jacobson #126
Smoothed extension of Harmonic Coordinates [Joshi et al. 2005]
Our method
![Page 127: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/127.jpg)
#
Sparsity helps maintain local influence
June 9, 2013 Alec Jacobson #127
Smoothed extension of Harmonic Coordinates [Joshi et al. 2005]
Our method
![Page 128: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/128.jpg)
#
Sparsity helps maintain local influence
June 9, 2013 Alec Jacobson #128
Smoothed extension of Harmonic Coordinates [Joshi et al. 2005]
Our method
![Page 129: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/129.jpg)
#
Boundedness also helps maintain local influence
June 9, 2013 Alec Jacobson #129
Unconstrained biharmonic [Botsch and Kobbelt 2004]
![Page 130: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/130.jpg)
#
Boundedness also helps maintain local influence
June 9, 2013 Alec Jacobson #130
Unconstrained biharmonic [Botsch and Kobbelt 2004]
Our method
![Page 131: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/131.jpg)
#
Spurious local maxima also cause unintuitive response
June 9, 2013 Alec Jacobson #131
Our method
Extension of unconstrained biharmonic [Botsch and Kobbelt 2004]
![Page 132: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/132.jpg)
#
Weights propagate transformations at handles to shape in real-time
June 9, 2013 Alec Jacobson #132
Translate Rotate Scale
![Page 133: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/133.jpg)
#
Dropping partition of unity as explicit constraint does not effect quality
June 9, 2013 Alec Jacobson #133
0.015
0.000
0.010
0.005
original weights faster weights
![Page 134: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/134.jpg)
#
Weights may also define an intuitive, shape-aware depth ordering in 2D
June 9, 2013 Alec Jacobson #134
z z
![Page 135: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/135.jpg)
#
Weights may also define an intuitive, shape-aware depth ordering in 2D
June 9, 2013 Alec Jacobson #135
![Page 136: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/136.jpg)
#
Rotations at point handles may be computed automatically based on translations
June 9, 2013 Alec Jacobson #136
![Page 137: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/137.jpg)
#
Alternative skinning methods may also take advantage of bounded biharmonic weights
June 9, 2013 Alec Jacobson #137
Linear blend skinning Dual quaternion skinning
![Page 138: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/138.jpg)
# June 9, 2013 Alec Jacobson 138
Same weights can interpolate colors
x
0 =HX
j=1
wj(xi)Tjxi
![Page 139: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/139.jpg)
# June 9, 2013 Alec Jacobson 139
Same weights can interpolate colors
ci =HX
j=1
wj(xi)cj
![Page 140: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/140.jpg)
# June 9, 2013 Alec Jacobson 140
unconstrained [Finch et al. 2011]
Same functions used for color interpolation
Image courtesy Mark Finch
ci =HX
j=1
wj(xi)cj
![Page 141: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/141.jpg)
# June 9, 2013 Alec Jacobson 141
unconstrained [Finch et al. 2011]
Same functions used for color interpolation
ci =HX
j=1
wj(xi)cj
![Page 142: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/142.jpg)
# June 9, 2013 Alec Jacobson 142
unconstrained [Finch et al. 2011]
Same functions used for color interpolation Our [SGP 2012]
ci =HX
j=1
wj(xi)cj
![Page 143: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/143.jpg)
# June 9, 2013 Alec Jacobson 143
Without constraints, biharmonic unintuitively interpolates colors
Unconstrained Δ2 [Finch et al. 2011]
Our extended method [SGP 2012]
![Page 144: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/144.jpg)
#
Skinning weights tether optimization over multiple-component meshes
June 9, 2013 Alec Jacobson 144
![Page 145: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/145.jpg)
#
Skinning weights tether optimization over multiple-component meshes
June 9, 2013 Alec Jacobson 145
Our skinning-based method Mesh-energy methods e.g. Igarashi et al. 2004, Sumner et al. 2005, Botsch et al. 2006, Sorkine and Alexa 2007, Shi et al. 2007, Solomon et al. 2011
![Page 146: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/146.jpg)
#
Extrema distort small features
June 9, 2013 Alec Jacobson 146
Unconstrained [Botsch & Kobbelt 2004]
weight of middle point
![Page 147: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/147.jpg)
#
Deformation applies to images as planar shapes
June 9, 2013 Alec Jacobson 147
non-convex “cut-out” cartoons
entire image rectangle
![Page 148: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/148.jpg)
#
Extra weights would expand subspace…
June 9, 2013 Alec Jacobson 148
![Page 149: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/149.jpg)
#
Extra weights would expand subspace…
June 9, 2013 Alec Jacobson 149
![Page 150: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/150.jpg)
#
Extra weights would expand subspace…
June 9, 2013 Alec Jacobson 150
![Page 151: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/151.jpg)
#
Real-time automatic degrees of freedom
June 9, 2013 Alec Jacobson 151
![Page 152: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/152.jpg)
#
Overlapping b-spline “bumps” in weight space
June 9, 2013 Alec Jacobson 152
farthest point sampling
xj =
2
6664
w1(vj)w2(vj)
...wm(vj)
3
7775
weight space
![Page 153: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/153.jpg)
#
Overlapping b-spline “bumps” in weight space
June 9, 2013 Alec Jacobson 153
b-spline basis parameterized by distance in weight space
in weight space
xj =
2
6664
w1(vj)w2(vj)
...wm(vj)
3
7775
weight space
![Page 154: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/154.jpg)
#
Overlapping b-spline “bumps” in weight space
June 9, 2013 Alec Jacobson 154
b-spline basis parameterized by distance in weight space
in weight space
xj =
2
6664
w1(vj)w2(vj)
...wm(vj)
3
7775
weight space
![Page 155: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/155.jpg)
#
Final algorithm is simple and FAST
June 9, 2013 Alec Jacobson 155
Precomputation per shape+rig - Compute any additional weights - Construct, prefactor system matrices
For a 50K triangle mesh: 12 seconds
2.7 seconds
![Page 156: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/156.jpg)
#
Final algorithm is simple and FAST
June 9, 2013 Alec Jacobson 156
Precomputation per shape+rig - Compute any additional weights - Construct, prefactor system matrices
Precomputation when switching constraint type - Re-factor global step system
For a 50K triangle mesh: 12 seconds
2.7 seconds
6 milliseconds
![Page 157: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/157.jpg)
#
Final algorithm is simple and FAST
June 9, 2013 Alec Jacobson 157
Precomputation per shape+rig - Compute any additional weights - Construct, prefactor system matrices
Precomputation when switching constraint type - Re-factor global step system
~30 iterations global: #weights by #weights linear solve local: #rotations SVDs
For a 50K triangle mesh: 12 seconds
2.7 seconds
6 milliseconds
22 microseconds
[McAdams et al. 2011]
![Page 158: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/158.jpg)
#
Simple drag-only interface for point handles
June 9, 2013 Alec Jacobson 158
![Page 159: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/159.jpg)
#
Extrema distort small features
June 9, 2013 Alec Jacobson 159
Bounded [Jacobson et al. 2011]
weight of middle point
![Page 160: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/160.jpg)
#
“Monotonicity” helps preserve small features
June 9, 2013 Alec Jacobson 160
Bounded [Jacobson et al. 2011]
Our
![Page 161: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/161.jpg)
#
Spurious extrema are unstable, may “flip”
June 9, 2013 Alec Jacobson 161
slightly larger region
![Page 162: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/162.jpg)
#
Spurious extrema are unstable, may “flip”
June 9, 2013 Alec Jacobson 162
slightly larger region
![Page 163: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/163.jpg)
#
Spurious extrema are unstable, may “flip”
Unconstrained [Botsch & Kobbelt, 2004]
![Page 164: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/164.jpg)
#
Spurious extrema are unstable, may “flip”
Bounded
![Page 165: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/165.jpg)
#
Lack of extrema leads to more stability
Our
![Page 166: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/166.jpg)
#
In 2D, stretching manipulates foreshortening
June 9, 2013 Alec Jacobson 166
LBS with rigid bones STBS with stretchable bones
![Page 167: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/167.jpg)
#
Behavior depends heavily on parameterization and boundary conditions
June 9, 2013 Alec Jacobson 167
!x = 0 !2x = 0 !3x = 0
![Page 168: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/168.jpg)
#
Behavior depends heavily on parameterization and boundary conditions
June 9, 2013 Alec Jacobson 168
!x = 0 !2x = 0 !3x = 0Straight Tube Boundary Conditions
Torus Boundary Conditions (but connected to straight tubes)
Parameter Domain
![Page 169: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/169.jpg)
#
Behavior depends heavily on parameterization and boundary conditions
June 9, 2013 Alec Jacobson 169
!x = 0 !2x = 0 !3x = 0Straight Tube Boundary Conditions
Torus Boundary Conditions (but connected to straight tubes)
Parameter Domain
![Page 170: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/170.jpg)
#
Traditional winding number determines amount of insideness
June 9, 2013 Alec Jacobson 170
0
1
![Page 171: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/171.jpg)
#
Traditional winding number determines amount of insideness
June 9, 2013 Alec Jacobson 171
1
0
0
0
1
-1
0
0
1 2
1
0
![Page 172: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/172.jpg)
#
Winding number jumps across boundaries, harmonic otherwise
June 9, 2013 Alec Jacobson 172
1
0
½
-½
2
1½
![Page 173: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/173.jpg)
#
Winding number jumps across boundaries, harmonic otherwise
June 9, 2013 Alec Jacobson 173
1
0
½
-½
2
1½
![Page 174: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/174.jpg)
#
Sum of harmonic functions is harmonic
June 9, 2013 Alec Jacobson 174
+ +=+ =+1
0½
-½
![Page 175: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/175.jpg)
#
Winding number gracefully tends toward indicator function
June 9, 2013 Alec Jacobson 175
1
0
½
-½
![Page 176: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/176.jpg)
#
Hierarchical evaluation performs asymptotically better
June 9, 2013 Alec Jacobson 176
ï�
ï�
ï�
0
Winding number computation time (subdivided Dino)
Seconds
Naive
Hierarchical
Number of input facets, m
1e0
1e-3
1e-2
1e-2
1e3 1e61e51e4 1e7
![Page 177: Algorithms and Interfaces for Real-Time Deformation of 2D ...jacobson/images/alec... · of 2D and 3D Shapes Alec Jacobson ETH Zurich June 9, 2013 . June 9, 2013 Alec Jacobson # 2](https://reader031.vdocuments.us/reader031/viewer/2022041001/5ea1804938641549703d6e6d/html5/thumbnails/177.jpg)
#
Hierarchical evaluation performs asymptotically better
June 9, 2013 Alec Jacobson 177
Winding number computation time (SHREC Dataset)
Seconds
1e-2
1e-4
1e-3
Naive
Hierarchical
Number of input facets, m1e2 1e51e41e3