密集对象网络:经过机器人操做学习密集的视觉对象描述符

选自arXiv,做者:Peter R. Florence、Lucas Manuelli、Russ Tedrake,机器之心编译。git

机器人操做中,针对特定任务的强化学习方法能够在给定的任务中得到很好的技能,可是人们尚未找到高效完成多种不一样任务的最佳途径。本文做者提出了密集对象网络——被训练用来提供密集对象描述的深度神经网络。密集对象网络能够区分多个对象,以彻底机器人自监督的方式快速学习,并实现新的操做任务。

源代码地址:github.com/ RobotLocom…github


1 引言网络

机器人操做中正确的对象表征方式是什么?尽管针对特定任务的强化学习方法能够在给定的任务中得到使人印象深入的灵巧技能 [1],人们尚未找到高效完成多种不一样任务的最佳途径。一些其它的最新研究 [2,3] 能够提供普通的抓取物体的功能,可是没有进行特异性处理。为了实现特异性,即便用特定对象完成特定任务的能力,人们可能须要解决数据关联问题。粗略地说,识别和操做单个对象的任务能够经过语义分割来解决,正如亚马逊机器人挑战赛(ARC)[4,5] 或论文 [6] 所展现的那样。然而,语义分割提供的表征并不能提供关于对象自己丰富结构的任何信息。所以,这可能并不是解决 ARC 中「取物-放置」问题以外的复杂问题的恰当表征方法。函数

除了视觉分割,近期的研究 [7] 标志着从原始 RGBD 数据中使用自监督方法学习密集像素级数据关联的一个进步。咱们的工做受到了 [7] 的启发,可是咱们须要额外的新方法去可靠地学习一致的对象描述符,而且开发一种适合机器人自动化的学习方法。此外,以前没有人研究密集描述符的对象惟一性,对不止一类对象演示密集描述学习,或者使用密集描述符对操做任务进行研究。在本文中,咱们提出了密集对象网络,它是被训练用来提供密集(像素级)对象描述的深度神经网络。密集对象网络能够区分多个对象,以彻底机器人自监督的方式快速学习,并实现新的操做任务。学习

本文贡献:咱们认为,本文最大的贡献在于,咱们引入了针对对象的密集描述符的机器人学习,而且展现了其在机器人操做中的普适性和实用性。本文的一个主要贡献是新开发了针对多对象的不一样密集描述符,为此咱们引入了三种获取描述符的方法:跨对象损失、直接多对象训练、合成多对象训练。经过修改损失函数和采样过程,咱们能够获得在各种对象之间泛化的描述符,或者对每一个对象实例都有不一样表示的描述符。此外,咱们已经证实,机器人自监督密集视觉描述符学习能够应用于各类潜在的非刚性对象和类(目前包含 3 个不一样类别的 47 个对象),而且能够快速学习(大约 20 分钟)。咱们还贡献了学习密集描述符的通常训练技术(见 3.2 节),这对于在实践中得到良好表现相当重要。最后,咱们演示了学习到的密集描述符在机器人操做中的新应用。在示例任务中,咱们抓取对象在可能变形的配置上的特征点,在杂乱环境中利用对象实例特异性作到这一点,或者在类中的对象间迁移特定的抓取动做。测试

图 1:数据收集和训练过程概览。(a)经过机器臂自动收集数据(b)使用密集 3D 重构技术实现变化检测(c)-(f)绿色表示匹配,红色表示不匹配。3d


5 实验结果cdn

图 2:学习到的对象描述符在通过显著变形(a)后保持一致,若是须要,还能够在(b-d)对象类别间保持一致。图中(a)和(b-d)顶部显示出来的是 RGB 帧,相应的在底部显示出来的是经过训练网络前馈传播直接输出的描述符图像。(e)-(f)代表,咱们能够学习低纹理对象的描述符,并对描述符进行掩膜操做以获得清晰的可视化结果。在图的右侧咱们对对象集合进行了总结。对象


5.1 单个对象的密集描述符blog

