论文解读:TDN

TDN: Temporal Difference Networks for Efficient Action Recognition

基于时差网络的高效行为识别 1 引言

1.1 背景

短期时序建模:主要有三种方法,(1)采用双流网络结构,一条流抽取RGB图片的表征信息,一条流抽取光流图片的移动信息,最后将两种信息融合。(2)采用3D CNNs 和 3D Pooling ,将Video看做3D tensor可以直接抽取时空特征。(3)采用伪3D结构,将3D卷积拆成一个2D的空间卷积和1D的时间卷积,同样能直接从Video中抽取时空特征而且计算复杂度比较低。这些方法受制于卷积核的感受野大小是基于短期时序建模的方法。

长期时序建模:主要有三种方法,(1)Conv + RNNs ,利用RNNs的长期时序建模能力在模型后期对特征图建立长期时序依赖。(2)Non-Local Conv , 引入非局部操作在逻辑上扩大卷积核的感受野从而建立长期时序依赖。(3)Segmented Method,采用分片方法,例如TSN对Video的所有帧均匀分片,对于每个分片稀疏采样出一张RGB和邻近的两张光流图输入到双流网络,在模型后期分别对空间流和时空流的信息进行融合,使得模型看到了整个视频片段。

时差表示:RGB Difference (图片差)在以往许多的工作中证明可替代光流图来表示移动信息。

1.2 提出问题

这篇文章提出观点,短期时序信息和长期时序信息对行为识别都是至关重要的,因为短期时序信息可以刻画动作实体的独特性(我的理解:同一个动作可以持续很多秒,但是每秒动的幅度、方向等都不同),而长期信息可以刻画动作实体的互补性(我的理解:虽然每秒动的幅度、方向等都不同,但是要把多秒的动作联合起来理解,才能理解到这些动作是同一个动作持续了很多秒)。

1.3 解决方案

基于上述问题,这篇文章应用时差图和稀疏采样的策略,提出了一种视频级的移动信息建模框架:TDN。TDN主要由两部分组成:S-TDM和L-TDM,可以用非常小的计算代价将它移植到现存的任意CNNs中。S-TDM对于叠加了时差信息的RGB图做局部移动信息的建模,L-TDM对于多尺寸跨分片的全局移动信息建模。

上图是TDN移植到ResNet上的结构图,可以观察到与TSN结构基本一致,是其的一种拓展方法。不同的是,ResNet前2个阶段采用的是S-TDM,后3个阶段采用的是L-TDM,也就是说TDN前期进行短期时序建模而后期进行长期时序信息建模。

2 模型方法

2.1 Short-term TDM

Input的由来:这篇文章借鉴了TSN分片稀疏采样的思想,对于一段视频均分为T段,从每段中随机抽取一帧RGB图像 I_{(t)} ,然后以此图片为中心计算其前后4帧图片的差值,即计算相邻的时差图,得到一张RGB图片和4张时差图作为输入。

AvgPool:对时差图做平均池化是为了进行下采样,这样做的原因是相邻两帧很相似导致时差图大部分值都很小,所以做平均池化即让图片变小了,加速后续计算,又不会丢失信息造成很大的误差。

S-TDM结构:其本质结构也是双流网络的结构,一条流抽取RGB图片的空间特征,一条流抽取时差图(类似于抽取光流图)的时序特征,最后进行两条流的信息融合得到Output。注意,中间还有一条时间流到空间流的残差连接,这样做是借鉴了时空特征早期融合(Early Fusion)的思想。

2.2 Long-term TDM

S-TDM相当于对时间窗口大小为5的局部信息进行了特征提取,现在需要对全局时间上的信息进行特征提取,这就是L-TDM为什么要跨分片来提取特征。首先要搞懂F是怎么经过Conv1变成F_t和F_t+1的,我们来看看作者的源代码:

self.conv1与图中的Conv1对应,是一个1维的卷积块,相当于一个全连接层,作用是将通道以r的比例压缩。

view方法把 nt times c//r times h times w 4维的tensor变为 ntimes t times c//r times h times w 5维的tensor。n是指一个批量中视频的个数,t=n_segment(默认是8)是指每个视频被划分成了8片,每一片应该代表一个时刻。

