工业场景中缺陷检测的算法探讨

工业场景中缺陷检测的算法探讨

工业现场的产品缺陷检测,一项重要的不可缺少的环节,除了通过仪器仪表做的检测,还有很多情况下,同时视觉检测产品的缺陷和瑕疵. 这个时候,计算机视觉的人工智能技术就可以发挥它的作用,替代或者辅助人员做产品的质检,实现无人化,高速检测,高精度检测的任务.
我们正在做这方面的技术研究和探索,下一步将开展通用产品的缺陷检测的算法和产品的研发和测试.

0.png
out.gif
1.jpg

0.序篇

工业现场的品控管理中,缺陷检测是重要一环,传统的缺陷检测存在如下问题:

  • 缺陷检测环节依赖人工完成,需要耗费大量的人力和物力.
  • 人工检测存在人为的检测失误,会随着劳动强度和人员的状态改变,存在很多不确定性.
  • 人工检测的精度和准确度无法和机器检测相提并论.
  • 速度上和工作强度上,人工无法和机器相比.

所以说,在工业场景中,生产技术密集型企业,连续生产产线上等场合,通过增加机器视觉的缺陷检测环节,可以大幅减少人工,提升品控效率,提高生产率和良品率,最终增加产品附加值.

相比于目前人工智能在其他一些领域的应用,在工业现场的基于计算机视觉的缺陷检测,瑕疵检测的人工智能技术应用,更加接地气,更加能直接给企业带来价值.

|
i1.jpeg

|
i2.jpeg

|
i3.jpeg

|

1.探索

下面我针对工业现场的不同场景,基于算法的角度,做一下缺陷检测的探索工作.

  1. A fast and robust convolutional neural network-based defect detection model in product quality control

检测对象:适合于目标对象为平面的表面缺陷检测:如布匹缺陷,金属表面缺陷,产品外表面的缺陷和瑕疵检测等.

主要通过对输入图像进行切片,然后把切片图像送入深度学习网络中做判断,做图像分类训练。在推理时,通过滑窗检测方式进行逐位置识别。

优缺点:

1、 由于使用分类方式,准确率较为高

2、 由于滑窗遍历,速度慢

a1.jpg
a2.jpg
  1. Automatic Defect Detection of Fasteners on the Catenary Support Device Using Deep Convolutional Neural Network(基于深度卷积网络的接触网支架紧固件缺陷自动检测)

    检测对象:适合复杂外形的支架和关键固件和连接件的缺陷检测,比如:高压输电线路的巡检,大型器械的连接件的检测等等.

三步检测

算法采用方式为Object Detection的方法做目标检测,针对小目标的准确检测,采用了三步检测的方法.

b2.jpg

第一阶段:定位主要结构件位置,采用SSD作为检测网络,先做第一步的定位检测.

b3.jpg

第二阶段:对第一阶段检测出的各个结构图像中的紧固件做检测,也是采用Object Detection方式 比如 yolo,进行目标检测和识别。

b4.jpg

第三阶段:在第二阶段的基础上,对检测图像进行crop,将其送到分类网络进行分类,看是否缺少紧固件。

![c1.jpg](https://upload-images.jianshu.io/upload_images/3160023-459a25fc9693949e.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
  1. Automatic Fabric Defect Detection with a Multi-Scale Convolutional Denoising Autoencoder Network Model(基于多尺度卷积消噪自编码网络模型的织物疵点自动检测)

    检测对象:纺织物和布匹的瑕疵点检测。
    

主要思想:织物疵点检测是纺织制造业质量控制中必不可少的环节。传统的织物检测通常采用人工视觉的方法进行,效率低,长期工业应用精度差。论文提出使用高斯金字塔结合语义分割的方式来重建缺陷,推理阶段通过结合多尺度结果,完成融合。这种方法在织物疵点检测中有几个突出的优点。首先,只需少量的无缺陷样本就可以进行训练。这对于收集大量有缺陷样品困难且不可行的情况尤其重要。其次,由于采用了多模态积分策略,与一般的检测方法相比,该方法具有更高的鲁棒性和准确性。第三,根据我们的结果,它可以处理多种类型的纺织面料,从简单到复杂。实验结果表明,该模型具有较强的鲁棒性和良好的整体性能。

模型结构:

c1.jpg
c2.jpg

检测结果:

c3.jpg
c4.jpg
c5.jpg
d1.jpg
  1. Automatic Metallic Surface Defect Detection and Recognition with Convolutional Neural Networks

检测对象:金属表面缺陷检测

主要思想: 用一种能准确定位和分类从实际工业环境中获取的输入图像中出现的缺陷的双重过程来自动检测金属缺陷。设计了一种新的级联自动编码器(CASAE)结构,用于缺陷的分割和定位。级联网络将输入的缺陷图像转化为基于语义分割的像素级预测掩模。利用压缩卷积神经网络(CNN)将分割结果的缺陷区域划分为特定的类。利用工业数据集可以成功地检测出各种条件下的金属缺陷。实验结果表明,该方法满足金属缺陷检测的稳健性和准确性要求。同时,它也可以扩展到其他检测应用中。

其实还是使用语义分割网络先定位像素级别的缺陷位置,然后通过分类网络对缺陷进行识别。

d1.jpg
d2.jpg

实验结果:

d3.jpg
  1. A Surface Defect Detection Method Based on Positive Samples

    检测对象:密集织物

    主要思想:本文提出了一种新的基于正样本训练的缺陷检测框架。基本检测的概念是建立一个重建网络,它可以修复样本中存在的缺陷区域,然后对输入样本与恢复样本进行比较,以指示缺陷区域的准确。结合GAN和自动编码器进行缺陷图像重建,利用LBP进行图像局部对比度检测缺陷。在算法的训练过程中,只需要正样本,不需要缺陷样本和人工标注。

    e1.jpg
    e3.jpg

    在训练阶段,x是从训练集中随机拍摄的随机照片。C(x∼| x)是一个人工缺陷模块。它的功能是自动生成损坏的、有缺陷的样本,x∼是它的输出。EN和DE构成一个自动编码器,EN是一个编码器,DE是一个解码器,整个自动编码器在G an模型中可以看作是一个生成器。G的任务是修复有缺陷的图片。D是一个鉴别器,D的输出是它的鉴别器是真正样本的概率。

    在测试阶段,我们将测试图像x输入到自动编码器G中,得到恢复图像y,然后使用LBP算法提取x和y的特征,并比较x的每个像素的特征,其中x和y的特征差异较大,即缺陷。

    实验结果:

    e4.jpg
通过GAN的方式来进行缺陷检测和重建一直是个热点方向,而且效果比较好,本文的思路算是比较新颖,值得借鉴。
  1. Segmentation-based deep-learning approach for surface-defect detection

检测对象:表面缺陷检测、裂纹检测(金属)

主要思想:本文主要采用了两个网络,一个是判别网络,一个是分割网络。分割网络主要完成缺陷的分割,而判别网络在此基础上对缺陷作进一步分类。

f1.jpg
f2.jpg

算法很新颖,实验结果也还不错:

f3.jpg
g1.jpg
  1. SDD-CNN: Small Data-Driven Convolution Neural Networks for Subtle Roller Defect Inspection(小数据驱动卷积神经网络在轧辊微小缺陷检测中的应用)
    检测对象:轧辊微小缺陷检查

主要思想:滚柱轴承是旋转机械中最关键、应用最广泛的部件之一。外观缺陷检测是轴承质量控制的关键。然而,在实际工业中,轴承缺陷往往是极其细微的,并且发生的概率很低。这就导致了正负样本数量的分布差异,使得依靠数据驱动的检测方法难以开发和部署。本文提出了一种用于轧辊微小缺陷检测的小数据驱动卷积神经网络(SDD-CNN)一种用于小数据预处理的集成方法。首先,应用标签膨胀(LD)来解决类分布不平衡的问题。其次,提出了一种半监督数据增广(SSDA)方法,以更有效和可控的方式扩展数据集。该方法通过训练一个粗糙的CNN模型来生成地面真值类激活,并指导图像的随机裁剪。第三,介绍了CNN模型的四种变体,即SqueezeNet v1, Inception v3,VGG-16, and ResNet-18,并将其用于轧辊表面缺陷的检测和分类。最后,进行了一系列丰富的实验和评估,表明SDD-CNN模型,特别是SDD Inception v3模型,在滚筒缺陷分类任务中执行得非常好,top-1精度达到99.56%。此外,与原始CNN模型相比,SDD-CNN模型的收敛时间和分类精度都有显著提高。
网络结构:

g1.jpg

实验结果:

g2.jpg

2.布局

针对以上的论文中的算法,我们不难发现一些不错的思路和方法:

  1. 采用目标检测定位缺陷部位

  2. 采用图像分类区分缺陷类型

  3. 采用非监督学习(自编码和GAN的算法)实现少量负样本,或者都是正样本的情况下的训练和检测

  4. 采用多模型串联耦合模式增强模型的精度

    等等...

但是我们也会发现一些不足:

  1. 依赖预先的设计的模型
  2. 依赖事先采集的数据集训练
  3. 模型的优化依赖设计者

这对以上问题,我们大胆假设,提出以下思路:

  1. 采用串联模型,多模型耦合建模

  2. 使用孪生网络做正样本的模型

  3. 少量正样本即可训练

  4. 使用孪生网络甄别负样本

  5. 使用动态的自学习网络模型,动态学习,可以在产线上不断完善模型权重,更新模型

  6. 配合人工判别,增强线上学习的能力

3.实验

我们使用英伟达的入门级AI开发板 jetson nano,搭建运行模型,并作为边缘计算的AI设备.

jetson3.png
jetson2.png
jetson1.png

4.产品

(先占位... ) 我们在jetson nano上做的产品和演示:

out.gif

5.未来

(先占位... )

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,921评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,635评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,393评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,836评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,833评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,685评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,043评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,694评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,671评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,670评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,779评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,424评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,027评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,984评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,214评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,108评论 2 351
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,517评论 2 343

推荐阅读更多精彩内容