SimpleNet: A Simple Network for Image Anomaly Detection and Localization
发布时间
阅读量:
阅读量
论文主要内容
本文提出了一个名为 SimpleNet 的简单高效的网络,用于无监督图像异常检测和定位。SimpleNet 在性能和推理速度上均超越了当前最先进的方法,成为连接学术研究与工业应用的桥梁。
三种异常检测的思路
1. 基于重建误差的方法(Reconstruction-based Methods)
- 思路 :通过深度网络(如自编码器)重建正常数据,利用像素级重建误差作为异常评分。异常区域重建差异较大,因此可检测异常。
- 缺点 :
- 如果解码器 性能过强,可能重建异常区域,导致误检。
- 对具有类似纹理或边缘的异常区域表现较差。(细节方面)
2. 基于合成样本的方法(Synthesizing-based Methods)
- 思路 :通过在正常样本上合成异常样本并训练分类器,划分正常和异常样本分布。
- 缺点 :
- 合成样本往往与真实异常差距较大 。
- 异常样本的情况太多 ,合成所有可能的异常样本几乎不可能。
3. 基于特征嵌入的方法(Embedding-based Methods)
- 思路 :利用预训练的 CNN 提取特征并嵌入到高维分布中,通过比较特征分布差异来检测异常。
- 缺点 :
- 工业图像与预训练模型的分布差异会导致特征偏差。
- 统计算法(如多元高斯分布)计算复杂,存储消耗大。
SimpleNet
1. 特征提取器(Feature Extractor)
- 基于预训练网络(如 WideResNet50)提取本地特征,避免从零开始训练。
- 输出图像中各位置的局部特征。
2. 特征适配器(Feature Adaptor)
- 解决特征嵌入方法分布不一致的问题
- 将预训练的特征调整为目标领域的特征,减少领域偏差。
- 通常使用简单的全连接层实现。

3. 异常特征生成器(Anomalous Feature Generator)
- 比合成异常样本的方法更具有鲁棒性
- 在训练阶段,通过向正常特征添加高斯噪声生成异常特征。
- 保证异常特征分布与正常特征分布在嵌入空间中明显分离。
4. 判别器(Discriminator)
- 作为正常性评分器,区分正常与异常特征。
- 简单的两层多层感知机(MLP),提高计算效率。

损失函数
SimpleNet 的训练目标通过一个截断的 L_1 损失函数实现:
l_{h,w} = \max(0, t^+ - D_\psi(q_{h,w})) + \max(0, -t^- + D_\psi(q^-_{h,w}))
其中:
- t^+ 和 t^- 为截断项(默认为 0.5 和 -0.5),用于防止过拟合。
- D_\psi 表示判别器,输入特征 q_{h,w} 为正常特征,q^-_{h,w} 为异常特征。
总损失函数为:
L = \min_{\theta, \psi} \sum_{x \in X_{\text{train}}} \sum_{h,w} \frac{l_{h,w}}{H_0 \times W_0}
H_0、W_0是特征图的高宽,由于特征图是对输入图像进行分块操作的,所以H_0、W_0不一定和输入图像的h、w相等,一般来说小于h和w
创新点总结
特征适配与领域减偏
使用特征适配器调整预训练特征,减少领域分布偏差,提升模型在工业图像上的性能。
基于特征空间的异常合成
在特征空间中生成异常样本,避免直接在图像空间中合成异常样本的不足。
高效的异常检测流程
简化判别器为两层 MLP,摒弃复杂的统计算法,大幅提高计算效率。
简单结构,高效推理
SimpleNet 以简单的 CNN 模块构建,轻量易训练,推理速度达到 77 FPS,适合工业部署。
论文结果

MVTec AD基准上的推理速度(FPS)与I-AUROC的关系。SimpleNet 在准确性和效率上都大大优于所有先前的方法。

SimpleNet 与 MVTec AD 上最先进的作品的比较。按图像AUROC (I-AUROC)和像素级AUROC (P-AUROC)显示

MVTec AD中每个类的采样图像、GT和异常热力图
全部评论 (0)
还没有任何评论哟~
