3D Convolutional Neural Networks for Human Action Recognition

来源:互联网 发布:东方财富网龙虎榜数据 编辑:程序博客网 时间:2024/04/30 17:48

1 INTRODUCTION

       识别现实世界中的人类行为,可以发现各种领域的应用,包括智能视频监控,客户属性和购物行为分析。 然而,由于混乱的背景,遮挡和视角变化等[1],[2],[3],[4],[5],[6],[7],[8],[9],[10] [11],准确地识别行为是一项非常具有挑战性的任务。目前的大多数方法[12],[13],[14],[15],[16]关于视频拍摄的情况,做出了某些假设(例如,小尺度和视角变化)。 然而,这种假设在现实环境中很少存在。此外,大多数方法遵循两步法,其中第一步在原始视频帧上计算特征,第二步是基于获得的特征学习分类器。在现实世界的情况下,很少知道什么特征对于手头的任务很重要,因为特征的选择是高度依赖于问题的。特别是对于人类行为的识别,不同的动作类别在外观和运动模式方面可能会显得不同。

       深度学习模型[17],[18],[19],[20],[21]是一类机器,可以通过从低级别构建高级特征来学习层次特征。这种学习机器可以使用监督或无监督的方法进行训练,并且所得到的系统已被证明可以在视觉对象识别中产生竞争性能[17],[19],[22],[23],[24],人类行为识别[25],[26],[27],自然语言处理[28],音频分类[29],脑机交互[30],人类跟踪[31],图像恢复[32],去噪[33] ,和分割任务[34]。卷积神经网络(CNN)[17]是一种深层模型,其中可训练的滤波器和局部邻域池化操作交替地应用于原始输入图像,导致越来越复杂的特征的层次结构。已经表明,当训练时有适当的正则化[35],[36],[37],CNN可以在视觉对象识别任务上实现卓越的性能。此外,CNN已被证明对于一些变化是不变的,如姿势,照明和周围的杂乱[38]。

        作为特征构造的深层次模型,CNN主要应用于2D图像。在本文中,我们探讨了CNN在视频中人类动作识别的应用。在这个方向上的一个简单方法是将视频帧视为静止图像,并应用CNN来识别单帧级别的动作。事实上,这种方法已被用于分析发育胚胎的视频[39]。然而,这种方法不考虑在多个连续帧中编码的运动信息。为了有效地将视频分析中的运动信息结合起来,我们提出在CNN的卷积层中执行3D卷积,从而捕获空间和时间维度的区分性特征。我们表明,通过在输入的相同位置应用多个不同的卷积运算,可以提取多种类型的特征。基于提出的3D卷积,可以设计出各种3D CNN架构来分析视频数据。我们开发了一个从相邻的视频帧中生成多个通道信息,并在每个通道分别​​进行卷积和下采样的3D CNN架构。通过组合来自所有通道的信息来获得最终特征表示。为了进一步提高3D CNN模型的性能,我们提出用高级运动特征计算得到的辅助输出来增强模型,并集成各种不同架构的输出来做出预测。

       我们在TREC视频检索评估(TRECVID)数据中评估了开发的3D CNN模型,其中包括在伦敦盖特威克机场记录的监控视频数据。我们构建了一个多模块事件检测系统,其中3D CNN作为主要模块,并参与了TRECVID 2009监控事件检测评估的三个任务[25]。我们的系统在所有三个参与的行动类别(即CellToEar,ObjectPut和Pointing)方面取得了最佳表现。为了提供对3D CNN模型的独立评估,我们在本文中对TRECVID 2008开发套件的性能进行了报告。
我们还提供关于KTH数据的结果,因为该数据的已发布的性能可用。我们的实验表明,开发的3D CNN模型在TRECVID数据上优于其他基线方法,并且在KTH数据上实现了竞争性的表现,表明3D CNN模型对于现实环境更有效,例如在TRECVID数据中捕获的。实验还验证了3D CNN模型在大多数任务中显着优于基于帧的2D CNN。
       本文的主要贡献可归纳如下:
•我们提出应用3D卷积运算,从视频数据中提取空间和时间特征。这些3D特征提取器在空间和时间维度上操作,从而在视频流中捕获运动信息。
•我们开发基于3D卷积特征提取器的3D卷积神经网络(CNN)架构。该CNN架构从相邻视频帧生成多个信息通道,并在每个通道中单独执行卷积和子采样。通过组合来自所有通道的信息来获得最终特征表示。
•我们提出通过用高级运动特征计算的辅助输出来增强模型来正则化3D CNN模型。我们进一步提出通过结合各种不同架构的输出来提升3D CNN模型的性能。
•与基线方法和替代架构相比,我们在TRECVID 2008开发套件中对3D CNN模型进行了评估。实验结果表明,提出的模型明显优于2D CNN架构和其他基线方法。

       本文的其余部分安排如下:我们在第2节描述了TRECVID动作识别系统中使用的3D卷积运算和3D CNN架构。第3节讨论了一些动作识别的相关工作。第4节报告了在TRECVID和KTH数据的实验结果。我们在第5节得出结论并讨论。

