基于深度学习的视频分析检测可疑活动

基于深度学习的视频分析检测可疑活动

本文解释了视频分类的一种可能的实现。我们的目标是解释我们是如何做到的以及我们获得的结果,以便您可以从中学习。

在整篇文章中,您将找到解决方案体系结构,我们遵循的方法,我们使用的数据集,我们如何实现它以及我们实现的结果的一般描述。

这里描述的系统能够将视频分为三类:

  • 犯罪或暴力活动
  • 潜在可疑
  • 安全

我们的解决这个问题的建议是基于卷积和递归神经网络的体系结构。

解决方案的体系结构说明

第一个神经网络是卷积神经网络,目的是提取图像的高级特征并降低输入的复杂度。我们将使用谷歌开发的预训练模型inception。Inception-v3在ImageNet大型视觉识别挑战数据集上进行了训练。这是计算机视觉中的一项标准任务,模型试图将整个图像分为1000个类,如“zebra”、“dalmatian”和“dishwasher”。

我们使用这个模型来应用转移学习技术。现代物体识别模型有数百万个参数,可能需要数周才能完成训练。转移学习是一种技术,它通过对一系列类别(如ImageNet)采用经过充分训练的模型,并从现有的权重中对新类进行重新训练,从而优化许多此类工作。

基于深度学习的视频分析检测可疑活动

所使用的第二个神经网络是一个循环神经网络,这个网络的目的是理解所描述的动作的顺序。该网络在第一层中具有LSTM单元,随后是两个隐藏层(一个具有1,024个神经元和relu激活,另一个具有50个具有sigmoid激活的神经元),并且输出层是具有softmax激活的三神经元层,这给了我们最终的分类。

基于深度学习的视频分析检测可疑活动

方法

第一步是提取视频的帧。我们每0.2秒提取一个帧,用这个框架,我们用初始模型做一个预测。考虑到我们正在使用迁移学习技术,我们不打算提取初始模型的最终分类。相反,我们提取了最后一个池化层的结果,它是一个包含2048个值(高级特征映射)的向量。到目前为止,我们只有一个单一帧的特征图。然而,我们想要给我们的系统一个序列的感觉。为了做到这一点,我们不考虑单个帧来做出最终的预测。我们取一组帧,不是为了分类帧,而是为了分类视频的一个片段。

我们认为,一次分析三秒钟的视频就足以很好地预测正在发生的活动。为此,我们存储由inception模型预测生成的15个feature map,相当于3秒的视频。然后,我们将这组特征映射连接到一个单独的模式中,这将是第二个神经网络的输入,即递归神经网络,以获得系统的最终分类。

基于深度学习的视频分析检测可疑活动

最后,我们在屏幕上看到的是对视频进行实时分类,每隔三秒钟,我们就会看到该视频部分的分类 - 无论是安全的,可疑的还是犯罪活动。

训练数据集

用于训练网络的数据集由150分钟的筛选分为38个视频。这些视频大多是在商店和仓库的安全摄像机上录制的。每拍一帧,间隔0.2秒,结果就是有一个45000帧的训练数据集——相当于3000段视频,考虑到一段视频代表了它的3秒(或15帧)。

我们对整个数据集进行了标记,并将其分为两组:80%用于训练,20%用于测试。

如您所见,最终的数据集实际上非常小。然而,由于迁移学习技术的存在,我们可以用较少的数据得到良好的结果。当然,为了使系统更准确,最好有更多的数据;这就是为什么我们一直致力于获得越来越多的数据来改进我们的系统。

基于深度学习的视频分析检测可疑活动

实现

整个系统是用Python 3.5实现的。

我们对Python使用OpenCV对视频进行帧分割,并将其调整为200x200px。一旦我们拥有了所有的框架,我们就可以对初始模型进行预测。每个预测的结果都是一个“transfer value”,表示从特定框架中提取的高级特征图。我们将其保存在transfer_values变量及其各自的标签在中label_train。

一旦我们有了这些变量,我们需要把它们分成15组。我们将结果保存在joint_transfer变量中。

基于深度学习的视频分析检测可疑活动

现在我们有了transfer values和它们的标签,我们可以用这些数据来训练我们的循环神经网络。该网络的实现采用Keras,创建模型的代码如下:

基于深度学习的视频分析检测可疑活动

上面的代码描述了模型的构造。下一步是关于训练它:

基于深度学习的视频分析检测可疑活动

在我们训练模型之后,我们需要将它保存如下:

基于深度学习的视频分析检测可疑活动

结果和其他可能的应用

在尝试了不同的网络体系结构和调整超参数之后,我们可以达到的最佳结果是98%的准确率。

我们可以用这个视频分类器做的一件事是把它连接到一个安全摄像头并实时分析视频,当系统检测到犯罪或可疑活动时,它就可以启动警报或报警。

此外,您可以使用经过适当数据培训的类似系统来检测不同类型的活动;例如,在学校里安装一个摄像头,你的目标可以是检测欺负行为。


分享到:


相關文章: