机器人 2022, Vol. 44 Issue (2): 186-194, 202  
0
引用本文
莫秀云, 陈俊洪, 杨振国, 刘文印. 基于人类演示视频的机器人指令生成框架[J]. 机器人, 2022, 44(2): 186-194, 202.  
MO Xiuyun, CHEN Junhong, YANG Zhenguo, LIU Wenyin. A Robotic Command Generation Framework Based on Human Demonstration Videos[J]. ROBOT, 2022, 44(2): 186-194, 202.  

基于人类演示视频的机器人指令生成框架
莫秀云 , 陈俊洪 , 杨振国 , 刘文印     
广东工业大学计算机学院, 广东 广州 510006
摘要:为了提高机器人学习技能的能力,免除人工示教过程,本文基于对无特殊标记的人类演示视频的观察,提出了一种基于序列到序列模式的机器人指令自动生成框架。首先,使用Mask R-CNN(区域卷积神经网络)来缩小操作区域的范围,并采用双流I3D网络(膨胀3D卷积网络)从视频中提取光流特征和RGB特征;其次,引入双向LSTM(长短期记忆)网络从先前提取的特征中获取上下文信息;最后,使用自我注意力机制和全局注意力机制,学习视频帧序列和命令序列的关联性,序列到序列模型最终输出机器人的命令。在扩展后的MPII烹饪活动2数据集和IIT-V2C数据集上进行了大量的实验,与现有的方法进行比较,本文提出的方法在BLEU_4(0.705)和METEOR(0.462)等指标上达到目前最先进性能水平。结果表明,该方法能够从人类演示视频中学习操作任务。此外,本框架成功应用于Baxter机器人。
关键词视频命令学习    细粒度视频描述    机器人学习    双流I3D网络(双流膨胀3D卷积网络)    双向LSTM(长短期记忆)    
中图分类号:TP242            文献标志码:A            文章编号:1002-0446(2022)-02-0186-09
A Robotic Command Generation Framework Based on Human Demonstration Videos
MO Xiuyun , CHEN Junhong , YANG Zhenguo , LIU Wenyin     
School of Computer, Guangdong University of Technology, Guangzhou 510006, China
Abstract: In order to improve the robot's ability of skills learning and avoid the manual teaching process, a sequence-to-sequence framework is proposed to automatically generate robotic commands based on the observation of human demonstration videos without any special marks.Firstly, a Mask R-CNN (region-based convolutional neural network) is used to reduce the manipulation area, and a two-stream I3D network (inflated 3D convolutional network) is adopted to extract the optical features as well as the RGB features from the videos.Secondly, a bidirectional LSTM (long short-term memory) network is introduced for acquiring the context information from the previous features extracted.Finally, self-attention and global attention mechanisms are integrated to learn the correlation between a sequence of video frames and a sequence of commands, and the sequence-to-sequence model ultimately outputs the robotic commands.Experiments are extensively conducted on the expanded MPII Cooking 2 dataset and the IIT-V2C dataset.Compared with the existing methods, the proposed method has a current state-of-the-art performance on indicators such as BLEU_4(0.705) and METEOR (0.462).The results show that the proposed method can learn manipulation tasks from human demonstration videos.In particular, the framework is successfully applied to a Baxter robot.
Keywords: videos to commands learning    fine-grained video captioning    robot learning    two-stream I3D network (inflated 3D convolutional network)    bidirectional LSTM (long and short-term memory)    

1 引言(Introduction)

从人类演示视频中理解人类行为和学习新技能是开发自主机器人系统的核心步骤。与人类学习技能的方式相比,机器人需要将视频进行处理后转换为机器人指令进行执行,其涉及领域更为宽广。换言之,机器人通过观察人类的活动来学习操作仍然是一个严峻的挑战[1]。然而,随着机器人的普及,人们期望开发出一种更智能的机器人,他能在人类社会中发挥重要的作用,例如陪伴老人[2]、与人类协同作业[3]或代替人类在危险和恶劣的环境中工作[4]

感知和操作是机器人领域长期研究与探讨的问题,其中将人类的技能迁移到机器人的技术[5-6]已经得到广泛研究。例如,Steinmetz等[7]提出了一种动觉教学(kinesthetic teaching)方法,将人的位置和力信息传递给机器人手臂。Pastor等[8]开发了一个动力学系统,称为动态运动原语(DMP),以生成从人类示范活动中学习的目标导向的轨迹。除了使用动觉教学方法外,另一部分研究人员开始使用基于传感器的方法来捕捉人类活动,并让机器人从示范中学习新技能[9-10]。Koenemann等[11]设计了一个基于紧身衣的系统,能将人体运动传递给人形机器人,使其能够同步模拟复杂的人体全身运动。Xie等[12]提出了一种无监督的学习方法,该方法基于低成本、易于复制的触觉手套来分割操作事件,可实时记录手的姿势和接触力。尽管这些方法已成功地将人的技能转移到机器人身上,但他们在很大程度上依赖于人工动觉教学和定制设备,从而限制了机器人部署的通用性。

