進化的アルゴリズムを用いた 画像処理に ... · 進化的アルゴリズムとは?...

24
進化的アルゴリズムを用いた 画像処理による 外観品質検査の自動化技術 研究者:山口大学 大学院理工学研究科 環境共生系専攻 准教授 河村 圭 1

Upload: others

Post on 03-Feb-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

進化的アルゴリズムを用いた画像処理による

外観品質検査の自動化技術

研究者:山口大学 大学院理工学研究科環境共生系専攻

准教授 河村 圭

1

2

スケッチ,計測

分類 評点1 評点2

評点3 評点4 評点5

研究背景

目視外観検査

研究目的

3

本技術は、目視外観検査に代わる新しい自

動検査手法を構築するものである。

自動化における問題点画像処理の自動化では、処理手順の選択や

それに伴う多数のパラメータの組合わせ調整が必要であるが、本技術では自動的に最適化できる。

4朱書き部分は,本技術の展開分野により検討が必要である.

本技術の全体像 データマイニング(有効な画像処理パラメータの分析)

未知の原画像

撮影,画像の取り込み

データベース

画像特徴量データ

最適な画像処理

パラメータ

類似画像に対応するデータベース内の画像処理

パラメータにより画像処理を行う

注目部分を抽出・分類

画像特徴量の抽出 類似画像の検索

既知の原画像

撮影,画像の取り込み

終了世代に達したか

目標画像

Yes

No

画像特徴量の抽出

画像特徴量と対応する最適な画像処理パラメータをデータベースとして保存

遺伝子に従って画像処理

得られた解候補と目的画像との比較

進化的アルゴリズム(既知画像に対する画像処理パラメータの最適化)

セミオートマチック処理(未知画像の処理)

自動化における問題点の解決!

5

ノイズ部分も含まれている検査対象画像に対して、進化的アルゴリズムにより、注目部分(検査対象欠陥)を自動的に抽出・分類する手法を効率的に構築する。

進化的アルゴリズム

進化的アルゴリズムとは?

6

代表手法:遺伝的アルゴリズム

与えられた問題の解候補を遺伝子により表現し、生物の進化の過程をシミュレート(模倣)することにより、最適化を図る手法である。基本的な考え方としては、交叉と自然淘汰を繰り返すことにより、より優秀なアルゴリズムを導き出す。

適用事例

7

コンクリート表面を撮影した画像からひび割れを自動抽出

直接閾値指定判別分析法

ラプラシアン・ヒストグラム法微分ヒストグラム法

動的閾値決定法 移動平均法

2値化処理

固定閾値決定法

面積円形度複雑度

継ぎ目除去

ラベリング

膨張収縮

孤立点除去

細線化

孤立穴除去輪郭線抽出

2値画像処理

反転

濃度変換

明るさ補正 加重平均フィルタコントラスト補正 メディアンフィルタグレースケール エッジ保存フィルタカラーバランス 鮮鋭化フィルタ

階調反転 移動差分フィルタ拡張鮮鋭化フィルタRobertsフィルタPrewittフィルタSobelフィルタ

ラプラシアンフィルタ

エッジ強調

前処理

平滑化

フィルタリング

多くの手法がある!

8

ひび割れ抽出の画像処理手順

(入力) 前処理 2値化処理 2値画像処理 (出力)

画像の特徴ごとに処理手法、パラメータは異なる。

全ての処理を試すには膨大な時間を要する。

効率よく最適解を求める必要がある。

進化的アルゴリズムの適用

組み合わせ最適化問題組み合わせ最適化問題

9

ひび割れ自動抽出の問題点

11 11 00 00 00 11 00 11 00 00 11 00 11 11 11 11 11 00 00 00 00 00 00 11 00

個体(染色体)

コントラスト +20

0 0 0 1 0 1 0 0

鮮明化フィルタ(使用)

1

メディアンフィルタ(使用)

1

遺伝子が処理手法とパラメータを表す 10

遺伝子による画像処理手順の表現

~ コーディング: 解候補の遺伝子(2進数)表現 ~

遺伝子

11 00 00 00 00 00 11 11 11 00 11 00 00 00 11 00 11 11 00 00 00 11 11 00 00

00 11 00 00 11 00 11 00 11 00 00 00 00 11 11 00 00 11 00 00 11 11 11 11 11

