Real-Time Surface Defect

Abstract

本文从实时检测的角度出发,针对工业中不同类型的表面,从缺陷分类、缺陷检测和缺陷分割3个层面综述了最新的基于深度学习的表面缺陷检测方法。之后,本文介绍了用于评估表面缺陷检测模型和公开表面缺陷数据集性能的常用指标。然后,本文讨论了基于深度学习的表面缺陷实时检测方法面临的挑战,包括表面缺陷数据集的获取、平衡检测模型的精度和速度以及在工业环境中的应用。最后,本文对表面缺陷检测的未来发展趋势进行了展望。

Introduction

工业检测可以分为两个方法:传统图像处理和神经网络。

传统方法可分为三类:统计方法、谱方法和基于模型的方法。统计方法对缺陷图像的像素点进行计数和评价,通过分析像素点的空间分布来检测表面缺陷。统计特征是局部二进制模式 (LBP) 算子的一维和二维直方图的统计描述。

谱方法对缺陷图像进行空域、频域等变换,根据无缺陷区和缺陷区的不同响应实现表面缺陷检测。

传统方法虽然在工业上取得了一定的应用,但传统方法普遍存在两个问题:一是特征需要人工设计,这个过程需要专业知识,特征的好坏直接影响表面缺陷检测的性能;二是缺陷定位不准确,只能得到缺陷的粗略位置。而且拍出来的图片会有敌对比噪声。

Deep learning is all you need! 这里有很多关于钢材的应用:

He Y, Song K, Dong H et al (2019b) Semi-supervised defect classification of steel surface based on multitraining and generative adversarial network. Opt Lasers Eng 122:294–302

Di H, Ke X, Peng Z et al (2019) Surface defect classification of steels with a new semi-supervised learning method. Opt Lasers in Eng 117:40–48

最近5年缺陷检测和实时缺陷检测论文数量越来越多,但是前人其实已经有了很多的总结工作,但是对于实时检测还很少,本文主要回顾实时检测。

本文安排:

第2节回顾了基于深度学习的实时表面缺陷检测方法。提出了不同工业场景下基于图像分类、目标检测和语义/实例分割的实时缺陷检测方法。第3节介绍了用于评估表面缺陷检测模型的常用指标,包括混淆矩阵、类激活映射、准确度、平均精度等。第4节介绍了各种工业场景中公开可用的表面缺陷数据集。第5节讨论了基于深度学习的表面缺陷检测方法面临的挑战,包括表面缺陷数据集的获取、检测模型的准确性和速度的平衡以及在工业环境中的应用。第5节对本文进行了总结,并对表面缺陷检测未来的发展趋势进行了展望。

Real‑time surface defect inspection methods based on deep learning

表面缺陷检测三个任务:缺陷分类、缺陷检测和缺陷分割。

作者介绍的几个轻量级backbone: SqueezeNet(2016)、MobileNet(2017)、MnasNet(2019)、EfficientNet(2019)

分类任务太难满足现实需要了。

检测任务:单阶段(YOLO、SSD)和两阶段(R-CNN),单程缺陷检测算法的检测速度快,而两级缺陷检测算法有更高的检测精度。因此,单程缺陷检测算法更适合于实时表面缺陷检测。当两级缺陷检测算法应用于实时表面缺陷检测,其骨干网络经常被替换为一个轻量级网络提高检查速度。这个需要打标签。

分割任务:FCN和U-Net更适用于实时的缺陷分割,而SegNet、DeepLab和Mask RCNN还没有应用到实时缺陷分割。需要打标签。

下面都是关于各个产品的具体方法

钢带表面,金属产品表面纹理表面,其他类型的表面,和一般的表面。

2.3 Real‑time textured surface defect inspection methods

织构化表面是工业中最常见的表面之一,如织物、锯材、轮胎等。纹理表面一般具有纹理复杂多样的特点。缺陷区域和无缺陷区域的纹理具有相似的颜色和风格,缺陷区域和无缺陷区域没有明显的边界。即使是同一工业产品的纹理也可能存在较大差异,例如轮胎胎侧与胎面之间的纹理不同,这就要求缺陷检测方法对纹理差异具有鲁棒性。此外,切削加工造成的纹理不完整缺陷也为纹理表面的缺陷检测增加了难度。本节对纹理表面缺陷实时检测的研究现状进行概述。

