E3 Anomaly Synthetic Generator / Synthetic anomaly data for inspection AI

不良品を、
待たない。
良品から、つくる。

E3 Anomaly Synthetic Generator は、良品(OK)の画像とテクスチャ画像から、本ソフトで合成した欠陥を含むNG画像と、欠陥の場所を画素単位で示す正解マスクを対でつくる Windows 用ソフトウェアです。書き出しは MVTec 互換のフォルダ構成。不良品が揃うのを待たずに、検査AIの評価・学習に使うデータを用意できます。

無料評価版:14日間・機能制限なし・商用利用不可

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

操作画面。左から元画像・合成NG・マスクのプレビュー。元画像の緑の線は、欠陥を置いてよい範囲。欠陥は本ソフトで合成したもの。

元画像: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 ― TOMOMI RESEARCH が E3 Anomaly Synthetic Generator で合成した欠陥を加えて改変。

What it does

同じ画像に、
欠陥だけを足す。

左が元の良品画像、右が本ソフトで合成したNG画像です。画素の値が変わるのは、欠陥と、そのすぐ周りのなじませた縁だけ。それより外は元画像のまま残ります(※1)。

合成NG画像。エナメル線の良品画像と同じ位置に、本ソフトで合成した白っぽい線状の欠陥が1本、右下がりの弧を描いて入っている。実際の不良品を撮影した画像ではない。
元の良品画像(OK)。自社で撮像したエナメル線の表面で、透明な被膜の下に撚った銅線の筋が横に走っている。欠陥は入っていない。
元画像(OK) 合成NG

ドラッグして比べる

エナメル線の表面に、線状の欠陥を本ソフトで合成した例。

※ 右の欠陥は本ソフトで合成したものです。実際の不良品を撮影した画像ではありません。

※ 掲載例は、当社が広報用に生成した 3,600 枚から、欠陥がはっきり見え、製品の上に乗っているものを選んでいます。また、欠陥が見えやすいよう、合成の設定をアプリの既定値から変えて生成しています。

※1 元画像と同じ色形式で書き出した場合です。カラー画像をグレースケールで書き出すと、画像全体が輝度(明るさ)に変換されます。なじませた縁(正解マスクの縁から数画素)は、正解マスクには含まれません。

※ 合成NG画像を使ったときの検査AIの検出率・精度を保証するものではありません。

The problem

不良品は、
待っても揃わない。

検査AIがどこまで見つけられるかを確かめるには、不良の例と、その場所を示す正解が要ります。良品だけで学習できる方式でも、評価には不良の例が要ります。ところが不良は、欲しいときに、欲しい種類で出てくるものではありません。

量産前は、不良がまだ無い

評価を組みたいのは立ち上げの時期なのに、評価に使う不良品はまだ出ていない。出るのを待つあいだ、評価は組めない。

出る不良は、種類が偏る

不良はまれにしか出ず、出るものは同じ種類に偏る。見つけてほしい欠陥の一覧と、手元にある不良品の一覧は、一致するとは限らない。

正解マスクは、人が1枚ずつ塗る

どこが欠陥かを画素単位で示すマスクは、画像を拡大して人が塗る。画像の枚数だけ、その手間が積み上がる。

The answer

見てほしい欠陥を、
先に用意する。

E3 Anomaly Synthetic Generator は、手元の良品画像に欠陥を合成し、その欠陥の場所を示す正解マスクを同時に書き出します。確かめたい欠陥の種類と大きさを決めて、評価・学習に使うデータを、不良品が揃うのを待たずにつくれます。

不良品を待つ

不良品が出る — 出るまで待つ

↓

集める — 種類は選べない

↓

撮る

↓

正解マスクを手で塗る — 1枚ずつ

↓

評価・学習データ

不良品が揃うまで、評価が始まらない。

E3 Anomaly Synthetic Generator

良品画像 + テクスチャ画像

↓

欠陥の種類と、置いてよい範囲を決める

↓

合成NG画像 + 正解マスク — 対で書き出す

↓

評価・学習データ(MVTec 互換)

欠陥の種類と大きさを、こちらで決められる。

※ 合成NG画像は、実際の不良品による確認を置き換えるものではありません。実際の不良品が手に入ったら、それによる確認もあわせて行ってください。

What you get

合成NG画像と、
正解マスクを、対で。

良品画像1枚から、合成NG画像と、欠陥の場所を示す二値の正解マスクが、同じ番号で対になって書き出されます。出力の解像度は、元の良品画像のままです。

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

手元の良品画像。

入力した良品画像。書き出し先の train/good にコピーされる。

