Rodrigues’ rotation formula

The rotation matrix for rotating an object along normal direction {\bf n} with angle \phi is given by

R = \cos \phi I + (1-\cos \phi) {\bf n} {\bf n}^\top +\sin \phi {\bf n}^\wedge,

where {\bf n}^\wedge = \begin{pmatrix} 0 & -n_3 & n_2 \\ n_3 & 0 & - n_1 \\ -n_2 & n_1& 0\end{pmatrix} such that {\bf n}^\wedge {\bf a} = {\bf n} \times {\bf a}.

We can easily validate that the equation is correct, note that R {\bf n} = \cos \phi {\bf n} + (1-\cos \phi) {\bf n} = {\bf n} as desired. And for any vector {\bf m} perpendicular to {\bf n},

R {\bf m} = \cos \phi {\bf m} + \sin \phi ({\bf n} \times {\bf m}) as desired as well.

Compute \phi and {\bf n} from R

 Note that tr(R) =3 \cos \phi + (1-\cos \phi) = 1 + 2 \cos \phi,

 Thus, \phi = arc\cos \left( \frac{tr(R) -1}{2}\right). Moreover, since R {\bf n} = {\bf n}, we can compute {\bf n} as the eigenvector of R.

 

Algebraic Derivation Rodrigues’ rotation formula

For any rotation matrix R, R R^\top=I \Rightarrow \dot{R}R^\top + R\dot{R}^\top=0\Rightarrow \dot{R}R^\top = - (\dot{R}R^\top)^\top. Thus \dot{R}R^\top is skew symmetric and can be written as

    \[\dot{R}R^\top=\begin{pmatrix}0 & n_3 & n_2\\n_3  &0 &-n_1\\-n_2&n_1&0 \end{pmatrix}={\bf n}^\wedge\Rightarrow \dot{R}={\bf n}^\wedge R\Rightarrow R(\phi) = \exp({\bf n}^\wedge \phi)\]

with {\bf n}=\begin{pmatrix}n_1\\n_2\\n_3\end{pmatrix}.

Note that we have {\bf n}^\wedge {\bf n}^\wedge {\bf n}^\wedge = -{\bf n}^\wedge and {\bf n}^\wedge {\bf n}^\wedge = {\bf n} {\bf n}^\top - I. Thus

(1)   \begin{align*} R(\phi) &=\exp(\phi {\bf n}^\wedge) \\ &=\sum_{n=0} \frac{1}{n!} (\phi {\bf n}^\wedge)^n\\ &=I+\phi {\bf n}^\wedge+ \frac{\phi^2 {\bf n}^\wedge^2}{2!} + \frac{\phi^3 {\bf n}^\wedge^3}{3!} + \frac{\phi^4 {\bf n}^\wedge^4}{4!} + \frac{\phi^5 {\bf n}^\wedge^5}{5!}+\cdots \\ &= {\bf n} {\bf n}^\top - {\bf n}^\wedge {\bf n}^\wedge - \phi {\bf n}^\wedge + \frac{\phi^2 {\bf n}^\wedge^2}{2!} - \frac{\phi^3 {\bf n}^\wedge}{3!} - \frac{\phi^4 {\bf n}^\wedge^2}{4!} + \frac{\phi^5 {\bf n}^\wedge}{5!}+\cdots \\ &={\bf n} {\bf n}^\top + (\phi - \frac{\phi^3}{3!} +\frac{\phi^5}{5!} + \cdots) {\bf n}^\wedge - (1 -\frac{\phi^2}{2!} + \frac{\phi^4}{4!}+\cdots){\bf n}^\wedge {\bf n}^\wedge \\ &={\bf n} {\bf n}^\top + \sin \phi {\bf n}^\wedge -\cos \phi({\bf n} {\bf n}^\top -I) \\ &=\cos \phi I + (1-\cos \phi) {\bf n} {\bf n}^\top +\sin \phi {\bf n}^\wedge \end{align*}

 

Leave a Reply

Your email address will not be published. Required fields are marked *