To Convert Rotation Vector to Rotation Matrix, the Rotation Vector Must be Unit?

2.2k Views Asked by At

I have a following formula to convert rotation vector($K\in \Bbb R^3$) to rotation matrix ($R \in SO(3)$) where $I$ is an identity matrix and K could be uniquely acquired from the conversion of an unit vector $k$ which corresponds to the axis of rotation according to this

$R = I + (\sin{\theta}) K + (1-\cos{\theta})K^2$

What I hold as of now as a dataset is a camera parameter which represents the axis of rotation, but those are not unit vectors. Is it okay for me just use the parameter which is not unit with above formula to get $R$?

The dataset is given in this link

1

There are 1 best solutions below

0
On

The short answer is no. The axis of rotation for Rodrigues formula must be unit vector.

However, from the link that you posted I can see that the norm of the "rotation vector" $k$ is the angle $\theta = \|k\|$. So the "rotation vector" is encoding compactly the axis and the angle of rotation.

So for using Rodrigues formula your parameters are the axis of rotation $k/\|k\|$ and the angle of rotation $\theta = \|k\|$.