深度学习是学习视觉特征表示的有效方法。人类大脑接收视觉信息后,感受区首先提取视野中目标的边缘特征,然后提取目标的形状信息,最后提取目标的全局特征。通过将特征从低层到高层进行组合,人的大脑表示目标越来越抽象,从而能更准确地表达语义信息。深度模型通过模拟人类大脑,构建深层的神经网络模型,将输入的原始图像信息逐层表示为边缘、形状等语义信息。每一层通过学习前一层的输出信息,得到该输出信息更抽象的特征表示,经过多层的信息抽象,在最后的输出层输出类别概率,取得较好的分类性能。用于动作识别的几种典型深度模型有时空卷积神经网络、循环神经网络、多流神经网络。
1.时空卷积神经网络
时空卷积神经网络利用卷积操作处理动作中的时序信息。为了实现这个操作,Ji等人[37]提出了三维卷积神经网络,将滤波器从二维沿着时间维度扩展成三维。使用三维卷积核同时提取时间维度和空间维度上的特征,可以捕捉到视频中相邻帧之间的运动信息,比二维卷积网络效果有明显的提升。图6.4为二维卷积和三维卷积的具体过程。
图6.4 二维卷积和三维卷积的具体过程[37]
(a)二维卷积;(b)三维卷积
三维卷积网络具有严格的时间结构,只能接受固定时间长度的输入视频。然而,不同的运动具有不同的时间跨度,因此固定的时间维度就可能导致动作识别的性能下降。为了解决这个问题,Ng等人[38]探索了时序的池化,并总结出最大池化对于时间维度来说更有优势。Karpathy等人[39]提出了缓慢融合的概念以提升卷积网络对于时域上的感知。在缓慢融合中,卷积网络输入几个连续的视频部分,通过一些相同的层来处理时域上的响应,然后通过全连接层来生成视频的描述子。
在卷积神经网络提取图像特征[40-41]的基础上,Tran等人[42]使用三维卷积神经(C3D)网络提取通用的视频特征。C3D网络在Sports-1M[39]数据库进行训练,取得了良好的识别性能。但由于三维卷积总是固定在第三维上,学习完整的时间信息比较困难。另外由于参数较多,即使在规模较小的数据库上训练三维卷积网络仍然难度很大。为了简化三维卷积网络结构,Sun等人[43]提出了分解时空卷积网络(factorized spatio-temporal convolutional networks),将三维滤波器转换成二维和一维滤波器的组合。这个模型考虑了较低层中空间域的信息,然后在高层的时间域将空间信息进行整合,从而减少了网络的参数数量,缓减了训练数据不足的问题。
2.循环神经网络(www.daowen.com)
为了探索视频中的时序信息,研究人员还提出了循环神经网络,如图6.5(a)所示。但是由于高昂的计算成本,这些循环神经网络通常并不使用全部视频帧作为输入,而是使用预处理的方式将窗口长度设计成64~128帧之间。循环神经网络结构通常由循环神经网络单元[图6.5(b)]或长短期记忆网络单元[long short temporal memory,LSTM,图6.5(c)]构成。
图6.5 循环神经网络
(a)循环神经网络的结构;(b)循环神经网络单元;(c)长短期记忆网络单元
Du等人[44]提出了一种端到端层次化的循环神经网络,使用层次化的模型生成动作表示,进行基于骨架的动作识别。网络第一层使用双向循环神经网络建模身体的五个部分,然后将身体各部分表示聚合在一起生成更高层的特征表示,最后使用LSTM神经元来缓解梯度消失的问题。Sharma等人[45]使用LSTM和注意力模型构建了能同时建模时间和空间信息的深度模型。注意力模型可以增加重要部分的权重,而这种动态的池化方法要比卷积网络中其他池化方法的效果更好。Srivastava等人[46]提出了一种基于LSTM结构的深度编码解码器,用于学习视频帧的特征表示。Ng等人[38]使用LSTM对时序信息进行建模,将视频视为静止帧的有序序列,并利用不同的池化方法,在较长视频窗口上组合时序信息。该方法在运动数据库上取得了不错的效果。然而,循环神经网络的效果并没有最大值池化方法好。因此,Lev等人[47]使用RNN和Fisher向量学习视频的特征表示。首先利用VGGNet网络提取视频中的空间特征,然后训练循环神经网络来预测提取特征的顺序,而循环神经网络的反向传播机制正好提供了计算Fisher向量所需的梯度。Escocia等人[48]提出了一个利用深度学习模型和记忆单元从视频中检索时间片段的模型。该模型使用LSTM对卷积神经网络提取的空间特征进行编码,并预测输入视频流中动作发生的位置。
3.多流神经网络
Simonyan和Zisserman[49]提出了由空间和时间深度模型组成的双流(two-stream)卷积神经网络(图6.6)。该双流网络结合了静态帧和光流帧进行动作识别,分别通过空间卷积网络和时间卷积网络,提取视频中目标的外观信息和视频帧之间的运动信息。空间卷积网络在ImageNet[50]数据库上进行了训练,时间卷积网络利用光流特征进行了训练。相比于三维卷积网络,双流网络所需要的参数较少,即使在训练数据不足的情况下,也能学习较好的特征。双流网络利用softmax层的打分进行融合。相对于在softmax层进行融合,Feichtenhofer等人[51]认为在中间层进行融合不仅可以提高效果,还可以降低参数数量,并通过实验验证了在最后一层卷积层之后进行融合能达到最好的效果。Wang等人[52]提出了另一种用于长时间时序建模的双流卷积神经网络,称为时域段网络(temporal segment networks)。该网络是第一个端到端的、建模整个视频时序信息的深度神经网络,首先将整个视频分成小的视频片段,然后使用双流网络在视频片段上同时学习时间维度和空间维度上的特征表示,最后通过特征聚合将各视频片段中的时间域和空间域特征表示整合,以生成整个视频的特征表示。
图6.6 双流卷积神经网络[49]
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。