随着计算机视觉和深度学习的快速发展[13-14],大多数研究者开始研究更直观和更实用的方法来让机器人学习技能[15-17]。Ma等[18]提出了一种能从视频中识别人类行为的六流CNN(six-stream CNN),结合了不同尺度的图像外观信息和视频运动信息。Zhang等[19]提出了一个从视频中识别动作和对象并通过语法规则对其进行组合的框架。然而,这些方法大多需要采用多个网络来识别人的行为以及生成命令语句的对象,这就需要大量的计算能力。为了解决这一问题,本文提出了一种序列到序列的模型。他直接对输入的视频进行训练并生成相应的命令语句,更加灵活和易于理解。

受生物学习机制的启发,机器人领域的研究人员希望建立一个快速学习的机器人系统,从而避开繁琐的编程过程。为此,研究人员开发了一类研究方法,使用自然语言描述操作视频的内容,并将其转换为机器人执行指令[20]。例如,Nguyen等[21]提出了一个将人类活动视频转化为机器人指令的深度学习框架。该框架集成了深度卷积神经网络(CNN)来提取特征,利用深度递归神经网络(RNN)来生成机器人命令。Yang等[22]开发的系统将视频分解成对象、动作和操作手势后发送给机器人执行。然而,上述方法只关注全帧RGB视频特征,忽略了对细粒度动作和视觉信息的关注。

本文提出了一种基于序列到序列模型的机器人指令生成框架。该框架首先使用双流I3D网络从RGB视频帧和光流中提取空间和时间特征,然后利用BiLSTM(bidirectional LSTM)网络从先前提取的特征中获取上下文信息。在此基础上,引入一种自我注意力机制来增强视觉特征,该机制有助于建立动作与物体之间的视觉联系。在最后一步,借鉴了seq2seq模型[23],采用了具有全局注意力机制的序列到序列模型对视觉特征和文本特征进行融合并生成机器人指令,最终输入给机器人执行。图 1展示了一组制作沙拉的快照以及由本文方法生成的一系列相应指令。

图 1 制作沙拉的复合活动演示视频 Fig.1 Demonstration video of the composite activities for making salad

本文的主要贡献如下:

(1) 提出了一种序列到序列的深度学习框架,该框架能够将人类演示视频转译成机器人指令给机器人执行。

(2) 为了生成具有语义上下文信息的指令,采用了带有2种注意力机制的序列到序列模型来学习细粒度的动作。与其他方法相比,该算法实现了最优的性能。

(3) 扩展了MPII烹饪活动2数据集。该数据集更精确地描述了操作任务,并适用于机器人命令生成研究。

(4) 在2个公开可用的数据集上进行的大量实验表明,本文方法可直接将视频转换为机器人指令,并具有较高的精确度。此外,为了验证系统的有效性,在人形机器人Baxter上运行了本系统,该机器人成功地执行了从视频中学习到的操作。

2 机器人命令学习(Robot command learning)

本文方法框架的概述图如图 2所示。本节首先介绍数据预处理的实现。然后,详细介绍了提出框架的细节,该框架包括4个组成部分:(1) 基于双流I3D网络提取与融合视频特征;(2) 基于双向LSTM网络捕获上下文信息;(3) 利用自我注意力机制(self-attention mechanism)进行视觉特征调整;(4) 基于全局注意力机制(global attention mechanism)扩展序列到序列模型,进行机器人指令的生成。

图 2 本文方法框架概述 Fig.2 Overview of the proposed framework
2.1 数据预处理

针对操作环境中出现的大量物体,采用感兴趣区域(ROI)边界框来过滤掉不相关的物体(缩小视频范围)。更具体地说,本文使用在COCO[24]数据集上预先训练的Mask R-CNN模型来识别演示者,然后根据演示者和操作物体之间的距离关系,用一个高、宽为演示者掩码1.4倍的ROI边界框代替原始输入视频。最后,将视频的分辨率从1664 × 1224调整到224 × 224,从而大大提高计算效率。图 3显示了生成的ROI边界框示例。

图 3 生成的ROI边界框示例 Fig.3 Example of the generated ROI bounding box
2.2 全帧特征提取

