一种增强神经网络特征多样性的缺陷检测方法及系统

文档序号:31634156发布日期:2022-09-24 03:00阅读:54来源:国知局
一种增强神经网络特征多样性的缺陷检测方法及系统

1.本发明属于缺陷检测相关技术领域,更具体地,涉及一种增强神经网络特征多样性的缺陷检测方法及系统。


背景技术:

2.在基于神经网络的特征处理方法中,为保证特征的多样性,先后提出了多种特征处理方案,如pspnet中的金字塔池化模型,spnet中的条形池化模型,deeplab中的空洞卷积以及fcn中的跳跃连接。
3.上述方法从不同的角度设计特征提取模块从而获取多样化的特征,进而增强模型对于不同尺度、形状的缺陷检测能力。然而,上述方法均未给出如何保证模型在训练过程中,不同特征处理方式得到的特征之间的差异性。中国专利cn111932541a,公开了一种保证特征多样性的方法,其方法是通过构建特征差异性损失函数度量影像组学特征与深度学习特征之间的差异,但该方法是度量神经网络提取特征与手工设计特征之间的差异,所以其不能用于衡量神经网络中不同方法提取到特征之间的差异,不能衡量特征之间的相似性,进而使得部分特征被过滤,细微特征区别被抹除,不能精确反应特征的原始形貌。基于此,亟需设计出能够提取到不同特征的神经网络模块,和衡量不同模块提取到特征之间差异性的损失函数,进而得到更为多样的特征。


技术实现要素:

4.针对现有技术的以上缺陷或改进需求,本发明提供了一种增强神经网络特征多样性的缺陷检测方法及系统,本技术设计出一种能够提取到不同特征的神经网络模块,和衡量不同模块提取到特征之间差异性的损失函数,进而获得更为多样的图像特征,降低了特征冗余,提升模型对缺陷图像的检测精度。
5.为实现上述目的,按照本发明的一个方面,提供了一种增强神经网络特征多样性的缺陷检测方法,所述方法包括:s1:将待检测图像输入第一神经网络特征提取模块和第二神经网络提取模块,以提取不同维度的图像缺陷特征,其中,所述第一种神经网络特征提取模块由基于卷积核组中的一种或多种卷积核构建,所述第二种神经网络特征提取模块由基于卷积核组中的另外一种或多种卷积核构建,所述卷积核组包括对角卷积核、水平卷积核、竖直卷积核和普通卷积核;s2:采用特征差异性损失函数计算所述第一种神经网络特征提取模块和第二种神经网络特征提取模块提取得到的图像缺陷特征的差异性损失,其中,所述差异性损失函数与所述两种神经网络特征提取模块的输出结果的差的平方或范数或散度成反比;s3:基于分割损失和所述差异性损失的加权构建训练函数;s4:采用所述训练函数对所述第一种神经网络特征提取模块、第二种神经网络提取模块、以及第一种神经网络特征提取模块和第二种神经网络提取模块提取的图像缺陷特征的融合解码过程进行训练,直至收敛,得到缺陷图像。
6.优选地,所述第一种神经网络特征提取模块包括多个边缘感知子模块,其中,相邻
两边缘感知子模块之间设有最大池化层,以对前一边缘感知子模块的输出结果进行降维。
7.优选地,当所述边缘感知子模块包括一种卷积核时,所述边缘感知子模块包括多个相连的第一卷积单元,每个第一卷积单元依次包括卷积核、批归一化层以及激活层;当所述边缘感知子模块包括多种卷积核时,所述边缘感知子模块包括多个通道,每个通道包括一种卷积核对应的第一卷积单元。
8.优选地,所述第二种神经网络特征提取模块包括多个组合卷积子模块,其中,相邻两组合卷积子模块之间设有最大池化层,以对前一组合卷积子模块的输出结果进行降维。
9.优选地,当所述组合卷积子模块包括一种卷积核时,所述组合卷积子模块包括多个相连的第二卷积单元,每个第二卷积单元依次包括卷积核、批归一化层以及激活层;当所述组合卷积子模块包括多种卷积核时,所述组合卷积子模块包括多个通道,每个通道包括一种卷积核对应的第二卷积单元。
10.优选地,所述特征差异性损失函数loss
diff
的计算式为:
[0011][0012]
其中,n为一个批次中输入网络中的图像个数,b为输入网络中的第b个图像,α为调节参数,f1为第一种神经网络特征提取模块输出的缺陷特征提取结果,f2为第二种神经网络特征提取模块输出的缺陷特征提取结果;
[0013]
或者为:
[0014][0015]
其中,|| ||f为f范数,β为调节参数,n为一个批次中输入网络中的图像个数,b为输入网络中的第b个图像,f1为第一种神经网络特征提取模块输出的缺陷特征提取结果,f2为第二种神经网络特征提取模块输出的缺陷特征提取结果;
[0016]
或者为:
[0017][0018]
其中,kld为kl散度;γ为调节参数。
[0019]
优选地,所述训练函数loss为:
[0020]
loss=λloss
diff
+νloss
seg
ꢀꢀꢀ
(4)
[0021][0022]
其中,loss
diff
为特征差异性损失函数,loss
seg
为交叉熵损失函数对应的分割损失,λ和ν为权重系数,yi为图像xi真实的标签图像,1预测为缺陷区域,0预测为非缺陷区域,表示模型对样本xi预测的结果,其取值在(0,1)范围内。
[0023]
优选地,采用adam优化算法对所述训练函数进行优化,以使模型收敛。
[0024]
按照本发明的另一个方面,提供了一种增强神经网络特征多样性的缺陷检测系统,所述系统包括:图像缺陷特征提取模块,用于将待检测图像输入第一神经网络特征提取模块和第二神经网络提取模块,以提取不同维度的图像缺陷特征,其中,所述第一种神经网络特征提取模块由基于卷积核组中的一种或多种卷积核构建,所述第二种神经网络特征提
取模块由基于卷积核组中的另外一种或多种卷积核构建,所述卷积核组包括对角卷积核、水平卷积核、竖直卷积核和普通卷积核;差异性损失计算模块,用于采用特征差异性损失函数计算所述第一种和第二种神经网络特征提取模块提取到的图像缺陷特征之间的差异性,其中,所述差异性损失函数与所述第一种和第二种神经网络特征提取模块的输出结果的差的平方或范数或散度成反比;训练函数构建模块:用于基于分割损失和所述差异性损失的加权构建训练函数;训练生成模块:用于采用所述训练函数对所述第一种神经网络特征提取模块、第二种神经网络特征提取模块、以及第一种神经网络特征提取模块和第二种神经网络特征提取模块提取的图像缺陷特征的融合解码过程进行训练,直至收敛,得到缺陷图像。
[0025]
总体而言,通过本发明所构思的以上技术方案与现有技术相比,本发明提供的一种增强神经网络特征多样性的缺陷检测方法及系统具有如下有益效果:
[0026]
1.本技术通过多种卷积核获取图像中缺陷的多维度特征,并采用特定特征差异性损失函数保证多维度特征的差异性保持,进而获取更为多样的特征,让不同模块提取得到的深度学习特征之间保持差异性,降低特征冗余,从而提升模型的检测精度,进而提高缺陷图像的检测精度,更能真实的反应缺陷的原始形貌。
[0027]
2.本技术的特征差异性损失函数与特征之间的差异成反比,进而可以最大化特征之间的差异,使得模型提取到的缺陷特征更加丰富,从而使得网络进行的缺陷检测更能符合真实缺陷形貌,检测精度更高。
[0028]
3.模型训练过程中加入了交叉熵损失函数可以对模型的预测性能进行度量,并采用adam优化算法进行了优化,进而可以得到检测精度高的模型,进而提高缺陷图像的检测精度。
附图说明
[0029]
图1是本技术实施例增强神经网络特征多样性的缺陷检测方法的流程图;
[0030]
图2是本技术实施例卷积核组的类型示意图,其中,(a)为对角卷积核,(b)为水平卷积核,(c)为竖直卷积核,(d)为普通卷积核;
[0031]
图3是本技术实施例边缘感知子模块和组合卷积子模块的结构示意图;
[0032]
图4是本技术实施例增强神经网络特征多样性的缺陷检测的网络架构;
[0033]
图5是本技术实施例在有无特征差异性损失约束下,两组特征之间的差异大小;其中,含特征差异性损失为计算特征差异损失且将该损失作为总损失的一部分;不含特征差异性损失为计算特征差异损失但不将该损失作为总损失的一部分。
具体实施方式
[0034]
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
[0035]
请参阅图1,本发明提供了一种增强神经网络特征多样性的缺陷检测方法,所述方法包括:
[0036]
s1:将待检测图像输入第一神经网络特征提取模块和第二神经网络提取模块,以提取不同维度的图像缺陷特征,其中,所述第一种神经网络特征提取模块由基于卷积核组中的一种或多种卷积核构建,所述第二种神经网络特征提取模块由基于卷积核组中的另外一种或多种卷积核构建,所述卷积核组包括对角卷积核、水平卷积核、竖直卷积核和普通卷积核,如图2所示。
[0037]
构建具有边缘感知的特征提取模块,该模块与图像处理中提取边缘特征的sober算子相似,与之不同之处在于,该模块中各权重值可学习。
[0038]
本实施例中第一种神经网络特征提取模块基于水平卷积核和竖直卷积核进行构建,进而对缺陷图像进行处理后获取反应水平和竖直方向特征的深度学习特征组f1。
[0039]
所述第一种神经网络特征提取模块包括多个边缘感知子模块,其中,相邻两边缘感知子模块之间设有最大池化层,对前一边缘感知子模块的输出结果进行降维。例如,可以使用大小为2
×
2的最大值池化层进行降维。
[0040]
当所述边缘感知子模块包括一种卷积核时,所述边缘感知子模块包括多个相连的第一卷积单元,每个第一卷积单元依次包括卷积核、批归一化层以及激活层。当所述边缘感知子模块包括多种卷积核时,所述边缘感知子模块包括多个通道,每个通道包括一种卷积核对应的第一卷积单元。本实施例中,每个边缘感知子模块内包括两个通道,如图3中的(a)所示,一个通道由水平卷积核构成,包含堆叠的多个3
×
3水平边缘感知卷积层、批量归一化层和relu激活层;另一个通道由竖直卷积核构成,同样包括堆叠的多个3
×
3竖直边缘感知卷积层、批量归一化层和relu激活层。将两个子通道特征相加或连接为一组后输入到下一个边缘感知子模块,最后一个边缘感知子模块的输出的图像缺陷特征记为f1。
[0041]
在其他优选的实施方式中,可以借鉴其他神经网络特征提取方法,如采用残差连接的方式将子模块的输入和输出相加,或者采用类似dense连接的方法,分离卷积的方法等。
[0042]
本实施例中第二种神经网络特征提取模块基于对角卷积核和普通卷积核进行构建,进而对缺陷图像进行处理后获得反应整体信息和对角信息的深度学习特征组。
[0043]
所述第二种神经网络特征提取模块包括多个组合卷积子模块,其中,相邻两组合卷积子模块之间设有最大池化层,以对前一组合卷积子模块的输出结果进行降维,例如使用大小为2
×
2的最大值池化层进行降维。
[0044]
当所述组合卷积子模块包括一种卷积核时,所述组合卷积子模块包括多个相连的第二卷积单元,每个第二卷积单元依次包括卷积核、批归一化层以及激活层。当所述组合卷积子模块包括多种卷积核时,所述组合卷积子模块包括多个通道,每个通道包括一种卷积核对应的第二卷积单元。本实施例中,每个组合卷积子模块内包括两个通道,如图3中的(b)所示,一个通道由对角卷积核构成,包含堆叠的多个3
×
3对角卷积核感知卷积层、批量归一化层和relu激活层,另一个通道由普通3
×
3卷积核构成,同样包含堆叠的多个3
×
3普通卷积层,批量归一化层和relu激活层,将两个子通道特征相加或连接为一组输入到下一个组合卷积子模块,最后一个组合卷积子模块的输出的图像缺陷特征记为f2。
[0045]
在其他优选的实施方式中,可以借鉴其他神经网络特征提取方法,如采用残差连接的方式将子模块的输入和输出相加,或者采用类似dense连接的方法,分离卷积的方法等。
[0046]
s1中的四种卷积核之间任一种组合均可构成一种子模块,从而获取具有不同信息的深度学习特征组。如水平卷积核与对角卷积核相组合,甚至单独的水平卷积核与单独的对角卷积核。
[0047]
s2:采用特征差异性损失函数计算所述第一种神经网络特征提取模块和第二种神经网络特征提取模块提取到的图像缺陷特征之间的差异性损失,其中,所述差异性损失函数与所述两种神经网络特征提取模块的输出结果的差的平方或范数或散度成反比。
[0048]
在通过不同特征提取方式获得两组深度学习特征后,为了避免两组特征在不断的迭代学习过程中趋于相似,提出了一种应用于深度学习提取特征的特征差异性损失函数,该特征差异性损失函数可以保证两组特征之间的差异性尽量大,以减少特征冗余,如图4所示。
[0049]
所述特征差异性损失函数loss
diff
的计算式为:
[0050][0051]
其中,n为一个批次中输入网络中的图像个数,b为输入网络中的第b个图像,α为调节参数,f1为第一种神经网络特征提取模块输出的缺陷特征提取结果,f2为第二种神经网络特征提取模块输出的缺陷特征提取结果;
[0052]
或者为:
[0053][0054]
其中,|| ||f为f范数,β为调节参数,n为一个批次中输入网络中的图像个数,b为输入网络中的第b个图像,f1为第一种神经网络特征提取模块输出的缺陷特征提取结果,f2为第二种神经网络特征提取模块输出的缺陷特征提取结果;
[0055]
或者为:
[0056][0057]
其中,kld为kl散度;γ为调节参数。
[0058]
s3:基于分割损失和所述差异性损失的加权构建训练函数;
[0059]
所述训练函数loss为:
[0060]
loss=λloss
diff
+vloss
seg
ꢀꢀꢀ
(4)
[0061][0062]
其中,loss
diff
为特征差异性损失函数,loss
seg
为交叉熵损失函数对应的分割损失,λ和ν为权重系数,yi为图像xi真实的标签图像,1预测为缺陷区域,0预测为非缺陷区域,表示模型对样本xi预测的结果,其取值在(0,1)范围内。
[0063]
在进一步优选的方案中,采用adam优化算法对所述训练函数进行优化,以使模型收敛。
[0064]
将如公式(1)~(3)所示的特征差异性损失函数用于度量两组不同的深度学习特征f1~f2之间的差异,当两种特征差异性很大时,则损失函数产生很小的损失值,当两种特征相似时,损失函数将产生较大的损失值,则说明所提取的特征冗余度太高,需要继续对模
竖直边缘感知卷积层,批量归一化层和relu激活层。将两个子通道特征相加为一组后输入到下一个边缘感知子模块,经过5次边缘感知子模块和最大值池化处理后,最后一个边缘感知子模块的输出特征记为f1。
[0079]
步骤4:构建第二种神经网络特征提取模块,基于对角卷积核和普通卷积核进行构建,进而获得反应整体信息和对角信息的深度学习特征组。
[0080]
仅采用边缘感知子模块提取到的特征信息是缺失的,为此本发明进一步引入了由对角信息提取核和普通卷积核组成的组合卷积子模块。
[0081]
所述第二种神经网络特征提取模块包括多个组合卷积子模块,其中,相邻两组合卷积子模块之间设有最大池化层,对前一组合卷积子模块的输出结果进行降维,例如使用大小为2
×
2的最大值池化层进行降维。
[0082]
当所述组合卷积子模块包括两种卷积核时,所述组合卷积子模块包括两个通道,每个通道包括一种卷积核对应的第二卷积单元,具体的每个组合卷积子模块内部包含两个通道,一个通道由对角卷积核构成,包含堆叠的多个3
×
3对角卷积核感知卷积层、批量归一化层和relu激活层,另一个通道由普通3
×
3卷积核构成,同样包含堆叠的多个3
×
3普通卷积层,批量归一化层和relu激活层,将两个子通道特征组合并利用1
×
1卷积融合为一组后输入到下一个组合卷积子模块,经过5次组合卷积子模块和最大值池化处理后,最后一个组合卷积子模块的输出特征记为f2。
[0083]
步骤5:两组深度学习特征之间的差异特征性学习。
[0084]
在通过不同特征提取方式获得两组深度学习特征后,为了避免两组特征在不断的迭代学习过程中趋于相似,提出一种应用于深度学习提取特征的特征差异性损失,该损失保证两组特征之间的差异性尽量大,以减少特征冗余。
[0085]
本实施例,所述特征差异性损失函数loss
diff
的计算式为:
[0086][0087]
将如公式(1)所示的特征差异性损失函数用于度量两组不同的深度学习特征f1和f2之间的差异。当两种特征差异性很大时,则损失函数产生很小的损失值,当两种特征相似时,损失函数将产生较大的损失值,图5所示。
[0088]
观察图5可以发现,在引入特征差异性损失后,f1和f2的相似性随着训练过程逐渐降低,而未引入特征差异性损失,f1和f2的相似性逐渐增大。
[0089]
步骤6:基于融合特征的工件表面缺陷检测。
[0090]
对步骤3和步骤4得到的两组不同的深度学习特征f1和f2,采用步骤5所提出的特征差异性损失函数对两种特征的差异性进行约束,将f1和f2连接为一组特征并融合后,上采样并解码得到预测出的缺陷图像。
[0091]
其中,解码器选择vgg块与上采样交叉使用的方式解码得到最终的预测缺陷图像。
[0092]
在模型训练时,使用交叉熵损失函数进行加权求和,作为最终的训练函数对模型进行训练,如下:
[0093]
所述训练函数loss为:
[0094]
loss=λloss
diff
+vloss
seg
ꢀꢀꢀ
(4)
[0095]
[0096]
其中,loss
diff
为特征差异性损失函数,loss
seg
为交叉熵损失函数对应的分割损失,λ和ν为权重系数,yi为图像xi真实的标签图像,1预测为缺陷区域,0预测为非缺陷区域,表示模型对样本xi预测的结果,其取值在(0,1)范围内。
[0097]
最后,采用adam优化算法对所述训练函数进行优化,以使模型收敛。
[0098]
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1