一种混合工业零件缺陷检测算法的制作方法

文档序号:31868903发布日期:2022-10-21 17:53阅读:124来源:国知局
一种混合工业零件缺陷检测算法的制作方法

1.本发明涉及工业零件检测技术领域,更具体而言,涉及一种混合工业零件缺陷检测算法。


背景技术:

2.传统工业零件缺陷智能缺陷检测与定位算法主要有基于传统图像处理算法的权限检测和得益于深度学习加持的基于神经网络的缺陷检测算法,目前的智能检测算法虽然相比以往有了长足进步但是对复杂的工业场景仍然力不从心,还存在如下问题亟待解决:一、实际工业生产中缺陷情况复杂,通常较小且形态多样,难以用固定的模式去描述缺陷;二、缺陷在实际情况中发生几率较小,工件数据集具有高度偏向性,正常样本极多,异常样本较少;三、准确率较高的模型通常体量过大,难以部署,且检测耗时可能过长。
3.目前深度学习加持的无监督工业零件缺陷检测算法主要有基于重建和基于分布两类分支。基于重建的方法被广泛应用于异常检测和定位,此类方法使用自编码器(ae)、变分自编码器(vae)、生成对抗网络(gan),将这样的网络训练成仅重建正常训练图像,因此其对于异常图像无法良好的重建,并利用重建的误差作为异常得分。然而单纯的重构方法没有关注过多的上下文语义特征,在针对结构简单的异常图像也能得到良好效果。基于分布的方法能够提取描述整个图像的有意义的特征并针对特征的分布学习并记录,从而在异常检测是能够检测出分布外的异常。但是此类方法通常模型复杂,缺乏可解释性,且通常提取出的特征不能够良好全面描述图像。


技术实现要素:

4.为了解决上述技术问题,本发明提供一种混合工业零件缺陷检测算法,本发明解决了基于重建的方法缺乏上下文语意特征的情况且避免了通常的基于重建的方法模型复杂,可解释性弱的弊端。
5.为解决上述技术问题,本发明采用的技术方案为:
6.一种混合工业零件缺陷检测算法,包括以下步骤:
7.s1:采集工业生产线上的零件样本数据并处理构建训练集;
8.s2:输入数据,训练自监督借口任务模块;
9.s3:训练图像重建模块;
10.s4:复用图像重建模块中encoder部分已经训练好的cnn模块,提取并保存正常样本的参数特征;
11.s5:输入测试样本数据,通过图像重建模块并利用gmsd方法得到重建模块缺陷特征图;
12.s6:提取测试样本特征,对比已保存的正常样本参数特征,得到参数指导模块缺陷特征图;
13.s7:加权得到最终缺陷特征图,根据实际预设阈值判断后得到最终结论。
14.优选的,所述步骤s1具体为:采集标准工业生产线上需要检查的样本在同样的条件下拍摄的图像数据,将所述图像数据作为数据集;对所述数据集进行分割标注,并分为训练样本集和测试样本集,所述训练样本集中仅包括没有缺陷的正样本。
15.优选的,所述步骤s2中所述训练自监督借口任务模块具体为:将输入的所述训练样本数据先进行处理再输入图像重建模块中进行训练;
16.随机选择部分区域在输入图像中设置为零,并由训练好的网络进行重新绘制,从图像中采样并移除若干连通区域,首先将输入图像分割成大小为k的正方形的区域来移除一组像素来改变输入图像,每个所述图像是一个尺寸为的网格,其中w和h是图像的宽度和高度,每个网格单元是k
×
k个像素的方格,图像的尺寸为k的倍数,所述网格被随机划分为n个互不相交的集合si,每个所述集合包含个网格元素,其中每个给定的集合si包含大约总像素个数的因此,可以通过分别设置超参数k和n,可以控制去除区域的大小和占比数量,针对输入图像的去除部分si,生成与输入图像i相同宽度和高度的掩码掩码为二进制掩码,其中属于集合si的被去除的部分用0表示,其余部分用1表示,不断训练网络,使得网络能够良好的重构被设置为0的区域,网络通过重构每个抹去的集合si,i∈{1,2,

,n}来重构整个图像,所有属于集合si,i∈ {1,2,

,n}的区域的并集覆盖了整个图像;
[0017][0018]
网络将掩码后的一组图像作为网络的输入,网络对每个图像的缺失部分进行绘制,最终图像ir由重绘制的部分加和生成;
[0019][0020]
在每个部分重建图像中,通过将乘以将不属于si的区域设置为零,因此,每个只贡献在输入时被移除的部分,即属于si的区域。
[0021]
优选的,所述步骤s3中,所述训练图像重建模块包括去除针对于分割任务的输出层,仅保留特征提取和特征重建的部分的u-net。
[0022]
优选的,损失函数监督训练采取结构化相似度ssim结合梯度幅度相似性偏差gmsd作为损失并加上l1损失进行正则化处理:
[0023]
l=λgl
gmsd
+λsl
ssim
+λ1l1[0024]
l
ssim
=1-ssim(i,ir)
[0025]
l
gmsd
=1-gmsd(i,ir)
[0026]
所述结构化相似度ssim具体为:
[0027][0028]
所述梯度幅度相似性偏差gmsd具体为:
[0029][0030][0031]
其中

代表卷积操作,h
x
与hy代表prewitt边缘算子,使用其他边缘算子 sobel算子或scharr算子得到的结果类似。
[0032][0033]
优选的,所述的损失函数采用gmsd方法获取做判断用的缺陷特征图,具体为:对于一个训练好的网络,将正常样本和异常样本输入经过子集划分扣去掩码区域再进行重建后得到重建后的图像,通过对比重建图像ir与原始图像i来计算像素和图像级别上的异常分数;对gmsd处理后的特征图进行均值滤波卷积后处理,并从1矩阵中减去,使异常特征图g(ir,i)∈[0,1]h×w[0034][0035]
其中

代表卷积操作,代表大小为sf的用于平滑的均值滤波器。
[0036]
优选的,引入参数指导模块,所述参数指导模块利用cnn模块进行特征提取工作,通过对所有正常的模式样本提取特征,学习到正常样本的分布特征并记录下来形成记忆模块,在之后的每一次缺陷检测推断过程中利用同样的cnn 提取特征后得到待检测样本的分布,并与记忆模块中学习到的特征进行对比。
[0037]
优选的,首先从n幅正常图像模式样本中计算各个块位置的向量得到向量集所述x
ij
符合多元高斯分布其中μ
ij
是x
ij
的样本均值,样本协方差∑
ij
可以用如下形式进行估计:
[0038][0039]
优选的,图像异常分数得到方式具体为:
[0040]
对于图像重建模块,在运行过程中首先会经过自监督图像重绘制过程,之后针对输入样本i和重建样本ir利用所述的gmsd方法生成缺陷特征图g(ir,i),
[0041]
对于参数指导模块,在进行检测时,首先对于待检测的图像的各个块提取出特征向量,并利用马氏距离m(x
ij
)来给出(i,j)处的异常分数,m(x
ij
)可以解释为某一块的特征向量x
ij
与学习到的分布之间的距离,其中m(x
ij
)计算如下:
[0042][0043]
块的马氏距离矩阵组合而成的矩阵m=(m(x
ij
))
1《i《w,1《j《h
为整个测试图像的异常分数;
[0044]
最后,利用参数指导模块生成的异常分数结合异常重建网络生成的异常特征图加权组合而成最终的图像异常分数
[0045]
其中∈m和∈g为对应的权重组合。
[0046]
本发明与现有技术相比,具有的有益效果是:
[0047]
1、本发明所提到的算法参考基于重建的缺陷检测方案思路,重新设计了缺陷检测的特征提取部分,利用自监督方法中的重绘制借口任务,训练重建模块,得到能够良好提取上下文特征的编码器,解决了基于重建的方法缺乏上下文语意特征的情况。
[0048]
2、本发明在此基础上复用编码器部分提取特征并设计分布参数指导模块,提升了整体算法模型的检测准确度,同时复用编码器部分解决了通常的基于重建的方法模型复杂,可解释性弱的弊端。
附图说明
[0049]
图1为本发明的总体流程图;
[0050]
图2为本发明中深度学习模型系统的模块说明图。
具体实施方式
[0051]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围,
[0052]
如图1-2所示,一种混合工业零件缺陷检测算法,包括:
[0053]
步骤s1:采集工业生产线上的零件样本数据并处理构建训练集。的采集样本数据并处理构建数据集,具体来说是采集标准工业生产线上需要检查的样本在同样的条件下拍摄的图像数据。之后将这些数据集进行分割标注,分为训练样本集和测试样本集,其中训练样本仅包括没有缺陷的正样本。
[0054]
步骤s2:输入数据,训练自监督借口任务模块。步骤s2具体包括指将输入的训练样本数据先进行处理再输入利用图像重建模块中借助其进行重建训练的数据先行处理部分具体来说是将输入的样本数据按照下述的方法进行处理。随机选择部分区域在输入图像中设置为零,并由训练好的网络进行重新绘制,从图像中采样并移除若干连通区域。
[0055]
具体来说,步骤s2.1:首先将输入图像分割成大小为k的正方形的区域来移除一组像素来改变输入图像。每个图像可以认为是一个尺寸为的网格,其中w和h是图像的宽度和高度,每个网格单元是k
×
k个像素的方格。图像被调整成尺寸可以被k整除的大小。网格被随机划分为n个互不相交的集合si,每个集合包含个网格元素,其中
每个给定的集合si包含大约总像素个数的因此,可以通过分别设置超参数k和n,可以控制去除区域的大小和占比数量。针对输入图像的去除部分si,生成与输入图像i相同宽度和高度的掩码为二进制掩码,其中属于集合si的被去除的部分用0表示,其余部分用1表示。
[0056]
步骤s2.2:对于步骤s2.1中处理完成的部分,将其作为输入数据输入网络中,不断训练网络,使得网络能够良好的重构被设置为0的区域。
[0057]
步骤s3:训练图像重建模块。步骤s3具体来说训练数据来自监督借口任务中的数据,所训练的模型来源于u-net网络模型的改进。
[0058]
的u-net网络模型的改进具体来说,指的是去除u-net网络模型中针对于分割任务的输出层,仅保留u-net中特征提取和特征重建的部分作为自监督重绘制借口任务后的重建网络模块。u-net中的跳跃链接是的重建模块能够准确地重建细节,满足工业零件缺陷检测的需要。
[0059]
此外,步骤s3中训练图像重建模块还需要确定此模块的损失函数,具体来说,此模块的损失函数定义如下:
[0060]
此部分网络模型训练损失函数为结构化相似度ssim和梯度幅度相似性偏差gmsd并加上l1损失进行正则化处理的结合体。在图像处理领域,结构化相似度ssim和梯度幅度相似性偏差gmsd是能够反应图像结构化信息。ssim在图像的亮度,对比度和结构三个维度进行对比而梯度幅值能够反映结构信息。为了使重建区域和属于原始图像的区域之间的结构差异受到惩罚的损失,最终采取 ssim结合gmsd作为损失并加上l1损失进行正则化处理。
[0061]
l=λgl
gmsd
+λsl
ssim
+λ1l1[0062]
l
ssim
=1-ssim(i,ir)
[0063]
l
gmsd
=1-gmsd(i,ir)
[0064]
其中结构化相似度ssim具体为:
[0065][0066]
梯度幅度相似性偏差gmsd具体为:
[0067][0068][0069]
其中

