基于深度学习的行为识别方法综述

前言

行为识别是机器理解世界以及人类行为的关键技术,在智慧护理、智能监控、视频检索、智能家居方面有着广泛的应用前景。本文对当前流行的基于深度学习的行为识别技术进行总结。

一、行为识别方法

基于深度学习的行为识别主要有三种方法:

  1. 3D卷积的方法
  2. 双流网络的方法
  3. LSTM的方法

二、分类介绍

1.3D卷积

TranD等提出3D卷积网络,其中Facebook提出的C3D卷积神经网络占据重要地位,即在卷积层使用3D卷积核对连续的视频帧进行特征提取。相对于图片,视频具有时间维度,因此,可以采用包含时间维度信息的3D卷积直接进行卷积,将时间维度的信息直接加入到卷积网络中进行学习。这种3D卷积的网络能同时提取到视频的时空特征,卷积层之后包含全连接层,利用softmax层进行分类。

3D卷积的优点是简单直接,可以直接得到视频的时空特征,但是这种方法由于只是粗暴的将时间维度加到卷积网络中,虽然相较于2D卷积有了很大的进步,但是难以取得令人满意的效果。

DibaA等提出的T3D,将2D的DenseNet扩展到3D,同时采用Inception的思想,提出一个时间上的TTL层来实现可变尺度的卷积;Yang
K等我们提出了一个强大的时间保存卷积(TPC)网络,它为3D变换器配备TPC滤波器。TPC网络能够充分保持时间分辨率,同时降低空间分辨率,实现帧级粒度行为定位。TPC网络可以进行端到端的训练。

视频相较于图像最大的特点就是具有时间维度,帧与帧之间具有很明显的时间上的相关性,普通的2D卷积只能用于提取图像的空间特征,忽略了时间上的相关性。为了能够同时兼顾空间信息和时间信息,Ji等提出将2D卷积扩展为3D卷积,用于提取视频的时空信息,从而达到行为分类的目标。
基于深度学习的行为识别方法综述_第1张图片

2D卷积只能实现对空间的卷积,3D卷积则加入了时间维度,能够实现时空维度同时进行卷积。其输入往往是多个堆叠的连续的视频帧,利用一个3D的卷积核可以实现直接对堆叠的视频块进行操作,如图1所示,3D卷积的卷积核对连续的3帧图像同时进行卷积,也就是说,卷积核在时间维度的深度为3。与2D卷积相同的是,一个3D的卷积核也只能从视频块中提取一种特征,因为在卷积过程中,卷积核权值是共享的,如果需要提取多个不同的特征,需要使用多个不同的卷积核进行卷积,图1中,相同颜色的连线表明相同的权重。
Ch´eron等提出的用于人体行为识别的3D卷积神经网络,如图2所示,其中,输入为连续的7帧图像,首先经过一个硬编码的卷积层,该层计算每一个视频帧在x、y方向的梯度,形成了14个通道,然后从第二帧开始计算光流,形成12个通道,最后加上7个连续的视频帧,一共形成了33个通道;然后对这33个通道的数据进行卷积操作,一共包含3个卷积层,其卷积核的大小如图所示,卷积核的步长均为1;两个池化层,池化核的大小为2×2,步长为2,;最后经过一个全连接层实现分类。
基于深度学习的行为识别方法综述_第2张图片
基于深度学习的行为识别方法综述_第3张图片

Varol等提出一种长期时间卷积神经网络(LTC)来表示视频;Karpathy等研究了多种用于扩展卷积神经网络的在时域上的连通性的方法,最后提出一种多分辨率、中心化的结构来充分利用局部的时空信息,从而达到加速网络模型的训练的目的。网络结构图如图3所示:
3D卷积的优点是简单直接,只是在普通2D卷积的基础上增加了一个时间维度的信息即可实现同时提取时空特征用于分类;缺点是这种直接加时间维度的做法过于“粗暴”,而且,3D卷积由于多了时间信息,在卷积过程中会产生大量的参数,训练起来比较耗时。

2.双流网络

由于3D卷积将时空特征的提取全都放在同一个网络中,不能得到很好的效果,因此考虑将时间空间特征分开提取,这就是双流网络的思想,双流网络是指有两个分支的网络,在提取视频特征时,其中一个分支提取时间特征,另外一个分支用来提取空间特征,然后将提取到的两种特征进行融合之后再进行行为的分类。