为了从视频中获取全局特征,本文采用在Kinetics数据集上预先训练并在MPII烹饪活动2数据集[25]上进行微调的双流I3D网络[26]进行全帧特征的提取,与其他双流卷积网络相比,双流I3D网络通过增加2D卷积核和池化核的时间维度,将滤波器的结构从$ N\times N $的2D卷积网络扩张成为$ N\times N\times N $的3D卷积网络。此外,双流I3D网络改进了Inception-V1的架构[27]。具体地说,将Inception-V1前2个最大池化层时间维度的步长设为了1,空间维度上的步长仍然是$ 2\times 2 $,而在其他最大池化层的时间维度和空间维度上使用对称的步长。最后的平均池化层使用$ 2\times 7 \times 7 $的池化核,具体网络结构见图 4图 5。本文分别从RGB帧中提取空间特征,从光流中提取时间特征。然后,将这2个特征进行融合,生成$ 1\times 2048 $维的融合特征,以输入双向LSTM网络进行进一步的信息捕获。

图 4 Inc.模块(Inception-V1)[26] Fig.4 Inc.module (Inception-V1)
图 5 双流I3D网络(Inc.模块见图 4 Fig.5 Two-stream inflated 3D convolutional network (see Fig. 4 for Inc. module)
2.3 上下文信息捕获

从双流I3D网络获得全帧的特征后,应用了双向LSTM[28]网络来捕获上下文信息。BiLSTM网络的体系结构如图 6所示,图中$ {\mathit{\boldsymbol{w}}} $均为可训练的权重矩阵。从图中可以发现BiLSTM网络包含2个LSTM网络:一个称为前向LSTM网络,用于计算一个序列的前向隐藏状态$ ( {\overrightarrow {{\mathit{\boldsymbol{h}}}_{1}}, \cdots, \overrightarrow {{\mathit{\boldsymbol{h}}}_{s}}} $);另一个称为反向LSTM网络,用于计算一个序列的反向隐藏状态$ ( {\overleftarrow {{\mathit{\boldsymbol{h}}}_{1}}, \cdots, \overleftarrow {{\mathit{\boldsymbol{h}}}_{s}}} $)。在得到前向和反向隐藏状态后,将每层隐藏状态联合起来,有效地融合了前向特征和反向特征。最后,将这些融合后的隐藏状态$ {\mathit{\boldsymbol{H}}} $输入到自我注意力机制中,以增强视觉信息。

图 6 BiLSTM网络结构
2.4 视觉信息增强

为了进一步增强从视频中提取的视觉信息,采用一种自注意力机制来调整权重以学习视频信息的内部结构。在这项工作中,本文方法在文[29]的基础上,对自我注意力机制的结构进行了改动。自我注意力机制将大小为$ 2u $的隐藏状态$ {\mathit{\boldsymbol{H}}} $作为输入,并计算权重向量$ {\mathit{\boldsymbol{a}}} $

$ \begin{align} {\mathit{\boldsymbol{a}}}=\rm{softmax} ({{\mathit{\boldsymbol{w}}}_{\rm{k2}} \rm{ReLU}({{\mathit{\boldsymbol{W}}}_{\rm{k1}} {\mathit{\boldsymbol{H}}}^{\rm T}})}) \end{align} $ (1)

其中$ {\mathit{\boldsymbol{W}}}_{\rm{k1}} $是大小为$ d_{\rm c} \times 2u $的权重矩阵,$ {\mathit{\boldsymbol{w}}}_{\rm{k2}} $是大小为$ d_{\rm c} $的参数向量。ReLU是一个激活函数,可将权重映射到$ ({0, +\infty} $) 区间。最后,通过将BiLSTM网络输出的$ {\mathit{\boldsymbol{H}}} $与权重向量$ {\mathit{\boldsymbol{a}}} $相乘来计算$ {\mathit{\boldsymbol{m}}} $

$ \begin{align} {\mathit{\boldsymbol{m}}}={\mathit{\boldsymbol{aH}}} \end{align} $ (2)

与文[29]中的方法不同,本文直接在每个位置$ s $都计算一次$ \mathit{\boldsymbol{m}} $来表示整个序列的视觉信息,而不是将$ {\mathit{\boldsymbol{w}}}_{\rm{k2}} $扩展成一个大小为$ r\times d_{\rm a} $的矩阵。值得注意的是,$ {\mathit{\boldsymbol{m}}}_{s} $是视频特征相关显著部分的动态表示。特征序列$ {\mathit{\boldsymbol{M}}}=({\mathit{\boldsymbol{m}}}_{1}, {\mathit{\boldsymbol{m}}}_{2}, \cdots, {\mathit{\boldsymbol{m}}}_{s_{\rm max}} $) 代表了视频的整体视觉特征(如图 2中,用棕色边框白色填充的长方形表示),这使得模型能够集中注意力于视觉特征的不同部分。

2.5 机器人指令生成

考虑到文本可以为生成机器人命令提供有用的语义信息,本文扩展了seq2seq模型[23]。该模型集成了文本特征和全局注意力机制以提高生成指令的性能。更具体地说,在编码阶段,本文将从自注意力机制中提取的视觉特征$ {\mathit{\boldsymbol{M}}}=({\mathit{\boldsymbol{m}}}_{1}, {\mathit{\boldsymbol{m}}}_{2}, \cdots, {\mathit{\boldsymbol{m}}}_{s_{\rm max}}) $输入到编码器LSTM网络,以计算隐藏状态序列$ {\mathit{\boldsymbol{V}}}=({{\mathit{\boldsymbol{v}}}_{1}, {\mathit{\boldsymbol{v}}}_{2}, \cdots, {\mathit{\boldsymbol{v}}}_{s_{\rm max}}}) $。在解码阶段,对于每个时间步长$ t $,首先使用独热编码器(one-hot encoder)对文本标签$ {\mathit{\boldsymbol{f}}}_{t} $进行编码,然后采用全局注意力机制[30]来计算注意力权重$ {\mathit{\boldsymbol{a}}}_{t} $。特别对于全局注意力权重,得分计算如下:

$ \begin{align} {\rm{score}}({{\mathit{\boldsymbol{u}}}_{t}, {\mathit{\boldsymbol{v}}}_{i}})={\mathit{\boldsymbol{u}}}_{t}^{\rm T} {\mathit{\boldsymbol{v}}}_{i} \end{align} $ (3)

其中$ {\mathit{\boldsymbol{u}}}_{t} $是在时间步长$ t $的解码器隐藏状态,$ {\mathit{\boldsymbol{v}}}_{i} $是在时间步长$ i $的编码器隐藏状态。在下一步中,使用softmax函数来计算注意力概率分布$ {\mathit{\boldsymbol{\alpha}}}_{t} $

$ \begin{align} {\mathit{\boldsymbol{\alpha}}}_{t} (i)={\rm{align}}( {{\mathit{\boldsymbol{u}}}_{t}, {\mathit{\boldsymbol{v}}}_{i}})=\dfrac{\exp ( {{\rm{score}}({{\mathit{\boldsymbol{u}}}_{t}, {\mathit{\boldsymbol{v}}}_{i}})})}{ \sum\nolimits_{i'}^{s_{\rm max}} {\exp ({{\rm{score}}({{\mathit{\boldsymbol{u}}}_{t}, {\mathit{\boldsymbol{v}}}_{i'}})})}} \end{align} $ (4)

