type
status
date
slug
summary
tags
category
icon
password
comment_flag
SLUGS

Source

authors: Bolei Zhou, Alex Andonian, Aude Oliva, Antonio Torralba
from:ECCV2018

Abstract

  • Temporal Relational Network(TRN)目的是用于视频帧间的推理
  • TRN的实验数据集
    • Something-Something:人、物间的交互
    • Jester:不同手势
    • Chardes:日常活动
    • notion image
  • TRN学习视频中的直观可解释的视觉常识
 

Introduction

  • 意义:针对实体在时间域上的关系进行推理对智能决策意义重大,时间域关系推理可根据过去的情况来分析当前情况,甚至可对未来的情况作假设
  • 灵感
    • 给定一个时间的两个观察结果,人们能容易的识别出视觉世界中的两个状态之间的时序关系并推断出一个视频中两帧之间发生什么
      • notion image
    • 一个单一的行为可以包括多种时序关系包括长时间尺度和短时间尺度关系,例如短跑这个行为:
      • 长时间尺度关系:起跑架上蹲着、在跑道上奔驰和在终点线撞线
      • 短时间尺度关系:包含手脚周期性挥舞。
  • 存在的困难
    • 视频中行为识别的一个困难是,找到合适的时间尺度来清晰地描述行为
    • 已有网络的局限:
      • 经典的双流卷积和I3D在一些数据集上(UCF101,Sport1M和THUMOS,他们包含了许多活动)确实不用长期时间关系的推理也能取得很好的效果,仅用RGB+optical flow即可。
      • 但在数据和观测标签有限的情况下,又或者,数据的基本结构不再以实体的外观为特征,而是以实体的变化和时间关系为特征,的情况下,那么经典的卷积网络带来的效果可能就没那么好了
      • Something-Something,Jester,and Charades数据集里的行为是依赖时间关系推理的,因此在仅给出RGB帧序列的情况下,使用装备有TRN的模型预测的效果可以在baseline上带来巨大提升。(反向暗示其他不具备时间关系推理的网络模型在这些数据集上的效果不是特别好)

Related Work

  • 之前的行为识别的很多工作是寻找有效的deep cnn:
      1. Two stream CNNs:用RGB和光流来融合得到预测结果,试图融合物体表观信息和短期的运动信息
      1. 3D convolutional networks:用3D卷积核从密采样的RGB帧序列中提取特征
      1. Temporal Segement Networks:在不同的时间段中采用RGB和光流和提取相关信息
      1. CNN+LSTM:用CNN来解压帧序列中的特征,然后用LSTM随时间推移整合特征
      1. I3D:在密集的RGB和光流序列上使用双流CNN和膨胀的3D卷积,以在Kinetics数据集上实现SOTA
  • 已有的行为识别任务的CNN存在的问题:
      1. 光流提取降低了行为识别系统的效率
      1. 密集帧上进行3D卷积对算力要求高
      1. 喂进网络的帧数一般限制在20-30帧,难以学习帧之间的长期时间关系
      作者说TRN稀疏采样个体帧,来学习它们之间的因果关系
  • 行为识别中的时序信息
    • UCF101、Sport1M、THUMOS和Kinetics等数据集上,识别行为的最重要的信息就是静止帧序列和光流这种短期运动的表观信息,因此现有的网络不需要具有时间关系推理能力
    • 双流和I3D可以通过密采样和提取光流获得密集帧序列和短期运动
    • 对于关注有序活动的数据集:
        1. Something-Something数据集是用于通用的人-物交互。它有诸如“将东西放入某物”,“用某物推某物”,甚至“假装打开某物而实际上不打开它”等的视频分类
        1. Jester数据集是另一个最近用于手势识别的视频数据集。视频由众包工作者录制,他们摆出27种手势,如“向上翻阅”,“向左滑动”和“逆时针转动手”等
        1. Charades数据集也是一个高级的人类活动数据集,通过要求群众工作人员进行并记录一系列家庭活动,来收集视频
        若在这些数据集上进行行为识别,将时间关系推理整合到网络中是至关重要的,因此作者设计一种通用的结构是网络在端到端训练中学习时间关系
  • 关系推理与直觉物理学
      1. (作者工作的)最近,关系推理模块已被提出来用于具有超人类表现的视觉问答,作者受此启发专注于对视频中的多尺度时间关系进行建模
      1. 在机器人自我监督学习领域,给定初始状态和目标状态,使用具有强化学习的逆动力模型来推断对象状态之间的转换
      1. 物理的相互作用和观察用于训练深度神经网络,Time contrast network用于从第三人称的视频视角来自我监督模仿学习操纵对象
      作者称其工作旨在在监督学习环境中学习视频中的各种时间关系,并称提出的TRN可以扩展到用于机器人操纵对象的自我监督学习

