Skip to main content

Unsupervised Anomaly Localization Toolbox and Benchmark

Project description


READ (Reconstruction or Embedding based Anomaly Detection)

This repo is the pytorch version of READ, plz jump to https://git.openi.org.cn/OpenI/READ_mindspore for the mindspore version.

READ is an open source toolbox focused on unsupervised anomaly detection/localization tasks. By only training on the defect-free samples, READ is able to recognize defect samples or even localize anomalies on defect samples.

The purpose of this repo is to promote the research and application of unsupervised anomaly detection and localization algorithms. READ is designed to provide:

  • A unified interface for encapsulating diverse anomaly localization algorithms
  • High quality implementations of novel anomaly localization algorithms
  • Templates for using these algorithms in a detailed task

In addition, READ provides the benchmarks for validating novel unsupervised anomaly detection and localization algorithms for MVTec AD dataset.

Changelog

  • [Nov 07 2021] READ_pytorch v0.1.1 is Released!
  • [May 08 2021] READ_pytorch v0.1.0 is Released!
    Please refer to ChangeLog for details and release history.

Installation

Install the latest version from the master branch on OpenI

pip install -U git+https://git.openi.org.cn/OpenI/READ_pytorch

Please follow the Installation document to get a detailed instruction.

Getting Started

Please follow the Getting Started document to run the provided demo tasks.

Localization examples (based on READ)

Supported Algorithms

Results

Implementation results on MVTec

  • Image-level anomaly detection accuracy (ROCAUC)
MVTec RIAD FAVAE SPADE-WR50X2 PaDiM-WR50X2 USTAD STPM SemiOrth-WR50X2 InTra
Carpet 0.654 0.642 0.819 0.996 0.886 0.844 0.996 0.430
Grid 0.980 1.000 0.42 0.966 0.919 0.982 0.836 0.600
Leather 0.982 0.706 0.94 1.000 0.748 0.989 1.000 0.964
Tile 0.838 0.842 0.980 0.973 0.998 0.981 0.963 0.894
Wood 0.861 0.879 0.979 0.987 0.952 0.997 0.989 0.897
All texture classes 0.863 0.814 0.828 0.984 0.901 0.959 0.957 0.757
Bottle 0.984 0.999 0.972 0.999 0.940 1.000 0.995 0.947
Cable 0.543 0.942 0.857 0.880 0.478 0.874 0.779 0.562
Capsule 0.836 0.712 0.873 0.896 0.785 0.911 0.835 0.479
Hazelnut 0.904 0.999 0.907 0.950 0.939 0.986 0.973 0.776
Metal nut 0.820 0.911 0.734 0.987 0.509 0.988 0.917 0.466
Pill 0.789 0.779 0.785 0.935 0.798 0.982 0.744 0.554
Screw 0.746 0.595 0.658 0.846 0.706 0.871 0.470 0.665
Toothbrush 0.956 0.925 0.878 0.981 0.825 0.769 0.978 0.533
Transistor 0.890 0.885 0.900 0.983 0.563 0.810 0.927 0.520
Zipper 0.978 0.647 0.952 0.920 0.761 0.967 0.872 0.461
All object classes 0.845 0.839 0.852 0.9377 0.730 0.916 0.849 0.596
All classes 0.851 0.831 0.844 0.953 0.787 0.930 0.885 0.650
  • Pixel-level anomaly detection accuracy (ROCAUC)
MVTec RIAD FAVAE SPADE-WR50X2 PaDiM-WR50X2 USTAD STPM SemiOrth-WR50X2 InTra
Carpet 0.904 0.836 0.985 0.988 0.958 0.977 0.989 0.468
Grid 0.984 0.994 0.978 0.969 0.850 0.983 0.860 0.631
Leather 0.990 0.908 0.993 0.991 0.914 0.991 0.993 0.989
Tile 0.761 0.626 0.942 0.940 0.948 0.969 0.935 0.873
Wood 0.821 0.908 0.956 0.946 0.899 0.940 0.950 0.715
All texture classes 0.892 0.854 0.971 0.967 0.914 0.972 0.945 0.735
Bottle 0.945 0.962 0.968 0.982 0.902 0.983 0.977 0.806
Cable 0.619 0.957 0.920 0.957 0.816 0.940 0.922 0.560
Capsule 0.978 0.965 0.983 0.985 0.913 0.973 0.981 0.774
Hazelnut 0.974 0.987 0.986 0.982 0.974 0.968 0.976 0.911
Metal nut 0.828 0.953 0.969 0.972 0.891 0.954 0.949 0.753
Pill 0.955 0.943 0.947 0.950 0.928 0.987 0.922 0.745
Screw 0.984 0.960 0.992 0.984 0.967 0.983 0.949 0.785
Toothbrush 0.966 0.984 0.989 0.988 0.947 0.982 0.989 0.692
Transistor 0.813 0.907 0.861 0.973 0.687 0.806 0.958 0.657
Zipper 0.981 0.817 0.982 0.983 0.825 0.987 0.975 0.497
All object classes 0.904 0.944 0.960 0.976 0.885 0.956 0.960 0.718
All classes 0.900 0.914 0.963 0.973 0.895 0.962 0.955 0.730

License

This project is released under the Open-Intelligence Open Source License V1.1.

Contact

Please contact me if there is any question (Chao Zhang chao.zhang46@tcl.com).

About

Machine Vision Group, TCL Corporate Research(HK) Co., Ltd is the main developer of READ.

Any contributions to READ is welcome!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

READ_pytorch-0.1.1-py36-none-any.whl (72.2 kB view hashes)

Uploaded Python 3.6

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page