基于半监督网络的图像缺陷检测方法、装置和存储介质

文档序号:28915998发布日期:2022-02-16 10:51阅读:115来源:国知局
基于半监督网络的图像缺陷检测方法、装置和存储介质

1.本发明涉及计算机视觉技术领域,尤其是基于半监督网络的图像缺陷检测方法、设备和存储介质。


背景技术:

2.图像缺陷检测在工业生产及维修中具有重要地位。传统的人工检测图像缺陷手段一方面要耗费人力资源,另一方面在人产生视觉疲劳后,工作效率和检测准确率会显著下降。因此催生了使用神经网络通过图像识别、特征提取的方式进行图像缺陷检测的手段。其中,生成式对抗网络(generative adverserial networks,gans)是一种先进的机器学习方法,但其局限性在于gans的训练过程中依赖有大量带标记的数据,在实际应用中会由于人力资源的缺乏而变得不具有可操作性。
3.半监督生成对抗网络(semi supervised generative adverserial networks,ssgan)是一种基于较少的标记数据,完成深度学习的神经网络。与大多数依赖于标记或弱标记图像的方法相比,ssgan模型可以利用未标记图像来提高分割性能,减轻数据标记任务。


技术实现要素:

4.有鉴于此,本发明设计了提供基于半监督网络的图像缺陷检测方法、设备和存储介质。
5.本发明的第一方面提供了基于半监督网络的图像缺陷检测方法、设备和存储介质,其特征在于,包括以下步骤:
6.获取输入图像;
7.对输入图像进行语义分割,并对像素赋予标签,被赋予标签的像素记为区域真值;
8.构建缺陷分割网络,对输入图像进行缺陷分割,得到分割图像;
9.构建fcd网络,使用fcd网络获取分割图像中存在缺陷的概率,得到区域置信度值;
10.计算区域真值和区域置信度值的交并比,对缺陷检测性能进行评估。
11.进一步地,所述对输入图像进行语义分割,并对像素赋予标签,具体包括:
12.对输入图像中的每个像素进行密度预测,以识别图像中存在的缺陷内容和位置;
13.从输入图像中选择预设比例的像素,赋予缺陷类别标签。
14.进一步地,所述缺陷分割网络,包括以下结构:resnet101模型、像素注意模块、信道注意模块、u-net网络模型;
15.所述resnet101模型用于进行预训练;
16.所述像素注意模块和信道注意模块组成双重注意机制,对图像特征进行感知;
17.所述u-net网络模型对图像进行后处理。
18.进一步地,所述fcd网络,由5个4
×
4的卷积层组成,用于对图像缺陷进行预测。
19.进一步地,所述计算区域真值和区域置信度值的交并比中,交并比的计算公式为:
20.交并比=交集区域像素数目/并集区域像素数目
21.其中交集区域指区域置信度值和区域真值的交集,并集区域指区域置信度值和区域真值的并集。
22.进一步地,所述一种基于半监督语义的图像缺陷检测深度学习方法的训练步骤包括:
23.获取rgb通道输入图像,记为x;所述图像x的大小为h
×w×
3,将图像送入语义分割网络,得到大小为h
×w×
c的概率图s(x),
24.其中h是图像的高度、w是图像的宽度、c是语义类的个数;
25.将概率图s(x)输入缺陷分割网络d,得到大小为h
×w×
1置信图d(s(x))和d(yn),
26.d(s(x))来自分割图像,d(yn)来自真值图像;
27.利用d(s(x))与d(yn)计算空间交叉熵损失ld:
[0028][0029]
使用d(s(x))与d(yn)计算空间多类交叉熵损失lce、对抗性损失ladv、半监督损失lsemi;并进一步计算整体分割损失lseg:
[0030]
l
seg
=l
ce

adv
l
adv

