CN113947567B - 基于多任务学习的缺陷检测方法 - Google Patents
基于多任务学习的缺陷检测方法 Download PDFInfo
- Publication number
- CN113947567B CN113947567B CN202111110729.0A CN202111110729A CN113947567B CN 113947567 B CN113947567 B CN 113947567B CN 202111110729 A CN202111110729 A CN 202111110729A CN 113947567 B CN113947567 B CN 113947567B
- Authority
- CN
- China
- Prior art keywords
- image
- training
- defect
- healer
- divider
- 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 96
- 238000001514 detection method Methods 0.000 title claims abstract description 60
- 230000011218 segmentation Effects 0.000 claims abstract description 46
- 238000013528 artificial neural network Methods 0.000 claims abstract description 27
- 230000006870 function Effects 0.000 claims abstract description 20
- 230000008439 repair process Effects 0.000 claims abstract description 18
- 238000012549 training Methods 0.000 claims description 78
- 238000000034 method Methods 0.000 claims description 29
- 239000013598 vector Substances 0.000 claims description 22
- 238000012360 testing method Methods 0.000 claims description 15
- 230000002950 deficient Effects 0.000 claims description 14
- 238000007500 overflow downdraw method Methods 0.000 claims description 8
- 238000010586 diagram Methods 0.000 claims description 6
- 239000011159 matrix material Substances 0.000 claims description 6
- 230000004927 fusion Effects 0.000 claims description 5
- 238000001914 filtration Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 claims description 3
- 238000004088 simulation Methods 0.000 description 13
- 238000011176 pooling Methods 0.000 description 9
- 230000000694 effects Effects 0.000 description 8
- 238000013527 convolutional neural network Methods 0.000 description 6
- 238000013135 deep learning Methods 0.000 description 5
- 238000005070 sampling Methods 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 230000004807 localization Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000010420 art technique Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000002372 labelling Methods 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
- 230000001537 neural effect Effects 0.000 description 1
- 238000003908 quality control method Methods 0.000 description 1
- 238000011897 real-time detection Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000010561 standard procedure Methods 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/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4038—Image mosaicing, e.g. composing plane images from plane sub-images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- 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
- 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/20—Special algorithmic details
- G06T2207/20212—Image combination
- G06T2207/20221—Image fusion; Image merging
-
- 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)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本发明提供了一种基于多任务学习的缺陷检测方法,可用于检测纹理表面的缺陷。本发明利用深度神经网络初步提取图像的纹理特征,通过缺陷修复模块,获取像素级别的检测结果,通过缺陷分割模块,获取粗略缺陷定位结果,最后将两者融合获得精确的缺陷检测结果。本发明通过构造多任务学习的网络结构,使得网络在仅使用粗略标签的情况下获得精确检测结果,实现缺陷检测功能。
Description
技术领域
本发明属于图像处理技术领域,是属于工业视觉领域可以更精确的检测和定位产品缺陷的一种基于多任务学习的缺陷检测方法。本发明可用于自动化工业场景中的产品缺陷检测,提取输入图像的特征并修复其中有缺陷的像素,最终通过修复图和输入图的对比实现对缺陷分割和定位的功能。
背景技术
缺陷检测方法目前存在三种方法。第一种训练CNN网络对输入图像或者输入图像的像素块进行二分类达到检测缺陷的效果。第二种使用基于目标检测的方法对输入图像中的缺陷进行定位达到检测缺陷的效果。第三种使用基于语义分割的方法将输入图中的缺陷像素分割出来达到缺陷检测的目的。神经网络拥有多层网络结构,能够提取出数据的高阶特征,因此常用于图像视频处理任务中。多任务学习可以通过对多个不同但相关的任务共享同一个特征提取器,使得多个任务同时优化,从而促进每个任务的学习。基于多任务学习的缺陷检测方法主要思想为:利用神经网络对输入图像进行初步的图像特征提取,随后主任务网络使用提取到的高阶特征将输入图像中的缺陷修复并重构出一张修复后的图片,辅助任务使用同样的高阶特征利用语义分割的方法生成一个缺陷分割结果图,随后将两个任务的结果融合得到最终的检测结果。
T.Wang,Y.Chen和M.Qiao在其发表的论文“A fast and robust convolutionalneural networkbased defect detection model in product quality control”(IntJAdv ManufTechnol 94,2018:3465-3471)中提出了一种基于CNN网络的缺陷检测方法。该方法将输入图像分块后输入到卷积神经网络中,训练一个二类分类器,用于判别输入像素块是否含有缺陷。该方法的不足是:对缺陷的定位精度受限于像素块的大小,无法灵活精确定位缺陷。
J.Li,Z.Su,J.GengY,Yin等人在其发表的论文“Real-time detection ofsteelstrip surface defect based on improvedYOLO detection network”(In:IFAG-PapersOnLine,vol 51,no 21,2018:76-81)中提出一种基于目标检测方法YOLO的缺陷检测方法。该方法继承了目标检测方法YOLO整体的框架,并做除了一些改进在缺陷检测任务中也取得了不错的效果。该方法的缺点有:对然可以提供比CNN更精确的定位结果,但是但是精度仅局限于定位框,无法针对缺陷做出像素级的定位结果。
X.Tao,D.Zhang,W.Ma等人在其发表的论文“Automatic metallic surfacedefect detection and recognition with convolutional neural networks”(Appl.Sci,vol 8,2018:1575)提出一种基于语义分割的缺陷检测方法。使用卷积编码器搭建的分割网络对输入图片中的缺陷进行分割。该方法解决了上前面两种方法所面临的问题可以得到精确的像素级分割和定位结果。但是仍存在一些问题:该方法需要大量精确标注的缺陷训练样本,而在实际生产中缺陷样本极其稀少,而且标注成本巨大,训练数据难以获得。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种基于多任务学习的缺陷检测方法,来解决现有技术需要大量精确标注的缺陷训练样本,而在实际生产中缺陷样本极其稀少,而且标注成本巨大,训练数据难以获得的问题。
为了达到上述目的,本发明所采用的具体技术方案如下:
一种基于多任务学习的缺陷检测方法,具体包括以下步骤:
(1)将设定数量的缺陷图像数据和正常图像数据按照设定比例组成训练集和测试集;
(2)若处于训练阶段,则利用融合方法对数据集进行扩增,即将训练集和测试集中的缺陷数据叠加到正常数据中,构造出扩增缺陷图像;否则直接执行下一步;
(3)利用自编码器提取训练集中每个图像的特征向量;
(4)搭建解码器作为修复器,将步骤(3)中的特征向量输入修复器,对特征向量进行重构,获得无缺陷的修复图像,在训练阶段计算修复图像和原始图像的损失来约束模型进行学习,在测试阶段计算修复图像与原图像的残差图;
(5)搭建解码器作为分割器,将步骤(3)中的特征向量按照顺序拼接为一张特征图,将特征图输入分割器,得到二值分割图,获取图像的粗略分割结果;在训练阶段,计算二值分割图与训练标签的交叉熵损失来约束模型进行学习;
(6)搭建供修复器和分割器共享的编码器,构建多任务学习框架,使得修复器和分割器同时训练和互相学习,在预测阶段,融合修复器和分割器的输出结果以获取检测结果。
优选的,步骤(2)若处于训练阶段,则利用融合方法对数据集进行扩增,具体指的是:
若处于训练阶段,则利用泊松融合方法对数据集进行扩增。
优选的,步骤(3)具体包括以下步骤:
(3a)搭建设定层数的神经网络,设置并训练每层参数;
(3b)将训练集中的图像分块输入训练后的神经网络,获得设定数量的特征向量。
优选的,步骤(4)具体包括以下步骤:
(4a)搭建设定层数的神经网络,并与自编码器对应层数添加短接线,设置并训练每层参数;
(4b)将特征向量输入神经网络,重构获得无缺陷的修复图像,若为训练阶段,则执行步骤(4c),若为预测阶段,执行步骤(4d);
(4c)计算修复图像和原始图像的损失来约束模型进行学习,损失函数为
其中,Lr表示一个批次的损失,Xi表示修复图片的第i个像素块的像素矩阵,Xi *表示原始正常图片的第i个像素块的像素矩阵,n表示一个训练批次中的像素块数量;
将重构的无缺陷像素块按裁切的顺序拼接,获得完整的修复图片;
(4d)计算修复图像与原图像的差值,并通过一个阈值来决策一个像素是否为缺陷像素,最终获得残差图。
优选的,步骤(5)具体包括以下步骤:
(5a)搭建设定层的神经网络,设置并训练每层参数;
(5b)将步骤(3)中的特征向量按照顺序拼接为一张特征图;
(5c)将特征图输入训练后的神经网络,得到二值分割图,获取图像的粗略分割结果;若为训练阶段,执行步骤(5d);
(5d)计算二值分割图与训练标签的交叉熵损失来约束模型进行学习,损失函数为
其中,W和H分别表示为二值分割图的宽和高,K表示类别数(背景和缺陷),wk表示第k类的权重系数用于平衡类别不均衡,yij表示第(i,j)像素所属类别的标签,当yij=k时,1(yij==k)取1,否则取0,pk(mij)表示第(i,j)像素属于第k类的概率。
优选的,步骤(5c)中重构得到二值分割图过程中的重构损失函数如下:
其中,Xi'为未叠加缺陷的训练图像,Xi *'为经过叠加缺陷再修复之后获取的图像。
优选的,步骤(6)具体包括以下步骤:
(6a)构建供修复器和分割器共享的编码器,并对修复器和分割器进行同时训练;
(6b)构建全局损失函数来训练整个模型,全局损失函数为
其中,λ用于平衡两个相关任务的差异度;通过将不同任务损失函数加权的方式,在不同任务中达到平衡,提高收敛效率;
(6c)在预测阶段,融合修复器和分割器的输出结果以获取检测结果。
优选的,步骤(6)中融合修复器和分割器的输出结果以获取检测结果具体指的是
融合修复器和分割器的输出结果,使用分割图来滤除残差图中的噪声以获得更加精确的检测结果。
优选的,步骤(6)中融合修复器和分割器的输出结果指的是
对残差图二值化,将修复器获取的二值分割图和分割器获取的二值分割图进行融合。
优选的,步骤(6)中构建多任务学习架构,设计的两个相关任务分别为修复缺陷与缺陷定位。
本发明的有益效果在于:
第一,由于在训练数据集生成时,采用融合算法生成有缺陷的样本,以此来解决训练样本缺少的问题;此外本方法中只需要粗略标注的样本,而不是语义分割方法中需要的精确的标注样本,这大大降低了获取训练数据的成本和难度。技术做了这些变化,本发明的效果仍然可以和精确标注样本训练的语义分割方法竞争。
第二,使用两个相关的任务同时训练,主任务用于缺陷的修复任务,辅助任务用于生成缺陷的大致分割结果,通过将辅助任务的结果和主任务结果融合,来消除主任务结果中的噪声,从而达到降噪的目的,同时使得本发明对缺陷分割定位的结果更加精确。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一种基于多任务学习的缺陷检测方法的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的其他实施例,都属于本发明保护的范围。
实现本发明目的的思路是,通过共享同一个特征提取器,使得缺陷修复器和缺陷分割器的学习可以相互促进,从而达到提升检测效果的目的。
如图1所示,本发明提出了一种基于多任务学习的缺陷检测方法,具体包括以下步骤:
(1)生成训练集和测试集:
将设定数量的缺陷图像数据和正常图像数据按照设定比例组成训练集和测试集;具体的,可从每个数据集包含缺陷数据150个及正常数据1000个,共有6个数据集,随机选择100个缺陷数据和500个正常数据组成训练集,剩下50个缺陷数据和500个正常数据组成测试集;
(2)利用泊松融合方法对数据集进行扩增:
若处于训练阶段,则利用融合方法对数据集进行扩增,即将训练集和测试集中的缺陷数据叠加到正常数据中,构造出扩增缺陷图像;否则直接执行下一步;
具体的,可利用泊松融合方法将缺陷数据中的缺陷像素叠加到正常数据中,从而构造出缺陷数据用于神经网络的训练;
(3)利用自编码器提取每个纹理图像的特征:
利用自编码器提取训练集中每个图像的特征向量;
步骤(3)具体包括以下步骤:
(3a)搭建设定层数的神经网络,设置并训练每层参数;
例如,搭建一个十一层的神经网络:其结构依次为:第一空漏洞卷积层—>第二卷积层—>第一池化层—>第三漏洞卷积层—>第四卷积层—>第二池化层—>第五漏洞卷积层—>第六卷积层—>第三池化层—>第七漏洞卷积层—>第八卷积层—>第四池化层—>第九漏洞卷积层—>第十卷积层—>第十一卷积层。
其每层参数设置如下:将第一第二卷积层的卷积核大小设置为3×3,个数设置为64,将第三第四卷积层的卷积核大小设置为3×3,个数设置为128,将第五第六卷积层的卷积核大小设置为3×3,个数设置为256,将第七第八卷积层的卷积核大小设置为3×3,个数设置为512,第九第十卷积层的卷积核大小设置为3×3,个数设置为1024,将第十一卷积层的卷积核设置为4×4,个数为256;每个池化层均采用最大池化方式,每个池化层的卷积池化核大小均设置的为2×2,步长均设置为2。
(3b)将训练集中的图像分块输入训练后的神经网络,获得设定数量的特征向量。
将训练集中的图片分块输入到神经网络,对于每张图片可获得256个特征向量。
(4)利用解码器(记为修复器)修复缺陷图片中的缺陷像素:
搭建解码器作为修复器,将步骤(3)中的特征向量输入修复器,对特征向量进行重构,获得无缺陷的修复图像,在训练阶段计算修复图像和原始图像的损失来约束模型进行学习,在测试阶段计算修复图像与原图像的残差图;
步骤(4)具体包括以下步骤:
(4a)搭建设定层数的神经网络,并与自编码器对应层数添加短接线,设置并训练每层参数;
搭建一个十二层网络,其结构依次为:第一逆卷积层—>第二卷积层—>第三卷积层—>第一上采样层—>第四卷积层—>第五卷积层—>第二上采样层—>第六卷积层—>第七卷积层—>第三上采样层—>第八卷积层—>第九卷积层—>第四上采样层—>第十卷积层—>第十一卷积层—>第十二卷积层。
每层参数设置如下:将第一逆卷积层的卷积核大小设置为4×4,个数设置为1024,将第二第三卷积层的卷积核大小设置为3×3,个数设置为512,将第四第五卷积层的卷积核大小设置为3×3,个数设置为256,将第六第七卷积层的卷积核大小设置为3×3,个数设置为128,第八第九卷积层的卷积核大小设置为3×3,个数设置为64,将第十第十一卷积层的卷积核设置为3×3,个数为64,第十二卷积层的卷积核设置为1×1,个数为1;每个上采样层的卷积采样倍率大小均设置为2×2。
(4b)将特征向量输入神经网络,重构获得无缺陷的修复图像,若为训练阶段,则执行步骤(4c),若为预测阶段,执行步骤(4d);
经过修复器网络之后,会得到256个经过修复的像素块,按照顺序将它们拼接起来,就可以得到一张经过修复的图像。
(4c)计算修复图像和原始图像的损失来约束模型进行学习,损失函数为
其中,Lr表示一个批次的损失,Xi表示修复图片的第i个像素块的像素矩阵,Xi *表示原始正常图片的第i个像素块的像素矩阵,n表示一个训练批次中的像素块数量;
将重构的无缺陷像素块按裁切的顺序拼接,获得完整的修复图片;
(4d)计算修复图像与原图像的差值,并通过一个阈值r来决策一个像素是否为缺陷像素,最终获得残差图。
(5)利用解码器(记为分割器)获取缺陷图像的粗略分割结果:
搭建解码器作为分割器,将步骤(3)中的特征向量按照顺序拼接为一张特征图,将特征图输入分割器,得到二值分割图,获取图像的粗略分割结果;在训练阶段,计算二值分割图与训练标签的交叉熵损失来约束模型进行学习;
步骤(5)具体包括以下步骤:
(5a)搭建设定层的神经网络,设置并训练每层参数;
搭建一个十三层的神经网络,其结构依次为:第一卷积层—>第二卷积层—>第一上采样层—>第三卷积层—>第四卷积层—>第二上采样层—>第五卷积层—>第六卷积层—>第三上采样层—>第七卷积层—>第八卷积层—>第四上采样层—>第九卷积层—>第十卷积层—>第五上采样层—>第十一卷积层—>第十二卷积层—>第十三卷积层。
每层参数设置如下:将第一第二卷积层的卷积核大小设置为3×3,个数设置为1024,将第三第四卷积层的卷积核大小设置为3×3,个数设置为512,将第五第六卷积层的卷积核大小设置为3×3,个数设置为256,将第七第八卷积层的卷积核大小设置为3×3,个数设置为128,第九第十卷积层的卷积核大小设置为3×3,个数设置为64,将第十一第十二卷积层的卷积核设置为3×3,个数为64,第十三卷积层的卷积核设置为1×1,个数为2;每个上采样层的卷积采样倍率大小均设置为2×2。
(5b)将步骤(3)中的特征向量按照顺序拼接为一张特征图;
(5c)将特征图输入训练后的神经网络,得到二值分割图,获取图像的粗略分割结果;该分割图将输入图中的缺陷的大致位置标注出来。若为训练阶段,执行步骤(5d);
步骤(5c)中重构得到二值分割图过程中的重构损失函数如下:
其中,Xi'为未叠加缺陷的训练图像,Xi *'为经过叠加缺陷再修复之后获取的图像。
(5d)计算二值分割图与训练标签的交叉熵损失来约束模型进行学习,损失函数为
其中,W和H分别表示为二值分割图的宽和高,K表示类别数(背景和缺陷),wk表示第k类的权重系数用于平衡类别不均衡,yij表示第(i,j)像素所属类别的标签,当yij=k时,1(yij==k)取1,否则取0,pk(mij)表示第(i,j)像素属于第k类的概率。
(6)搭建供修复器和分割器共享的编码器,构建多任务学习框架,使得修复器和分割器同时训练和互相学习,在预测阶段,融合修复器和分割器的输出结果以获取检测结果。
步骤(6)具体包括以下步骤:
(6a)构建供修复器和分割器共享的编码器,并对修复器和分割器进行同时训练;
(6b)构建全局损失函数来训练整个模型,全局损失函数为
其中,λ用于平衡两个相关任务的差异度;通过将不同任务损失函数加权的方式,在不同任务中达到平衡,提高收敛效率;
(6c)在预测阶段,融合修复器和分割器的输出结果以获取检测结果。
优选的,步骤(6)中融合修复器和分割器的输出结果以获取检测结果具体指的是
融合修复器和分割器的输出结果,使用分割图来滤除残差图中的噪声以获得更加精确的检测结果。
优选的,步骤(6)中融合修复器和分割器的输出结果指的是
对残差图二值化,将修复器获取的二值分割图和分割器获取的二值分割图进行融合。
优选的,步骤(6)中构建多任务学习架构,设计的两个相关任务分别为修复缺陷与缺陷定位。
本发明的效果可通过以下仿真进一步说明。
1.仿真条件:
本发明的仿真实验的硬件平台为:NVIDIARTX 3090GPU。
本发明的仿真实验的软件平台为:Ubuntu20.04操作系统和Pytorch1.8.0。
2.仿真内容及仿真结果分析:
本发明仿真实验中生成训练集和测试集时使用了DGAM纹理缺陷数据集,该数据集由10个子数据集组成,每个子数据集都有一种不同的纹理,其中前六个子数据集有500正常75缺陷的训练集和500正常75缺陷测试集,后四个子数据集有1000正常150缺陷的训练集和1000正常150缺陷测试集。
本发明仿真实验是采用本发明和三个现有技术(全卷积语义分割网络FCN检测方法、基于U-Net的堆叠卷积自编码器CASAE检测方法、基于分割的深度学习检测方法SNDN)分别在只使用若标签的情况下,对选中的六个子测试数据集进行检测,并对比。
在仿真实验中,采用的三个现有技术是指:
全卷积语义分割网络FCN检测方法是指,J.Long等人在“Fully convolutionalnetworks for semantic segmentation.In:Proc.IEEE Conf.Comput.Vis.PatternRecognit.,pp.3431-3440,2015”中提出的全卷积语义分割方法,简称全卷积语义分割网络FCN检测方法。
基于U-Net的堆叠卷积自编码器CASAE检测方法是指,J.Chen等人在“Automaticdefect detection of fasteners on the catenary support device using deepconvolutional neural networks,IEEE Trans.Instrumentation andMeasurement,pp.257-269,2018”中提出的堆叠自编码器检测方法,简称基于U-Net的堆叠卷积自编码器CASAE检测方法。
基于分割的深度学习检测方法SNDN是指,D.Tabernik等人在“Segmentationbased deep learning approach for surface defect detection,J Intell.Manuf.,pp.759-776,2020”中提出的基于分割的方法,简称基于分割的深度学习检测方法SNDN。
为了对本发明仿真的结果的效果进行评估,仿真结果评估标准为:mean-IOU,该指标最大为1,数值越大则效果越好,表1如下所示。
表1仿真实验中本发明和各现有技术准确率对比表
表1是采用现有技术基于mean-IOU评估标准方法得到的仿真结果,全卷积语义分割网络FCN检测方法(FCN)、基于U-Net的堆叠卷积自编码器CASAE检测方法(CASAE)、基于分割的深度学习检测方法(SNDN)对比实验后,计算检测准确率对比表。
从表1中可以看出本发明方法的mean-IOU指标在六个子数据集中最高可以达到74.62%,最低为55.40%,均高于3种现有技术方法,证明本方法可以更准确的对纹理表面缺陷更准确的检测。
本发明还可以用于解决工业自动化生产线中的自动质量检测问题。
以上述依据本发明的理想实施例为启示,通过上述的说明内容,本领域技术人员完全可以在不偏离本发明技术思想的范围内,进行多样的变更以及修改。本发明的技术性范围并不局限于说明书上的内容,必须要根据权利要求书范围来确定其技术性范围。
Claims (10)
1.一种基于多任务学习的缺陷检测方法,其特征在于,具体包括以下步骤:
(1)将设定数量的缺陷图像数据和正常图像数据按照设定比例组成训练集和测试集;
(2)若处于训练阶段,则利用融合方法对数据集进行扩增,即将训练集和测试集中的缺陷数据叠加到正常数据中,构造出扩增缺陷图像;否则直接执行下一步;
(3)利用自编码器提取训练集中每个图像的特征向量;
(4)搭建解码器作为修复器,将步骤(3)中的特征向量输入修复器,对特征向量进行重构,获得无缺陷的修复图像,在训练阶段计算修复图像和原始图像的损失来约束模型进行学习,在测试阶段计算修复图像与原图像的残差图;
(5)搭建解码器作为分割器,将步骤(3)中的特征向量按照顺序拼接为一张特征图,将特征图输入分割器,得到二值分割图,获取图像的粗略分割结果;在训练阶段,计算二值分割图与训练标签的交叉熵损失来约束模型进行学习;
(6)搭建供修复器和分割器共享的编码器,构建多任务学习框架,使得修复器和分割器同时训练和互相学习,在预测阶段,融合修复器和分割器的输出结果以获取检测结果。
2.根据权利要求1所述的基于多任务学习的缺陷检测方法,其特征在于,步骤(2)若处于训练阶段,则利用融合方法对数据集进行扩增,具体指的是:
若处于训练阶段,则利用泊松融合方法对数据集进行扩增。
3.根据权利要求1所述的基于多任务学习的缺陷检测方法,其特征在于,步骤(3)具体包括以下步骤:
(3a)搭建设定层数的神经网络,设置并训练每层参数;
(3b)将训练集中的图像分块输入训练后的神经网络,获得设定数量的特征向量。
4.根据权利要求1所述的基于多任务学习的缺陷检测方法,其特征在于,步骤(4)具体包括以下步骤:
(4a)搭建设定层数的神经网络,并与自编码器对应层数添加短接线,设置并训练每层参数;
(4b)将特征向量输入神经网络,重构获得无缺陷的修复图像,若为训练阶段,则执行步骤(4c),若为预测阶段,执行步骤(4d);
(4c)计算修复图像和原始图像的损失来约束模型进行学习,损失函数为
其中,Lr表示一个批次的损失,Xi表示修复图片的第i个像素块的像素矩阵,表示原始正常图片的第i个像素块的像素矩阵,n表示一个训练批次中的像素块数量;
将重构的无缺陷像素块按裁切的顺序拼接,获得完整的修复图片;
(4d)计算修复图像与原图像的差值,并通过一个阈值来决策一个像素是否为缺陷像素,最终获得残差图。
5.根据权利要求1所述的基于多任务学习的缺陷检测方法,其特征在于,步骤(5)具体包括以下步骤:
(5a)搭建设定层的神经网络,设置并训练每层参数;
(5b)将步骤(3)中的特征向量按照顺序拼接为一张特征图;
(5c)将特征图输入训练后的神经网络,重构得到二值分割图,获取图像的粗略分割结果;若为训练阶段,执行步骤(5d);
(5d)计算二值分割图与训练标签的交叉熵损失来约束模型进行学习,损失函数为
其中,W和H分别表示为二值分割图的宽和高,K表示类别数(背景和缺陷),wk表示第k类的权重系数用于平衡类别不均衡,yij表示第(i,j)像素所属类别的标签,当yij=k时,1(yij==k)取1,否则取0,pk(mij)表示第(i,j)像素属于第k类的概率。
6.根据权利要求5所述的基于多任务学习的缺陷检测方法,其特征在于,步骤(5c)中重构得到二值分割图过程中的重构损失函数如下:
其中,Xi'为未叠加缺陷的训练图像,Xi *'为经过叠加缺陷再修复之后获取的图像。
7.根据权利要求1所述的基于多任务学习的缺陷检测方法,其特征在于,步骤(6)具体包括以下步骤:
(6a)构建供修复器和分割器共享的编码器,并对修复器和分割器进行同时训练;
(6b)构建全局损失函数来训练整个模型,全局损失函数为
其中,λ用于平衡两个相关任务的差异度;通过将不同任务损失函数加权的方式,在不同任务中达到平衡,提高收敛效率;
(6c)在预测阶段,融合修复器和分割器的输出结果以获取检测结果。
8.根据权利要求1或7所述的基于多任务学习的缺陷检测方法,其特征在于,步骤(6)中融合修复器和分割器的输出结果以获取检测结果具体指的是
融合修复器和分割器的输出结果,使用分割图来滤除残差图中的噪声以获得更加精确的检测结果。
9.根据权利要求8所述的基于多任务学习的缺陷检测方法,其特征在于,步骤(6)中融合修复器和分割器的输出结果指的是
对残差图二值化,将修复器获取的二值分割图和分割器获取的二值分割图进行融合。
10.根据权利要求1所述的基于多任务学习的缺陷检测方法,其特征在于,步骤(6)中构建多任务学习架构,设计的两个相关任务分别为修复缺陷与缺陷定位。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111110729.0A CN113947567B (zh) | 2021-09-23 | 2021-09-23 | 基于多任务学习的缺陷检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111110729.0A CN113947567B (zh) | 2021-09-23 | 2021-09-23 | 基于多任务学习的缺陷检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113947567A CN113947567A (zh) | 2022-01-18 |
CN113947567B true CN113947567B (zh) | 2024-03-22 |
Family
ID=79328877
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111110729.0A Active CN113947567B (zh) | 2021-09-23 | 2021-09-23 | 基于多任务学习的缺陷检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113947567B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111768388A (zh) * | 2020-07-01 | 2020-10-13 | 哈尔滨工业大学(深圳) | 一种基于正样本参考的产品表面缺陷检测方法及系统 |
CN111951249A (zh) * | 2020-08-13 | 2020-11-17 | 浙江理工大学 | 基于多任务学习网络的手机导光板缺陷可视化检测方法 |
CN112164033A (zh) * | 2020-09-14 | 2021-01-01 | 华中科技大学 | 一种基于异常特征编辑的对抗网络纹理表面缺陷检测方法 |
AU2020103905A4 (en) * | 2020-12-04 | 2021-02-11 | Chongqing Normal University | Unsupervised cross-domain self-adaptive medical image segmentation method based on deep adversarial learning |
CN112700432A (zh) * | 2021-01-12 | 2021-04-23 | 华中科技大学 | 一种基于异常合成与分解的纹理表面缺陷检测方法与系统 |
-
2021
- 2021-09-23 CN CN202111110729.0A patent/CN113947567B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111768388A (zh) * | 2020-07-01 | 2020-10-13 | 哈尔滨工业大学(深圳) | 一种基于正样本参考的产品表面缺陷检测方法及系统 |
CN111951249A (zh) * | 2020-08-13 | 2020-11-17 | 浙江理工大学 | 基于多任务学习网络的手机导光板缺陷可视化检测方法 |
CN112164033A (zh) * | 2020-09-14 | 2021-01-01 | 华中科技大学 | 一种基于异常特征编辑的对抗网络纹理表面缺陷检测方法 |
AU2020103905A4 (en) * | 2020-12-04 | 2021-02-11 | Chongqing Normal University | Unsupervised cross-domain self-adaptive medical image segmentation method based on deep adversarial learning |
CN112700432A (zh) * | 2021-01-12 | 2021-04-23 | 华中科技大学 | 一种基于异常合成与分解的纹理表面缺陷检测方法与系统 |
Non-Patent Citations (1)
Title |
---|
柳锋 ; 李俊峰 ; 戴文战 ; .基于深度学习语义分割的导光板缺陷检测方法.计算机系统应用.2020,(第06期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN113947567A (zh) | 2022-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108647585B (zh) | 一种基于多尺度循环注意力网络的交通标识符检测方法 | |
CN109712127B (zh) | 一种用于机巡视频流的输电线路故障检测方法 | |
CN111080609B (zh) | 一种基于深度学习的闸瓦插销丢失检测方法 | |
CN112766110A (zh) | 物体缺陷识别模型的训练方法、物体缺陷识别方法及装置 | |
CN114742799B (zh) | 基于自监督异构网络的工业场景未知类型缺陷分割方法 | |
CN115830004A (zh) | 表面缺陷检测方法、装置、计算机设备和存储介质 | |
CN114170144A (zh) | 一种输电线路销钉缺陷检测方法、设备及介质 | |
CN116579992A (zh) | 一种用于无人机巡检的小目标螺栓缺陷检测方法 | |
CN116703885A (zh) | 一种基于Swin Transformer的表面缺陷检测方法及系统 | |
CN115631411A (zh) | 基于sten网络对不同环境中的绝缘子破损检测方法 | |
CN115063725A (zh) | 基于多尺度自适应ssd算法的飞机蒙皮缺陷识别系统 | |
CN114913148A (zh) | 基于无监督学习的丝印疵点检测方法、装置及存储介质 | |
CN114612803A (zh) | 一种改进CenterNet的输电线路绝缘子缺陷检测方法 | |
CN114241344A (zh) | 一种基于深度学习的植物叶片病虫害严重程度评估方法 | |
CN112837281B (zh) | 基于级联卷积神经网络的销钉缺陷识别方法、装置和设备 | |
CN116485802B (zh) | 一种绝缘子闪络缺陷检测方法、装置、设备及存储介质 | |
Shit et al. | An encoder‐decoder based CNN architecture using end to end dehaze and detection network for proper image visualization and detection | |
CN113947567B (zh) | 基于多任务学习的缺陷检测方法 | |
CN112200766A (zh) | 基于区域关联神经网络的工业产品表面缺陷检测方法 | |
CN111612803A (zh) | 一种基于图像清晰度的车辆图像语义分割方法 | |
CN116188361A (zh) | 一种基于深度学习的铝型材表面缺陷分类方法及装置 | |
CN115330743A (zh) | 基于双光检测缺陷的方法及相应的系统 | |
CN115035108A (zh) | 一种基于深度学习的绝缘子缺陷检测方法 | |
CN115131244A (zh) | 基于对抗学习的单幅图像去雨方法及系统 | |
CN113763384A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |