也可以看知乎:https://zhuanlan.zhihu.com/p/50099453
还有以前写的误删的原版:GAN用于表面缺陷检测
今年的一篇会议论文,很不错的一个论文,作者使用GAN做无缺陷样本表面缺陷检测,效果还不错。
本人水平有限,表述不清楚或错误的地方请指出,一起进步!
计算机视觉的快速发展也冲击着传统的制造行业,大量的优秀视觉算法应用于表面缺陷的检测。这篇论文[1]将GAN网络在图像复原方面的的能力结合传统LBP算法应用于表面缺陷的检测,论文说效果还不错。想要详细了解的同学可以从下面链接下载文章。
文章下载链接:A Surface Defect Detection Method Based on Positive Samples
文章是施普林格收录的,链接点进去是一本书,不方便看,这里直接从下面网盘链接下载:
https://pan.baidu.com/s/1PcGd3gV3nWeWjSU1kzC7dg
文章的思路是:缺陷检测的核心是找出一些显著性的差异区域,可以借助GAN建立一个重构网络,如果图像样本存在缺陷(人为制造的缺陷也可以),可以对其缺陷区域进行修复,然后将输入的样本与恢复的样本进行比较,以确定准确的缺陷区域。具体实施使用GAN进行图像样本重建,利用LBP算法进行图像缺陷检测。在算法的训练过程中,只需要正样本,没有缺陷样本和手工标签。
通俗说:
作者利用GAN在图像修复(重建)上的能力,在工业现场收集一些正常(无缺陷)样本,人工PS一些缺陷,比如线条、斑点等。
训练时,将PS的人工制作的缺陷图像和原图像做输入样本训练GAN,得到一个具有图像修复重建能力的网络。
测试时,直接使用训练好的GAN对采集到的图像进行重建修复,如果样本中中有缺陷区域,缺陷区域按照网络设计,肯定需要修复,将修复后的图像和原缺陷图像使用LBP找出显著差异区域即为缺陷区域。
2.1Defect Repair Model Based on Positive Samples
论文的主体框架思想是基于GAN网络的结构。GAN 主要包括了两个部分,即生成器 generator G与判别器 discriminator D。生成器主要用来学习真实图像分布从而让自身生成的图像更加真实,以“骗过”判别器。判别器则需要对接收的图片进行真假判别。在整个过程中,生成器努力地让生成的图像更加真实,而判别器则努力地去识别出图像的真假,这个过程相当于一个博弈过程,随着时间的推移,生成器和判别器在不断地进行对抗,最终两个网络达到了一个动态均衡:生成器生成的图像接近于真实图像分布,而判别器识别不出真假图像,对于给定图像的预测为真的概率基本接近 0.5(相当于随机猜测类别)。
1、训练阶段
在训练阶段,模型采用一些图像处理技术人为的做一些缺陷在正常样本图像上(示意图中的红色框模块),使用由自编码器构成的G模块进行缺陷修复学习,学习的目标是与正常样本之间的L1范数最小,通过一定数量的样本训练可以获得有缺陷修复能力的G模块 。
2、测试阶段
在测试阶段,将上步骤训练好的G模块作为测试阶段的图片修复模块,对于输出的图像样本,假如存在缺陷区域,通过修复模块G将得到修复后的图像,与原缺陷样本图像一起作为LBP算法的输入,通过LBP算法对其缺陷区域进行精确定位。
首先,使用一个没有缺陷的样本图片训练一个GAN模型,然后,在修复一个已知位置的缺陷时,我们队G的输入z进行优化,获得最优的z使得y和一个缺陷图像的正常部分在最大程度上相似,图像y是恢复后的图像。
文章对DAGM 2007数据集和织物密集图像进行了验证实验。实验表明,提出的GAN+LBP算法和有足够训练样本的监督训练算法具有较高的检测准确率。实验使用两种类型的数据集,4.1是印花纹表面,4.2是织物表面。
4.1Texture surface
4.2Fabric Picture
实验中缺陷样本的类型有五种。实验样本按背景分有三类,每类包含5个缺陷样本,25个正常样本。
人工缺陷样本的图像处理方法,比如加入噪声、PS;GAN中G模块和D模块的构建;LBP缺陷精确检测方法。
[1] Zhao Z, Li B, Dong R, et al. A Surface Defect Detection Method Based on Positive Samples[C]// Pacific Rim International Conference on Artificial Intelligence. Springer, Cham, 2018:473-481.
[2] Wu X. Fully Convolutional Networks for Semantic Segmentation[J]. Computer Science, 2015.
[3] Isola P, Zhu J Y, Zhou T, et al. Image-to-Image Translation with Conditional Adversarial Networks[J]. 2016:5967-5976.
[4] Ronneberger O, Fischer P, Brox T. U-Net: Convolutional Networks for Biomedical Image Segmentation[C]// International Conference on Medical Image Computing and Computer-Assisted Intervention. Springer, Cham, 2015:234-241.