目的
- 标定出机械臂末端和相机坐标系的转换关系
算法原理
- 计算协方差矩阵c(**不是计算协方差,直接去质心如何分解xyt的矩阵**)
C = 1/n * (P - mP) * (Q - mQ)T
对于每个点云 P 和 Q,需要先计算出它们的质心 mP 和 mQ,然后将每个点减去其所在点云的质心,得到以质心为原点的点云,p为n*3的矩阵(n为点数),mp质心向量 - 对协方差进行svd分解
U S V T = C U S V^T = C USVT=C
则旋转矩阵 R R R 和平移向量 t t t 可以表示为:
R = V U T R = VU^T R=VUT证明过程
t = q ˉ − R p ˉ t = \bar{q} - R \bar{p} t=qˉ−Rpˉ
其中, p ˉ \bar{p} pˉ 和 q ˉ \bar{q} qˉ 分别表示点云 P 和点云 Q 的质心位置, T ^T T 表示矩阵的转置操作。计算得到旋转矩阵 R R R 和平移向量 t t t 后,即可构造出变换矩阵。
知识点补充
-协方差
- 点云质心
为什么表示方向信息
- 无偏估计
构建把A转换到B的矩阵
旋转矩阵:先建立B坐标系的xyz单位向量,利用xyz单位向量建立3*3的旋转矩阵(第一列是x),然后在再求逆才是把A转换到B的旋转矩阵(还没手动推导证明)。
平移向量:A坐标系的原点在B中的坐标(还没手动推导证明)
利用A转换到B的矩阵求B转换到A的矩阵
利用分块矩阵求逆得
在这里插入图片描述