E3 Anomaly Synthetic Generator / Synthetic anomaly data for inspection AI

Don’t wait for
defective parts.
Start from
good ones.

E3 Anomaly Synthetic Generator is Windows software that takes images of good (OK) products and texture images, and creates synthetic NG images containing defects synthesised with this software, paired with ground-truth masks that mark where each defect is, pixel by pixel. Output is written in an MVTec-compatible folder structure. You can prepare evaluation and training data for inspection AI without waiting for defective parts to accumulate.

Free trial: 14 days, no feature limits, not for commercial use

E3 Anomaly Synthetic Generator の操作画面。左に元画像・合成NG・マスクの3面プレビュー、右に入力フォルダの指定欄と実行ボタンの操作パネルが並ぶ。黒い背景に置いたカシューナッツの元画像には、欠陥を置いてよい範囲を示す緑の輪郭線が引かれている。合成NGでは、同じカシューナッツの下側の中ほどに、本ソフトで合成した茶色いしみ状の欠陥が入っており、マスク欄は同じ位置を赤で示している。

The main screen. From left: previews of the original image, the synthetic NG image and the mask. The green line on the original image is the area where defects may be placed. The defect was synthesised with this software.

Source image: VisA dataset (Zou et al., "SPot-the-Difference Self-Supervised Pre-training for Anomaly Detection and Segmentation", ECCV 2022), CC BY 4.0, https://github.com/amazon-science/spot-diff — modified by TOMOMI RESEARCH with defects synthesised using E3 Anomaly Synthetic Generator.

What it does

The same image,
with only the defect added.

On the left, the original image of a good product; on the right, an NG image synthesised with this software. The only pixels that change are the defect and the blended edge just around it. Everything beyond that stays as it was in the original (*1).

A synthetic NG image. At the same position as in the image of good enamel wire, one thin copper-coloured line-shaped defect, synthesised with this software, runs in an arc down to the right. This is not a photograph of a real defective part.
The original image of a good product (OK). The surface of enamel wire imaged by TOMOMI RESEARCH: strands of twisted copper wire run horizontally under a clear coating. There is no defect.
Original (OK) Synthetic NG

Drag to compare

A line-shaped defect synthesised with this software on the surface of enamel wire.

* The defect on the right was synthesised with this software. This is not a photograph of a real defective part.

* The examples shown were selected from images synthesised with this software. The synthesis settings were also changed from the application defaults to make the defects easier to see.

*1 When exported in the same colour format as the original image. If a colour image is exported in greyscale, the entire image is converted to luminance (brightness). The blended edge (a few pixels from the edge of the ground-truth mask) is not included in the ground-truth mask.

* This does not guarantee the detection rate or accuracy of any inspection AI that uses synthetic NG images.

The problem

Wait as you may,
the defects won’t line up.

To find out how much an inspection AI can catch, you need examples of defects and ground truth showing where they are. Even with methods that train on good images alone, evaluation still needs examples of defects. Defects, however, do not appear when you need them, or in the types you need.

Before mass production, there are no defects yet

You want to set up the evaluation during ramp-up, but no defective parts have appeared to evaluate with. While you wait for them, the evaluation cannot be built.

The defects that do appear are skewed

Defects are rare, and the ones that appear tend to be of the same few types. The list of defects you need caught and the list of defective parts on hand do not always match.

Ground-truth masks are painted by hand, one at a time

A mask that marks the defect pixel by pixel is painted by a person zooming in on the image. That effort adds up with every image.

The answer

Prepare the defects
you need to test, first.

E3 Anomaly Synthetic Generator synthesises defects onto your own good images and exports, at the same time, a ground-truth mask showing where each defect is. Decide the types and sizes of defect you want to test, and create evaluation and training data without waiting for defective parts to accumulate.

Waiting for defects

Defective parts appear — wait until they do

↓

Collect them — the types are not yours to choose

↓

Image them

↓

Paint ground-truth masks by hand — one at a time

↓

Evaluation and training data

The evaluation cannot start until the defective parts are in.

E3 Anomaly Synthetic Generator

Good images + texture images

↓