2.3.1 Defect classification and detection

没亮点,不过看到使用YoloV3+Gaussian function了

2.3.2 Defect segmentation

Zheng等( 2020 )提出了一种由语义分割模块和缺陷分类模块组成的简洁语义分割网络用于轮胎表面缺陷检测。语义分割模块基于自编码器实现,用于对输入图像的每个像素进行二分类。然后,裁剪出缺陷区域,并将其作为缺陷分类模块的输入,预测缺陷的类型。简洁的分割网络在采集的数据集上达到了77.34 % m Io U,每幅图像的检测速度为0.132 s。

2.5 General real‑time surface defect inspection methods

2.5.1 Defect classification

Wang et al ( 2018 )精心设计了联合检验CNN。联合检测CNN包含两个阶段:首先根据背景纹理特征(全局帧分类)对图像样本进行分类,然后检测图像是否包含缺陷区域(子帧分类,使用滑窗进行分类?)

然后有人魔改VGG16+residual

Gao et al .文献( 2019 )提出了一种基于多层信息融合的表面缺陷检测方法。首先对样本进行局部光照归一化,对不平衡光照进行标准化处理。然后,实现一个三级高斯金字塔,生成不同级别的图像并输入到不同的VGG - 16网络中。最后将不同网络的输出进行融合得到检测结果。所提方法在小样本任务上取得了较好的性能,实现了每张图像13.74 ms的检测速度。

2.5.2 Defect detection

Cui等( 2021 )提出了一种快速准确的表面缺陷检测网络。针对缺陷纹理变化大、缺陷尺寸小的问题,设计了特征保留块( FRB )和跳跃密集连接模块( SDCM )。

2.5.3 Defect segmentation

Dong等( 2019 )提出了金字塔特征融合和全局上下文注意力网络( PGA-Net ),就是backbone+FPN+Attention。

Oz等( 2021 )提出了一种嵌套自编码器方法用于表面缺陷检测。首先,对于缺陷图像,通过编码器得到一维向量,记为缺陷向量。然后,通过由全连接层组成的自编码器预测无缺陷向量,并根据缺陷向量和无缺陷向量分别生成缺陷图像和无缺陷图像。最后,根据新生成的两幅图像得到用于缺陷分割的误差图。该方法在MVTecAD数据集(贝里曼等2019)上以每张图像88ms的速度获得了78 %的mIoU。

2.6 Summary

在实时表面缺陷检测中,最常用的方法是缺陷检测方法,尤其是在金属带材表面和金属制品表面。但在实时纹理表面缺陷检测中,最常用的方法是缺陷分割法。因此,在纹理表面以外的实际工业场景中,在选择实时缺陷检测方法时,应优先考虑缺陷检测方法。在缺陷检测中,基于YOLOv3或YOLOv4的方法是最常用的方法,在实现高精度检测的同时达到了较高的检测速度。轻量级网络,如SqueezeNet、MobileNet等,已被广泛应用于缺陷分类、缺陷检测和缺陷分割等领域。基于轻量级网络改进的缺陷检测模型可以减小模型的规模,提高检测速度,实现实时检测。此外,针对训练样本不足的问题,Liu et al

Evaluation metrics

3.1 Confusion matrix

是最常用于分类的模型,

3.2 Accuracy, precision, recall and F1‑measure

准确率衡量了模型对正样本的不误判能力,召回率衡量了模型对正样本的发现能力,F1测试值可以认为是准确率和召回率的加权平均。

3.3 Class activation mapping

三个模型:CAM、Grad-CAM、Grad-CAM++

3.4 mAP

在PASCAL VOC挑战中,m AP的定义如下:

在COCO挑战中,mAP是AP在不同IoU阈值( 0.05为步长从0.5到0.95)和类别下的均值,具体如下:

3.5 mIoU

3.6 Real‑time

Real-time检测速度很重要,例如,在带钢表面缺陷检测中,实际带钢生产线的平均速度约为20 m / s,单台相机的视场为80 ~ 100 cm,要求检测模型的速度至少为20FPS。

4 Publicly available defect datasets

NEU - CLS、Elpv - dataset、Sewer - ML和CODEBRIM是常用的表面缺陷分类数据集。

NEU-DET、DeepPCB、GDXray Casting和Road damage是常用的表面缺陷检测数据集。

