复杂场景下的复杂缺陷检测方法——深度学习算法综述

技术

picture.image

向AI转型的程序员都关注了这个号👇👇👇

一、背景 知识

随着自动化技术的快速发展,在工业生产中很多需要人工操作的环节逐渐转由机器完成,工业生产自动化也将越来越多的工人们从枯燥乏味的工作中解放出来,让他们去发挥更大的价值。

产品表面缺陷检测是工业生产中的重要环节,是产品质量把控的关键步骤,借助缺陷检测技术可以有效的提高生产质量和效率。但是由于设备及工艺等因素的影响,产品表面的缺陷类型往往五花八门,比如织物生产中方出现的污点、破损,金属产品上的划痕、裂纹、凹凸不平等各种不同类型的缺陷,如下图所示。

picture.image

单张图片中的缺陷多样且不同缺陷表现形式的也不相同,给缺陷的自动化检测带来了困难。

二、传统算法

传统的表面缺陷检测算法结构通过图像预处理得到便于检测的图像,随后借助统计机器学习方法来提取图像特征,进而实现缺陷检测的目标。

图像预处理通常包括直方图均衡化、滤波去噪、灰度二值化、再次滤波几部分,以得到前后景分离的简单化图像信息;随后利用数学形态学、傅里叶变换、Gabor 变换等算法以及机器学习模型完成缺陷的标记与检测。

上述传统算法在某些特定的应用中已经取得了较好的效果,但仍然存在许多不足。例如:图像预处理步骤繁多且具有强烈的针对性,鲁棒性差;多种算法计算量惊人且无法精确的检测缺陷的大小和形状。而深度学习可以直接通过学习数据更新参数,避免了人工设计复杂的算法流程,并且有着极高的鲁棒性和精度。

三、深度学习

目前,基于深度学习的缺陷检测已经应用于金属固件、布匹丝织物、建筑裂纹、钢筋裂纹等多个领域,并取得了不错的成果。下面将结合具体案例介绍其实现方法。

3.1裂纹缺陷检测[1]

picture.image

建筑材料(如磁瓦等)的外观变化(如裂纹或腐蚀等)与其建筑结构的安全性密不可分,而依靠检察员视觉检查的效果局限性大,相比之下,基于计算机视觉的结构损伤检测更为可靠便捷。

本文使用Faster RCNN实现对图像的准实时处理,其整体架构包括RPN和Fast RCNN两部分,如上图所示,RPN和Fast RCNN使用相同的CNN网络从图像中提取特征,CNN的主要结构如下图所示。

picture.image

picture.image

RPN的作用为提出候选目标,结构示意如图所示,其实现流程包括:

输入图像后,利用CNN网络得到特征图;

将特征图上每一个CONV滑动窗的特征映射为向量并输入Softmax和Regressor层中;

预测缺陷边界框的坐标。

picture.image

Fast RCNN的作用为对图像中的缺陷位置进行定位和分类,其结构流程如上图所示。

从输入图像中提取特征图并获得感兴趣区域(ROI);

在ROI池中,预先计算的兴趣区域覆盖在特征图上,提取固定大小的特征向量;

将所得向量输入全连接层,计算边界框的位置并对框内对象进行分类。

3.2破损缺陷检测[2]

在电气化铁路等工业中,有许多关系着安全的重要固件,这些固件的缺陷检测十分重要。

本文作者利用深度卷积神经网络(DCNNs)结合SSD,Yolo等网络方法构建了一个从粗到细的级联检测网络,包括固件的定位、缺陷检测与分类,其实现流程如下图所示。

picture.image

(1) 紧固件提取

借助在速度和精度方面都表现良好的SSD框架,对图像中的悬臂节点进行定位;

基于Yolo框架的快速本地化架构,对紧固件进行定位。

(2) 固件缺陷检测与分类

根据第二阶段对紧固件的检测来判断缺陷;

再次借助DCNN,通过4个卷积层对缺陷进行分类(分类网络结构如下图)。

picture.image

DCNNs具有良好的鲁棒性和自适应性,有利于检测的快速进行,因此本方法在紧固件的缺陷检测和分类中具有良好的应用前景。

3.3斑点缺陷检测[3,4]

斑点缺陷检测在纺织、木材、瓷砖等许多行业中都很常见,通常利用其纹理的一致性实现检测的目的。近年来,利用深度学习视觉检测技术对相关产业的表面缺陷检测引起了广泛关注。

作者采用结合图像金字塔层次结构思想和卷积去噪自编码器网络(CDAE)实现对布匹纹理图像的缺陷检测,其总体结构如下图所示。

picture.image

(1) 训练阶段

图像预处理:光照归一化、高斯金字塔下采样和噪声降噪等操作,避免光照等因素的影响;

Patch提取:提取Patch对每个金字塔层的CDAE网络进行训练;

模型训练:利用训练Patch的重构残差作为像素级缺陷预测的指标;

阈值确定:区分缺陷点与无缺陷点的重要参数。

(2) 模型测试阶段:

图像预处理:只需进行光照归一化和高斯金字塔下采样操作即可;

Patch提取:提取Patch用于纹理检测;

残差贴图构造:提取局部接受域在训练后的模型中滑动,以对每一个像素进行预测;

缺陷分割:对每个金字塔层的残差图进行分割;

合成:将多个金字塔级别的信息合成,以提高缺陷检测的鲁棒性和准确性。

