监控视频中的现实世界异常检测,代码地址https://paperswithcode.com/paper/real-world-anomaly-detection-in-surveillance。
摘要
监控视频能够捕捉到各种现实的异常现象。在本文中,我们建议通过利用正常和异常视频来学习异常。为了避免注释训练视频中的异常片段或剪辑,这是非常耗时的,我们建议利用弱标记的排名框架通过深度多实例训练视频来训练异常,即训练标签(异常或正常)是在视频级而不是剪辑级。在我们的方法中,我们将正常视频和异常视频作为包和视频片段作为多实例学习(MIL)的实例,并自动学习一个深度异常排名模型,该模型预测异常视频片段的高异常分数。此外,我们在排序损失函数中引入了稀疏性和时间平滑性约束,以更好地在训练过程中定位异常。
我们还介绍了一个新的第一个大规模的128小时的视频数据集。它由1900时长且未经修改的真实监控视频组成,其中有13个现实的异常现象,如战斗、道路事故、盗窃、抢劫等,当然还包括正常的活动。这个数据集可以用于两个任务。第一,用于一组所有异常和另一组所有正常活动的一般异常检测。第二,用来识别13种异常活动中的每一种。实验结果表明,与现有的方法相比,我们的MIL方法在异常检测性能方面取得了显著的提高。我们提供了最近几个关于异常活动识别的深度学习基线的结果。这些基线的低识别性能表明,我们的数据集非常具有挑战性,并为未来的工作提供了更多的机会。该数据集可在:https://webpages.uncc.edu/cchen62/dataset.html上获得。
1.介绍
监控摄像机被越来越多地用于公共场所。街道、十字路口、银行、购物中心等。以增加公共安全。但是,执法机构的监测能力并没有跟上其步伐。其结果是,监控摄像头的使用明显不足,而且摄像头与人类监控器的比例不可行。视频监控的一项关键任务是检测交通事故等异常事件、犯罪或非法活动。一般来说,与正常活动相比,异常事件很少发生。因此,为了减少人工和时间的浪费,迫切需要开发自动检测的智能计算机视觉算法。一个实际的异常检测系统的目标是及时发出偏离正常模式的活动的信号,并识别所发生的异常的时间窗。因此,异常检测可以看作是粗糙层次的视频理解,它可以过滤掉正常模式中的异常。一旦检测到异常,可以使用分类技术将其归为特定活动之一。
解决异常检测的一个小步骤是开发检测特定异常事件的算法,例如暴力检测器[30]和交通事故检测器[23,34]。然而,很明显,这种解决方案不能推广到检测其他异常事件,因此它们在实践中的应用有限。
现实世界中的反常事件是复杂而多样化的。很难列出所有可能的反常事件。因此,希望异常检测算法不依赖于关于事件的任何先验信息。换句话说,异常检测应在最低限度的监督下进行。基于稀疏编码的方法[28,41]被认为是实现最先进的异常检测结果的代表性方法。这些方法假设视频的一小部分初始部分包含正常事件,因此初始部分用于构建正常事件字典。那么,异常检测的主要思想是异常事件不能准确地从正常事件字典中重构。然而,由于监控摄像机捕捉到的环境可能会随着时间的推移而发生巨大的变化。在一天的不同时间),这些方法对不同的正常行为产生高假警率。
动机和贡献。虽然上述方法很吸引人,但它们是基于这样的假设,即任何偏离学习到的正常模式的模式都将被视为异常。然而,这个假设可能不成立,因为很难或不可能定义一个将所有可能的正常模式/行为考虑到正常模式/行为的正常事件。更重要的是,正常行为和异常行为之间的边界往往是模糊的。此外,在现实条件下,相同的行为可能是不同条件下的正常或异常行为。因此,我们认为正常事件和异常事件的训练数据可以帮助异常检测系统更好地学习。本文提出了一种利用弱标记训练视频进行检测的异常检测算法。也就是说,我们只知道视频级别的标签,即一个视频是正常的或在某些地方包含异常的,但我们不知道在哪里。这很有趣,因为我们可以通过只分配视频级的标签来很容易地注释大量的视频。为了建立一种弱监督学习方法,我们求助于多实例学习(MIL)[12,4]。具体来说,我们建议通过深度MIL框架来学习异常,将正常和异常的监控视频作为包,将每个视频的短片段/剪辑作为包中的实例。基于训练视频,我们自动学习一个异常排名模型,预测视频中异常片段的高异常分数。在测试过程中,一个长时间未修剪的视频被分成多个片段,并输入我们的深度网络,该网络为每个视频片段分配异常分数,这样就可以检测到异常。综上所述,本文做出了以下贡献。
我们提出了一种仅利用弱标记的训练视频进行异常检测的MIL解决方案。我们提出了一种对深度学习网络具有稀疏性和平滑性约束的MIL排序损失来学习视频片段的异常分数。据我们所知,我们是第一个在MIL的背景下制定视频异常检测问题。
我们介绍了一个大规模的视频异常检测数据集,由1900个13个不同异常事件的真实监控视频组成。它是迄今为止最大的数据集,视频比现有的异常数据集超过15倍,总共有128小时的视频。
在新数据集上的实验结果表明,该方法比最先进的异常检测方法取得了优越的性能。由于活动的复杂性和巨大的类内变化。
我们的数据集也为未修剪视频的活动识别提供了一个具有挑战性的基准。在识别13种不同的异常活动上,我们提供了基线方法,C3D[36]和TCNN[21]。
2.相关工作
异常检测 异常检测是计算机视觉[39,38,7,10,5,20,43,27,26,28,42,18,26]中最具挑战性和长期存在的问题之一。对于视频监控应用程序,有几次尝试来检测视频中的暴力或攻击性[15,25,11,30]。Datta等人。建议通过利用人的运动和肢体取向来检测人类暴力。Kooij等人。[25]利用视频和音频数据来检测监控视频中的攻击性行为。高等人提出了用暴力流动描述来检测人群视频中的暴力行为。最近,Mohammadi等人。[30]提出了一种新的基于行为启发式的暴力和非暴力视频分类方法。
除了暴力和非暴力模式的区分,[38,7]的作者还提出使用跟踪来建模人的正常运动,并将偏离正常运动的偏差作为异常来检测。由于难以获得可靠的轨迹,有几种方法避免通过基于直方图的方法来跟踪和学习全局运动模式[10],主题建模[20],运动模式[31],社会力量模型[29],动态纹理模型[27]的混合物,隐马尔可夫模型(HMM)在局部时空体积[26],和上下文驱动的方法[43]。给定正态行为的训练视频,这些方法学习正态运动模式的分布,并检测低可能的模式为异常。
随着稀疏表示和字典学习方法在几个计算机视觉问题上的成功发展,[28,42]中的研究人员使用稀疏表示来学习正常行为的字典。在测试过程中,重构误差较大的模式被视为异常行为。由于深度学习在图像分类中的成功演示,人们提出了几种用于视频动作分类[24,36]的方法。然而,获取关于培训的注释是不同的和费力的,特别是对于视频。
近年来,[18,39]使用基于深度学习的自动编码器来学习正常行为模型,并利用重构损失来检测异常。我们的方法不仅考虑正常行为,而且考虑异常检测的异常行为,只使用弱标记的训练数据。
排序 学习排序是机器学习中一个活跃的研究领域。这些方法主要集中于提高项目的相对分数,而不是独立的分数。乔阿奇姆斯 (Joachims)等人[22]提出了rank-SVM来提高搜索引擎的检索质量。 (Bergeron)伯格登等人,[8]提出了一种利用连续线性规划求解多实例排序问题的算法,演示了其在计算化学中的氢抽象问题中的应用。近年来,深度排序网络已被应用于一些计算机视觉应用,并显示出最先进的性能。它们已被用于特征学习[37]、高亮检测[40]、图形交换格式(GIF)生成[17]、人脸检测和验证[32]、人重新识别[13]、位置识别[6]、度量学