CN116596851A - 一种基于知识蒸馏和异常模拟的工业瑕疵检测方法 - Google Patents
一种基于知识蒸馏和异常模拟的工业瑕疵检测方法 Download PDFInfo
- Publication number
- CN116596851A CN116596851A CN202310439275.4A CN202310439275A CN116596851A CN 116596851 A CN116596851 A CN 116596851A CN 202310439275 A CN202310439275 A CN 202310439275A CN 116596851 A CN116596851 A CN 116596851A
- Authority
- CN
- China
- Prior art keywords
- teacher
- student network
- image
- flaw
- asymmetric
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 42
- 238000013140 knowledge distillation Methods 0.000 title claims abstract description 39
- 238000004088 simulation Methods 0.000 title claims abstract description 34
- 238000012549 training Methods 0.000 claims abstract description 64
- 230000011218 segmentation Effects 0.000 claims abstract description 29
- 238000004364 calculation method Methods 0.000 claims abstract description 6
- 230000004927 fusion Effects 0.000 claims description 30
- 230000002159 abnormal effect Effects 0.000 claims description 28
- 238000000034 method Methods 0.000 claims description 23
- 238000010586 diagram Methods 0.000 claims description 19
- 238000004422 calculation algorithm Methods 0.000 claims description 13
- 238000005070 sampling Methods 0.000 claims description 11
- 238000004821 distillation Methods 0.000 claims description 7
- 230000008569 process Effects 0.000 claims description 7
- 230000008014 freezing Effects 0.000 claims description 6
- 238000007710 freezing Methods 0.000 claims description 6
- 238000005457 optimization Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 claims description 4
- 238000012360 testing method Methods 0.000 claims description 4
- 230000006378 damage Effects 0.000 claims description 3
- 238000009499 grossing Methods 0.000 claims description 3
- 230000004807 localization Effects 0.000 claims description 3
- 230000000873 masking effect Effects 0.000 claims description 3
- 230000000116 mitigating effect Effects 0.000 claims description 3
- 238000010606 normalization Methods 0.000 claims description 3
- 230000003287 optical effect Effects 0.000 claims description 3
- 230000009466 transformation Effects 0.000 claims description 3
- 230000006870 function Effects 0.000 description 7
- 230000005856 abnormality Effects 0.000 description 5
- 230000007547 defect Effects 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000012770 industrial material Substances 0.000 description 1
- 238000011423 initialization method Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0004—Industrial image inspection
-
- G06T5/70—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
- G06V10/806—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of extracted features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于知识蒸馏和异常模拟的工业瑕疵检测方法。本发明方法包括构建目标工业产品的表面图像的训练样本,搭建基于多尺度特征知识蒸馏的师生网络编码器,对师生网络编码器进行多尺度特征知识蒸馏训练;通过异常模拟策略生成伪瑕疵样本,搭建非对称U型师生网络,利用伪瑕疵样本训练非对称U型师生网络;将需要检测瑕疵的工业产品的待检图像,输入完成训练的非对称U型师生网络,使用自适应图像异常得分计算方式计算图像的异常得分,完成检测瑕疵工业产品的瑕疵检测分割。本发明能够实现优异的瑕疵检测性能。
Description
技术领域
本发明属于工业图像处理的技术领域,具体涉及一种基于知识蒸馏和异常模拟的工业瑕疵检测方法。
背景技术
随着计算机视觉技术的发展以及计算机软硬件的快速升级,基于机器视觉的瑕疵检测方法取代传统低效的人工方法在工业场景中落地,实现了初步的工业质检自动化。现有技术中,以卷积神经网络为代表的深度学习技术由于其强大的特征提取和泛化能力,在各种计算机视觉任务上取得了良好表现。当前计算机视觉领域绝大多数深度学习方法都需要足量的标注数据,但在实际工业场景中,异常出现的概率通常较低,工业图像存在明显的类别不均衡,同时标注成本往往也相当昂贵,严重限制了有监督学习相关方法在工业瑕疵检测领域的发展和应用。
现有技术中采用无监督算法来避免大量标注的弊端。最具代表性的包括基于重构的无监督瑕疵检测算法,以及基于嵌入特征相似度的支持向量数据描述算法等。前者以重构正常图像为目标训练编码器-解码器,基于图像的重构误差进行瑕疵检测,后者则利用输入图像的嵌入特征相似度,使用经典的支持向量数据描述算法评估输入图像或图像块的正常性从而检出异常区域。这类方法由于无需瑕疵样本参与训练,具备较高的实用性,在一些简单数据上取得了不错的检测性能。
但随着工业材料背景的复杂化和越来越多难检瑕疵的出现,无监督学习方法由于仅从正常数据单一维度去进行特征和知识的学习,无法对正负样本进行进一步的对比和学习,在一些场景中无法保证优异的瑕疵检测性能。
发明内容
为了克服现有技术存在的一个或者多个缺陷与不足,本发明提供一种基于知识蒸馏和异常模拟的工业瑕疵检测方法,利用深度卷积神经网络的特征提取和泛化能力进行工业产品表面瑕疵检测,同时针对缺少瑕疵样本和仅利用正常图像训练的局限性,采用异常模拟策略以构造伪瑕疵样本,提高瑕疵检测性能和瑕疵定位精度,具有稳定且优异的瑕疵检测和定位效果,对不同类型工业图像的瑕疵检测具有适用性。
为了达到上述目的,本发明采用以下的技术方案。
一种基于知识蒸馏和异常模拟的工业瑕疵检测方法,包括步骤如下:
S1、构建目标工业产品的表面图像的训练样本,搭建基于多尺度特征知识蒸馏的师生网络编码器,对师生网络编码器进行多尺度特征知识蒸馏训练;
S2、通过基于柏林噪声算法的异常模拟策略生成伪瑕疵样本,搭建非对称U型师生网络,利用伪瑕疵样本计算分割损失训练非对称U型师生网络;
S3、将需要检测瑕疵的工业产品的待检图像,输入完成训练的非对称U型师生网络,得到相同尺寸的异常分数图,使用自适应图像异常得分计算方式计算图像的异常得分,完成检测瑕疵工业产品的瑕疵检测分割。
优选地,构建训练样本后搭建师生网络编码器进行训练,具体步骤如下:
S11、利用工业图像采集装置获取目标工业产品的表面图像,构建仅包含无瑕疵工业产品的正常样本图像的训练集A;
S12、搭建基于多尺度特征蒸馏的师生网络编码器;
S13、将构建的训练集A送入搭建的师生网络编码器进行训练,生成多级特征图;
S14、根据教师网络编码器生成的多级特征图、学生网络编码器生成的多级特征图,基于知识蒸馏策略,分别计算像素的多级特征知识蒸馏损失;
S15、冻结教师网络权重,使用随机梯度下降优化器对师生网络编码器进行反向迭代优化,取损失最小时的师生网络编码器为最优,并保存相应的权重参数;
进一步地,师生网络编码器由教师网络编码器、学生网络编码器组成;
教师网络编码器、学生网络编码器具有相同结构,均为ResNet18网络。
进一步地,教师网络编码器、学生网络编码器各自的多级特征图,均为ResNet18网络中的前三个残差单元的输出。
进一步地,知识蒸馏,具体过程如下:
给定训练图像I,通过教师网络编码器提取图像特征通过学生网络编码器提取图像特征/>l表示ResNet18网络中的前三个残差单元的层级,
分别对和/>做归一化处理得到:
其中,‖‖2表示向量的二范数;
设定第l层级的多级特征知识蒸馏损失为:
其中,( )ij表示多级特征图中的像素点,ωl、hl分别为第l层特征图的宽度、高度,L为特征蒸馏的网络关键层级总数,N为训练集A中正常样本图像的总数,表示二范数的平方。
进一步地,通过异常模拟策略生成伪瑕疵样本,搭建非对称U型师生网络,利用伪瑕疵样本计算分割损失训练非对称U型师生网络,具体步骤如下:
S21、基于柏林噪声算法得到目标工业产品图像的纹理性和结构性伪瑕疵样本,构建训练集D和测试集Z;
异常模拟策略为:首先利用基于晶格的柏林噪声生成算法得到噪声灰度图P,然后对噪声灰度图P进行随机旋转变换得到噪声灰度图Pt;接着通过对原始正常产品图像进行网格打乱、光学畸变、弹性拉伸中的一种或多种的结构性破坏得到异常数据源;
随后使用可控超参数阈值、透明因子,对正常产品图像和异常数据源基于噪声掩码图进行软融合得到噪声掩码前景图IM
最后将原始正常图像I与噪声掩码图MP的反转逐像素相乘,得到伪瑕疵图像IA中的正常背景,再将正常背景与噪声掩码前景图IM逐元素相加即得最终的伪瑕疵图像IA;
S22、搭建非对称U型师生网络用于瑕疵检测,非对称U型师生网络包括横向连接模块、师生网络编码器、学生网络解码器;
解码器为学生网络解码器;学生网络解码器以学生编码器网络的输出特征为输入,由若干上采样层和卷积层组成;横向连接模块以师生网络编码器中各层级的原始多尺度差分特征为输入,进行基于注意力编码、特征融合的改进,输出不同尺度的特征图并送入学生网络解码器对应层级中;学生网络解码器在上采样过程中接收来自师生网络编码器的瑕疵判别和位置信息,以便进行更精细的特征解码;
横向连接模块包括融合通道空间注意力模块、特征融合模块;融合通道空间注意力模块包括主路和支路;主路上利用3*3卷积核对横向连接模块的输入特征进行初步自我整合,将初步自我整合后的结果与支路上经过注意力编码的特征图相乘;特征融合模块根据融合通道空间注意力模块的输出,自顶向下地进行不同尺度特征的整合;非对称U型师生网络最终输出瑕疵分割预测图
S23、将训练集D送入非对称U型师生网络进行训练,非对称U型师生网络首先在师生网络编码器生成多尺度差分特征图,通过横向连接模块后导入学生网络解码器得到训练集D中输入图像的瑕疵分割预测图;
S24、根据伪瑕疵图像IA、瑕疵分割预测图,对非对称U型师生网络进行训练;
然后将原始瑕疵分割预测图Iout使用均值滤波器进行平滑处理得到Io′ut,接着对Io′ut中所有像素预测值从大到小进行排序,选择Io′ut中像素预测值前千分之一的部分,计算像素预测值的平均值作为待检图像的异常得分,根据异常得分判断图像是否存在异常,Io′ut作为瑕疵定位图;
S25、冻结师生网络编码器中教师网络编码器的权重,使用随机梯度下降优化器对搭建的非对称U型师生网络进行反向迭代优化,取损失最小时的非对称U型师生网络的权重参数为最优,以最优权重参数的非对称U型师生网络作为完成训练的非对称U型师生网络。
进一步地,软融合的计算如下式所示:
IM=δ*(B(Pt,T)⊙In)+(1-δ)*(B(Pt,T)⊙I)
其中,⊙为逐元素相乘操作,B(Pt,T)表示对Pt按照阈值T进行二值化处理得到的噪声掩模,Mp为对Pt进行二值化处理后得到的噪声掩码图Mp,In对应异常数据源的图像,I对应原始正常图像。
进一步地,伪瑕疵图像IA的计算如下式所示:
进一步地,横向连接模块的输入输出如下式所示:
其中,UpConv()表示采用上采样方式的1*1卷积级联,DIl′(l=1、2、3)表示注意力编码后的第l级差分特征,表示横向连接模块的输出。
进一步地,非对称U型师生网络的训练约束为瑕疵分割目标函数,瑕疵分割目标函数如下式所示:
Lseg=SmoothL1(·)+λfLf
其中,λf为控制两项损失比例的超参数,Lf为用于缓解类别不均衡问题使用的焦点损失,SmoothL1(·)为平滑化L1损失,平滑化L1损失如下式所示进行计算:
其中,Im、Iout分别表示真值图、预测图;
焦点损失用于优化非对称U型师生网络的性能,焦点损失如下式所示:
Lf=-(1-αt)·Im·(1-Iout)γ·log(Iout)+αt·(1-Im)·Iout γ·log(Iout)
其中,αt、γ为两个控制焦点权重的超参数,分别控制正负样本的权重、难易样本的权重。
本发明技术方案与现有技术相比,具有如下有益效果:
相比现有技术中使用正负标签数据进行器训练需要大量标注的弊端,本发明利用正常样本以异常模拟策略得到的伪瑕疵样本进行训练,实现端到端的瑕疵检测,避免了大量标注的问题;本发明在图像级别和像素级别进行瑕疵的两级分类,能够准确判断图像是否存在瑕疵的同时,对瑕疵区域进行像素级的精确定位;本发明的输入图像经过非对称U型师生网络直接得到异常分数图和异常得分,检测效率更高;本发明的知识蒸馏策略和异常模拟策略适用性强,能够实现不同领域下多种场景中的目标工业产品的瑕疵检测。
附图说明
图1为本发明一种基于知识蒸馏和异常模拟的工业瑕疵检测方法的流程示意图;
图2为本非对称U型师生网络的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及其优点更加清楚明白,以下结合附图及其实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
实施例
如图1和图2所示,本实施例的基于知识蒸馏和异常模拟的工业瑕疵检测方法,包括步骤如下:
S1、以大量正常无瑕疵的目标工业产品的表面图像作为训练样本(至少需要1000张表面图像),利用训练样本来训练师生网络编码器,训练师生网络编码器的方式为通过像素级多尺度特征知识蒸馏;
具体步骤如下:
S11、利用工业图像采集装置获取目标工业产品的表面图像,构建仅包含无瑕疵工业产品的正常样本图像的训练集A;
S12、搭建基于多尺度特征蒸馏的师生网络编码器,师生网络编码器由教师网络编码器、学生网络编码器两部分组成;本实施例优选教师网络编码器T、学生网络编码器S具有相同结构,教师网络编码器T的参数从在ImageNet数据上预训练的ResNet18网络中复制而来,在后续的训练和测试过程中始终冻结,学生网络编码器S的参数使用Kaiming初始化方法来初始化ResNet18网络;
S13、将步骤S11构建的训练集A送入步骤S12搭建的师生网络编码器进行训练,生成多级特征图,分别包括送入教师网络编码器T生成的多级特征图、送入学生网络编码器S生成的多级特征图;本实施例优选,教师网络编码器T和学生网络编码器S各自的多级特征图,均为ResNet18网络中的前三个残差单元的输出,前三个残差单元的特征通道数依次为64、128、256,前三个残差单元的特征图尺寸(宽和高)依次为输入图像尺寸(宽和高)的1/4、1/8、1/16;
S14、根据步骤S13中教师网络编码器T生成的多级特征图、学生网络编码器S生成的多级特征图,基于知识蒸馏策略,分别计算像素的多级特征知识蒸馏损失;在正常数据上的知识蒸馏,教师网络编码器T和学生网络编码器S提取到的正常数据特征应尽可能相似;知识蒸馏策略的实现过程如下:
给定训练图像I,通过教师网络编码器T提取图像特征通过学生网络编码器S提取图像特征/>t表示教师网络编码器(teachernetwork)的含义,s表示学生网络编码器的含义,l表示ResNet18网络中的前三个残差单元的层级,分别对/>和/>做归一化处理得到:
其中,‖‖2表示向量的二范数;
为使师生网络编码器的网络各层级提取到的正常数据特征尽可能相似,直接优化和/>的像素级相似度,定义第l层级的多级特征知识蒸馏损失为:
其中,( )ij表示多级特征图中的像素点,ωl、hl分别为第l层特征图的宽度、高度,L为特征蒸馏的网络关键层级总数,N为训练集A中正常样本图像的总数,表示二范数的平方;通过优化正常样本各级别特征的像素级别损失,可使得教师网络和学生网络编码器提取到的正常数据特征尽可能相似;
S15、冻结教师网络权重,使用随机梯度下降优化器对师生网络编码器进行反向迭代优化,取损失最小时的师生网络编码器为最优,并保存相应的权重参数;
S2、通过基于柏林噪声算法的异常模拟策略生成伪瑕疵样本,搭建非对称U型师生网络,利用所述伪瑕疵样本计算分割损失训练非对称U型师生网络;
具体步骤如下:
S21、基于柏林噪声算法得到目标工业产品图像的纹理性和结构性伪瑕疵样本,构建训练集D和测试集Z;
异常模拟策略为:首先利用基于晶格的柏林噪声生成算法得到噪声灰度图P,然后对噪声灰度图P进行随机旋转变换得到噪声灰度图Pt;接着通过对原始正常产品图像进行网格打乱、光学畸变、弹性拉伸中的一种或多种的结构性破坏得到异常数据源;
随后使用可控超参数阈值T、透明因子δ,对正常产品图像和异常数据源基于噪声掩码图进行软融合得到噪声掩码前景图IM,软融合的计算如下式所示:
Im=δ*(Mp⊙In)+(1-δ)*Mp⊙I)
将上式展开后,软融合的计算如下式所示:
IM=δ*(B(Pt,T)⊙In)+(1-δ)*(B(Pt,T)⊙I)
其中,⊙为逐元素相乘操作,B(Pt,)表示对Pt按照阈值T进行二值化处理得到的噪声掩模,Mp为对Pt进行二值化处理后得到的噪声掩码图Mp,In对应异常数据源的图像,I对应原始正常图像,通过软融合方式生成的伪瑕疵能够减少图像失真,提高异常模拟策略的可靠性和合理性;为能够根据实际任务需求控制模拟异常样本的具体形式,异常模拟策略引入两个超参数:可控超参数阈值T、透明因子δ;可控超参数阈值T用于噪声灰度图Pt的二值化得到噪声掩模Mp,表现为包含伪瑕疵前景形状、大小、位置等信息的黑白斑块图;透明因子δ用于控制异常数据源图像和正常产品图像的融合程度,防止直接将异常数据源图像作为伪瑕疵前景所带来的伪瑕疵样本失真;
最后将原始正常图像I与噪声掩码图Mp的反转逐像素相乘,得到伪瑕疵图像IA中的正常背景,再将正常背景与噪声掩码前景图IM逐元素相加即得最终的伪瑕疵图像IA,伪瑕疵图像IA的计算如下式所示:
S22、搭建非对称U型师生网络用于瑕疵检测,非对称U型师生网络包括横向连接模块、步骤S12搭建的师生网络编码器、学生网络解码器;
非对称U型师生网络中的编码器部分为师生网络编码器,即包括教师编码器网络T、学生编码器网络S这两个编码器网络;解码器部分为学生网络解码器,学生网络解码器以学生编码器网络S的输出特征为输入,由若干上采样层和卷积层组成,实现特征分辨率的恢复;横向连接模块以师生网络编码器中各层级的原始多尺度差分特征为输入,进行基于注意力编码、特征融合的改进,输出不同尺度的特征图并送入学生网络解码器对应层级中,学生网络解码器在上采样过程中接收来自师生网络编码器的瑕疵判别和位置信息,以便进行更精细的特征解码;
横向连接模块包括融合通道空间注意力模块、特征融合模块;融合通道空间注意力模块包括主路和支路,主路上利用3*3卷积核对横向连接模块的输入特征进行初步自我整合,将初步自我整合后的结果与支路上经过注意力编码的特征图相乘;横向连接模块的输入特征为师生网络编码器输出的原始多尺度差分特征,输入的多尺度差分特征首先经过融合通道空间注意力模块的主路,依次使用平均池化、最大池化计算通道注意力,再通过融合通道空间注意力模块的支路来编码主要关注或抑制的位置,将初步整合的特征图与经过编码后的特征图相乘,得到各个层级差分特征信息的改进;特征融合模块根据融合通道空间注意力模块的输出,自顶向下地进行不同尺度特征的整合;横向连接模块的输入输出如下式所示:
其中,UpConv()表示采用上采样方式的1*1卷积级联,DIl′(l=1、2、3)表示注意力编码后的第l级差分特征,表示横向连接模块的输出,即横向连接模块的输入DIl′(原始差分特征)在经过前述注意力编码和特征融合后得到的改进差分特征;学生网络解码器由一个1*1卷积层、一个3*3卷积层、一个上采样层组成的解码单元堆叠而成;横向连接模块的输出DI*进入学生网络解码器的对应层级特征进行通道拼接和上采样,非对称U型师生网络最终输出与输入尺寸一致的单通道特征图,也就是瑕疵分割预测图;
S23、将步骤S21中的训练集D送入步骤S22中的非对称U型师生网络进行训练,非对称U型师生网络首先在师生网络编码器生成多尺度差分特征图,通过横向连接模块后导入学生网络解码器得到训练集D中输入图像的瑕疵分割预测图;
S24、根据步骤S21中伪瑕疵图像IA、步骤S23中输出的瑕疵分割预测图,对非对称U型师生网络进行端到端的语义分割训练;
瑕疵分割训练的训练约束即为瑕疵分割目标函数,瑕疵分割目标函数如下式所示:
Lseg=SmoothL1(·)+λfLf
其中,λf为控制两项损失比例的超参数,Lf为用于缓解类别不均衡问题使用的焦点损失,Smoothl1(·)为平滑化L1损失,平滑化L1损失如下式所示进行计算:
其中,Im、Iout分别表示真值图、预测图;通过优化预测图与真值图之间的图像空间像素的相似性损失,能够使输出的预测图与真值掩码图相似,但在实际训练过程中,工业产品的表面瑕疵图像中,瑕疵前景面积与正常背景面积的比例通常极度不平衡,仅仅使用常规距离损失函数对预测图与真值图之间的误差进行约束,并不能保证非对称U型师生网络达到预期的学习目标,实际上瑕疵检测的性能并不高;为缓解类别不平衡的问题,本实施例优选使用焦点损失函数来优化非对称U型师生网络的性能,焦点损失函数如下式所示:
Lf=-(1-αt)·Im·(1-Iout)γ·log(Iout)+αt·(1-Im)·Iout γ·log(Iout)
其中,αt、γ为两个控制焦点权重的超参数,分别控制正负样本的权重、难易样本的权重;
完成训练后,非对称U型师生网络能够输出包含瑕疵位置信息的瑕疵分割预测图,然后将原始瑕疵分割预测图Iout使用均值滤波器进行平滑处理得到Io′ut,接着对Io′ut中所有像素预测值从大到小进行排序,选择Io′ut中像素预测值前千分之一的部分,计算像素预测值的平均值作为待检图像的异常得分,根据异常得分判断图像是否存在异常,Io′ut作为瑕疵定位图;
S25、冻结师生网络编码器中教师网络编码器的权重,使用随机梯度下降优化器对搭建的非对称U型师生网络进行反向迭代优化,取损失最小时的非对称U型师生网络的权重参数为最优,以最优权重参数的非对称U型师生网络作为完成训练的非对称U型师生网络;
S3、将需要检测瑕疵的工业产品的待检图像,输入完成训练的非对称U型师生网络,得到相同尺寸的异常分数图,使用自适应图像异常得分计算方式计算图像的异常得分,完成检测瑕疵工业产品的瑕疵检测分割。
本实施例与现有技术相比,其有益效果在于:
相比现有技术中使用正负标签数据进行器训练需要大量标注的弊端,本实施例利用正常样本以异常模拟策略得到的伪瑕疵样本进行训练,实现端到端的瑕疵检测,避免了大量标注的问题;本实施例在图像级别和像素级别进行瑕疵的两级分类,能够准确判断图像是否存在瑕疵的同时,对瑕疵区域进行像素级的精确定位;本实施例的输入图像经过非对称U型师生网络直接得到异常分数图和异常得分,检测效率更高;本实施例的知识蒸馏策略和异常模拟策略适用性强,能够实现不同领域下多种场景中的目标工业产品的瑕疵检测。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (10)
1.一种基于知识蒸馏和异常模拟的工业瑕疵检测方法,其特征在于,包括步骤如下:
S1、构建目标工业产品的表面图像的训练样本,搭建基于多尺度特征知识蒸馏的师生网络编码器,对所述师生网络编码器进行多尺度特征知识蒸馏训练;
S2、通过基于柏林噪声算法的异常模拟策略生成伪瑕疵样本,搭建非对称U型师生网络,利用所述伪瑕疵样本计算分割损失训练所述非对称U型师生网络;
S3、将需要检测瑕疵的工业产品的待检图像,输入完成训练的非对称U型师生网络,得到相同尺寸的异常分数图,使用自适应图像异常得分计算方式计算图像的异常得分,完成检测瑕疵工业产品的瑕疵检测分割。
2.根据权利要求1所述基于知识蒸馏和异常模拟的工业瑕疵检测方法,其特征在于,构建训练样本后搭建师生网络编码器进行训练,具体步骤如下:
S11、利用工业图像采集装置获取目标工业产品的表面图像,构建仅包含无瑕疵工业产品的正常样本图像的训练集A;
S12、搭建基于多尺度特征蒸馏的师生网络编码器;
S13、将构建的训练集A送入搭建的师生网络编码器进行训练,生成多级特征图;
S14、根据教师网络编码器生成的多级特征图、学生网络编码器生成的多级特征图,基于知识蒸馏策略,分别计算像素的多级特征知识蒸馏损失;
S15、冻结教师网络权重,使用随机梯度下降优化器对师生网络编码器进行反向迭代优化,取损失最小时的师生网络编码器为最优,并保存相应的权重参数。
3.根据权利要求2所述基于知识蒸馏和异常模拟的工业瑕疵检测方法,其特征在于,所述师生网络编码器由教师网络编码器、学生网络编码器组成;
所述教师网络编码器、学生网络编码器具有相同结构,均为ResNet18网络。
4.根据权利要求3所述基于知识蒸馏和异常模拟的工业瑕疵检测方法,其特征在于,教师网络编码器、学生网络编码器各自的多级特征图,均为ResNet18网络中的前三个残差单元的输出。
5.根据权利要求4所述基于知识蒸馏和异常模拟的工业瑕疵检测方法,其特征在于,所述知识蒸馏,具体过程如下:
给定训练图像I,通过教师网络编码器提取图像特征通过学生网络编码器提取图像特征/>表示ResNet18网络中的前三个残差单元的层级,
分别对和/>做归一化处理得到:
其中,‖‖2表示向量的二范数;
设定第l层级的多级特征知识蒸馏损失为:
其中,(ij表示多级特征图中的像素点,ωl、hl分别为第l层特征图的宽度、高度,L为特征蒸馏的网络关键层级总数,N为训练集A中正常样本图像的总数,表示二范数的平方。
6.根据权利要求5所述基于知识蒸馏和异常模拟的工业瑕疵检测方法,其特征在于,通过异常模拟策略生成伪瑕疵样本,搭建非对称U型师生网络,利用所述伪瑕疵样本计算分割损失训练非对称U型师生网络,具体步骤如下:
S21、基于柏林噪声算法得到目标工业产品图像的纹理性和结构性伪瑕疵样本,构建训练集D和测试集Z;
异常模拟策略为:首先利用基于晶格的柏林噪声生成算法得到噪声灰度图P,然后对噪声灰度图P进行随机旋转变换得到噪声灰度图Pt;接着通过对原始正常产品图像进行网格打乱、光学畸变、弹性拉伸中的一种或多种的结构性破坏得到异常数据源;
随后使用可控超参数阈值、透明因子,对正常产品图像和异常数据源基于噪声掩码图进行软融合得到噪声掩码前景图IM
最后将原始正常图像I与噪声掩码图Mp的反转逐像素相乘,得到伪瑕疵图像IA中的正常背景,再将正常背景与噪声掩码前景图IM逐元素相加即得最终的伪瑕疵图像IA;
S22、搭建非对称U型师生网络用于瑕疵检测,非对称U型师生网络包括横向连接模块、师生网络编码器、学生网络解码器;
解码器为学生网络解码器;所述学生网络解码器以学生编码器网络的输出特征为输入,由若干上采样层和卷积层组成;横向连接模块以师生网络编码器中各层级的原始多尺度差分特征为输入,进行基于注意力编码、特征融合的改进,输出不同尺度的特征图并送入学生网络解码器对应层级中;学生网络解码器在上采样过程中接收来自师生网络编码器的瑕疵判别和位置信息,以便进行更精细的特征解码;
所述横向连接模块包括融合通道空间注意力模块、特征融合模块;所述融合通道空间注意力模块包括主路和支路;所述主路上利用3*3卷积核对横向连接模块的输入特征进行初步自我整合,将初步自我整合后的结果与所述支路上经过注意力编码的特征图相乘;所述特征融合模块根据融合通道空间注意力模块的输出,自顶向下地进行不同尺度特征的整合;非对称U型师生网络最终输出瑕疵分割预测图
S23、将训练集D送入非对称U型师生网络进行训练,非对称U型师生网络首先在师生网络编码器生成多尺度差分特征图,通过横向连接模块后导入学生网络解码器得到训练集D中输入图像的瑕疵分割预测图;
S24、根据伪瑕疵图像IA、瑕疵分割预测图,对非对称U型师生网络进行训练;
然后将原始瑕疵分割预测图Iout使用均值滤波器进行平滑处理得到Io ′ ut,接着对Io ′ ut中所有像素预测值从大到小进行排序,选择Io ′ ut中像素预测值前千分之一的部分,计算像素预测值的平均值作为待检图像的异常得分,根据异常得分判断图像是否存在异常,Io ′ ut作为瑕疵定位图;
S25、冻结师生网络编码器中教师网络编码器的权重,使用随机梯度下降优化器对搭建的非对称U型师生网络进行反向迭代优化,取损失最小时的非对称U型师生网络的权重参数为最优,以最优权重参数的非对称U型师生网络作为完成训练的非对称U型师生网络。
7.根据权利要求6所述基于知识蒸馏和异常模拟的工业瑕疵检测方法,其特征在于,所述软融合的计算如下式所示:
IM=δ*(B(Pt,)⊙In)+(1)*(B(Pt,)⊙I)
其中,⊙为逐元素相乘操作,B(Pt,)表示对Pt按照阈值T进行二值化处理得到的噪声掩模,Mp为对Pt进行二值化处理后得到的噪声掩码图Mp,In对应异常数据源的图像,I对应原始正常图像。
8.根据权利要求7所述基于知识蒸馏和异常模拟的工业瑕疵检测方法,其特征在于,伪瑕疵图像IA的计算如下式所示:
9.根据权利要求8所述基于知识蒸馏和异常模拟的工业瑕疵检测方法,其特征在于,横向连接模块的输入输出如下式所示:
其中,UpConv()表示采用上采样方式的1*1卷积级联,DIl ′(l=1、2、3)表示注意力编码后的第l级差分特征,表示横向连接模块的输出。
10.根据权利要求9所述基于知识蒸馏和异常模拟的工业瑕疵检测方法,其特征在于,所述非对称U型师生网络的训练约束为瑕疵分割目标函数,所述瑕疵分割目标函数如下式所示:
Lseg=SmoothL1(·)+λfLf
其中,λf为控制两项损失比例的超参数,Lf为用于缓解类别不均衡问题使用的焦点损失,SmoothL1(·)为平滑化L1损失,所述平滑化L1损失如下式所示进行计算:
其中,Im、Iout分别表示真值图、预测图;
所述焦点损失用于优化非对称U型师生网络的性能,焦点损失如下式所示:
Lf=-(1αt)·Im·(1out)γ·log(Iout)+αt·(1m)·Iout γ·log(Iout)
其中,αt、γ为两个控制焦点权重的超参数,分别控制正负样本的权重、难易样本的权重。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310439275.4A CN116596851A (zh) | 2023-04-21 | 2023-04-21 | 一种基于知识蒸馏和异常模拟的工业瑕疵检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310439275.4A CN116596851A (zh) | 2023-04-21 | 2023-04-21 | 一种基于知识蒸馏和异常模拟的工业瑕疵检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116596851A true CN116596851A (zh) | 2023-08-15 |
Family
ID=87610692
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310439275.4A Pending CN116596851A (zh) | 2023-04-21 | 2023-04-21 | 一种基于知识蒸馏和异常模拟的工业瑕疵检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116596851A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117437227A (zh) * | 2023-12-20 | 2024-01-23 | 成都数之联科技股份有限公司 | 一种图像生成及缺陷检测方法、装置、介质、设备及产品 |
-
2023
- 2023-04-21 CN CN202310439275.4A patent/CN116596851A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117437227A (zh) * | 2023-12-20 | 2024-01-23 | 成都数之联科技股份有限公司 | 一种图像生成及缺陷检测方法、装置、介质、设备及产品 |
CN117437227B (zh) * | 2023-12-20 | 2024-02-27 | 成都数之联科技股份有限公司 | 一种图像生成及缺陷检测方法、装置、介质、设备及产品 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110728654B (zh) | 一种基于深度残差神经网络的管道自动检测和分类方法 | |
CN112966684B (zh) | 一种注意力机制下的协同学习文字识别方法 | |
CN111723732B (zh) | 一种光学遥感图像变化检测方法、存储介质及计算设备 | |
CN112488025B (zh) | 基于多模态特征融合的双时相遥感影像语义变化检测方法 | |
CN111257341A (zh) | 基于多尺度特征与堆叠式全卷积网络的水下建筑物裂缝检测方法 | |
CN114283120B (zh) | 一种基于领域自适应的端到端多源异质遥感影像变化检测方法 | |
CN115619743A (zh) | Oled新型显示器件表面缺陷检测模型的构建方法及其应用 | |
CN114841972A (zh) | 基于显著性图和语义嵌入特征金字塔的输电线路缺陷识别方法 | |
CN115439442A (zh) | 基于共性和差异的工业品表面缺陷检测与定位方法及系统 | |
CN114565594A (zh) | 基于软掩膜对比损失的图像异常检测方法 | |
CN116596851A (zh) | 一种基于知识蒸馏和异常模拟的工业瑕疵检测方法 | |
CN114359631A (zh) | 基于编码-译码弱监督网络模型的目标分类与定位方法 | |
CN116403113A (zh) | 进化剪枝轻量化卷积神经网络的滑坡识别方法、系统、设备及介质 | |
CN117079132A (zh) | 基于高斯距离损失的遥感图像目标检测方法 | |
CN115240259A (zh) | 一种基于yolo深度网络的课堂环境下人脸检测方法及其检测系统 | |
CN113762265A (zh) | 肺炎的分类分割方法及系统 | |
CN112215100B (zh) | 一种不平衡训练样本下针对退化图像的目标检测方法 | |
CN113591608A (zh) | 一种基于深度学习的高分辨率遥感影像不透水面提取方法 | |
CN113052103A (zh) | 一种基于神经网络的电气设备缺陷检测方法及装置 | |
CN115861306B (zh) | 一种基于自监督拼图模块的工业品异常检测方法 | |
CN116935128A (zh) | 一种基于可学习提示的零样本异常图像检测方法 | |
CN116206104A (zh) | 用于工业外观缺陷检测的人工智能分割分类算法 | |
CN113344005B (zh) | 一种基于优化小尺度特征的图像边缘检测方法 | |
CN113313678A (zh) | 一种基于多尺度特征融合的精子形态学自动分析方法 | |
CN117557775B (zh) | 基于红外和可见光融合的变电站电力设备检测方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |