Page 60 -
P. 60
2.1 Geometric primitives and transformations 39
◦
this representation is not unique, since we can always add a multiple of 360 (2π radians) to
θ and get the same rotation matrix. As well, (ˆn,θ) and (−ˆn, −θ) represent the same rotation.
However, for small rotations (e.g., corrections to rotations), this is an excellent choice.
In particular, for small (infinitesimal or instantaneous) rotations and θ expressed in radians,
Rodriguez’s formula simplifies to
⎡ ⎤
1 −ω z ω y
R(ω) ≈ I + sin θ[ˆn] × ≈ I +[θˆn] × = ⎣ ω z 1 −ω x ⎦ , (2.35)
−ω y ω x 1
which gives a nice linearized relationship between the rotation parameters ω and R. We can
also write R(ω)v ≈ v + ω × v, which is handy when we want to compute the derivative of
Rv with respect to ω,
0 z −y
⎡ ⎤
∂Rv
= −[v] × = ⎣ −z 0 x ⎦ . (2.36)
∂ω T
y −x 0
Another way to derive a rotation through a finite angle is called the exponential twist
(Murray, Li, and Sastry 1994). A rotation by an angle θ is equivalent to k rotations through
θ/k. In the limit as k →∞, we obtain
1 k
R(ˆn,θ) = lim (I + [θˆn] × ) = exp [ω] × . (2.37)
k→∞ k
k
If we expand the matrix exponential as a Taylor series (using the identity [ˆn] k+2 = −[ˆn] ,
× ×
k> 0, and again assuming θ is in radians),
θ 2 2 θ 3 3
= I + θ[ˆn] × + [ˆn] + [ˆn] + ···
exp [ω] × × ×
2 3!
θ 3 θ 2 θ 3 2
= I +(θ − + ···)[ˆn] × +( − + ···)[ˆn]
3! 2 4! ×
2
= I + sin θ[ˆn] × +(1 − cos θ)[ˆn] , (2.38)
×
which yields the familiar Rodriguez’s formula.
Unit quaternions
The unit quaternion representation is closely related to the angle/axis representation. A unit
quaternion is a unit length 4-vector whose components can be written as q =(q x ,q y ,q z ,q w )
or q =(x, y, z, w) for short. Unit quaternions live on the unit sphere q =1 and antipodal
(opposite sign) quaternions, q and −q, represent the same rotation (Figure 2.6). Other than
this ambiguity (dual covering), the unit quaternion representation of a rotation is unique.
Furthermore, the representation is continuous, i.e., as rotation matrices vary continuously,
one can find a continuous quaternion representation, although the path on the quaternion
sphere may wrap all the way around before returning to the “origin” q =(0, 0, 0, 1).For
o
these and other reasons given below, quaternions are a very popular representation for pose
and for pose interpolation in computer graphics (Shoemake 1985).