00 00 00 11 11 00 11 11 11 11 00 00 11 11 11 00 11 11 00 11 11 11 00 00 00

・・・原画像

個体1による画像処理

個体2による画像処理

個体Nによる画像処理

出力画像

・・・

11

各個体による画像処理(例)

目標画像 出力画像

Back

Crack Noise

Loss

:ひび割れの画素数

:抽出できていないひび割れの画素数

Crack

LossNoise :ノイズの画素数

Back :背景の画素数

12

処理された画像(個体)の評価方法

比較

LossとNoise の値をもとに得点化する!(例えば,0~100点)

出力画像の評価?

② 遺伝子に従っ

て画像処理

選択・淘汰

突然変異

交叉

④ 遺伝子操作

解候補

原画像 目標画像

11 00 11 00 00 00 11 11 00 11 00 11 00 00 11 00 11 00 11 00 00 11 11 00 11

画像処理手法とパラメータを遺伝子で

表現 ③ 個体の評価

(目標画像と比較)

input input① ①

13

個体(遺伝子)の最適化

14

Noise ratio (%)

Loss

ratio

(%)

解探索の例

原画像

探索点

通常のPCで,20h程度.

探索の時間?

← 有効と思われる画像処理の組合せは,探索されている!

原画像 目標画像提案手法の

結果人間による手作業

97.4 88.5

97.9 86.3

97.4 94.715

手作業による結果との比較

人間の思考錯誤による結果.結果が最適か?判断できない.

原画像目標画像

遺伝子に沿って画像処理

選択・淘汰

突然変異

交叉 NoYes

データベース

遺伝子操作

最適化処理

原画像の特徴量を保存

A:○○○

B:×××

C:△△△

11 00 11 00 00 00 11 11 00 11 00 11 00 00 11 00 11 00 11 00 00 11 11 00 11

準最適な画像処理パラメータを保存

終了世代に達したか?

解候補

個体の評価

(目標画像と比較)

原画像目標画像

遺伝子に沿って画像処理

選択・淘汰

突然変異

交叉 NoYes

データベース

遺伝子操作

最適化処理

原画像の特徴量を保存

A:○○○

B:×××

C:△△△

A:○○○

B:×××

C:△△△

11 00 11 00 00 00 11 11 00 11 00 11 00 00 11 00 11 00 11 00 00 11 11 00 11

準最適な画像処理パラメータを保存

11 00 11 00 00 00 11 11 00 11 00 11 00 00 11 00 11 00 11 00 00 11 11 00 11

準最適な画像処理パラメータを保存

終了世代に達したか?

解候補

個体の評価

(目標画像と比較)

16

探索点のデータベースへの保存

前処理1 前処理2 前処理3 前処理4 前処理5移動差分フィルタ Prewittフィルタ 加重平均フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ 加重平均フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ 加重平均フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ 加重平均フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ 加重平均フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ コントラスト+30 シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ エッジ保存フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ コントラスト+30 シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ 加重平均フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ 加重平均フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ エッジ保存フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ エッジ保存フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ 加重平均フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ エッジ保存フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ コントラスト+30 シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ コントラスト+30 シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ コントラスト+30 シェーディング補正Ⅱ エッジ保存フィルタコントラスト+30 何もしない Sobelフィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ 加重平均フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ エッジ保存フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ コントラスト+30 シェーディング補正Ⅱ エッジ保存フィルタコントラスト+30 何もしない Sobelフィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ コントラスト+30 シェーディング補正Ⅱ エッジ保存フィルタ

何もしない コントラスト-20 コントラスト+30 移動差分フィルタ エッジ保存フィルタコントラスト+30 何もしない Sobelフィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ 加重平均フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ 加重平均フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ コントラスト+30 シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ 加重平均フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ コントラスト+30 シェーディング補正Ⅱ エッジ保存フィルタ

何もしない コントラスト-20 何もしない 移動差分フィルタ エッジ保存フィルタ何もしない コントラスト-20 何もしない 移動差分フィルタ エッジ保存フィルタ

移動差分フィルタ Prewittフィルタ コントラスト+30 シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ エッジ保存フィルタ シェーディング補正Ⅱ エッジ保存フィルタ

