亚马逊采摘挑战赛APC:6D姿态估计的多视图自我监督深度学习6D Pose Estimation in the Amazon Picking Challenge—2017(笔记)
Multi-view Self-supervised Deep Learning for 6D Pose Estimation in the Amazon Picking Challenge—2017(笔记)
亚马逊采摘挑战赛(APC)中用于6D姿态估计的多视图自我监督深度学习
文章所提出的姿态估计方法,实际上属于简化的基于模板匹配的方法。利用CNN对多视图RGB-D图像点云进行分割,并将其与预扫描目标完成配准,最终得到估计姿态。同时为解决训练数据集生成和标记问题,文章引入了一种自监督的方法来生成大型标签数据集。
摘要
- 本文提出了一种利用多视图RGB-D数据和自我监督,数据驱动的学习实现在杂乱环境,自闭塞,传感器噪声和各种各样的物体中可靠地识别和定位的方法。
- 在提出的方法中,我们使用完全卷积的神经网络对场景的多个视图进行分割和标记,然后将预扫描的3D对象模型拟合到最终的分割中,以获得6D对象姿态。
- 我们提出了一种自监督的方法来生成大型标签数据集,而无需进行繁琐的手动分割。我们证明了系统可以在各种情况下可靠地估计对象的6D姿态。所有代码,数据和基准均可在http://apc.cs.princeton.edu/获得。
引言
- 亚马逊与学术界合作,定义两个挑战任务:1)从填充的货架中挑选给定产品ID的实例并将其放入手提袋中;2)将装满产品的手提袋存放到满满的货架上。
- 该算法首先通过将多视图图像输入深度神经网络,分割从场景中的对象,然后将3D模型拟合到分段点云以恢复对象的6D姿态。深度神经网络可提供速度,并与多视图方法结合使用可在挑战性场景中提高性能。
- 主要贡献:
- 强大的多视图视觉系统,可估计物体的6D姿态;
- 一种自我监督的方法,通过自动标记训练数据来训练深度网络;
- 用于估计对象姿态的基准数据集。
相关工作
- 计算机视觉的最新研究表明,深度学习deep learning可大大改善对象分割[2] “Fully convolutional networks for semantic segmentation,”
- **姿态估计。**估计对象的6D姿态有两种主要方法。首先使用迭代最近点等算法将3D CAD模型与3D点云对齐[9]。第二种使用更详细的局部描述符,例如用于彩色数据的SIFT关键点[10]或用于3D数据的3DMatch [11]。前一种方法主要用于仅深度传感器,在照明发生明显变化的场景中或在无纹理物体上。另一方面,高度纹理化和刚性的对象受益于局部描述符。现有的框架(例如LINEMOD [12]或MOPED [13])在某些假设下可以很好地工作,例如将对象放在具有良好照明的桌面上,但是在APC场景施加的有限可见性,阴影和混乱的情况下表现不佳[14]]。
目标6D姿态估计
-
该算法分两个阶段估算场景中所有对象的6D姿态(图2)。首先,它使用深度卷积神经网络将从多个视图捕获的RGB-D点云分割为不同的对象。其次,它将已识别对象的预扫描3D模型与分割的点云对齐,以估计每个对象的6D姿态。
-
**A.全卷积网络的对象分割。**我们训练VGG架构[18]全卷积网络(FCN)[2]执行2D对象分割。FCN将RGB图像为输入,并返回与输入图像具有相同尺寸的40个密集标记的像素概率图集(39个对象,1个背景)。
-
**多视角目标分割。**特别是,我们将从每个视点捕获的RGB图像(从手提袋中存放18个,从架子上取下15个)馈送到预训练的FCN,后者为每个RGB-D图像中的每个像素返回40类概率分布。在根据场景中的预期对象列表进行筛选后,我们对概率图进行阈值设置(所有视图上的平均概率高于三个标准差),并忽略所有类别的概率低于这些阈值的像素。然后,*我们将每个对象类别的分割mask投影到3D空间中,并将其与机器人手臂的正向运动反馈直接组合成单个分割点云 *(请注意,不同对象类别的分割可能会相互重叠)。
-
**减少点云噪声。**首先,我们通过从k个最近邻点中移除比阈值更远的所有点,从而消除了分割点云中的空间离群值。其次,为减少分割噪声,尤其是在对象边界上,我们去除了位于架子箱或手提袋外部的点以及与预扫描背景模型接近的点。最后,通过在每个主轴上找到最大的连续点集(通过PCA计算),从每个细分的点组中进一步筛选离群点,并从该集合中删除所有不相交的点。
-
**粗优化ICP。**两次通过ICP。具有较高内部阈值(90%)的第一遍将预扫描的完整模型移到部分视图的正确部分,而不是嘈杂的部分。现在从粗略但稳健的初始化开始,第二遍使用较低的阈值(45%)来忽略点云的嘈杂部分,并收敛到更准确的姿势。
自监督训练
- 为了自动捕获和按像素标记的图像,我们基于三种观察结果,提出了一种自我监督的方法:
(1) 对具有单个对象的场景进行批处理训练可以生成深度模型,这些模型在具有多个对象的场景上表现良好[17](即,同时对仅猫或狗的图像进行训练,可以成功对猫与狗的图像进行测试);
(2) 准确的机械臂和准确的摄像机校准,使我们可以随意控制摄像机视点;
(3) 对于具有已知背景和已知摄影机视点的单个对象场景,我们可以通过前景mask自动获得精确的分割标签。 - **半自动数据收集。**为了半自动地收集大量训练数据,我们以任意姿势将单个已知对象放置在架子箱或手提袋内,并配置机器人移动摄像机并从各种不同角度捕获对象的RGB-D图像。货架/手提袋的位置对于机器人来说是已知的,照相机视点也是已知的,我们使用它来转换在货架/手提袋框架中收集的RGB-D图像。捕获数百张RGB-D图像后,将对象手动重新排列为不同的姿势,然后重复多次此过程。人工参与总结了重新布置对象并标记出哪些对象对应于哪个垃圾箱/手提袋。自动选择和更改视点,捕获传感器数据以及按对象标记每个图像。我们从相同的确切相机视点收集空架子和手提袋的RGB-D图像,以对背景进行建模,为自动数据标记做准备。
- **自动数据标记。**为了获得逐像素的对象分割标签,我们创建了一个将前景与背景分离的对象mask。该过程由2D和3D管线组成。2D管道对于薄物体(如果物体太不足以至于无法在3D中可靠地分割,因为它们太靠近墙壁或地面)和没有深度信息的物体具有鲁棒性,而3D管道对于粗制物体之间的大错位具有鲁棒性-扫描的货架垃圾箱和手提袋。来自两个管线的结果被合并以自动为每个训练的RGB-D图像标记一个对象mask。2D流水线通过使用基于多峰2D强度的配准来对齐两个RGB-D图像来修复可能的图像未对齐问题开始[21]。然后,我们将对齐后的彩色图像从RGB转换为HSV,并对HSV和深度通道进行逐像素比较,以从背景中分离和标记前景。3D管道使用空架子箱和搬运箱的多个视图来创建其预扫描的3D模型。然后,我们使用ICP将所有训练图像与背景模型对齐,并去除离背景太近的点以识别前景mask。最后,我们将前景点投影回2D以检索对象mask。
- **训练神经网络。**为了利用从较大图像域训练的特征,我们使用[18]中的较大的FCN-VGG网络架构,并使用ImageNet上预先训练的模型对1000路对象分类初始化网络权重。我们使用带有动量的随机梯度下降对40类输出分类器(每个APC对象39类,背景1类)进行微调。由于照明和物体视点偏差,我们通过训练两个这样的细分网络来最大化性能:一个用于架子箱,另一个用于手提袋。自动为训练数据生成的细分标签可能会存在噪声。但是,我们发现,由于可用训练数据的庞大规模,网络在测试期间仍然能够正常工作。
结论
- 文中,我们介绍了麻省理工学院普林斯顿大学团队在2016年亚马逊采摘挑战赛中获得第三和第四名的视觉系统。为了解决仓库设置带来的挑战,我们的框架利用多视图RGB-D数据和数据驱动的自我监督式深度学习来可靠地估计各种情况下对象的6D姿态。我们还提供了标注良好的APC 2016基准数据集,其中包含来自477个场景的7,000多个图像