为了建立高性能的缺陷检测模型,提出一个两阶段框架,只用正常训练数据来构建异常检测器,首先学习自监督深度表示,然后在表示上构建一个生成的单分类器。通过对剪切粘贴中的正常数据进行学习表示,剪切粘贴是一种简单的数据增强策略,对大图像进行随机位置粘贴。直接训练提高了3.1AUCs,在imageNet上对预训练模型进行迁移学习,达到了SOTA 96.6的AUC。通过拓展框架,可以在没有注释的情况下定位缺陷区域。
与典型的监督分类问题不同,异常检测面临着独特的挑战。首先,很难获得大量的标注数据;其次,正常模式和异常模式之间的差异是细微的,因为在高分辨率图像中,缺陷区域可能很小且很细微。
异常分布是未知的,所以训练模型来学习正常实例的模式,并在这些模型不能很好的表示异常实例,从而确定异常。
deep one-class classifier[46] 由深度神经网络参数化的有效的端到端训练的一类分类器
[46] Lukas Ruff, Robert V andermeulen, Nico Goernitz, Lucas Deecke, Shoaib Ahmed Siddiqui, Alexander Binder, Emmanuel Müller, and Marius Kloft. Deep one-class classification. In ICML, 2018.
检测细粒度异常模式
本文解决了一类缺陷检测的问题,遵循两阶段框架[52]
[52] Kihyuk Sohn, Chun-Liang Li, Jinsung Y oon, Minho Jin, and Tomas Pfister. Learning and evaluating representations for deep one-class classification. In ICLR, 2021.
我们首先通过解决代理任务来学习自我监督表示,然后构建一个生成的一类分类器在生成的表示上。从而将异常与正常区分开来,
创新是设计了一个新颖的代理任务,用于表示的自监督学习。
我们在正常训练数据和剪切粘贴(CutPaste)增强的数据之间制定了一个代理分类任务,这是一种建议的数据增强策略,它剪切图像块并粘贴在图像的随机位置。
我们表明,通过检测剪切粘贴增强引入的不规则性而学习到的表示在检测真实缺陷方面具有很好的普遍性。
在image level 实现了 95.2的AUC,比[25, 61]高3.1个百分点。
[25] Chaoqing Huang, Jinkun Cao, Fei Ye, Maosen Li, Ya Zhang, and Cewu Lu. Inverse-transform autoencoder for anomaly detection. arXiv preprint arXiv:1911.10676, 2019.
[61] Jihun Yi and Sungroh Y oon. Patch svdd: Patch-level svdd for anomaly detection and segmentation. arXiv preprint arXiv:2006.16067, 2020.
ImageNet预训练模型中进行迁移学习获得SOTA的96.6 image level AUC
我们推测几何变换,例如旋转和平移,在学习语义概念的表示方面是有效的,但是规律性比较差。
缺陷检测的异常模式通常包括不规则性,如裂缝或者扭曲。我们的目标是设计一个增强策略,创建局部不规则模式,然后通过训练模型来识别这些局部不规则性,希望它能在测试时推广到看不见的真实缺陷。
剪切可以消除图像中随机选择的小矩形区域。被认为是一个有用的数据补充
提出剪切粘贴增强方法:
CutPaste-Scar
提出了一种剪切粘贴疤痕,使用一个类似疤痕的(细长的)矩形盒填充图像块
**Multi-Class Classification **
对于不同形状的不同类型上的缺陷检测,提出两种剪切粘贴(大面积)和剪切粘贴(Scar),结合两种尺度的优势。训练时看作三种类别,指定更细粒度的三类分类任务
Similarity between CutPaste and real defects
思想,CutPaste的成功是来自 让CutPaste的图像模拟真实缺陷,从而实现正向的分类任务。
它表明(1) CutPaste仍然不是真实缺陷的完美模拟,(2)在它上面学习发现不规则性很好地概括了看不见的异常。
通过一类分类器计算异常分数。
考虑一个简单的参数高斯密度估计(GDE)
其中 μ \mu μ和 σ \sigma σσ是从正常训练数据中获得的。
处理image level的表示方法,我们还想要定位缺陷区域。
从image patch中学习提取表示是最优选的。我们可以构建一个异常检测器,它能够计算图像块的分数,然后用于定位缺陷区域。
在测试时,我们以给定的步长从所有补丁中提取嵌入。对于每个补丁,我们评估其异常分数,并使用高斯平滑将分数传播到每个像素[32]。
代理任务。
MVTec数据集较少,训练图像的数量从60-391不等。对深度学习表示提出了挑战。
我们采用one-class 分类协议,也称为半监督异常检测[10]
[10] V arun Chandola, Arindam Banerjee, and Vipin Kumar. Anomaly detection: A survey. ACM computing surveys (CSUR), 2009.
首先,为每一个类在各自的训练数据集上训练一个一类分类器。
我们基于顶部汇集的**特征为异常检测器构建高斯密度估计(GDE)**作为等式(2)。
相同的训练策略,如超参数或数据扩充的选择,适用于所有类别。
image level 异常检测性能如下图所示:
使用不同的随机种子运行实验5次,并报告每个类别的平均AUC 和标准误差。还报告了纹理、对象和所有类别的平均值和标准误差。
同时对比了不同的代理任务的训练表示,还比较了之前的方法。
使用三向分类任务训练的表示进行异常定位实验,对缺陷精确定位的一个挑战是很难使用热图式的方法来定位
使用GradCAM来突出异常检测器的决策区域。
我们从256×256的图像中训练64×64的模型。在测试时,我们以4的步幅密集提取异常分数,并通过高斯平滑的感受野上采样传播异常分数[32]
具有类似于正常数据的局部模式的结构(五彩纸屑噪声、剪切粘贴),网络学会发现不规则性并更好地概括以检测真正的缺陷
提出了一种数据驱动的缺陷检测和定位方法
我们成功的关键是用CutPaste对表示进行自我监督学习,这是一种简单而有效的增强,它鼓励模型发现局部不规则性。