0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

关于正样本的表面缺陷检测

机器视觉自动化 来源:工业机器人培训 作者:工业机器人培训 2021-05-29 10:23 次阅读

背 景

表面缺陷检测工业生产中起着非常重要的作用,基于机器视觉的表面缺陷检测可以极大的提升工业生产的效率。随着近年来深度学习计算机视觉领域的发展,卷积神经网络在诸多图像任务上都取得了显著的效果,然而这些方法往往是需要大量标注数据的有监督学习。

在实际的工业场景中,缺陷样本往往是难以收集的,而且标注的成本也十分巨大。针对上述有监督学习在实际应用中存在的问题,本文提出了一种仅基于正样本训练的缺陷检测方法。训练过程中只需要提供足够的正样本,无需缺陷数据和手动标注,也可以取得较好的缺陷检测效果,具有较高的应用价值。

1 介 绍

机器视觉表面缺陷检测在工业生产中扮演着重要的角色。传统都是直接人工肉眼鉴别是否存在表面缺陷,不仅耗费人力且不能准确识别缺陷。

机器视觉可以替代人眼进行检测,但在实际应用中仍面临很多挑战,尤其是近几年的传统图像算法解决方案基于经验手工设计,算法存在精度较低且不够鲁棒的问题,特别是在诸如打光、形变、失真和遮挡等复杂的场景中。现今深度学习在特征提取方面有着亮眼的表现,在诸多有监督的任务上都取得了优质的表现,例如分类、目标检测和图像分割。

同时,近年来也涌现了不少用卷积神经网络来进行缺陷检测的方案,其中最常见的是直接利用目标检测网络如Faster RCNN或者SSD对缺陷进行定位和分类。也有先用目标检测进行粗定位,然后用FCN进行语义分割得到精确定位的方法,这种方法可以得到缺陷的精准轮廓,但是这些方法都属于有监督的学习,在实际的工业应用中存在以下问题:

缺少缺陷样本:在实际应用中,用于训练的缺陷样本往往是非常稀少且难以获取的。因此在训练过程中正负样本是非常不均衡的,这极大的限制了模型的性能,甚至导致模型完全不可用。在缺陷外观多变的场景下,有监督学习的方法往往无法满足正常的生产需求。

人工标注成本高昂:实际的工业缺陷检测场景中,通常存在许多不同种类的缺陷,检测的标准和质量指标往往也不同。这就需要人为标注大量的训练数据来满足特定需求,这需要付出大量的人力资源。

2 相关工作

2.1基于正样本的修复模型

本文的灵感来自于一系列基于对抗生成网络GAN的检测和修复模型。GAN的基本框架如图1,主要包括生成器G和判别器D两个部分。生成器G接收从一个高斯分布中随机采样的信号来生成图片,判别器D接收真实图片和生成器生成的虚假图片并区分它们。生成器和判别器在训练时不断对抗从而改善生成图片的质量。

之前有学者使用GAN来进行图像修复。首先使用正常的无缺陷图片来训练GAN,然后再修复已知位置的缺陷时,我们优化生成器的输入z,获得最优的z来让重建图片y和缺陷图片的正常部分最大程度的接近。另外一个基于图像修复的缺陷检测算法的做法是用中间层的重建误差来重建图像而无需知道缺陷的位置,通过重建图片和原始图片的差异来定位缺陷。

2.2 自编码器

Pix2pix 用自编码器和GAN联合解决图像迁移任务。它可以生产清晰而真实的图像。为了获得质量更佳的细节和边缘,pix2pix使用了类似unet的跨层链接。该结构并不利于去除整个缺陷,因此我们的模型没有使用这个结构。一般自编码器用于图像风格迁移等任务,如给黑白图像上色或者将照片转化为简笔画等。我们用自编码器完成图像重建的任务。

在上述工作的基础上本文完成了以下工作:

(1)使用自编码器重建图像。我们通过加入GANloss来让生成的图像更加真实。

(2)在训练时人工加入缺陷,不依赖大量的真实缺陷数据,也不用人工标注。

(3)使用LBP算法来对比重建图片和原始图片,从而定位缺陷。

3 方 案

3.1基本框架图

本文提出的模型的基本框架如图2

cf1adf96-bfc5-11eb-9e57-12bb97331649.png

图2. 网络框架

C(x~|x)是设计的一个人工制造缺陷的模块,在训练阶段,通过该模块将训练集x人为的加上缺陷得到缺陷图片x~。EN为编码器,它将输入的缺陷图片x~映射为一个潜在变量z ,DE为解码器,它将潜在变量z重新建模成图片y。

EN和DE共同组成一个自编码器,作为GAN中的生成器,其任务便是让输出的图片y不断接近正常的图片x。判别器D用来判断其输入是来自于真实的训练集还是生成器的输出图片。通过对抗训练,生成器G便拥有了修复缺陷的能力。

在测试阶段,将之前训练好的自编码器G作为修复模块,将测试图片x输入到自编码器G中,获得修复后的图片y。修复图片y和原图作为输入一起用LBP算法来提取特征并对比,从而定位缺陷。

