文 献 综 述
摘要:工业产品的缺陷检测问题正受到广泛的关注和研究。如何快速和正确地判别和定位缺陷成为了亟待解决的一大问题。使用最新的深度学习方法不失为一种有效的选择。同时,由于深度学习需要大量的数据集才能达到较好的训练效果,而工业产品往往面对的是缺陷情况众多、单个缺陷数据较少的情况。目前广泛使用自动编码器(Autoencoder)方法,即仅使用正常数据,训练网络针对输入重建出正常图像的能力。由于未参与训练,异常输入往往会产生比正常输入更高的重建错误,从而判断出缺陷。
已经观察到,有时自动编码器会很好地“泛化”,以至于它也可以很好地重建异常,从而导致异常的漏检。为了缓解自动编码器的这一缺点,本项目提出了基于母版匹配的缺陷检测方法。将匹配得到的无缺陷母版和未知测试数据组合一起作为网络输入数据,使得网络不再去记忆复杂的产品特征,而是去寻找较为显著的缺陷类区别,忽略了细小偏移旋转、光照模糊等区别。于此同时,本项目还提出了一种快速匹配算法,用于快速查找和输入测试数据匹配的母版。
关键词:缺陷检测,Autoencoder,重构误差,快速匹配,母版
1、缺陷检测方法
缺陷检测在工业产品领域和视频监控领域有着广泛的应用,由于许多原因,它极具挑战性:首先,需要根据情况不同确定不同时间,人工注释缺陷情况非常耗时。 例如工业制品表面的印刷错误,往往错误形状多样难以穷尽。其次,收集异常数据集需要付出大量努力,因为异常事件很少发生。因此,缺陷检测通常被认为是无监督学习问题,旨在学习一种描述正常样本而没有缺陷样本的模型。在训练时,仅训练正常样本,在测试时,模型未描述的事件和活动将被视为缺陷所在[1]。
考虑到这样的情况,处理该问题的首选项是一分类方法(one-class),例如一分类SVM [2,3]和深层一分类网络[4,5],该方法旨在学习围绕正常样本的判别超平面。将超平面之外的部分判定为缺陷样本。
还有一些无监督的聚类方法,例如k-means和高斯混合模型(GMM),也已被用来建立标准数据的详细资料,以识别缺陷。但是这些方法在处理高维数据时通常性能不佳[6]。
2、基于重建的方法
基于卷积神经网络(CNN)的最新方法利用了Autoencoder(AE)在训练时,给定正常的视频帧作为输入,它们通常会提取特征表示并尝试再次重建输入。然后,将具有较大重建误差的视频帧在测试时视为异常。该方法基于这样的假设,即仅通过正常数据即可学习的模型无法正确表示和重建异常[7]。
