拟真机器人拯救者奖励_机器人操作学习系列分享:基于图结构的视觉模仿

点击订阅“CAAI认知系统与信息处理专委会” 人类可以通过观察他人来学习技能。这种从观察中学习的能力—被称为视觉模仿[1]或第三人称模仿[2]。视觉模仿一直是人工智能中一个重要的研究课题。视觉模仿首先需要对演示者的视觉场景和随时间产生的场景变化有细致的理解,然后模仿者在自己的环境中产生类似的变化。因此视觉模仿可以归结为学习演示和模仿所处环境的视觉相似函数,通过模仿者的动作行为将视觉相似函数取最优值,得到正确的模仿行为。 视觉相似性函数需要决定视觉观察中的哪些方面能够再现演示的技能,即函数需要定义模仿什么和忽略什么。 PMLR2020收录的《Graph-Structured Visual Imitation》中将视觉模仿作为视觉对应的问题,这篇论文基于计算机视觉方面的最新进展,如人类手指关键点检测器、合成增强实时训练的目标检测器、由视角变化[3]监督的点检测器和对每个演示所学习的多重视觉实体检测器。机器人 agent得到奖励的前提是其动作能够很好匹配演示与模仿场景中视觉实体的空间对应关系。文中提出的对实体及其空间配置的因式视觉表征可以在几分钟内成功地模仿各种操作技巧,并且只使用一次演示。该方法对复杂背景具有较强的鲁棒性,即使演示与模仿之间存在环境差异,也能有效泛化。 1. 分层图表示法 文中提出分层图表示法,称为Visual Entity Graphs (VEGs)。VEGs将场景部分抽象化,其中图中的节点表示跟随空间和时间的视觉实体(物体,部件或点),边表示它们的3D空间分布关系。文中构建两个分别对应演示与模仿的VEGs,它们的节点是一一对应,如图1所示。模仿学习的奖励函数则计算对应的每对节点的空间一致性,并利用少量真实交互的单个视频演示来指引操作任务的强化学习。

拟真机器人拯救者奖励_机器人操作学习系列分享:基于图结构的视觉模仿_第1张图片

图1 图结构的视觉模仿 人类演示和机器人模仿两个时间步长的VEGs。人类演示(左)和机器人模仿(右)对应的节点颜色相同。图是层次的。物体、机器人和人手节点以及点特征节点之间的边会根据运动显著性随时间动态添加和删除,分别如图实线和虚线所示。由图可知,图形结构表示对于演示和模仿之间的视角和背景变化是鲁棒的。   文中将人提供的演示视频和机器人模仿的视频长度均定义为T,两个图序列:

793ab885d6b86ef423d6234dc9b844ed.png

其中节点v代表对应的视觉实体的3D坐标,对应着两个节点之间的3D空间关系。定义的视觉实体分为三类:物体节点,物体上的点和手(机械臂手)节点,这些节点在演示与模仿中是能被可靠检测的,且在演示与模仿图结构中是一一对应的。手或者机械臂夹爪点分别代表了人手和机器人夹爪中心的3D位置。文中没有考虑物体上的点之间的相互连接的边,而是将物体上的点直接与物体节点相连。 在每个时间步长上,通过损失函数计算演示图与模仿图中每对对应节点之间的空间分布上的视觉差异度,损失函数为:

411fdb8c716ea08f47efee43cf14d347.png

相同类型的边具有相同的权重,如物体节点与手节点的边,物体节点与物体节点的边,物体上的点到物体节点的边。研究人员根据经验来设置每边的权重,这也提供了一个未来研究方向,通过学习的方法来调整边的权重。

2、Detecting Visual Entities 要模仿一个对象的细微操作,仅仅推断其边界的平移是不够的,还需要推断和模拟对象的三维姿态和变形。文中的核心设计选择利用点特征探测器和运动检测的点在演示和模仿的环境中来推断物体的位姿变化。研究人员训练场景特定的对象和点检测器,保证在演示和模仿的环境可靠地识别视觉实体,还应用人手关键点检测器。点检测器在演示过程中的每一时间步都对目标检测区域进行随机重复采样,并在模仿者的视角下计算出对应点,从而对局部遮挡具有较好的鲁棒性。对于完全遮挡的情况,人手检测器和目标检测器会利用最后的已知位置。所以,文中提出的检测步骤对目标遮挡和检测失败情况鲁棒。 手关键点的检测。研究人员使用[4]提出的人手检测器检测人类的指关节,并使用D435 Intel RealSense RGB-D摄像机获得它们的3D位置。利用正运动学和一个相对于机器人坐标系的标定摄像机来检测机器人末端执行器尖端的三维位置。研究人员将Baxter机器人爪的指尖映射到演示者的拇指和食指指尖。在演示过程中,通过人手两个指尖之间的距离来检测抓取和释放动作。 交叉视图对应的点特征检测器。能够从多个视图中观察静态场景的主体可以通过[5]三角测量推断出不同视图之间的视觉对应关系。研究人员使用这些自生成的视觉对应来驱动深度特征描述的视觉度量学习,这些深度特征描述对物体姿态或摄像机视点的变化具有鲁棒性。经过训练后,在模仿和演示的环境中匹配点特征,以建立对应的[3]。研究人员通过自动的方式收集机器人代理的工作空间的多视图图像序列:使用一个RGB-D摄像机连接到机器人的末端执行器,并移动摄像机,同时沿随机轨迹在不同距离和多视角覆盖场景,并且根据机器人的正运动学模型通过手眼标定来估计摄像机的姿态,结合已知的内在参数和深度图像,对场景进行3D重建,并在不同视点上提供准确的像素对应。完整的特征学习设置如图2(b)所示。尽管监督是通过实例的对应来实现的,但VEG具有较好的泛化性,可用于演示中的新对象,如图3(b)所示。研究人员使用ResNet-34作为骨干,学习图像中每个像素的四维点嵌入向量。

拟真机器人拯救者奖励_机器人操作学习系列分享:基于图结构的视觉模仿_第2张图片

图2 检测可视实体 使用人手关键点检测器,多视点特征学习,和从较少的对象掩模实例合成图像进行目标检测器训练。利用人手与机器人手的映射关系,视觉实体检测器能够有效地弥合演示与模仿之间的视觉差异,对杂乱的背景具有较强的鲁棒性,并能在不同的对象实例之间泛化。   研究人员使用背景减法提出物体的2D分割掩模,并使用合成数据增强来训练每个掩模的视觉检测器,如图2所示。具体来说,通过平移、缩放、旋转和改变提取的RGB分割掩模的像素强度来创建一个大的合成数据集。在合成图像中,物体掩模通常部分遮挡。因为生成这样的图像,已经知道对应的真实边界和完整掩模,所以帮助agent学会在部分遮挡下检测物体的amodal。研究人员然后调整一个Mask R-CNN对象检测器[6]-初始化MS COCO中的目标检测和分割任务下学习的权值,为综合生成的图像预测边界和掩模。 3、动态图结构的运动显著性 根据运动显著性启发式的决定在模仿学习损失函数中需要考虑哪些边。因此,当演示过程中,人手在到达目标前,锚对象定义为离手最近的物体。这时需要考虑锚对象节点与场景中所有其他物体节点(包括人手节点与锚对象上的点)构成的边。这种注意力机制在人类模仿学习中也是存在的。 4、利用VEGs进行策略学习 目标是让机器人从一个单一的人类视觉演示中模仿预期的对象操作。文中表述为一个强化学习问题,在每个时间步长损失函数已经给出。文中使用PILQR[7]来最小化损失函数,这种优化方法将基于模型的线性二次调节器与路径积分策略搜索相结合,以更好地处理非线性动力学。文中学习了一个依赖于时间的策略,其中依赖时间的控制增益是通过基于模型与无模型交替更新。动作空间为4维,定义为机械臂末端的3D位置和沿垂直轴的姿态。机器人的各关节角,末端执行器的位置和场景图的VEG结构表示,合为状态表示向量。在演示过程中,进一步使用行为克隆的方法,通过设定人的食指和拇指之间的距离来推断机器人夹持器的夹取和释放动作。 5、实验 研究人员在Baxter机器人测试了视觉模仿框架,设计了三类任务:第一种,机器人需要沿特定轨迹推一个物体;第二种堆叠任务,机器人需要捡起一个物体,放在另一个物体上;第三种倾倒液体任务,机器人需要将液体从一个容器倒入另一个容器。 针对每个任务,研究人员使用合成数据增强训练相应的目标检测器和使用多视图自监督特征学习的点特征。任务结果与时间对比网络TCN[8]进行了对比。在图3(c)中,展示了文中方法的奖励曲线和每个机器人所执行的TCN基线,机器人模仿人类演示的程度。横轴表示时间,纵轴表示模仿损失函数。由图可知,即使背景杂乱,图结构的模仿学习方法能够识别正确的模仿动作。相比之下,基线TCN的损失函数则是没有分别的,而高度区别的损失曲线对于有效的策略学习至关重要。 任务1:推动物体。在这个任务中,机器人需要将黄色八边形物体沿着演示所示的轨迹推向紫色圆环(图3a)。文中评估了三种任务变体: 一、直线推动目标沿着直线前进。二、直线握持:在握持过程中,黄色八边形沿直线移动。三、改变方向:将黄色八边形沿改变方向90度的轨迹推进。模仿这种方向变化,需要机器人在推动过程中改变与物体的接触点。对于直线推入,在两种不同的环境中进行模拟,一种是黄色的八边形块,另一种是较小的橙色方形块,以评估基于图形的框架在具有不同几何形状的对象之间的泛化能力。 表1 推动和堆叠物体的成功率