其中$ i' $是在使用softmax函数来计算注意力概率分布$ \alpha _t $时的时间步长,与$ i $对应。

紧接着,将概率分布与编码器隐藏状态相乘,并对结果求和以得到注意力机制的输出$ {\mathit{\boldsymbol{a}}}_{t} $

$ \begin{align} {\mathit{\boldsymbol{a}}}_{t} =\sum\nolimits_{i=1}^{s_{\rm max}} {{\mathit{\boldsymbol{\alpha}}}_{t} (i)} {\mathit{\boldsymbol{v}}}_{i} \end{align} $ (5)

将文本特征、最后的编码隐藏状态和全局注意力机制的输出联合起来,以形成解码器LSTM网络的输入向量$ [{{\mathit{\boldsymbol{f}}}_{t}, {\mathit{\boldsymbol{v}}}_{s}, {\mathit{\boldsymbol{a}}}_{t-1}} ] $。最后,解码器LSTM网络输出特征并将其输入到softmax层以生成机器人的操作指令。

3 实验评估(Experimental evaluation) 3.1 数据集

为了评估所提出方法的性能,使用以下2个数据集进行测试:

(1) IIT-V2C数据集[21]。它是由419个操作视频组成的新的视频命令数据集,视频数据部分重用Breakfast数据集[31]的原始视频。该数据集专注于以命令语言的形式提供对人类行为的细粒度理解,这有利于机器人技术的应用。

