1、手眼标定概述
什么是手眼标定
手眼标定(Hand-Eye Calibration)是机器人视觉系统中的核心步骤,用于求解机器人末端执行器(手)与视觉传感器(眼)之间的空间变换关系。在3D视觉定位系统中,机器人需要知道“眼睛看到的目标在机器人坐标系中的精确位置”,而手眼标定正是建立这种坐标映射的数学过程。
从数学本质上看,手眼标定求解的是以下齐次变换矩阵方程:
AX = XB
其中:
A = 机器人末端在两次运动间的变换矩阵
B = 相机在两次运动间观测到的标定板变换矩阵
X = 待求的手眼变换矩阵(固定不变)
这个方程的解 X 一旦确定,视觉系统就能将图像坐标系中的目标点转换到机器人基坐标系,从而引导机械臂完成抓取、装配、焊接等操作。
核心要点:手眼标定的本质是求解两个刚体坐标系之间的6自由度变换(3个平移 + 3个旋转),精度直接影响后续3D视觉定位的最终效果。
为什么需要手眼标定
在3D视觉定位系统中,手眼标定不是可选项,而是必选项。以下是几个关键原因:
| 原因 | 说明 | 后果(不标定) |
|---|---|---|
| 坐标统一 | 相机、机器人、工件各自使用独立坐标系 | 无法将视觉检测结果映射到机器人运动空间 |
| 精度保障 | 消除安装误差、加工公差等系统误差 | 定位误差可达数毫米至数厘米 |
| 动态补偿 | 机器人运动过程中,相机与末端相对位姿实时变化 | 抓取点偏移、碰撞风险增加 |
| 系统集成 | 不同品牌设备间的数据互通 | 视觉系统与机器人控制系统无法协同工作 |
行业经验:在汽车焊装、3C电子装配等精密场景中,手眼标定精度通常要求达到0.1mm~0.5mm。一次完整的标定流程可节省后续调试时间80%以上。
Eye-in-Hand 与 Eye-to-Hand 的区别
根据相机安装位置的不同,手眼标定分为两种经典构型。下图清晰展示了两种方式的拓扑结构:
两种构型在标定方程、应用场景和精度特性上存在显著差异:
| 对比维度 | Eye-in-Hand(眼在手上) | Eye-to-Hand(眼在手外) |
|---|---|---|
| 相机安装位置 | 固定在机器人末端执行器上 | 固定在工作空间上方或侧面 |
| 标定方程 | AX = XB(经典形式) | AX = ZB(引入机器人基座到相机的变换Z) |
| 视野特点 | 随机器人运动而移动,视野灵活 | 视野固定,覆盖整个工作区域 |
| 典型应用 | 精密装配、焊缝跟踪、小零件抓取 | 码垛、大范围分拣、安全监控 |
| 标定复杂度 | 中等,需多次运动采集数据 | 较高,需同时求解两个变换矩阵 |
| 精度影响因素 | 机器人运动学精度、相机内参 | 相机安装稳定性、标定板尺寸 |
标定在3D视觉定位中的作用
在完整的3D视觉定位系统中,手眼标定处于数据流的中枢位置。下面的流程图展示了标定结果如何串联整个系统:
从系统架构角度看,手眼标定在3D视觉定位中承担以下关键角色:
- 数据桥梁:将相机坐标系下的目标点云/位姿数据,转换为机器人可执行的基坐标系指令
- 精度基准:标定精度直接决定最终定位误差的上限,是系统精度的“天花板”
- 系统解耦:使视觉模块与运动控制模块可独立开发、测试和升级
- 误差溯源:当定位出现偏差时,手眼标定结果是排查误差来源的第一检查点
常见误区:很多工程师认为“标定一次就能永久使用”。实际上,机器人碰撞、相机松动、温度变化等都可能导致标定参数漂移。建议在以下情况重新标定:①设备维修后 ②更换末端工具 ③定位精度突然下降 ④每3~6个月定期校验。