何もしない コントラスト-20 何もしない 移動差分フィルタ エッジ保存フィルタ移動差分フィルタ 何もしない シェーディング補正Ⅱ エッジ保存フィルタ シェーディング補正Ⅱコントラスト+30 コントラスト-20 メディアンフィルタ(3×3) シェーディング補正Ⅰ シェーディング補正Ⅱ移動差分フィルタ 何もしない シェーディング補正Ⅱ エッジ保存フィルタ シェーディング補正Ⅱコントラスト+30 何もしない Sobelフィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ コントラスト+30 シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ メディアンフィルタ(3×3) シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ 加重平均フィルタ シェーディング補正Ⅱ エッジ保存フィルタコントラスト+30 何もしない Sobelフィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ 加重平均フィルタ シェーディング補正Ⅱ エッジ保存フィルタ

2値化方法 閾値1 閾値2_1 閾値2_2 閾値2_3 彩度の閾値消去面積 Fitness可変閾値 - 15 39 -1 28 140 0.972可変閾値 - 15 38 -1 28 140 0.972可変閾値 - 15 39 0 28 140 0.971可変閾値 - 15 38 0 28 140 0.970可変閾値 - 15 39 -1 28 50 0.969可変閾値 - 15 39 -1 28 140 0.969可変閾値 - 15 38 -1 28 50 0.969可変閾値 - 15 38 -1 28 140 0.968可変閾値 - 15 38 -1 28 50 0.968可変閾値 - 15 39 0 28 50 0.968可変閾値 - 15 39 -1 28 60 0.968可変閾値 - 15 39 -1 28 50 0.968可変閾値 - 15 38 -6 28 50 0.967可変閾値 - 15 36 -1 28 60 0.967可変閾値 - 15 39 0 28 50 0.966可変閾値 - 15 39 -1 28 50 0.966可変閾値 - 15 39 -1 28 50 0.966可変閾値 - 15 23 0 28 180 0.966可変閾値 - 15 36 -1 28 60 0.966可変閾値 - 15 36 0 28 50 0.966可変閾値 - 15 38 -1 28 50 0.966可変閾値 - 15 23 -1 44 180 0.965可変閾値 - 15 38 0 28 50 0.965可変閾値 - 15 13 0 60 180 0.965可変閾値 - 15 22 -1 44 180 0.965可変閾値 - 15 36 0 28 50 0.965可変閾値 - 15 36 0 28 50 0.965可変閾値 - 15 36 -1 28 60 0.965可変閾値 - 15 38 -1 28 40 0.964可変閾値 - 15 36 0 28 50 0.964可変閾値 - 15 10 0 60 180 0.963可変閾値 - 15 10 0 60 200 0.963可変閾値 - 19 36 -1 28 60 0.963可変閾値 - 19 36 -1 28 60 0.963可変閾値 - 15 9 0 60 200 0.963可変閾値 - 19 29 0 28 10 0.962可変閾値 - 19 26 0 36 70 0.962可変閾値 - 19 28 0 28 10 0.962可変閾値 - 15 23 -2 44 180 0.962可変閾値 - 19 36 0 28 50 0.962可変閾値 - 19 36 -1 28 60 0.961可変閾値 - 19 36 -1 28 60 0.961可変閾値 - 19 23 -1 44 180 0.961可変閾値 - 15 43 0 28 50 0.960

評価結果

17

データベース内の例

膨大な量の画像処理実験結果の蓄積

試された処理手順

(データマイニング)

(1)「良好な遺伝子」と「その他の遺伝子」の発見!(有効な画像処理手法や組合せの発見)

(2)特化 or 汎用遺伝子の発見!(「ある特定の画像に効く」or「全画像に効く」?)

18

データベース内の処理結果表分析

前処理1 前処理2 前処理3 前処理4 前処理5移動差分フィルタ Prewittフィルタ 加重平均フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ 加重平均フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ 加重平均フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ 加重平均フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ 加重平均フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ コントラスト+30 シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ エッジ保存フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ コントラスト+30 シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ 加重平均フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ 加重平均フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ エッジ保存フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ エッジ保存フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ 加重平均フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ エッジ保存フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ コントラスト+30 シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ コントラスト+30 シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ コントラスト+30 シェーディング補正Ⅱ エッジ保存フィルタコントラスト+30 何もしない Sobelフィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ 加重平均フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ エッジ保存フィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ コントラスト+30 シェーディング補正Ⅱ エッジ保存フィルタコントラスト+30 何もしない Sobelフィルタ シェーディング補正Ⅱ エッジ保存フィルタ移動差分フィルタ Prewittフィルタ コントラスト+30 シェーディング補正Ⅱ エッジ保存フィルタ

