APP下载

基于增量时空学习的实时异常行为识别算法研究

2022-05-27胡六四尹汪宏陈俊生夏红霞

智能计算机与应用 2022年5期
关键词:编码器卷积时空

胡六四,尹汪宏,陈俊生,王 林,夏红霞

(安徽电子信息职业技术学院 软件工程学院,安徽 蚌埠 233030)

0 引 言

智慧城市的营建推动了智能视频监控系统的发展,智能视频监控系统是现代工业和城市环境的开发、运营以及实现可持续发展的关键因素。视频监控不仅能够有效保障人们日常生活生产的安全性,还有利于提高城市管理和运营的效率。随着智能摄像头的数量和部署范围的增加,海量的视频数据流为处理分析带来了巨大的压力,而使用人工对视频数据流进行准确分析也是不切实际的。

人工智能(AI)技术的发展为自动化监控系统提供支撑,AI技术适用于视频摘要、对象检测和重识别、行为检测和异常识别等领域。其中,异常行为识别是当下重要的研究方向之一,也是自动化视频分析中的一项基本任务。异常检测的目的是识别不符合预期、即异常的行为,异常行为和事件通常是未知的,这也使得异常识别成为一个复杂研究课题。

高维的时空视频数据以及跨视频帧数据处理增加了视频处理和分析的计算复杂性和成本。而且,异常行为的定义并不明确,正常行为和异常行为之间的界限往往是模糊的,并且具有上下文关系。另外一般情况下,正常行为很可能会随着时间的推移而演变,从而导致识别检测过程出现误差。现有的异常行为技术主要围绕着优化计算复杂性和识别上下文异常来展开,迄今为止仍然缺乏对异常行为动态性、即异常行为随时间演变的研究与探讨。

本文基于增量时空学习,提出了RAID算法以实现实时异常行为识别。RAID从时空视频数据流中主动学习正常行为的时空模式。主动学习可以随着环境的变化和新信息的出现不断完善学习过程,并结合观察者来改善迭代的学习结果。

1 RAID算法概述

1.1 算法概述

RAID的架构如图1所示。首先,将从时间到t的实时监控视频作为时空模型训练的输入。然后,将训练后的模型用于进行异常行为识别。接下来,人们对检测到的异常进行验证,将验证输入用于构建更新后的正常行为。这种更新后的正常行为会被反馈到RAID模型中以进行持续的学习。

图1 系统架构Fig.1 System architecture

用于训练的视频流X⊂由一系列高度为、宽度为的帧组成,是包含正常行为的视频帧集合。用于测试的视频流X包含正常和异常行为的视频帧。模型的目标是从X中学习正常行为的表示,随后使用X对其进行验证以识别异常行为。现有的工作需要完整的正常行为训练数据集,而RAID是基于实时接收的连续视频的时空信息主动更新先前学到的知识,同时RAID考察了使用者对异常检测结果的反馈。

1.2 时空学习

RAID模型由时空自动编码器组成,从X中学习到正常行为的时空表示。自编码器是一种无监督学习算法,采用反向传播通过最小化重构误差来将目标值设置为等于输入。在RAID模型中,时空自动编码器由一系列用于学习空间表示的CNN层和一系列用于学习时间表示的ConvLSTM层组成。

研究中,要对原始视频数据进行预处理,以增强时空自动编码器模型的学习能力。首先,将视频数据提取为连续帧,转换为灰度以减少维度,调整为224×224像素并通过缩放来标准化像素值。时空自动编码器模型的输入是视频帧的时间长方体,使用长度为的滑动窗口进行提取,不进行任何特征变换。将长度为的连续帧堆叠在一起以构建时间长方体。

在视频分析中,卷积层可以通过使用过滤器学习特征表示来保留输入帧内的空间关系,过滤器的值是在训练过程中学习的。RAID模型由2个卷积层和2个反卷积层组成。

LSTM在处理空间数据方面存在缺陷,这是因为空间信息没有在其状态转换中进行编码。在保留空间结构的同时,从监控视频流中学习时间规律是很重要的。因此,利用卷积LSTM(ConvLSTM),即通过将其输入、隐藏状态、门和单元输出设计为3D张量来克服这个缺点。此外,在输入和门中的矩阵运算被卷积运算取代。ConvLSTM能够从输入帧序列中捕获时空特征,ConvLSTM模型可以用式(1)~(5)进行表示:

其中,符号“*”是指卷积操作;符号“◦”是指哈达玛积;X 表示输入;C 表示单元状态;H 表示隐藏状态;门i f o 都是三维的张量;(·)是激活函数;W W 是二维卷积核。RAID模型由3个ConvLSTM层组成。时空自动编码器的结构如图2所示。

图2 时空自动编码器的结构Fig.2 The structure of spatio-temporal automatic encoder

1.3 异常检测和定位

RAID模型可用于以像素级精度重建输入视频的正态性。然而,经过训练的自动编码器不具备准确重建异常行为的能力。这是因为训练数据中并不包含异常行为。重建误差的计算方式如式(6)所示:

