Towards Total Recall in Industrial Anomaly Detection

Being able to spot defective parts is a critical component in large-scale industrial manufacturing. A particular challenge that we address in this work is the cold-start problem: fit a model using nominal (non-defective) example images only. While handcrafted solutions per class are possible, the goal is to build systems that work well simultaneously on many different tasks automatically. The best performing approaches combine embeddings from ImageNet models with an outlier detection model. In this paper, we extend on this line of work and propose \textbf{PatchCore}, which uses a maximally representative memory bank of nominal patch-features. PatchCore offers competitive inference times while achieving state-of-the-art performance for both detection and localization. On the challenging, widely used MVTec AD benchmark PatchCore achieves an image-level anomaly detection AUROC score of up to $99.6\%$, more than halving the error compared to the next best competitor. We further report competitive results on two additional datasets and also find competitive results in the few samples regime.\freefootnote{$^*$ Work done during a research internship at Amazon AWS.} Code: github.com/amazon-research/patchcore-inspection.

PDF Abstract CVPR 2022 PDF CVPR 2022 Abstract

Results from the Paper


Task Dataset Model Metric Name Metric Value Global Rank Result Benchmark
Anomaly Detection AeBAD-S PatchCore Segmentation AUPRO 87.8 # 2
Detection AUROC 71.0 # 3
Anomaly Detection AeBAD-V PatchCore Detection AUROC 70.7 # 3
Anomaly Detection MVTec AD PatchCore Large Detection AUROC 99.6 # 11
Segmentation AUROC 98.2 # 27
Segmentation AUPRO 93.5 # 24
FPS 5.88 # 16
Anomaly Detection MVTec AD PatchCore(16shot) Detection AUROC 95.4 # 63
Anomaly Detection MVTec LOCO AD PatchCore Avg. Detection AUROC 80.3 # 24
Detection AUROC (only logical) 75.8 # 23
Segmentation AU-sPRO (until FPR 5%) 39.7 # 15
Anomaly Detection MVTec LOCO AD PatchCore Ensemble Avg. Detection AUROC 79.4 # 25
Detection AUROC (only logical) 71.0 # 28
Detection AUROC (only structural) 87.7 # 15
Segmentation AU-sPRO (until FPR 5%) 36.5 # 18

Results from Other Papers


Task Dataset Model Metric Name Metric Value Rank Source Paper Compare
Anomaly Detection MVTec AD PatchCore Detection AUROC 99.2 # 25
Segmentation AUROC 98.4 # 23

Methods