80461f7886b022b03c1ad30923cfdaca.png

任务2:堆叠物体。在这个任务中,机器人需要抓取黄色的八边形,并将其放置在紫色环的上方,如图3(c)第1行和第4行所示。在实验中,随机设置场景和机器人的初始配置,并在这个增强的设置中评估堆叠黄色八边形和橙色正方形的方法。结果报告在表1(b)中。

拟真机器人拯救者奖励_机器人操作学习系列分享:基于图结构的视觉模仿_第3张图片

图3 三个模仿任务(a)推动物体(b)倾倒液体(c)堆叠物体及VEG和TCN的损失函数对比。与TCN相比,基于VEG的损失曲线对堆叠任务的模仿质量有很强的分辨力。损失函数通过除以各自特征空间的最大绝对值进行归一化实现可视化。Correct_end只是简单地重复成功模仿的最后一帧,显示损失函数也可以很好地作为最终目标配置。注意correct和clutter因为VEG损失为零而重叠,所以显示文中方法对复杂背景仍有较强鲁棒性。   任务3:倾倒。在这个任务中,机器人需要同时平移和旋转罐体,以达到杯子上方,如图3b第二行所示。在同样的倾倒演示中,文中通过在模拟过程中使用一个具有不同形状和纹理的新对象来评估VEG的泛化性(图3b第3行)。 在人类演示中,模仿人类的手可以提高触摸和抓握动作的表现,这是不能从物体的运动中轻易推断出来的。虽然文中的方法可以在模仿过程中处理部分遮挡,但没有尝试在长时间内对完全遮挡的物体进行跟踪。鉴于此,未来工作的一条明确途径是学习遮挡跟踪,例如,使用可以从中提取奖励图的临时视觉记忆,而不是仅仅依赖视觉框架。主动视觉还可以用于在模仿过程中解除遮挡,以及从最方便的视点观察演示者。另一个限制是缺乏加快策略搜索的先验模型信息。对于未来的工作,一个方向是学习这样的视觉实体的运动模型,更好的进行策略搜索。 6、结论 文中根据视觉实体及其空间关系对视频帧进行编码,并使用这种编码来计算视觉模仿的感知损失函数。在端到端学习和工程表现之间,结合了两者的优点,在机器人模仿中加入了运动显著性的诱导偏差。在实际机器人平台上的实验结果表明了该方法的通用性和灵活性。 参考文献: [1] D. Pathak, P. Mahmoudieh, G. Luo, P.Agrawal, D. Chen, Y. Shentu, E. Shelhamer, J. Malik, A. A. Efros, and T.Darrell. Zero-shot visual imitation. In ICLR, 2018. [2] B. C. Stadie, P. Abbeel, and I.Sutskever. Third-person imitation learning. CoRR, abs/1703.01703, 2017. [3] P. Florence, L. Manuelli, and R.Tedrake. Dense object nets: Learning dense visual object descriptors by and forrobotic manipulation. Conference on Robot Learning, 2018. [4] T. Simon, H. Joo, I. Matthews, and Y.Sheikh. Hand keypoint detection in single images using Multiview bootstrapping.In CVPR, 2017. [5] R. Hartley and A. Zisserman. Multipleview geometry in computer vision. Cambridge university press, 2003. [6] K. He, G. Gkioxari, P. Dollar, and R.B. Girshick. Mask R-CNN. CoRR, abs/1703.06870, 2017. [7] Y. Chebotar, K. Hausman, M. Zhang, G.Sukhatme, S. Schaal, and S. Levine. Combining Model-Based and Model-FreeUpdates for Trajectory-Centric Reinforcement Learning. 2017. [8] P. Sermanet, C. Lynch, J. Hsu, and S.Levine. Time-Contrastive Networks: Self-Supervised Learning from Multi-viewObservation. IEEE Computer Society Conference on Computer Vision and PatternRecognition Workshops, 2017-July:486–487, 2017. ISSN 21607516.doi:10.1109/CVPRW.2017.69.

------------------------------------------------------------

拟真机器人拯救者奖励_机器人操作学习系列分享:基于图结构的视觉模仿_第4张图片

关注公众号,了解最前沿“机器人智能技术”

你可能感兴趣的:(拟真机器人拯救者奖励)