资讯详情

行业资讯
终于有人把SD相机手眼标定讲清楚了,TCP触碰和标记物两种方法全覆盖 资讯 author

终于有人把SD相机手眼标定讲清楚了,TCP触碰和标记物两种方法全覆盖

17
3D视觉工坊
3D视觉工坊
2026-08-27
一、下载手眼标定 GUI 和 SDK添加微信,联系咨询二、什么是手眼标定我们将提供一款用于机械臂手眼标定的专业软件。通过该软件,用户可以计算相机与机械臂末端执行器之间的精确空间变换关系。▲ 眼在手上(Eye-in-Hand):相机安装在机械臂末端▲ 眼在手外(Eye-to-Hand):相机固定在基座或工作台上三、标定前准备⚠️ 正式开始标定之前,请逐项完成以下 6 项检查,避免因硬件问题导致标定失败:3.1 负载和安装检查确认相机 / 标定板重量在机械臂额定负载内,安装牢固无松动。超载可能导致末端法兰盘变

一、下载手眼标定 GUI 和 SDK

图片添加微信,联系咨询

二、什么是手眼标定

我们将提供一款用于机械臂手眼标定的专业软件。通过该软件,用户可以计算相机与机械臂末端执行器之间的精确空间变换关系。

眼在手上示意图▲ 眼在手上(Eye-in-Hand):相机安装在机械臂末端

眼在手外示意图▲ 眼在手外(Eye-to-Hand):相机固定在基座或工作台上

三、标定前准备

⚠️ 正式开始标定之前,请逐项完成以下 6 项检查,避免因硬件问题导致标定失败:

3.1 负载和安装检查

确认相机 / 标定板重量在机械臂额定负载内,安装牢固无松动。超载可能导致末端法兰盘变形或运动异常。

3.2 底座稳固检查

确保机械臂底座安装牢固。可以让机械臂快速进行大幅度摆动,观察底座和本体有无晃动。

3.3 绝对精度检查

在标准零点姿态时,检查各轴刻度线是否对齐。沿 X/Y/Z 轴移动并与实际距离比较,误差过大需联系厂商校准。

3.4 TCP 精度检查

确保机械臂 TCP 精度满足要求。推荐使用绕点旋转测试法检测 TCP 精度。

3.5 相机精度检查

在视野范围内放置一块标定板进行拍照,检测相机精度。低于出厂标准需联系厂商校准。

3.6 相机预热

相机需预热暖机,保证标定与后续使用过程中温度一致,减少点云温漂。

四、本教程用到的设备、标记物与工具

🤖 4.1 设备

设备 1遨博机械臂 Aubo C5
设备 2苏州三迪斯维SD-M2600C 3D 相机

图片▲ 本教程使用的设备:Aubo C5 机械臂 + SD-M2600C 3D 相机

🎯 4.2 标记物

提供两种标记物,分别适用于 TCP 触碰标定 和 标记物标定。无论选择哪种方式,都建议优先使用带十字架的非对称黑底白圆标定板。

4.2.1 非对称黑底白圆标定板(推荐 ✅)

支持 7×11 / 4×11 / 4×5 三种规格,软件将自动识别。

非对称黑底白圆标定板

▲ 非对称黑底白圆标定板(A3/A4 规格 PDF 可打印)

4.2.2 同心圆标记物

同心圆标记物仅适用于不方便使用标定板的场景。精度略低于非对称圆点标定板。

标定板细节

🔧 4.3 工具(仅 TCP 触碰标定需要)

Aubo C5 适配尼龙材质探针一个(TCP 触碰标定顶针)

637f5a80468211dd452c3325b54d4154_1787042797063-edf29a32-574b-43f2-9a33-49a28920d718_x-oss-process=image%2Fformat%2Cwebp%2Finterlace%2C1.jpeg

五、TCP 触碰标定

⚠️ 前置条件:在做 TCP 触碰标定前,需要先进行 TCP 精度验证。
📖 详细步骤请参考:手眼标定-TCP触碰标定前的TCP精度验证,请加微信:QYong2014

5.1 采集数据步骤

📍 5.1.1 眼在手上(Eye-in-Hand)

