标定结果检查与分析
对于标定完成的外参数据,需要对其检查,并判断标定精度是否满足要求。如果误差超出正常范围,需要定位造成误差的原因,解决问题后,再重新标定,直至获得符合要求的外参。
验证标定结果
点云视图中查看误差点云
在计算相机参数步骤界面中,标定结果计算完成后,点云视图面板会显示误差点云,如下图所示。误差点云用于显示每个标定位姿上标定板圆点真实值与计算值之间的偏差。
误差点云的颜色表示对应点的误差等级(每 0.5 mm 一个误差等级),由绿到红颜色越深表示该点的误差越大。
要查看每个误差等级的点,在点云视图面板,在英文输入法状态下按下数字键 0~9。软件会高亮点云中相应误差等级的点(按键 0 对应误差小于 0.5 mm 的点,按键 1 对应误差在 0.5 mm 至 1 mm 之间的点,依此类推)。
下图展示误差小于 0.5 mm 的数据点(按下数字键 0)。
下图展示误差在 2.0~2.5 mm 的数据点(按下数字键 4)。
场景视图中查看机器人的点云与机器人模型的重合度(适用于ETH场景)
在计算出相机外参后,可以通过在场景视图中查看机器人的点云与机器人模型的重合度来粗略判断标定结果,具体操作如下:
-
将机器人手臂移动至相机视野范围内。
-
在计算相机参数步骤中,单击重新计算外参按钮。该操作将触发相机拍照。
-
单击场景视图,查看机器人点云与机器人模型的重合度。
如机器人的点云与机器人模型大致重合,则说明标定结果可用。
-
机器人模型与真实机器人外观可能不完全吻合,不能作为微调外参的依据。
-
除了场景视图外,也可以在Mech-Viz软件中查看机器人的点云与机器人模型的重合度。
-
场景视图中查看标定板点云相对于固定点的偏移量(适用于EIH场景)
在计算出相机外参后,可以通过在场景视图中查看标定板点云(标定圆十字中心点)相对于固定点的偏移量来粗略判断标定结果,具体操作如下:
-
将标定板放置在固定位置。
-
打开Mech-Viz软件,添加一个固定点,并将其与标定板其中一个标定圆的十字中心点重合。
-
从步骤库中找到“定点移动”步骤,并将其拖动到工程编辑区。
-
选中该步骤,然后在参数编辑区将目标类型参数设置为“工件位姿”,并调整位姿的X/Y/Z坐标值使该位姿与标定板其中一个标定圆的十字中心点重合。
-
-
控制机器人多次变换相机位姿,并在标定流程的计算相机参数步骤中,单击重新计算外参按钮。该操作将触发相机拍照。
-
在场景视图中观察标定板点云相对于固定点是否有明显偏移。
标定板点云相对固定点无明显偏移,则说明标定结果可用。
|
标定结果分析
标定结果评价指标
对于标定好的外参数据,需要对其进行判断是否满足精度要求。点云误差参考标准如下:
-
一般工程场景,要求所有数据点误差小于 3 mm,即 < 3 mm 误差的点达到 100%。
-
高精度场景,要求所有数据点误差小于 2 mm,即 < 2 mm 误差的点达到 100%。
-
码垛场景,要求所有数据点误差小于 5 mm,即 < 5 mm 误差的点达到 100%。
上述标准仅供参考,具体要求以实际生产中的工程精度要求为准。
影响标定精度的因素
对于标定好的外参数据,如果精度没有达到要求,需要寻找产生误差的原因,请按如下顺序逐一排查标定数据,检查造成问题的原因。
检查标定数据有无问题
要查看标定点数据,执行如下步骤:
-
打开 Mech-Vision 软件,在工具栏上单击相机标定(标准)按钮。标定预配置窗口将弹出。
-
在选择如何标定窗口,选择加载已有标定参数单选框,选择标定参数文件,然后单击下一步按钮。
-
在选择标定配置应用方式窗口,选择标定当前加载的相机单选框,然后单击下一步按钮。
-
在选择标定任务窗口,选择重新计算外参单选框,勾选加载标定数据单选框,然后单击开始标定按钮。
-
在标定的计算相机参数步骤,在标定图像及位姿列表面板中选中一个标定点(例如 pose_000),单击标定圆信息面板查看标定点的法兰位姿以及标定板上标定圆的数据。
图中,X (pixel) 和 Y (pixel) 列代表标定板在当前标定点的 2D 图中所有标定圆的圆心像素坐标;Camera frame: X(m)/Y(m)/Z(m)列代表标定板在当前标定点的深度图中所有标定圆的圆心在相机坐标系下的坐标。 |
从如下三个方面对标定点数据进行检查:
-
检查走金字塔路径的标定点的法兰位姿中欧拉角前后是否发生变化
注意只是走金字塔的标定点,不包括旋转的标定点。该检查仅适用于使用标定板多个随机位姿方法采集标定数据的标定场景。 在标定图像及位姿列表面板中依次选中一个标定点(例如 pose_000),然后单击标定圆信息选项卡查看标定点的法兰位姿。走金字塔路径时,机器人会沿着自身基坐标系或法兰坐标系移动,不存在旋转,因此欧拉角会基本保持一致。
对于不同机器人,根据其精度不同,位姿存在上下浮动。如果浮动超过 1 度以上,则机器人本身零点可能丢失,或者机器人精度较差。
解决办法:此时不适合手眼标定,应当检查机器人零点(可以使用重定位的方法检验机器人零点是否准确)并修复机器人问题才能继续标定。
-
检查标定点“平均标定圆间隔测量值误差”是否超出标准值
在标定图像及位姿列表面板选中标定点,在下方消息框中查看平均标定圆间隔测量值误差。
当其超出误差上线标准,标定点会变成黄色警告。 平均标定圆间隔测量值误差 作为内参检查结果的一部分,可部分反映当前相机内参的误差值。
解决办法:对于精度要求不高的场合,轻微超出标准值的内参仍旧可以用。但对于高精度或误差较大的情况,建议重新标定相机内参或返厂替换相机。
内参的误差会影响标定结果,一般内参误差在标准值内时,基本没有问题。
-
检查标定点“标定圆点云波动”的最大值是否超出 3 mm
在标定图像及位姿列表面板选中标定点,在下方消息框中查看标定圆点云波动。标定圆点云波动统计了在当前标定点时标定板所有标定圆圆心坐标拟合在一个平面上的上下波动,其值的大小会直接影响外参的精度。
精度要求越高,要求点云波动值越小。一般设定最大值不超过 3 mm。当超过三个标定点的点云波动的最大值大于 3 mm 时,表明整体精度无法保证。应当排除问题再次标定。
影响标定圆点云波动的可能原因有:
原因一:相机 3D 曝光参数没有调节好,点云波动比较大,没有开启点云平滑和点云去噪功能,或者打开了相机增益。 解决办法:开启点云平滑和点云去噪功能,关闭相机增益,调整 3D 曝光。如果标定板上圆点点云仍旧残缺,需要现场遮光处理。 原因二:在 ETH 场景下进行自动标定时,标定板在机器人法兰末端固定不牢固。标定时机器人移动速度过快,导致相机拍照时标定板存在抖动,使得点云波动很大。 解决办法:调低机器人移动速度,加固标定板,并延长相机拍照等待时间。