CN117408996B - 基于缺陷专注和边缘权重损失的表面缺陷检测方法 - Google Patents
基于缺陷专注和边缘权重损失的表面缺陷检测方法 Download PDFInfo
- Publication number
- CN117408996B CN117408996B CN202311703447.0A CN202311703447A CN117408996B CN 117408996 B CN117408996 B CN 117408996B CN 202311703447 A CN202311703447 A CN 202311703447A CN 117408996 B CN117408996 B CN 117408996B
- Authority
- CN
- China
- Prior art keywords
- features
- feature
- defect
- pixel
- edge weight
- 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.)
- Active
Links
- 230000007547 defect Effects 0.000 title claims abstract description 119
- 238000001514 detection method Methods 0.000 title claims abstract description 41
- 230000004580 weight loss Effects 0.000 title claims abstract description 39
- 238000012549 training Methods 0.000 claims abstract description 33
- 238000000034 method Methods 0.000 claims abstract description 24
- 238000000605 extraction Methods 0.000 claims abstract description 22
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 12
- 230000002950 deficient Effects 0.000 claims description 29
- 230000004927 fusion Effects 0.000 claims description 23
- 230000006870 function Effects 0.000 claims description 19
- 238000012360 testing method Methods 0.000 claims description 19
- 239000013598 vector Substances 0.000 claims description 14
- 238000004364 calculation method Methods 0.000 claims description 8
- 230000008569 process Effects 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 6
- 238000005070 sampling Methods 0.000 claims description 6
- 238000013507 mapping Methods 0.000 claims description 5
- 230000009467 reduction Effects 0.000 claims description 4
- 238000010606 normalization Methods 0.000 claims description 3
- 239000012141 concentrate Substances 0.000 abstract description 3
- 238000012545 processing Methods 0.000 abstract description 2
- 230000002708 enhancing effect Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 4
- 238000013527 convolutional neural network Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009901 attention process Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000007499 fusion processing Methods 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 230000031068 symbiosis, encompassing mutualism through parasitism Effects 0.000 description 1
- 230000003313 weakening effect 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0475—Generative networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/09—Supervised learning
-
- 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/20—Image preprocessing
- G06V10/25—Determination of region of interest [ROI] or a volume of interest [VOI]
-
- 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/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- 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/762—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
- G06V10/763—Non-hierarchical techniques, e.g. based on statistics of modelling distributions
-
- 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/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- 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)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Quality & Reliability (AREA)
- Probability & Statistics with Applications (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及一种基于缺陷专注和边缘权重损失的表面缺陷检测方法,属于图像处理和表面缺陷检测技术领域。通过构建记忆库核心子集,将训练样本输入到特征提取网络提取多层特征,将提取的中间层特征采用最近邻算法与对应记忆库核心子集对比得到缺陷先验图,特征增强;将增强后的特征输入到可变形注意力中生成校正后的增强特征,对校正后的增强特征与提取的非中间层特征采用邻近特征融合,获得融合后特征图;通过计算校正后的增强特征图与融合后特征图的边缘权重损失,加和计算总损失,根据总损失训练网络。本发明利用边缘权重损失来增强对缺陷区域的影响,同时使用可变形注意力进行缺陷专注,从而实现高精度定位的表面缺陷检测方法。
Description
技术领域
本发明涉及一种表面缺陷检测方法,特别涉及一种基于缺陷专注和边缘权重损失的表面缺陷检测方法,属于图像处理和表面缺陷检测技术领域。
背景技术
目前,基于深度学习的表面缺陷检测方法主要以卷积神经网络(CNN)为基础。这些方法使用CNN来提取特征,然后对这些特征进行各种操作以实现缺陷检测。其中,一种常见的检测方法是使用特征记忆库。
特征记忆库方法的基本思路如下:首先,从一些正常样本中提取特征并将其保存到记忆库中。在训练或测试时,给定一个样本,计算该样本的特征与记忆库中所有特征的欧氏距离,从而生成一个距离分数图,图中每个分数代表当前空间位置特征的缺陷程度,可以将该分数图直接用于缺陷检测,或者作为先验图来增强原始特征。然而,这种方法存在一些不足之处。由于表面缺陷的种类多样,很多缺陷都伴随着强烈的背景干扰。背景干扰与正常部分之间的差异很大,因此代表背景干扰部分的特征所对应的欧氏距离往往很大。如果直接进行检测,可能会误将背景干扰部分误判为缺陷;如果作为缺陷先验用于增强特征,可能会同时增强缺陷和背景,从而减弱对缺陷的关注,导致误判。不管哪种方式都会降低最终的检测精度,不利于准确地缺陷检测。
发明内容
本发明的目的是克服上述不足而提供一种基于缺陷专注和边缘权重损失的表面缺陷检测方法,利用边缘权重损失来增强对缺陷区域的影响,同时使用可变形注意力进行缺陷专注,从而实现高精度定位的表面缺陷检测方法。
本发明采取的技术方案为:
基于缺陷专注和边缘权重损失的表面缺陷检测方法,包括步骤如下:
S1. 划分数据集:将缺陷检测数据划分为对照集、训练集和测试集;
S2. 构建记忆库核心子集:将对照集的所有样本输入特征提取网络获取多层特征,使用中间层的特征构建特征记忆库,使用聚类算法将记忆库分成多个簇,并保存所有簇中心作为核心子集用来代替整个记忆库,得到记忆库核心子集;
S3.将训练样本输入到特征提取网络提取多层特征,将提取的中间层特征采用最近邻算法与对应记忆库核心子集对比得到缺陷先验图,将缺陷先验图与和其对应的提取特征像素级相乘得到增强后的特征;将增强后的特征输入到可变形注意力中生成校正后的增强特征,对校正后的增强特征与提取的非中间层特征采用邻近特征融合,获得融合后特征图;
S4.分别计算校正后的增强特征图与融合后特征图的边缘权重损失,加和计算总损失,根据总损失训练网络(不包括特征提取网络);
S5.将测试集样本输入到训练好的模型中,通过特征提取网络提取多层特征,利用步骤S2生成的记忆库核心子集按照步骤S3所述的方法计算中间层的特征对应的缺陷先验图,再获得增强后的特征,将增强后的特征输入到可变形注意力中生成校正后的增强特征,对校正后的增强特征与测试集样本提取的非中间层特征采用邻近特征融合,将获得的融合后特征图上采样、降低通道、归一化得到最终的预测图。
上述方法中,步骤S1中将原始数据集中所有正常样本的1/5设置为对照集,剩余正常样本与缺陷样本按照3:1的比例分成训练集与测试集。
步骤S2、S3、S5中所述的特征提取网络采用ResNet18。
上述方法中,步骤S2优选将每个核心子集中的特征数量设置为对应记忆库中总特征数量的5%。
步骤S3中优选将训练样本输入到特征提取网络提取四层特征F 1 -F 4 ,用中间两层的特征F 2 、 F 3 采用最近邻算法分别在两个记忆库核心子集中搜索与其每个空间位置上的特征距离最近的特征,计算并保存对应的距离,将两个距离向量值Sigmoid函数归一化和reshape操作得到两个缺陷先验图DPI 2、DPI 3。
步骤S3中可变形注意力首先将增强后的特征F’ 输入到一个1×1卷积中得到查询Q,然后将查询输入到偏移量生成网络中得到参考点偏移量/>,根据增强后的特征的高度H与宽度W来生成网格参考点ref,ref与/>分别表示参考点坐标以及对应的偏移量坐标,二者相加得到要采样的位置向量pos,利用grid_sample函数根据位置向量pos对输入增强后的特征图进行双线性插值映射,映射得到一个新的特征图F’_sampled,将其输入到两个1×1卷积中,分别得到键K,值V两个向量,将Q、K、V维度reshape,经过可变形注意力得到的结果为F’_output,计算F’_output涉及的公式定义如下:
,
,
,
,
其中Conv1×1表示1×1卷积,σ表示Softmax函数,c表示特征通道数,将F’_output维度reshape并输入到一个1×1卷积中,从而特征F 2 增强后的特征F 2 ’ 输入到可变形注意力中最终生成校正后的增强特征F 2 ’_output,特征F 3 增强后的特征F 3 ’ 输入到可变形注意力中最终生成校正后的增强特征F 3 ’_output。
步骤S3中所述的邻近特征融合是先按特征层次由低到高排列,再相邻特征两两融合,相邻特征间的融合按照高层特征上采样二倍与底层特征融合,同时将融合后的特征输入到一个3×3卷积块中,一轮融合得到的特征再进行排列、两两融合、输入卷积块直到得到一个融合特征图F final 。
步骤S4根据训练集中每个样本对应的标签图片GT生成该样本各像素对应的边缘权重,计算特征图F 2 ’output、 F 3 ’_output、F final 的交叉熵损失,根据交叉熵损失与边缘权重分别计算各图边缘权重损失,加和计算总损失,计算过程为:
使用一个函数ψ将归一化的距离转化为对应的边缘权重,转化后的结果是边缘部分像素的权重较大,中心部分权重较小,最终缺陷像素的边缘权重的数学公式定义如下:
,
,
其中EW i 表示第i个缺陷像素的边缘权重,d i 表示当前缺陷像素到其最近正常像素之间的距离,d max表示缺陷像素到正常像素距离的最大值,表示将距离值x转换为边缘权重的函数,/>是控制权重范围的超参数,在这里设置为2,exp(·)是以底数为e的幂函数;
边缘权重损失EWL是根据交叉熵损失与计算的边缘权重定义的,每个像素的交叉熵公式定义如下:
,
其中,y表示像素的标签,取值为0或1,1表示缺陷像素,0表示正常像素;p表示像素的预测值,表示该位置的像素预测为缺陷的概率,训练使用的边缘权重损失定义如下:
,
其中W表示样本的宽,H表示样本的高,L i pixel 表示样本第i个像素的交叉熵损失,EW i 表示样本第i个像素的边缘权重,最终,一个样本计算的总损失定义如下:
,
其中M表示在深度监督中计算损失时所用的特征图的数量,在这里M为3;EWL m表示第m个特征图与GT、样本边缘权重计算出来的边缘权重损失。
基于缺陷专注和边缘权重损失的表面缺陷检测系统,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述的基于缺陷专注和边缘权重损失的表面缺陷检测方法。
一种存储介质,其为计算机可读存储介质,所述的计算机可读存储介质上存储有计算机程序用于实现如上所述的基于缺陷专注和边缘权重损失的表面缺陷检测方法中的步骤。
本发明的有益效果是:
本发明方法利用可变形注意力,对由记忆库先验增强的特征进行缺陷专注,从而有效地突出模型要关注的缺陷部分,减弱可能被先验增强的背景干扰的影响,提高检测的准确性;同时,还引入了边缘权重损失,通过增加缺陷像素损失的权重,确保可变形注意力能够正确突出缺陷,使得模型更加注重缺陷部分。这一方法解决了使用记忆库生成的先验图进行特征增强导致的模型误判问题,在实际应用中,可解决由于强烈的背景干扰,导致模型过度聚焦于背景干扰部分而忽略了真实的缺陷的问题。
附图说明
图1为本发明方法的模型结构示意图;
图2为本发明方法训练阶段的流程图;
图3为本发明方法测试阶段的流程图;
图4为本发明特征提取网络结构示意图;
图5为本发明可变形注意力处理过程示意图;
图6为本发明邻近特征融合过程图。
具体实施方式
下面结合具体实施例进一步说明本发明。
实施例1:基于缺陷专注和边缘权重损失的表面缺陷检测方法,包括步骤如下:
S1. 划分数据集:
通常情况下,缺陷检测数据集被划分为训练集和测试集,每个样本都附带相应的标签图片(GT)。为了满足特定需求,本发明将缺陷检测数据集分为三个独立的样本集:对照集、训练集和测试集。对于对照集而言,其内正常样本越多,提取的对照特征就越多,最后预测越准确,但是也要考虑到计算资源问题,因此本发明设置对照集为原始数据集中所有正常样本的1/5,剩余正常样本与缺陷样本按照3:1的比例分成训练集与测试集。所有样本都被调整为固定尺寸的224×224,并以RGB形式读取。同时,对应的GT以灰度图形式读取,从而形成样本尺寸为3×224×224,GT尺寸为1×224×224。
S2. 构建记忆库核心子集:
使用预训练特征提取网络ResNet18结构中的conv1、bn1、relu、maxpooling、layer1、layer2、layer3,layer4来提取特征(如图4),如表1所示。本发明中对照集样本不参与训练,只用于记忆库核心子集的构建。注意,特征提取网络不参与训练,在训练之前对其进行参数冻结。
表1
。
将对照集的所有样本输入特征提取网络,以获取4层特征F 1 -F 4 。使用中间两层(第2和第3层)的特征构建特征记忆库,共生成2个特征记忆库。这样做的原因如下:第一层特征包含过多细节信息,而第四层特征则是深层特征,偏向于自然语言分类任务,不适用于特定的缺陷检测任务,所以不使用这两层特征进行记忆库构建。
由于构建的记忆库内存庞大,如果直接进行后续缺陷先验图的计算,会耗费大量时间。因此,为了节省时间,需要从每个记忆库中寻找一个核心子集,并且使得在核心子集上得到的计算结果与在对应记忆库上得到的计算结果最接近。因此,我们使用K-means++算法进行聚类,将记忆库分成多个簇,并保存所有簇中心作为核心子集用来代替整个记忆库。核心子集中的特征数量设置的越大越好,这样计算出来的结果会更精确,但是考虑到构建过程的计算复杂度,我们将每个核心子集中的特征数量设置为对应记忆库中总特征数量的5%,记为C i(取整,i取2,3)。
假设对照集中有N个样本,所有样本经过上述网络提取特征,得到4个特征图,尺寸分别为[N, 64, 56, 56]、[N, 128, 28, 28]、[N, 256, 14, 14]、[N, 512, 7, 7],每个特征图有4个维度,从左到右每个维度表示的含义依次为样本数、通道数、特征宽、特征高。用中间两层特征生成的两个记忆库M i (i=2,3),大小分别为[N×28×28, 128]、[N×14×14,256]。对每个记忆库使用K-means++算法来寻找其内的核心子集,K-means++算法流程如下:
对于任一记忆库M i ,取其内任意一条特征E i 0,将其作为一个簇中心并添加到核心子集M ci 中,然后计算记忆库中所有特征与E i 0的欧式距离,记为D i 0,找到与E i 0距离最远的特征E i 1,因为E i 1与E i 0距离非常远,说明二者不相似,因此将其作为第二个簇中心,并添加到核心子集M ci 中,同时计算记忆库中所有特征与E i 1的欧式距离,记为D i 1,比较D i 0与D i 1,取相同索引值下的距离最小值,新生成的距离向量记为D i min。举一例,记忆库中的某特征E(索引值为k)到E i 0的距离小于其到E i 1的距离(即:特征E与E i 0更相似),则E应属于E i 0所在的簇内(即:E可以用E i 0粗略近似),因此在D i min中索引值为k的位置存储特征E到E i 0的距离,记忆库中其他特征以此类推。此时,记忆库M i 被分了两簇,簇中心分别为E i 0与E i 1。取D i min中的距离最大值所在的索引,并取出该索引所属的特征向量E i 2,E i 2与E i 0、E i 1均不相似,需要作为一个新的簇中心,因此,将E i 2加入到核心子集M ci 中,计算记忆库中所有特征与E i 2的距离,记为D i 2,比较D i 2与D i min中相同索引值下的值并取最小值更新D i min,以此类推,直到核心子集中特征数量达到C i 结束。核心子集M ci 构建完成,也就是说M i 被分成C i 个簇,记忆库M i 中的其他特征总能在C i 个特征找到一个特征近似。生成的两个核心子集记为M c2 ,M c3 。构建完毕的核心子集用于训练与测试阶段,由于对照集中只包含正常样本,因此每个核心子集中只包含正常特征。
S3.将训练样本输入到特征提取网络提取多层特征,将提取的中间层特征采用最近邻算法与对应记忆库核心子集对比得到缺陷先验图,将缺陷先验图与和其对应的提取特征像素级相乘得到增强后的特征;将增强后的特征输入到可变形注意力中生成校正后的增强特征,对校正后的增强特征与提取的非中间层特征采用邻近特征融合,获得融合后特征图(如图1):
将训练集的每张图片输入到特征提取网络中提取4层特征F 1 -F 4 ,然后采用K最近邻(KNN)搜索算法在核心子集M c2中找到与特征F 2 中每个空间位置所在的特征最相似的特征,并计算对应的欧氏距离,同理特征F 3 也是相同的操作,最终输出2个距离向量。使用Sigmoid函数将两个距离向量中的值归一化为[0,1]之间,然后进行reshape操作得到缺陷先验图DPI 2,DPI 3。在缺陷先验图中值表示对应空间位置特征的缺陷程度,值越大,表明特征为缺陷的概率越大;值越小,表示该条特征为缺陷的概率越小。DPI 2,DPI 3的尺寸分别为[1, 1, 28,28],[1, 1, 14, 14]。
将缺陷先验图DPI 2,DPI 3分别与对应的特征F 2,F 3做像素级乘法,得到增强后的特征F 2 ’,F 3 ’,特征F 2 ’,F 3 ’中已经对缺陷特征(如果有)进行了增强,对背景特征进行了抑制,但是背景干扰所在部分的特征也有可能会被增强,导致最终模型的误判。因此,我们将其输入到可变形注意力模块中,在之前缺陷先验图增强的基础上,利用可变形注意力来进行校正(缺陷专注),来进一步凸显缺陷部分,抑制先前缺陷先验图增强的背景干扰部分,使模型更加专注于缺陷,从而实现更精准的定位。
例如,给定一个缺陷样本,通过网络提取4层特征,经过上述操作得到F 2 ’,F 3 ’,维度分别为[1,128,28,28],[1, 256, 14, 14],对于特征F 2 ’来说,将其输入到可变形注意力模块中,做如下操作:首先将特征F 2 ’输入到一个1×1卷积中得到查询Q 2,维度为[1,128,28,28],然后将Q 2输入到偏移量生成网络中,得到参考点偏移量/>,表示模型想要关注位置的偏移,维度为[1,28,28,2],生成网络/>应该有对局部特征的感知,来合理地学习偏移量,因此其结构为一个5×5的深度卷积(步长为2),一个非线性激活函数GELU以及一个1×1卷积。其次根据F 2 ’的高度H与宽度W来生成网格参考点ref,ref内的值为线性间隔的二维坐标{(0,0),…, (27,27)},将坐标归一化到[-1,+1]范围内,其中(-1,-1)表示左上角,(+1,+1)表示右下角。ref的维度为[1,28,28,2],ref与/>分别表示参考点坐标以及对应的偏移量坐标,二者相加得到要采样的位置向量pos,我们利用grid_sample函数,根据位置向量pos对输入特征图F 2 ’进行双线性插值映射,得到一个新的特征图F 2 ’ - sampled,其可以看作是对原始特征图F 2 ’进行了一定程度的“变形”,维度为[1,128,28,28],并将其输入到两个1×1卷积中,分别得到键K 2,值V 2两个向量,整个过程如图5所示。注意,这里的K 2,V 2不是由特征F 2 ’得到,而是由F 2 ’ - sampled变换得到,这样可以确保注意力分布是根据输入特征的变形而自适应调整的。将Q 2,K 2,V 2维度都reshape为[28*28,128],得到可变形注意力的结果F 2 ’ - output,计算F 2 ’ - output涉及的公式定义如下:
,
,
,
,
其中Conv1×1表示1×1卷积,σ表示Softmax函数,c表示特征通道数。将F 2 ’ - output维度reshape为[1,128,28,28]并输入到一个1×1卷积中。特征F 3’也是同样操作。最终生成两个特征向量F 2 ’ - output,F 3 ’ - output,两个特征都经过可变形注意力进行了缺陷专注,能够使得模型更加关注到缺陷部分,减弱对背景以及背景干扰的关注。
在提取的四层特征中,第一层特征包含大部分细节信息,第四层特征是深层特征,包含抽象语义信息,比较偏向于自然语言分类任务。根据这两层特征构建出来记忆库计算出来的缺陷先验图中误差比较大,因此,在构建记忆库时,我们不使用第一层与第四层特征。但是,底层特征(第一层)包含细节信息的特征,是有利于缺陷的定位;高层特征(第四层)包含更抽象的特征,是有利于模型区分缺陷与正常。融合这些信息可以提供更全面、多样化的特征表示,提高模型泛化能力,有利于缺陷的检测与定位。因此,我们对F 1,F 2 ’ - output,F 3 ’ - output,F 4采用邻近特征融合。
在邻近融合时,先按特征层次由低到高排列,再相邻特征两两融合,相邻特征间的融合按照高层特征上采样二倍与底层特征融合,同时将融合后的特征输入到一个3×3卷积块中,来减少融合后的冗余信息。过程如下:共有三轮融合。第一轮是F 1与F 2 ’ - output融合、F 2 ’ - output与F 3 ’ - output融合,F 3 ’ - output与F 4融合,融合后得到F 1,2,F 2,3,F 3,4。第二轮是F 1,2与F 2,3融合,F 2,3与F 3,4融合,得到F 1,2,3,F 2,3,4,第三轮是F 1,2,3与F 2,3,4融合,得到产生更具代表性和丰富信息的特征F final ,各个融合特征的尺寸表2所示。
表2
。
S4.分别计算校正后的增强特征图与融合后特征图的边缘权重损失,加和计算总损失,根据总损失训练网络:
训练集中每个样本都有对应的标签图片(GT),我们根据每个样本的GT来生成其内每个像素对应的边缘权重。对于缺陷样本,其中既含有正常像素也含有缺陷像素。对于正常像素,我们将其边缘权重设置为1。对于缺陷像素,我们采用距离变换算法计算出其与最近的正常像素的距离,计算出来的距离值根据缺陷像素的位置而变化,其中,缺陷边缘的距离值最小,缺陷中心的距离值最大。如果直接使用距离值当作损失权重,模型可能会过度关注缺陷中心而忽略缺陷边缘,不利于缺陷的整体性检测。因此,我们使用一个函数ψ将归一化的距离转化为对应的边缘权重,转化后的结果是边缘部分像素的权重较大,中心部分权重较小。最终缺陷像素的边缘权重的数学公式定义如下:
,
,
其中EW i 表示第i个缺陷像素的边缘权重,d i 表示当前缺陷像素到其最近正常像素之间的距离,d max表示缺陷像素到正常像素距离的最大值,表示将距离值x转换为边缘权重的函数,/>是控制权重范围的超参数,在这里设置为2,exp(·)是以底数为e的幂函数。注意,虽然最终得出的边缘的权重高于中心的权重,但它们之间的数值差异并不大,这可以避免模型过于关注边缘而忽略整个缺陷区域。另外,缺陷像素的权重是大于正常像素的权重(为1),这样做的目的是增加缺陷区域的影响,减弱正常区域(包含背景以及背景干扰)的影响,提高模型对各种缺陷区域检测的鲁棒性,这体现在模型参数更新过程中。对于正常样本而言,没有缺陷像素,都是正常像素,其内每个像素边缘权重是1,也就是说计算出来的损失保持不变。
为了使网络能学习更加有效的特征表示,同时也能够更快、更稳定的收敛。我们使用深度监督方式,通过在不同层次上提供监督信号,网络可以逐层学习复杂特征,从而促进更好的泛化和更高的性能。使用双线性插值将F 2 ’ - output,F 3 ’ - output,F final 上采样到原图片尺寸,然后使用1×1卷积降低通道,得到3个通道数为1,尺寸为224×224的特征图,逐像素计算每个特征图与GT、计算的边缘权重之间的边缘权重损失。
边缘权重损失(EWL)是根据交叉熵损失与计算的边缘权重定义的,每个像素的交叉熵公式定义如下:
,
其中,y表示像素的标签,取值为0或1,1表示缺陷像素,0表示正常像素;p表示像素的预测值,表示该位置的像素预测为缺陷的概率。训练使用的边缘权重损失定义如下:
,
其中W表示样本的宽,H表示样本的高,这里均定义为224,L i pixel 表示样本第i个像素的交叉熵损失,EW i 表示样本第i个像素的边缘权重。最终,一个样本计算的总损失定义如下:
,
其中M表示在深度监督中计算损失时所用的特征图的数量,在这里M为3;EWL m 表示第m个特征图与GT、样本边缘权重计算出来的边缘权重损失。
本发明在模型训练过程(如图2)中使用Adam优化器,权重衰减系数设置为0.005,初始学习率设置为0.001,采用阶段性衰减策略改变学习率,每600次迭代将学习率降为原来的0.1,以进一步加速模型的收敛。批次大小设置为8,即每次读取10张训练集图片作为一次迭代,每次迭代分别计算总损失并进行梯度回传、模型参数更新。共迭代6000次,取迭代完后的模型作为最终的模型并保存参数。
S5.将测试集样本输入到训练好的模型中,通过特征提取网络提取多层特征,利用步骤S2生成的记忆库核心子集按照步骤S3所述的方法计算中间层的特征对应的缺陷先验图,再获得增强后的特征,将增强后的特征输入到可变形注意力中生成校正后的增强特征,对校正后的增强特征与测试集样本提取的非中间层特征采用邻近特征融合,将获得的融合后特征图上采样、降低通道、归一化得到最终的预测图:
在测试阶段,读取最终的模型参数,同时使用生成的两个记忆库核心子集M c2 ,M c3 ,将测试集样本数据输入到模型中,通过特征提取网络提取4层特征F 1 -F 4 ,按照步骤S3的方法得到的两个缺陷先验图分别与特征F 2 与F 3 做像素级乘法,将结果特征输入到可变形注意力中,生成两个不同层次的聚焦于缺陷的特征F 2 ’ - output,F 3 ’ - output,,最后对F 1 ,F 2 ’ - output,F 3 ’ - output,F 4 进行邻近特征融合,生成最终的融合特征F final ,将其上采样到原图像尺寸,并通过1×1卷积降低通道得到模型输出。对输出取Sigmoid得到最终的预测图,预测图中每个位置上的分数表示为对应像素为缺陷的概率,分数越大,说明该像素是缺陷的概率越大。测试阶段流程如图3所示。
实施例2:本实施例提供实现基于缺陷专注和边缘权重损失的表面缺陷检测方法的硬件设备。
基于缺陷专注和边缘权重损失的表面缺陷检测系统,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上实施例1所述的基于缺陷专注和边缘权重损失的表面缺陷检测方法。
一种存储介质,其为计算机可读存储介质,所述的计算机可读存储介质上存储有计算机程序用于实现如上实施例1所述的基于缺陷专注和边缘权重损失的表面缺陷检测方法中的步骤。
以上所述仅为本发明的较佳实施例而已,并不用于限制本发明,凡在本发明的精神和原则范围之内所作的任何修改、等同替换以及改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.基于缺陷专注和边缘权重损失的表面缺陷检测方法,其特征是,包括步骤如下:
S1. 划分数据集:将缺陷检测数据划分为对照集、训练集和测试集;
S2. 构建记忆库核心子集:将对照集的所有样本输入特征提取网络获取多层特征,使用中间层的特征构建特征记忆库,使用聚类算法将记忆库分成多个簇,并保存所有簇中心作为核心子集用来代替整个记忆库,得到记忆库核心子集;
S3.将训练样本输入到特征提取网络提取多层特征,将提取的中间层特征采用最近邻算法与对应记忆库核心子集对比得到缺陷先验图,将缺陷先验图与和其对应的提取特征像素级相乘得到增强后的特征;将增强后的特征输入到可变形注意力中生成校正后的增强特征,对校正后的增强特征与提取的非中间层特征采用邻近特征融合,获得融合后特征图;
所述的缺陷先验图的获得过程为:将训练样本输入到特征提取网络提取四层特征F 1 -F 4 ,用中间两层的特征F 2 、F 3 采用最近邻算法分别在两个记忆库核心子集中搜索与其每个空间位置上的特征距离最近的特征,计算并保存对应的距离,将两个距离向量值Sigmoid函数归一化和reshape操作得到两个缺陷先验图DPI 2、DPI 3;
所述的邻近特征融合是先按特征层次由低到高排列,再相邻特征两两融合,相邻特征间的融合按照高层特征上采样二倍与底层特征融合,同时将融合后的特征输入到一个3×3卷积块中,一轮融合得到的特征再进行排列、两两融合、输入卷积块直到得到一个融合特征图F final ;
所述的可变形注意力首先将增强后的特征F’ 输入到一个1×1卷积中得到查询Q,然后将查询输入到偏移量生成网络中得到参考点偏移量/>根据增强后的特征的高度H与宽度W来生成网格参考点ref,ref与/>分别表示参考点坐标以及对应的偏移量坐标,二者相加得到要采样的位置向量pos,利用grid_sample函数根据位置向量pos对输入增强后的特征图进行双线性插值映射,映射得到一个新的特征图F’_sampled,将其输入到两个1×1卷积中,分别得到键K,值V两个向量,将Q、K、V维度reshape,经过可变形注意力得到的结果为F’_output,计算F’_output涉及的公式定义如下:
,
,
,
,
其中Conv1×1表示1×1卷积,σ表示Softmax函数,c表示特征通道数,将F’_output维度reshape并输入到一个1×1卷积中最终生成校正后的增强特征;
S4.分别计算校正后的增强特征图与融合后特征图的边缘权重损失,加和计算总损失,根据总损失训练除特征提取网络外的网络;
计算过程为:根据训练集中每个样本对应的标签图片GT生成该样本各像素对应的边缘权重,计算特征图的交叉熵损失,使用一个函数ψ将归一化的距离转化为对应的边缘权重,转化后的结果是边缘部分像素的权重较大,中心部分权重较小,最终缺陷像素的边缘权重的数学公式定义如下:
,
,
其中EW i 表示第i个缺陷像素的边缘权重,d i 表示当前缺陷像素到其最近正常像素之间的距离,d max表示缺陷像素到正常像素距离的最大值,表示将距离值x转换为边缘权重的函数,/>是控制权重范围的超参数,在这里设置为2,exp(·)是以底数为e的幂函数;
边缘权重损失EWL是根据交叉熵损失与计算的边缘权重定义的,每个像素的交叉熵公式定义如下:
,
其中,y表示像素的标签,取值为0或1,1表示缺陷像素,0表示正常像素;p表示像素的预测值,表示该位置的像素预测为缺陷的概率,训练使用的边缘权重损失定义如下:
,
其中W表示样本的宽,H表示样本的高,L i pixel 表示样本第i个像素的交叉熵损失,EW i 表示样本第i个像素的边缘权重,最终,一个样本计算的总损失定义如下:
,
其中M表示在深度监督中计算损失时所用的特征图的数量;EWL m表示第m个特征图与GT、样本边缘权重计算出来的边缘权重损失;
S5.将测试集样本输入到训练好的模型中,通过特征提取网络提取多层特征,利用步骤S2生成的记忆库核心子集按照步骤S3所述的方法计算中间层的特征对应的缺陷先验图,再获得增强后的特征,将增强后的特征输入到可变形注意力中生成校正后的增强特征,对校正后的增强特征与测试集样本提取的非中间层特征采用邻近特征融合,将获得的融合后特征图上采样、降低通道、归一化得到最终的预测图。
2.根据权利要求1所述的基于缺陷专注和边缘权重损失的表面缺陷检测方法,其特征是,步骤S1中将原始数据集中所有正常样本的1/5设置为对照集,剩余正常样本与缺陷样本按照3:1的比例分成训练集与测试集。
3.根据权利要求1所述的基于缺陷专注和边缘权重损失的表面缺陷检测方法,其特征是,步骤S2、S3、S5中所述的特征提取网络采用ResNet18。
4.根据权利要求1所述的基于缺陷专注和边缘权重损失的表面缺陷检测方法,其特征是,步骤S2将每个核心子集中的特征数量设置为对应记忆库中总特征数量的5%。
5.基于缺陷专注和边缘权重损失的表面缺陷检测系统,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征是,所述处理器执行所述程序时实现如权利要求1-4任一项所述的基于缺陷专注和边缘权重损失的表面缺陷检测方法。
6.一种存储介质,其为计算机可读存储介质,其特征是,所述的计算机可读存储介质上存储有计算机程序用于实现如权利要求1-4任一项所述的基于缺陷专注和边缘权重损失的表面缺陷检测方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311703447.0A CN117408996B (zh) | 2023-12-13 | 2023-12-13 | 基于缺陷专注和边缘权重损失的表面缺陷检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311703447.0A CN117408996B (zh) | 2023-12-13 | 2023-12-13 | 基于缺陷专注和边缘权重损失的表面缺陷检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117408996A CN117408996A (zh) | 2024-01-16 |
CN117408996B true CN117408996B (zh) | 2024-04-19 |
Family
ID=89500185
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311703447.0A Active CN117408996B (zh) | 2023-12-13 | 2023-12-13 | 基于缺陷专注和边缘权重损失的表面缺陷检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117408996B (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114092389A (zh) * | 2021-09-13 | 2022-02-25 | 浙江大学 | 一种基于小样本学习的玻璃面板表面缺陷检测方法 |
CN114445366A (zh) * | 2022-01-26 | 2022-05-06 | 沈阳派得林科技有限责任公司 | 基于自注意力网络的长输管道射线影像缺陷智能识别方法 |
WO2022099325A1 (en) * | 2022-01-10 | 2022-05-12 | Innopeak Technology, Inc. | Transformer-based scene text detection |
CN115619743A (zh) * | 2022-10-20 | 2023-01-17 | 华中科技大学 | Oled新型显示器件表面缺陷检测模型的构建方法及其应用 |
CN115631411A (zh) * | 2022-09-28 | 2023-01-20 | 西安工程大学 | 基于sten网络对不同环境中的绝缘子破损检测方法 |
WO2023039609A1 (en) * | 2021-09-13 | 2023-03-16 | Board Of Trustees Of The University Of Arkansas | Systems and processes for detection, segmentation, and classification of poultry carcass parts and defects |
CN116563250A (zh) * | 2023-05-12 | 2023-08-08 | 南京信息工程大学 | 一种复原式自监督疵点检测方法、装置及存储介质 |
WO2023155069A1 (zh) * | 2022-02-16 | 2023-08-24 | 佛山市南海区广工大数控装备协同创新研究院 | 一种基于深度学习的手机电池表面缺陷检测方法 |
CN116740069A (zh) * | 2023-08-15 | 2023-09-12 | 山东锋士信息技术有限公司 | 基于多尺度显著信息和双向特征融合的表面缺陷检测方法 |
WO2023173598A1 (zh) * | 2022-03-15 | 2023-09-21 | 中国华能集团清洁能源技术研究院有限公司 | 基于改进ssd模型的风机叶片缺陷检测方法及系统 |
CN117036412A (zh) * | 2023-08-23 | 2023-11-10 | 河南科技大学 | 一种融合可变形卷积的孪生网络红外行人目标跟踪方法 |
CN117218709A (zh) * | 2023-10-25 | 2023-12-12 | 福州大学 | 基于时间可变形注意力机制的居家老人实时状态监测方法 |
-
2023
- 2023-12-13 CN CN202311703447.0A patent/CN117408996B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114092389A (zh) * | 2021-09-13 | 2022-02-25 | 浙江大学 | 一种基于小样本学习的玻璃面板表面缺陷检测方法 |
WO2023039609A1 (en) * | 2021-09-13 | 2023-03-16 | Board Of Trustees Of The University Of Arkansas | Systems and processes for detection, segmentation, and classification of poultry carcass parts and defects |
WO2022099325A1 (en) * | 2022-01-10 | 2022-05-12 | Innopeak Technology, Inc. | Transformer-based scene text detection |
CN114445366A (zh) * | 2022-01-26 | 2022-05-06 | 沈阳派得林科技有限责任公司 | 基于自注意力网络的长输管道射线影像缺陷智能识别方法 |
WO2023155069A1 (zh) * | 2022-02-16 | 2023-08-24 | 佛山市南海区广工大数控装备协同创新研究院 | 一种基于深度学习的手机电池表面缺陷检测方法 |
WO2023173598A1 (zh) * | 2022-03-15 | 2023-09-21 | 中国华能集团清洁能源技术研究院有限公司 | 基于改进ssd模型的风机叶片缺陷检测方法及系统 |
CN115631411A (zh) * | 2022-09-28 | 2023-01-20 | 西安工程大学 | 基于sten网络对不同环境中的绝缘子破损检测方法 |
CN115619743A (zh) * | 2022-10-20 | 2023-01-17 | 华中科技大学 | Oled新型显示器件表面缺陷检测模型的构建方法及其应用 |
CN116563250A (zh) * | 2023-05-12 | 2023-08-08 | 南京信息工程大学 | 一种复原式自监督疵点检测方法、装置及存储介质 |
CN116740069A (zh) * | 2023-08-15 | 2023-09-12 | 山东锋士信息技术有限公司 | 基于多尺度显著信息和双向特征融合的表面缺陷检测方法 |
CN117036412A (zh) * | 2023-08-23 | 2023-11-10 | 河南科技大学 | 一种融合可变形卷积的孪生网络红外行人目标跟踪方法 |
CN117218709A (zh) * | 2023-10-25 | 2023-12-12 | 福州大学 | 基于时间可变形注意力机制的居家老人实时状态监测方法 |
Non-Patent Citations (3)
Title |
---|
Multilevel Feature Alignment Based on Spatial Attention Deformable Convolution for Cross-Scene Hyperspectral Image Classification;Wenxiang Zhu等;《IEEE Geoscience and Remote Sensing Letters 》;20221207;第19卷;1-5 * |
基于可变形卷积融合双注意力机制的缺陷检测方法;郑明明;《东北师大学报(自然科学版) 》;20230725(第2期);52-61 * |
带钢表面缺陷的一种在线检测识别算法研究;洪英等;《光电子 激光》;20150506;第26卷(第2期);320-327 * |
Also Published As
Publication number | Publication date |
---|---|
CN117408996A (zh) | 2024-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111489358B (zh) | 一种基于深度学习的三维点云语义分割方法 | |
CN110930454B (zh) | 一种基于边界框外关键点定位的六自由度位姿估计算法 | |
CN108961235B (zh) | 一种基于YOLOv3网络和粒子滤波算法的缺陷绝缘子识别方法 | |
CN110335290A (zh) | 基于注意力机制的孪生候选区域生成网络目标跟踪方法 | |
CN109086437B (zh) | 一种融合Faster-RCNN和Wasserstein自编码器的图像检索方法 | |
CN108399428A (zh) | 一种基于迹比准则的三元组损失函数设计方法 | |
CN108052966A (zh) | 基于卷积神经网络的遥感图像场景自动提取和分类方法 | |
Yang et al. | ANFIS construction with sparse data via group rule interpolation | |
CN111899203B (zh) | 基于标注图在无监督训练下的真实图像生成方法及存储介质 | |
CN111210446A (zh) | 一种视频目标分割方法、装置和设备 | |
CN115222998B (zh) | 一种图像分类方法 | |
CN111259938B (zh) | 基于流形学习和梯度提升模型的图片偏多标签分类方法 | |
CN113807340A (zh) | 一种基于注意力机制的不规则自然场景文本识别方法 | |
CN116091979A (zh) | 一种基于特征融合和通道注意力的目标跟踪方法 | |
CN115147601A (zh) | 基于自注意力全局特征增强的城市街道点云语义分割方法 | |
CN115546171A (zh) | 一种基于关注阴影边界和特征校正的阴影检测方法及设备 | |
Li et al. | Transductive distribution calibration for few-shot learning | |
CN116740069B (zh) | 基于多尺度显著信息和双向特征融合的表面缺陷检测方法 | |
Lv et al. | Contour deformation network for instance segmentation | |
CN117408996B (zh) | 基于缺陷专注和边缘权重损失的表面缺陷检测方法 | |
Luo et al. | M-DETR: Multi-scale DETR for Optical Music Recognition | |
CN118330787B (zh) | 一种基于多模态域变换和自适应融合的台风生成预报方法 | |
KR102431815B1 (ko) | 캡슐 네트워크 숏컷 라우팅 기반의 학습 방법 및 장치 | |
CN118314354B (zh) | 一种基于动态核和高斯核融合策略的语义分割方法 | |
Chen et al. | SASTA-Net: self-attention spatiotemporal adversarial network for typhoon prediction |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |