CN113379689B - 一种基于深度学习的缺陷检测算法 - Google Patents
一种基于深度学习的缺陷检测算法 Download PDFInfo
- Publication number
- CN113379689B CN113379689B CN202110599182.9A CN202110599182A CN113379689B CN 113379689 B CN113379689 B CN 113379689B CN 202110599182 A CN202110599182 A CN 202110599182A CN 113379689 B CN113379689 B CN 113379689B
- Authority
- CN
- China
- Prior art keywords
- defect
- image
- feature
- positive sample
- test
- 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 98
- 238000001514 detection method Methods 0.000 title claims abstract description 21
- 238000013135 deep learning Methods 0.000 title claims abstract description 11
- 238000012360 testing method Methods 0.000 claims abstract description 38
- 238000000034 method Methods 0.000 claims abstract description 28
- 238000012549 training Methods 0.000 claims abstract description 24
- 238000001914 filtration Methods 0.000 claims abstract description 9
- 229910000831 Steel Inorganic materials 0.000 claims description 32
- 239000010959 steel Substances 0.000 claims description 32
- 239000013598 vector Substances 0.000 claims description 18
- 230000002950 deficient Effects 0.000 claims description 9
- 230000004913 activation Effects 0.000 claims description 6
- 238000010276 construction Methods 0.000 claims description 6
- 238000005516 engineering process Methods 0.000 claims description 6
- 230000006870 function Effects 0.000 claims description 6
- 238000009499 grossing Methods 0.000 claims description 6
- 238000011176 pooling Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 claims description 6
- 238000012935 Averaging Methods 0.000 claims description 5
- 238000004519 manufacturing process Methods 0.000 claims description 4
- 238000003672 processing method Methods 0.000 claims description 3
- 238000009826 distribution Methods 0.000 description 3
- 230000011218 segmentation Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000009776 industrial production Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000008667 sleep stage 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
- G06F18/24147—Distances to closest patterns, e.g. nearest neighbour classification
-
- 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/4023—Scaling of whole images or parts thereof, e.g. expanding or contracting based on decimating pixels or lines of pixels; based on inserting pixels or lines of pixels
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本发明公开一种基于深度学习的缺陷检测方法,该方法包含以下步骤:使用预训练权重网络对正样本进行特征提取,并建立特征库;使用相同网络对测试集的样本进行特征提取;在提取完测试图像的特征以后,使用KNN算法通过比较最后一层的图像级之间的距离来获取与测试图像最相似的K个正样本图片;再比较测试图片和K个正样本的中间层输出特征图之间的像素级距离来获取每一层的缺陷得分图;再将不同层的特征图通过插值resize为图像大小,并取平均值;最后将得到的缺陷得分图进行高斯滤波;设定阈值获得图片的缺陷mask。本发明方法无需额外的训练就可以简单有效的获取测试图像的缺陷图。
Description
技术领域
本发明涉及模式识别、数字图像处理领域,具体涉及一种基于深度学习的缺陷检测方法。
背景技术
基于深度学习的缺陷检测方法能够应对一定的工业检测环境变化,逐渐得到了广泛的应用。方法依据数据标签的不同,分为全监督学习模型、无监督学习模型和其他方法(半监督学习模型和弱监督学习模型)。
由于复杂多变的工业生产环境(光照不均、电磁等因素)的影响,导致正常图像因为噪声等因素与缺陷图像相似;产品表面复杂多变和背景纹理复杂使缺陷样本由于缺陷弱小与正常图像相似,缺陷区域与背景区分度较小,缺陷特征不易检测等。
目前,大量的研究工作着眼于全监督学习方向。其关注缺陷特征,利用标记了标签的缺陷图像输入到网络中进行训练,“缺陷”意味着标记过的区域或者图像。但是,全监督学习需要大量的异常样本,而在实际生产中,缺陷样本难以获取,用于训练的缺陷样本非常少,标注成本高。另外,由于工业流水线上产品缺陷是随机的、多样的、未知的,许多泛化能力较差的模型往往会失效。全监督学习在缺陷的定位分割方面存在挑战。
而无监督学习模型关注无缺陷(正常样本)特征,利用正常无缺陷样本进行网络训练,缺陷检测过程中发现未出现的特征即认为检测出缺陷,“缺陷”意味着异常。其减少了样本的需求,具备强大的正常样本分布的重建和判别能力,在对缺陷的定位分割中提高了算法决策的可解释性,便于操作者和人工智能系统之间建立信任。
无监督学习方法依据处理空间的不同分为两种。一种基于图像空间利用网络进行样本重建,利用输入图像减去重构图像获得残差图像,利用残差分布检测是否存在缺陷,标定缺陷位置,进行异常分割。该方法关注生成模型,如AutoEncoder和GAN,但简单的逐像素比较或重构的误差可能导致缺陷检测性能较差。
另一种方法基于特征空间通过正常样本与缺陷样本特征分布之间的差异(异常分数) 进行缺陷检测。当异常分数高于某个值,即可认为出现缺陷。传统上认为基于特征空间的方法往往只能实现图像级别的分类或识别,无法获取像素级别的缺陷位置。实际上,通过子图像对齐的方法,可以快速准确稳定地实现缺陷位置的精确定位。
发明内容
发明目的:针对以上问题,本发明提出一种基于深度学习的缺陷检测方法,运用预训练权重网络提取正样本和测试样本特征,通过KNN算法、像素对齐与深度特征金字塔相对应获取每层缺陷得分图,通过设定阈值获取图片缺陷图,以实现用基于特征空间的无监督学习方法快速准确稳定地获取像素级别缺陷位置,提高缺陷检测性能。
技术方案:为实现本发明的目的,本发明提出一种基于深度学习的缺陷检测方法,具体包括以下步骤:
步骤1:获取工业摄像机拍摄的钢球图片构建数据集,利用传统缺陷检测和数字图像处理方法划分出钢球正样本构建训练集,其余样本作为测试集;
步骤2:使用预训练权重网络对正样本进行特征提取,并建立特征库;
步骤3:在建立完正样本图像的特征库后,使用相同的预训练网络对测试图像进行特征提取,并使用KNN算法获取与测试图像最为相似的正样本图片;
步骤4:再比较测试图片与K个正样本图片每个中间层输出特征图的像素级之间的差别,来获取每一个中间层的缺陷得分图;
步骤5:将每层得到的缺陷得分图resize到图片大小,取平均值,使用高斯滤波平滑缺陷得分图,设定阈值来获取缺陷的mask。
进一步的,所述步骤1,获取钢球图片,划分训练集和测试集,方法如下:
运用工业摄像机对生产钢球进行拍摄,得到钢球图像,拍摄中由于钢球所处位置不同,受到的定点光源所发射的光线照射不同,导致每个钢球受到的光照不均匀;
运用传统缺陷检测技术和数字图像处理技术检测钢球缺陷并进行标注,有缺陷的钢球图像为负样本,没有缺陷的钢球图像为正样本;
钢球图像正样本被划分为训练集,其余样本被划分为测试集。
进一步的,所述步骤2,使用预训练权重网络对正样本进行特征提取,并建立特征库,方法如下:
使用在ImageNet数据集上预先训练的ResNet特征提取器来提取正样本的特征向量以及中间层输出的特征图,将其保存并建立特征库;使用在最后一个卷积层的 global-pooling输出的特征向量作为图像级特征,用于后面选取K个与测试图像最为相似的正样本图片;使用中间层激活函数输出的特征图作为图像的像素级特征,用于后面获得每一层的缺陷得分图。
进一步的,所述步骤3,使用相同的预训练网络对测试图像进行特征提取,并使用KNN算法来获取与测试图像最为相似的正样本图片,方法如下:
同样使用ResNet特征提取器提取测试图像的特征向量以及中间层输出的特征图,使用最后一个卷积层的global-pooling输出的特征向量与特征库中所有正样本最后一层的特征向量进行比较,采用欧氏距离,选取前K个欧氏距离较小的正样本图片,即K个与测试图像最为相似的正样本。
进一步的,所述步骤4,比较测试图片与K个正样本图片像素级之间的差别,来获取每个中间层的缺陷得分图,方法如下:
比较测试图片与K个正样本对应中间层激活函数输出的特征图之间的差异,即像素级之间的差别,因为与K个正样本进行比较,选取像素差异的最小值的作为对应位置处缺陷得分图的得分,从而获取每个中间层的缺陷得分图。
进一步的,所述步骤5,将每层得到的缺陷得分图resize到图片大小,取平均值后,使用高斯滤波平滑缺陷得分图,设定阈值来获取缺陷的mask,方法如下:
将每一个中间层获得的缺陷得分图通过双线性插值resize到原图像的大小,然后将resize后的所有缺陷得分图合并取平均值,最后使用一次高斯滤波来平滑缺陷得分图,即可得到最终的缺陷得分图,得分越高的位置处,表示越有可能为缺陷,可以设定阈值来获取缺陷的mask。
附图说明
图1是本发明方法的具体流程图;
图2是基于深度学习的缺陷检测框架示意图;
图3是本发明的常规情况经过处理后的最终图像。
具体实施方式
下面结合附图和示例对本发明中的细节进行进一步的说明。
本发明提出一种基于深度学习的睡眠分期方法,如图1所示,具体包括以下步骤:
步骤1:获取工业摄像机拍摄的钢球图片构建数据集,利用传统缺陷检测和数字图像处理方法划分出钢球正样本构建训练集,其余样本作为测试集,具体如下:
使用工业摄像机对生产钢球进行拍摄,得到钢球图像,拍摄中由于钢球所处位置不同,受到的定点光源所发射的光线照射不同,导致每个钢球受到的光照不均匀;运用传统缺陷检测技术和数字图像处理技术检测钢球缺陷并进行标注和提取,有缺陷的钢球图像为负样本,没有缺陷的钢球图像为正样本;钢球图像正样本被划分为训练集,其余样本被划分为测试集。
步骤2:使用预训练权重网络对正样本进行特征提取,并建立特征库;具体如下:
使用在ImageNet数据集上预先训练的ResNet特征提取器来提取正样本的特征向量以及中间层输出的特征图,将其保存并建立特征库;使用在最后一个卷积层的 global-pooling输出的特征向量作为图像级特征,用于后面选取K个与测试图像最为相似的正样本图片;使用中间层激活函数输出的特征图作为图像的像素级特征,用于后面获得每一层的缺陷得分图。
步骤3:在建立完正样本图像的特征库后,使用相同的预训练网络对测试图像进行特征提取,并使用KNN算法获取与测试图像最为相似的正样本图片;具体如下:
同样使用ResNet特征提取器提取测试图像的特征向量以及中间层输出的特征图,使用最后一个卷积层的global-pooling输出的特征向量与特征库中所有正样本最后一层的特征向量进行比较,采用欧氏距离,选取前K个欧氏距离较小的正样本图片,即K个与测试图像最为相似的正样本。
步骤4:再比较测试图片与K个正样本图片每个中间层输出特征图的像素级之间的差别,来获取每一个中间层的缺陷得分图;具体如下:
比较测试图片与K个正样本对应中间层激活函数输出的特征图之间的差异,即像素级之间的差别,因为与K个正样本进行比较,选取像素差异的最小值的作为对应位置处缺陷得分图的得分,从而获取每个中间层的缺陷得分图。
步骤5:将每层得到的缺陷得分图resize到图片大小,取平均值,使用高斯滤波平滑缺陷得分图,设定阈值来获取缺陷的mask;具体如下:
将每一个中间层获得的缺陷得分图通过双线性插值resize到原图像的大小,然后将 resize后的所有缺陷得分图合并取平均值,最后使用一次高斯滤波来平滑缺陷得分图,即可得到最终的缺陷得分图,得分越高的位置处,表示越有可能为缺陷,可以设定阈值来获取缺陷的mask。
Claims (3)
1.一种基于深度学习的缺陷检测方法,其特征在于,该方法包括以下步骤:
步骤1:获取工业摄像机拍摄的钢球图片构建数据集,利用传统缺陷检测和数字图像处理方法划分出钢球正样本构建训练集,其余样本作为测试集;
步骤2:使用预训练权重网络对正样本进行特征提取,并建立特征库;
步骤3:在建立完正样本图像的特征库后,使用相同的预训练网络对测试图像进行特征提取,并使用KNN算法获取与测试图像最为相似的正样本图片;
步骤4:再比较测试图片与K个正样本图片每个中间层输出特征图的像素级之间的差别,来获取每一个中间层的缺陷得分图;
步骤5:将每层得到的缺陷得分图resize到图片大小,取平均值,使用高斯滤波平滑缺陷得分图,设定阈值来获取缺陷的mask;
所述步骤2,使用预训练权重网络对正样本进行特征提取,并建立特征库,方法如下:
使用在ImageNet数据集上预先训练的ResNet特征提取器来提取正样本的特征向量以及中间层输出的特征图,将其保存并建立特征库;使用在最后一个卷积层的global-pooling输出的特征向量作为图像级特征,用于后面选取K个与测试图像最为相似的正样本图片;使用中间层激活函数输出的特征图作为图像的像素级特征,用于后面获得每一层的缺陷得分图;
所述步骤3,使用相同的预训练网络对测试图像进行特征提取,并使用KNN算法来获取与测试图像最为相似的正样本图片,方法如下:
同样使用ResNet特征提取器提取测试图像的特征向量以及中间层输出的特征图,使用最后一个卷积层的global-pooling输出的特征向量与特征库中所有正样本最后一层的特征向量进行比较,采用欧氏距离,选取前K个欧氏距离较小的正样本图片,即K个与测试图像最为相似的正样本;
所述步骤4,比较测试图片与K个正样本图片像素级之间的差别,来获取每个中间层的缺陷得分图,方法如下:
比较测试图片与K个正样本对应中间层激活函数输出的特征图之间的差异,即像素级之间的差别,因为与K个正样本进行比较,选取像素差异的最小值的作为对应位置处缺陷得分图的得分,从而获取每个中间层的缺陷得分图。
2.根据权利要求1所述的一种基于深度学习的缺陷检测方法,其特征在于,所述步骤1,获取钢球图片,划分训练集和测试集,方法如下:
运用工业摄像机对生产钢球进行拍摄,得到钢球图像,拍摄中由于钢球所处位置不同,受到的定点光源所发射的光线照射不同,导致每个钢球受到的光照不均匀;
运用传统缺陷检测技术和数字图像处理技术检测钢球缺陷并进行标注,有缺陷的钢球图像为负样本,没有缺陷的钢球图像为正样本;
钢球图像正样本被划分为训练集,其余样本被划分为测试集。
3.根据权利要求2所述的一种基于深度学习的缺陷检测方法,其特征在于,所述步骤5,将每层得到的缺陷得分图resize到图片大小,取平均值后,使用高斯滤波平滑缺陷得分图,设定阈值来获取缺陷的mask,方法如下:
将每一个中间层获得的缺陷得分图通过双线性插值resize到原图像的大小,然后将resize后的所有缺陷得分图合并取平均值,最后使用一次高斯滤波来平滑缺陷得分图,即可得到最终的缺陷得分图,得分越高的位置处,表示越有可能为缺陷,设定阈值来获取缺陷的mask。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110599182.9A CN113379689B (zh) | 2021-05-31 | 2021-05-31 | 一种基于深度学习的缺陷检测算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110599182.9A CN113379689B (zh) | 2021-05-31 | 2021-05-31 | 一种基于深度学习的缺陷检测算法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113379689A CN113379689A (zh) | 2021-09-10 |
CN113379689B true CN113379689B (zh) | 2024-05-10 |
Family
ID=77575018
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110599182.9A Active CN113379689B (zh) | 2021-05-31 | 2021-05-31 | 一种基于深度学习的缺陷检测算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113379689B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109342456A (zh) * | 2018-09-14 | 2019-02-15 | 广东工业大学 | 一种焊点缺陷检测方法、装置、设备及可读存储介质 |
WO2019233166A1 (zh) * | 2018-06-04 | 2019-12-12 | 杭州海康威视数字技术股份有限公司 | 一种表面缺陷检测方法、装置及电子设备 |
CN111223093A (zh) * | 2020-03-04 | 2020-06-02 | 武汉精立电子技术有限公司 | 一种aoi缺陷检测方法 |
CN111768388A (zh) * | 2020-07-01 | 2020-10-13 | 哈尔滨工业大学(深圳) | 一种基于正样本参考的产品表面缺陷检测方法及系统 |
-
2021
- 2021-05-31 CN CN202110599182.9A patent/CN113379689B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019233166A1 (zh) * | 2018-06-04 | 2019-12-12 | 杭州海康威视数字技术股份有限公司 | 一种表面缺陷检测方法、装置及电子设备 |
CN109342456A (zh) * | 2018-09-14 | 2019-02-15 | 广东工业大学 | 一种焊点缺陷检测方法、装置、设备及可读存储介质 |
CN111223093A (zh) * | 2020-03-04 | 2020-06-02 | 武汉精立电子技术有限公司 | 一种aoi缺陷检测方法 |
CN111768388A (zh) * | 2020-07-01 | 2020-10-13 | 哈尔滨工业大学(深圳) | 一种基于正样本参考的产品表面缺陷检测方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN113379689A (zh) | 2021-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8331650B2 (en) | Methods, systems and apparatus for defect detection | |
WO2021137745A1 (en) | A method for detection of imperfections in products | |
CN114092387B (zh) | 生成可用于检查半导体样本的训练数据 | |
CN111539330B (zh) | 一种基于双svm多分类器的变电站数显仪表识别方法 | |
CN111738211B (zh) | 基于动态背景补偿与深度学习的ptz摄像机运动目标检测与识别方法 | |
CN113706490B (zh) | 一种晶片缺陷检测方法 | |
CN111582126A (zh) | 基于多尺度行人轮廓分割融合的行人重识别方法 | |
CN113516619B (zh) | 一种基于图像处理技术的产品表面瑕疵识别方法 | |
Zhao et al. | Research on detection method for the leakage of underwater pipeline by YOLOv3 | |
CN111739003A (zh) | 一种用于外观检测的机器视觉算法 | |
KR20230023263A (ko) | 딥러닝 기반 하수도 결함 감지 방법 및 그 장치 | |
CN117671299A (zh) | 一种回环检测方法、装置、设备及存储介质 | |
CN114140373A (zh) | 一种基于LabVIEW深度学习的开关缺陷检测方法 | |
Zhang et al. | Reading various types of pointer meters under extreme motion blur | |
CN113379689B (zh) | 一种基于深度学习的缺陷检测算法 | |
CN114120318B (zh) | 一种基于集成决策树的暗场图像目标点精确提取方法 | |
CN116523916A (zh) | 产品表面缺陷检测方法、装置、电子设备及存储介质 | |
Ibrahem et al. | Weakly supervised traffic sign detection in real time using single CNN architecture for multiple purposes | |
CN107122783A (zh) | 一种基于角点检测的装配连接件快速识别方法 | |
CN117274148B (zh) | 基于深度学习的无监督晶圆缺陷检测方法 | |
CN117474916B (zh) | 一种图像检测方法、电子设备及存储介质 | |
Zhao et al. | Robust object tracking via sparse representation based on compressive collaborative Haar-like feature space | |
Wang et al. | A Casting Surface Dataset and Benchmark for Subtle and Confusable Defect Detection in Complex Contexts | |
CN110796019A (zh) | 一种识别和跟踪运动中的球形物体的方法及装置 | |
Surekha et al. | A survey of trends in local invariant feature detectors |
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 |