CN115578358A - 一种基于RecTransformer的表面缺陷检测模型的构建方法 - Google Patents
一种基于RecTransformer的表面缺陷检测模型的构建方法 Download PDFInfo
- Publication number
- CN115578358A CN115578358A CN202211294093.4A CN202211294093A CN115578358A CN 115578358 A CN115578358 A CN 115578358A CN 202211294093 A CN202211294093 A CN 202211294093A CN 115578358 A CN115578358 A CN 115578358A
- Authority
- CN
- China
- Prior art keywords
- patch
- defect detection
- vector
- surface defect
- embedding
- 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
- 230000007547 defect Effects 0.000 title claims abstract description 69
- 238000001514 detection method Methods 0.000 title claims abstract description 46
- 238000010276 construction Methods 0.000 title claims description 4
- 238000000034 method Methods 0.000 claims abstract description 27
- 238000012549 training Methods 0.000 claims abstract description 20
- 239000013598 vector Substances 0.000 claims description 56
- 238000010606 normalization Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 5
- 230000009467 reduction Effects 0.000 claims description 5
- 238000003860 storage Methods 0.000 claims description 5
- 238000013507 mapping Methods 0.000 claims description 4
- 230000009466 transformation Effects 0.000 claims description 4
- 230000007246 mechanism Effects 0.000 abstract description 17
- 230000002950 deficient Effects 0.000 abstract description 4
- 238000012545 processing Methods 0.000 abstract description 4
- 230000006870 function Effects 0.000 description 7
- 239000011159 matrix material Substances 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 230000008447 perception Effects 0.000 description 5
- 238000013527 convolutional neural network Methods 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 238000001994 activation Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 241000287196 Asthenes Species 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000000356 contaminant Substances 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000009776 industrial production Methods 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000035939 shock Effects 0.000 description 1
- 238000011524 similarity measure Methods 0.000 description 1
- 239000002904 solvent Substances 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
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
-
- 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
-
- 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]
-
- 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/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
- G06T2207/30121—CRT, LCD or plasma display
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Quality & Reliability (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于RecTransformer的表面缺陷检测模型的构建方法,属于图像处理领域。通过建立全局注意力机制,充分利用全局信息对缺陷样本进行补全。具体地,将输入图像嵌入到隐空间,建立全局和局部的位置嵌入编码,将输入图像序列化为图像块序列;堆叠多个Transformer编码器模块,学习隐空间特征;从图像全局出发,推测局部像素值,并充分利用全局特征信息引导网络识别缺陷区域;进一步地,建立多头特征注意力机制,分析patch序列中各patch受影响的程度,将图像重构任务转换为patch级别的重构。如此,本发明利用少量缺陷样本作为训练数据,即可对缺陷实现精确重构。
Description
技术领域
本发明属于图像处理领域,更具体地,涉及一种基于RecTransformer的表面缺陷检测模型的构建方法。
背景技术
如今,人们对显示器屏幕的依赖程度日益提高,随着电视机、智能手机、汽车仪表板到头戴式VR设备的盈余,我们对显示器质量和清晰度的需求也越来越强烈。例如,Mura是指显示器亮度不均匀,造成各种痕迹现象。显示器屏幕上的Mura影响也称为亮度不均匀性,其会减损用户的观看体验,并可能会妨碍显示器的性能或功能。
Mura是如今显示器屏幕(LCD和OLED)制造工艺的一个潜在副效应。显示器通常由粘合在一起的多个材料和基底层组成。几乎不可能每次都以绝对的精度将所有这些层粘合起来;各种接缝、迁移物、污染物、气泡或其他瑕疵可能会悄悄潜入。引起Mura缺陷的另一个原因可能是显示器面板本身的张紧,而这可能是由于机械应力、振动、震动或者在将显示器面板装配到设备外壳的过程中或在嵌入式显示器生产环境下发生的挤压或扭曲引起的。随着显示器越来越小型化,比如超薄面板和智能可穿戴设备中使用的显示器,制造过程中出现Mura缺陷的可能性只会增加。因此,针对显示器表面存在的,包括Mura在内的各种缺陷,进行及时和准确的检测,非常重要。
随着GPU的处理性能越来越强大,大而深的神经网络逐渐成为异常检测领域的主流方法。现有的方法普遍基于预训练模型,对其提取的特征进一步分析,从而分析缺陷属性,确定缺陷的位置,该类型方法通常称为隐空间嵌入方法。该类方法额外引入训练集,通常能提高预训练的特征提取器的表达能力,在针对某具体数据集进行微调,来适应多种表面异常的检测。然而,该类方法的训练与测试成本通常较大,预训练好的特征提取器通常由较大的骨干网络组成,如ResNet-50、ResNet-101等。尽管检测效果有着不错的表现,但其时间效率较低,网络复杂度也较高,针对一些具体的工业生产环境难以满足需求。
发明内容
针对现有技术的缺陷和改进需求,本发明提供了一种基于RecTransformer的表面缺陷检测模型的构建方法。在利用少量缺陷样本的情况下,精确检测包括Mura在内的各类型表面缺陷。RecTransformer将缺陷检测问题简化为patch级的图像补全问题,在不使用卷积的情况下,将分块的图像利用Transformer模型补全为无缺陷重构图像。本申请建立全局语义信息,在patch序列中建立注意力机制,同时用位置编码确定patch的空间信息,完成全局图像的重构。
为实现上述目的,第一方面,本发明提供了一种基于RecTransformer的表面缺陷检测模型的构建方法,包括:
搭建包括位置嵌入模块、主干网络和重构模块的表面缺陷检测模型;
所述位置嵌入模块,用于对原始图像分成的每个patch进行编码,得到各patch的patch序列;对任一个patch,利用该patch在原始图像中的位置关系建立全局位置嵌入向量;选取包含该patch的L×L个patch构成一个窗口,利用该patch在窗口中的位置关系建立局部位置嵌入向量;将该patch的patch序列、全局位置嵌入向量和局部位置嵌入向量进行融合,得到该patch的patch嵌入序列;再将所有patch的patch嵌入序列进行堆叠;
所述主干网络包括多个串联堆叠的标准Transformer编码器,每个编码器包括一个多头特征注意力层和一个多层感知机;
所述多头特征注意力层,用于根据堆叠的patch嵌入序列得到查询向量q、键向量k和值向量v,再将查询向量q、键向量k和值向量v切分成h份;对每一份查询向量qi、键向量ki求相似性,作为对应值向量vi的权重,其中i∈{1,...,h},将所有包含权重的值向量vi组合得到包含全局信息的特征Z;将所述特征Z降维到所述堆叠的patch嵌入序列的维度;
所述多层感知机,用于对降维后的特征进行解码,得到新的patch嵌入序列,作为下一个编码器的输入;
所述重构模块,用于根据主干网络输出的patch嵌入序列重构各个patch;
任取一个patch,以最小化该patch的重构patch与原始patch的像素值差异和结构相似性为目标,训练所述表面缺陷检测模型。
进一步地,所述多头特征注意力层,还用于将降维后的特征与该多头特征注意力层的输入进行融合,作为多层感知机的输入;
所述多层感知机,还用于将新的patch嵌入序列与该多层感知机的输入进行融合,作为下一个编码器的输入。
进一步地,每个编码器还包括两个层归一化,一个层归一化位于多头特征注意力层之前,用于对多头特征注意力层的输入进行归一化;另一个层归一化位于多层感知机之前,用于对多层感知机的输入进行归一化。
进一步地,所述该patch在原始图像中的位置关系表示为:
fg(x,y)=(x-1)·N+y
所述该patch在窗口中的位置关系表示为:
fl(x,y)=(x-r)·L+y-c+1
其中,x、y分别表示该patch在原始图像被划分成的网格中所处的行号和列号;N=H/K表示每行分解的网格数目,H表示原始图像的宽,K表示正方形patch的尺寸;(r,c)表示窗口左上角的patch在原始图像中对应的行和列坐标位置。
进一步地,基于正余弦函数的位置嵌入方式,得到全局位置嵌入向量和局部位置嵌入向量。
进一步地,所述根据主干网络输出的patch嵌入序列重构各个patch,具体为:
将主干网络输出的patch嵌入序列进行投影变换,映射为图像块,作为重构的patch。
第二方面,本发明提供了一种基于RecTransformer的表面缺陷检测方法,其特征在于,包括:
将待检测图像分成若干patch,输入到采用第一方面所述的基于RecTransformer的表面缺陷检测模型的构建方法所构建的表面缺陷检测模型中,得到每个patch的重构patch;
组合所有的重构patch得到重构图像,并与所述待检测图像作差,得到检测结果。
第三方面,本发明提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序被处理器运行时控制所述存储介质所在设备执行如第一方面所述的基于RecTransformer的表面缺陷检测模型的构建方法和/或,如第二方面所述的基于RecTransformer的表面缺陷检测方法。
总体而言,通过本发明所构思的以上技术方案,能够取得以下有益效果:
(1)本发明参考Transformer的一般形式,堆叠多个Transformer子块,来分析图像特征。从图像全局出发,推测局部像素值,并充分利用全局特征信息引导网络识别缺陷区域;进一步地,建立多头特征注意力机制,分析patch序列中各patch受影响的程度,将图像重构任务转换为patch级别的重构。不同于卷积神经网络通过逐层的卷积核来增大感受野,导致全局信息得不到充分利用,本申请可以解决大尺度缺陷在局部感知中存在表达能力差的问题。
(2)本发明使用多个编码器模块堆叠组成主干网络,PEM对输入的图像进行patch序列化并进行局部和全局两个尺度的位置嵌入,增强了特征的使用效率;多头特征注意力MFSA帮助网络建立注意力机制,利用整张图像信息来重构patch,进而获得完整的重构图像。
附图说明
图1是本发明设计的RecTransformer网络的结构示意图;
图2是本发明设计的RecTransformer网络中图像块位置编码示意图,其中(a)为全局位置编码,(b)为局部位置编码;
图3是本发明设计的RecTransformer网络中编码器结构示意图;
图4是本发明提供的RecTransformer网络中多头特征注意力MFSA计算流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
在本发明中,本发明及附图中的术语“第一”、“第二”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
Transformer最先起源于NLP领域中,随着BERT使用Transformer后在各个NLP任务中表现出强大统治力后,该模型结构迅速统治了NLP领域。受其能力的启发,研究人员发现了该结构在计算机视觉任务中也有着不俗的表现,在CNN统治视觉领域的十余年中,Transformer正在作为新兴研究框架发挥着强大作用。
Transformer整体结构由编码器模块-解码器模块的形式组成,每个编码器模块和解码器模块由若干个编码器和解码器堆叠而成。一般地,编码器由自注意力层(Self-attention Layer)和前馈神经网络(feedforward neural network,FNN)组成;解码器由掩膜自注意力层、自注意力层和前馈神经网络组成。不同于卷积网络的局部感知,某些情况下,全局注意力让Transformer能对特征表达更加全面具体。
自注意力机制是Transformer最为核心的内容。首先自注意力机制计算出三个向量,分别记作Query、Key和Value,在Transformer,这三个向量通过输入的嵌入向量(Embedding)和参数矩阵相乘得到,如下式所示:
其中,WQ、WK和WV表示对应向量的参数矩阵,其参数在训练中被随机初始化,并且随着训练进行会更新。其次,计算出自注意力的分数值,即在某个位置对输入进行编码后,对输入序列其他部分的注意程度。注意力的计算如下所示:
其中,KT表示K的转置矩阵;dk为向量的维度。
Transformer逐渐在视觉领域每个子任务中崭露头角,Swin Transformer(Shifted windows Transformer,Swin Transformer)更是在三大视觉任务中均表现出色。这些方法的研究视野更加宽广,在大型数据集进行预训练,在具体下游任务微调,同样取得显著的效果。
然而,性能的提升是以倍增的模型成本来实现的,所有的Transformer都具有庞大的参数规模,复杂的模型并不能满足工业检测的需求,巨大的模型也难以部署在工业现场。轻量且高效的Transformer网络才能适用于包括新型显示器件Mura缺陷在内的各类型表面缺陷检测。
大尺度表面缺陷检测的关键是能从全局特征分析出异常特征,以实现包括Mura在内的各类型缺陷。Mura缺陷往往形状多变,并且多数Mura缺陷表现出大尺度的特征,因此,对不同尺度缺陷的准确检测成为关键。全局信息的利用是基于CNN的方法短板,因其局部感知的特性,对大尺度的缺陷检测效果较差。针对上述问题,本发明提出了一种基于RecTransformer的表面缺陷检测模型的构建方法,通过沿用Transformer网络的注意力机制,在利用少量真实缺陷样本的情况下,实现包括Mura在内的各类型表面缺陷的精确检测。
如图1所示,表面缺陷检测模型,即RecTransformer网络包括位置嵌入模块、主干网络和重构模块。以下对各模块进行详细说明。
(1)位置嵌入模块(Position Embedding Module,PEM)
不同于文本类型输入本身带有先后顺序,图像的patch序列并不存在先后顺序,因此需要位置信息编码入原始输入,形成位置嵌入来使网络充分利用patch之间的位置信息。PEM建立局部和全局的位置嵌入向量,提高特征的利用率。
具体的,对于原始图像In,本发明中满足其中H和W表示原始图像In的宽和高的尺寸,C表示原始图像In的通道数。本发明中,设定K为正方形patch的尺寸,因此原图像在宽和高方向分别被分解成N和M个小的patch,每个patch可表达为:
本发明旨在通过全局信息重建某局部特征,即在原始图像In中,再次选取L×L个patch构成一个窗口,使用所有patch来重建窗口内对应某具体patch的特征,来实现patch级别的图像补全。
因此,L×L区域内的窗口,可用下式表示:
Window={r,...,r+L-1}×{c,...,c+L-1} (4)
一般地,(r,c)表示窗口在原始图像In中的相对坐标,即该窗口左上角的patch在原始图像In中对应的行和列坐标位置。
如图2所示,在窗口之内,可建立局部的patch位置关系;在从整张图像来看,窗口内的patch可在全局上建立位置关系。对于位置嵌入的方式,ViT中通过实验证明不同的位置嵌入方式差别不大,因此,本发明同样沿用最简单的一维位置嵌入。则全局和局部的一维序列映射可表示为:
fg(i,j)=(i-1)·N+j (5)
fl(i,j)=(i-r)·L+j-c+1 (6)
为保证固定长度的序列送入Transformer网络,patch序列化后需加入位置信息,并且转换为维数为D的隐空间向量。本发明使用经典的三角函数位置嵌入方式,对patch序列的位置嵌入可用下式表达:
因此,Transformer网络的输入可表示为位置嵌入的线性投影,如下所示:
其中,表示线性投影的参数矩阵,设重建patch的全局坐标为(a,b),则(i,j)表示patch序列中不含坐标为(a,b)的所有patch。为了重建坐标为(a,b)的某具体patch,采用类似的位置嵌入方式对其处理,如下式:
y=concat[c;y1;...;yN·M] (10)
(2)主干网络(Backbone Network)
主干网络使用若干个Transformer的编码器进行堆叠,在本发明中,共设计堆叠n个编码器。如图3所示,每个编码器设计有一个多头特征注意力层和一个多层感知机,在每个参数层之前设计有层归一化,为加速收敛,提高网络的细节表达能力,在两个参数层之后进行残差连接,每个编码器模块计算如下式:
其中,yin=PEM(flatten(In)),表示对原始图像In展平成patch序列以及进行位置嵌入;LN(·)表示层归一化操作。由于图像是基于全局视野感知的特征信息,因此在图像处理领域中的Transformer通常不需要掩膜注意力。
多个编码器模块的堆叠导致网络加深,在网络早期注意力权重同样集中于空间背景,完整的输入图像已经在浅层融合。为了将网络浅层的特征信息传入更深的部分,主干网络建立编码器模块间的跨越连接,第一个模块与最后一个模块连接的U-net结构,为便于表达,图1并未显示跨越连接。
如图4所示,自注意力是Transformer最重要的组成部分,也是本发明中建立patch补全的重要操作,自注意力应用于图像序列化后的隐空间嵌入y。
Z=concat[Z1;Z2;...;Zh] (16)
多头特征注意力机制可表达为:
MSA(y)=ZWMSA=[Z1;Z2;...;Zh]WMSA (17)
其中,WMSA表示一个可学习的参数矩阵,满足本发明的图像补全假设可以通过上述多头注意力机制进行。然而,异常检测中,尤其是Mura缺陷的检测,图像被切分为patch序列后发现,每个不包含缺陷的patch表现出极大的相似性,这就会导致式(14)的计算值不会有很大的区分性,让注意力机制的有效性下降。
本发明将查询向量q、键向量k的注意力分数计算进行优化,提高二者的参数复杂度,来缓解此处产生的类似“欠拟合”的问题。如下所示:
上式表示通过设计多层感知机,来实现特征充分表达。本发明中设定的MLP仅包含一层隐藏层,并且依旧使用式(12)所示的GELU函数进行激活。使用D″表示降维后的维度,头数D″=D/h′则对于每一个头i∈{1,...,h′},切分后的查询向量q、键向量k可表示为则式(14)和式(15)可表示为:
因此,根据式(17),本发明使用的多头特征注意力可具体表达为:
MFSA(y)=Z′WMSA=[Z′1;Z′2;...;Z′h]WMFSA (21)
多头注意力机制在整个图像的尺度上建立了关系,不同于CNN网络的局部感知特性,RecTransformer网络借助多头特征注意力机制使用全局信息来重建某特定patch,对特征的利用率更高,尤其是针对大尺度Mura缺陷时,能更有效地进行检测。
(3)重构模块
重构模块,用于根据主干网络输出的patch嵌入序列重构各个patch。
具体的,每个编码器的输入与输出维度一致,在若干编码器的等维度变换后,为还原图像信息,另使用一投影向量将特征向量映射为图像块,从而计算出损失,本发明中,设计一层全连接层来将特征映射回图像块尺寸。
另一方面,本申请提供了RecTransformer网络的训练和测试过程:
RecTransformer在训练中随机选取patch作为重构目标,局部位置嵌入使用的窗口为包含该目标patch的某随机窗口,然后通过RecTransformer网络进行训练。
在训练中,对于正常样本,针对所有patch都进行自身补全;而对于训练中包含的一些带有缺陷的真实样本,加入其对应的像素级标签进行辅助训练。patch中的无缺陷位置完成自身重构,而对于带有缺陷的位置引导其产生大的重构误差,从而让网络对缺陷产生更多的注意力。本申请中使用像素级损失和SSIM损失作为训练的损失函数,在不同层面上对重构质量进行约束,突出重构细节信息。
具体地,结构相似性指数(SSIM)可以作为度量两个给定图像之间相似度的度量指标,其能更准确地衡量缺陷,尤其针对表面纹理缺陷。本申请中使用像素级损失和SSIM损失作为训练的损失函数,在不同层面上对重构质量进行约束,突出重构细节信息。
其中,α、β和γ分别表示三项相似度的权重超参数。一般地,亮度通过patch间的平均值μp和来体现;对比度主要体现在不同patch的方差和结构差异用两个patch的协方差表示。以上三项衡量指标可用下式表示:
网络训练完成后,在推理阶段RecTransformer依然采用求残差的方式来分割缺陷,即通过将整张测试图像重构出来,与输入图像求差值来确定差异大的区域为缺陷区域。对于任意的patch的坐标为(a,b),满足a∈N,b∈M,将原始图像中的所有patch进行重建,RecTransformer可获得完整的重构图像。
具体的,RecTransformer的超参数主要包括n、K、L、D和h。
n是RecTransformer主干网络编码器模块堆叠的数目。n的取值较大会带来网络参数量的增加,模型复杂度上升。缺陷检测上的面对的图像背景重复性较高,为平衡检测精度和训练效率,本发明设定n=8。
K是RecTransformer输入的patch序列中每个patch的尺寸。K的大小影响注意力的计算,K决定了序列中每一小部分覆盖的区域大小。本发明中设定K=16。
L表示局部位置嵌入计算中窗口的大小。L的大小决定覆盖的patch的数目,局部位置嵌入应选取小范围的窗口,大的窗口会与全局位置嵌入作用相似。本发明中设定L=5。
D是隐空间的维度。D衡量了隐空间的特征量,过大的D会导致模型复杂度的上升,并且会占用更多计算资源。本发明中设定D=512,D″=256。
h是多头特征注意力机制中的头数。h是借鉴CNN的思想,将patch嵌入在更低的维度,同时在多个特征空间中计算注意力,能更容易学习到丰富的特征信息。本发明中设定h=8。
综上所述,针对少量缺陷样本时复杂纹理背景表面的缺陷检测难题,提出基于RecTransformer的表面缺陷检测模型。通过建立全局注意力机制,充分利用全局信息对缺陷样本进行补全。具体地,将输入图像嵌入到隐空间,建立全局和局部的位置嵌入编码,将输入图像序列化为图像块序列;堆叠多个Transformer编码器模块,学习隐空间特征;提出多头特征注意力机制,充分学习全局特征,提高信息利用率,将缺陷位置进行补全复原,实现了表面缺陷的特征学习与精确的背景重构。利用少量缺陷样本作为训练数据,RecTransformer算法可对缺陷实现精确重构,在数据集中表现出了最高的像素级分割AuROC分数97.6%,在通用表面缺陷数据集上的实验证明了RecTransformer算法的有效性。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种基于RecTransformer的表面缺陷检测模型的构建方法,其特征在于,包括:
搭建包括位置嵌入模块、主干网络和重构模块的表面缺陷检测模型;
所述位置嵌入模块,用于对原始图像分成的每个patch进行编码,得到各patch的patch序列;对任一个patch,利用该patch在原始图像中的位置关系建立全局位置嵌入向量;选取包含该patch的L×L个patch构成一个窗口,利用该patch在窗口中的位置关系建立局部位置嵌入向量;将该patch的patch序列、全局位置嵌入向量和局部位置嵌入向量进行融合,得到该patch的patch嵌入序列;再将所有patch的patch嵌入序列进行堆叠;
所述主干网络包括多个串联堆叠的标准Transformer编码器,每个编码器包括一个多头特征注意力层和一个多层感知机;
所述多头特征注意力层,用于根据堆叠的patch嵌入序列得到查询向量q、键向量k和值向量v,再将查询向量q、键向量k和值向量v切分成h份;对每一份查询向量qi、键向量ki求相似性,作为对应值向量vi的权重,其中i∈{1,...,h},将所有包含权重的值向量vi组合得到包含全局信息的特征Z;将所述特征Z降维到所述堆叠的patch嵌入序列的维度;
所述多层感知机,用于对降维后的特征进行解码,得到新的patch嵌入序列,作为下一个编码器的输入;
所述重构模块,用于根据主干网络输出的patch嵌入序列重构各个patch;
任取一个patch,以最小化该patch的重构patch与原始patch的像素值差异和结构相似性为目标,训练所述表面缺陷检测模型。
2.根据权利要求1所述的基于RecTransformer的表面缺陷检测模型的构建方法,其特征在于,所述多头特征注意力层,还用于将降维后的特征与该多头特征注意力层的输入进行融合,作为多层感知机的输入;
所述多层感知机,还用于将新的patch嵌入序列与该多层感知机的输入进行融合,作为下一个编码器的输入。
3.根据权利要求1或2所述的基于RecTransformer的表面缺陷检测模型的构建方法,其特征在于,每个编码器还包括两个层归一化,一个层归一化位于多头特征注意力层之前,用于对多头特征注意力层的输入进行归一化;另一个层归一化位于多层感知机之前,用于对多层感知机的输入进行归一化。
4.根据权利要求1所述的基于RecTransformer的表面缺陷检测模型的构建方法,其特征在于,所述该patch在原始图像中的位置关系表示为:
fg(x,y)=(x-1)·N+y
所述该patch在窗口中的位置关系表示为:
fl(x,y)=(x-r)·L+y-c+1
其中,x、y分别表示该patch在原始图像被划分成的网格中所处的行号和列号;N=H/K表示每行分解的网格数目,H表示原始图像的宽,K表示正方形patch的尺寸;(r,c)表示窗口左上角的patch在原始图像中对应的行和列坐标位置。
5.根据权利要求1或4所述的基于RecTransformer的表面缺陷检测模型的构建方法,其特征在于,基于正余弦函数的位置嵌入方式,得到全局位置嵌入向量和局部位置嵌入向量。
6.根据权利要求1所述的基于RecTransformer的表面缺陷检测模型的构建方法,其特征在于,所述根据主干网络输出的patch嵌入序列重构各个patch,具体为:
将主干网络输出的patch嵌入序列进行投影变换,映射为图像块,作为重构的patch。
7.一种基于RecTransformer的表面缺陷检测方法,其特征在于,包括:
将待检测图像分成若干patch,输入到采用权利要求1至6任一项所述的基于RecTransformer的表面缺陷检测模型的构建方法所构建的表面缺陷检测模型中,得到每个patch的重构patch;
组合所有的重构patch得到重构图像,并与所述待检测图像作差,得到检测结果。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序被处理器运行时控制所述存储介质所在设备执行如权利要求1至6任一项所述的基于RecTransformer的表面缺陷检测模型的构建方法和/或,如权利要求7所述的基于RecTransformer的表面缺陷检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211294093.4A CN115578358A (zh) | 2022-10-21 | 2022-10-21 | 一种基于RecTransformer的表面缺陷检测模型的构建方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211294093.4A CN115578358A (zh) | 2022-10-21 | 2022-10-21 | 一种基于RecTransformer的表面缺陷检测模型的构建方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115578358A true CN115578358A (zh) | 2023-01-06 |
Family
ID=84587643
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211294093.4A Pending CN115578358A (zh) | 2022-10-21 | 2022-10-21 | 一种基于RecTransformer的表面缺陷检测模型的构建方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115578358A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116824629A (zh) * | 2023-06-02 | 2023-09-29 | 大连理工大学 | 基于毫米波雷达的高鲁棒手势识别方法 |
CN117292237A (zh) * | 2023-09-25 | 2023-12-26 | 深圳大学 | 基于局部Transformer网络的联合重构方法、装置及介质 |
-
2022
- 2022-10-21 CN CN202211294093.4A patent/CN115578358A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116824629A (zh) * | 2023-06-02 | 2023-09-29 | 大连理工大学 | 基于毫米波雷达的高鲁棒手势识别方法 |
CN117292237A (zh) * | 2023-09-25 | 2023-12-26 | 深圳大学 | 基于局部Transformer网络的联合重构方法、装置及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115578358A (zh) | 一种基于RecTransformer的表面缺陷检测模型的构建方法 | |
CN113743514B (zh) | 一种基于知识蒸馏的目标检测方法及目标检测终端 | |
CN106683048A (zh) | 一种图像超分辨率方法及设备 | |
CN109242033A (zh) | 晶片缺陷模式分类方法及装置、存储介质、电子设备 | |
Kekre et al. | Speech data compression using vector quantization | |
CN116229295A (zh) | 基于融合卷积注意力机制的遥感图像目标检测方法 | |
US20230162477A1 (en) | Method for training model based on knowledge distillation, and electronic device | |
CN114022506B (zh) | 一种边缘先验融合多头注意力机制的图像修复方法 | |
CN113609965A (zh) | 文字识别模型的训练方法及装置、存储介质、电子设备 | |
CN113065496B (zh) | 神经网络机器翻译模型训练方法、机器翻译方法和装置 | |
CN113901909A (zh) | 基于视频的目标检测方法、装置、电子设备和存储介质 | |
CN111739037B (zh) | 一种针对室内场景rgb-d图像的语义分割方法 | |
CN110880193A (zh) | 一种利用深度语义分割技术的图像压缩方法 | |
CN114463759A (zh) | 一种基于无锚框算法的轻量化文字检测方法及装置 | |
US20230102804A1 (en) | Method of rectifying text image, training method, electronic device, and medium | |
CN111242874A (zh) | 图像修复的方法、装置、电子设备和存储介质 | |
CN116703947A (zh) | 一种基于注意力机制和知识蒸馏的图像语义分割方法 | |
CN115239642A (zh) | 一种输电线路中小金具缺陷的检测方法、检测装置和设备 | |
CN116523875A (zh) | 基于FPGA预处理与改进YOLOv5的绝缘子缺陷检测方法 | |
CN114066959B (zh) | 基于Transformer的单幅条纹图深度估计方法 | |
CN114972780A (zh) | 一种基于改进YOLOv5的轻量化目标检测网络 | |
CN117475322A (zh) | 一种面向遥感影像海陆分割的编-解码联合式深度神经网络构建方法 | |
CN117152815A (zh) | 一种学生活动伴随式数据分析方法、装置及设备 | |
CN116630387A (zh) | 基于注意力机制的单目图像深度估计方法 | |
DE112020000172T5 (de) | Beantworten von kognitiven abfragen von sensoreingabesignalen |
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 |