The manner in which complex numbers were used to represent 2D rotations will now be adapted to using quaternions to represent 3D rotations. Let represent the set of quaternions, in which each quaternion, , is represented as , and . A quaternion can be considered as a four-dimensional vector. The symbols , , and are used to denote three ``imaginary'' components of the quaternion. The following relationships are defined: , from which it follows that , , and . Using these, multiplication of two quaternions, and , can be derived to obtain , in which
For convenience, quaternion multiplication can be expressed in terms of vector multiplications, a dot product, and a cross product. Let be a three-dimensional vector that represents the final three quaternion components. The first component of is . The final three components are given by the three-dimensional vector .
In the same way that unit complex numbers were needed for , unit quaternions are needed for , which means that is restricted to quaternions for which . Note that this forms a subgroup because the multiplication of unit quaternions yields a unit quaternion, and the other group axioms hold.
The next step is to describe a mapping from unit quaternions to . Let the unit quaternion map to the matrix
Unfortunately, this representation is not unique. It can be verified in (4.20) that . A nice geometric interpretation is given in Figure 4.10. The quaternions and represent the same rotation because a rotation of about the direction is equivalent to a rotation of about the direction . Consider the quaternion representation of the second expression of rotation with respect to the first. The real part is
This can be fixed by the identification trick. Note that the set of unit quaternions is homeomorphic to because of the constraint . The algebraic properties of quaternions are not relevant at this point. Just imagine each as an element of , and the constraint forces the points to lie on . Using identification, declare for all unit quaternions. This means that the antipodal points of are identified. Recall from the end of Section 4.1.2 that when antipodal points are identified, . Hence, , which can be considered as the set of all lines through the origin of , but this is hard to visualize. The representation of in Figure 4.5 can be extended to . Start with , and make three different kinds of identifications, one for each pair of opposite cube faces, and add all of the points to the manifold. For each kind of identification a twist needs to be made (without the twist, would be obtained). For example, in the direction, let for all .
One way to force uniqueness of rotations is to require staying in the ``upper half'' of . For example, require that , as long as the boundary case of is handled properly because of antipodal points at the equator of . If , then require that . However, if , then require that because points such as and are the same rotation. Finally, if , then only is allowed. If such restrictions are made, it is important, however, to remember the connectivity of . If a path travels across the equator of , it must be mapped to the appropriate place in the ``northern hemisphere.'' At the instant it hits the equator, it must move to the antipodal point. These concepts are much easier to visualize if you remove a dimension and imagine them for , as described at the end of Section 4.1.2.
Steven M LaValle 2012-04-20