CanTechLab

Can

MSFlow: Multiscale Flow-Based Framework for Unsupervised Anomaly Detection

论文链接:https://ieeexplore.ieee.org/document/10384766

代码链接:https://github.com/cool-xuan/msflow?tab=readme-ov-file

论文来源:TNNLS 2024

背景

  • 由于获取不到足够的异常样本用于模型训练,无监督异常检测(UAD)逐渐成为主流的异常检测方法,但这种方法中异常样本和注释的缺失会降低UAD的检测性能。

  • 统计模型(规范化流)适合于以无监督的方式进行异常检测(AD)和定位,统计模型通过将异常数据的分布与正常数据的分布进行对比以进行概率计算,由此可以有效地区分不可预测的异常。

动机

无监督异常检测逐渐成为主流方法,且统计模型适用于无监督异常检测。不可预测异常的尺寸变化给基于统计模型的高精度AD和定位方法带来了不便。

提出多尺度规范化流模型的 MSFlow 方法

  • Multiscale Feature Pyramid Extraction:关注具有更多空间结构信息的low-level feature,这些空间信息对像素级的异常定位和全局异常检测具有很高的参考价值。

  • MultiScale Flow Model:各自的并行流对各自尺度的特征图进行独立变换,随后融合流对所有特征图进行融合以实现多尺度感知交换,提高了流模型对异常尺寸变化的泛化能力。

  • Multiscale Outputs Aggregation:通过加法聚合计算像素级异常评分图,通过乘法聚合计算图像级异常评分图,取最大的K个分数的平均值为全局异常分数。

方法

Framework

Feature Extractor

提取多尺度特征映射作为流模型的输入,对异常尺寸变化进行概化。 只对输入图像使用一次特征提取器,对不同阶段的最后一次特征映射进行采样,构建多尺度特征金字塔。 将每个阶段提取的特征图表示为

将多尺度特征提取表述为

E()表示多阶段架构设计后的预训练特征提取器。 通过平均池化

得到特征金字塔,表示为

Multiscale Normalizing Flows

Asymmetrical Parallel Flows

Fusion Flow

Anomaly Score Calculations

使用不同的多尺度聚合策略达到最好性能

使用对数公式计算异常分数图

将得到的异常得分图使用双线性插值的方法上采样到输入图片的大小(H,W),对于逐像素异常定位,将重新标度的对数似然图

转换为多层概率图

随后使用加法聚合计算像素级定位

图像级检测进行概率图转换后使用乘法聚合后topK取平均

实验

Dataset

两个图像AD数据集、一个视频违章检测数据集

  • MVTec AD:共15类5354张像素级注释图像的工业缺陷检测数据集。

  • MTDs:共952张无缺陷图像和382张有缺陷图像的瓦片数据集。

  • mSTC:从标准STC数据集中的训练和测试视频中采样的每五个视频帧。

Metrics

  • AUROC(image and pixel level)

  • AUPRO(pixel level)

Result

MSFlow在图像级AD检测都达到了最好或者第二好的检测性能,仅在Gird和Screw低于第二好方法0.1%的AUC。

MSFlow在所有工业类别中实现了98.8%的AUC和97.1%的PRO的高定位精度,证明了所提出的MSFlow具有高精度定位和噪声抑制能力。

MSFlow达到了第二好99.2%的AUC,比仅能进行异常检测的CSFlow方法低0.1%。

MSFlow的违例行为定位为93.0%的AUC,比基于聚类的PatchCore方法高出1.2%。

Ablation Study

通过上表中第三行我们可以知道第1阶段(S1)的特征图提升了异常检测和定位性能,验证了空间细节对异常检测和定位的重要性。第二行增加阶段4后性能不升反降同样也证明了相较于高级语义信息,空间细节给异常检测和定位提供更多帮助。

上表也对不同核大小的池化策略(最大池化和平均池化)进行消融研究,结果表明卷积核大小设置为3能够实现比较权衡的检测和定位。

MSFlow在ResNet18下性能最佳,可以灵活地作为插件模块使用。RN-18和WN-50下性能的差距也说明了代表性特征对流模型的重要性。

MSFlow的融合流适用于各种缺陷尺寸的工业产品,单尺度噪声被明显抑制。

FuseFlow降低了CSFlow的计算成本,结果表明MSFlow的融合流在信息交换方面比CSFlow的跨尺度流更有效。

BN归一化和LN归一化在性能上还是有差距的,BN和LN分别在数据空间和模型空间进行统计。由于数据空间狭窄,BN的统计效果被削弱,而LN在模型空间中仍然有效。

乘法聚合考虑区域连通性适合用于计算图像异常检测和区域定位的AUCROC分数。 加法聚合通过保留每个尺度更多的个性适合用于计算逐像素定位的AUCROC分数。

当K设置为2%或3%时,MSFlow达到最佳,前3%的平均值为最优。当K值在1%-10%范围内变化时,检测AUCROC分数仍高于99.2%,表明该方法对K值的设置具有较大的鲁棒性。

两种聚合方法对bottle的准确率都达到了100%,但在全局异常评分计算时,缺陷和非缺陷之间存在明显的差距。

总结

流模型方法在面对异常大小变化不可预测的情况下,特别是在需要进一步定位异常区域的情况下存在比较大的挑战,由此本文提出一种新颖的多尺度流框架(MSFlow)来泛化异常尺寸变化。它由不对称的并行流和融合流组成,能够交换多尺度感知。根据不同的需求,如图像级异常检测和像素级异常定位,MSFlow采用了不同的多尺度聚合策略以达到更好的性能。除此之外,MSFlow在视频违规检测也展现了强大的应用潜力。