Simonyan K ,Zisserman A等在2014年提出包含时间和空间的双流网络架构,证明了即使在少量的数据集上,也可以使用多帧稠密光流对网络训练从而获得良好的性能;Feichtenhofer C等为了更好地利用时空信息,在two stream network的基础上提出一种新的用于视频片段时空融合的ConvNet体系结构;Wang LM等提出一种时间分割网络(TSN),其随机从视频中稀疏采样出若干片段,对每一个片段的人体行为进行预测,然后对各个片段进行融合并回归之后对视频整体的行为作出预测;曾明如等提出在不改变双流卷积中空间流结构的情况下[25],在时间流的卷积模型中加入长短时记忆(LSTM)网络,利用LSTM网络进行人体行为识别。
不同于3D卷积同时提取时空特征,双流网络用时间流网络和空间流网络分别提取特征,空间流的卷积神经网络以单个视频帧作为输入,其中包含环境、视频中的物体等空间信息,实现人体在空间域上表观信息的特征描述;时间流的卷积神经网络多以多个堆叠的视频帧形成的光流图像作为输入,得到关于行为的运动特征表述,从而达到时间和空间互补的目的。
空间流和时间流的网络可以有多种形式,常用的可以是在ImagNet数据集上预训练的VGG-16网络,也可以在时间流网络利用LSTM对视频的时序信息进行更有效的挖掘。通过将时间和空间的两种特征相互融合,可以实现对视频中人体行为的最终分类。双流网络的网络结构图如图4所示:

基于深度学习的行为识别方法综述_第4张图片

基于双通道的识别方法最先于2014年由Simonyan提出是将视频固有的时间特征和空间特征分开提取;C Feichtenhofer的研究则专注于在不同的卷积层进行特征融合的性能对比;Lan, Z., Zhu, Y等基于王利民的TSN网络进行改进[51],改进的地方主要在于fusion部分,不同的片段的应该有不同的权重,而这部分由网络学习而得,最后由SVM分类得到结果。
双流网络的优点在于利用两个网络通道分别提取空间特征和时间特征,网络设计非常符合视频本身固有的时空特性,具有更加优雅的特性,这种单独提取到的特征更加高效,尤其是空间流特征的提取技术,已经达到了非常成熟的地步;时间流的特征通过光流作为输入,也能够实现对视频运动信息的捕获但是双流网络的缺点在于时空特征之间难以实现非常完美的交互,由于割裂了时间和空间,会在一定程度上影响准确性,而且,在哪一层进行时空特征融合也是一个难以准确界定的问题。

3.LSTM

3D卷积和双流网络都是为了处理视频固有的时序信息,但是3D卷积只是通过若干帧的堆叠作为输入,双流网络的时间流网络也同样是仅仅计算了相邻若干帧的光流图,其包含的时间信息非常有限,因此这两种方法在处理时间跨度较大的视频时无法充分提取时间特征,而RNN则可以解决这种长期的时间依赖关系。

基于深度学习的行为识别方法综述_第5张图片
在实际的实现过程中,需要先使用卷积神经网络对视频帧进行空间特征的提取,每一个视频帧提取出一个空间特征矩阵,一个视频就可以形成一个有序的空间特征序列。按照视频帧的时序将空间特征序列送入RNN网络,RNN可以充分挖掘特征序列中包含的时间特征,并最终用于行为分类,用于分类的多层RNN网络结构图如图5所示,同一层的RNN单元表示时序上的延伸,其中x0xt分别代表卷积神经网络提取到的空间特征序列,网络顶端是RNN单元不同时刻的输出,一般选取最后一个时刻的输出作为预测值。

基于循环神经网络的行为识别算法挖掘了时间上的特征,能够更好的利用时间属性,解决了视频的时间特征难以有效使用的难题,采用卷积神经网络形成特征序列的方式也是当前主流的空间特征提取方式。但是这种算法需要合理的设计用于形成特征序列的卷积神经网络,否则容易造成时间信息的缺失,使得RNN无法提取有效的时间特征。

总结

3D卷积做行为识别是最为直接的一种方式,直接利用3D卷积可以处理带有时序信息的多个连续的视频帧的特性,直接处理视频的时间特性。不像3D卷积直接将时间信息加入到卷积,双流网络更加优雅,将时间和空间信息分开提取,时间流和空间流网络都可以分别利用预训练的网络进行特征提取,然后将特征融合进行行为识别。LSTM的方式则是更加关注视频的长期时序信息,利用其内部独特的门机制,对长时序信息继进行更加有效的挖掘。但是LSTM的输入是特征序列,这就要求在LSTM之前必须有一个用于特征提取的网络,这个用于特征提取网络可以是预训练的VGG,也可以是一些其他更加有效的网络。

你可能感兴趣的:(深度学习,lstm,卷积神经网络,视频处理,循环神经网络,算法)