生成F_t和F_t+1的方式其实就是将这个5维的tensor在t维度上分成两组(0到t-1,1到t)。后面的代码其实就是在计算双向的差值,即: Conv2(F_{t+1}) -F_tConv2(F_t) – F_{t+1}

为啥要加入Conv2操作,作者解释到是由于空间定位失准的问题,而Conv2是channel-wise类型的卷积,可以很好的解决这个问题。之前我不太懂为什么,后来学习了数字图像处理的课程,发现这就是图像配准技术,Conv2在此处充当转换映射函数。如下图,a是原图,b是发生空间畸变的图形(由于拍摄视频的时候摄像头可能在移动,极有可能产生空间变形),c是校准后的图形,d是a和c的插值图(可以看出,校准后的差值图才保留了有用的细节)。

三分支结构:这是一个多尺度学习模块,一条分支是残差连接用于特征表示增强,一条分支是对现有尺寸的特征图做卷积操作,还有一条分支是先对图片做下采样得到比较小的图片再卷积。多尺度的方法是为了充分利用特征,就好比一段通信信号有高频成分,也有低频成分,卷积核就好比滤波器,我们希望高频信号和低频信号都能通过滤波器。

最后:Conv3也是一维的卷积,作用是还原通道数为C。双向的流提取到时空特征后按0.5的因子加权在一起形成注意力图与输入特征F做元素点乘,后与残差连接的F相加得到输出。

3. 实验

3.1 消融实验

时差计算的重要性:

直接采用堆叠方式并在时间维度上做平均池化效果是非常差的,计算时差图后性能提升了10%左右。

探索更好的S-TDM和L-TDM:

从上述两个表格可以看出,最好的S-TDM是采用残差连接进行Sum融合方式,而最好的L-TDM是先做注意力点乘运算再用Sum融合的方式。

探索最好的位置:

可以看出,S-TDM在ResNet前2个Stage,L-TDM在ResNet后3个Stage是最好的布局。

探索谁贡献大些:

可以看出,单独使用S-TDM比单独使用L-TDM效果要好些,但是都用就更好了,这说明两者互补(我第一次理解了互补性就是指单独用都有点贡献,同时用贡献更大了)。

探索TDM的作用:

上图比较了TDM与其它方法,这里的TDM应该是指S-TDM,因为其他方法都是短期时序建模的方法。

3.2 对比试验

这里只展示在Kinetics400上的对比试验:

看了之后只有一个感悟:试验做得太足了,基本上把该领域近几年最先进的方法都比较了个遍。

3.3 可视化

观察出一点:只有时间卷积的Baseline不能精准捕捉到动作发生的区域,而TDN能。

4 总结

本文提出的S-TDM在本质上是借鉴了双流结构+早期融合的思想并用时差图替代了光流图来提升局部时序建模的能力和降低计算开销,而L-TDM本质上是借鉴了多尺度卷积的思想并使用了Channel-wise Conv的技巧来提升全局时序建模的能力和降低计算开销。

发表回复

相关推荐

2020秋 人教版初中英语七年级上册教材电子课本(高清更新可打印)

为了帮助学生提前进行上册教材的预习,帮助老师们节省时间,帮助家长有效辅导,我们精心整理了各教材电子课本高清电子版。

· 2分钟前

粤语学习APP大全

一直对粤语学习感兴趣,但是听不懂也不会说,终于决定开始学习了,看电视和视频都感觉兴趣不大,重点是自己不开口,跟哑巴英 ...

· 4分钟前

万宝龙146 14c/14k/T舌/现产 F尖找不同

这次文章的内容主要是对比一下几支不同年代146,看看他们之间有什么不同,年代从远到近分别是14C、14k、T舌、现产(P146), ...

· 5分钟前

史上最全股票和基金工具网站推荐:找资讯、逛论坛,看财报、查数据……

工欲善其事,必先利其器。 周末趁著闲暇,给大家整理了一份股票、基投资找工具网站。 看行情、找资讯、逛论坛,看财报、看研 ...

· 8分钟前

动漫烟花怎么画?教你二次元简易烟花的画法教程!

动漫烟花怎么画?如何学习绘画?想必这些都是绘画初学者们经常在想的问题吧,就是不知道如何才能学习好绘画,然后绘画出自己 ...

· 10分钟前