使用重建误差阈值来区分正常和异常行为。在实际应用中,人们可以根据监控应用所需的灵敏度选择的值。较低的值会导致模型具有更高敏感性。

此外,引入了时间阈值,该阈值用于减少由于遮挡、运动模糊和高强度照明条件导致的监控视频流突然变化而导致的误报。

模型能够在视频帧定位出异常行为发生的特定区域。在检测到一段视频中有异常行为后,通过计算非重叠时空局部长方体窗口的重建误差来定位异常的具体位置。

在实际视频监控环境中主动学习的目的是实现动态变化环境中的异常识别。为了提高模型的泛化能力,RAID模型通过采用模糊聚合的主动学习方法,不断地训练和学习以适应具有新行为的模型。

RAID模型首先使用预先确定的正常行为进行训练,并用于异常检测。如果视频帧被检测为异常,即输入长方体的重构误差高于异常阈值,则输入长方体被归类为异常。然后将该结果发送给使用者进行验证。如果检测到的视频帧是错误检测(误报),那么该视频帧会被手动地标记为正常,并将该结果用于连续学习阶段。RAID模型的连续学习更新的输入是来自连续接收的监控视频流的时空信息以及人们对监测结果的反馈。

1.4 主动学习

RAID模型通过视频帧的模糊聚合来保持学习迭代的稳定性。在检测阶段,模型根据重构误差用模糊度量g标记所有被评估的视频帧,并基于g将视频帧分为个组。随后,在连续学习阶段,算法将从每组选择包含最高g的个视频帧来训练RAID模型。使用式(7)来选择连续训练的场景,具体数学公式可写为:

2 实验评估

2.1 数据集与实验设置

实验部分使用2个常用的数据集对RAID模型进行评估。这2个数据集分别是CUHK街道数据集和UCSD行人数据集。实验采用的服务器配置有Intel Xeon Gold 32核3.20 GHz处理器、128 GB内存和双NVIDIA Quadro GPU。

CUHK街道数据集是由16个包含正常人类行为的训练视频样本和21个包含异常事件及行为的测试视频样本组面。其中,异常行为是指乱扔垃圾、在草地上行走和遗弃物品等。UCSD人行道数据集有34个训练视频样本和36个测试视频样本。正常行为包含行人在路径上行走的场景,而测试视频样本包含异常行为和意外行为。

在异常识别的评估中,将RAID模型与MPCCA、ConvLSTM-AE和Unmasking进行对比。其中,MPCCA模型利用时空马尔可夫随机场和视频光流进行异常检测。ConvLSTM-AE集成了CNN和ConvLSTM自动编码器,用于编码正常行为中的空间和时间模式。Unmasking是一种基于unmasking技术的异常检测方法,该方法采用从三维梯度捕获的运动特征和来自预训练CNN的外观特征来进行异常检测。

2.2 实验结果与分析

使用ROC曲线的曲线下面积()和等错误率()作为指标来评估各个模型的结果,结果见表1。分析表1可知,RAID模型的性能要优于基于人工设计特征的MPCCA。与基于深度学习的方法、即ConvLSTM-AE和Unmasking相比,RAID模型在UCSD行人数据集上具有最好的性能。

表1 各模型的性能对比Tab.1 Performance comparison of models

接下来,对模型的异常定位性能进行定性分析,部分结果如图3所示。在UCSD人行道数据集中,RAID能定位视频中的诸如滑板、骑自行车和小车等异常行为。在CUHK街道数据集中,RAID模型可以定位出诸如丢包、走错方向、跑步等异常。

为了评估RAID模型的主动学习能力,将UCSD人行道数据集(CUHK街道数据集)中骑自行车(踩草地)行为的测试样本的所有异常检测标记为正常,以此评估RAID模型的连续学习能力。结果见表2。在人为干预后,RAID模型对异常行为的识别率大大下降了,这也表明了RAID模型能够主动地进行学习。

表2 连续学习能力的结果对照Tab.2 Results comparison of continuous learning ability %

3 结束语

本研究提出了一种基于时空数据的异常行为识别算法,该算法能实现实时视频数据流的处理,以识别异常行为,并且具有主动学习能力。使用通用数据集对该算法的性能进行评估,实验结果验证了算法的有效性。提出的算法能实现全自动的异常行为识别,并能结合人们的经验来进行主动学习。在未来的工作中,通过利用具有瞬态的分层多流循环自组织架构来实现端到端的自主视频监控,减少误报检测。

猜你喜欢

编码器卷积时空
基于全卷积神经网络的猪背膘厚快速准确测定
基于ResNet18特征编码器的水稻病虫害图像描述生成
跨越时空的相遇
基于图像处理与卷积神经网络的零件识别
基于深度卷积网络与空洞卷积融合的人群计数
玩一次时空大“穿越”
卷积神经网络概述
基于TMS320F28335的绝对式光电编码器驱动设计
时空守护者之宇宙空间站
时空之门