2. 坐标系基础:世界坐标系、机器人基坐标系、工具坐标系、相机坐标系、标定板坐标系之间的变换关系
手眼标定的本质是求解不同坐标系之间的刚体变换矩阵。在机器人视觉引导系统中,通常涉及五个核心坐标系:世界坐标系 (World)、机器人基坐标系 (Base)、工具坐标系 (Tool)、相机坐标系 (Camera) 和 标定板坐标系 (Calibration Object / Grid)。理解它们之间的层级变换关系,是进行标定参数优化和误差分析的前提。
2.1 五大坐标系定义与作用
| 坐标系名称 | 符号 | 物理载体 | 核心作用 |
|---|---|---|---|
| 世界坐标系 | {W} | 工作空间中的固定参考点(如地面、传送带基座) | 全局参考,统一所有物体的位置描述 |
| 机器人基坐标系 | {B} | 机器人安装底座的中心 | 机器人运动学计算的根节点,所有关节角度最终映射到此坐标系 |
| 工具坐标系 | {T} | 机器人末端法兰盘或实际工具(如夹爪、焊枪)的TCP | 描述工具末端点 (TCP) 的位置和姿态,是机器人执行动作的最终参考 |
| 相机坐标系 | {C} | 相机光心 | 视觉测量的原点,所有图像坐标和3D点云数据均基于此坐标系 |
| 标定板坐标系 | {O} | 标定板上的特征点(如棋盘格角点、圆点阵列) | 提供已知几何精度的3D参考点,作为相机外参标定和手眼标定的桥梁 |
关键概念: 在机器人视觉中,“变换” 通常指刚体变换,包含旋转 (R) 和平移 (t),用齐次变换矩阵 T (4x4) 表示。例如,
^B_T_T 表示从工具坐标系 {T} 到机器人基坐标系 {B} 的变换。
2.2 坐标系变换关系总览
下图展示了五个坐标系之间的典型变换链路。其中,手眼标定 的核心是求解 ^C_T_T(眼在手外)或 ^T_T_C(眼在手上)这两个未知变换矩阵。
2.3 核心变换矩阵详解
在实际标定流程中,我们通常将世界坐标系与机器人基坐标系或相机基坐标系对齐,以简化问题。以下是必须掌握的四个关键变换:
- 机器人正解变换
^B_T_T:由机器人控制器根据当前关节角度实时计算得出,表示工具坐标系在机器人基坐标系下的位姿。这是标定过程中最可靠的已知量之一。 - 相机外参变换
^C_T_O:通过拍摄标定板图像,利用PnP算法求解得到。它描述了标定板坐标系相对于相机坐标系的位姿。其精度受图像质量、标定板加工精度和相机内参标定精度影响。 - 手眼变换
^T_T_C或^C_T_T:这是手眼标定的最终求解目标。对于眼在手上配置,^T_T_C是固定不变的;对于眼在手外配置,^C_T_T是固定不变的。 - 基座到世界变换
^W_T_B:通常通过外部测量设备(如激光跟踪仪)或机器人示教确定。在大多数标定优化场景中,我们假设此变换为已知常量,或将其与世界坐标系合并。
2.4 眼在手上 vs 眼在手外:变换链差异
两种主流配置的变换链闭合方程不同,直接影响标定算法的输入输出。
| 配置类型 | 变换链闭合方程 | 待求解量 | 典型应用场景 |
|---|---|---|---|
| 眼在手上 (Eye-in-Hand) | ^B_T_T * ^T_T_C * ^C_T_O = ^B_T_O |
^T_T_C (相机→工具) |
移动式视觉引导抓取、焊接、装配 |
| 眼在手外 (Eye-to-Hand) | ^C_T_T * ^T_T_B * ^B_T_O = ^C_T_O |
^C_T_T (工具→相机) |
固定式视觉定位、传送带跟踪、检测 |
优化视角: 在参数优化阶段,我们通常将
^B_T_T 和 ^C_T_O 视为带有噪声的观测值。优化的目标是通过多组观测数据,找到最优的 ^T_T_C 或 ^C_T_T,使得整个变换链的闭环残差最小。
2.5 坐标系变换的数学表示
所有变换均使用齐次坐标表示。一个三维点 P 在坐标系 {A} 下的坐标 ^A_P 与在坐标系 {B} 下的坐标 ^B_P 满足:
^A_P = ^A_T_B * ^B_P
其中:
^A_T_B = [ ^A_R_B ^A_t_B ]
[ 0 0 0 1 ]
^A_R_B : 3x3 旋转矩阵
^A_t_B : 3x1 平移向量
在手眼标定中,我们通常利用 AX = XB 方程(眼在手上)或其变体来求解。其中 A 和 B 是已知变换的增量,X 是待求的手眼矩阵。
2.6 坐标系变换中的误差传递
在标定参数优化中,必须关注误差如何在坐标系间传递。主要误差源包括:
- 机器人运动学误差:导致
^B_T_T存在微小偏差,尤其在远离零点位置时。 - 相机内参标定误差:直接影响
^C_T_O的旋转和平移精度。 - 标定板平面度与特征点位置误差:引入系统性的参考点偏差。
- 图像特征提取误差:亚像素角点提取的随机噪声。
优化实战提示: 在进行手眼标定参数优化时,不要只关注手眼矩阵
X 本身的数值。建议同时分析 残差分布 和 重投影误差。如果残差呈现明显的系统性趋势(如随机器人姿态变化),说明运动学模型或相机模型存在未补偿的误差,需要引入额外的标定参数(如机器人连杆参数、相机畸变高阶项)进行联合优化。