总共采集至少 3 组数据:

  1. 拍照:固定标记物,移动机械臂多姿态拍摄,记录 2D 图像 + 点云 + 机械臂位姿
  2. 触碰:移动机械臂触碰十字架中心点,记录 TCP 坐标
  3. 可选:移动标记物到另一固定位置,重复上述过程
  4. 关键:三次触碰姿态差异尽可能大一些

💡 注:对于眼在手上,必须移动至少一次机械臂做多角度拍摄

📍 5.1.2 眼在手外(Eye-to-Hand)

总共采集至少 3 组数据:

  1. 拍照:固定相机,固定标记物,拍摄,记录 2D 图像 + 点云
  2. 触碰:移动机械臂触碰十字架中心点,记录 TCP 坐标
  3. 可选:移动标记物到另一固定位置,重复上述过程
  4. 关键:三次触碰姿态差异尽可能大一些

💡 注:对于眼在手外,不需要记录拍照时机械臂位姿(计算不使用)

图片

▲ 拍照记录图像+点云,触碰记录 TCP 坐标

📝 注意事项:对于每个触碰点,一次「拍照+触碰」相当于一组数据;使用带十字架的非对称黑底白圆标定板时,上面有 3 个触碰点,单次拍摄就包含 3 个触碰点,依次触碰即可提供 3 组数据。

图片

5.2 软件操作步骤

image.png

5.2.1 导入拍照时目标点坐标

  • 导入或输入拍照时相机坐标系下的三维点坐标
  • 可使用「工具」页的标记物检测功能,输入图片和点云计算得到 XYZ 坐标
image.png

5.2.2 导入拍照时机器人姿态

  • 导入或输入拍照时的机器人位姿
  • 软件会自行判断欧拉角的输入顺序
  • 若选择「眼在手外」模式,此项将隐藏,无需操作

5.2.3 导入触碰时 TCP 坐标

  • 导入或输入触碰目标点时的 TCP 坐标

5.2.4 模式选择和计算

  • 选择模式:眼在手上 或 眼在手外
  • 点击「计算」按钮完成标定

5.3 误差分析

image.png

误差分析界面

5.3.1 理论误差

  • 显示总的平均计算误差,以及每个数据的误差
  • 如果误差过大可以手动删除异常数据,再重新计算

5.3.2 标定结果查看

  • 眼在手上:显示相机到末端执行器(法兰盘)的变换矩阵
  • 眼在手外:显示相机到机器人基座的变换矩阵

5.3.3 TCP 触碰验证实际误差

  • 与 TCP 触碰标定计算时输入的数据格式完全相同,相当于从计算数据中拿出一部分做验证

  • 点 XYZ:输入目标点在相机坐标系下的三维坐标
  • 机器人位姿:输入拍摄目标点时的机器人位姿(仅眼在手上需要)
  • TCP 坐标:输入触碰目标点时对应的实际 TCP 坐标
  • 点击「计算 TCP 触碰误差」按钮,显示每个触碰点的误差
TCP触碰验证

5.4 注意事项

① 机器人位姿文件格式(.txt)

纯文本文件,每行一组位姿数据,数值之间用空格或英文逗号分隔:

  • 欧拉角格式:每行 6 个值 → X Y Z Rx Ry Rz(R1 R2 R3 可以是 RX RY RZ 或 RZ RY RX,软件自行判断)
  • 四元数 WXYZ:每行 7 个值 → X Y Z W Qx Qy Qz(很多视觉算法库原生格式)
  • 四元数 XYZW:每行 7 个值 → X Y Z Qx Qy Qz W(ROS 等系统通用格式)

② 采样空间覆盖:若计算精度高但实际 TCP 触碰精度差,最可能原因是采样空间未覆盖到。需保证机械臂均匀覆盖工作空间,戳点也覆盖工作空间。

③ 缩小范围重标:若精度不够好,条件允许可缩小工作范围后重新标定,以获得更高精度。

5.5 合理的精度区间

✅ TCP 触碰标定合理精度区间:理论误差约 0.5 mm 左右,一般戳点误差也在 0.5 mm 左右。总体来说小于 1 mm 即可,小于 0.5 mm 更佳。

六、标记物标定

6.1 采集数据步骤

📍 6.1.1 眼在手上

固定标记物,移动机械臂多姿态拍摄,记录 2D 图像 + 点云 + 机械臂位姿

📍 6.1.2 眼在手外

固定相机,标记物装于末端,移动机械臂多姿态拍摄,记录 2D 图像 + 点云 + 机械臂位姿

眼在手上标定板摆放眼在手外标定板摆放

▲ 左:眼在手上(标定板固定) | 右:眼在手外(标定板随末端运动)

同心圆标记物

▲ 同心圆标记物(备选方案)

💡 数据采集要点:

  1. 每次采集位姿变化建议旋转 10°~30° 以上,避免相邻两组姿态过于接近
  2. 最少拍 6 组数据,建议 15 组以上,让机械臂均匀覆盖整个工作空间
图片

6.2 软件操作步骤

⚠️ 点云和图片还有机械臂位姿文件要放在同一路径下。图片和点云用数字命名(如 0.png 对应 0.ply),放入同一文件夹。

image.png

标记物标定主界面

6.2.1 点云和图片列表区域

  • 加载图片和点云
  • 选择标记物类型
  • 选择点云单位

6.2.2 图像显示区域

  • 显示标记物图片以及识别情况

6.2.3 机器人位姿设置区域

  • 加载机器人位姿数据(*.txt)
  • 选择机器人数据格式
  • 选择机器人数据单位

6.2.4 模式选择和计算区域

  • 选择模式(眼在手上或眼在手外)
  • 点击「计算」

标记物标定计算界面标记物检测结果

6.3 误差分析

同 5.3 TCP 触碰标定的误差分析方法一致。

6.4 注意事项

  1. 优先考虑非对称圆点标定板,精度高于同心圆标记物。同心圆只适用于不方便使用标定板的场景。
  2. 确保标记物在相机的景深范围内,清晰对焦。
  3. 眼在手上时,确保标记物在标定过程中放置稳固不能动。
  4. 单目相机有面阵线移拍摄模式的优先使用面阵线移;双目相机用了摆动线扫的点云与 2D 图片对齐选项必须选「是」。
  5. 机器人运动停下来后,等待几秒让振动稳定后再拍摄。
  6. 调整 2D 曝光使每个标定圆都清晰可见,不过暗也不过亮。
  7. 调整 3D 曝光使每个圆心处点云无缺失且平滑。
  8. 机械臂不能只绕一个轴旋转,必须有多方向姿态变化,建议每个轴都要旋转。每次位姿变化建议 10°~30° 以上。
  9. 最少 6 组数据,建议 15 组以上,均匀覆盖整个工作空间。
  10. 图像和点云编号必须一一对应(0.png ↔ 0.ply,依此类推)。
  11. 位姿文件支持多种格式: 
    • 欧拉角:6 个值(X Y Z Rx Ry Rz)
    • 四元数 WXYZ:7 个值(X Y Z W Qx Qy Qz)
    • 四元数 XYZW:7 个值(X Y Z Qx Qy Qz W)
    • 4×4 矩阵:16 个值(按行优先排列的齐次变换矩阵)
12. 若精度不够好,条件允许可缩小工作范围后重新标定。

6.5 合理的精度区间

⚡ 标记物标定合理精度区间:理论误差在 1~2 mm 区间,很难做到 1 mm 以下。如需更高精度,请选择 TCP 触碰标定方案。

七、小工具

7.1 工具 1:计算标记物圆心坐标

提供圆心坐标检测功能,在 TCP 触碰标定或 TCP 触碰验证时会用到。

图片

7.2 工具 2:点云坐标转换

有了手眼标定结果,就可以将点云从相机坐标系转换到机器人基座坐标系,通过转换后的点云重合度来间接验证标定结果的准确性。

可联系微信:QYong2014,咨询3D相机

来源:3D视觉工坊

分享11
Shopping Cart
0 new
购物车

当前购物车数量由 Destoon 实时读取

Cart Items
0
打开购物车时加载商品清单
Go to shopping cart 我的订单