一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于全局上下文嵌入生成对抗网络的图像异常检测方法

2023-01-16 22:29:17 来源:中国专利 TAG:


1.本发明涉及计算机视觉领域的一种图像检测方法,特别涉及一种基于全局上下文嵌入生成对抗网络的图像异常检测方法。


背景技术:

2.异常检测广泛应用于医学诊断、视频监控、产品质量控制等领域,主要基于图像信息识别不经常发生的、与常规模式不同的情形。传统基于手工特征的图像异常检测方法依赖特定场景,不能很好地应对复杂多变的检测目标。随着深度学习在计算机视觉领域的快速发展,基于深度学习网络的图像异常检测方法也得到了广泛研究。其中,以生成对抗网络为代表的基于重构的检测方法极大扩展了异常检测任务的应用领域。基于重构的方法在正常样本上学习正常样本分布,不能有效重构异常数据,从而达到异常检测的目的。
3.然而,当前大多数基于生成对抗网络的重构方法仅仅依靠传统的卷积、转置卷积等操作学习样本分布,没有充分利用样本的空间结构信息,不能有效捕获图像特征的长范围依赖关系,降低了数据重构的精度,不利于异常检测准确率的提升。


技术实现要素:

4.本发明的目的是为了解决背景技术而提出了一种基于全局上下文嵌入生成对抗网络的图像异常检测方法,通过构建全局上下文模块捕获图像特征的全局空间结构信息,将全局上下文特征嵌入到生成对抗网络的编码结构和解码结构中,保证特征重构过程中对上下文信息的有效利用。另外,构建的全局上下文模块采用了权值轻量化的设计方法,降低了网络结构的复杂度,提高了异常检测的效率。
5.为了实现上述目的,本发明采用的技术方案为:步骤1:构建基于全局上下文嵌入生成对抗的异常检测网络;步骤2:将不存在异常的历史图像作为图像样本输入异常检测网络后进行训练;步骤3:采集待测场景下的实时图像,输入到训练后的异常检测网络中检测出是否为异常图像。
6.所述的历史图像和实时图像均为二维图像。
7.所述的异常是指和绝大部分时间下的情形不同的情形,根据具体需求自行定义。
8.所述的异常检测网络包括生成网络、判别网络、重构损失函数和隐式损失函数;输入图像tx先经过生成网络获得生成图像fx,然后将输入图像tx和生成图像fx再共同输入到判别网络获得输入图像tx和生成图像fx各自对应的隐式特征ht和hf;隐式特征ht和hf共同构成了隐式特征h。再结合生成图像fx与输入图像tx通过重构损失函数处理获得异常检测网络的重构损失l
rec
,根据生成图像fx与输入图像tx各自的隐式特征通过隐式损失函数处理获得异常检测网络的隐式损失l
lat
,利用重构损失l
rec
和隐式损失l
lat
判断输入图像tx中是否存在异常。
9.用于异常检测的原始输入图像tx为真图像,由生成网络生成的生成图像fx为假图
像。判别网络的目的是准确判断输入的图像是真实图像还是由生成网络生成的假图像,从而与生成网络形成对抗训练关系。
10.所述的判别网络以真实的输入图像tx和由生成网络生成的生成图像fx为输入,两幅图像均分别依次经三个卷积模块和一个卷积操作的处理获得各自的隐式特征,其中每个卷积模块均由一个卷积操作和一个激活函数依次连接构成。
11.所述的生成网络包括主要由编码网络和解码网络依次连接构成,以二维图像为输入,生成与输入图像同样大小的二维图像,输入图像tx输入到编码网络获得编码特征z,编码特征z再输入到解码网络处理获得生成图像fx;所述的编码网络主要由第一卷积模块、第一卷积操作、全局上下文模块、第一激活函数、第二卷积模块、第二卷积操作依次连接构成;所述的解码网络主要由第一转置卷积模块、第一转置卷积操作、全局上下文模块、第二激活函数、第二转置卷积模块、第二转置卷积操作和第三激活函数依次连接构成;其中每个卷积模块均由一个卷积操作和一个激活函数依次连接构成,每个转置卷积模块均由一个转置卷积操作和一个激活函数依次连接构成。
12.所述的第一激活函数采用leakyrelu激活函数,第二激活函数采用relu激活函数,第三激活函数采用tanh激活函数。
13.所述的全局上下文模块以图像高维特征x为输入,输出相同维度的高维特征y,包括多个卷积操作、多个特征形状变换操作reshape、softmax操作和sigmoid操作,输入到全局上下文模块的图像特征x经过卷积操作获得第一特征f1,同时输入到全局上下文模块的图像经过特征形状变换操作reshape获得第四特征f4,第一特征f1经过特征形状变换操作reshape获得第二特征f2,第二特征f2经过softmax操作并改变形状后获得第三特征f3,改变形状具体是指特征维度由第二特征f2的b
×1×
hw变为第三特征f3的b
×1×
hw
×
1,再将第三特征f3与第四特征f4按矩阵相乘后获得第五特征f5,第五特征f5经过特征形状变换操作reshape后获得第六特征f6,第六特征f6依次经过卷积操作和sigmoid操作后获得第七特征f7,第七特征f7与输入到全局上下文模块的图像特征x按元素相乘获得输出特征y。按元素相乘是指两个图像特征的矩阵的对应元素分别相乘。
14.所述的特征形状变换操作reshape具体为改变矩阵维度的操作。
15.所述步骤2中,在训练过程中,还利用输入图像tx和生成图像fx各自的隐式特征ht和hf,将隐式特征ht和hf均依次经过卷积操作和sigmoid激活函数后获得图像样本是真实图像的概率预测值p,进而根据概率预测值p构建异常检测网络的对抗损失l
adv
,然后进行以下处理:s1、初始化判别网络的参数;s2、固定判别网络参数,将重构损失l
rec
和隐式损失l
lat
求和后获得异常检测网络的总损失l,以总损失l最小为目标对生成网络进行训练;s3、固定s2训练后的生成网络的参数,以对抗损失l
adv
最小为目标对判别网络进行训练;s4、不断重复上述s2~s3更新优化整个异常检测网络的参数,直到达到预设的最大迭代epoch次数停止更新优化。
16.所述利用重构损失l
rec
和隐式损失l
lat
判断输入图像tx中是否存在异常,具体为:利用重构损失l
rec
和隐式损失l
lat
按照以下公式计算输入图像tx的异常分数:
s=λl
rec
(1-λ) l
lat
其中,λ表示预设的权值参数;当异常分数大于预设的异常阈值时,则认为输入图像tx为异常图像;否则不为异常图像。
17.所述的重构损失l
rec
计算如下:l
rec = 1/(hw)*∑
hi =1