3.2损失函数

缺陷样本在经过自编码器G重建后应该与原始的正常图片相同,本文参考pix2pix,用L1距离来表征它们的相似程度。

cf31438a-bfc5-11eb-9e57-12bb97331649.png

然而在实验中发现,如果仅仅使用L1 loss来作为目标函数,获取的图像边缘会变得模糊而且会丢失细节。本文通过加入判别器D,用GAN loss来改善图像质量,提升重建效果。

cf58c964-bfc5-11eb-9e57-12bb97331649.png

因此最终的优化目标如下:

cf6ec340-bfc5-11eb-9e57-12bb97331649.png

3.3网络结构细节

本文的网络结构参考了DCGAN。在生成器和判别器中增加batchnorm层。在判别器中使用LeakyRelu激活函数,在生成器中使用Relu激活函数。

在本文的模型中,自编码器只需要将图片修复成最接近的样本图片,并不在乎缺陷的具体形式。在实际训练过程中,人为的随机生成不同位置、大小、灰度和数量的缺陷块到图片中,如图3。

cfa28ad6-bfc5-11eb-9e57-12bb97331649.png

图3. 人工缺陷示意图

数据增强方面,本文在0.5到2之间进行尺度变换,并随机加入-180和180°的旋转以及随机高斯模糊。

3.4定位缺陷

由于重建后的图片和原始图片在细节上存在一些误差,我们不能直接将原始图片和修复图片做差分来得到缺陷位置。本文使用LBP算法来进行特征提取,并匹配每个像素。具体流程如图4。

cfe7da6e-bfc5-11eb-9e57-12bb97331649.png

图4. 定位缺陷的过程

将原始图像x和修复图像y输入到LBP模块,提取出特征图x+和y+。对于x+的所有像素点,在y+中对应位置搜索最匹配的特征点,从而对齐了特征。最后逐个对比匹配点之间的特征值,通过设置一个阈值来筛选,便可以得到缺陷的位置。

4实验效果

本文在DAGM表面纹理数据集和纺织物数据集上做了实验来检验性能。并与FCN算法进行比较。使用平均精度来作为衡量标准。

4.1表面纹理缺陷

纹理表面有着较好的一致性,所以在训练集中有足够的缺陷样本来学习。

表1. 表面纹理数据集的测试信息

训练集 本文:400张无缺陷图FCN: 85张带缺陷图+400张无缺陷图
测试集 85张带缺陷图
图像尺寸 512*512

表4. 纺织图片数据集的测试结果

模型 平均精度 耗时
FCN(8s) 81.6833 31.2ms
本文 94.4253% 22.3ms

4.2纺织物图片

由于真实场景中的纺织物的不同样式,训练集中的缺陷样本很少。在实验里共有五种缺陷,每种缺陷有五张图片,还有25张正样本。对于语义分割模型,每种缺陷图像中3张作为训练集,2张为测试集。

表3. 纺织图片数据集的测试信息

模型 平均精度 耗时
FCN(8s) 98.3547% 80.3ms
本文 98.5323% 52.1ms

表4. 纺织图片数据集的测试结果

模型 平均精度 耗时
FCN(8s) 81.6833 31.2ms
本文 94.4253% 22.3ms

实验表明,在规则的背景下,当标记缺陷样本足够时,本文的精度接近有监督的语义分割模型,当缺陷样本不足时,本文的模型要强于语义分割。而且本文提出的模型速度更快,可实时运行。

5 结 论

本文提出了一种结合自编码器和GAN的缺陷检测算法,无需负样本和人工标注。在训练时通过数据增强和人为加入缺陷,该模型可以自动修复规则纹理图像的缺陷,并定位缺陷的具体位置。在训练集中标注缺陷较少乃至没有的情况时,本文的模型可以取得比有监督模型更好的结果。

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 解码器
    +关注

    关注

    9

    文章

    1143

    浏览量

    40737
  • 编码器
    +关注

    关注

    45

    文章

    3641

    浏览量

    134491
  • GaN
    GaN
    +关注

    关注

    19

    文章

    1935

    浏览量

    73383
  • 数据集
    +关注

    关注

    4

    文章

    1208

    浏览量

    24697

原文标题:基于正样本的表面缺陷检测