02 合成NG。01 と同じ画像の中央に、本ソフトで合成した白っぽい線状の欠陥が1本入っている。実際の不良品を撮影した画像ではない。
02 / 合成NG

欠陥を合成した画像。

欠陥とそのなじませた縁の外は、元画像のまま(※1)。test/synthetic に保存される。

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

欠陥の場所を、画素単位で。

欠陥=白(255)、それ以外=黒(0)の二値 PNG。ground_truth/synthetic に保存される。

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

合わせて見ると、こうなる。

合成NG画像に正解マスクを重ねて、欠陥とマスクの位置が一致することを示した図。

※ 02〜04 の欠陥は本ソフトで合成したものです。実際の不良品を撮影した画像ではありません。

※ 04 の重ね表示は説明のために作成した図で、本ソフトの出力ファイルには含まれません。

※1 元画像と同じ色形式で書き出した場合です。正解マスクの縁のすぐ外側(数画素)には、欠陥をなじませるための薄い変化が含まれます。

※ 01〜04 は同じ1回の合成の同じ位置を、表示用に切り出したもの。04 の青い線は正解マスクの縁の外側に引いた目印。

MVTec 互換のフォルダ構成

書き出しは MVTec 互換のフォルダ構成です。MVTec 互換=異常検知の公開データセット MVTec AD と同じフォルダの並び。この形式を読む検査AIに、そのまま学習・評価用として渡せます。

<書き出し先>/<クラス名>/

├── train/good/ 良品画像(コピー)

├── test/synthetic/ 合成NG画像

├── ground_truth/synthetic/ 正解マスク(0/255)

└── run.json 生成条件と、1枚ごとの記録

Key features

欠陥の種類と、
置いてよい範囲を、決める。

欠陥の形は2つの方式から、欠陥を置いてよい範囲は3つの方法から選びます。範囲の中のどこに置くかは、本ソフトがランダムに決めます。書き出す前に、1枚プレビューと、設定を変えるとすぐ反映されるライブプレビューで仕上がりを確かめられます。

Perlin 方式で欠陥を合成した小型ポンプの画像。コイルを透明な被膜が覆った部品の下寄りに、本ソフトで合成したオレンジ色のまとまった斑状の欠陥が入っている。実際の不良品を撮影した画像ではない。
Mode 01 / Perlin

まとまった、斑・しみ。

Perlin ノイズでつくった領域にテクスチャを混ぜる。

欠陥タイプ方式で欠陥を合成した小型ポンプの画像。黒い枠の左下の角に、本ソフトで合成した白っぽい線状の欠陥が1本入っている。実際の不良品を撮影した画像ではない。
Mode 02 / 欠陥タイプ

形と大きさを、決める。

6種類から選び、個数・長さ・幅をピクセル単位で指定する。この例は線状。

線状の欠陥を合成したエナメル線の画像。線の中ほどを横切って、黒っぽい細い線が縦に1本入っている。実際の不良品を撮影した画像ではない。
Type 01 / 線状
打痕の欠陥を合成したエナメル線の画像。中央に、茶色い円形の欠陥が1つ入っている。実際の不良品を撮影した画像ではない。
Type 02 / 打痕
異物の欠陥を合成したエナメル線の画像。線の右寄りに、灰色の小さな塊が1つ付着したように入っている。実際の不良品を撮影した画像ではない。
Type 03 / 異物
カケの欠陥を合成したエナメル線の画像。線の下の縁に、暗い色の欠けた形が1つ入っている。実際の不良品を撮影した画像ではない。
Type 04 / カケ

画像はすべて本ソフトで合成した欠陥です。欠陥タイプは6種類(線状・打痕・異物・カケ・点状・塊状)で、本ページには4種類の例を載せています。

01 / 2つの合成方式

斑をつくるか、形を決めるか。

Perlin 方式は、なめらかに揺らぐ乱数の模様(Perlin ノイズ)でつくった領域にテクスチャを混ぜ、まとまった斑・しみ状の欠陥をつくります。欠陥タイプ方式は、6種類から選び、個数・長さ・幅をピクセル単位で指定します。

― 線状

― 打痕

― 異物

― カケ

― 点状

― 塊状

テクスチャ=欠陥の見た目の素材になる画像。当社で作成したテクスチャ集を同梱しています。手持ちの不良写真なども、テクスチャとして使えます。

02 / 欠陥を置いてよい範囲

範囲を、製品の上に限る。

マスクエディタで製品を囲むだけで、製品の輪郭が自動で切り出され、その内側が欠陥を置いてよい範囲になります。矩形(Box)で囲む方法と、マスク画像ファイルで指定する方法もあります。製品の位置が画像ごとにずれる場合は、良品画像ごとに切り出し直せます。