semi
l
semi
[0031][0032][0033][0034]
其中,λadv和λsemi是预设的用于平衡目标函数中损失权重的参数;t为二值化函数、tsemi为灵敏度参数。
[0035]
本发明还公开了一种计算机装置,包括处理器以及存储器;
[0036]
所述存储器用于存储程序;
[0037]
所述处理器执行所述程序实现所述的基于半监督网络的图像缺陷检测方法、设备和存储介质。
[0038]
本发明还公开了一种计算机可读存储介质,所述存储介质存储有程序,所述程序被处理器执行实现所述的基于半监督网络的图像缺陷检测方法、设备和存储介质。
[0039]
本发明所提出的基于半监督生成对抗网络的图像缺陷检测方法,由于包含了基于双重注意机制的缺陷分割网络和采用多种损失函数、以半监督学习方式生成未标记图像置信度值的fcd网络,在像素级上拥有更精确的分割结果,并同时降低了人力标注成本。实验表明,本深度学习方法在各种使用场景下的图像缺陷分割都具有鲁棒性和灵活性。
附图说明
[0040]
为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于
本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0041]
图1是基于半监督网络的图像缺陷检测方法、设备和存储介质的工作流程图;
[0042]
图2是缺陷分割网络的结构图;
[0043]
图3是缺陷分割网络中信道注意模块结构图;
[0044]
图4是缺陷分割网络中像素注意模块结构图;
[0045]
图5是fcd网络结构图;
具体实施方式
[0046]
为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
[0047]
本发明实施例提出了基于半监督网络的图像缺陷检测方法、设备和存储介质,工作流程如图1所示,具体包括以下步骤:
[0048]
s1:获取输入图像,输入图像为rgb格式;
[0049]
s2:对图像中的每个像素进行密度预测,对一定百分比(记作α)的图像进行标记,未标记图像所占百分比为1-α,被标记的图像为区域真值;
[0050]
s3:构建缺陷分割网络,对输入图像进行缺陷分割,得到分割图像
[0051]
s4:构建fcd网络(fully convolutional discriminator,完全卷积鉴别网络),使用fcd网络获取分割图像中存在缺陷的概率,得到区域置信度值
[0052]
s5:对缺陷检测性能进行评估。
[0053]
本实施例描述了s3步骤中的缺陷分割网络,如图2所示。缺陷分割网络包括resnet-101模型、像素注意模块和信道注意模块。resnet-101模型是具有101层的残差网络,可对图像进行快速精确的分割。输入图像经分割后利用像素注意模块和信道注意模块所组成的双重注意机制来考虑特征和空间之间的关联,以捕捉远程上下文信息,双重注意机制对复杂场景下的缺陷检测具有明显效果。
[0054]
像素注意模块的内部结构如图3所示。首先,将经resnet-101模型处理的特征图u∈rc
×h×
w输入卷积层,通过归一标准化和relu层,得到三个新的特征图b、c和d({b、c、d∈rc
×h×
w})。将特征图通过reshape操作变为rc
×
n、其中n=h
×
w是像素数。随后,在在由等式(1)定义的softmax层中计算b和c的转置,得到像素注意力图s。最终输出e∈rc
×h×
w可根据比例参数导出α、原始要素图∈rc
×h×
w、以及像素注意力图s的转置,通过等式(2)计算得到。
[0055][0056][0057]
其中s
ji
表示第i个像素对第j个像素的影响,两个像素的特征越相似,对s
ji
值的影响越大;α是在训练过程中从0开始逐渐增加的学习权重系数,n是像素数。另外,c是语义类
的个数,h、w分别是输入图像的高度和宽度。
[0058]
与像素注意模块类似,信道注意模块内部结构如图4所示,尝试在两个通道图中捕获长范围信道依赖性。信道注意模块与像素注意模块的显著区别在于信道注意矩阵的计算,以改善特定语义的特征表示。更具体地说,通道注意图x∈rc
×
c是从原始特征图a∈rc
×h×
w直接计算出来的,因此,等式(1),(2)可改为等式(3),(4)进行相关计算:
[0059][0060][0061]
其中x
ji
表示第i个信道对第j个信道的影响,β是在训练过程中从0开始逐渐增加的学习权重系数,n是像素数。另外,c是语义类的个数,h、w分别是输入图像的高度和宽度。
[0062]
本实施例描述了s4步骤中的fcd网络,其网络结构如图5所示。fcd网络由5个卷积层组成,核心大小为4
×
4,5个卷积层的信道分别为64、128、256、512和1。除最后一层外,每个卷积层的输出都被送入一个0.2参数化的leaky-relu。与传统gan中需要固定大小图像作为输入并给出概率值的鉴别器不同,该方法中的鉴别器网络的最后一层采用上采样层来匹配输入映射的大小;也就是说,鉴别器网络可以将生成的区域置信度值重缩放为大小h
×w×
1。图的每个值表示该像素的概率是从分割网络(p=0)生成的或从区域真值(p=1)收集的。
[0063]
学习被标记和未被标记的图像有两个主要的过程。对于具有区域真值标签的数据而言,通过训练缺陷分割网络以找到适当的参数来降低标准交叉熵损失lce和对抗损失ladv的值(具体定义见下文);鉴别器网络仅使用标记数据进行训练。对于未被标记的数据而言,从分割网络中得到其区域置信度值,并将其与被标记的区域真值一起送入鉴别器网络计算区域置信度值。由于区域置信度值是分割网络性能的一个指标,它可以在训练过程中指示分割网络了解交集区域。
[0064]
本实施例描述了该神经网络的损失函数学习过程。
[0065]
给定一个rgb通道的输入图像x,大小为h
×w×
3。首先将其送入分割网络s,生成大小为h
×w×
c的概率图s(x)。然后,将概率图s(x)输入鉴别器网络d,输出两类置信图d(s(x))和d(yn),其大小为h
×w×
1。d(s(x))和d(yn)标识其分别来自分割网络s(x)和区域真值yn。
[0066]
分割网络和fcd网络的损失函数描述如下:在训练过程中,等式(5)中的空间交叉熵损失ld应最小化为c信道中的两类概率图。一种是分割预测s(x),另一种是通过热编码得到的区域真值向量yn。值得注意的是,热编码将区域真值标签图从h
×w×
1转换至h
×w×
c。
[0067]
在像素被分类到类别c时y=1,否则y=0。
[0068][0069]
式中y=0表示样本来自分割网络,y=1表示样本来自带标签的区域真值。s(x)是分割网络s生成的概率图,x是大小为h
×w×
3的输入图像,d(s(x))是从判别网络d输出的置信图。
[0070]
本实施例还纳入了一个新的损失函数,称为整体分割损失l
seg
,由三个独立的损失函数组成,包括空间多类交叉熵损失l
ce
、对抗损失l
adv
和半监督损失l
semi
。l
seg
的计算由等式(6)给出。给定被标记的图像yn,空间多类交叉熵损失l
ce
用等式(7)表示。给出了fcd利用对抗损失l
adv
使鉴别器考虑由区域真值产生的区域预测值。l
adv
的计算由等式(8)给出。
[0071]
l
seg
=l
ce