(2) MPII烹饪活动2数据集[25]。它包含273个视频,长度从40 s到40 min不等,共2 881 616帧。虽然每段视频都有相应的动作和对象的注释,但并未对物体细分标注为“主体物体”和“受体物体”,且并未标注手部,不能直接用于机器人应用。因此,本文对MPII烹饪活动2数据集进行了拓展,通过人工标注四元组$ ( $$ , $主体物体$ , $动作$ , $受体物体$ ) $对视频进行注释,例如图 7左上角视频段被标记为$ ( $右手$ , $挤压机$ , $挤压$ , $酸橙$ ) $,右上角视频段标记为$ ( $右手$ , $$ , $$ , $橙子$ ) $,该四元组能完全表示每个操作的内容。

图 7 不同方法在MPII烹饪活动2数据集上的可视化 Fig.7 Visualization by different methods on the MPII Cooking 2 dataset

表 1表 2中列出了本框架实验设置的详细信息。本文选择68个生活中最常见的对象和9个常做的动作来表示实验的对象和动作。实验随机保留了3078(90%)个视频用于训练,342个(10%)视频用于测试。

表 1 68个生活中最常见的对象(每个物品为一个类别) Tab. 1 The 68 common objects in daily life (each object as one category)
表 2 动作的类别 Tab. 2 The categories of actions
3.2 评估指标和实施细节

评估指标。本文使用视频描述[32](video caption)领域的标准评估指标来验证框架的学习性能,它们分别是描述句子连贯性和准确率的指标BLEU_4[33]、描述句子中单词的准确率和召回率的指标METEOR[34]、基于召回率的相似度衡量指标ROUGE-L[35]和描述语义丰富程度的指标CIDEr[36]。此外,本文选择了SGC(saliency guided by caption)模型[37]和EDNet(encoder-decoder network)[21]作为本框架的实验基线。为了公平起见,所有的实验结果都是在作者提供的源代码上运行的,所有的度量标准分数均使用COCO评估代码计算得出[38]

实施细节。对于输入的视频,本框架将视频转换成一系列的图像帧,并将它们分成30个部分,每个部分包含16帧。由于一些输入的视频太短,本文将视频的最后一帧填充到列表末尾,直到每个部分都有16帧为止。对于网络训练,本文选择Adam优化器作为网络优化器,并将迭代周期(epoch)设置为150。网络学习率设置为0.0001,批处理大小为64。网络使用GeForce RTX 2080 Ti GPU进行训练,执行机器人为双臂机器人Baxter。

3.3 全帧特征提取

在这项工作中,本文使用在Kinetics数据集上进行预训练并在MPII烹饪活动2数据集[25]上进行微调的双流I3D网络,从RGB视频和光流中提取完整的帧特征。该网络在动作识别中的平均准确率达到93.9%。为了进一步展示每个动作的性能,本实验采用图 8所示的混淆矩阵来可视化性能效果。

图 8 混淆矩阵 Fig.8 Confusion matrix
3.4 机器人指令生成

表 3展示了本框架(BiLSTM_selfatt_seq2seq_concat)在MPII烹饪活动数据集2上的性能。与SGC[37]和EDNet[21]等视频描述领域的其他方法相比,本框架在评估指标BLEU_4、METEOR、ROUGE-L和CIDEr上获得了最好的性能。此外,本文还比较了不同模块的结果,发现与原始Bi-LSTM_seq2seq模型相比,具有自注意力机制和全局注意力机制且融合了文本特征的网络,能够更好地提高性能,这表明上下文信息的获取和文本特征的融合在指令生成中具有重要的作用。

表 3 不同方法在MPII烹饪活动2数据集上的性能 Tab. 3 Performances of different methods on MPII Cooking 2 dataset

为了验证本文方法的鲁棒性,在IIT-V2C数据集上执行了本框架,结果详见表 4。从表 4可以发现,与其他将视频转换为命令的方法相比,本文方法达到了最佳的性能。通过进一步分析,发现影响结果的因素有2个。首先,V2CNet、SCN和EDNet虽然成功地将视频转换成命令,但忽略了视频的运动特征,导致了效果不理想。其次,S2VT虽然考虑了运动特征,但缺乏计算视觉信息的注意力的能力,忽略考虑了人类的细粒度动作。因此,这些方法都不能在该数据集上获得最佳性能。

表 4 不同方法在IIT-V2C数据集上的性能 Tab. 4 Performances of different methods on IIT-V2C dataset