wj =1
(‖tx
ij
ꢀ‑ꢀ
fx
ij

l1
)其中,h、w分别表示图像的高和宽,i=1...h,j=1...w,l1表示1范数;tx
ij
和fx
ij
分别表示输入图像tx和生成图像fx在第i行、第j列位置处的像素值;所述的隐式损失l
lat
计算公式如下:l
lat = 1/(hw)*∑
hi =1

wj =1
(‖ht
ij ‑ꢀ
hf
ij

l2
)2其中,h、w分别表示隐式特征的高和宽,i=1...h,j=1...w,l2表示2范数,ht
ij
和hf
ij
分别表示输入图像tx的隐式特征和生成图像fx的隐式特征在第i行、第j列位置处的特征值。
18.所述的对抗损失l
adv
计算如下:l
adv =-(1/n)*∑
ni=1
[yilog(pi) (1-yi)log(1-pi)]其中,i=1...n,n表示输入到异常检测网络的图像样本个数,yi表示第i个图像样本的所属类别,pi为第i个图像样本的预测值。
[0019]
本发明方法的图像异常检测可应用于视频监控、产品质量控制、医学诊断等领域的图像中。
[0020]
当应用于视频监控图像时,可以检测图像中行人的异常行为举止或者运动物体的异常运动。
[0021]
当应用于产品质量控制图像时,可以检测图像中产品的缺陷。
[0022]
当应用于医学诊断图像时,可以检测图像中的疾病。
[0023]
本发明先构造一个包含生成网络和判别网络的生成对抗网络,生成网络由编码网络和解码网络构成,感知全局上下文信息的全局上下文模块嵌入到编码网络和解码网络中,训练时将生成网络生成的假图像以及输入的真图像输入到判别网络进行训练;测试时根据生成图像与真实图像之间的差异以及相对应的隐式特征差异计算图像的异常分数,根据异常分数判断是否异常。
[0024]
本发明的有益效果是:本发明构造了一种基于全局上下文嵌入生成对抗网络的图像异常检测方式,能够充分捕获图像特征的高维空间结构信息,增强长范围空间依赖关系对异常特征的贡献能力,并增强了生成对抗网络的训练稳定性,有利于异常检测精度的提升。
[0025]
同时,本发明所设计的全局上下文模块保证了输入输出特征维度的一致性,能够嵌入到现有深度学习网络的各个阶段,具有很强的灵活性和适应性。
附图说明
[0026]
图1为全局上下文模块示意图;图2为编码网络示意图;图3为解码网络示意图;
图4为生成网络示意图;图5为判别网络示意图;图6为基于全局上下文嵌入生成对抗的异常检测网络;图7为本发明具体实施工作过程的流程示意图。
具体实施方式
[0027]
下面结合附图和具体实施对本发明作进一步说明。
[0028]
需要理解的是,本发明所描述的实施例是示例性的,实施例描述中所使用的具体参数仅是为了便于描述本发明,并不用于限定本发明。
[0029]
如图7所示,本发明的实施例及其实施过程包括构建全局上下文模块、构建生成网络、构建判别网络以及构建异常检测网络四个部分,具体包括如下步骤:步骤1:构建全局上下文模块。
[0030]
构建如图1所示的全局上下文模块。
[0031]
全局上下文模块以图像高维特征x为输入,输出相同维度的高维特征y。x和y的特征维度为b
×c×h×
w。图1中,b表示输入到网络的图像数量,c表示特征通道数,h表示特征的高度,w表示特征的宽度。特征形状变换操作reshape表示改变特征形状;conv表示卷积操作,括号中的第一个数字表示输入特征通道数,第二个数字表示输出特征通道数。
[0032]
图像高维特征x经过卷积核为1
×
1的卷积操作conv(c, 1)后获得维度为b
×1×h×
w的特征f1,同时特征x经过特征形状变换操作reshape获得特征维度为b
×1×c×
hw的特征f4。特征f1经过特征形状变换操作reshape获得维度为b
×1×
hw的特征f2。特征f2经过softmax操作并改变形状后获得维度为b
×1×
hw
×
1的特征f3。特征f3与特征f4按矩阵相乘后,获得维度为b
×1×c×
1的特征f5。特征f5经过特征形状变换操作reshape后获得维度为b
×c×1×
1的特征f6。特征f6经过卷积核为1
×
1的卷积操作conv(c, c)和sigmoid操作后获得维度为b
×c×1×
1的特征f7。特征f7与图像高维特征x按元素相乘获得输出特征y。
[0033]
卷积操作(c, 1)中的conv表示卷积操作,括号中的第一个数字表示输入特征通道数,第二个数字表示输出特征通道数,下同。
[0034]
上述构建的全局上下文模块能够充分捕获图像特征的长范围依赖关系,有效提取全局上下文特征,有利于生成网络对异常特征的生成能力,提升异常检测任务的精度。
[0035]
步骤2:利用全局上下文模块构建生成网络。
[0036]
生成网络生成与输入图像相同大小的图像,其主要目的是生成能够欺骗判别网络的假图像。
[0037]
构建如图4所示的生成网络,生成网络由编码网络和解码网络构成,编码网络使用卷积操作和leakyrelu激活函数,解码网络使用转置卷积操作和relu激活函数。
[0038]
构建的编码网络如图2所示,其中,conv1、conv2、conv3和conv4表示卷积操作,括号中的第一个参数为输入通道数量、第二个参数为输出通道数量。编码网络以输入图像tx为输入,获得编码特征z。输入图像tx首先经过卷积操作conv1(3, 64)和leakyrelu激活函数获得编码特征f
e1
,编码特征f
e1
再经过卷积操作conv2(64, 128)获得编码特征f
e2
。编码特征f
e2
经过全局上下文模块和leakyrelu操作后获得编码特征f
e3
。编码特征f
e3
再经过卷积操作conv3(128, 256)和leakyrelu激活后获得编码特征f
e4
。编码特征f
e4
经过卷积conv4
(256, 100)后获得编码特征z。
[0039]
在编码特征z的基础上构建解码网络,如图3所示。其中,deconv1、deconv2、deconv3及deconv4表示转置卷积,括号中的第一个数字表示输入通道数,第二个数字表示输出通道数。解码网络以编码特征z为输入,经过转置卷积deconv1(100, 256)及relu激活函数后获得解码特征f
d1
。解码特征f
d1
经过转置卷积deconv2(256, 128)后获得解码特征f
d2
。解码特征f
d2
经过全局上下文模块以及一个relu激活函数后获得解码特征f
d3
。解码特征f
d3
再经过一个转置卷积deconv3(128, 64)和一个relu激活函数获得解码特征f
d4
。解码特征f
d4
最后通过转置卷积deconv4(64, 3)和tanh激活函数获得生成图像fx。
[0040]
其中,将全局上下文模块嵌入到编码网络的卷积操作conv2(64, 128)和解码网络的转置卷积操作deconv2(256, 128)之后。其中,b取值64,c取值128,h和w均为8。
[0041]
在编码网络和解码网络基础上,构建的生成网络最终如图4所示。生成网络以输入图像tx为原始输入,由编码网络获得图像的编码特征z。在编码特征z基础上,解码网络生成与输入图像tx相同大小的图像fx。
[0042]
步骤3:构建判别网络。
[0043]
构建如图5所示的判别网络。判别网络使用卷积操作和leakyrelu激活函数,获得图像的隐式特征。以真实输入图像和生成的假图像为输入,其主要目的是判别一个图像是假图像还是真实图像。
[0044]
如图5,判别网络以真实输入图像tx和由生成网络生成的生成图像fx为输入,经过卷积conv5(3, 64)和激活函数leakyrelu后获得判别特征f
i1
。判别特征f
i1
再经过卷积conv6(64, 128)和激活函数leakyrelu后获得判别特征f
i2
。判别特征f
i2
通过卷积conv7(128, 256)和激活函数leakyrelu获得判别特征f
i3
。判别特征f
i3
通过卷积conv8(256, 100)获得隐式特征h。
[0045]
步骤4:构建异常检测网络。
[0046]
构建如图6所示的异常检测网络。
[0047]
输入图像tx经过生成网络获得生成图像fx,将输入图像tx和生成图像fx输入到判别网络获得tx和fx对应的隐式特征ht和hf。隐式特征ht和hf共同构成了隐式特征h。其中,根据生成图像fx与输入图像tx获得网络的重构损失l
rec
,根据两个图像的隐式特征获得隐式损失l
lat
。隐式特征h最后经过卷积操作conv9(100, 1)和sigmoid激活函数后得到对抗损失l
adv