文章通过分析和实验已经证明,充分利用无监督学习和多模态结果融合策略,可以提高缺陷检测的鲁棒性和准确性。

3.4划痕缺陷检测[5]

划痕缺陷检测通常用于金属类产品的表面缺陷检测中,随着生活质量的提高,人们对产品的外观完整性与美观程度的要求也越来越高,因此精准地检测到产品外观的划痕等缺陷在生产环节十分重要。

picture.image

使用上图所示的缺陷检测体系结构,下面将针对检测模块展开介绍。

(1) CASAE架构

将两个自动编码器(AE)级联在一起,这里的AE结构是FCN框架的迁移使用,有一层层的卷积、反卷积和跳跃链接组成,其结构如下图所示。

picture.image

(1) 阈值模块

连接到CASAE网络末端的独立模块,用于进一步细化预测掩码的结果。

(2) 缺陷区域检测

通过语义分割获得所有可能缺陷的区域,进一步使用blob分析以寻找准确的缺陷轮廓,最终从图像中提取最小的外接矩形区域。

四、总结

本文参考前沿文献,总结了部分当前主流的缺陷检测实现思路。总的来说,使用基于深度学习的算法可快速准确地实现的缺陷检测,且适用范围广能够灵活地应用于建筑、金属固件以及布匹丝织物等众多行业的生产过程中。

参考文献:

[1] Cha Y J et al. Autonomous structural visual inspection using region‐based deep learning for detecting multiple damage types[J]. Computer‐Aided Civil and Infrastructure Engineering, 2018.

[2] Chen J et al. Automatic defect detection of fasteners on the catenary support device using deep convolutional neural network[J]. IEEE Transactions on Instrumentation and Measurement, 2017.

[3] Mei S et al. An unsupervised-learning-based approach for automated defect inspection on textured surfaces[J]. IEEE Transactions on Instrumentation and Measurement, 2018.

[4] Mei S el al. Automatic fabric defect detection with a multi-scale convolutional denoising autoencoder network model[J]. Sensors, 2018.

[5] Tao X et al. Automatic metallic surface defect detection and recognition with convolutional neural networks[J]. Applied Sciences, 2018.

机器学习算法AI大数据技术

搜索公众号添加: datanlp

picture.image

长按图片,识别二维码


阅读过本文的人还看了以下文章:

TensorFlow 2.0深度学习案例实战

基于40万表格数据集TableBank,用MaskRCNN做表格检测

《基于深度学习的自然语言处理》中/英PDF

Deep Learning 中文版初版-周志华团队

【全套视频课】最全的目标检测算法系列讲解,通俗易懂!

《美团机器学习实践》_美团算法团队.pdf

《深度学习入门:基于Python的理论与实现》高清中文PDF+源码

《深度学习:基于Keras的Python实践》PDF和代码

特征提取与图像处理(第二版).pdf

python就业班学习视频,从入门到实战项目

2019最新《PyTorch自然语言处理》英、中文版PDF+源码

《21个项目玩转深度学习:基于TensorFlow的实践详解》完整版PDF+附书代码

《深度学习之pytorch》pdf+附书源码

PyTorch深度学习快速实战入门《pytorch-handbook》

【下载】豆瓣评分8.1,《机器学习实战:基于Scikit-Learn和TensorFlow》

《Python数据分析与挖掘实战》PDF+完整源码

汽车行业完整知识图谱项目实战视频(全23课)

李沐大神开源《动手学深度学习》,加州伯克利深度学习(2019春)教材

笔记、代码清晰易懂!李航《统计学习方法》最新资源全套!

《神经网络与深度学习》最新2018版中英PDF+源码

将机器学习模型部署为REST API

FashionAI服装属性标签图像识别Top1-5方案分享

重要开源!CNN-RNN-CTC 实现手写汉字识别

yolo3 检测出图像中的不规则汉字

同样是机器学习算法工程师,你的面试为什么过不了?

前海征信大数据算法:风险概率预测

【Keras】完整实现‘交通标志’分类、‘票据’分类两个项目,让你掌握深度学习图像分类

VGG16迁移学习,实现医学图像识别分类工程项目

特征工程(一)

特征工程(二) :文本数据的展开、过滤和分块

特征工程(三):特征缩放,从词袋到 TF-IDF

特征工程(四): 类别特征

特征工程(五): PCA 降维

特征工程(六): 非线性特征提取和模型堆叠

特征工程(七):图像特征提取和深度学习

如何利用全新的决策树集成级联结构gcForest做特征工程并打分?

Machine Learning Yearning 中文翻译稿

蚂蚁金服2018秋招-算法工程师(共四面)通过

全球AI挑战-场景分类的比赛源码(多模型融合)

斯坦福CS230官方指南:CNN、RNN及使用技巧速查(打印收藏)

python+flask搭建CNN在线识别手写中文网站

中科院Kaggle全球文本匹配竞赛华人第1名团队-深度学习与特征工程

不断更新资源

深度学习、机器学习、数据分析、python

搜索公众号添加: datayx

picture.image

0
0
0
0
关于作者

文章

0

获赞

0

收藏

0

相关资源
云原生环境下的日志采集存储分析实践
云原生场景下,日志数据的规模和种类剧增,日志采集、加工、分析的多样性也大大增加。面对这些挑战,火山引擎基于超大规模下的 Kubernetes 日志实践孵化出了一套完整的日志采集、加工、查询、分析、消费的平台。本次主要分享了火山引擎云原生日志平台的相关实践。
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论