1.本发明涉及视频监控和人工智能技术领域,尤其涉及一种基于注意力的异常检测方法。
背景技术:2.大量的监控设备安装在了各种公共场所中,产生的海量监控视频需要进行实时处理来满足人们不断提高的安全需求。通常人们并不关心反复出现的正常情况,而极少发生的异常事件才是关注的重点,比如:在人行道上出现机动车等情况。在拥挤的公共场所中检测异常行为具有很大的挑战性,主要原因是:人员聚集的公共场所由于存在环境杂乱、相互交错、动态遮挡等因素的干扰,使得想要在这种密集人群场景下通过分析每个个体来实现异常检测是不切实际的;其次异常行为极少发生,而且模式多变,显然通过少量的异常样本来构建完备的异常模型是不可行的。
3.由于正常情况的监控视频获取相对容易,异常行为检测通常被当成一个只利用正常样本进行训练的无监督问题。通常无监督的异常检测方法通过利用正常视频中的先验信息训练模型,在测试过程中无法被正常模型描述的事件被认为是异常,一般根据重构或预测误差来判断。一种直接的方法是对正常样本进行聚类,例如使用高斯混合模型(gmm)和层次聚类,然后根据测试样本是否遵循正常模型来检测异常。经典的聚类算法需要预先定义聚类的数量或用于判断样本是否属于聚类的阈值。然而,在密集人群场景中,聚类的数量和聚类阈值无法提前知道,首先是因为运动模式是连续随机变化的,其次是因为整个场景存在透视失真,即远离镜头的感兴趣目标很小,而近处的目标尺寸较大。另一类异常检测方法是基于稀疏表示。通过使用正常样本构建的字典重构测试样本,并将重构误差超过预设阈值的样本识别为异常。
4.近年来,对于复杂和庞大的数据集,深度学习的特征优于手工制作的特征。出于这个原因,一些研究人员已经应用自动编码器来检测异常,以提高描述复杂人群场景的能力。使用正常样本训练的卷积自编码器(con-ae)预计会对异常样本产生更高的重构误差,这可以作为识别异常的标准。由于卷积自动编码器具有很强的泛化能力,在正常样本上训练的自动编码器有时对异常样本也能很好地进行重构,此时根据重构误差的大小来辨识异常,很难获得理想的异常检测结果。gong等人开始通过采用记忆模块来缓解卷积自动编码器泛化能力过强的问题。在训练卷积自动编码器时,利用正常样本的编码特征构建记忆模块;在推理时,利用与测试样本编码特征相关的记忆项来重构测试样本。但是,该类方法在实践中,用记忆项重构的正常样本的误差也经常增大,这使得区分正常情况和异常情况仍然很困难。
技术实现要素:5.本部分的目的在于概述本发明的实施例的一些方面以及简要介绍一些较佳实施例。在本部分以及本技术的说明书摘要和发明名称中可能会做些简化或省略以避免使本部
分、说明书摘要和发明名称的目的模糊,而这种简化或省略不能用于限制本发明的范围。
6.鉴于上述现有存在的问题,提出了本发明。
7.因此,本发明解决的技术问题是:克服现有技术中基于构建记忆模块的异常检测方法在实践中用记忆项重构正常样本的误差经常增加,区分正常情况和异常情况仍然很困难的问题。
8.为解决上述技术问题,本发明提供如下技术方案:一种基于注意力的异常检测方法,包括,
9.利用视频数据构建密集人群场景中的异常行为检测数据集并进行预处理得到视频帧序列;
10.基于注意力的卷积神经网络构建自动编码器;
11.将视频帧序列输入到自动编码器中处理输出得到预测帧;
12.构造损失函数,对自动编码器进行训练;
13.对含有异常样本的测试集进行异常判断。
14.作为本发明所述的基于注意力的异常检测方法的一种优选方案,其中:所述预处理包括,将长视频数据切分为单个视频帧图像,将所有视频帧的分辨率统一调整为256
×
256像素,并将像素值归一化为[0,1]。
[0015]
作为本发明所述的基于注意力的异常检测方法的一种优选方案,其中:所述自动编码器为卷积神经网络的左侧路径对应编码器,右侧路径对应解码器,其中,空间注意力模块被添加到编码器和解码器之间的跳跃连接前。
[0016]
作为本发明所述的基于注意力的异常检测方法的一种优选方案,其中:所述将视频帧序列输入到自动编码器中处理输出得到预测帧包括,
[0017]
首先,编码器对输入的视频帧序列进行两次卷积核为3
×
3卷积处理,然后进入具有2
×
2核的最大池化层;
[0018]
重复执行上述操作4次,视频帧的分辨率变为输入时的1/16,输出得到编码特征图m
cr
;
[0019]
解码器对编码特征图m
cr
进行两次卷积核为3
×
3卷积处理,然后使用最近邻插值算法实现上采样提高特征图的分辨率,得到解码特征图m
up
;
[0020]
上采样操作后得到的解码特征图m
up
和与其分辨率相同的编码特征图m
cr
一起输入到空间注意模块,再将注意力模块的输出与解码器中对应的特征进行拼接;
[0021]
重复执行上述操作4次,得到与输入帧具有相同分辨率的解码特征图m
up
;
[0022]
对解码特征图m
up
进行两次卷积核为3
×
3卷积处理和1次卷积核为1
×
1卷积处理,输出预测帧
[0023]
作为本发明所述的基于注意力的异常检测方法的一种优选方案,其中:所述输入的视频帧序列是由连续的分辨率为h
input
×winput
的t帧i1、i2…it
组成的大小为c
input
×hinput
×winput
的矩阵m
input
,其中,c
input
、h
input
和w
input
分别表示矩阵的通道数、高和宽。
[0024]
作为本发明所述的基于注意力的异常检测方法的一种优选方案,其中:所述构造损失函数,包括,采用重构损失l
rec
和梯度损失l
gra
来构造损失函数,公式如下:
[0025]
l=α
rec
·
l
rec
+α
gra
·
l
gra
[0026]
其中,α
rec
、α
gra
为调整l
rec
、l
gra
平衡的超参数。
[0027]
作为本发明所述的基于注意力的异常检测方法的一种优选方案,其中:所述构造损失函数,其中,重构损失l
rec
描述的是预测帧和真实帧i
t+1
像素强度的偏差,公式如下所示:
[0028][0029]
其中,||
·
||2表示l2范数,通过对像素强度进行惩罚,可以使得预测帧更接近真实帧i
t+1
;
[0030]
梯度损失l
gra
描述的是预测帧和真实帧i
t+1
图像梯度的差异,公式如下所示:
[0031][0032]
其中,||
·
||1表示l1范数,i表示行索引,j表示列索引,通过对梯度进行惩罚,可以使得预测帧保留更多的细节信息。
[0033]
作为本发明所述的基于注意力的异常检测方法的一种优选方案,其中:所述对编码器进行训练为通过反向传播损失进行训练以优化自动编码器的参数。
[0034]
作为本发明所述的基于注意力的异常检测方法的一种优选方案,其中:所述对含有异常样本的测试集进行异常判断包括,
[0035]
将测试集中每个连续的t帧输入到训练好的自动编码器中,对第t+1帧进行预测,根据输出的预测帧和真实帧之间的异常分数进行异常判断。
[0036]
作为本发明所述的基于注意力的异常检测方法的一种优选方案,其中:所述异常判断包括帧级异常判断和像素级异常判断,其中,
[0037]
帧级异常判断包括:
[0038]
将第n次测试的预测帧记为其对应的真实帧记为i
n+t
,其中n={1,2,
…
,n-t},n是测试视频的帧数;
[0039]
使用图像质量评估指标峰值信噪比来衡量预测帧与真实帧i
n+t
之间的差异,公式如下所示:
[0040][0041]
其中,psnr为图像质量评估指标峰值信噪比;
[0042]
第n次测试的帧级异常分数scr
fr
(n+t)通过归一化计算得到,公式如下所示:
[0043]
[0044]
其中,帧级异常分数scr
fr
(n+t)∈[0,1];
[0045]
由于正常帧的帧级异常分数通常较低,而异常帧的帧级异常分数通常较高,当异常分数高于阈值时,即能够被判别为异常视频帧;
[0046]
像素级异常判断包括:
[0047]
通过计算预测帧的像素与真实帧i
n+t
对应像素之间偏差的l1范数得到第n次测试的像素级异常分数,公式如下:
[0048][0049]
异常分数大的像素意味着其预测结果与其实际像素值有较大的偏差,因此通常被判断为异常像素。
[0050]
本发明的有益效果:
[0051]
(1)本发明通过在训练期间专注于优化正常目标的表示,从而对测试期间拥挤场景中频繁的正常活动实现更准确的预测,从而允许异常情况能够更准确地与正常样本区分开来,克服了现有技术中基于构建记忆模块的异常检测方法在实践中用记忆项重构正常样本的误差经常增加,区分正常情况和异常情况仍然很困难的问题。
[0052]
(2)与现有的基于构建记忆模块的异常检测方法相比,本发明提出的方法不依赖于用于训练的特定场景,并且在跨场景异常检测应用中依旧稳定。
[0053]
(3)本发明优化了场景中每个位置的预测输出,因此它对透视失真不敏感,并获得了高精度的异常定位。
附图说明
[0054]
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。其中:
[0055]
图1为本发明实施例1中的基于空间注意力的自动编码器网络结构图。
[0056]
图2为本发明实施例1中的将视频帧序列输入自动编码器中的处理流程图。
[0057]
图3为本发明实施例1中的空间注意力模块示意图。
[0058]
图4为本发明实施例1中的基于空间注意力的异常判断方法示意图。
[0059]
图5为本发明实施例2中的基于混合注意力的自动编码器网络结构图。
[0060]
图6为本发明实施例2中的通道注意力模块示意图。
[0061]
图7为本发明实施例2中的基于混合注意力和运动约束的异常判断方法示意图。
[0062]
图8为本发明实施例3的帧级异常判断结果图。
[0063]
图9为本发明实施例3中的像素级异常判断结果图。
具体实施方式
[0064]
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合说明书附图对
本发明的具体实施方式做详细的说明,显然所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明的保护的范围。
[0065]
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。
[0066]
其次,此处所称的“一个实施例”或“实施例”是指可包含于本发明至少一个实现方式中的特定特征、结构或特性。在本说明书中不同地方出现的“在一个实施例中”并非均指同一个实施例,也不是单独的或选择性的与其他实施例互相排斥的实施例。
[0067]
本发明结合示意图进行详细描述,在详述本发明实施例时,为便于说明,表示器件结构的剖面图会不依一般比例作局部放大,而且所述示意图只是示例,其在此不应限制本发明保护的范围。此外,在实际制作中应包含长度、宽度及深度的三维空间尺寸。
[0068]
同时在本发明的描述中,需要说明的是,术语中的“上、下、内和外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一、第二或第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
[0069]
本发明中除非另有明确的规定和限定,术语“安装、相连、连接”应做广义理解,例如:可以是固定连接、可拆卸连接或一体式连接;同样可以是机械连接、电连接或直接连接,也可以通过中间媒介间接相连,也可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
[0070]
实施例1
[0071]
参照图1~4,为本发明的一个实施例,提供了一种基于空间注意力的异常检测方法,包括:
[0072]
s1:利用视频数据构建密集人群场景中的异常行为检测数据集并进行预处理得到视频帧序列;
[0073]
进一步的,所述预处理为将长视频数据其切分为单个视频帧图像,将所有视频帧的分辨率统一调整为256
×
256像素,并将像素值归一化为[0,1]。
[0074]
应说明的是,像素的归一化可以通过将所有像素值除以最大像素值来实现。
[0075]
s2:使用基于注意力的卷积神经网络构建自动编码器;
[0076]
进一步的,可见图1,展示了基于空间注意力的自动编码器,卷积神经网络的左侧路径对应编码器,右侧路径对应解码器,其中,空间注意力被添加到编码器和解码器之间的跳跃连接中,以减少表示背景的特征区域的权重。
[0077]
应说明的是,跳跃连接是为了进一步弥补编码阶段下采样丢失的信息,在解码器每一级的上采样过程中,将编码器对应位置的特征图在通道上进行融合,使得解码器在进行上采样时能够获取到更多的高分辨率信息,进而更完善地恢复原始图像中的细节信息,提高精度。
[0078]
s3:将特征图输入到自动编码器中处理输出得到预测帧;
[0079]
进一步的,可见图2,展示了将视频帧序列输入到自动编码器中处理流程,包括:
[0080]
a1:对输入的特征图进行两次卷积核为3
×
3卷积处理,然后进入具有2
×
2核的最大池化层;
[0081]
应说明的是,输入的特征图是由连续的分辨率为h
input
×winput
的t帧i1、i2…it
组成的大小为c
input
×hinput
×winput
的矩阵m
input
,其中,c
input
、h
input
和w
input
分别表示矩阵的通道数、高和宽,c
input
=3
×
t。
[0082]
卷积核就是图像处理时,给定输入图像,输入图像中一个小区域中像素加权平均后成为输出图像中的每个对应像素,其中权值由一个函数定义,这个函数称为卷积核。
[0083]
最大池化操作即对池化区域的所有像素值取最大值,这种方法得到的特征数据对纹理信息更加敏感。
[0084]
a2:重复执行上述操作4次,特征图的分辨率变为输入帧的1/16,输出编码特征图m
cr
。
[0085]
a3:解码器对编码器输出的特征图进行两次卷积核为3
×
3卷积处理,然后使用最近邻插值算法上采样提高特征图的分辨率。
[0086]
应说明的是,最近邻插值算法是一种将变换后的图像中的原像素点最邻近像素的灰度值赋给原像素点的方法。
[0087]
a4:可见图3,上采样操作后得到的解码特征图m
up
和与其分辨率相同的编码特征图m
cr
一起输入到空间注意模块。
[0088]
应说明的是,由于编码特征图m
cr
和解码特征图m
up
具有相同的通道数,因此它们的大小可以用c
cr
×hcr
×wcr
表示,其中c
cr
、h
cr
和w
cr
分别表示矩阵的通道数、高和宽。深度特征图中的激活像素通常对应于目标,因此解码特征图可用于监督编码特征图,以使自动编码器的特征更专注于表示前景目标。
[0089]
a5:特征图m
up
和m
cr
分别输入到具有1
×
1卷积核的卷积层进行线性变换,将特征图m
up
和m
cr
的线性变换结果的对应元素相加,然后输入到relu激活函数中进行非线性变换,激活函数输出的响应值矩阵as
rl
的计算公式如下所示:
[0090][0091]
其中,和表示线性变换的斜率,b1表示偏差。
[0092]
应说明的是,relu激活函数是常用的神经激活函数,属于分段线性函数,把所有的负值都变为0,而正值不变,这种操作被成为单侧抑制,即如果输入大于0,直接返回作为输入提供的值;如果输入是0或更小,返回值0。
[0093]
a6:将矩阵as
rl
送入具有1
×
1卷积核的卷积层,将as
rl
压缩为单通道矩阵as
ch
,公式如下所示:
[0094][0095]
其中,表示线性变换的斜率,b2表示偏差。
[0096]
a7:将矩阵as
ch
输入到sigmoid激活函数中,得到作为注意力系数的权重矩阵ass。特征图m
cr
的区域被加权为公式如下所示:
[0097]
[0098]
应说明的是,sigmoid激活函数是深度神经网络最先使用的激活函数,主要用于逻辑回归(logistic regression),实现二分类功能。
[0099]
解码特征图与空间注意力模块的输出相拼接。
[0100]
a8:重复执行上述操作4次,得到与输入帧具有相同分辨率的解码特征图。
[0101]
a9:对解码特征图m
up
进行两次卷积核为3
×
3卷积处理和1次卷积核为1
×
1卷积处理,输出预测帧
[0102]
s4:构造损失函数,对自动编码器进行训练;
[0103]
进一步的,构造损失函数包括:采用重构损失l
rec
和梯度损失l
gra
来构造损失函数,公式如下:
[0104]
l=α
rec
·
l
rec
+α
gra
·
l
gra
[0105]
其中,α
rec
、α
gra
为调整l
rec
、l
gra
平衡的超参数。
[0106]
b1:重构损失l
rec
描述的是预测帧和真实帧i
t+1
像素强度的偏差,公式如下所示:
[0107]
l=α
rec
·
l
rec
+α
gra
·
l
gra
[0108]
其中,||
·
||2表示l2范数,通过对像素强度进行惩罚,可以使得预测帧更接近真实帧i
t+1
。
[0109]
b2:梯度损失l
gra
描述的是预测帧和真实帧i
t+1
图像梯度的差异,公式如下所示:
[0110]
其中,||
·
||1表示l1范数,i表示行索引,j表示列索引,通过对梯度进行惩罚,可以使得预测帧保留更多的细节信息。
[0111]
再进一步的,可见图3,对自动编码器进行训练包括,通过反向传播损失进行训练以优化自动编码器的参数。
[0112]
应说明的是,反向传播就是通过导数链式法则计算损失函数对各参数的梯度,并根据梯度进行参数的更新。
[0113]
s5:对含有异常样本的测试集进行异常判断;
[0114]
进一步的,可见图4,展示了基于空间注意力的异常判断方法示意图,对含有异常样本的测试集进行异常判断,包括:
[0115]
c1:帧级异常判断:
[0116]
将第n次测试的预测帧记为其对应的真实帧记为i
n+t
,其中n={1,2,
…
,n-t},n是测试视频的帧数;
[0117]
使用图像质量评估指标峰值信噪比来衡量预测帧与真实帧i
n+t
之间的差异,公式如下所示:
[0118]
[0119]
其中,psnr为图像质量评估指标峰值信噪比。
[0120]
应说明的是,psnr是一种评价图像的客观标准,它具有局限性,一般是用于最大值信号和背景噪音之间的一个工程项目。
[0121]
其中,psnr为图像质量评估指标峰值信噪比;
[0122]
第n次测试的帧级异常分数scr
fr
(n+t)通过归一化计算得到,公式如下所示:
[0123][0124]
其中,帧级异常分数scr
fr
(n+t)∈[0,1];
[0125]
由于正常帧的帧级异常分数通常较低,而异常帧的帧级异常分数通常较高,当异常分数高于阈值时,即能够被判别为异常视频帧。
[0126]
像素级异常判断:
[0127]
通过计算预测帧的像素与真实帧i
n+t
对应像素之间偏差的l1范数得到第n次测试的像素级异常分数,公式如下:
[0128][0129]
异常分数大的像素意味着其预测结果与其实际像素值有较大的偏差,因此通常被判断为异常像素。
[0130]
实施例2
[0131]
参照图5~7,该实施例为本发明另一个实施例,该实施例不同于第一个实施例的是,本实施例在前两个实施例的基础上,使用混合注意力机制增加特征矩阵中有用的特征通道和目标区域的权重,同时为了进一步提高预测运动的能力,本实施例将运动约束引入自动编码器的优化,通过实际应用进行科学论证,以验证本方法所具有的真实效果。
[0132]
本实施例与实施例1的一个不同点在于使用混合注意力机制增加特征矩阵中有用的特征通道和目标区域的权重:
[0133]
可见图5,展示了本实施例基于混合注意力的自动编码器的示意图,在编码过程中,通道注意力用于降低表示背景的特征通道的权重,可见图6,展示了通道注意力模块的示意图。输入到通道注意力模块的特征图m
mp
的大小为c
mp
×hmp
×wmp
,其中c
mp
,h
mp
和w
mp
分别表示矩阵的通道数、高和宽;
[0134]
使用全局平均池化压缩特征图的空间维度,输出矩阵ac
gp
,公式如下所示:
[0135][0136]
其中,i∈h
mp
表示行索引,j∈w
mp
表示列索引,k∈c
mp
表示通道的索引,矩阵ac
gp
的大小为c
mp
×1×
1。接着将特征图输入到fc(全连接)层,将特征图的大小变为然
后经过relu激活函数后再通过一个fc层将特征图的大小恢复为c
mp
×1×
1,接着采用sigmoid激活函数获得权重矩阵acs。特征图m
mp
的通道被加权为公式如下所示:
[0137][0138]
本实施例与实施例1的另一个不同点在于构造损失函数时将运动约束引入自动编码器的优化:
[0139]
本实施例构造损失函数时利用重构损失l
rec
、梯度损失l
gra
和运动场损失l
mot
构造损失函数l,公式如下所示:
[0140]
l=α
rec
·
l
rec
+α
gra
·
l
gra
+α
mot
·
l
mot
[0141]
其中,α
rec
、α
gra
和α
mot
为调整l
rec
、l
gra
和l
mot
平衡的超参数;
[0142]
重构损失l
rec
和梯度损失l
gra
与实施例1中使用的重构损失l
rec
和梯度损失l
gra
相同。
[0143]
运动场损失表示由预测帧估计的运动场与真实的运动场flow(i
t
,i
t+1
)之间的偏差,公式如下所示:
[0144][0145]
通过对运动场进行惩罚,可以提高模型预测运动的能力。
[0146]
可见图7,展示了使用本实施例方法基于混合注意力和运动约束的异常检测方法示意图。
[0147]
实施例3
[0148]
参照图8、图9,为本发明另一个实施例,该实施例为了验证本发明的有益效果,通过实际应用进行科学论证。
[0149]
利用cuhkavenue和ucsd测试集上的部分视频片段构建本实施例中的异常行为检测数据集,采用本发明一种基于空间注意力的异常检测方法进行异常检测,将异常判断的阈值设为0.6,帧级异常判断结果如图8所示,像素级异常判断结果如图9所示。
[0150]
参见图8,淡红色区间表示测试集中被标记为异常视频帧的区间。从图中可以看到,对于正常的视频帧,其异常分数通常较低,当视频帧中出现如人奔跑、向空中抛掷物体等异常时,异常分数往往会升高,当异常分数高于阈值时,即能够被判别为异常视频帧。
[0151]
参见图9,第一列是部分测试帧,第二列是像素级的ground truth。第三列是本发明方法的检测结果,可以看到本发明方法的检测结果非常接近ground truth,且没有过度和未检测到的目标。
[0152]
因此,本发明提出的基于空间注意力的异常检测方法可以有效地检测异常。
[0153]
实施例4
[0154]
该实施例为本发明另一个实施例,该实施例不同于前三个实施例的是,本实施例采用传统技术方案与本发明方法进行对比测试,以科学论证的手段对比试验结果,以验证本方法所具有的真实效果。
[0155]
为了验证本发明中注意力模块的有效性,利用其它异常检测方法与本发明的异常检测方法在ucsd数据集、cuhkavenue数据集和shanghaitech数据集上进行性能评估。
[0156]
本实施例采用roc曲线下方的面积auc对实验结果进行评估:
[0157]
roc曲线的纵轴和横轴分别是真阳率和假阳率,真阳率tpr的计算如下:
[0158][0159]
其中,true abnormal frames是被正确检测为异常视频帧的数量,abnormal frames为所有异常视频帧的数量;
[0160]
假阳率fpr的计算如下:
[0161][0162]
其中,false abnormal frames是被误检为异常视频帧的数量,normal frames所有正常视频帧的数量;
[0163]
roc曲线对应的auc,auc的值越接近1,说明异常检测方法的性能越好。
[0164]
表1为我方发明(ours即我方发明方法)与其它方法在各测试集上的性能测试结果。
[0165]
表1
[0166][0167][0168]
从表1中可以看到,本发明采用的基于注意力的异常检测方法的auc的值在各检测集中均最接近1,且本发明在ucsd ped2数据集上的异常检测效果最好,说明本发明方法能够有效地检测出视频中的异常行为。
[0169]
应当认识到,本发明的实施例可以由计算机硬件、硬件和软件的组合、或者通过存储在非暂时性计算机可读存储器中的计算机指令来实现或实施。所述方法可以使用标准编
程技术-包括配置有计算机程序的非暂时性计算机可读存储介质在计算机程序中实现,其中如此配置的存储介质使得计算机以特定和预定义的方式操作——根据在具体实施例中描述的方法和附图。每个程序可以以高级过程或面向对象的编程语言来实现以与计算机系统通信。然而,若需要,该程序可以以汇编或机器语言实现。在任何情况下,该语言可以是编译或解释的语言。此外,为此目的该程序能够在编程的专用集成电路上运行。
[0170]
此外,可按任何合适的顺序来执行本文描述的过程的操作,除非本文另外指示或以其他方式明显地与上下文矛盾。本文描述的过程(或变型和/或其组合)可在配置有可执行指令的一个或多个计算机系统的控制下执行,并且可作为共同地在一个或多个处理器上执行的代码(例如,可执行指令、一个或多个计算机程序或一个或多个应用)、由硬件或其组合来实现。所述计算机程序包括可由一个或多个处理器执行的多个指令。
[0171]
进一步,所述方法可以在可操作地连接至合适的任何类型的计算平台中实现,包括但不限于个人电脑、迷你计算机、主框架、工作站、网络或分布式计算环境、单独的或集成的计算机平台、或者与带电粒子工具或其它成像装置通信等等。本发明的各方面可以以存储在非暂时性存储介质或设备上的机器可读代码来实现,无论是可移动的还是集成至计算平台,如硬盘、光学读取和/或写入存储介质、ram、rom等,使得其可由可编程计算机读取,当存储介质或设备由计算机读取时可用于配置和操作计算机以执行在此所描述的过程。此外,机器可读代码,或其部分可以通过有线或无线网络传输。当此类媒体包括结合微处理器或其他数据处理器实现上文所述步骤的指令或程序时,本文所述的发明包括这些和其他不同类型的非暂时性计算机可读存储介质。当根据本发明所述的方法和技术编程时,本发明还包括计算机本身。计算机程序能够应用于输入数据以执行本文所述的功能,从而转换输入数据以生成存储至非易失性存储器的输出数据。输出信息还可以应用于一个或多个输出设备如显示器。在本发明优选的实施例中,转换的数据表示物理和有形的对象,包括显示器上产生的物理和有形对象的特定视觉描绘。
[0172]
如在本技术所使用的,术语“组件”、“模块”、“系统”等等旨在指代计算机相关实体,该计算机相关实体可以是硬件、固件、硬件和软件的结合、软件或者运行中的软件。例如,组件可以是,但不限于是:在处理器上运行的处理、处理器、对象、可执行文件、执行中的线程、程序和/或计算机。作为示例,在计算设备上运行的应用和该计算设备都可以是组件。一个或多个组件可以存在于执行中的过程和/或线程中,并且组件可以位于一个计算机中以及/或者分布在两个或更多个计算机之间。此外,这些组件能够从在其上具有各种数据结构的各种计算机可读介质中执行。这些组件可以通过诸如根据具有一个或多个数据分组(例如,来自一个组件的数据,该组件与本地系统、分布式系统中的另一个组件进行交互和/或以信号的方式通过诸如互联网之类的网络与其它系统进行交互)的信号,以本地和/或远程过程的方式进行通信。
[0173]
应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。
技术特征:1.一种基于注意力的异常检测方法,其特征在于,包括:利用视频数据构建密集人群场景中的异常行为检测数据集并进行预处理得到视频帧序列;基于注意力的卷积神经网络构建自动编码器;将视频帧序列输入到自动编码器中处理输出得到预测帧;构造损失函数,对自动编码器进行训练;对含有异常样本的测试集进行异常判断。2.如权利要求1所述的基于注意力的异常检测方法,其特征在于:所述预处理包括,将长视频数据切分为单个视频帧图像,将所有视频帧的分辨率统一调整为256
×
256像素,并将像素值归一化为[0,1]。3.如权利要求1所述的基于注意力的异常检测方法,其特征在于:所述自动编码器为卷积神经网络的左侧路径对应编码器,右侧路径对应解码器,其中,空间注意力模块被添加到编码器和解码器之间的跳跃连接前。4.如权利要求1所述的基于注意力的异常检测方法,其特征在于:所述将视频帧序列输入到自动编码器中处理输出得到预测帧包括,首先,编码器对输入的视频帧序列进行两次卷积核为3
×
3卷积处理,然后进入具有2
×
2核的最大池化层;重复执行上述操作4次,视频帧的分辨率变为输入时的1/16,输出得到编码特征图m
cr
;解码器对编码特征图m
cr
进行两次卷积核为3
×
3卷积处理,然后使用最近邻插值算法实现上采样提高特征图的分辨率,得到解码特征图m
up
;上采样操作后得到的解码特征图m
up
和与其分辨率相同的编码特征图m
cr
一起输入到空间注意模块,再将注意力模块的输出与解码器中对应的特征进行拼接;重复执行上述操作4次,得到与输入帧具有相同分辨率的解码特征图m
up
;对解码特征图m
up
进行两次卷积核为3
×
3卷积处理和1次卷积核为1
×
1卷积处理,输出预测帧5.如权利要求1或4所述的基于注意力的异常检测方法,其特征在于:所述输入的视频帧序列是由连续的分辨率为h
input
×
w
input
的t帧i1、i2…
i
t
组成的大小为c
input
×
h
input
×
w
input
的矩阵m
input
,其中,c
input
、h
input
和w
input
分别表示矩阵的通道数、高和宽,c
input
=3
×
t。6.如权利要求1所述的基于注意力的异常检测方法,其特征在于:所述构造损失函数,包括,采用重构损失l
rec
和梯度损失l
gra
来构造损失函数,公式如下:l=α
rec
·
l
rec
+α
gra
·
l
gra
其中,α
rec
、α
gra
为调整l
rec
、l
gra
平衡的超参数。7.如权利要求1或6所述的基于注意力的异常检测方法,其特征在于:所述构造损失函数,其中,重构损失l
rec
描述的是预测帧和真实帧i
t+1
像素强度的偏差,公式如下所示:其中,||
·
||2表示l2范数,通过对像素强度进行惩罚,可以使得预测帧更接近真实帧i
t+1
;
梯度损失l
gra
描述的是预测帧和真实帧i
t+1
图像梯度的差异,公式如下所示:其中,||
·
||1表示l1范数,i表示行索引,j表示列索引,通过对梯度进行惩罚,可以使得预测帧保留更多的细节信息。8.如权利要求1所述的基于注意力的异常检测方法,其特征在于:所述对编码器进行训练为通过反向传播损失进行训练以优化自动编码器的参数。9.如权利要求1所述的基于注意力的异常检测方法,其特征在于:所述对含有异常样本的测试集进行异常判断包括,将测试集中每个连续的t帧输入到训练好的自动编码器中,对第t+1帧进行预测,根据输出的预测帧和真实帧之间的异常分数进行异常判断。10.如权利要求1或9所述的基于注意力的异常检测方法,其特征在于:所述异常判断包括帧级异常判断和像素级异常判断,其中,帧级异常判断包括:将第n次测试的预测帧记为其对应的真实帧记为i
n+t
,其中n={1,2,
…
,n-t},n是测试视频的帧数;使用图像质量评估指标峰值信噪比来衡量预测帧与真实帧i
n+t
之间的差异,公式如下所示:其中,psnr为图像质量评估指标峰值信噪比;第n次测试的帧级异常分数scr
fr
(n+t)通过归一化计算得到,公式如下所示:其中,帧级异常分数scr
fr
(n+t)∈[0,1];由于正常帧的帧级异常分数通常较低,而异常帧的帧级异常分数通常较高,当异常分数高于阈值时,即能够被判别为异常视频帧;像素级异常判断包括:通过计算预测帧的像素与真实帧i
n+t
对应像素之间偏差的l1范数得到第n次测试的像素级异常分数,公式如下:
异常分数大的像素意味着其预测结果与其实际像素值有较大的偏差,因此通常被判断为异常像素。
技术总结本发明公开了一种基于注意力的异常检测方法。该方法取t个连续帧,记为I1、I2…
技术研发人员:张新峰 方金鹏
受保护的技术使用者:扬州大学
技术研发日:2022.07.08
技术公布日:2022/11/1