Temporal Relation Networks

关系推理的定义

对于两帧的时间关系推理,其推理得分如下:
其中
  • 是从视频中采样出的帧序列,也可能是CNN输出的激活信息
  • ,是多层感知机MLP(下图是后文所述的一种MLP设置)
    • notion image
推广到3帧,其得分如下(注意此处的感知机已发生变化):
当然也可以推广到N帧的时间关系推理,得到推理分数

多尺度的关系推理

作者为了捕获视频中不同尺度的时间关系,使用如下的函数来累计不同帧尺度的时间关系推理得分:
其中是帧尺度为的时间关系推理得分,每个都配有独立的感知机函数,

有效的训练和测试

由于后文的实验中有时设置超参数,,不妨在作此假设以讨论采样模式。
采样模式以及前向过程:
  1. 从视频均分的段中各段随机采样形成一组帧,得到,同时计算得到
  1. 对每个,,从中随机选择个帧的下采样,用来计算帧尺度的时间关系推理得分。假如,那么随机取个帧的下采样,形成帧编号元组(0, 1, 2, 3, 5, 6, 7),(0, 2, 3, 4, 5, 6, 7),(0, 1, 2, 3, 4, 5, 7),对每一个元组通过MLP可算出其对应的个得分、、,那么累加得
  1. 以此类推可得出,,,,
  1. 最后计算得出
下图是个人结合作者代码所做的note:
notion image
代码中的似乎是将下采样的子样本中的每一个元组(如3个7帧的元组),分别经过共识函数融合后,再进行投影到类别数大小的向量(分别得到了、、),然后求和。

Experiments

Results on Something-Something Dataset

Something-Something是最近用于人-物交互识别的视频数据集。共有174个类别,其中一些模糊的活动类别具有挑战性,例如“将某物拆成两部分”与“撕下某物一点点”,“将某物颠倒过来”与“假装将某物颠倒过来”。在该数据集上,是对象的时间关系和变换,而非对象的外观,表征了活动。
下图(a)比较了Baseline和TRN在Something-Something V1和V2上的效果(top1-acc),图(b)对比了TRN和TSN在Something-Something V1验证集上的top1-acc:
notion image
💡
TSN仅是平均了深层的features,捕获共现的特征;TRN将时间帧特征拼接在一起,捕获features的时间顺序模式
作者似乎说明了一个小问题,但是没分析原因:
Note that we found that the optical stream with average pooling of frames used in TSN [16] achieves better score than the one with the proposed temporal relational pooling so we use 8-frame TSN on optical flow stream, which gets 31.63% and 46.41% on the validation set of Something-V1 and Something-V2 respectively.

Results on Jester and Charades

Jester数据集是用于手势识别的视频数据集,具有27个类别,在该数据集上的效果如下:
notion image
在charades上对日常行为的识别效果和其它方法对比如下:
notion image
三个数据集上预测效果的示例展示:
notion image
上面的结果表明:
  1. 动作带有的整体时间顺序信息是TRN成功预测分类的关键,如Turning Hand Counterclockwise。
  1. 网络可以捕获多尺度的时间关系,而且短片段中的lower-level的行为顺序传达了整个行为类别的关键语义信息。如pretending to put something into something。

