Alec Jacobson
Columbia University Skinning: Real-time Shape Deformation
Automatic Skinning via Constrained Energy Optimization
1
Automatic Skinning via Constrained Energy Optimization Alec Jacobson - - PowerPoint PPT Presentation
Skinning: Real-time Shape Deformation Automatic Skinning via Constrained Energy Optimization Alec Jacobson Columbia University 1 Traditional skinning pipeline is labor intensive v v 0 = X w j ( v ) T j 1 j 2 H 2
Alec Jacobson
Columbia University Skinning: Real-time Shape Deformation
1
2
3
4
5
6
7
8
9
construct handles compute weights choose transforms
10
construct handles compute weights choose transforms
11
[Blair 1994] 12
[Au et al. 2008] 13
[Au et al. 2008] [Wang & Lee 2008] [Tagliasacchi et al. 2012] [Cao et al. 2010; Huang et al. 2013]
Surface flow Shape segmentation
Segmentation Inner skeleton
[Katz & Tal 2003] [Huang et al. 2009] [Bharaj et al. 2012]
14
15
16
[Huang et al. 2009]
Assume we know which parts will deform rigidly
17
[Huang et al. 2009]
18
[Huang et al. 2009] 19
[Huang et al. 2009] 20
[Huang et al. 2009] 21
[Huang et al. 2009] 22
23
[Baran & Popovic 2007] 24
+
[Baran & Popovic 2007] 25
1. avoid short bone chains, 2. maintain angles between bones, 3. keep lengths of symmetric bones proportional, 4. avoid overlapping bones, 5. place special “feet” bones below others, 6. avoid zero-length bones, 7. maintain bone orientations, 8. place extremities close to surface, 9. avoid disparities in Euclidean and bone-path distances
+
[Baran & Popovic 2007] 26
1. avoid short bone chains, 2. maintain angles between bones, 3. keep lengths of symmetric bones proportional, 4. avoid overlapping bones, 5. place special “feet” bones below others, 6. avoid zero-length bones, 7. maintain bone orientations, 8. place extremities close to surface, 9. avoid disparities in Euclidean and bone-path distances
27
Input partial skeleton
28
Interpenetrating mesh simplification Fully enclosing cage
construct handles compute weights choose transforms
29
30
31
[Shepard 1968], [Schaefer et al. 2006], etc.
32
weights optimized inside shape
wj(v) = 1 kci vk2
[Shepard 1968], [Schaefer et al. 2006], etc.
33
weights optimized inside shape
wj(v) = 1 kci vk2
34
m
j=1
j
35
“coordinates”
m
j=1
j
m
j=1
36
“coordinates” restricted to translation
m
j=1
j
m
j=1
37
“coordinates”
m
j=1
j
m
j=1
j − cj
38
“coordinates”
m
j=1
j − cj + v
m
j=1
j
39
“coordinates”
m
j=1
j
m
j=1
m
j=1
j − cj + v
40
“coordinates”
m
j=1
j
m
j=1
m
j=1
j
41
“coordinates”
“Higher order GBC” [Langer et al. 2008] are identical to linear blend skinning
m
j=1
j
m
j=1
m
j=1
j
42
43
44
No free lunch? Are some properties mutually exclusive?
45
46
47
48
49
[Baran & Popović 2007]
Closest visible bone
[Baran & Popović 2007] 51
argmin
wj
Z
Ω
krwjk2 + hj(wj ˆ wj)2 dA
smoothness
[Baran & Popović 2007] 52
argmin
wj
Z
Ω
krwjk2 + hj(wj ˆ wj)2 dA
argmin
wj
Z
Ω
krwjk2 + hj(wj ˆ wj)2 dA
[Baran & Popović 2007]
“data”
53
[Baran & Popović 2007] 54
argmin
wj
Z
Ω
krwjk2 + hj(wj ˆ wj)2 dA
55
argmin
wj
Z
Ω
krwjk2 dA argmin
wj
Z
Ω
(∆wj)2 dA
argmin
wj
Z
Ω
krwjk2 dA
56
argmin
wj
Z
Ω
(∆wj)2 dA
57
∆wj = 0 ∆2wj = 0
58
59
60
61
62
[Botsch & Kobbelt 2004]
0 ≤ wj ≤ 1 argmin
wj
Z
Ω
(∆wj)2 dA
63
[Botsch & Kobbelt 2004]
0 ≤ wj ≤ 1 argmin
wj
Z
Ω
(∆wj)2 dA
64
local max local min
0 ≤ wj ≤ 1
65
local max local min
wj is “monotonic”
66
No free lunch? Are some properties mutually exclusive?
Euclidean ∆wj ∆2wj
smooth ✓
non-negative ✓ ✓
✓ local
✓
[Shepard 1968, Sibson 1980, Schaefer et al. 2006] [Baran & Popovic 2007, Joshi et al. 2007] [Botsch & Kobbelt 2004, Sorkine et al. 2004, Finch et al. 2011]
67
Euclidean ∆wj ∆2wj
smooth ✓
non-negative ✓ ✓
✓ local
✓
[Shepard 1968, Sibson 1980, Schaefer et al. 2006] [Baran & Popovic 2007, Joshi et al. 2007] [Botsch & Kobbelt 2004, Sorkine et al. 2004, Finch et al. 2011]
No free lunch? Are some properties mutually exclusive?
68
+ shape-aware + smoothness
[Botsch & Kobbelt 2004, Sorkine et al. 2004, Joshi & Carr 2008, Jacobson et al. 2010, Finch et al. 2011, Andrews et al. 2011]
wj,j=1,...,m m
j=1
Ω
69
+ shape-aware + smoothness + arbitrary handles
[Botsch & Kobbelt 2004, Sorkine et al. 2004, Joshi & Carr 2008, Jacobson et al. 2010, Finch et al. 2011, Andrews et al. 2011]
wj,j=1,...,m m
j=1
Ω
70
+ shape-aware + smoothness + arbitrary handles + non-negativity
[Jacobson et al. 2011]
wj,j=1,...,m m
j=1
Ω
m
j=1
71
+ shape-aware + smoothness + arbitrary handles + non-negativity + locality
[Jacobson et al. 2011]
wj,j=1,...,m m
j=1
Ω
m
j=1
[Rustamov 2011]
72
+ shape-aware + smoothness + arbitrary handles + non-negativity + locality
wj,j=1,...,m m
j=1
Ω
[Rustamov 2011]
73
+ shape-aware + smoothness + arbitrary handles + non-negativity + locality
wj,j=1,...,m m
j=1
Ω
m
j=1
[Rustamov 2011]
74
+ shape-aware + smoothness + arbitrary handles + non-negativity + locality
wj,j=1,...,m m
j=1
Ω
m
j=1
m
j=1
75
+ shape-aware + smoothness + arbitrary handles + non-negativity + locality + monotonicity
[Weinkauf et al. 2011, Jacobson et al. 2012, Günther et al. 2014]
wj,j=1,...,m m
j=1
Ω
76
Euclidean ∆wj = u ∆2wj
smooth ✓
non-negative ✓ ✓
✓ local
✓
[Shepard 1968, Sibson 1980, Schaefer et al. 2006] [Baran & Popovic 2007, Joshi et al. 2007] [Botsch & Kobbelt 2004, Sorkine et al. 2004, Finch et al. 2011]
77
+ shape-aware + smoothness + arbitrary handles + non-negativity + locality + monotonicity
[Weinkauf et al. 2011, Jacobson et al. 2012, Günther Günther et al. 2014 et al. 2014]
wj,j=1,...,m m
j=1
Ω
78
79
80
81
82 Right: [Kavan & Sorkine 2012] Left, middle: smoothness energy
83 Right: [Kavan & Sorkine 2012] Left, middle: smoothness energy
84
85 [Jacobson et al. 2013]
86 [Jacobson et al. 2013] [Dionne & de Lasa 2013]
87 [Jacobson et al. 2013] [Bharaj et al. 2012] [Dionne & de Lasa 2013]
construct handles compute weights choose transforms
88
89
Rotation chosen ignorant of shape’s deformation
[Jacobson et al. 2011], cf. traditional IK
Rotation optimized for best deformation
[Jacobson et al. 2011]
90
Rotation chosen ignorant of shape’s deformation
[Jacobson et al. 2011], cf. traditional IK
Rotation optimized for best deformation
[Jacobson et al. 2011]
91
Rotation chosen ignorant of shape’s deformation
[Jacobson et al. 2011], cf. traditional IK
Rotation optimized for best deformation
[Jacobson et al. 2011]
92
93
94
full space: #V x 3 DOFs
[traditional physics, modeling]
skinning space: #B x 12 DOFs
[Der et al. 2006, Huang et al. 2006, Au et al. 2007, Jacobson et al. 2012]
96
modal space: 50 linear modes
[Hildebrandt et al. 2011, Barbic et al. 2012]
97
inherits semantics from rig
98 [Jacobson et al. 2012]
99 [Faure et al. 2011, Jacobson 2013, Liu et al. 2013, Bouaziz et al. 2014]
100
construct handles compute weights choose transforms
101
102
Alec Jacobson
Columbia University Skinning: Real-time Shape Deformation
103