论文:Human Action Recognition using Factorized Spatio-Temporal Convolutional Networks(2015)
背景
视频序列中的人类动作是三维(3D)时空信号,表征了所涉及的人类和物体的视觉外观和运动动态。受卷积神经网络(CNN)成功用于图像分类的启发,最近进行了一些尝试来学习3D CNN以识别视频中的人类动作。然而,部分地由于训练3D卷积内核的高度复杂性和对大量训练视频的需求,3DCNN比较难以成功。这促使我们在本文中研究一种可以更有效地处理3D信号的新型深度架构。
主要内容
1.提出分解的时空卷积网络FstCN,将原始3D卷积核学习分解为在较低层(称为空间卷积层)中学习2D空间核,然后在较高层(称为时间卷积层)中学习1D时间核的顺序过程。
2.引进了一个变换和置换操作( transformation and permutation(T-P) operator )用于分解过程。
3.为了处理序列对齐的问题,基于给定动作视频序列中对多个视频片段采样,提出了一种有效的训练和推理策略。(这个序列对齐问题指的是有些动作很快,有些动作持续很久,因此如果输入一个固定大小的时间跨度的视频帧就会出现这个序列对齐问题)
4.提出了一个基于疏密指数(sparsity concentration index (SCI) )的新的得分融合方式
FstCN
FstCN是级联的深度架构,其中堆叠了多个较低的SCL,一个T-P运算符和一个较高的TCL。附加的SCL也与TCL并行使用,旨在学习更抽象的空间外观特征表示。通过顶部的全连接(FC)和分类器层,可以使用反向传播对整个FSTCN进行全局训练。 SCL部分进行对空间特征的学习,TCL部分使用1维卷积核对时间序列学习。原始的3D卷积核作用于视频片段的式子如下:
其中K是3D卷积核(Nx, Ny, Nt),V是视频片段(Mx, My, Mt)。Fst是输出。
而本文提出的思路是将K从3维卷积核分解成先进行二维卷积,再进行一维时间卷积,最后再结合。具体理论公式如下:
其中Kxy表示空间卷积核,Kt表示时间卷积核。
卷积核的复杂度就从原来的Nx*Ny*Nt ,变成了Nx*Ny +Nt。但模型的表示能力低于使用3D卷积的表示。
transformation and permutation(T-P) operator
如图所示
Transformation具体是指将(x ,y)的二维矩阵变成长度为x*y的向量,这样一个(f, x, y, t)的张量就变成了(f, xy, t)结构。其中t是时间维度上的长度,f是通道数。
Permutation操作是指经过一个f x f‘ 的矩阵P进行相乘,将(f, xy, t)变成 (f', xy, t),这里的P是使用高斯分布初始化,是在训练中可学习的,大小取128x128。
经过T-P操作后,观察图,可使用2D卷积进行空间和时间维度上的特征提取。例如(96,7,2)表示96通道,空间上大小为7,时间维度上为2的卷积核在(f', xy, t)上卷积。这样就解决了序列对齐问题,方式就是在使用t不同的卷积核。
Sampling strategy
在原序列的基础上加入了差分帧,具体是指先取st连续帧,再用第t +dt帧减去第t帧,得到Vdiff帧,这里的dt取9,st取5。因此输入为{ V, Vdiff }。
数据增强部分:先对视频帧空间上进行左上,中上,右上,左中,....右下的九个位置进行crop, 再反转得到18个crop样本,再取M个不同长度。
SCI based score fusion
平均融合的公式是:
C指的是Crop的部分,M是同一个位置crop的M个不同长度的视频片段。
而基于SCI的融合方式计算方式如下:
这里N指的是动作的种类数。
对每个位置crop计算得分pi, 最后取M个长度中得分最高的那个。
Implementation details
图一中前四层SCL的卷积细节如下:
其中还使用了LRN(local response normalizatioin ), LRN是在BN前提出的,自从BN出来后很少听说使用LRN了·。LRN的参数是alpha=5x10(-4), belta = 0.75。
输入图像大小为224x224, batch_size =32。
Conclusion
使用基于SCI的融合比平均融合好一点点。
这个模型相比其他的没怎么提高。
如有错误,欢迎留言指出。
本文来源于微信公众号“ CV技术指南 ”的模型总结部分 。更多内容与最新技术动态尽在公众号发布。