文章出处:【微信号:jiqishijue2020,微信公众号:机器视觉自动化】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    X射线工业CT检测设备用于复合新材料内部缺陷检测

    X射线工业CT检测设备在复合新材料内部缺陷检测中发挥着重要作用。以下是关于该设备在复合新材料内部缺陷检测
    的头像 发表于 09-10 18:23 381次阅读
    X射线工业CT<b class='flag-5'>检测</b>设备用于复合新材料内部<b class='flag-5'>缺陷</b><b class='flag-5'>检测</b>

    明治案例 | 【非标缺陷检测】 FEB管黑色杂质

    在使用FEP(氟化乙烯丙烯共聚物)管作为基体材料时,确保管材的表面清洁度、壁厚均匀性以及无表面缺陷如丝状物、黑点、杂质等是至关重要的,这些要求直接关系到最终产品的质量和性能。因此生产商在生产FEP
    的头像 发表于 08-06 08:25 218次阅读
    明治案例 | 【非标<b class='flag-5'>缺陷</b><b class='flag-5'>检测</b>】 FEB管黑色杂质

    涡流检测常用的检测方式

    涡流检测是一种非破坏性检测技术,广泛应用于金属构件的无损检测。它利用电磁感应原理,通过在被检测物体中产生涡流,检测物体内部的
    的头像 发表于 07-26 15:26 889次阅读

    外观缺陷检测原理

    的结合应用加速渗透进工业产品的 外观缺陷检测 领域。思普泰克凭借深耕机器视觉多年沉淀的技术实力,建立以深度学习技术为核心的差异化发展优势,开发出视觉引擎等工业级视觉应用产品,全面赋能产品外观缺陷
    的头像 发表于 06-17 17:38 422次阅读
    外观<b class='flag-5'>缺陷</b><b class='flag-5'>检测</b>原理

    磁粉检测的特点及应用有哪些?

    磁粉检测(Magnetic Particle Inspection,简称MPI)是一种非破坏性检测方法,主要用于检测铁磁性材料表面缺陷。它
    的头像 发表于 05-24 15:23 1642次阅读

    磁粉检测和渗透检测的区别

    ,简称NDT)方法,它们在工业生产中被广泛应用于检测金属和非金属材料的表面和近表面缺陷。本文将详细介绍这两种检测方法的原理、特点、适用范围、
    的头像 发表于 05-24 15:17 4158次阅读

    赛默斐视X射线薄膜测厚仪与薄膜表面缺陷检测

    的及时检测显得尤为重要。X射线薄膜测厚仪作为一种先进的检测设备,为薄膜表面缺陷检测提供了有效的解决方案。 薄膜
    的头像 发表于 04-17 15:52 343次阅读

    洞察缺陷:精准检测的关键

    缺陷检测是生产过程的重要组成部分。它有助于确保产品的高质量和满足客户的需求。缺陷检测有许多不同的解决方案,特定应用的最佳解决方案取决于所检测
    的头像 发表于 02-26 15:44 336次阅读
    洞察<b class='flag-5'>缺陷</b>:精准<b class='flag-5'>检测</b>的关键

    基于深度学习的芯片缺陷检测梳理分析

    虽然表面缺陷检测技术已经不断从学术研究走向成熟的工业应用,但是依然有一些需要解决的问题。基于以上分析可以发现,由于芯片表面缺陷的独特性质,通
    发表于 02-25 14:30 1514次阅读
    基于深度学习的芯片<b class='flag-5'>缺陷</b><b class='flag-5'>检测</b>梳理分析

    2023年工业视觉缺陷检测经验分享

    表面缺陷检测任务是指通过对产品表面进行仔细的检查和评估,以发现和识别任何不符合质量标准或设计要求的表面
    发表于 02-21 14:31 1070次阅读
    2023年工业视觉<b class='flag-5'>缺陷</b><b class='flag-5'>检测</b>经验分享

    无纺布缺陷在线检测仪怎么用

    监测。那么,无纺布缺陷在线检测仪到底怎么用呢?它的检测效果又如何呢?本文将为您详细解答。 一、无纺布缺陷在线检测仪的基本原理 无纺布
    的头像 发表于 02-03 14:58 495次阅读
    无纺布<b class='flag-5'>缺陷</b>在线<b class='flag-5'>检测</b>仪怎么用

    良品学习在高良率制造业中缺陷检测的应用

    电子制造行业逐步迈向高度“数智化”时代,越来越多的企业开始采用AI机器视觉技术进行缺陷检测和品质管控。由于良品率极高,在大量正常的产品中,收集缺陷
    的头像 发表于 01-26 08:25 728次阅读
    良品学习在高良率制造业中<b class='flag-5'>缺陷</b><b class='flag-5'>检测</b>的应用

    赛默斐视-全面了解薄膜表面检测技术的重要性(为何薄膜表面检测对各行业至关重要)

    产品合格和消费者满意的关键因素。 薄膜表面检测保证了产品性能的稳定性与可靠性。在电子领域,薄膜工艺在各种芯片、LED面板和太阳能电池等设备中广泛应用。通过薄膜表面检测,可以准确
    的头像 发表于 01-25 14:11 579次阅读

    描绘未知:数据缺乏场景的缺陷检测方案

    了解更多方案细节,欢迎您访问官网(Neurocle | 友思特 机器视觉 光电检测 ) 导读 深度学习模型帮助工业生产实现更加精确的缺陷检测,但其准确性可能受制于数据样本的数量。 友思
    的头像 发表于 01-25 10:46 568次阅读
    描绘未知:数据缺乏场景的<b class='flag-5'>缺陷</b><b class='flag-5'>检测</b>方案

    锂电池外壳外观缺陷检测的应用实践

    AI机器视觉系统的核心是深度学习算法。通过大量样本数据的训练,系统能够学习并识别锂电池外壳各种缺陷的特征。
    发表于 01-18 15:50 895次阅读