Command Palette
Search for a command to run...
Karsten Roth Latha Pemula Joaquin Zepeda Bernhard Schölkopf Thomas Brox Peter Gehler

Abstract
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.
Code Repositories
Benchmarks
| Benchmark | Methodology | Metrics |
|---|---|---|
| anomaly-classification-on-goodsad | PatchCore-100% | AUPR: 86.1 AUROC: 85.5 |
| anomaly-classification-on-goodsad | PatchCore-1% | AUPR: 83.3 AUROC: 81.4 |
| anomaly-detection-on-aebad-s | PatchCore | Detection AUROC: 71.0 Segmentation AUPRO: 87.8 |
| anomaly-detection-on-aebad-v | PatchCore | Detection AUROC: 70.7 |
| anomaly-detection-on-mpdd | PatchCore | Detection AUROC: 82.12 Segmentation AUROC: 95.66 |
| anomaly-detection-on-mvtec-ad | PatchCore Large | Detection AUROC: 99.6 FPS: 5.88 Segmentation AUPRO: 93.5 Segmentation AUROC: 98.2 |
| anomaly-detection-on-mvtec-ad | PatchCore | Detection AUROC: 99.2 Segmentation AUROC: 98.4 |
| anomaly-detection-on-mvtec-ad | PatchCore(16shot) | Detection AUROC: 95.4 |
| anomaly-detection-on-mvtec-loco-ad | PatchCore | Avg. Detection AUROC: 80.3 Detection AUROC (only logical): 75.8 Segmentation AU-sPRO (until FPR 5%): 39.7 |
| anomaly-detection-on-mvtec-loco-ad | PatchCore Ensemble | Avg. Detection AUROC: 79.4 Detection AUROC (only logical): 71.0 Detection AUROC (only structural): 87.7 Segmentation AU-sPRO (until FPR 5%): 36.5 |
Build AI with AI
From idea to launch — accelerate your AI development with free AI co-coding, out-of-the-box environment and best price of GPUs.