Homogeneous transformation matrix (8)

Kinematics & Universal Numerics
August 3, 2019

The Rodrigues’s rotation formula.

In this blog we introduce the Rodrigues’s rotation formula. We will show in future that this useful formula connects the 3D rotation matrix to its matrix exponential form

𝐑=exp⁑(θ⁒𝐝×), (1)

where (𝐝,ΞΈ) is the axis-angle representation of the rotation matrix 𝐑. But let’s not get ourselves too overwhelmed by this matrix-exponential concept for now. Please check out below one derivation of this famous formula among many other ways.

Recall in our last blog how we derive the rotation axis 𝐝 by eliminating cΞΈ: we take the difference 𝐑-𝐑T, where

𝐑=𝐒0⁒[cΞΈ-sΞΈsΞΈcΞΈ1]⁒𝐒0T,𝐝=𝐒0⁒𝐞1,3=[sψcϕ⁒cψsϕ⁒cψ-cψcϕ⁒sψsϕ⁒sψ-sΟ•cΟ•]⁒[001].

We may wonder what if we eliminate sΞΈ? So we take the sum

𝐑+𝐑T =𝐒0⁒[cΞΈ-sΞΈsΞΈcΞΈ1]⁒𝐒0T+𝐒0⁒[c-ΞΈ-s-ΞΈs-ΞΈc-ΞΈ1]⁒𝐒0T
=2⋅𝐒0⁒[cΞΈcΞΈ1]⁒𝐒0T
=2⁒𝐒0⁒𝐒0T+2⁒𝐒0⁒[cΞΈ-1cΞΈ-10]⁒𝐒0T
=2⁒𝐒0⁒𝐒0T+2⁒(cΞΈ-1)⋅𝐒0⁒[110]⁒𝐒0T
=2⁒𝐈+2⁒(cΞΈ-1)⋅𝐒0⁒(𝐈-𝐞1,3⁒𝐞1,3T)⁒𝐒0T
=2⁒𝐈+2⁒(cΞΈ-1)β‹…(𝐈-𝐒0⁒𝐞1,3⁒(𝐒0⁒𝐞1,3)T)
=2⁒𝐈+2⁒(1-cθ)⁒(𝐝𝐝T-𝐈). (2)

We introduced the operator β€œ(β‹…)×” for a unit vector

𝐝=[dxdydz]

such that

𝐝×=[-dzdydz-dx-dydx] and thus 𝐝×𝐯=𝐝×⁒𝐯⁒ for all 𝐯.

The powers of this skew-symmetric matrix 𝐝× have some useful induction properties as follows:

𝐝×2 =[-dzdydz-dx-dydx]⁒[-dzdydz-dx-dydx]
=[-dy2-dz2dx⁒dydx⁒dzdx⁒dy-dx2-dz2dy⁒dzdx⁒dzdy⁒dz-dx2-dy2]
=-𝐈+𝐝𝐝T,
𝐝×3 =𝐝×⁒(𝐝×2)=𝐝×⁒(-𝐈+𝐝𝐝T)
=-𝐝×+(𝐝×⁒𝐝)⁒ 01Γ—3⁒𝐝T
=-𝐝×,
𝐝×4 =𝐝×⁒(𝐝×3)=-𝐝×2=𝐈-𝐝𝐝T,
𝐝×5 =𝐝×⁒(𝐝×4)=𝐝×⁒(𝐈-𝐝𝐝T)=𝐝×,
β‹―
𝐝×(i+4⁒k) =𝐝×i  i=1,2,3,4;kβˆˆβ„•.

Hence we can also write (2) as

𝐑+𝐑T =2⁒𝐈+2⁒(1-cΞΈ)⁒𝐝×2. (3)

Recall that we derived in the last blog

𝐑-𝐑T=2⁒sθ⁒𝐝×.

Combining this with (3), we finally have the Rodrigues’s rotation formula:

𝐑=𝐈+sθ⁒𝐝×+(1-cΞΈ)⁒𝐝×2. (4)