为了更好地分析实验结果,图 7列出了在MPII烹饪活动2数据集上得到的结果的一些示例。从图中可以看出,无论是EDNet还是SGC都无法区分“撒”和“搅拌”动作。然而,在自注意力机制和全局注意力机制的帮助下,本文模型可以更有效地编码视觉特征和学习命令之间的相关性,从而可以更好地了解演示视频中的细粒度动作,同时生成更相关、更准确的命令。为了验证本框架的计算效率,本文将所提出方法与多网络多阶段方法[19]进行对比,其中实验设置为全帧计算。通过实验发现本文所提出方法的计算速度达到17.3帧/s,与文[19]方法的4.3帧/s相比每秒要多处理13帧,计算效率提高了4倍,有效地验证了本文所提出的端到端网络的高效性。

3.5 消融实验

为了验证各模块的有效性,在MPII烹饪活动2数据集上进行了消融实验。表 5展示了模型各阶段的评估得分,其中BiLSTM_seq2seq表示实验方法只使用BiLSTM和seq2seq网络,BiLSTM_selfatt_ seq2seq表示在前一步的基础上增加自注意力机制,BiLSTM_selfatt_seq2seq_concat表示同时使用两种注意力机制(本文方法)。

表 5 不同方法在MPII烹饪活动2数据集上的消融实验性能 Tab. 5 Performances of different methods in ablation experiment on MPII Cooking 2 dataset

从表中可以看到BiLSTM_selfatt_seq2seq在提取视觉注意特征和相应的语义标签方面具有较强的优势。改进的自注意力机制能将视觉特征转化为多个向量,从而使得模型能够集中注意力于视觉特征的不同部分。这种改进能够强化模型对物体特征的关注,如图 9(a)预测样例所示,加入自注意力机制后,模型对物体的预测更加准确。而全局注意力机制更关注视频相应的语义标签方面的特征,能够根据动作的语义标签来平衡主体物体和受体物体的预测结果,如图 9(b)所示。

图 9 消融实验可视化(红色字体表示预测错误) Fig.9 Visualization of ablation experiment (the wrong predictions are marked in red letters)
3.6 机器人应用

本文所做工作的目标是建立一个智能机器人系统,该系统能够理解视频中人类的演示并在真实环境中自动执行。为了达到这个目标,将该系统移植到Baxter机器人上以验证其有效性。使用ROS系统[41]作为Baxter机器人的信息控制系统,并使用MoveIt软件[42]的运动库进行机器人运动规划。本文基于机器人四元组$ ( $$ , $主体$ , $动作$ , $受体$ ) $,提出一种四元组映射模块:(1) 将视频序列中的手部映射到机器人的手臂,如将视频中人的左手映射到机器人的左臂;(2) 根据现实中的物体对文[43]的模型进行了微调,用于场景物体识别。对机器人操纵环境中的物体进行物体识别后,将视频序列中的主体与受体映射到机器人操作环境中对应的物体,并在操作环境中标记出两者的3维坐标;(3) 采取示教学习方法让机器人学习得到操作轨迹,并将视频中的操作动作映射到已习得的操作轨迹,同时机器人操作动作能根据主体、受体的相对位置进行微调,以实现整个四元组的映射过程。使用这种映射设置,机器人通过把本文框架中得到的指令转译成对应的操作动作和操作物体进行执行,实现对视频中人类演示的理解,并完成各种操作任务。

图 10展示了Baxter机器人执行的一些任务,可以发现,机器人能够执行由本文框架产生的机器人指令,这表明本方法可以帮助机器人学习人类的操作。

图 10 机器人学习演示者执行任务的示例 Fig.10 Examples of robot executing tasks by learning from the operator
4 结论(Conclusion)

本文提出了一种深度学习框架,用于机器人从无约束的人类演示视频中生成操作计划。该框架首先通过双流I3D卷积神经网络提取全帧特征,然后引入BiLSTM网络来捕获上下文特征。之后,本文应用自注意力机制来调整视觉信息,并输入到具有自注意力机制和全局注意力机制且融合了文本特征的seq2seq网络,以生成机器人命令。在两个不同的活动数据集上进行的大量实验表明,本文方法能够基于对人类操作的观察来生成机器人命令。并且与其他方法相比,能够获得最佳的结果。此外,将系统移植到人形机器人Baxter上,该机器人成功地完成了从视频中学习到的不同任务,并验证了系统的有效性。

在未来,本文工作扩展如下:(1) 开发一种端到端系统,该系统能够将复杂的视频转换为机器人命令序列,以供机器人执行。(2) 融合语音功能和视频功能,提高命令生成性能。

