搞清九点标定和3D手眼标定,别再傻傻分不清!
做机器视觉的朋友,如果连九点标定和3D手眼标定都没分清楚,那可真要补补课了。
别着急,今天,带你彻底弄明白它俩到底有啥区别。
一句话先划重点
九点标定解决的是2D平面坐标映射问题,而3D手眼标定解决的是3D空间位姿变换问题。
简单理解:一个在平面上“画格子对齐”,一个在空间里“摆姿势定位”。
九点标定:简单快速的“平面选手”
九点标定适用于2D相机的平面场景。它的核心任务,是建立图像像素坐标与机器人平面坐标(X, Y)之间的映射关系。

怎么标定?
机器人只需平动到9个事先设定好的位置,相机依次拍照即可。整个过程不需要考虑高度变化——因为默认所有工件都在同一个平面上。
如果工件有旋转角度怎么办?
别担心,这时候可以选用12点标定法,在九点基础上增加旋转角度的采样点,满足带角度的识别需求。简单说:纯平移用9点,带旋转用12点。
常见坑点
很多人标定完发现精度不对,往往是因为忽略了工件高度不一致。九点标定的前提是所有物体严格位于同一高度平面,一旦工件有厚薄差异或平台不平,映射关系就会失真。
适用场景
平面分拣、传送带抓取、贴标、点胶等二维作业场景。只要工件老老实实“躺”在同一平面上,九点标定又快又好用,谁用谁知道。
3D手眼标定:立体空间的“全能选手”
3D手眼标定适用于3D相机的立体场景。它不只要知道“在哪里”,还要知道“怎么摆”——也就是位置(X,Y,Z)加姿态(Rx, Ry, Rz),共6个自由度。
它分为两种常见情况:
1. 眼在手外(Eye-to-Hand)
相机固定安装在某个位置,比如架在流水线上方。标定目标是求出相机坐标系 → 机器人基座坐标系的空间位姿变换关系。

通俗讲:相机不动,手在动,要让手知道“相机看到的物体,在我自己的坐标系里到底在哪儿”。
2. 眼在手上(Eye-in-Hand)
相机装在机器人末端法兰上,跟着手臂一起运动。标定目标是求出相机坐标系 → 末端法兰坐标系的空间位姿变换关系。

通俗讲:相机跟着手动,相机看到的物体,相对我的手爪是什么位置和角度。
怎么标定?
机器人带着3D标定板在空间中以多个姿态移动——不能只平移,必须做不同角度的旋转。系统联立多个位置的方程,最终求解出“手眼矩阵”。
特别注意
3D手眼标定需要先完成相机内参标定,否则外参求解会出问题。内参标定是让相机先“认识自己”,手眼标定是让相机“认识手”。两步都不能少。
另外,标定时的姿态要足够丰富,角度变化要足够大,否则方程病态,解出来的矩阵误差很大。这也是很多人标定失败的原因——动作太“温柔”了。
适用场景
无序抓取、散乱工件定位、拆码垛、装配引导、焊缝跟踪等复杂三维作业场景。当工件在空间中任意摆放、姿态各异、层叠交错时,3D手眼标定才是正解。

一个直观的对比表
|
对比项 |
九点标定 |
3D手眼标定 |
|
适用相机 |
2D相机 |
3D相机 |
|
解决维度 |
2D(X,Y) |
3D(X,Y,Z,Rx,Ry,Rz) |
|
标定动作 |
仅平动(9或12个点) |
平动+转动(多姿态) |
|
是否需要内参 |
一般不需要 |
必须先做 |
|
标定速度 |
快,几分钟搞定 |
慢,需要规划姿态 |
|
精度影响因素 |
平面度、高度一致性 |
内参精度、姿态丰富度 |
|
典型场景 |
平面抓取、传送带 |
无序抓取、立体装配 |
一句话总结
> 平面用九点,空间选3D手眼标定。
选对了标定方法,事半功倍;选错了,再好的相机也是白搭。





致瑞新闻