何もしない コントラスト-20 コントラスト+30 移動差分フィルタ エッジ保存フィルタコントラスト+30 何もしない Sobelフィルタ シェーディング補正Ⅱ エッジ保存フィルタ

デ グ ジ

2値化方法 閾値1 閾値2_1 閾値2_2 閾値2_3 彩度の閾値消去面積 Fitness可変閾値 - 15 39 -1 28 140 0.972可変閾値 - 15 38 -1 28 140 0.972可変閾値 - 15 39 0 28 140 0.971可変閾値 - 15 38 0 28 140 0.970可変閾値 - 15 39 -1 28 50 0.969可変閾値 - 15 39 -1 28 140 0.969可変閾値 - 15 38 -1 28 50 0.969可変閾値 - 15 38 -1 28 140 0.968可変閾値 - 15 38 -1 28 50 0.968可変閾値 - 15 39 0 28 50 0.968可変閾値 - 15 39 -1 28 60 0.968可変閾値 - 15 39 -1 28 50 0.968可変閾値 - 15 38 -6 28 50 0.967可変閾値 - 15 36 -1 28 60 0.967可変閾値 - 15 39 0 28 50 0.966可変閾値 - 15 39 -1 28 50 0.966可変閾値 - 15 39 -1 28 50 0.966可変閾値 - 15 23 0 28 180 0.966可変閾値 - 15 36 -1 28 60 0.966可変閾値 - 15 36 0 28 50 0.966可変閾値 - 15 38 -1 28 50 0.966可変閾値 - 15 23 -1 44 180 0.965可変閾値 - 15 38 0 28 50 0.965可変閾値 - 15 13 0 60 180 0.965可変閾値 - 15 22 -1 44 180 0.965

どの処理が?

19

どの組み合わせが?

高い評価値を出しているのか?

どの値の範囲が?

傾向や相関関係を知る!

データマイニングとは?

多量のデータの中から価値ある情報(新しい知識やルール)を抽出する。

代表手法:決定木,K-means法

20

未知の原画像へのセミオートマチック処理

適応度の設定ボタン

高低

適応度の設定ボタン

選択初期個体

を残して再発生チェックボックス

カーソル

左のオプションボタンを選択す

ることで、画像処理の内容やGAの設定などが表示される

赤い枠が付いた画像を残す

個体の評価

対話型遺伝的アルゴリズムを利用した画像処理プロトタイプシステムを開発済み

新技術の特徴(1)

21

(1) 熟練(画像処理の知識・ノウハウ)を要せずに注目部分(検査対象欠陥)の自動抽出・分類手法が提案できる。

(2) 画像処理条件最適化の際の試行錯誤的な手順が不要となり、大幅な時間短縮が期待できる。

(3) 注目部分の抽出・分類に有効な手法(組合せ)が特定できる。ブラックボックスにならない。

新技術の特徴(2)

22

(4)これまでに以下の分野のプロトタイププログラムを完成しており、利用可能。

① コンクリート表面からのひび割れ抽出(注目部分の抽出)

② 橋梁等での耐候性鋼材のさび外観評価さび状況の分類

(パターン認識)

想定されるユーザ

23

画像処理による外観品質検査の自動化・高精度化を検討している企業。→共同開発可能

新規にプログラムを開発する際の考慮点

① 遺伝子表現(コーディング)方法。

② 個体評価方法。

③ 入力画像が多様になった場合は,データベース内の類似画像の検索方法を検討する必要がある。

本技術に関する知的財産権• 発明の名称:画像処理による注目部分を自動抽出する方法

及びそのための装置並びにプログラムを記録した記録媒体• 出願番号 :特願2005-291071• 出願人 :国立大学法人山口大学• 発明者 :河村 圭

24

• 発明の名称:画像処理により対象物の表面状態を検査する方法及びそのための画像処理プログラム

• 出願番号 :特願2006-254418• 出願人 :国立大学法人山口大学• 発明者 :宮本文穂 後藤悟史

お問い合わせ先

山口大学 産学公連携・イノベーション推進機構電話 0836-85-9961 FAX 0836-85-9962e-mail [email protected]担当 産学連携コーディネーター 森 健太郎