NEU-Seg、MT Dead、CRACK500、AITEX、RSDDs和MVTec AD是表面缺陷分割的常用数据集。

5 Challenges

5.1 Dataset

样本难收集,缺陷特征很难弄出来,缺陷样本可能只有几十个,并不是所有的缺陷类型都被覆盖,下面有四个解决方法:

  1. 数据增强:使用GAN,但是现在使用Dffiusion
  2. 迁移学习:大模型在小样本上学习会导致过拟合。Fu等( 2019 )使用在ImageNet上预训练的SqueezeNet作为钢带表面缺陷检测的主干网络。由于预训练数据集和钢板表面缺陷数据集之间的差异,他们使用较大的学习率对模型进行微调。有人提出了新的迁移学习方法,两步1、现在比较和目标数据集几何相似的数据集上完成训练,然后再在目标数据集。
  3. 半监督和弱监督:半监督学习只需要少量的有标记样本和一定数量的无标记样本来训练模型,降低了工业中标记样本的难度。弱监督方法仅通过图像的分类标签训练模型,实现缺陷的定位/分割。
  4. 无监督:无监督学习方法解决了工业中采集缺陷样本和标注样本的困难。目前方法似乎是先输入图片后进行重建,自编码,将编码与有缺陷比???

5.2 Model

工业实时检测希望能够既有高速和高准确率。以下是提高模型特征提取能力或降低模型规模的常用方法:

  1. 轻量级网络:SqueezeNet, MobileNet, ShuffleNet。
  2. 特征金字塔:特征金字塔网络( FPN )通过融合主干网络中的浅层特征和深层特征,得到既包含丰富语义信息又包含准确位置信息的特征。平衡特征金字塔( BFP ) ( Pang等2019),双向特征金字塔网络( BiFPN )
  3. 注意力机制:目前,广泛应用于表面缺陷检测的注意力机制主要包括空间注意力、通道注意力和自注意力。
  4. Anchor-free的目标检测模型:不会进行抛anchor,直接预测每个点是左上、右下角点的概率,通过左上右下角点配对提取目标框。

5.3 Application

理论训练网络和实际部署的工业环境是不同的,本部分从应用角度提出了表面缺陷检测方法面临的挑战:

( 1 )低质量图像:然而在工业中,图像采集设备获取的图像往往存在各种噪声、运动模糊、光照不均等问题。然而在工业中,图像采集设备获取的图像往往存在各种噪声、运动模糊、光照不均等问题。常用的增强图像对比度的方法有直方图均衡化( Jun等2021)和灰度变换( Wei et al . 2019a2019),滤除噪声的方法有中值滤波( Wei等2019b)和高斯滤波(张杰等2021)。

(2)高分辨率图:对于数据集是低分辨率,实际场景是高分辨这样会严重降低推理速度,但是使用下采样会造成检测信息的缺失。方法是劈成多块,然而,对图像进行裁剪会导致缺陷不完整,影响检测性能。特别地,德拉米尼等( 2022 )使用距离匹配函数( Oh等1999)对图像进行分解。

( 3 )新类型缺陷:在复杂的工业环境中,可能会出现意向不到的缺陷出现。

Conclusion and future trends

针对训练样本不足的挑战,领域自适应迁移学习和联邦学习有望成为新的解决方案。领域自适应迁移学习可以将源域和目标域投影到同一个特征空间,使模型能够跨领域学习特征。领域自适应可以解决训练样本和测试样本分布差异的问题,可以降低深度学习模型对训练样本分布的过度依赖。???将领域自适应迁移学习应用于表面缺陷检测,可以在一定程度上缓解训练样本不足的问题。联邦学习是一种新兴的分布式机器学习方法,可以在共享数据的同时保护数据隐私。这个……就是大家一起训练,但是数据集不可见。

针对平衡模型精度和速度的挑战,近年来兴起的基于3D点云和神经网络验证的检测方法有望应用于工业表面缺陷检测。3D点云数据包含缺陷的三维特征信息,如缺陷的高度、深度等,不易受光照不均的影响。3D点云数据包含更多的缺陷相关信息,基于点云数据的表面缺陷检测方法可以提取更多的缺陷特征,达到更高的准确率。还有就是缺乏解释性,神经网络验证作为一个新兴领域,可以验证神经网络的性质。

低质量图片和高分辨率图片可以作为一个出发点。

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值