Choose the defect types and the placement area

↓

Synthetic NG images + ground-truth masks — exported in pairs

↓

Evaluation and training data (MVTec-compatible)

You decide the types and sizes of defect.

* Synthetic NG images do not replace verification with real defective parts. When real defective parts become available, verify with them as well.

What you get

Synthetic NG images
and ground-truth masks,
in pairs.

From each good image, the software exports a synthetic NG image and a binary ground-truth mask showing where the defect is, paired under the same number. The output keeps the pixel dimensions of the original good image.

01 元画像(OK)。自社で撮像したエナメル線の良品画像で、欠陥は入っていない。
01 / Original (OK)

Your own good image.

The good image you put in. It is copied to train/good in the output folder.

02 合成NG。01 と同じ画像に、本ソフトで合成した銅色の細い線状の欠陥が1本、右下がりの弧を描いて入っている。実際の不良品を撮影した画像ではない。
02 / Synthetic NG

The image with the defect.

Outside the defect and its blended edge, the image is as it was (*1). Saved to test/synthetic.

03 正解マスク。黒い背景の中に、02 の欠陥と同じ位置・同じ形の白い細い弧が1本だけ描かれた二値画像。白が欠陥(255)、黒がそれ以外(0)。
03 / Ground-truth mask

Where the defect is, pixel by pixel.

A binary PNG: defect in white (255), everything else in black (0). Saved to ground_truth/synthetic.

04 重ね表示(説明用の図)。02 の合成NG画像の上に、正解マスクの縁のすぐ外側へ青い細線を引いた図。青い線の内側に欠陥がそのまま見え、欠陥の位置と形が正解マスクと一致していることが読み取れる。
04 / Overlay

Seen together.

The ground-truth mask laid over the synthetic NG image, to show that the defect and the mask line up.

* The defects in 02 to 04 were synthesised with this software. These are not photographs of real defective parts.

* The overlay in 04 is a figure made for explanation and is not part of the software’s output.

*1 When exported in the same colour format as the original image. The few pixels just outside the edge of the ground-truth mask contain a faint change that blends the defect into the image.

* 01 to 04 are the same position from the same synthesis run, cropped for display. The blue line in 04 is a guide drawn outside the edge of the ground-truth mask.

MVTec-compatible folder structure

Output is written in an MVTec-compatible folder structure, that is, the same folder layout as the public anomaly detection dataset MVTec AD. It can go straight to any inspection AI that reads this format, for training and evaluation.

<output folder>/<class name>/

├── train/good/ good images (copies)

├── test/synthetic/ synthetic NG images

├── ground_truth/synthetic/ ground-truth masks (0 / 255)

└── run.json generation settings and a per-image record

Key features

Decide the defect type
and where it may go.

The shape of the defect comes from one of two methods; the area where defects may be placed is set in one of three ways. Where inside that area each defect goes is decided at random by the software. Before exporting, you can check the result with a single-sample preview and with a live preview that updates as soon as you change a setting.

Mode 01 / Perlin

Blotches and stains.

Texture is blended into an area shaped by Perlin noise.

Mode 02 / Defect type

Set the shape and the size.

Choose from six types and set the count, length and width in pixels.

エナメル線に線状の欠陥を合成した画像。撚った銅線の筋が横に走る面に、銅色の細い線が右下がりの弧を描いて1本入っている。実際の不良品を撮影した画像ではない。
Scratch|Enamel wire
アルミパウチ(グレースケール画像)の反射面に線状の欠陥を合成した画像。左上から右下へ、細い弧状の線が1本入っている。実際の不良品を撮影した画像ではない。
Scratch|Aluminium pouch (greyscale)
小型ポンプの金属板に異物の欠陥を合成した画像。板の上側に、淡い色の小さな付着物が1つ入っている。実際の不良品を撮影した画像ではない。
Foreign matter|Small pump

All defects in these images were synthesised with this software. There are six defect types (Scratch, Dent, Foreign matter, Chip, Spot and Lump); the examples shown are Scratch and Foreign matter (2 of the 6 types).

01 / Two synthesis methods

