Learning Spatiotemporal Features with 3D Convolutional Networks

Abstract

  • 我们提出了一种简单而有效的时空特征学习方法,使用在大规模有监督视频数据集上训练的深三维卷积网络。我们的发现有三个方面:1)与二维变换相比,三维变换更适合时空特征学习;(2)3×3×3卷积核较小的同构结构是三维转换网络性能最好的结构之一;3)我们学习的特性,即c3d(卷积3d),具有简单的线性分类,在4个不同基准上优于最新方法,并且与其他2个基准上的当前最佳方法具有可比性。此外,其特点是简洁:在只有10维的UCF101数据集上达到52.8%的精度,而且由于ConvNets的快速推理,计算效率非常高。最后,它们在概念上非常简单,易于训练和使用。

Introduction

  • 互联网上的多媒体正在迅速增长,导致每分钟共享的视频数量不断增加。为了应对信息爆炸,必须理解和分析这些视频的各种用途,如搜索,推荐,排名等。计算机视觉界几十年来一直致力于视频分析,并解决了不同的问题,如动作识别[26]、异常事件检测[2]和活动理解[23]。通过采用不同的具体解决方案,在这些个别问题上取得了相当大的进展。然而,人们仍然越来越需要一个通用的视频描述符,它有助于以一种同质的方式解决大规模的视频任务。
  • 有效的视频描述符有四个属性:(i)它需要一个简洁的,所以它可以很好地代表不同类型的视频,同时具有辨别力。例如,网络视频可以是风景、自然、体育、电视节目、电影、宠物、食物等;(ii)描述符需要紧凑:当我们处理数百万个视频时,紧凑的描述符有助于处理、存储和检索更具伸缩性的任务。(iii)它需要高效的计算,因为在现实世界系统中,每分钟都要处理数千个视频;(iv)实施必须简单。一个好的描述符不应该使用复杂的特征编码方法和分类,即使是简单的模型也应该能很好地工作。
  • 受过去几年在特征学习方面取得迅速进展的图像领域[24]的深入学习突破的启发,各种预训练卷积网络(convnet)模型可用于提取图像特征。这些特征是网络最后几个完全连接层的激活,这些层在转移学习任务中表现良好[47,48]。然而,由于缺乏运动建模,这种基于图像的深层特征并不直接适用于视频。本文提出利用deep 3D转换网络学习时空特征。我们的经验表明,这些学习特征与简单的线性分类可以产生良好的性能在各种视频分析任务。尽管3d convnets在[15,18]之前就已经提出,但据我们所知,这项工作在大规模有监督训练数据集和现代深层架构的背景下利用3d convnets来实现不同类型视频分析任务的最佳性能。这些3d convnets的功能将与视频中的对象、场景和动作相关的信息封装起来,使它们在各种任务中都很有用,而无需为每个任务调整模型。c3d具有良好的描述符应该具备的特性:通用性、紧凑性、简单性和高效性。总之,我们在本文中的贡献是:
  1. 实验表明,三维卷积深网络是一种能同时模拟物体外观和运动的特征学习机器。
  2. 我们通过实验发现,3×3×3卷积核对于所有层来说都是在有限的探索体系结构中最有效的。
  3. 在4个不同的任务和6个不同的基准上,用一个简单的线性模型提出的特征优于或接近当前的最佳方法(见表1)。它们也很紧凑,计算效率也很高。

Related Work

  • 视频已经被计算机视觉界研究了几十年。多年来,人们提出了许多问题,如动作识别[26]、异常检测[2]、视频检索[1]、事件和动作检测[30、17]等。这些作品中相当一部分是关于视频表现的。laptev和lindeberg[26]通过将harris角点检测器扩展到3d,提出了时空兴趣点(stips),sift和hog也扩展到sift-3d[34]和hog-3d[19]用于动作识别。Dollar等人提出了用于行为识别的长方体特征[5]。萨达南德和科尔索建立了行动识别行动库[33]。最近,王等人。提出了改进的稠密轨迹(idt)[44],这是目前最先进的手工制作功能。idt描述符是一个有趣的例子,它显示了时间信号可以不同于空间信号的处理方式。它不是将harris角点检测器扩展到3d,而是从视频帧中密集采样的特征点开始,利用光波对其进行跟踪。对于每个跟踪器角,沿轨迹提取不同的手工特征。尽管该方法具有良好的性能,但计算量大,在大规模数据集上难以实现。
  • 近年来,随着强大的并行机器(gpu、cpu聚簇)和大量的训练数据的出现,卷积神经网络(convnets)[28]在视觉识别方面取得了突破性进展[10,24]。convnets也被应用于图像[12]和视频[13]中的人体姿势估计问题。更有趣的是,这些深层网络用于图像特征学习[7]。同样,周等人。做好转移学习任务。深度学习也被应用于无监督环境下的视频特征学习[27]。作者使用叠加isa来学习视频的时空特征。虽然该方法在动作识别方面取得了很好的效果,但在训练上仍存在计算量大、在大数据集上难以扩展的问题。3d convnets被提出用于人类行为识别[15]和医学图像分割[14,42]。三维卷积还与受限的波尔兹曼机器一起用于学习时空特征[40]。
  • 在这些方法中,[15]中的3d convnets方法与我们的关系最为密切。该方法利用人体检测器和头部跟踪技术对视频中的人体进行分割。将分割后的视频卷作为3卷积层3dconvnet的输入对动作进行分类。相比之下,我们的方法以完整的视频帧作为输入,不依赖任何预处理,因此很容易扩展到大型数据集。我们也与Karpathy等人有一些相似之处。[18]以及Simonyan和Zisserman[36]使用全框架训练ConvNet。然而,这些方法仅使用二维卷积和二维池操作(除了[18]中的慢融合模型),而我们的模型执行三维卷积和三维池,在网络中的所有层传播时间信息。我们还表明,逐步汇集空间和时间信息并构建更深入的网络可以获得最佳结果,我们在第3.2节中对架构搜索进行了更多的讨论。

Learning Features with 3D ConvNets

  • 我们相信3D ConvNet非常适合时空特征学习。与2D-ConvNet相比,3D-ConvNet具有更好的时间信息建模能力,这得益于3D卷积和3D池操作。在3D ConvNets中,卷积和池操作是在时空上执行的,而在2D ConvNets中,卷积和池操作只是在空间上执行的。图1说明了差异,应用于图像的2d卷积将输出图像,应用于多个图像的2d卷积(将它们视为不同的通道[36])也会产生图像。在每次卷积操作之后输入信号正确的时间信息丢失。只有3D卷积才能保留产生输出体积的输入信号的时间信息。同样的现象也适用于二维和三维轮询。时态流网络以多帧为输入,由于二维卷积,在第一卷积层之后,时态信息被完全折叠。类似地,文献[18]中的融合模型使用二维卷积,大多数网络在第一卷积层之后丢失其输入的时间信号。只有[18]中的慢融合模型在其前3个卷积层中使用3d卷积和平均池。我们认为这是[18]中所研究的所有网络中性能最好的关键原因。然而,在第三卷积层之后,它仍然丢失所有的时间信息。
  • 在这一部分中,我们将根据经验来确定一个好的3D ConvNets架构。由于在大规模视频数据集上训练深度网络非常耗时,我们首次尝试使用UCF101(一个中等规模的数据集)来搜索最佳架构。我们用较少的网络实验验证了在大规模数据集上的发现。根据2D ConvNet[37]的研究,3×3卷积核的小接收区和更深的结构产生了最好的结果。因此,在我们的架构搜索研究中,我们将空间接受域确定为3×3,并且仅改变三维卷积核的时间深度。
  • 注:为简单起见,从现在起,我们引用c×l×h×w大小的视频片段,其中c是频道数,l是帧数中的长度,h和w分别是帧的高度和宽度。我们还用d×k×k来表示3d卷积和核大小池,其中d是核的时间深度,k是核的空间大小。公共网络设置:在本节中,我们将描述我们培训的所有网络的公共网络设置。该网络以视频片段为输入,预测属于101个不同动作的类标签。所有视频帧的大小调整为128×171。这大约是UCF101帧的一半分辨率。视频被分成不重叠的16帧剪辑,然后作为网络的输入。输入尺寸为3×16×128×171。在训练过程中,我们还使用了3×16×112×112的输入片段大小的随机作物来进行抖动。该网络有5个卷积层和5个池层(每个卷积层后面紧跟着一个池层)、2个完全连接层和一个预测动作标签的softmax丢失层。从1到5的5个卷积层的滤波器数目分别为64、128、256、256、256。所有卷积核都有一个很大的d,其中d是核的时间深度(我们稍后将改变这些层的值d以搜索一个好的3d架构)。所有的卷积层都有适当的填充(空间和时间)和步长1,因此从输入到输出卷积层的大小没有变化。所有池层都是最大池,内核大小为2×2×2(第一层除外),跨距为1,这意味着输出信号的大小比输入信号减小了8倍。第一个池层的内核大小为1×2×2,目的是不过早合并时间信号,同时满足16帧的剪辑长度。两个完全连接的层有2048个输出。我们使用30个剪辑的小批量从头开始训练网络,初始学习率为0.003。每4个阶段后,学习率除以10。16个时期后停止训练。
  • 在本研究中,我们主要研究如何透过深度网路整合时间资讯。为了寻找一个好的3D ConvNet架构,我们只改变卷积层的内核时间深度di,同时保持所有其他常见的设置固定如前所述。我们实验了两种类型的架构:1)均匀时间深度:所有卷积层具有相同的核时间深度。2)时态深度变化:核时态深度在各层之间变化。对于齐次设置,我们实验了4个核时间深度d为1、3、5和7的网络。我们称这些网络为深度-d,其中d是它们的均匀时间深度。注意,depth-1网络相当于在单独的帧上应用2d卷积。对于不同的时间深度设置,我们实验了两个具有时间深度增加的网络:3-3-5-5-7和从第一卷积层到第五卷积层分别减少:75-5-3-3。我们注意到,所有这些网络在最后一个池层具有相同大小的输出信号,因此它们对于完全连接的层具有相同数量的参数。由于核的时间深度不同,卷积层的参数个数也不同。与完全连接层中的数百万个参数相比,这些差异非常小。例如,上述任意两个时差为2的网络,彼此之间只有17k个或更多的参数。参数数量上最大的差异是深度1网和深度7网,其中深度7网的参数多51k个,不到每个网络1750万个参数总数的0.3%。这表明网络的学习能力是可比的,参数数目的差异不应影响我们的架构搜索结果。
  • 我们在前一节中的发现表明,卷积核为3×3×3的齐次设置是3d ConvNets的最佳选择。这一发现也与2d ConvNets的类似发现一致[37]。利用大规模数据集,可以根据机器内存的限制和计算能力,尽可能深地训练3×3×3核的3d convnet。利用当前的gpu内存,我们设计的3d convnet有8个卷积层、5个池层、两个完全连接层和一个softmax输出层。网络架构如图3所示。为了简单起见,从现在起我们称之为net c3d。所有三维卷积滤波器均为3×3×3,步长为1×1×1。三维池层均为2×2×2,步长为2×2×2,其中pool1的核大小为1×2×2,步长为1×2×2,目的是在早期保留时间信息。每个全连接层有4096个输出单元。
  • 为了学习空间漫游功能,我们在Sports-1M数据集[18]上训练我们的C3D,该数据集是目前最大的视频分类基准。该数据集包含110万个体育视频。每个视频属于487个运动类别之一。与UCF101相比,Sports1M的分类数量是UCF101的5倍,视频数量是UCF101的100倍。
  • 训练是在1米长的训练集上进行的。由于Sports-1M有许多长视频,我们从非常训练的视频中随机抽取5秒2长的视频片段。剪辑的大小调整为帧大小为128×171。在训练过程中,我们将输入片段随机分成16×112×112个片段,进行时空抖动。我们也用50%的概率水平地反映它们。训练由SGD完成,最小批量为30例。初始学习率为0.003,每150k次迭代除以2。优化在190万次迭代(大约13个阶段)时停止。除了从零开始训练的c3d网之外,我们还对i380k上预先训练的模型调谐的c3d网进行了实验。
  • 表2显示了我们的c3d网络与deepvideo[18]和卷积池[29]相比的结果。我们只使用每个剪辑一个中心作物,并通过网络进行剪辑预测。对于视频预测,我们对从视频中随机抽取的10个视频片段进行平均预测。值得注意的是,两种比较方法在设置上存在一些差异。deepvideo和c3d使用短剪辑,而卷积池[29]使用更长的剪辑。深视频使用更多的作物:4作物每剪辑和80作物每视频相比,1和10分别使用的c3d。从零开始训练的c3d网络获得84.4%的准确率,从i380k预先训练的模型调谐的网络获得85.5%的视频top5准确率。两个c3d网络都优于deepvideo的网络。c3d仍比[29]方法低5.6%。然而,该方法在120帧的长片段上使用深度图像特征的卷积池,因此它不能直接与在更短片段上操作的c3d和深度视频相比。我们注意到,这种方法的剪辑和视频的top-1精度差别很小(1.6%),因为它已经使用120帧剪辑作为输入。实际上,卷积池或更复杂的聚合方案[29]可以应用于c3d特性之上,以提高视频命中性能。
  • 经过训练,c3d可以作为特征提取器用于其他视频分析任务。为了提取c3d特征,视频被分割成16帧长的片段,两个连续片段之间有8帧重叠。这些剪辑被传送到c3d网络以提取fc6激活。这些片段fc6激活被平均以形成4096维视频描述符,然后接着是l2规范化。在所有实验中,我们都将此表示称为c3d视频描述符/特征,除非我们明确指定了差异。
  • 我们使用[46]中解释的反褶积方法来理解c3d在内部学习什么。我们观察到,c3d从最初几帧中的外观开始,并跟踪随后几帧中的显著运动。图4显示了两个c3d conv5b特征图的反褶积,其中最高激活度投影回图像空间。在第一个示例中,该功能将重点放在整个人身上,然后跟踪撑杆跳表演在其他帧上的运动。同样地,在第二个例子中,它首先聚焦于眼睛,然后在化妆时跟踪眼睛周围发生的运动。因此,c3d不同于标准2d convnets,它有选择地关注运动和外观。我们在补充材料中提供了更多的可视化,以便更好地了解所学的特征。

