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

See all 12 implementations

Results from the Paper Edit

Ranked #1 on Anomaly Detection on MVTec AD (using extra training data)

Task Dataset Model Metric Name Metric Value Global Rank Uses Extra
Training Data
Result Benchmark
Anomaly Detection MVTec AD PatchCore Detection AUROC 99.6 # 1
Segmentation AUROC 98.4 # 3
Segmentation AUPRO 95.0 # 1
Few Shot Anomaly Detection MVTec AD PatchCore (16 shot) Detection AUROC 95.4 # 1