2018、Two-Stream 3-D convNet Fusion for Action Recognition in Videos With Arbitrary Size and Length

    xiaoxiao2022-07-02  133

    Xuanhan Wang ; Lianli Gao  ; Peng Wang ; Xiaoshuai Sun ; Xianglong Liu Published in: IEEE Transactions on Multimedia ( Volume: 20 , Issue: 3 , March 2018 )

    摘要

    最近提出了3-D卷积神经网络(3-D-convNets)用于视频中的动作识别,并且实现了有希望的结果。然而,现有的3-D-convNets有两个“人为”要求可能会降低视频分析的质量:1)它需要固定大小(例如,112 ×112)输入视频; 2)大多数3-D-convNets需要固定长度的输入(即具有固定帧数的视频镜头)。

    为解决这些问题,我们提出了一种名为Two-stream 3-D-convNet Fusion的端到端管道,它可以使用多种功能识别任意大小和长度的视频中的人为操作。具体来说,我们将视频分解为空间和时间镜头。通过将一系列镜头作为输入,使用具有长短期记忆(LSTM)或CNN-E模型的空间时间金字塔池(STPP)convNet来实现每个流,其中softmax分数通过后期融合来组合。我们设计STPP convNet以提取每个可变大小镜头的等维描述,并且我们采用LSTM / CNN-E模型来使用这些时变描述来学习输入视频的全局描述。

    有了这些优点,我们的方法应该改进所有基于3-D CNN的视频分析方法。我们凭经验评估我们在视频中的动作识别方法,实验结果表明我们的方法在三个标准基准数据集(UCF101,HMDB51和ACT)上优于最先进的方法(基于2-D和3-D)。

    介绍

    我们的贡献总结如下:

    1)据我们所知,这是第一个可以处理任意大小和长度的视频的端到端转发器;

     2)为了学习可变大小镜头的等维描述,我们首先设计一个3D-convNets的金字塔池策略。然后,我们使用长期短期记忆(LSTM)或CNN-E模型来识别基于这些时变描述符的人类行为; 

    3)我们通过考虑外观和光流来提出一种新颖的双流3D ConvNet融合框架。

    4)我们的方法在三个具有挑战性的数据集(即UCF101,HMDB51和ACT数据集)上优于最先进的方法(基于2D和3D),特别是在基于3D的方法上显示出显着的改进。我们的方法表明仅RGB信息足以区分大多数动作。

    双流3D卷积融合

    A网络架构

    具体来说,我们的深层模型由两个主要部分组成:1)空间时间金字塔池convNet(STPP); 2)长期时间模型。

    对于第一个组件,我们遵循[20]中的设计风格。也就是说,STPP convNet包括5组卷积层,每组卷积层由两个或三个堆叠的3D卷积层组成,后跟最大池层(最后一个卷积层除外)。在我们的框架中,最后一个卷积层后面跟着一个STPP层。接下来,将STPP层的输出馈送到具有4096个单元的两个完全连接的层中。第二个组件直接连接到第一个组件,它由LSTM或卷积层组成,还有一个softmax损失层来预测人类行为。所有3D卷积内核都设置为3 × 3 × 3 大步前进 1 × 1 × 1 并且所有最大池3D图层都是 2 × 2 × 2 滑动窗口除了第一个具有大小为的池化层 1 × 2 × 2。

    此外,对于一个流3D convNets,它们将RGB剪辑或光流剪辑作为输入。对于双流3D convNets,它将RGB剪辑和光流剪辑作为输入。对于RGB模态和光学模态,它采用空间和时间STPP convNets分别提取每个视频片段的特征。接下来,从第一个完全连接的层中提取剪辑级深度特征。利用生成的空间和运动STPP特征,双流3D convNet首先将它们逐个融合到视频剪辑中,然后将长期时间建模与softmax集成以进行活动分类。

    B空间时间金字塔池层

    完全连接的层需要固定长度的矢量,但3D卷积层具有可变大小的输出。为了对任意大小和长度的视频采用3D-convNets,我们将最后一个池化层(例如,pool5,在最后一个卷积层之后)替换为空间时间金字塔池化层,命名为STPP层,以生成特征映射而无需修复输入的大小和长度。

    (可阅读2015年的论文Spatial pyramid pooling in deep convolutional networks for visual recognition)

    C长期时间建模

    由于不同视频的长度不同,这些生成的剪辑特征编号大小可变。因此,这些特征不能直接连接到softmax层进行动作识别。一种直观的方法是使用平均合并或最大合并[24]来获得视频级功能。然而,对于视频分析,视频通常描述包括跨越整个视频的多个子动作状态的动作。每个动作状态应该是动态过程而不是静态外观。它会降低基于视频的识别方法的性能,因为它们被设计为在帧级功能或片段(范围从10到30帧)上操作。一个动作状态不能代表视频中的整个动作。如[26]所示 ,[28],LSTM和CNN能够处理顺序数据。因此,我们建议使用两种类型的长期时间结构模型(即LSTM和CNN)来明确地考虑视频片段的序列来解决这个问题。

    1)基于LSTM的长期时间建模

    机器翻译的最新进展表明,递归神经网络,特别是长短期记忆(LSTM)有可能通过合并记忆单元有效地将序列映射到序列 [26]。这是通过允许网络学习何时忘记先前隐藏状态以及何时更新隐藏状态来进行的。因此,LSTM是探索连续视频分割之间关系的良好候选者。它们可能代表一系列子活动,并构成复杂的行动。此外,LSTM可以直接应用在STPP convNets的完全连接层的顶部,以实现端到端的微调。此外,LSTM不限于具有固定长度的输入或输出,这有利于对具有可变长度的顺序数据进行建模。因此,我们建议将LSTM与短期STPP convNets集成,以编码连续视频剪辑的表示,以进行更准确的预测。

    2)CNN-E:基于CNN的长期时间建模

    在本研究中,我们探索使用CNN层来编码剪辑STPP功能。我们对那些剪辑描述符应用卷积运算。

    D双流3D ConvNet融合

    对于人类活动,它与静态视觉特征和身体动作有关。一个好的特征融合方法应该能够利用相关性以及保持一整套独特的特征来产生更好的混合特征。因此,在本研究中,在 [38]之后,我们提出了一种双流3D ConvNet融合框架,通过考虑外观(即RGB)和光流来解决这一重要问题。

    鉴于视频输入,为 Ť- 视频拍摄,我们获得两个STPP功能: X[r,g,b,t] 这是RGB功能和 X[flow,t]这是光流特征。接下来,我们应用早期融合方法来融合这两个STPP特征以生成定义为X[f,t]。因此,对于输入视频,我们生成一组融合特征然后我们对它们应用LSTM或CNN来进行长期时间编码以用于以后的活动分类。

    F网络输入

    为了研究使用多尺寸输入的训练的影响,我们研究具有不同空间和时间延伸的网络输入。具体来说,我们遵循[20],它选择16帧空间大小112 × 112作为初始输入比例。在我们的框架中,我们首先采用[20]中使用的相同空间尺度 ,然后使用另一个更高的空间分辨率(即,220 × 220)。在时间尺度方面,除了选择具有16帧的剪辑作为输入之外,我们还将具有更长持续时间(即,32帧)的剪辑作为输入。

    G网络培训

    与图像分类相比,当前可用的视频数据集相对较小。因此,深度训练的训练可能会面临过度拟合的风险。由于我们的空间时间金字塔层的灵活性,我们的模型可以在不同规模的视频上进行训练,而不会改变模型的复杂性。在本文中,我们设计了一个多尺度的培训策略,用于培训如下所述的STPP网络。

    1)单一规模培训

    在介绍我们的多尺度培训之前,我们首先介绍3D-convNets中使用的单一尺寸培训。给定输入视频拍摄的初始比例(即 16 × 112 × 112),从最后一个卷积的特征映射的大小是2 × 8 × 8。为了进行公平比较,具有时空空间金字塔等级ps× ps号× ps,最大池化滑动窗口的大小可以通过{动态计算⌊ 2 / ps⌋ ,⌊ 8 / ps⌋ ,⌊ 8 / ps⌋ }。具体来说,我们通过使用3个不同的池级别来实现这一点(即, { 4 × 4 × 1 }, { 2 × 2 × 1 } 和 { 1 × 1 × 1 }),如图3所示。来自3级池的输出被连接以形成固定长度的向量。

    2)多种规模的培训

    我们的目标是设计一个STPP convNets来处理任意大小和长度的视频。为了发挥其潜力,有两种类型的时间尺度(镜头的帧数) { 16 ,32 } 和两种类型的空间尺度(镜头的帧大小) { 112 ,220 }。因此,我们可以获得4种类型的比例组合。我们选择三个尺度{ 16 × 112 × 112 } ,{ 16 × 220 × 220 } ,{ 32 × 112 × 112 }进行培训。更具体地说,在培训我们的STPP会员时,我们选择一个量表进行一个完整的训练时代(即,在我们的实验中,我们选择16 × 112 × 112,这可以看作是单一尺寸的训练过程),然后我们使用其他两个尺度来继续训练模型。我们重复这个过程,直到损失函数收敛。在我们的实验中,我们展示了这种多尺寸的培训策略可以提高视频识别的性能。此外,这可以被视为一种数据增强技术,可以降低过度拟合的风险。

    实验

    A.数据集

    我们对三个具有挑战性的动作识别数据集进行了实验:UCF101,HMDB51和ACT。[此处省略一些]。ACT数据集[37] 有11,234个视频,包括43个动作类。对于这样的43个动作类,其中一些非常相似。例如,挥杆棒球,挥杆高尔夫球和挥杆网球有类似的动议。与UCF101相比,该数据集要求模型不仅要区分类间,还要区分内部类(即细粒度类别)。在之前的工作[37]之后,我们使用准确性来评估所有实验中的方法。

    B.实施细节

    本文中的网络是在具有6 GB内存的单个GeForce GTX Titan Z GPU上进行培训的。我们将初始学习率设置为0.001,并且在15,000和20,000次迭代之后将其除以10。最大迭代次数为30,000。在我们的实验中,小批量大小是30个例子。对于LSTM,我们将输入剪辑的最大数量设置为10,将单元数设置为2048.此外,我们只对数据预处理进行平均减法。当输入为RGB时,我们使用在[20]中的大型Sports-1M数据集上训练的参数初始化conv层的权重 。当输入是光流时,我们遵循 [22]为了平均跨越通道的第一层的Sports-1M模型滤波器,接下来我们使用平均值来初始化第一个转换层的每个通道。此外,对于光流的提取,我们使用OpenLV 工具中公开的TVL1光流算法[41]。无论大小和长度如何,我们的模型都会共享参数,因此视频会被分成16帧剪辑而不会重叠。

    3D-convNets [20]首先使用每个RGB剪辑的单个中心裁剪并将其传递到网络以进行剪辑预测,其次平均从视频中随机选择的10个剪辑的剪辑预测。为了公平比较,为了测试训练策略和STPP层的效果,我们平均所有剪辑预测以获得视频预测结果并且输入仅是RGB。

    在测试我们的长期建模图层和方法时,会获得视频级别功能并用于直接对视频活动进行分类。注意,对于STPP_all,我们对STPP_RGB的类别分数(即输入为RGB),STPP_Flow(即输入为光流)和STPP_fusion(输入包括RGB和光流)应用后期平均融合。获得最终结果。

    C.组件研究

    1)多尺寸训练和STPP层的影响

    培训STPP层的方法有两种:1)单一规模培训(从头开始或预训练)和2)多尺度培训(带预训练)。在这个子实验中,我们的目的是研究是否可以通过多尺寸训练来改进STPP层。对于预训练,首先我们使用Sport1M数据集训练3D-convNets,然后我们部分传输参数以初始化我们的模型。初始化后,我们使用单一尺寸的培训策略和多尺寸培训策略,使用UCF101 Split 1数据集微调3D-convNets和我们的STPP网络。在这里,我们将RGB作为STPP网络的输入并使用3个池化级别(即,{ 4 × 4 × 1 ,2 × 2 × 1 ,1 × 1 × 1 })。请注意,3D-convNets不支持多尺寸培训。

    结果如表I所示。这些数字表明:1)多尺寸训练比单一训练表现更好1.5 % 增加; 2)我们的STPP_RGB在所有训练设置中都比3D-convNets表现更好。这是因为预训练和多尺寸训练可以降低过度拟合的风险,并且STPP层具有编码具有丰富信息表示的视频镜头的潜力。在以下实验中,我们选择以前列车作为我们的训练策略的多尺寸训练。

    表I多尺寸训练和STTP层的影响

    2)STPP池化水平和参数的影响

    在这里,我们的目的是调查多尺寸池化水平是否会影响性能以及需要培训多少参数。不同类型的金字塔池设置可以在数量方面产生不同的参数。考虑两种类型的池化水平:1)第一类金字塔池化水平(即,{ 2 × 2 × 1 ,1 × 1 × 1 },2)第二类金字塔池化水平(即 { 4 × 4 × 1 ,2 × 2 × 1 ,1 × 1 × 1 })。结果如表II所示 ,我们有以下观察:

    表II金字塔池水平的影响和相应的参数

    具有第一类金字塔池化水平的STPP_RGB比3D-convNets表现更好(分别为82.7%和82.1%),并且它需要更少的参数(54.9对77.9百万)。这可能是由于当S_STPP在不同大小的输入上进行训练并且使用多级金字塔池保留更完整的空间时间线索时,S_STPP对于动作的变化是稳健的。

    具有第二类金字塔池化水平的STPP_RGB表现最佳(83.7%),并且它具有大约88.4百万个参数。在波纹管子实验中,我们用第二类金字塔池化级别训练STTP层。

    3)长期时间建模的影响

    在这个子实验中,我们的任务是评估长期时间建模对我们方法的影响。比较的长期时间模型包括平均汇集,最大汇集,LSTM和CNN-E。该子实验在UCF101 split @ 1上进行,结果如表III所示 。我们可以做出以下观察:

    表III长期时间模型对我们方法的影响

    当输入为RGB时,STPP +(CNN-E)表现最佳(85.6%)。当输入是光流时,STPP + LSTM表现最佳(83.8%)。对于不同的输入,STPP +(CNN-E)和STPP + LSTM都比STPP + Late_Average_Fusion表现更好,这证明了我们的长期建模策略的有效性。

    对于RGB输入,STPP +(CNN-E)的性能优于STPP + Max_Pooling和STPP + Mean_Pooling。对于光流输入,STPP + LSTM的性能优于STPP + Max_Pooling和STPP + Mean_Pooling。这证明我们提出的长期建模比简单的池化方法表现更好。

    4)早期融合对我们方法的影响

    在这里,我们评估了涉及我们的双流convNet的不同早期融合方法(即,元素方和,元素方式最大值和连接)。结果如表IV所示 。在两个数据集中,通常将LSTM或CNN-E的级联集成实现比LSTM或CNN-E的元素和/最大性能更好的性能。因此,在下面的实验中,我们选择级联作为我们早期的融合方法,将STPP RGB和每个视频片段的光流特征融合成新的描述符,该描述符是LSTM或CNN-E层的输入。

    表IV早期融合对我们的双流ConvNet的影响

    D.与最先进方法的比较

    1)基线

    在探索了每个组件的效果并理解了所提出的方法之后,我们准备建立我们的最终识别模型。为了评估我们的方法的性能,我们将其与当前流行的深度学习方法进行比较,用于单一模态(RGB或OF)或两种模态(RGB和OF)的动作识别。具体来说,我们将我们的方法与基于帧的深度网络进行比较,包括空间流网络 [18],基于片段的convNets [21]和3D-convNets [20] ; 基于视频的convNets包括长期卷积网络(LTC) [27],带有LSTM的深度双流网络(VGG16 + LSTM) [24],混合LSTM网络[25],动作转换网络[37],卷积融合网络 [38]和时间分割网络[40] 。

    2)结果

    首先,我们展示了我们的方法与UCF101和HMDB51的基线在表V中的 3个分割中的比较 。就UCF101数据集而言,仅对于RGB输入,与最佳对应物相比,我们的方法有1.6%的改进,达到85.6%。仅对于光流输入,变换[37]实现了最佳性能。对于同时使用RGB和光流作为输入的多流模型,我们的STPP_all(LSTM)获得了92.6%的准确度,这比[38]和[37]要好得多。但它比最近的最佳方法[40]低 1.6%。我们猜想这是因为[37],[38]和 [40]基于VGG网络或在大型ImageNet数据集上预训练的InceptionV3,我们的方法基于3D convNet,它是在sports-1M上预先训练的。与为图像分类提供大规模尺寸和多样性的ImageNet相比,sports-1M不能为视频分类提供可比较的大小和多样性。就HMDB51数据集而言,我们的方法获得了类似的结果。

    表V UCF101和HMDB51的平均准确度超过3次分裂:分割@ 1,分割@ 2和吐出@ 3

    其次,我们遵循动作转换网络[37]中 的实验设置,并将我们的模型与ACT数据集上的最新方法进行比较。 表VI显示我们的模型表现最佳81.9%,比最佳对应的转换网络好1.3%[37]。值得注意的是,我们的方法优于使用RGB功能的当前最佳算法4.7%。

    表VI ACT数据集的平均准确度

    E.认可可视化

    为了更好地理解我们提出的方法,我们提供了来自三个标准数据集的视频示例的额外识别可视化。

    图4通过STPP修道院可视化识别结果。如可视化中所示,在UCF-101数据集中,STPP可以实现有希望的识别结果。在HMDB-51数据集中,STPP不能区分细粒度的例子(例如,“笑”和“笑”)。这是因为HMDB-51数据集在规模和多样性方面都很小,导致在训练STPP时过度拟合。当使用相对较大的数据集进行训练时,例如ACT,STPP能够识别细粒度的例子(例如,摇摆棒球,挥杆高尔夫和挥杆网球)。

    图4。

    对UCF-101,HMDB-51和ACT测试数据的预测。前两行分别显示来自UCF-101和HMDB-51测试数据的识别示例。第三行表示ACT测试数据的细粒度识别结果。紫色(第一个条形)表示地面实况标签,下面的条形图显示模型预测以降低的置信度排序。绿色表示正确的识别结果,而红色表示错误的预测。

    总而言之,图4中的定量示例表明我们的方法可以在实践中实现有希望的性能。

    F.运行时分析

    为了分析应用具有3级金字塔池的STPP convNets时的运行时间,我们计算STPP convNets的运行时间(包括I / O成本),以便使用单个Titan Z GPU提取整个UCF101数据集的视频级功能,而无需并行计算。具体来说,我们设法评估用于光流计算的TV-L1算法,并在两种不同的设置(即,使用RGB和光流作为输入)报告STPP convNets的速度成本。结果总结在表VII中,我们可以得到以下观察结果:

    表VII运行时间分析

    光流图像的提取非常耗时。从UCF-101数据集中提取所有光流图像需要大约580小时,导致相对较低的处理速度(即1.3 FPS)。

    当输入是RGB帧时,STPP convNet的视频级特征提取的运行时间相对较快。具体来说,它以186.6 fps的速度处理,并且花费3.7小时来提取所有视频级功能,这对于实际应用来说非常快。

    当输入是光流图像时,我们看到视频级特征提取的类似时间成本。它处理185.9 fps并且花费3.8小时来实现提取目标。然而,它需要预先计算的光流图像并且提取光流图像非常耗时。

    结论

    在本文中,我们提出了一个端到端的框架,双流3D convNet Fusion,它将任意大小和长度的视频作为人类行为识别的输入。具体地,所提出的框架利用金字塔池方法扩展3D-convNets以提取可变大小镜头的等维描述,然后采用LSTM或CNN-E来获得视频级表示以进行视频预测。我们的模型采用多个特征(空间和运动特征)中包含的补充信息。三个数据集的实验证明了我们提出的方法与最先进的方法相比的优越性。我们的方法应该改进所有基于CNN的视频分析算法。

    最新回复(0)