CN115661042A - 一种基于注意力机制指导的分层分类缺陷检测方法 - Google Patents
一种基于注意力机制指导的分层分类缺陷检测方法 Download PDFInfo
- Publication number
- CN115661042A CN115661042A CN202211202042.4A CN202211202042A CN115661042A CN 115661042 A CN115661042 A CN 115661042A CN 202211202042 A CN202211202042 A CN 202211202042A CN 115661042 A CN115661042 A CN 115661042A
- Authority
- CN
- China
- Prior art keywords
- image
- defect
- classification
- network
- model
- 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
Images
Classifications
-
- 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
- Image Analysis (AREA)
Abstract
本发明涉及一种基于注意力机制指导的分层分类缺陷检测方法,针对工件表面缺陷检测过程中图像纹理背景影响缺陷提取的问题,提出了分层注意力模块,并集成与分层分类网络结构的缺陷检测网络中,使模型利用图像纹理背景指导缺陷检测,同时,设计了多感受野融合模块,利用空洞卷积带来的增强感受野,使模型更好的提取不同尺寸的缺陷特征,并且降低计算复杂度,针对背景纹理分类与缺陷分类训练方向难把握的问题,提出一种联合优化框架,利用所构建的联合损失函数使模型进行端到端训练。实验表明,本发明所提出的方法,能够有效提升工件表面缺陷检测任务的检测精度。
Description
技术领域
本发明的技术方案涉及采用深度学习、卷积神经网络方法的工件表面缺陷检测领域,具体地说是一种基于注意力机制指导的分层分类缺陷检测方法。
背景技术
在工业生产过程中,由于某些不可抗因素会导致部分工件表面存在缺陷,这些缺陷会对后期产品的加工和使用产生安全隐患。缺陷检测技术是现代化工业生产质量把控环节中不可或缺的重要手段。
采用传统的人工方法检测工件表面缺陷,会耗费大量的人力、物力资源和时间成本。此外,人工处理具有较强的主观性且受到环境等诸多因素影响。同时,对于表面小缺陷的识别,通常会出现漏检和误检,降低检测的准确性。
在经典机器视觉方法中,研究人员会根据不同缺陷制定不同检测方法,采用手工方法提取其缺陷特征,使用分类器进行分类。传统检测方法使用手工特征对有无缺陷区域之间的差异进行建模,如尺度不变特则变换(SIFT)、定向梯度直方图(HOG)和局部二值模式(LBP)。通常使用的方法包括统计方法、结构方法、基于滤波器方法和基于模型方法。这些方法只会对特定表面或缺陷进行设计建模,很难推广到其他类型的表面和缺陷。并且很多检测的方法对于检测环境要求极为严苛。所以,相较于人工检测方法,采用传统机器视觉方法可以自动检测缺陷,但其适用性不强,鲁棒性较差,对于较为复杂的缺陷检测难度较大。
随着对深度学习领域研究的不断深入,以卷积神经网络(Convolutional NeuralNetworks,CNN)为代表的深度神经网络模型被大量应用于缺陷检测领域,在缺陷特征提取与缺陷分类问题上展现了杰出的效果。缺陷检测问题可简单概括为识别待检测图片中是否包含缺陷的二分类问题。
现有的基于分类的卷积神经网络表面缺陷检测方法大多存在纹理背景信息利用不充分的缺点。基于分类的卷积神经网络表面缺陷检测方法存在的不足主要有:
(1)传统的基于分类的卷积神经网络表面缺陷检测方法,只考虑到对缺陷特征的提取,并未考虑到样本表面纹理背景的不同,忽略了纹理背景对缺陷检测的影响。所以需要考虑到图像背景纹理信息,充分利用背景纹理与缺陷之间的关系。
(2)传统的基于分类的卷积神经网络表面缺陷检测,通常采用叠加卷积层数来扩大感受野范围,增加对大尺寸缺陷的检测能力,但增加卷积层数会增加整个模型的计算复杂度,同时也会损失对微小尺寸缺陷的信息。本发明提出的多感受野融合模块能更好的提取不同尺寸缺陷信息,提升模型的缺陷分类精度,同时也减少了参数量,降低了整个模型的复杂度。
发明内容
针对现有技术的不足,本发明所要解决的技术问题是:设计一种分层注意力模块,能够有效利用缺陷表面纹理背景信息,降低背景信息对缺陷检测的影响;同时,设计了多感受野融合模块,提升模型对不同尺寸的缺陷特征提取能力;采用主干分支网络进行端到端训练,明显提高了缺陷检测任务的准确度。
本发明解决该技术问题所采用的技术方案是:提供一种基于注意力机制指导的分层分类缺陷检测方法,该方法的步骤如下:
第一步:采集待测工件表面图像,对采集图像进行预处理,设置训练所用真实标签,并构建网络模型和联合损失函数,模型分为主干网络和分支网络两部分。
采集图像经过下采样操作规整为512×512像素的图像尺寸并将原始的RGB三通道图像调整为单通道图像,即转化为灰度图像,再经过标准化操作后输入模型中。分类网络训练需要根据不同图像表面是否存在缺陷进行标注,即有缺陷的样本标注为正样本,无缺陷的样本标注为负样本。此外根据工件表面的纹理背景类型赋予相应类别指示标签以训练纹理背景分类网络。
整个网络由一个主干网络和两个分支网络组成,主干网络包含了5次卷积模块和5次全局最大池化(Global Max Pooling,GMP)操作,主要用来提取图像特征图。
分支网络的输入为主干网络所输出的32×32×512的特征图,包含两个分支网络,一个分支网络为图像纹理背景分类网络,主要区分图像背景类型;另一个分支网络为图像缺陷分类网络,主要区分图像是否存在缺陷。
具体做法,图像输入主干网络输出特征图,特征图输入两个分支网络中,第一层分支网络通过卷积得到10×1的特征向量后输入到全连接层经Softmax运算后得到图像每一类别的置信度。第二层分支网络分为分层注意力模块和多感受野融合模块两部分。将第一层分支网络输出的置信度信息输入到第二层分支网络的分层注意力网络模块,结合第二层分支网络多感受野融合模块输出图像缺陷分类置信度。
分层注意力模块由通道注意力模块改进而来,第一层分支网络输出的图像纹理背景分类置信度作为权值增加到第二层分支网络特征图的各个通道上,得到注意力加权后的特征图X’:
X'=X'(ReLU(Linear(Dropout(ReLU(Linear(X)))))) (1)
其中X为主干网络生成的特征图,Linear(·)表示全连接层,Dropout(·)表示Dropout函数防止过拟合,ReLU(·)表示ReLU激活函数,δ(·)表示Softmax函数运算后得到图像纹理背景分类的置信度。
多感受野融合模块由三条不同支路构成。分别由一个1x1卷积核和2个不同的3x3空洞卷积构成。1x1卷积核捕捉微小的缺陷特征,2个不同尺度的空洞卷积捕捉较大的缺陷特征。各分支经过卷积运算后由非线性激活函数ReLU进行激活,后被拼接成H×W×3的特征图,得到的特征图为X″:
第二步:将预处理后的图像输入模型进行训练,设置优化参数及迭代次数,模型输出的结果为纹理背景类别以及有无缺陷分类。
模型的优化过程由联合损失函数进行控制。具体地,联合损失函数由纹理背景分类损失、缺陷分类损失以及平衡二者的相关参数共同构成,其形式为:
Losstotal=θλLoss1+σ(1-λ)Loss2 (3)
其中Loss1为纹理背景分类损失,Loss2为缺陷分类损失,θ与σ为平衡纹理背景分类损失与缺陷损失的平衡系数本发明,在前50轮θ与σ分别为0.8和0.2,在后50轮θ与σ分别为0.1和0.9,λ为由迭代轮数控制的权重因子,其形式为:
其中n是当前训练轮数,nep是全部训练轮数.训练过程是动态的,将训练重点从图像纹理背景分类逐渐过渡到图像缺陷分类.
由于层次树的每一层都是一个分类任务,为了避免使用sigmoid函数在梯度下降时均方误差损失函数学习速率下降的问题。因此本专利第一层和第二层的损失函数都为交叉熵损失函数,损失函数为:
其中x为输入样本,y为缺陷真实类别所对应的标签,f为分类器。
第三步:将训练好的模型权重进行保存,并利用该模型进行工件表面缺陷检测。
实验结果可以证明,增加分层指导模块能够有效提升网络对细微缺陷的识别,可以提升整体网络检测缺陷的准确率。
本发明通过分析目前基于卷积神经网络的表面缺陷检测算法与其存在的问题,提出了一种基于注意力指导分层网络的表面缺陷检测算法,并在DAGM工业表面缺陷数据上进行了实验。实验证明,该方法使用分层分类思想同时预测纹理表面和缺陷预测,并获得优异的检测性能,分层注意力模块和多感受野融合模块能够有效的提升分类网络识别缺陷的准确率。
附图说明
下面结合附图和实施例对本发明进一步说明。
图1为本发明分层注意力模块的结构示意图;
图2为本发明结合空洞卷积提出的多感受野模块的结构示意图。
图3为本发明缺陷检测模型的整体结构示意图。
具体实施方式
图1所示的分层注意力模块是基于SENet通道注意力模块改良而来,不同于SENet中直接使用本特征图进行卷积得到权值,本发明中所提出的分层注意力模块将图像的背景纹理分类置信度1×1作为权值增加到H×W×C特征图通道上。分层注意力模块不仅能更充分利用图像纹理背景信息和对不同缺陷种类进行区分,还能更好的控制参数量,即不需要引入额外参数。
图2所示多感受野融合模块是基于DeepLab模型中的ASPP模块改良而来,不同于CBAM中直接使用不同尺寸的卷积核进行运算,本发明将不同尺寸的卷积相结合,其中包含一个1×1的卷积核和两个3×3的卷积核。本发明中所提出的多感受野融合模块的扩张由空洞卷积实现,以3×3的卷积核为基础,设置不同的扩张率(Dilation Rate)以获取不同的感受野。空洞卷积的使用不仅能够更好地扩大感受野、充分利用多尺度上下文信息、增强对微小缺陷的捕获能力,还能更好地控制参数量,即不需要引入额外参数。同时,使用1×1的卷积核所提取的特征参与融合有效地避免了空洞卷积局部信息丢失和提取信息缺乏相关性的问题。
图3为本专利缺陷检测模型的整体结构示意图,模型的主干网络结构,输入图像经过5次卷积模块和4次全局最大池化方式的下采样,得到维度为32×32×512的高维度特征图。第一层分支网络为图像纹理背景分类,主要区分图像背景类型;第二层分支网络为图像缺陷分类,主要区分图像是否存在缺陷。具体做法图像输入主干网络输出特征图,特征图输入两个分支网络中,第一层分支网络通过卷积得到10×1的特征向量后输入到全连接层经Softmax运算后得到图像每一类别的置信度。第二层分支网络分为分层注意力模块和多感受野融合模块两部分。将第一层分支网络输出的置信度信息输入到第二层分支网络的分层注意力网络模块,结合第二层分支网络多感受野融合模块输出图像缺陷分类置信度。
实施例1
本实施例采用基于混合注意力特征融合与联合优化的缺陷检测方法对待检测图像进行缺陷检测任务。在这里,本实施例对DAGM数据集进行缺陷检测。
DAGM数据集包含10类工件纹理背景样本,其中无缺陷样本10000张和有缺陷样本1500张,并包含图像的图像级注释。
第一步,对数据集中的原始图像进行预处理,将数据划分为训练集和测试集。将读入图像通过opencv-python库中的IMREAD_GRAYSCALE方法改为单通道的灰度图像并转化为张量、进行标准化操作。同时将训练集样本对应的标签进行读入,无缺陷样本标签为0,有缺陷样本标签为1。
第二步,将经过预处理后的图像输入到网络模型中,初始输入为512×512的单通道灰度图像,batchsize设定为8,数据首先被输入到主干网络中。主干网络由5次卷积模块和5次下采样操作组成。卷积模块包含两次卷积核大小为3×3、输出通道数翻倍的卷积操作、两次归一化(BatchNorm2d)操作和两次ReLU操作,归一化操作是根据输入数据的均值和方差对数据进行标准化,使数据更具统计意义,并能够使数据在进行ReLU操作之前不会因为过大而网络的稳定性。ReLU操作有效解决了sigmoid等激活函数反向传播慢、计算量大的问题,有效节省了计算时间且可以避免梯度消失和过拟合等问题。
分支网络由两个分支构成,第一层分支为图像纹理背景分类。输入主干网络输出的特征图,经过3次全连接层、2次ReLU激活函数和2次Dropout函数得到图像纹理背景分类的结果,同时也为缺陷分类提供指导信息。第二层分支为图像缺陷分类。输入主干网络输出特征图,经过分层注意力模块与多感受野融合模块得到图像缺陷分类结果。
分层注意力模块的输入主要包含两个部分:主干网络阶段后输出的特征图X和第一层图像纹理背景分类的置信度。输入的特征图首先通过卷积块将其通道层数进行压缩,压缩到与背景分类数相同。输入的纹理背景分类的置信度信息以权重的形式增加到各通道上,使其各个通道都含有背景信息。其公式表示如下:
其中F为主干网络生成的特征图,f3×3(·)表示以3×3尺寸的卷积核为基础,ReLU(·)表示ReLU激活函数,δ(·)表示Softmax函数运算后得到图像纹理背景分类的置信度。
多感受野融合模块由三条不同支路构成。分别由一个1x1卷积核和2个不同的3x3空洞卷积构成。1x1卷积核捕捉微小的缺陷特征,2个不同尺度的空洞卷积捕捉较大的缺陷特征。各分支经过卷积运算后由非线性激活函数ReLU进行激活,后被拼接成H×W×3的特征图,得到的特征图为X′:
其中concat[·;·;·]表示拼接操作,表示以1×1尺寸的卷积核的卷积运算,表示以3×3尺寸的卷积核为基础,基于不同感受野的卷积运算,ReLU(·)表示ReLU激活函数。加入1×1尺寸的卷积核能在提升模型感受野的同时有效避免空洞卷积可能造成的微小特征遗漏问题。
第一层图像纹理背景分类经过3次全连接层、2次ReLU激活函数和2次Dropout函数,主干网络生成的32×32×512特征向量,最后经过Softmax才做转化为10类对应类别的概率分数,其总和为1。设定接受阈值为0.5,即当10类中分数最大的类别的概率超过0.5时,该分类结果别认为是可接受的。
第二层图像缺陷分类分别经过分层注意力模块和多感受野融合模块后拼接成特征图。分层注意力模块通过纹理背景信息增加通道权重,多感受野融合模块提取不同尺度缺陷特征信息。最后经过Softmax操作后转化为有无缺陷类对应的概率分数,其总和为1。设定接受阈值为0.5,即类别的概率超过0.5时,该分类结果别认为是可接受的。
第三步中,图像纹理背景分类网络和图像缺陷分类网络输出分别与其对应的真实标签计算损失,其中纹理背景分类网络的真实标签为0-9总共十类;缺陷分类网络的标签为0和1,有缺陷的图像为1,无缺陷的图像为0。按如下形式的损失函数计算损失值:
其中,计算得到损失值后通过反向传播算法计算梯度以优化模型参数。
本方法模型训练环境基于Python3.8和Pytorch1.7.1搭建,训练集与测试集样本比例划分为4:1,模型选用Adadelta算法进行优化,学习率设定为0.001,模型训练所使用的硬件环境为Ubuntu18.04操作***、Intel6140 CPU,GPU为Nvidia RTX3090。训练的总迭代轮数为100轮。
为评估所提出方法对缺陷检测任务性能提升的有效性,本方法选取部分杰出算法并在相同的实验条件下与本方法中的模型性能进行对比,为测试模型实验结果的稳定性,每次实验在相同条件下进行三次,并计算平均值,如表1所示,本文的方法在各项指标下均取得了最好的结果。
表1不同算法对比实验结果(%)
表中的各项评价指标分别为正样本正确率(True Positive Rate,TPR)、负样本正确率(True Negative Rate,TNR)和准确度(accuracy,Accuracy),其形式如下:
其中,c表示类别数,各项指标均采用宏平均的方式进行计算,其好处是可以避免各类别样本数差异过大造成的不利影响。
本发明所涉及的分类损失函数、分层注意力模块和多感受野融合模块实现方法均为基于现有方法的改进。
需要说明的是,本发明并不局限于上述具体实施方式中。在不脱离本发明原理的情况下,凡是本领域技术人员在本发明的启示下获得的其它实施方式,均视为在本发明的保护之内。
Claims (3)
1.一种基于注意力机制指导的分层分类缺陷检测方法,其特征在于:包括以下步骤:
第一步:采集待测工件表面图像,对采集图像进行预处理,设置训练所用真实标签,并构建网络模型,模型分为主干网络和分支网络两部分,主干网络由卷积网络构成,分支网络由两层分支网络构成,第一层分支网络为图像纹理背景分类网络,由分类器组成;第二层分支网络为图像缺陷分类网络,由分层注意力模块、多感受野融合模块和分类器组成;
第二步:将预处理后的图像输入模型进行训练,构建联合损失函数,设置优化参数及迭代次数,模型输出的结果为图像纹理背景类型和图像是否包含缺陷;
第三步:将训练好的模型权重进行保存,并利用该模型进行工件表面缺陷检测。
2.根据权利要求1所述的基于注意力机制指导的分层分类缺陷检测方法,其特征在于:通过使用注意力机制,将图像背景纹理信息以权重的形式增加到图像缺陷特征图上,结合多感受野融合模块共同构成基于分层分类的缺陷检测模型,
其中,主干网络包含5次卷积模块和5次全局最大池化(Global Max Pooling,GMP)操作,即Global Max Pooling,GMP操作,主要用来提取图像特征图,分支网络由两层分支网络构成,第一层分支网络由全连接层、ReLU激活函数和Dropout函数构成,用来区分图像纹理背景类型;第二层分支网络由分层注意力模块和多感受野融合模块组成,主要用来区分图像是否含有缺陷;
分层注意力模块是基于SENet通道注意力模块改良而来,不同于SENet中直接使用本特征图进行卷积得到权值,分层注意力模块利用图像背景纹理信息作为权重增加到缺陷检测特征图通道上,具体操作为第一层分支网络得出图像的背景纹理分类置信度1×1×C作为权值增加到第二层分支网络H×W×C特征图通道上,得到的特征图为X′:
其中X为主干网络生成的特征图,f3×3(·)表示以3×3尺寸的卷积核为基础,ReLU(·)表示ReLU激活函数,δ(·)表示Softmax函数运算后得到图像纹理背景分类的置信度;
多感受野融合模块由三条不同支路构成;分别由一个1x1卷积核和2个不同的3x3空洞卷积构成,1x1卷积核捕捉微小的缺陷特征,2个不同尺度的空洞卷积捕捉较大的缺陷特征,各分支经过卷积运算后由非线性激活函数ReLU进行激活,后被拼接成H×W×3的特征图,得到的特征图为X″:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211202042.4A CN115661042A (zh) | 2022-09-29 | 2022-09-29 | 一种基于注意力机制指导的分层分类缺陷检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211202042.4A CN115661042A (zh) | 2022-09-29 | 2022-09-29 | 一种基于注意力机制指导的分层分类缺陷检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115661042A true CN115661042A (zh) | 2023-01-31 |
Family
ID=84985026
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211202042.4A Pending CN115661042A (zh) | 2022-09-29 | 2022-09-29 | 一种基于注意力机制指导的分层分类缺陷检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115661042A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117649351A (zh) * | 2024-01-30 | 2024-03-05 | 武汉大学 | 一种基于扩散模型的工业缺陷图像仿真方法及装置 |
-
2022
- 2022-09-29 CN CN202211202042.4A patent/CN115661042A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117649351A (zh) * | 2024-01-30 | 2024-03-05 | 武汉大学 | 一种基于扩散模型的工业缺陷图像仿真方法及装置 |
CN117649351B (zh) * | 2024-01-30 | 2024-04-19 | 武汉大学 | 一种基于扩散模型的工业缺陷图像仿真方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111179251B (zh) | 基于孪生神经网络利用模板比对的缺陷检测***及方法 | |
CN109977808B (zh) | 一种晶圆表面缺陷模式检测与分析方法 | |
CN108830188B (zh) | 基于深度学习的车辆检测方法 | |
CN115294038A (zh) | 一种基于联合优化与混合注意力特征融合的缺陷检测方法 | |
CN110021425B (zh) | 一种比较检测器及其构建方法与***细胞检测方法 | |
CN112200121B (zh) | 基于evm和深度学习的高光谱未知目标检测方法 | |
CN112365497A (zh) | 基于TridentNet和Cascade-RCNN结构的高速目标检测方法和*** | |
CN112861635A (zh) | 一种基于深度学习的火灾及烟雾实时检测方法 | |
CN116342894B (zh) | 基于改进YOLOv5的GIS红外特征识别***及方法 | |
CN112070727A (zh) | 一种基于机器学习的金属表面缺陷检测方法 | |
CN117355038B (zh) | 用于线路板软板的x型孔加工方法及其*** | |
CN114694178A (zh) | 基于Faster-RCNN算法的电力作业中安全帽监测方法及*** | |
CN116012291A (zh) | 工业零件图像缺陷检测方法及***、电子设备和存储介质 | |
CN112308825A (zh) | 一种基于SqueezeNet的农作物叶片病害识别方法 | |
CN115294033A (zh) | 一种基于语义分割网络的轮胎带束层差级和错边缺陷检测方法 | |
CN114897802A (zh) | 一种基于改进Faster RCNN算法的金属表面缺陷检测方法 | |
Saleh et al. | Tire defect detection model using machine learning | |
CN116468935A (zh) | 一种基于多核卷积网络的交通标志阶梯式分类识别方法 | |
CN115661042A (zh) | 一种基于注意力机制指导的分层分类缺陷检测方法 | |
CN114549414A (zh) | 一种针对轨道数据的异常变化检测方法及*** | |
CN113379685A (zh) | 一种基于双通道特征比对模型的pcb板缺陷检测方法及装置 | |
CN112071423B (zh) | 一种基于机器学习的免疫层析浓度检测方法及*** | |
CN114897909B (zh) | 基于无监督学习的曲轴表面裂纹监测方法及*** | |
CN115082449B (zh) | 一种电子元器件缺陷检测方法 | |
CN114119562B (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 |