Soma Zero Tutorials
🔍 搜索功能尚未开启,敬请期待。

1.6 3D/6D 视觉抓取核心知识点

这套课的核心目标是利用六轴机械臂,实现视觉引导抓取目标物体,主要分为 3D、6D 视觉抓取:

  • 3D 视觉抓取
    3D 视觉抓取是指在视觉信息的引导下,让机械臂末端只需要在空间中移动到合适的三维位置)来实现抓取,姿态(绕各坐标轴的旋转)保持不变或已固定。换言之,它主要关注“在哪里抓”,而对抓取时末端的旋转姿态要求较低或不变。
  • 6D 视觉抓取
    6D 视觉抓取则是在 3D 位置信息的基础上,还要同时确定机械臂末端在绕各坐标轴的旋转姿态),即不仅要知道“在哪里抓”,还要对机械臂末端的姿态进行精确控制。它要求完整地获取并利用目标物体在空间中的位置与朝向信息,并根据工艺或动作需求对末端进行更灵活、全面的姿态调整。
3D 视觉抓取 6D 视觉抓取

以下是一种“从结果倒推”的思路梳理,帮助大家了解,要实现 3D/6D 视觉抓取,需要掌握哪些知识点以及它们之间的关系。

1. 3D 视觉抓取

Q1. 如何实现 3D 视觉抓取?

要实现 3D 视觉抓取,首先需要确定物体的三维位置,然后将该位置转换到机械臂的坐标系中,再让机械臂末端运动到这个目标点即可。3D 视觉抓取关注“在空间的哪一点抓取”,末端的抓取姿态大多固定或无严格要求。

  • 关键知识点:深度相机获取物体三维坐标、坐标转换(手眼标定)、机械臂运动学求解。

Q2. 为什么要获取物体的三维坐标?

因为只有知道了物体在空间中的 信息,机械臂才能准确移动到那个位置进行抓取。若无法准确获取物体的位置,机械臂末端就无法对准目标。

  • 关键知识点:深度图像处理、目标检测或分割算法。

Q3. 如何从深度相机中提取物体的三维坐标?

主要通过以下步骤:

  1. 相机内参标定:了解相机的焦距、主点坐标等。
  2. 图像处理与目标检测:在 RGB 或深度图中识别并定位目标像素。
  3. 深度值读取:从深度图或点云中提取对应像素的深度信息。
  4. 坐标转换:使用内参将像素坐标和深度值转换成相机坐标系下的
  • 关键知识点:相机内参原理、目标检测方法(传统或基于深度学习)、像素到相机坐标的转换。

    实际使用时,一般建议直接使用深度相机提供的 API 获取,厂家已经封装好了。

Q4. 为什么要进行相机标定和手眼标定?

  • 相机标定(内参标定):确定相机的成像模型(焦距、畸变系数等),保证从像素坐标到相机坐标的转换准确。
  • 手眼标定(外参标定):确定相机坐标系与机械臂基坐标系(或末端坐标系)的转换关系。这样才能将相机中测得的目标坐标映射到机器人世界坐标系,从而让机械臂精确地移动到目标点。
  • 关键知识点:标定板(棋盘格、圆点阵等)的使用方法,手-眼标定算法(Tsai 算法、AX=XB 模型等)。

Q5. 机械臂如何根据物体坐标移动到目标点?

机械臂需要用到运动学模型逆运动学求解

  1. 根据手眼标定结果,得到目标在机械臂基坐标系中的位置
  2. 使用机械臂的运动学方程或逆解算法,计算关节角度;
  3. 或直接调用机械臂 API 运动到该位置。
  • 关键知识点:机械臂正逆运动学、机械臂控制 API 等。

Q6. 3D 视觉抓取常见的应用场景有哪些?

  • 箱子/料箱取料:例如从混乱堆放的物体中拣选。
  • 生产线分拣:只需要知道物体的大概位置就足够。
  • 简单装配:装配前只需要抓起工件,并无复杂姿态要求。

小结:通过倒推可知,实现 3D 视觉抓取的核心在于准确获取目标的三维坐标并完成机械臂位姿映射。为此,需要掌握深度相机使用、手眼标定、机械臂运动学等知识。

2. 6D 视觉抓取

Q1. 如何实现 6D 视觉抓取?

6D 视觉抓取不仅要确定物体在空间中的位置 ,还要确定抓取时的旋转姿态 。因此,需要在 3D 位置信息的基础上,进一步估计或规划机械臂末端工具的朝向。

  • 关键知识点:物体姿态估计、旋转矩阵、机械臂逆运动学的姿态求解。

Q2. 为什么需要估计物体的姿态(朝向)?

有些物体的形状和装配要求决定了抓取姿态非常重要:

  • 若物体有明显的方向性(如螺丝刀、斜面零件),需要以特定角度抓取。
  • 若工序需要精准插配或装配,需要让末端姿态和物体姿态匹配。
  • 关键知识点:6D 位姿估计算法(如基于特征匹配的 PnP 求解,或基于深度学习的 6D 位姿估计网络)。

Q3. 如何从相机中估计物体的朝向信息?

  • 基于特征的算法:在 RGB 图像或点云中检测物体特征点,通过匹配已知 CAD 模型或模板来估计姿态。

  • 基于深度学习的 6D 位姿估计:利用训练好的神经网络,输入 RGB-D 数据或点云,直接回归物体的 6D 位姿(位置 + 姿态)。

  • 关键知识点:PnP 位姿求解(Perspective-n-Point)、ICP(点云配准)、深度学习检测网络(如 graspnet 等)。

    本课程使用的是深度学习检测网络 graspnet

Q4. 如何将物体姿态映射到机械臂末端姿态?

完成手眼标定后,我们可以把物体在相机坐标系下的位姿转换到机器人基坐标系。此时,需要:

  1. 将目标物体的旋转信息(可用旋转矩阵、四元数等形式)映射到机器人坐标系。
  2. 考虑机械臂末端执行器的安装角度、抓取工具几何,调整最终抓取姿态。
  • 关键知识点:坐标变换矩阵的拼接(RobotBase ← Camera ← Object)、欧拉角转换、末端执行器安装补偿。

小结:6D 视觉抓取在 3D 视觉抓取的基础上,进一步要求末端姿态也能灵活调整,这就需要掌握物体姿态估计等更加深入的技术。