文章目录
一 摘要
二 资源
三 内容
一 摘要
最近,已经提出了许多抓取检测方法,这些方法可用于直接从传感器数据中定位机器人抓取配置,而无需估计物体姿态。其基本思想是将抓握感知视作计算机视觉中的对象检测。这些方法将噪声和部分遮挡的 RGBD 图像或点云作为输入,并在不已知物体CAD模型的情况下生成可行的抓取位姿估计输出。尽管这些方法可以很好地将掌握知识推广到新对象,但它们尚未被证明足够可靠以供广泛使用。许多抓取检测方法对于孤立或呈现轻杂乱的新物体,其抓取成功率(抓取成功率占抓取尝试总数的分数)在 75% 到 95% 之间。对于实际抓取应用来说,这些成功率不仅太低,而且评估的轻杂波场景通常不能反映真实世界的抓取现实情况。
二 资源
文章:Grasp Pose Detection in Point Clouds
代码:GitHub - atenpas/gpd: Detect 6-DOF grasp poses in point clouds
年份:2017年
三 内容
1)摘要
最近,已经提出了许多抓取检测方法,这些方法可用于直接从传感器数据中定位机器人抓取配置,而无需估计物体姿态。其基本思想是将抓握感知视作计算机视觉中的对象检测。这些方法将噪声和部分遮挡的 RGBD 图像或点云作为输入,并在不已知物体CAD模型的情况下生成可行的抓取位姿估计输出。尽管这些方法可以很好地将掌握知识推广到新对象,但它们尚未被证明足够可靠以供广泛使用。许多抓取检测方法对于孤立或呈现轻杂乱的新物体,其抓取成功率(抓取成功率占抓取尝试总数的分数)在 75% 到 95% 之间。对于实际抓取应用来说,这些成功率不仅太低,而且评估的轻杂波场景通常不能反映真实世界的抓取现实情况。本文提出了一些创新,无论是在仿真中还是在机器人硬件上,均实现了抓取检测性能的提高。最终,我们报告了一系列机器人实验,这些实验对于在密集杂乱中的新型物体,平均端到端抓取成功率为 93%。
2)创新点
使抓取检测更准确,更易于在密集杂乱的环境中应用:
①我们提出了一种生成抓取假设的方法,相对于先前的方法,不需要对要抓取的物体进行精确分割,并且可以在任何可见表面上产生假设。
②我们提出了一种新的抓取描述符,它结合了表面法线和多个视图。与以往方法相比,该方法可以提高抓取分类精度约10%。
③我们提出了一种结合有关对象类别的先验知识的方法,可以将抓握分类精度提高大约2%。
3)算法结构
该算法模型整体结构主要可以划分为6个步骤:
步骤1:单视角点云预处理,包括点云压缩和去噪。
步骤2:感兴趣区域检测,并不需要准确的从背景中分割出单个对象,该区域可以是包含多个对象,或者所有对象的场景,也可以是一个粗略的目标定位结果(如一个目标检测框中的点云)。
步骤3:采样候选抓取位姿:
该步骤需要满足以下两个条件:
条件1:机械手本体与点云无碰撞;
条件2:机械手的抓握闭合空间至少要包含一个点。
虽然满足上述条件的位姿不一定是完全准确的抓取位姿,但不满足上述条件的抓取一定是错误的抓取。
候选点采样主要根据上述Algorithm2进行设计:
首先,采用均匀随机采样,从ROI区域采样得到N个点;然后,以每个采样点p为原点,利用球形邻域点云建立协方差矩阵构建局部坐标系,令F(p) = [v3(p) v2(p) v1(p)]为协方差矩阵的特征向量,v1(p)为最大特征值对应的特征向量,v3(p)为最小特征值对应的特征向量,v3(p)代表p点的表面法线的平滑度估计,v1(p)为最小曲率的平滑度估计,v2(p)为最大曲率的平滑度估计。如下图所示,v3(p)为指向向外的X轴,其他特征向量根据右手定则分配给Y轴和Z轴,从而构建完成p点的局部坐标系。
然后,利用格网搜索(搜索范围为YOZ平面,搜素范围作者设置为10x8)进行点云裁剪,沿着X轴的负方向进行逼近,直到夹抓区间包含点云停止:将夹抓在XOY平面进行平移(x,y),绕Z轴进行旋转(φ),在满足条件1和条件2前提下的(x,y,φ)为一个抓取位姿采样结果。下图中每张图片分别显示三个随机点候选抓取位姿:
步骤4:采用CNN进行二分类,输入为关于被观察和遮挡物体表面的特征表达式,输出为该候选点是否为可抓取位姿。特征表达式具体构建步骤如下:下图(a)为基于局部点云产生的候选抓取位姿。图(b)由两部分点云组成的局部点云,洋红色点云为该视角下能够观察到的点云,蓝色点云为该视角下无法观察到的点云。将局部点云进行尺度缩放,转换为一个单位体空间,并在该体空间进行体素划分(MxMxM),每个体素值设置为0或1,若体素内包含有点云,则为被占用,值设置为1,否则为0。分别朝X、Y、Z轴方向(下图(b)中的红绿蓝箭头方向)进行投影,在每个投影面上生成3种图像,分别为占用平均高度图,可见平均高度图和法向量图。
下面以投影到XOY平面为例,分别对应上图的(c-e):
综上所述,每个投影生成三张图片,共5个通道,那么总共生成一张MxMx15的图片作为输入(15个通道)。
步骤5:以MxMx15图片作为输入,利用CNN获取一个分数用于判断该候选点是否可抓取;
步骤6:利用规则基于分数进行抓取结果选取,如最大分数规则。
4)实验
Active point cloud:主动式点云生成,采用InfiniTAM进行数据采集,抓取成功率为93%,托盘中物体清除率为89%。
Passive point cloud:被动式点云 生成,采用两个华硕 Xtion Pro 传感器进行数据采集,抓取成功率为84%,托盘中物体清除率为77%。它的精度下降主要是因为:
①使用主动策略创建的点云似乎可以更好地覆盖盒子中的物体;
②使用被动策略创建的点云不能很好地看到盒子最前面附近的一些物体。
No selection strategy:与Active point cloud不同的是删除步骤6,采用随机选取替换最后的结果选取规则,其抓取成功率为75%,托盘中物体清除率为78%;
No classification:与No selection strategy不同的是,在其基础上,删除步骤5,仅仅使用采样获得的候选抓取作为抓取结果。其抓取成功率为53%,托盘中物体清除率为50%;
5)结论
本文提出了一个案例,将抓取检测作为尝试估计要抓取物体的确切位置。这正是许多掌握感知的方法试图做的事情。不幸的是,将 CAD 模型注册到嘈杂或不完整的点云可能非常具有挑战性。此外,假设CAD模型始终可用于机器人可能需要抓取的每个对象,这与我们在开放世界环境中操作的愿望不相容。取而代之的是,抓取检测直接在点云或截断的有符号距离函数中查找抓取姿势。与物体姿态估计方法相比,抓取检测:(1)不需要任何物体分割;(二)不需要知道被抓取对象的身份、类别、形状的;(3)不尝试将物体的CAD模型注册到点云,物体分割和3D配准都是难题,如果其中任何一个失败,都会导致传统的抓取感知失败。我们将在密集杂杂乱基准测试上实现的高抓取成功率归因于这些优势。
在仿真和硬件上进行了几次实验,以量化系统各个部分的性能贡献。结果表明,抓取检测需要几个不同的部分才能正常工作。抓取候选的表示很重要:,“正确”的表示可以将分类精度提高多达 10%。此外,在模拟点云上进行预训练并利用有关要抓取的物体的先验知识会有所帮助。我们对机器人硬件的实验表明,提高点云的质量也可以产生很大的不同。使用“主动传感”(即使用现成的公制SLAM软件)创建点云的抓取成功率比使用从固定在机器人身体上的传感器获得的点云进行抓取成功率高9%。此外,抓握选择策略也极为重要。应用简单的启发式方法来选择首先尝试哪个抓取(即首先抓取堆顶部的物体)可以将抓取成功率提高近 20%。
与更标准的方法相比,掌握检测至少有两个缺点。由于我们的算法不分割对象,因此它可以检测将多个对象视为单个原子对象的“抓取。这种类型的错误对于小孔径的手来说是不寻常的,但当手在物理上能够抓取较大的物体时,它将成为一个严重的问题。解决此问题的一种方法是使用对象分割。另一个问题是抓取检测方法是否可用于可靠地抓取感兴趣的特定对象。正如论文中所展示的,抓取检测可以与对象检测相结合,从而产生一个可以抓取特定感兴趣对象的系统。然而,目前尚不清楚这在总体上可以有多准确地完成。我们的实验表明,这种方法在实验室环境中可以达到 85% 的物体分类准确率。通过结合分割方法,可以改善这一点。无论如何,提高这 85% 的对象分类准确率结果对于在实际环境中部署此类系统至关重要。