Compute the rotation matrix given two vectors using Rodrigues' formula

In the previous post, we have shown how angular velocities and rotation matrices are linked through the exponential map, or to be specific, the Rodrigues’ rotation formula. In this post I would like to give as an useful application of Rodrigues’ formula, to compute the rotation matrix between two vectors.

Let $a,b\in\mathbb{R}^3$ ($a\neq b$) be two unit vectors expressed in an arbitary coordinate frame. Our goal is to compute the rotation matrix from $a$ to $b$.

Read more
3D angular velocity and Rodrigues' formula

3D angular velocity and Rodrigues' formula

One type of motion that people often encounter in robotics is the rotation of a rigid body about a fixed axis. Consider a 3D object rotating about an axis $u$ (represented by a unit vector in $R^3$) at a rate of $\theta$ radians per second (rad/s, in $R$) for $t$ seconds. Let $p$ be a point attached to the object and $\dot{p}$ the tangent velocity at point $p$.

An illustration is shown in the cover figure, in which we use $\omega=\theta u$ instead to represent the axis and angle in a unified vectorial form. In the literature, $\omega$ is often named angular velocity.

Read more
Rotation matrices: everything you wanted to know

Rotation matrices: everything you wanted to know

In robotics, vision and graphics, rotation matrix is one of the most popular mathematical representations of the rotational motion. It is simple but sometimes may cause confusions. In this post, I will construct a rotation matrix from stratch and talk about its key properties. For brevity, all vectors are column vectors and all coordinate frames are right-handed unless otherwise stated.

Read more