Graphics Reference
In-Depth Information
T '
2
1
12
T
frames in sequence 1
Figure 7.14. Dynamic time warping for estimating correspondence between two motion
sequences.
contacts the ground, to ensure that the footplants of the twomotions arematched, or
more weight to some joints over others (e.g., the shoulder's orientation may be more
important than the wrist's). We could also use a surface-to-surface distance function
applied to skinned skeletons after the roots have been aligned [ 252 ].
Once we have a temporal correspondence between frames over the interval to be
blended, we can interpolate between the two sequences, using a weighted average
betweencorresponding frames . 13 We require aweight function w i thatmonotonically
increases from 0 at i
L , so that the motion transitions smoothly from
the first motion to the second over the interval.
If we assume that the non-root elements of
=
1to1at i
=
θ are parameterized using unit
quaternions, then the appropriate interpolation between unit quaternions q and q
is given by spherical linear interpolation or slerp , defined by
θ
and
sin
(
1
w
sin w
φ
q , q , w
q
(
) =
+
slerp
q
(7.32)
sin
φ
sin
φ
q =
where q
·
cos
φ
; that is,
φ
is the angle between the two quaternions on the 3D unit
sphere [ 444 ].
We also need to know how to place and orient the root at each transition frame.
First, we align the secondmotion with the first as desired (e.g., so that the twomotion
paths are roughly aligned) by applying the same rigid transformation to the root posi-
tion and orientation of all the frames of the second motion. Then for each transition
frame, the root orientations can be determined given the weight w i using spherical
linear interpolation in the way shown earlier. The root position can be interpolated
along a predefined path (e.g., a straight line, a curved line given by the user [ 361 ], or
13 This process of warping and cross-dissolving between motions is analogous to the morphing
problemwe discussed in Section 5.7 .
 
Search WWH ::




Custom Search