图 3:(a)表显示了实验中参考的不一样类型网络。列标签与第 3 节中讨论过的技术相对应。(b)图描绘了最佳匹配 u_b hat 和实际匹配 u_b*之间 L2 像素距离(利用图像的对角线进行归一化,640*480 的图像取 800)的累积分布函数,例如:对于 93% 的使用「standard-SO」训练过程的图像对而言,u_b* 和 u_b hat 之间归一化后的像素距离小于 13%。全部网络都使用(a)中标记的训练过程在同一数据集上训练。(c)图描绘了在

的状况下(即它们在描述符空间中与 u_a* 的距离比实际匹配的 u_b*的距离更近)对象像素点 u_b 部分像素的累积分布函数。

图 4:没有任何明显对象损失(a)和使用跨对象损失(b)的训练结果对比。在(b)中,50% 的训练迭代过程当中应用了跨对象损失,其他 50% 则应用场景内的单个对象损失,而(a)中 100% 使用了场景内单个对象损失。这些图显示了三个不一样对象中对每一个对象的 10,000 个随机选择的像素点的描述符的散点图。该网络是在 D=2 的环境下训练的,使其能够直接进行聚类可视化。(c)图与 3(b)中的坐标相同。全部的网络都是在相同的 3 个对象数据集上进行训练的。带有数字标签的网络是经过跨对象损失进行训练的,数字表示了描述符的维度。非跨对象网络(红线)是不使用跨对象损失训练的网络。


5.2 多个对象的密集描述符

图 5:(a)图与图 3(a)的坐标相同,将训练过程「standard-SO」和「without-DR」进行对比,其中惟一的区别是,「without-DR」在训练时不使用背景域随机化技术。(a)中使用的数据集包含 3 个对象,每一个对象有 4 个场景。(b)图说明,对于一个包含 10 个训练场景的数据集,在训练过程当中,不带背景和方向随机性的状况下学习到的描述符并不一致(中间),可是带有背景和方向随机性时学到的描述符是一致的(右侧)。


5.4 机器人操做示例应用:抓取特定点

图 6:描述「抓取特定点」过程的示意图。用户为每张参考图像指定一个像素点,接着机器人自动地抓取测试环境下最佳匹配的点。对于单个对象而言,能够看到机器人抓取了毛毛虫对象两个不一样的点:尾巴(i)和右耳(ii)。请注意,「右耳」示范是在至关对称的对象上打破对称性的一个例子。在类间泛化能力上(iii),经过一致训练,机器人在各类实体上抓取类间泛化点(具备公共特征的点)。这项工做仅仅经过 4 只鞋子进行训练而且扩展到机器人没有见过的鞋子实例上,例如(c)。对于「实体特异性」问题,机器人通过了对特定物体的训练,而且经过合成多对象场景(3.3 iii)进行了数据加强处理,从而使机器人甚至可以在杂乱的环境中抓取特定实例的这个点。


论文:Dense Object Nets: Learning Dense Visual Object Descriptors By and For Robotic Manipulation

论文连接:arxiv.org/pdf/1806.08…

摘要:机器人操做的正确对象表征应该是怎样的?咱们但愿机器人可以直观地感知场景,理解其中的对象,并知足如下要求:(i)与具体任务无关,可以做为构建模块用于各类操做任务中,(ii)普遍适用于刚性和非刚性对象,(iii)利用 3D 图像提供的丰富先验信息,(iv)彻底经过自监督方法学习。这经过之前的方法是很难实现的,具体而言:许多近期在抓取物体方面的工做没有扩展到抓取特定物体或其余的任务上,而针对特定任务的学习可能须要通过大量的尝试来取得在不一样的对象配置和其它任务上很好的泛化能力。在本文中,咱们以自监督密集描述符学习的最新进展为基础提出了密集对象网络,做为对视觉理解和操做任务的一致对象表征。咱们已证实它们能够被快速地训练(大约 20 分钟),用于操做各类事先未知而且多是非刚性的物体。此外,咱们还提出了一些新的贡献来实现多对象描述符学习,而且说明了能够经过修改训练过程获得可以在不一样类别的对象间泛化的描述符,或者对每一个对象实例都不一样的描述符。最后,咱们演示了学习到的密集描述符在机器人操做中的新应用。咱们演示了在可能变形的对象配置下抓取一个对象的特定点的过程,以及使用类通用的描述符对一个类中不一样对象的特定抓取动做进行迁移。

相关文章
相关标签/搜索