― 輪郭の自動切り出し

― 矩形(Box)

― マスク画像ファイル(全画像に共通の1枚/画像ごと)

※ 指定できるのは置いてよい範囲で、欠陥の位置そのものは指定できません。Perlin 方式では、欠陥が範囲の縁から数画素はみ出すことがあります。

03 / 元画像の画質を保つ

欠陥とその縁の外は、元画像のまま。

出力は元の良品画像の解像度のまま。欠陥とそのすぐ周りのなじませた縁を除き、画素は元画像とビット単位で一致します(画素の値が1つも変わらない)。グレースケールの書き出しは 8bit・1チャンネルの PNG で、FORESIGHT STEREO の 2D Texture/3D Surface 画像と同じ形式です。

※ ビット単位の一致は、元画像と同じ色形式で書き出した場合です。正解マスクは欠陥の濃さが一定以上の画素を示すため、マスクの縁のすぐ外側(数画素)には、欠陥をなじませるための薄い変化が含まれます。

04 / 作り直せる

同じ画像を、もう一度つくれる。

シード(乱数の種)を指定すると、同じ条件から同じ画像を作り直せます。生成条件と、1枚ごとの元画像・テクスチャ・シード・欠陥の種類は run.json に記録されます。あとから条件をたどる記録として、また欠陥の種類ごとに評価を分けるときにも使えます。

Where it fits

判定はしない。
判定に渡すデータをつくる。

TOMOMI RESEARCH の検査は、センサ・判定エンジン・装置の3層で組み立てます。E3 Anomaly Synthetic Generator は、判定エンジン E3 ENGINE のファミリーに加わるソフトウェアです。良否の判定は行わず、判定エンジンに渡す評価・学習データの準備を受け持ちます。E3 ENGINE とは別売りで、単体でも使えます。

Layer 01 / センサ

FORESIGHT STEREO®

1回の撮像から Live/2D Texture/3D Surface/Surface Normal の4つの出力を取り出す。

Layer 02 / 判定

E3 ENGINE®

良品だけで学習し、OK/Human_Check/NG の3値で返す AI 異常検知エンジン。

Layer 03 / 装置

TR シリーズ

センサと判定を、現場で動く1台にまとめた装置。卓上の観察機から、ライン上の連続検査機、ロボット搭載機まで。

E3 ENGINE ファミリー / データ準備

E3 Anomaly Synthetic Generator

良品(OK)画像

↓

E3 Anomaly Synthetic Generator — 合成

↓

合成NG画像 + 正解マスク — 評価・学習データ(MVTec 互換)を渡す

↓

判定エンジン(E3 ENGINE、または他社・自社の検査AI)

良否判定はしません。

E3 ENGINE のデータ準備に使えます。出力は MVTec 互換なので、この形式を読む他の検査AIにも渡せます。E3 ENGINE 専用ではありません。E3 ENGINE は良品だけで学習します。本ソフトが用意するのは、評価の準備に使うNG画像と正解マスクです。しきい値を決める評価には、実際の不良品の例も要ります。

※ 本ソフトは良否の判定を行いません。判定は E3 ENGINE などの検査AIの役割です。

Specifications

Windows の PC に、
インストールして使う。

インストーラから入れて、良品画像とテクスチャ画像のフォルダを指定するところから始められます。GPU が無い PC でも CPU で動作します。