Make a blotch, or set the shape.

The Perlin method blends texture into an area shaped by a smoothly varying random pattern (Perlin noise), creating blotchy, stain-like defects. The defect-type method lets you choose from six types and set the count, length and width in pixels.

— Scratch

— Dent

— Foreign matter

— Chip

— Spot

— Lump

Texture = the image that serves as source material for how the defects look. A texture set created by TOMOMI RESEARCH is included. Photographs of defects you already have can also be used as textures.

02 / Placement area

Keep defects on the product.

In the mask editor, circle the product and its outline is extracted automatically; the inside becomes the area where defects may be placed. You can also draw a box, or specify a mask image file. If the product sits in a different position in each image, the outline can be extracted again for each good image.

— Automatic outline extraction

— Box

— Mask image file (one shared by all images, or one per image)

* What you specify is the area where defects may be placed, not the position of each defect. With the Perlin method, a defect may extend a few pixels beyond the edge of the area.

03 / Keeps the original image quality

Outside the defect and its edge, the original stays.

Output keeps the resolution of the original good image. Apart from the defect and the blended edge just around it, the pixels match the original bit for bit (not a single pixel value changes). Greyscale export is an 8-bit, single-channel PNG, the same format as FORESIGHT STEREO 2D Texture / 3D Surface images.

* The bit-for-bit match applies when exporting in the same colour format as the original image. Because the ground-truth mask marks pixels where the defect is above a set strength, the few pixels just outside the edge of the mask contain a faint change that blends the defect into the image.

04 / Reproducible

Make the same image again.

Specify a seed (the starting value for the random numbers) to recreate the same image from the same settings. The generation settings, and for each image the source image, texture, seed and defect type, are recorded in run.json. Use it as a record for tracing the conditions later, and when splitting an evaluation by defect type.

Where it fits

It doesn’t judge OK/NG.
It prepares the data.

TOMOMI RESEARCH builds inspection in three layers: the sensor, the anomaly detection engine and the inspection systems. E3 Anomaly Synthetic Generator joins the family of the anomaly detection engine E3 ENGINE. It makes no OK/NG decisions; its role is to prepare the evaluation and training data that goes to the anomaly detection engine. It is sold separately from E3 ENGINE and works on its own.

Layer 01 / Sensor

FORESIGHT STEREO®

Takes four outputs from one capture: LIVE / 2D Texture / 3D Surface / Surface Normal.

Layer 02 / Decision

E3 ENGINE®

An AI anomaly detection engine that learns from good products only and returns one of three verdicts: OK / Human_Check / NG.

Layer 03 / Systems

TR series

Systems that bring the sensor and the decision together in one unit that runs on the floor. From a benchtop observation unit to continuous inspection on a line and robot-mounted inspection.

E3 ENGINE family / Data preparation

E3 Anomaly Synthetic Generator

Good (OK) images

↓

E3 Anomaly Synthetic Generator — synthesis

↓

Synthetic NG images + ground-truth masks — handed over as evaluation and training data (MVTec-compatible)

↓

Anomaly detection engine (E3 ENGINE, or another inspection AI, third-party or your own)

It makes no OK/NG decisions.

It can be used to prepare data for E3 ENGINE. Because the output is MVTec-compatible, it can also go to other inspection AI that reads this format; it is not limited to E3 ENGINE. E3 ENGINE learns from good images only. What this software provides is NG images and ground-truth masks for preparing evaluations. Evaluations for setting thresholds also need examples of real defective parts.

* This software makes no OK/NG decisions. Deciding is the role of inspection AI such as E3 ENGINE.

Specifications

Install it
on a Windows PC.

Install it with the installer, then start by pointing it to a folder of good images and a folder of texture images. It runs on the CPU on a PC without a GPU.