参考文献(References)
[1]
Nguyen A, Do T T, Reid I, et al. V2CNet: A deep learning framework to translate videos to commands for robotic manipulation[DB/OL]. (2019-03-23)[2020-11-12]. https://arxiv.org/abs/1903.10869v1.
[2]
Koppula H S, Saxena A. Anticipating human activities for reactive robotic response[C]//IEEE/RSJ International Conference on Intelligent Robots and Systems. Piscataway, USA: IEEE, 2013: 2071.
[3]
Roncone A, Mangin O, Scassellati B. Transparent role assignment and task allocation in human robot collaboration[C]//IEEE International Conference on Robotics and Automation. Piscataway, USA: IEEE, 2017: 1014-1021.
[4]
Huang J L, Wang Z F, Li L G, et al. The intelligent flexible welding system for robot based on double station[C]//IOP Conference Series: Materials Science and Engineering. Bristol, UK: IOP Publishing, 2018. DOI: 10.1088/1757-899X/394/4/042070.
[5]
Amor H B, Berger E, Vogt D, et al. Kinesthetic bootstrapping: Teaching motor skills to humanoid robots through physical interaction[M]//Lecture Notes in Computer Science, Vol. 5803. Berlin, Germany: Springer, 2009: 492-499.
[6]
Pandey P, Kumar K, Nandi G C. Imitation of human motion on a humanoid robot using inverse kinematics and path optimization[C]//2nd International Conference on Intelligent Computing and Control Systems. Piscataway, USA: IEEE, 2018: 1863-1868.
[7]
Steinmetz F, Montebelli A, Kyrki V. Simultaneous kinesthetic teaching of positional and force requirements for sequential incontact tasks[C]//IEEE-RAS 15th International Conference on Humanoid Robots. Piscataway, USA: IEEE, 2015: 202-209.
[8]
Pastor P, Righetti L, Kalakrishnan M, et al. Online movement adaptation based on previous sensor experiences[C]//IEEE/RSJ International Conference on Intelligent Robots and Systems. Piscataway, USA: IEEE, 2011: 365-371.
[9]
Liu H X, Xie X, Millar M, et al. A glove-based system for studying hand-object manipulation via joint pose and force sensing[C]//IEEE/RSJ International Conference on Intelligent Robots and Systems. Piscataway, USA: IEEE, 2017: 6617-6624.
[10]
Dillmann R. Teaching and learning of robot tasks via observation of human performance[J]. Robotics and Autonomous Systems, 2004, 47(2-3): 109-116.
[11]
Koenemann J, Burget F, Bennewitz M. Real-time imitation of human whole-body motions by humanoids[C]//IEEE International Conference on Robotics and Automation. Piscataway, USA: IEEE, 2014: 2806-2812.
[12]
Xie X, Liu H X, Edmonds M, et al. Unsupervised learning of hierarchical models for hand-object interactions[C]//IEEE International Conference on Robotics and Automation. Piscataway, USA: IEEE, 2018: 4097-4102.
[13]
Cherian A, Fernando B, Harandi M, et al. Generalized rank pooling for activity recognition[C]//IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, USA: IEEE, 2017: 1581-1590.
[14]
Kar A, Rai N, Sikka K, et al. AdaScan: Adaptive scan pooling in deep convolutional neural networks for human action recognition in videos[C]//IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, USA: IEEE, 2017: 5699-5708.
[15]
Varol G, Laptev I, Schmid C. Long-term temporal convolutions for action recognition[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 40(6): 1510-1517.
[16]
Bilen H, Fernando B, Gavves E, et al. Dynamic image networks for action recognition[C]//IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, USA: IEEE, 2016: 3034-3042.
[17]
Rahmani H, Bennamoun M. Learning action recognition model from depth and skeleton videos[C]//IEEE International Conference on Computer Vision. Piscataway, USA: IEEE, 2017: 5833-5842.
[18]
Ma M, Marturi N, Li Y B, et al. Region-sequence based sixstream CNN features for general and fine-grained human action recognition in videos[J]. Pattern Recognition, 2018, 76: 506-521.
[19]
Zhang Q X, Chen J H, Liang D Y, et al. An object attribute guided framework for robot learning manipulations from human demonstration videos[C]//IEEE/RSJ International Conference on Intelligent Robots and Systems. Piscataway, USA: IEEE, 2019: 6113-6119.
[20]
Venugopalan S, Xu H J, Donahue J, et al. Translating videos to natural language using deep recurrent neural networks[C]//Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies. Stroudsburg, USA: ACL, 2015: 1494-1504.
[21]
Nguyen A, Kanoulas D, Muratore L, et al. Translating videos to commands for robotic manipulation with deep recurrent neural networks[C]//IEEE International Conference on Robotics and Automation. Piscataway, USA: IEEE, 2018: 3782-3788.
[22]
Yang Y Z, Li Y, Fermuller C, et al. Robot learning manipulation action plans by "watching" unconstrained videos from the world wide web[C]//29th AAAI Conference on Artificial Intelligence. Menlo Park, USA: AAAI Press, 2015.
[23]
Sutskever I, Vinyals O, Le Q V. Sequence to sequence learning with neural networks[C]//27th International Conference on Neural Information Processing Systems. Cambridge, USA: MIT Press, 2014: 3104-3112.
[24]
Lin T Y, Maire M, Belongie S, et al. Microsoft COCO: Common objects in context[M]//Lecture Notes in Computer Science, Vol. 8693. Berlin, Germany: Springer, 2014: 740-755.
[25]
Rohrbach M, Rohrbach A, Regneri M, et al. Recognizing finegrained and composite activities using hand-centric features and script data[J]. International Journal of Computer Vision, 2016, 119: 346-373.
[26]
Carreira J, Zisserman A. Quo vadis, action recognition? A new model and the kinetics dataset[C]//IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, USA: IEEE, 2017: 4724-4733.
[27]
Ioffe S, Szegedy C. Batch normalization: Accelerating deep network training by reducing internal covariate shift[C]//32nd International Conference on Machine Learning. New York, USA: ACM, 2015, 37: 448-456.
[28]
Graves A, Schmidhuber J. Framewise phoneme classification with bidirectional LSTM and other neural network architectures[J]. Neural Networks, 2005, 18(5-6): 602-610.
[29]
Lin Z H, Feng M W, Santos C N, et al. A structured selfattentive sentence embedding[C/OL]//International Conference on Learning Representations. (2017-02-21)[2020-11-12]. https://openreview.net/forum?id=BJCjUqxe.
[30]
Luong T, Pham H, Manning C D. Effective approaches to attention-based neural machine translation[C]//Conference on Empirical Methods in Natural Language Processing. Stroudsburg, USA: ACL, 2015: 1412-1421.
[31]
Kuehne H, Arslan A, Serre T. The language of actions: Recovering the syntax and semantics of goal-directed human activities[C]//IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, USA: IEEE, 2014: 780-787.
[32]
Xu J, Mei T, Yao T, et al. MSR-VTT: A large video description dataset for bridging video and language[C]//IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, USA: IEEE, 2016: 5288-5296.
[33]
Papineni K, Roukos S, Ward T, et al. BLEU: A method for automatic evaluation of machine translation[C]//40th Annual Meeting of the Association for Computational Linguistics. Stroudsburg, USA: ACL, 2002: 311-318.
[34]
Banerjee S, Lavie A. METEOR: An automatic metric for MT evaluation with improved correlation with human judgments[C]//ACL Workshop on Intrinsic and Extrinsic Evaluation Measures for Machine Translation and/or Summarization. Stroudsburg, USA: ACL, 2005: 65-72.
[35]
Lin C Y. ROUGE: A package for automatic evaluation of summaries[C]//Workshop on Text Summarization Branches Out, Post-Conference Workshop of ACL. Stroudsburg, USA: ACL, 2004: 74-81.
[36]
Vedantam R, Zitnick C L, Parikh D. CIDEr: Consensus-based image description evaluation[C]//IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, USA: IEEE, 2015: 4566-4575.
[37]
Ramanishka V, Das A, Zhang J M, et al. Top-down visual saliency guided by captions[C]//IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, USA: IEEE, 2017: 3135-3144.
[38]
Chen X, Fang H, Lin T Y, et al. Microsoft COCO captions: Data collection and evaluation server[DB/OL]. (2015-04-3)[2020-11-12]. https://arxiv.org/abs/1504.00325v2.
[39]
Venugopalan S, Rohrbach M, Donahue J, et al. Sequence to sequence-Video to text[C]//IEEE International Conference on Computer Vision. Piscataway, USA: IEEE, 2015: 4534-4542.
[40]
Gan Z, Gan C, He X D, et al. Semantic compositional networks for visual captioning[C]//IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, USA: IEEE, 2017: 1141-1150.
[41]
Quigley M, Gerkey B, Conley K, et al. ROS: An open-source robot operating system[A/OL]. [2020-11-12]. http://www.robotics.stanford.edu/~ang/papers/icraoss09-ROS.pdf.
[42]
Chitta S, Sucan I, Cousins S. MoveIt![J]. IEEE Robotics and Automation Magazine, 2012, 19(1): 18-19.
[43]
Bochkovskiy A, Wang C Y, Liao H Y M. YOLOv4: Optimal speed and accuracy of object detection[DB/OL]. (2020-04-23)[2020-11-12]. https://arxiv.org/abs/2004.10934.