# PaDiM-Anomaly-Detection-Localization-master **Repository Path**: xueyoo/PaDiM-Anomaly-Detection-Localization-master ## Basic Information - **Project Name**: PaDiM-Anomaly-Detection-Localization-master - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2020-12-08 - **Last Updated**: 2021-03-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # PaDiM-Anomaly-Detection-Localization-master This is an implementation of the paper [PaDiM: a Patch Distribution Modeling Framework for Anomaly Detection and Localization](https://arxiv.org/pdf/2011.08785). This code is heavily borrowed from both SPADE-pytorch(https://github.com/byungjae89/SPADE-pytorch) and MahalanobisAD-pytorch(https://github.com/byungjae89/MahalanobisAD-pytorch) projects

## Requirement * python == 3.7 * pytorch == 1.5 * tqdm * sklearn * matplotlib ## Datasets MVTec AD datasets : Download from [MVTec website](https://www.mvtec.com/company/research/datasets/mvtec-ad/) ## Results ### Implementation results on MVTec * Image-level anomaly detection accuracy (ROCAUC) |MvTec|R18-Rd100|WR50-Rd550| |:---:|:---:|:---:| |Carpet| 0.984| 0.999| |Grid|0.898 | 0.957| |Leather|0.988 | 1.0| |Tile| 0.959| 0.974| |Wood|0.990 | 0.988| |All texture classes| 0.964| 0.984| |Bottle|0.996 | 0.998| |Cable| 0.855| 0.922| |Capsule|0.870 | 0.915| |Hazelnut|0.841 |0.933 | |Metal nut| 0.974| 0.992| |Pill|0.869 | 0.944| |Screw| 0.745| 0.844| |Toothbrush|0.947 |0.972 | |Transistor| 0.925| 0.978| |Zipper| 0.741| 0.909| |All object classes|0.876|0.941 | |All classes| 0.905|0.955 | * Pixel-level anomaly detection accuracy (ROCAUC) |MvTec|R18-Rd100|WR50-Rd550| |:---:|:---:|:---:| |Carpet| 0.988| 0.990| |Grid| 0.936| 0.965| |Leather|0.990 |0.989 | |Tile|0.917 | 0.939| |Wood| 0.940| 0.941| |All texture classes| 0.953|0.965 | |Bottle|0.981 | 0.982| |Cable|0.949| 0.968| |Capsule| 0.982| 0.986| |Hazelnut|0.979 | 0.979| |Metal nut| 0.967|0.971 | |Pill|0.946 |0.961 | |Screw| 0.972| 0.983| |Toothbrush|0.986 |0.987 | |Transistor| 0.968|0.975 | |Zipper|0.976| 0.984| |All object classes|0.971|0.978 | |All classes| 0.965| 0.973| ### ROC Curve * ResNet18

* Wide_ResNet50_2

### Localization examples

## Reference [1] Thomas Defard, Aleksandr Setkov, Angelique Loesch, Romaric Audigier. *PaDiM: a Patch Distribution Modeling Framework for Anomaly Detection and Localization*. https://arxiv.org/pdf/2011.08785 [2] https://github.com/byungjae89/SPADE-pytorch [3] https://github.com/byungjae89/MahalanobisAD-pytorch