罗德里格斯公式

罗德里格旋转公式是计算三维空间中,一个向量绕旋转轴旋转给定角度以后得到的新向量的计算公式。这个公式使用原向量,旋转轴及它们叉积作为标架表示出旋转以后的向量。可以改写为矩阵形式,被广泛应用于空间解析几何和计算机图形学领域,成为刚体运动的基本计算公式。

在向量旋转公式发现以前,瑞士数学家列昂哈德·欧拉(Leonhard Euler(1707-1783))为了证明四平方和定理,发现了四平方和恒等式。然而这个恒等式的构造过程非常繁琐。直到后来,四元数被引入,使得这个恒等式的推导大大简化。 四元数可以很方便地表示旋转变换。但在很多场合中,使用矩阵形式和向量形式表达旋转更有利于推导。向量旋转公式最早由法国数学家本杰明·奥伦德·罗德里格(Benjamin Olinde Rodrigues(1795–1851))导出,后来被应用在很多领域。

设v是一个三维空间向量,k是旋转轴的单位向量,则v在右手螺旋定则意义下绕旋转轴k旋转角度θ得到的向量可以由三个不共面的向量v, k和k×v构成的标架表示:

由上文中向量投影部分的知识我们知道,一个向量可以分解为平行于的分量和正交于的分量:

式(3)用于后面推导中罗德里格斯旋转公式的矩阵形式,其中,最后一个等号的推导如下:

在叉积部分提到过叉积可以表示为矩阵乘向量的形式,类似地,罗德里格斯旋转公式可以表示为旋转矩阵乘以向量的形式,\mathbf{v}_{rot}=\mathbf{R}\mathbf{v},其中\mathbf{R}是旋转矩阵。在slam14讲[4]中的表示如下:

其中,\mathbf{I}表示单位矩阵,\mathbf{k}表示旋转向量(书中用\mathbf{n}表示旋转向量),\mathbf{k}^\wedge表示由\mathbf{k}得到的反对称矩阵。从式(5)不难看出上式,另外,结合式(5)还可以得到下面这个式子:

上式最后一个等号的推导用到了式(3)。从而,得出这个上的矩阵表示:

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注