Temporal Relational Reasoning in Videos(TRN))

本文是ECCV2018的一篇有关视频动作识别的文章,作者为MIT的周博磊等人。

1、介绍

时序关系推理对于动作识别任务来说是重要的。一个动作可以包含几个短期的时序关系,也可能包含几个长期的时序关系。例如,短跑包括蹲在起跑线、在跑道上跑、在终点线完成这几个长期的时序关系,也包括手和脚的移动这几个短期时序关系。
许多视频数据集,例如UCF101,Sport1M,THUMOS,包含的许多动作不需要长期的时序关系就可以识别,静止的帧和光流已经足够。双流网络和I3D,都是基于帧和光流的方法,在这些数据集上已经表现很好。
然而,当动作由时序关系组成时,CNN的表现仍不太好。
本文提出TRN(Temporal Relation Network),可以学到并发现多个时间尺度上的时序关系。我们在三个最近的视频数据集(Something-Something,Jester,Charades)上使用了TRN网络,这三个数据集包括人-物交互、手势等动作,都依赖于时序关系推理。


图1

1.1 相关工作

1.1.1 动作识别中的网络模型

现有的一些视频动作识别方法:

  • 双流网络,空间流用静态图像,时间流用光流,从而融合了外观和短期运动的信息;
  • 3D卷积网络使用3D卷积核从一系列密集的RGB帧中提取特征;
  • TSN在不同的时间片段采样帧和光流来提取信息;
  • CNN+LSTM,用CNN提取帧的特征,用LSTM在时间维度上融合这些特征;
  • 最近的I3D使用了双流网络,在密集的RGB和光流序列上分别进行3D卷积(由2D卷积扩充得到),在Kinetics数据集上达到了SOTA。

现有方法存在以下问题:

  • 预先提取光流很耗时。
  • 在密集的帧上3D卷积计算代价高。
  • 输入网络的帧数限制在20到30帧,难以学习帧间的长期时序关系。
    为了解决上述问题,我们提出TRN,稀疏地采样帧,然后学习它们之间的关系。

1.1.2 动作识别中的时序信息

在UCF101、Sports1M等数据集上,静态帧的外观以及短期运动(如光流)是识别动作最重要的信息。因此双流网络、I3D等不需要有时序关系推理能力。
然而,最近的一些数据集,致力于序列动作识别:Something-Something收集了人-物交互动作,比如“用什么推什么”;Jester是姿势识别的数据集,有“竖起大拇指”等27种姿势;Charades数据集收集了家庭中的一些动作。一些栗子如图1所示。
为了识别这3个数据集中的复杂动作,网络需要具有时序关系推理能力。之前的一些工作使用bag of words,action grammar等人工设计的结构学习时序关系。而我们用了更通用的结构。
一个相关的工作使用双流连接网络学习帧之间的转换矩阵,然后用暴力搜索推断动作类别,计算代价较高。而TRN效率更高。

2、TRN

该部分介绍TRN的框架,TRN可以被嵌入现有的CNN结构,使其具有推理能力。

2.1 定义时序关系

定义两帧时序关系如下:
网络输入是从视频中有序选择的个帧,,其中是视频选择的第帧的表示,如标准CNN网络的输出激活值。和是不同帧之间的特征融合函数(这里我们采用多层感知机,是感知机的参数)。
为了计算高效,没有计算所有可能的图片对,而是均匀随机采样帧和,按照在视频中的出现顺序排序后组成一对。
由2帧扩展至更多帧之间的时序关系(如3帧):

2.2 多尺度时序关系

其中可以捕获个有序帧的时序关系。
整个网络结构如图2所示。

图2

2.3 高效地训练和测试

我们采用了一个显著减少计算开销的采样策略:

  • 首先从个片段均匀采样个帧,从而可以计算。
  • 对于,从上一步的N个帧中随机采样个帧,并采样次,从而可以计算。
  • 这样一来,总共采样了大约次时序关系,而只需要在CNN上计算帧图片(即第一步的帧)。

在测试时,对于一个视频流,将等距采样的帧的CNN特征存储到队列中,然后这些特征可以进一步组合成不同的关系元组。从而可以实时地处理视频流。

3、实验

采用了如表1所示的3个数据集,这些数据集中的动作需要时序关系推理。和UCF101、Kinetics等Youtube类型的视频不同,这3个数据集的视频由众包工人完成,动作有明确的开始和结束。


表1

3.1 网络结构和训练

  • 用更深的网络(如ResNet)提取的特征通常表现更好。我们的目的是验证TRN模块的有效性,选择了BN-Inception网络,它有更好的准确性和效率的平衡。
  • 和TSN的训练策略相同,采用了partial BN和全局池化层后的dropout。
  • 设置为3,采用双层感知机,每层256个单元;采用单层感知机,单元个数等于类别个数。
  • 一个帧的特征是BN-Inception的全局平均池化层的激活值。在单个Titan Xp GPU上训练100个epochs可以在24小时内完成。
  • 多尺度TRN包括了2帧的TRN到8帧的TRN(即等于8),因为包括更多帧的TRN提升不大但效率会降低。

3.2、实验结果

Something-Something包含了“将纸撕成两半”、“将某物翻转”等动作。可以看到,时序关系和物体的转移而不是物体的外观描述了动作。

表2

实验结果如表2所示。

  • baseline是指视频中随机选择单帧输入网络。
  • 双流TRN,对两个流的预测概率进行平均,注意这里由于时间流采用TSN的平均池化比本文提出的时序关系池化表现更好,因此时间流采用8帧光流的TSN。
  • 我们将TRN和TSN进行对比,以验证时序关系的重要性。TSN将几个时序帧的特征平均,而TRN将特征拼接。对比结果如表2(b)所示。

你可能感兴趣的:(Temporal Relational Reasoning in Videos(TRN)))