用于视频动作识别的双流卷积网络
Abstract:
作者研究了用于视频动作识别的鉴别训练的深度卷积网络(ConvNets)的结构,这项任务的挑战在于如何捕捉来自静止帧和帧间运动的信息。这项工作主要贡献如下:
1.本文提出了一个双流卷积网络(two-stream ConvNet)结构,其包含了时间和空间网络。
2.本文通过实验显示,通过稠密光流训练的卷积网络在训练数据较少时可以表现出非常好的性能。
3.证明了将多任务学习应用于两个不同的动作分类数据集,可以增加训练数据量,并提高在两个数据集上的表现。
二.识别视频的双流结构
![image-20200906224147912](image-20200906224147912.png)
视频能被自然地拆解成空间和时间部分。空间部分,以独立的帧的形式展现场景中的物体,而时间部分,则是以帧间的运动的形式表现。
每个流都由深度卷积网络组成,经过后期融合得到softmax分数。
1.空间流卷积网络
这部分负责对静止的帧进行分类,可以在ImageNet等图像分类数据集上进行预训练。
2.光流卷积网络
这部分卷积网络将光流图作为输入,光流图显式地描述了运动,这使得网络不用隐式地估计运动,使得识别变得更容易了一些。
2.1卷积网络输入设置
光流叠加:密集光流可被视为相邻两帧t和t+1之间的一组位移矢量场dt.dt(u,v)表示帧t上的像素点(u,v)对应的位移矢量。其水平、竖直分量分别表示为dxt和dyt,每个分量有L张光流图。w、h分别表示图像的宽度和高度,卷积网络的输入It∈Rw×h×2L可表示如下:
![image-20200906215052313](image-20200906215052313.png)
![image-20200906223908294](image-20200906223908294.png)
Fig2.光流。(a)(b)是一对帧,(c)是在轮廓区域的密集光流特写;(d)(e)分别是水平光流和竖直光流图。
轨迹叠加:用沿着运动轨迹采样的光流替换在多个帧中相同位置采样的光流。
![image-20200906215942407](image-20200906215942407.png)
其中Pk是沿轨迹的第k个点
![image-20200906220101824](image-20200906220101824.png)
![image-20200906223244168](image-20200906223244168.png)
Fig3.左侧是光流叠加,右侧是轨迹叠加的示意图。
双向光流:做法是逆时间顺序计算帧间的光流。
减去平均值:为了消除相机运动的影响,通常的做法是在光流的基础上计算出相机整体的运动,再减去这个运动矢量。作者采取了一个更简单的方法,即直接减去光流的平均值。
3.多任务学习
尽管空间流卷积网络可以在静态图像数据集上进行预训练,时间流卷积网络需要采用视频数据集,而用于视频动作分类的可用数据集非常小。作者使用的数据集是UCF-101和HMDB-51,为了减少过拟合,引入了多任务学习技术。具体做法是在最后一层全连接层之上,加入了两个softmax分类层:一个计算HMDB-51的分类分数,另一个计算UCF-101的分数。这两层分别使用对应的损失函数,只应用于对应的数据集。整体的损失是这两个任务的损失之和,网络权值的导数可以通过反向传播求得。
4.实验结果
![image-20200906223207212](image-20200906223207212.png)