adv
l
adv

semi
l
semi
ꢀꢀꢀ
(6)
[0072][0073][0074]
其中λ
adv
和λ
semi
是两个用于平衡目标函数中损失权重的参数,h,w,c分别是图像x的高度、宽度和语义类的个数,y
(h,w,c)
表示标记图像。s(x)
(h,w,c)
表示从生成网络s(x)输出的相应概率图,d(s(x))
(h,w)
表示相应的置信图。
[0075]
对于未标记的图像yn,对抗损失也可由等式(8)得到,但由于缺少区域真值标签映射s(x)
(h,w,c)
,无法求出多类交叉熵。一种解决方案是训练带有标记数据的鉴别器来生成未标记数据的概率图d(s(x)),以便使区域预测值更接近区域真值。该概率图用阈值二值化以突出显示可靠区域。也就是说,如果c*=argmaxs(x)
(h,w,c)
,yn
(h,w,c*)
=1,则半监督损失l
semi
由公式(9)给出。
[0076][0077]
其中i为二值化函数,t
semi
为灵敏度参数,在训练过程中为常数。如果d(s(x))
(h,w)
大于t
semi
,则id(s(xn))
(h,w)
=1。否则,id(s(xn))
(h,w)
=0。在本实施例中,t
semi
在0.1到0.3之间为有效值,d(s(x))
(h,w)
代表相应的置信图,s(x)
(h,w,c)
代表从生成网络s(x)输出的相应概率图。另外,h、w、c分别是图像x的高度、宽度和语义类的个数,y
(h,w,c)
表示标记图像。
[0078]
本实施例描述了如何对缺陷检测性能进行评估。为了量化区域预测值边界盒和区域真值边界盒之间的相似性,本实施例采用交并比(iou)评估分割性能。作为一个jaccard索引,iou不太容易受到不平衡类的影响。iou的计算公式为等式(10)。显然,iou值越高,表示对图像的缺陷分割性能越好。
[0079][0080]
其中,交集区域是指区域真值和区域预测值中的重叠像素的数目,并集区域是两个区域中的所有像素。
[0081]
给定一幅图像中的iou值,还可求出其平均iou值。平均iou用于评估不同图像中分割精度的平均大小,通过等式(11)给出。
[0082][0083]
其中,n是指输入图像的数目,n
defect_i
是在每个图像中被正确分割成第i个缺陷的像素的数目,n
defect_j
表示被分割成第j个缺陷的像素的数目(i≠j)。
[0084]
在实际测试中,本实施例对1/4和1/8的数据进行标记,所达到的理想平均交集为
79.0%和81.8%,证明了本实施例的有效性。
[0085]
在一些可选择的实施例中,在方框图中提到的功能/操作可以不按照操作示图提到的顺序发生。例如,取决于所涉及的功能/操作,连续示出的两个方框实际上可以被大体上同时地执行或所述方框有时能以相反顺序被执行。此外,在本发明的流程图中所呈现和描述的实施例以示例的方式被提供,目的在于提供对技术更全面的理解。所公开的方法不限于本文所呈现的操作和逻辑流程。可选择的实施例是可预期的,其中各种操作的顺序被改变以及其中被描述为较大操作的一部分的子操作被独立地执行。
[0086]
此外,虽然在功能性模块的背景下描述了本发明,但应当理解的是,除非另有相反说明,所述的功能和/或特征中的一个或多个可以被集成在单个物理装置和/或软件模块中,或者一个或多个功能和/或特征可以在单独的物理装置或软件模块中被实现。还可以理解的是,有关每个模块的实际实现的详细讨论对于理解本发明是不必要的。更确切地说,考虑到在本文中公开的装置中各种功能模块的属性、功能和内部关系的情况下,在工程师的常规技术内将会了解该模块的实际实现。因此,本领域技术人员运用普通技术就能够在无需过度试验的情况下实现在权利要求书中所阐明的本发明。还可以理解的是,所公开的特定概念仅仅是说明性的,并不意在限制本发明的范围,本发明的范围由所附权利要求书及其等同方案的全部范围来决定。
[0087]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
[0088]
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。
[0089]
以上是对本发明的较佳实施进行了具体说明,但本发明并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做出种种的等同变形或替换,这些等同的变形或替换均包含在本技术权利要求所限定的范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1