旋转矩阵公式,是什么?

如题所述

设 :是任何维的一般旋转矩阵。

两个向量的点积在它们都被一个旋转矩阵操作之后保持不变。从而得出旋转矩阵的逆矩阵是它的转置矩阵。这里的是单位矩阵。 

一个矩阵是旋转矩阵,当且仅当它是正交矩阵并且它的行列式是单位一。

正交矩阵的行列式是 ±1;

如果行列式是 −1,则它包含了一个反射而不是真旋转矩阵。 旋转矩阵是正交矩阵,如果它的列向量形成 的一个正交基,就是说在任何两个列向量之间的标量积是零(正交性)而每个列向量的大小是单位一(单位向量)。 

任何旋转向量可以表示为斜对称矩阵 A的指数: 这里的指数是以泰勒级数定义的而 是以矩阵乘法定义的。

A 矩阵叫做旋转的“生成元”。旋转矩阵的李代数是它的生成元的代数,它就是斜对称矩阵的代数。生成元可以通过 M 的矩阵对数来找到。 

编辑本段的二维空间,在二维空间中,旋转可以用一个单一的角 θ 定义。

作为约定,正角表示逆时针旋转。

把笛卡尔坐标的列向量关于原点逆时针旋转 θ 的矩阵是:   cosθ -sinθ。sinθ cosθ 。

编辑本段三维空间,在三维空间中,旋转矩阵有一个等于单位一的实特征值。

旋转矩阵指定关于对应的特征向量的旋转(欧拉旋转定理)。

如果旋转角是 θ,则旋转矩阵的另外两个(复数)特征值是 exp(iθ) 和 exp(-iθ)。

从而得出 3 维旋转的迹数等于 1 + 2 cos(θ),这可用来快速的计算任何 3 维旋转的旋转角。   

3 维旋转矩阵的生成元是三维斜对称矩阵。因为只需要三个实数来指定 3 维斜对称矩阵,得出只用三个是实数就可以指定一个3 维旋转矩阵。   

生成旋转矩阵的一种简单方式是把它作为三个基本旋转的序列复合。

关于右手笛卡尔坐标系的 x-, y- 和 z-轴的旋转分别叫做 roll, pitch 和 yaw 旋转。因为这些旋转被表达为关于一个轴的旋转,它们的生成元很容易表达。

绕 x-轴的旋转定义为: 这里的 θx 是 roll 角。 

绕 y-轴的旋转定义为: 这里的 θy 是 pitch 角。

绕 z-轴的旋转定义为: 这里的 θz 是 yaw 角。   

在飞行动力学中,roll, pitch 和 yaw 角通常分别采用符号 γ, α, 和 β;但是为了避免混淆于欧拉角这里使用符号 θx, θy 和 θz。   

任何 3 维旋转矩阵 都可以用这三个角 θx, θy, 和 θz 来刻画,并且可以表示为 roll, pitch 和 yaw 矩阵的乘积是在中的旋转矩阵在中所有旋转的集合,加上复合运算形成了旋转群 SO(3)。这里讨论的矩阵接着提供了这个群的群表示。

更高维的情况可参见 Givens旋转。 

角-轴表示和四元数表示  

在三维中,旋转可以通过单一的旋转角 θ 和所围绕的单位向量方向 来定义。   

这个旋转可以简单的以生成元来表达:在运算于向量 r 上的时候,这等价于Rodrigues旋转公式:角-轴表示密切关联于四元数表示。

依据轴和角,四元数可以给出为正规化四元数 Q: 这里的 i, j 和 k 是 Q 的三个虚部。 

欧拉角表示:在三维空间中,旋转可以通过三个欧拉角 (α,β,γ) 来定义。

有一些可能的欧拉角定义,每个都可以依据 roll, pitch 和 yaw 的复合来表达。依据 "z-x-z" 欧拉角,在右手笛卡尔坐标中的旋转矩阵可表达为: 进行乘法运算生成。

因为这个旋转矩阵不可以表达为关于一个单一轴的旋转,它的生成元不能像上面例子那样简单表达出来。

对称保持 SVD 表示:对旋转轴 q 和旋转角 θ,旋转矩阵   这里的的纵列张开正交于 q 的空间而 G 是 θ 度 Givens 旋转。

【旋转矩阵】

旋转矩阵(Rotation matrix)是在乘以一个向量的时候改变向量的方向但不改变大小的效果的矩阵。旋转矩阵不包括反演,它不可以把右手坐标系改变成左手坐标系或反之。所有旋转加上反演形成了正交矩阵的集合。对于3D坐标系,任意两个坐标系却不能等价。实际上,存在两种完全不同的3D坐标系:左手坐标系和右手坐标系。如果同属于左手坐标系或者右手坐标系,则可以通过旋转来重合,否则不

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-08-06