🗒️「机器人学」三维空间刚体运动
2023-12-23
| 2024-7-26
Words 1774Read Time 5 min

旋转矩阵

点:空间中的基本元素,没有长度,大小
向量:把两个点连接起来,形成向量
坐标:设有一组基, 任意向量a在这组基下则有坐标
向量内积:描述向量间的投影关系
向量外积:两个向量张成的四边形的有向面积。方向垂直于两个向量,大小为

欧氏变换 Euclidean Transform

两个坐标系之间相差了一个欧氏变换。
notion image
首先考虑旋转。某个单位正交基经过一次旋转变成了。向量 在两个坐标系下的坐标分别为. 旋转前后向量本身是不变的,因此:
同时左乘,则有:
矩阵R描述了旋转前后一个向量的坐标变换关系,即描述了旋转,因此称为旋转矩阵。该矩阵的各个值是两个坐标系基的内积,而基向量长度为1,因此实际该矩阵的值是基向量夹角的余弦,故这个矩阵也叫方向余弦矩阵
旋转矩阵是正交矩阵(逆为自身的转置),行列式为1(认为定义的。如果行列式为-1,则表示瑕旋转,即一次旋转加一次反射)。n维的旋转矩阵的集合定义为:
SO表示Special Orthogonal Group(特殊正交群)
表示方向相反的旋转。
具体到两个坐标系之间的旋转,可以记为:把坐标系2的向量变换到坐标系1中的意思。
然后考虑平移。假设先旋转,再平移。则向量a变为a’:
具体到两个坐标系之间的旋转+平移,可以记为:是从坐标系1原点到坐标系2原点的向量在坐标系1下的坐标。例如在做自身定位时,是指从世界坐标系原点指向自身位置的向量在世界坐标系下的坐标。

变换矩阵

上述的变换不是线性关系,也即多次变换是具有先后顺序的,不满足交换律等等。
在一个三维向量末尾添加1,得到的四维向量称为齐次坐标。引入齐次坐标后即可以把旋转和平移写入一个矩阵,称为变换矩阵:
为了简便,将齐次坐标转换与变换矩阵简写为
类似的,3维的变换矩阵的集合定义为:
变换矩阵的逆表示一个反方向的变换。
表示从2到1的变换。

旋转向量和欧拉角

用旋转矩阵/变换矩阵描述刚体运动,存在以下的问题:
  • 旋转矩阵有9个量,而旋转只有3个自由度。变换矩阵有16个量,而变换只有6个自由度。因此是冗余的
  • 旋转矩阵是有约束的,必须正交且行列式为1.这使得求解变得困难

旋转向量

用旋转轴和旋转角来表达旋转。用一个向量,其方向为旋转轴方向,其长度为旋转角,这样的向量叫做旋转向量。旋转向量可以表示为,其中是一个与旋转轴共线的单位向量。
对于变换矩阵,使用一个旋转向量+一个平移向量来表达。
从旋转向量到旋转矩阵的变化过程:Rodrigues’s Formula
对这个公式左右两边求迹,再加上旋转轴()在旋转后不发生改变,可以推导出从旋转矩阵到旋转向量的变化过程:
旋转轴n是矩阵R特征值1对应的特征向量归一化的结果。

欧拉角

用3个分离的转角直观地描述旋转。由于分解旋转的方式多样,因此欧拉角的定义也多样。这里介绍yaw-pitch-roll(ZYX)描述方式。
原始坐标系:朝向我们为X,右侧为Y,上方为Z
notion image
  1. 绕Z轴旋转,得到yaw(偏航角)
  1. 新的Y轴旋转,得到pitch(俯仰角)
  1. 新的X轴旋转,得到roll(滚转角)
和ZYX旋转方向对应的,使用三维向量描述旋转(注意顺序)。
但欧拉角存在万向锁问题(奇异性问题),也就是pitch为度时,第三次旋转轴与第一次旋转轴相同,系统丢失一个自由度。(任何用3个实数表达三维旋转的尝试,都会有奇异性问题)

四元数

在复平面中,旋转可以用一个单位复数来表示。类似地,三维旋转可以用单位四元数来描述。
一个四元数q有1个实部和3个虚部:, 三个虚部的关系如下:
四元数也可以用一个标量+一个向量的方式表达:,s是实部,是一个数。v是虚部,是一个三维列向量。

四元数的运算

, 用向量表示为
  • 加减
  • 乘 每一项互相相乘,然后相加: 也可以写成向量形式: 乘法不满足交换律(除非共线,外积为0)
  • 模长 四元数乘积的模=模的乘积
  • 共轭 四元数共轭乘其本身,得到实四元数,实部为模长的平方
  • 逆 四元数和自己的逆的乘积为1(是四元数1) 对于单位四元数,其逆和共轭相同。
  • 数乘

用四元数表示旋转

  1. 对一个点的旋转
    1. 三维空间点p:[x,y,z],四元数q指定了旋转,旋转后得到p’。首先把点p用一个虚四元数来描述:,相当于三个坐标对应到3个虚部上。旋转后. 把p’的虚部取出,则得到旋转后的坐标。
  1. 四元数到旋转矩阵
  1. 四元数到旋转向量

其他变换

notion image
从真实世界到摄像头图像之间是射影变换。
  • 机器人
  • 「机器人学」差速转向机器人轨迹规划Discrete-Time Signals and Systems
    Loading...