一、课程导论:眼在手外标定的应用场景、课程目标与学习路径、坐标系基础概念

大家好,我是你们这门课的老朋友。

做机器视觉这些年,我接触过不少刚入行的工程师。他们最常问的一个问题就是:「相机装好了,机器人也动了,怎么让它们俩配合干活?」

说白了,这就是我们今天要聊的核心——眼在手外标定。

1.1 眼在手外标定:到底在解决什么问题?

先说说应用场景。你想想看,一个典型的自动化产线:

  • 机器人负责抓取、放置、装配
  • 相机负责拍照、定位、检测

但相机看到的坐标,和机器人运动的坐标,是两套语言。你得把它们「翻译」成同一套坐标系,机器人才能准确抓起来。

核心一句话:眼在手外标定,就是求相机坐标系到机器人基座坐标系的变换矩阵。

我在项目中遇到过这样一个案例:一条手机组装线,相机装在流水线上方,机器人从旁边抓取零件。刚开始没标定好,机器人总是抓偏,偏差有2-3毫米。后来我重新做了眼在手外标定,精度直接干到0.1毫米以内。嗯,这就是标定的价值。

常见的应用场景包括:

  • 抓取与放置:视觉引导机器人抓取传送带上的工件
  • 装配对位:相机定位,机器人完成精密装配
  • 检测与分拣:视觉检测后,机器人将不良品剔除
  • 涂胶与焊接:视觉引导机器人沿轨迹运动

1.2 课程目标:学完你能做什么?

这门课一共30章,我不打算只讲理论。我的目标是:

  1. 理解原理:搞清楚坐标系变换的数学本质
  2. 动手实操:用HALCON完成完整的标定流程
  3. 工程落地:处理实际项目中的各种坑
  4. 精度优化:知道怎么提升标定精度

我的建议:每章学完后,一定要自己动手跑一遍代码。光看不练,等于白学。

1.3 坐标系基础概念:你得先认识这六个坐标系

做手眼标定,坐标系是绕不开的坎。我刚开始学的时候,也被这些坐标系搞得晕头转向。后来我总结了一个方法——画图。把每个坐标系画出来,标清楚它们之间的关系,思路就清晰了。

下面这张图,是我自己整理的坐标系关系图,你先看一遍:

眼在手外标定——六大坐标系关系图 世界坐标系 World 相机坐标系 Camera 图像坐标系 Image 机器人基座坐标系 Robot Base 工具坐标系 Tool 工件坐标系 Object 外参标定 内参+畸变 安装关系 工具标定 抓取关系 手眼标定 💡 关键理解: 眼在手外标定,求的是「相机坐标系 → 机器人基座坐标系」的变换矩阵。 其他坐标系之间的变换,可以通过已知关系推导出来。

这张图我建议你保存下来。每次做标定前,先对着图理一遍思路,能少走很多弯路。

1.4 六个坐标系详解

接下来,我一个一个给你讲清楚。

坐标系 英文 作用 典型原点
世界坐标系 World 描述所有物体的位置 产线固定点
相机坐标系 Camera 相机光心为原点,Z轴沿光轴 相机光心
图像坐标系 Image 像素坐标,描述图像中的位置 图像左上角
机器人基座坐标系 Robot Base 机器人运动的参考系 机器人底座中心
工具坐标系 Tool 描述工具末端的位置和姿态 工具末端
工件坐标系 Object 描述工件的位置和姿态 工件中心

⚠️ 曾经踩过的坑:有一次我忘了区分「工具坐标系」和「机器人基座坐标系」,直接把相机看到的坐标发给机器人,结果机器人抓了个寂寞。后来我养成了一个习惯——每次标定前,先确认当前用的是哪个坐标系。

1.5 学习路径:这门课怎么学?

我把30章内容分成了四个阶段:

  1. 基础篇(第1-8章):坐标系、相机模型、标定板、HALCON基础操作
  2. 核心篇(第9-18章):手眼标定原理、九点标定、N点标定、代码实现
  3. 进阶篇(第19-25章):精度分析、误差补偿、多相机标定、3D标定
  4. 实战篇(第26-30章):完整项目案例、调试技巧、常见问题排查

我个人习惯是:每学完一个阶段,就找一个实际项目练手。比如学完基础篇,你可以先试着标定一个单相机;学完核心篇,就可以做完整的抓取项目了。

一个小技巧:学完每章后,用思维导图把知识点串起来。我自己的笔记里,光坐标系关系图就画了不下20遍。画着画着,你就懂了。

1.6 本章小结

好了,第一章的内容就到这里。我们讲了:

  • 眼在手外标定的应用场景
  • 课程目标和学习路径
  • 六大坐标系的概念和关系