製品区分合成NGデータ生成ソフトウェア(Windows デスクトップアプリ)
対応 OSWindows 11(64ビット)
GPU推奨:VRAM 6GB 以上の NVIDIA GPU(RTX 3060 Laptop など)。GPU が無い場合は CPU で動作
プロセッサ・メモリIntel または AMD の CPU/メモリ 8GB 以上
ディスク空き容量7GB 以上
インストールインストーラ形式
ライセンスPC 1台につき1ライセンス・買い切り(永続)・初年度の保守を含む。2年目以降は年間保守
ライセンス認証起動時にインターネット接続が必要。ライセンスは PC 1台に紐付く
入力良品(OK)画像のフォルダ/テクスチャ画像のフォルダ(サブフォルダも読み込む)
入力画像の形式PNG・JPEG・TIFF・BMP など一般的な画像形式
合成方式Perlin(斑・しみ状)/欠陥タイプ(線状・打痕・異物・カケ・点状・塊状。個数・長さ・幅をピクセル単位で指定)
欠陥を置く範囲マスクエディタ(製品の輪郭の自動切り出し/矩形 Box)、またはマスク画像ファイル(全画像に共通の1枚/フォルダで画像ごとに照合)。良品画像ごとの切り出し直しに対応
出力合成NG画像/正解マスク(二値 0・255 の PNG)/元画像のコピー/run.json
フォルダ構成MVTec 互換(train/good / test/synthetic / ground_truth/synthetic)
解像度元の良品画像の解像度のまま
グレースケール出力8bit・1チャンネル PNG(FORESIGHT STEREO の 2D Texture/3D Surface 画像と同じ形式)
生成枚数良品画像1枚あたり 1〜200枚
プレビュー1枚プレビュー/設定変更のライブプレビュー/バッチ生成中の進捗表示
再現性シード指定で同じ画像を作り直せる。生成条件と1枚ごとの元画像・テクスチャ・シード・欠陥の種類を run.json に記録
テクスチャ当社作成のテクスチャ集を同梱。手持ちの画像も使える。DTD は同梱せず入手先を案内(利用条件は配布元に従う)
表示言語英語
日本語のフォルダ名・ファイル名対応
ネットワーク起動時のライセンス認証に必要。輪郭の自動切り出しを初めて使うときに、必要なデータを追加で取得
無料評価版14日間・機能制限なし・商用利用不可

※ 本ソフトは、評価・学習に使う画像データをつくるソフトウェアです。良否の判定は行いません。

※ 本ソフトで合成した欠陥は、実際の不良品と同じものではありません。合成NG画像を使ったときの検査AIの検出率・精度を保証するものではなく、実際の不良品による確認を置き換えるものでもありません。

※ 輪郭の自動切り出しは、GPU を使うほうが速く動作します。

※ 起動のたびにライセンス認証のためインターネット接続が必要です。輪郭の自動切り出しを初めて使うときは、必要なデータを追加で取得します。

Pricing

価格と、
ライセンスの条件。

ライセンスは PC 1台につき1つ。買い切り(永続)で、初年度の保守は価格に含まれます。2年目以降の保守は年間契約です。表示価格はすべて税抜です。

標準価格 398,000円(税抜)
1ライセンス(PC 1台)・買い切り(永続)・初年度の保守を含む
発売記念価格 298,000円(税抜)
最初の5ライセンスまで。1ライセンス(PC 1台)・買い切り(永続)・初年度の保守を含む
年間保守 60,000円/年(税抜)
2年目以降。年1回のメジャーアップデートと年1回のマイナーアップデート、技術サポートを提供
アカデミック 148,000円(税抜)
大学・公的研究機関、非商用。1ライセンス(PC 1台)・買い切り(永続)・初年度の保守を含む。2年目以降は年間保守

※ 発売記念価格は、最初の5ライセンスまでです。適用できるかは見積の際にお知らせします。

※ ライセンスは最初に起動した PC に紐付きます。別の PC で使う場合は、新しいキーの発行か紐付けの解除をご依頼ください。

※ 年間保守(初年度の保守を含む)には、年1回のメジャーアップデートと年1回のマイナーアップデート、技術サポートが含まれます。

From trial to purchase

申し込みから、
購入まで。

評価版は製品版と同じ機能で、14日間お使いいただけます。商用利用はできません。お手元の良品画像で、狙った欠陥と正解マスクがつくれるかを確かめてから、ご検討ください。

Step 01

評価版を申し込む

評価版申請ページから。

Step 02

メールを受け取る

ライセンスファイル(license.lic)と、インストーラのダウンロードリンクを、申請から2営業日以内にメールでお送りします。

Step 03

インストールする

インストール中に license.lic を選びます。起動時にインターネット接続が必要です。

Step 04

14日間、試す

機能制限なし。商用利用不可。

Step 05

見積を依頼する

見積依頼フォームから。台数と用途をお知らせください。

Step 06

購入

注文後、製品版ライセンス(license.lic)をメールでお送りします。

※ ダウンロードリンクはメールでのみお送りします(このページには掲載していません)。

無料評価版:14日間・機能制限なし・商用利用不可

社内でのご検討用に、PDF の資料もあります(お申し込みのあと、メールでお送りします):製品カタログ(4 ページ) / 製品チラシ(2 ページ)

Get started

まず、
自分の良品画像で試す。

説明を読むより、手元の良品画像を入れて、狙った欠陥と正解マスクが出るかを見ていただくのが早いソフトウェアです。評価版は14日間・機能制限なし・商用利用不可。導入する台数や用途が決まっていれば、見積もあわせてご依頼ください。

無料評価版:14日間・機能制限なし・商用利用不可