CategorySoftware for generating synthetic NG data (Windows desktop application)
OSWindows 11 (64-bit)
GPURecommended: an NVIDIA GPU with 6 GB or more of VRAM (such as RTX 3060 Laptop). Runs on the CPU if no GPU is available
Processor and memoryIntel or AMD CPU / 8 GB or more of memory
Free disk space7 GB or more
InstallationInstaller
LicensingOne licence per PC, perpetual (one-time purchase), first-year maintenance included. Annual maintenance from the second year
Licence activationAn internet connection is required at startup. The licence is tied to one PC
InputA folder of good (OK) images / a folder of texture images (subfolders are read too)
Input image formatsCommon image formats such as PNG, JPEG, TIFF and BMP
Synthesis methodsPerlin (blotches and stains) / defect type (Scratch, Dent, Foreign matter, Chip, Spot, Lump; count, length and width set in pixels)
Placement areaMask editor (automatic extraction of the product outline / box), or a mask image file (one shared by all images / matched per image from a folder). The outline can be extracted again for each good image
OutputSynthetic NG images / ground-truth masks (binary PNG, 0 and 255) / copies of the original images / run.json
Folder structureMVTec-compatible (train/good / test/synthetic / ground_truth/synthetic)
ResolutionSame as the original good image
Greyscale output8-bit, single-channel PNG (the same format as FORESIGHT STEREO 2D Texture / 3D Surface images)
Images generated1–200 per good image
PreviewSingle-sample preview / live preview as settings change / progress display during batch generation
ReproducibilitySpecify a seed to recreate the same image. The generation settings, and for each image the source image, texture, seed and defect type, are recorded in run.json
TexturesA texture set created by TOMOMI RESEARCH is included. Your own images can also be used. DTD is not bundled; we tell you where to obtain it (its terms of use are set by the distributor)
User interface languageEnglish
Japanese folder and file namesSupported
NetworkRequired for licence activation at startup. The first time automatic outline extraction is used, the required data is downloaded
Free trial14 days, no feature limits, not for commercial use

* This software creates image data for evaluation and training. It makes no OK/NG decisions.

* Defects synthesised with this software are not the same as real defective parts. Using synthetic NG images does not guarantee the detection rate or accuracy of any inspection AI, and does not replace verification with real defective parts.

* Automatic outline extraction runs faster on a GPU.

* An internet connection is required for licence activation each time the software starts. The first time automatic outline extraction is used, the required data is downloaded.

Licensing

The licence
and its terms.

One licence per PC. It is perpetual (a one-time purchase), and the first year of maintenance is included. From the second year, maintenance is an annual contract. We send a quote on request.

Standard licence One licence (one PC), perpetual (one-time purchase), first-year maintenance included
Annual maintenance From the second year. One major update and one minor update per year, plus technical support
Academic licence For universities and public research institutions, non-commercial use. One licence (one PC), perpetual (one-time purchase), first-year maintenance included. Annual maintenance from the second year
Quotation On request. Tell us the number of licences and the intended use

* The licence is tied to the PC on which the software is first started. To use it on another PC, ask us to issue a new key or to release the link.

* Annual maintenance (including first-year maintenance) covers one major update and one minor update per year, plus technical support.

From trial to purchase

From request
to purchase.

The trial has the same features as the full version and can be used for 14 days. It is not for commercial use. Check whether the defects and ground-truth masks you have in mind can be created from your own good images before you decide.

Step 01

Request the trial

Through our contact page. Under “What this is about”, choose “A free trial of E3 Anomaly Synthetic Generator (software)”.

Step 02

Receive an email

Within 2 business days of your request, we email you a licence file (license.lic) and a link to download the installer.

Step 03

Install it

Select license.lic during installation. An internet connection is required at startup.

Step 04

Try it for 14 days

No feature limits. Not for commercial use.

Step 05

Request a quote

Through our contact page. Tell us the number of licences and the intended use.

Step 06

Purchase

After you place your order, we email you the product licence (license.lic).

* The download link is sent by email only (it is not posted on this page).

Free trial: 14 days, no feature limits, not for commercial use

Get started

First, try it
on your own good images.

Rather than reading about it, the quickest way to judge this software is to put in your own good images and see whether the defects and ground-truth masks you have in mind come out. The trial runs for 14 days, with no feature limits, and is not for commercial use. If you already know how many licences you need and what for, ask for a quote at the same time.

Free trial: 14 days, no feature limits, not for commercial use