2 3D CONVOLUTIONAL NEURAL NETWORKS

 2.1 3D卷积

       在2D CNN中,卷积应用于2D特征图,仅从空间维度计算特征。当应用于视频分析问题时,期望捕获在多个连续帧中编码的运动信息。为此,我们提出在CNN的卷积阶段进行3D卷积,以计算空间和时间维度的特征。3D卷积是通过将3D核卷积到通过将多个连续帧堆叠在一起形成的立方体来实现的。通过这样的建设,卷积层中的特征图连接到上一层中的多个相邻帧,从而捕获运动信息。形式上,第i层第j个特征图上的位置(x,y,z)的值由下式给出

其中Ri是沿着时间维度的3D核的大小,w pqr ijm是连接到上一层中的第m个特征图的核的(p,q,r)位置的值。 2D和3D卷积的比较如图1所示。

       请注意,3D卷积核只能从帧立方体中提取一种类型的特征,因为核的权重将跨整个立方体进行复制。
CNN的一般设计原理是通过从同一组较低级别的特征图生成多种类型的特征,在后期层次上应该增加特征图的数量。
类似于2D卷积的情况,可以通过将具有不同内核的多个3D卷积应用于上一层中的相同位置来实现(图2)。

2.2 3D CNN架构

       基于上述的3D卷积,可以设计出各种CNN架构。在下文中,我们描述了我们为TRECVID数据集中的人类动作识别开发的3D CNN架构。

在图3所示的架构中,我们考虑以当前帧为中心的大小为60×40的7帧作为3D CNN模型的输入。我们首先应用一组hardwired内核,从输入帧生成多个信道。这导致在gray,gradient-x,gradient-y,optflow-x和optflow-y的5个不同通道,第二层中的33个特征图。gray通道包含7个输入帧的灰度像素值。在7个输入帧中的每一个上,通过分别沿着水平和垂直方向计算梯度来获得gradient-x,gradient-y的特征图。optflow-x和optflow-y通道包含分别从相邻输入帧计算的沿着水平和垂直方向的光流场。这个硬连线层用于编码我们对特征的先验知识,并且该方案通常导致更好的性能与随机初始化相比。
       然后,我们分别在5个通道中的每个通道上应用内核大小为7×7×3(空间维度为7×7,时间维度为3)的三维卷积。为了增加特征图的数量,在每个位置应用两组不同的卷积,导致C2层中的两组特征图,每个由23个特征图组成。在随后的子采样层S3中,我们在C2层中的每个特征图上应用2×2子采样,这导致具有降低的空间分辨率但相同数量的特征图。通过在两组特征图中的5个通道中的每一个上分别应用7×6×3的核大小的3D卷积来获得下一个卷积层C4。要增加特征图的数量,我们在每个位置使用不同内核的3个卷积,导致C4层中的6组不同的特征图,每个包含13个特征图。通过在C4层中的每个特征图上应用3×3子采样获得下一层S5,这导致具有降低的空间分辨率的相同数量的特征图。在这个阶段,时间维度的大小已经相对较小(3对于gray,gradient-x,gradient-y,2对于optflow-x和optflow-y),我们仅在该层的空间维度上执行卷积。所使用的卷积核的大小是7×4,使得输出特征图的尺寸减小到1×1。 C6层由128个尺寸为1×1的特征图组成,每个都与S5层中的所有78个特征图连接。
      在多层卷积和下采样之后,7个输入帧已被转换成128D特征向量,捕获输入帧中的运动信息。输出层由与动作数相同数量的单元组成,每个单元完全连接到C6层中128个单元中的每一个。在这个设计中,我们基本上在128D特征向量上应用线性分类器来进行动作分类。该模型中的所有可训练参数被随机初始化,并由在线误差反向传播算法进行训练,如[17]所述。我们已经设计和评估了在不同阶段结合多个渠道信息的其他3D CNN架构,我们的结果表明,该架构提供了最佳性能。

2.3模型正则化

      由于随着输入窗口的大小增加,可训练参数的数量增加,3D CNN模型的输入被限制在少量的连续视频帧。
另一方面,许多人类行为跨越了许多框架。
因此,期望将高级运动信息编码到3D CNN模型中。
为此,我们建议从大量帧中计算运动特征,并通过使用这些运动特征作为辅助输出来对3D CNN模型进行规则化(图4)。
图像分类任务中已经使用了类似的想法[35] - [37],但其在动作识别中的表现不清楚。
特别地,对于每个训练动作,我们生成将长期动作信息编码到包含在输入框架立方体中的信息到CNN的特征向量。
然后,我们鼓励CNN学习一个靠近此功能的特征向量。
这通过将多个辅助输出单元连接到CNN的最后一个隐藏层并且在训练期间将计算出的特征向量夹在辅助单元上来实现。
这将鼓励隐藏层信息靠近高级运动特征。
关于这个方案的更多细节可以在[35] - [37]中找到。
在实验中,我们使用由原始灰色图像和运动边缘历史图像(MEHI)[41]计算的密集SIFT描述符[40]构成的词包特征作为辅助特征。
结果表明,这种正则化方案导致性能持续提高。
阅读全文
0 0