Action recognition

  • 提取c3d特征,将其输入到多类线性支持向量机中进行训练。我们使用三种不同的网络对c3d描述符进行了实验:i380k上的c3d训练,sports-1m上的c3d训练,i380k上的c3d训练,sports-1m上的fine调谐。在多个网络设置中,我们具体化了这些网络的l2规范化c3d描述符。
  • 我们将c3d特征与一些基线进行了比较:当前最好的手工制作特征,即改进的密集轨迹(idt)[44]和常用的深度图像特征,即imagenet[16],使用caffe的imagenet预训练模型。对于idt,我们对idt的每一个特性通道(trajectory、hog、hof、mbhx和mbhy)使用一个码本大小为5000的单词表示包。我们分别使用l1范数对每个通道的直方图进行标准化,并将这些标准化直方图连接起来形成视频的25k特征向量。对于imagenet基线,类似于c3d,我们对每帧提取imagenet fc6特征,对这些特征进行平均,形成视频描述符。多类线性支持向量机也用于这两个基线的公平比较。
  • 表3给出了与两个基线和当前最佳方法相比,c3d的动作识别精度。上半部分显示了两个基线的结果。中间部分介绍了仅使用rgb帧作为输入的方法。下半部分报告了使用所有可能的特征组合(如光流、idt)的所有当前最佳方法。在前面描述的三种c3d网络中,c3d微调网络性能最好。然而,这三个网络之间的性能差距很小(1%)。从现在起,除非另有说明,否则我们称调谐网为c3d。c3d使用一个只有4096维的网,其精度为82.3%。三网C3D的精度提高到85.2%,尺寸提高到12288。c3d与idt相结合,进一步提高了定位精度,达到90.4%,而与imagenet相结合,则提高了0.6%。这表明c3d能够很好地捕获外观和运动信息,因此与基于外观的深度特征imagenet结合是没有好处的。另一方面,结合c3d和idt是有益的,因为它们是高度互补的。事实上,idt是基于光流量跟踪和低水平梯度直方图的手工制作的特性,而c3d则捕获高水平的抽象/语义信息。使用3个网络的c3d达到85.2%,分别比idt和imagenet基线好9%和16.4%。在唯一的rgb输入设置上,与基于cnn的方法相比,我们的c3d分别比深网络[18]和空间流网络[36]的性能好19.8%和12.6%。[18]中的深度网络和[36]中的空间流网络都使用alexnet架构。在[18]中,网络是从他们在Sports-1M上预先训练的模型调整的,而在[36]中空间流网络是从图像网络预先训练的模型调整的。我们的c3d在网络结构和基本操作方面与cnn的基本方法不同。此外,c3d是在运动-1米训练和使用,没有任何微调。与基于递归神经网络(rnn)的方法相比,c3d的性能分别比长期递归卷积网络(lrcn)[6]和lstm复合模型[39]好14.1%和9.4%。只有rgb输入的c3d仍然优于这两种基于rnn的方法,当它们同时使用光流量和rgb以及在[36]中的时间流网络时。
  • 为了评估c3d特征的紧凑性,我们使用pca将特征投影到较低维度,并使用线性支持向量机在ucf101[38]上报告投影特征的分类精度。我们对idt[44]和imagenet特性[7]应用相同的过程,并比较图5中的结果。在只有10维的极端情况下,c3d的精度为52.8%,比imagenet和idt的精度高出20%以上,后者约为32%。在50和100度时,c3d的准确度分别为72.6%和75.6%,比imagenet和idt高10-12%。最后,在500维条件下,c3d的精度达到79.4%,比idt高6%,比imagenet高11%。这表明我们的特征既紧凑又有区别性。这对于存储成本低、检索速度快的大规模检索应用非常有帮助。
  • 我们定性地评估我们学习到的c3d特征,通过可视化嵌入到另一个数据集上的学习到的特征来验证它是否是一个好的视频通用特征。我们从UCF101中随机选取100K个片段,然后从ImageNet和C3D中提取用于特征的片段的FC6特征,然后使用T-SNE将这些特征投影到二维空间[43]。图6可视化了来自ImageNet和我们在UCF101上的C3D的特性嵌入。值得注意的是,我们没有做任何调整,因为我们想验证这些特性是否在数据集中显示出良好的泛化能力。定量观察到c3d优于imagenet。

Conclusions

  • 在这项工作中,我们试图解决使用在大规模视频数据集上训练的3d转换网络学习视频时空特征的问题。我们进行了一项系统的研究,以确定三维转换网络的最佳时间核长度。结果表明,c3d能够同时对图像的外观和运动信息进行建模,在各种视频分析任务中均优于2d-convnet特征。我们证明了具有线性分类的c3d特性可以在不同的视频分析基准上优于或接近当前的最佳方法。最后,但并非最不重要的是,拟议的c3d功能是有效的,紧凑,和极其简单的使用。

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值