[0048]
由此计算网络的重构损失、隐式损失以及对抗损失。
[0049]
步骤5:训练构建的异常检测网络。
[0050]
在训练阶段,先初始化判别网络参数,再固定判别网络参数,将损失函数l
rec
、l
lat
求和后获得网络的总损失l。在总损失l指导下训练生成网络。然后,固定生成网络参数,在对抗损失l
adv
指导下训练判别网络。通过此交替训练方法不断更新优化整个网络。
[0051]
采用cifar-10数据集训练构建的异常检测网络。该数据集包含10个物体类别,每次训练时选取一个类别作为异常类别,其他类别作为正常类别。图像宽高设置为32,初始学习率设为0.0001,训练批次大小为64,最大迭代次数为20个epoch。
[0052]
步骤6:计算待检图像的异常分数。
[0053]
当训练完成后,利用重构损失和隐式损失计算图像的异常分数。具体实施中,权值
参数λ为0.9。
[0054]
当异常分数大于指定阈值时,认为该待检测图像为异常图像。
[0055]
与现有技术相比,本发明方法构建了基于生成对抗网络框架的异常特征提取模式,设计了基于长范围依赖关系的全局上下文特征提取模块,构建了基于图像重构、隐式特征重构的网络损失函数。
[0056]
本发明方法增强了网络对全局特征的注意力感知能力,能同时捕获异常位置的局部特征和全局上下文特征,丰富了异常特征的表达含义,有利于提升生成网络对正常样本分布的学习重构能力,极大改善了对复杂背景多物体类别的异常检测精度。在cifar-10数据集上,本发明获得了63.2%的平均类别精度,超过了anogan、egbad等同类异常检测方法。
[0057]
以上所述,仅为本发明较佳的具体实施方案,但本发明的保护范围并不局限于上述实施方案,任何本技术领域的技术人员在本发明描述的技术范围内,根据本发明的技术方案及其发明构思所做的等同替换或改变,都应包含在本发明的保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献