代表卷积操作,h
x
与hy代表prewitt边缘算子,使用其他边缘算子 sobel算子或scharr算子得到的结果类似。
[0070][0071]
步骤s4:复用图像重建模块中encoder部分已经训练好的cnn模块,提取并保存正
常样本的参数特征。
[0072]
步骤s4详细来说,为了学习(i,j)位置的正常图像特征分布,首先从n幅正常图像模式样本中计算各个块位置的向量得到向量集假设x
ij
是符合多元高斯分布其中μ
ij
是x
ij
的样本均值,样本协方差σ
ij
可以用如下形式进行估计:
[0073][0074]
其中,正则化项∈i使样本协方差矩阵∑
ij
满秩且可逆,每个块的位置通过高斯参数矩阵与多元高斯分布相关联。由于嵌入向量携带来自不同语义层次的信息,每个估计的多元高斯分布也捕获了来自不同层次的信息,且∑
ij
包含层间相关信息。这样的方法能够得到良好描述的正常样本分布信息,仅仅需要一次计算就能得到高斯参数矩阵,存储之后后面的每一次推断都不需要对其再次计算。
[0075]
步骤s5:输入测试样本数据,通过图像重建模块并利用gmsd方法得到重建模块缺陷特征图。所属步骤s5具体来说通过图像重建模块并利用gmsd方法得到缺陷特征图。另外,由于异常往往占据更大的空间连通区域,重构误差可以在更大的区域上聚合。为了实现更准确的异常检测,需要对gmsd处理后的特征图进行均值滤波卷积后处理,并从1矩阵中减去,使异常特征图g(ir,i)∈ [0,1]h×w,如下:
[0076][0077]
其中

代表卷积操作,代表大小为sf的用于平滑的均值滤波器。平滑提高了在小区域中存在高gmsd值时的检测鲁棒性,这些小区域很大概率是由于非异常小区域重建不良或背景噪声,而不是实际异常而导致的。
[0078]
步骤s6:提取测试样本特征,对比已保存的正常样本参数特征得到参数指导模块缺陷特征图。步骤s6具体来说,的复用图像重建模块中encoder部分已经训练好的cnn模块提取测试样本特征,对比已保存的正常样本参数特征得到参数指导模块缺陷特征图。
[0079]
在进行检测时,首先对于待检测的图像的各个块提取出特征向量,并利用马氏距离m(x
ij
)来给出(i,j)处的异常分数,m(x
ij
)可以解释为某一块的特征向量 x
ij
与学习到的分布(即正常样本参数特征)之间的距离,其中m(x
ij
) 计算如下:
[0080][0081]
所有块的马氏距离矩阵就可以组合而成的矩阵m=(m(x
ij
))
1《i《w,1《j《h
就是整个测试图像的异常分数,高分区域代表分布相差较大的部分,极大可能性是异常部分,反之低分区域则是和正常分布很像的区域。
[0082]
步骤s7:加权得到最终缺陷特征图,根据实际预设阈值判断后得到最终结论。步骤s7具体来说是加权合成两部分缺陷特征图(步骤s5得到的重建模块缺陷特征图和所属步骤s6得到的参数指导模块缺陷特征图),并根据实际预设阈值判断后得到最终结论。
[0083]
具体来说是利用参数指导模块生成的异常分数结合异常重建网络生成的异常特征图加权组合而成最终的图像异常分数其中∈m和∈g为对应的权重组合。在实际生产的过程中结合实际系统所需要的对于异常的敏感性设置阈值,根据阈值可以划分出缺陷图像中带有缺陷的部分。
[0084][0085]
上面仅对本发明的较佳实施例作了详细说明,但是本发明并不限于上述实施例,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化,各种变化均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1