Image-based anomaly detection

Project Description 

In industrial manufacturing processes, quality assurance is an important topic. It is one of the top priorities for Industry 4.0 with a good reason. Defect detection improves the quality, efficiency, and saves lots of money. It is about to become more accessible however this problem faces  a number of unique challenges:

  1. It is often difficult to obtain a large amount of anomalous data
  2. The difference between a normal sample and an anomalous sample can be very small
  3. The type of anomalies is not always known beforehand


For this use-case, we want to explore anomaly detection methods which use anomaly-free training data combined with probabilistic AI to detect anomalies. The goal is that all a new client has to do is provide us with a dataset containing non-defective samples and we can build a custom anomaly detection solution for their use case. Recently Intel released the Anomalib library which implements a couple of the current state-of-the-art methods. Some initial exploration of the library has been done by ML6, however there is much more work to be done before we can use it for a client.

Methodology / Tasks

You can take a headstart when working on this project, as some work has already been done. An actively developed library is available called Anomalib which contains implementations of the current state-of-the-art. However, there is still a gap to be bridged before we can use it in practice. An initial comparison of three algorithms was done however multiple interesting algorithms were excluded. 

During this internship you will:

  • Explore multiple state-of-the-art anomaly detection algorithms
  • Deploy the models to a Jetson Xavier and create an initial pipeline
  • Create a full anomaly detection setup from start to finish.

Profile / Required skills

  • Strong analytical abilities, knowledge of different statistical methods, not scared by mathematics and a familiarity with research studies.
  • Strong interest in Computer Vision [preferred]
  • Familiarity with statistical analysis languages and tools like Python.
  • Excellent verbal and written communication in English.
  • You are currently pursuing a degree in computer science or related field.

Internship Duration

The duration of the internship can be flexible and depends on the candidate preference and the project requirements. The typical duration is 6 to 8 weeks. The preferred duration for this specific project is 6 weeks.