Interpreting Visual Common Sense Knowledge inside the TRN

在该板块,作者讨论了TRN的本质理解:
  1. TRN对行为的识别直观上解释是用被TRN投票选出的代表帧来识别动作
      • 对于简单的行为,单帧即可预测正确;对变化敏感的复杂行为(如覆盖东西)需要多帧来预测
      • “打开书却未打开”的例子:
          1. 单帧-一个靠近书的手,足以将顶部预测缩小到一个定性合理的动作,展开一些东西
          1. 类似的两帧增加了初始预测的概率,尽管对人而言没什么变化
          1. 3帧突出了假装类别的模式特征:初始帧非常类似于某个动作,但后面的帧与该动作的完成不一致,就像它从未发生过一样
          1. 4帧-手在向上远离,增大了预期和观察到的状态的不一致,且该运动发生在对实体没有影响的情况下,巩固了正确分类
          notion image
  1. 之前的3D卷积网络和双流网络无法完成的时间对齐任务:观察到TRN识别的代表帧在一个动作类别的不同实例之间是一致的,这表明TRN非常适合于需要时间上将视频彼此对齐的任务
      • 方法:给定相同动作的几个视频实例,我们首先为每个视频选择最具代表性的帧,并使用它们的帧索引作为“地标”,时间锚点。然后,我们改变两个连续锚点之间的视频片段的帧速率,使得所有单个视频同时到达锚点。
      • 怎么找的代表性帧序列?(个人理解:假设寻找4帧元组的代表性帧,那么观测所有下采样的4帧元组的分类得分,选择得分最高的元组作为最高得分分类的代表性4帧元组)
      • 下图显示了对齐视频的样本(可以看到时间关系捕获了动作的不同阶段):
        • notion image
  1. 行为识别中时间顺序很重要。
      • 为了证明这一点,作者分别在Something-Something和UCF101数据集上对采样的帧序列进行shuffle,送进TRN网络训练,与不shuffle的测试结果对比如下:
        • notion image
          结果表明something-something数据集中顺序的准确率比乱序的准确率高很多,而在UCF101上采用完全相同的实验条件和实验流程,发现顺序和乱序的实验效果相差不多,这表明UCF101中youtube类型视频的活动识别并不一定需要时间推理能力,里面的”打鼓“,”击剑“,”骑自行车“等行为类别的实例,不是特别依赖帧的时间顺序,像TSN这样的网络去捕获共现的突出特征就能预测得很好。
      • 为了探究帧的时间顺序对行为的影响有多大,作者对Something-Something的不同类别实例上进行了shuffle和不shuffle的测试对比:
        • notion image
          实验结果表明:具有强烈“方向性和大型单向运动的行为,例如”Moving sth down“,使用ordered帧来识别效果更好,对于相对静止的动作的shuffle与否,似乎差别不大,但部分甚至得益于shuffle,如“putting sth that can't roll onto a slanted surface so it stays where is is”(推斜面上不能滚动的物体,物体仍留在原处)
  1. TRN和TSN的不同是,对特征的池化采用不同策略(前者使用Temporal Pooling,后者使用Average Pooling),作者又做了一组对比试验,证明了YouTube类型的数据集上进行时间关系推理的意义不大:
    1. notion image
  1. 行为预测任务:在行为发生或完全发生之前尽早识别行为或甚至预测和预测行为是行为识别中具有挑战性但未被探索的问题。仅给出每个验证视频中的前25%和50%的帧,预测结果如下:
    1. notion image
      notion image
参考:
《TSM: Temporal Shift Module for Efficient Video Understanding》笔记《Temporal Segment Networks for Action Recognition in Videos》笔记
Loading...