您的位置:首页 > 财经 > 数码 > 浅谈动作识别TSN, TRN, ECO

浅谈动作识别TSN, TRN, ECO

2018-09-24 来源:再次显示  浏览:    关键词:

什么是动作识别?给定一个视频,通过机器来识别出视频里的主要动作类型。

动作识别表面是简单的分类问题,但从本质上来说,是视频理解问题,很多因素都会影响其中,比如不同类型视频中空间时间信息权重不同?视频长短不一致?视频中动作持续的起始终止时间差异很大?视频对应的语义标签是否模糊?本文主要对比video-level 动作识别的经典方法TSN,及其拓展变形版本的TRN和ECO。

TSN提出的背景是当时业界做动作识别都是用Two-stream CNN 和C3D 比较多,它们都有个通病,就是需要密集采样视频帧,比如C3D 中使用的是连续采样间隔的16 frames,这样当输入是个Long视频,计算量很庞大~故文中就提出了 稀疏时间采样策略 ,就是不管输入视频的长短,直接分成K个Segment,然后在每个Segment再随机找出一个时间小片,分别用shared CNN 来提取空间上的特征,再进行feature-level 的融合,最后再Softmax 分类:公式中Tk表示第K个Segment;函数F表示CNN网络出来的特征;G表示特征融合函数;H表示分类层Softmax。

整个网络框架图如下,很简洁:由于其中没有使用3D conv,故为了更好进行temporal 特征提取,文中也使用了类似双流的多模态输入:即上图的Spatial ConvNet 的输入可以是RGB图 或者RGB差异图;Temporal ConvNet 的输入可以是 光流图 或者wrapped光流:TRN致力于探索时间维度上的关系推理,那问题来了,怎么样才能找到特征间在时间上的传播关系呢?其实像传统的3D conv架构(C3D,P3D,R(2 1)D, I3D),也是有Temporal conv 在里头,也能从不同感受野即multi-temporal-scale来得到联系。

本文是在TSN框架上,提出用于video-level的实时时间关系推理框架。

2. 通过时间维度上Multi-scale 特征融合,来提高video-level鲁棒性,起码能抗快速动作和慢速动作干扰。

两个实现的细节点需要注意:1. 对采样下来的N-frame,必须保持时序性,即从先到后;这样后面的temporal fusion环节MLP才能学会推理动作的时间关系。

2. 不同scale的采样帧对应的MLP 都是独立的,不share参数,因为含的帧数信息量也不同,输入给MLP的大小自然也不同。

文中给出了几个非常有趣的实验结果:1. 如下图所示,在不同的数据集, TRN和TSN的性能差异很大。

这说明什么问题呢?在UCF, Kinectics, Moments里两者的性能相近,说明这三个数据集的动作与空间上下文具有强相关性,而对于时间上下文相关性较弱;而Something-something, Jester, Charades 里动作较为复杂,时间上下文联系较强,TRN的性能明显高于TSN。

不同的fusion方式在6个数据集上的性能[2]2. 保持帧间时序对于TRN的重要性,如下图所示,可见乱序输入的TRN在动作复杂的something-something数据集下性能严重下降;而在UCF101里并不严重,因为该数据集需要更多的是空间上下文信息。

正序和乱序的性能[2]来看看轻量级的ECO-Lite的网络框架图,对N个中的每个Segment中的帧来提取特征到某一层K*28*28,然后通过3D-ResNet(当然拉,这里你也可以使用convLSTM SPP 等方式来对比下效果) 提取N个Segment的时空特征,最后再分类。

完整的ECO框架就是在ECO-Lite 的基础上,再接一个类似TSN 的average pooling 的2D 分支,最后再将两个分支特征进行融合及分类:当硬件的计算能力在上升,且成本下降后,无疑以后通过Sparse sampling后,直接从头到尾进行3Dconv 出来的时空表征会更优 。

而这个Sparse sampling,是否可以通过temporal attention去自动选择最优的帧来计算也很重要。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:service@qeerd.com,投稿邮箱:tougao@qeerd.com