(57)【要約】【課題】  外観検査の画像処理技術おいて画像から検出対象を見つけ出す画像処理を最適化できるシステムの提供。【解決手段】  有閉路を含み得るネットワーク状に複数の機能単位の実行順序を定義する個体情報を記憶する個体群記憶部、検査対象物が表示された検査対象画像を入力する検査対象画像入力部、検査対象物が正しく表示された良品画像を入力する良品画像入力部、個体情報及び良品画像にもとづき検査対象画像を処理し、検査対象画像における検出対象要素の画像、個数、及び位置情報の少なくともいずれかを含む出力情報を生成する画像処理部、出力情報を評価するための検出対象要素の情報を含む教師情報を入力する教師情報入力部と、出力情報と教師情報を比較して評価値を計算し、この評価値にもとづき個体情報を順位付けする評価値計算部、個体情報の順位付け情報にもとづいて、個体情報の選択又は変更を行って、個体群記憶部を更新する遺伝子操作部を備える。【選択図】  図１
2020107009.tif 000002
【特許請求の範囲】
【請求項１】
生物の進化を数学的に模擬した最適化手法である遺伝的操作により、画像から検出対象を検出する画像処理を最適化する画像処理システムであって、
有閉路を含み得るネットワーク状に複数の機能単位の実行順序を定義する一又は二以上の個体情報を記憶する個体群記憶部と、
検査対象物が表示された学習用又は検証用の検査対象画像を入力する検査対象画像入力部と、
検査対象物が正しく表示された良品画像を入力する良品画像入力部と、
前記個体情報及び前記良品画像にもとづいて前記検査対象画像を処理し、前記検査対象画像における検出対象要素の画像、個数、及び位置情報の少なくともいずれかを含む出力情報を生成する画像処理部と、
前記出力情報を評価するための検出対象要素の情報を含む教師情報を入力する教師情報入力部と、
前記出力情報と前記教師情報を比較して評価値を計算し、この評価値にもとづき前記個体情報を順位付けする評価値計算部と、
前記個体情報の順位付け情報にもとづき前記個体情報の選択又は変更を行って、前記個体群記憶部を更新する遺伝子操作部と、を備えた
ことを特徴とする画像処理システム。
【請求項２】
前記画像処理部による処理に、前記検査対象画像における検出対象要素の画像を作成する処理が含まれ、
前記教師情報及び前記出力情報に、前記検査対象画像における検出対象要素の画像が含まれる
ことを特徴とする請求項１記載の画像処理システム。
【請求項３】
前記画像処理部による処理に、前記検査対象画像における検出対象要素を計数する処理が含まれ、
前記教師情報及び前記出力情報に、前記検査対象画像における検出対象要素の個数を示す数値が含まれる
ことを特徴とする請求項１又は２記載の画像処理システム。
【請求項４】
前記画像処理部による処理に、前記検査対象画像における検出対象要素の位置情報を取得する処理が含まれ、
前記教師情報及び前記出力情報が、前記検査対象画像における検出対象要素の位置情報である
ことを特徴とする請求項１〜３のいずれかに記載の画像処理システム。
【請求項５】
前記画像処理部による処理に、前記画像における一定範囲の特徴量を算出する処理、及び前記特徴量にもとづいて前記一定範囲が検出対象要素であるか否かを判定する処理が含まれることを特徴とする請求項１〜４のいずれかに記載の画像処理システム。
【請求項６】
前記遺伝的操作部が、
前記評価値が高い個体情報を次世代に残すエリート保存部と、
前記評価値にもとづいて、一定の確率で個体情報を次世代に残す選択部と、
２つの個体情報の一部を相互に交換する交叉処理部と、
選択された１つの個体情報の一部又は全部をランダムに書き換える突然変異部と、を有する
ことを特徴とする請求項１〜５のいずれかに記載の画像処理システム。
【請求項７】
前記ネットワークが、機能単位と向きが付いたリンクにより構成される有向ネットワークであり、直線構造と木構造を含むことを特徴とする請求項１〜６のいずれかに記載の画像処理システム。
【請求項８】
前記検査対象画像入力部が、検査用の画像を入力し、最も評価値の高い個体情報及び前記良品画像にもとづき前記画像処理部によって前記検査用の画像を処理して得られた処理結果情報を記憶する処理結果記憶部を備えたことを特徴とする請求項１〜７のいずれかに記載の画像処理システム。
【請求項９】
前記検査対象画像入力部が、検査対象物を撮影して得られた画像をリアルタイムで前記検査用の画像として入力し、
前記良品画像入力部が、検査対象物と同一種類の他の検査対象物を撮影して得られた画像をリアルタイムで前記良品画像として入力する
ことを特徴とする請求項８記載の画像処理システム。
【請求項１０】
生物の進化を数学的に模擬した最適化手法である遺伝的操作により、画像から検出対象を検出する画像処理を最適化する画像処理プログラムであって、
コンピュータを、
有閉路を含み得るネットワーク状に複数の機能単位の実行順序を定義する一又は二以上の個体情報を記憶する個体群記憶部、
検査対象物が表示された学習用又は検証用の検査対象画像を入力する検査対象画像入力部、
検査対象物が正しく表示された良品画像を入力する良品画像入力部、
前記個体情報及び前記良品画像にもとづいて前記検査対象画像を処理し、前記検査対象画像における検出対象要素の画像、個数、及び位置情報の少なくともいずれかを含む出力情報を生成する画像処理部、
前記出力情報を評価するための検出対象要素の情報を含む教師情報を入力する教師情報入力部、
前記出力情報と前記教師情報を比較して評価値を計算し、この評価値にもとづき前記個体情報を順位付けする評価値計算部、及び、
前記個体情報の順位付け情報にもとづき前記個体情報の選択又は変更を行って、前記個体群記憶部を更新する遺伝子操作部として機能させる
ことを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、外観検査の画像処理技術に関し、特に画像から検出対象を見つけ出す画像処理を最適化する画像処理システムに関する。
【背景技術】
【０００２】
従来、機械による外観検査の画像処理技術において、検査対象物のみの画像を入力画像として画像処理を行い、得られた出力画像を教師画像と比較することによって、画像処理を最適化する方法が行われている。
一方、人による目視外観検査では、検査対象の製品を正常な製品と比較するだけではなく、人が記憶している良品やラインに流れる前後の製品を検査対象の製品と比較するいわゆる周辺視と呼ばれる手法が用いられており、機械による外観検査の画像処理技術では、人による目視外観検査を再現することはできなかった。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第５４７９９４４号公報
【特許文献２】特許第４８６２１５０号公報
【特許文献３】特許第５０１１５３３号公報
【特許文献４】特開２００８−１５８１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ここで、画像から検出対象を見つけ出す画像処理技術として、特許文献１に記載の方法を挙げることができる。
この方法では、遺伝的プログラミング（ＧＰ）による並列型画像フィルタ自動生成システムにサイズ依存型交叉を導入して、様々なタイプの画像からクラックの抽出用画像フィルタを自動的に構築し、これを用いて損傷レベルの評価が行われている。
【０００５】
また、このようないわゆる進化的計算を用いる技術として、特許文献２〜４に記載の進化的計算システムを挙げることができる。これらの進化的計算システムによれば、それぞれのシステムにおける処理のアルゴリズムの最適化を図ることが可能になっている。
しかしながら、これらの技術においても、検査対象物のみの画像を入力画像として画像処理が行われており、人による目視外観検査のような周辺視を適用可能なものではなかった。
【０００６】
そこで、本発明者らは、機械による外観検査の画像処理技術において、検査対象物の画像だけではなく、良品画像を併せて入力画像として画像処理を行い、得られた出力情報を教師情報と比較することにより画像処理に周辺視を適用し、進化的計算によって画像処理を最適化することを可能とした。
また、進化的計算において、遺伝的ネットワークプログラミング（ＧＮＰ）の手法を採用することにより、最適化の自由度を向上させることを可能にして、本発明を完成させた。
【０００７】
すなわち、本発明は、外観検査の画像処理技術おいて、画像から検出対象要素を見つけ出す画像処理を最適化することが可能な画像処理システム、及び画像処理プログラムの提供を目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明の画像処理システムは、生物の進化を数学的に模擬した最適化手法である遺伝的操作により、画像から検出対象を検出する画像処理を最適化する画像処理システムであって、有閉路を含み得るネットワーク状に複数の機能単位の実行順序を定義する一又は二以上の個体情報を記憶する個体群記憶部と、検査対象物が表示された学習用又は検証用の検査対象画像を入力する検査対象画像入力部と、検査対象物が正しく表示された良品画像を入力する良品画像入力部と、前記個体情報及び前記良品画像にもとづいて前記検査対象画像を処理し、前記検査対象画像における検出対象要素の画像、個数、及び位置情報の少なくともいずれかを含む出力情報を生成する画像処理部と、前記出力情報を評価するための検出対象要素の情報を含む教師情報を入力する教師情報入力部と、前記出力情報と前記教師情報を比較して評価値を計算し、この評価値にもとづき前記個体情報を順位付けする評価値計算部と、前記個体情報の順位付け情報にもとづき前記個体情報の選択又は変更を行って、前記個体群記憶部を更新する遺伝子操作部とを備えた構成としてある。
【０００９】
また、本発明の画像処理プログラムは、生物の進化を数学的に模擬した最適化手法である遺伝的操作により、画像から検出対象を検出する画像処理を最適化する画像処理プログラムであって、コンピュータを、有閉路を含み得るネットワーク状に複数の機能単位の実行順序を定義する一又は二以上の個体情報を記憶する個体群記憶部、検査対象物が表示された学習用又は検証用の検査対象画像を入力する検査対象画像入力部、検査対象物が正しく表示された良品画像を入力する良品画像入力部、前記個体情報及び前記良品画像にもとづいて前記検査対象画像を処理し、前記検査対象画像における検出対象要素の画像、個数、及び位置情報の少なくともいずれかを含む出力情報を生成する画像処理部、前記出力情報を評価するための検出対象要素の情報を含む教師情報を入力する教師情報入力部、前記出力情報と前記教師情報を比較して評価値を計算し、この評価値にもとづき前記個体情報を順位付けする評価値計算部、及び、前記個体情報の順位付け情報にもとづき前記個体情報の選択又は変更を行って、前記個体群記憶部を更新する遺伝子操作部として機能させる構成としてある。
【発明の効果】
【００１０】
本発明によれば、外観検査の画像処理技術おいて、画像から検出対象を見つけ出す画像処理を最適化することが可能な画像処理システム、及び画像処理プログラムの提供が可能となる。
【図面の簡単な説明】
【００１１】
【図１】本発明の第一実施形態の画像処理システム（画像処理装置）の構成を示すブロック図である。
【図２】本発明の第一実施形態の画像処理システムによる処理手順を示すフローチャートである。
【図３】本発明の第一実施形態の画像処理システムによる処理手順における遺伝子操作の処理手順を示すフローチャートである。
【図４】本発明の第四実施形態の画像処理システムの構成を示すブロック図である。
【図５】本発明の第四実施形態の画像処理システムによる処理手順を示すフローチャートである。
【図６】実施例及び参考例で用いたノードの機能（画像処理：ノイズ除去）を示す図である。
【図７】実施例及び参考例で用いたノードの機能（画像処理：輝度補正、組合せ）を示す図である。
【図８】実施例及び参考例で用いたノードの機能（画像処理：２値化）を示す図である。
【図９】実施例及び参考例で用いたノードの機能（画像処理：エッジ検出）を示す図である。
【図１０】実施例及び参考例で用いたノードの機能（画像処理：エッジ検出、周波数フィルタ）を示す図である。
【図１１】実施例及び参考例で用いたノードの機能（画像処理：四則演算、ファジ演算）を示す図である。
【図１２】実施例及び参考例で用いたノードの機能（検出対象判定）を示す図である。
【図１３】試験１における学習とその結果を示す図（No.1-5）である。
【図１４】試験１における学習とその結果を示す図（No.6-10）である。
【図１５】試験１における検証結果を示す図（No.1-5）である。
【図１６】試験１における学習の評価値の遷移を表すグラフを示す図である。
【図１７】試験１における実施例の学習によって得られた個体情報の構造を示す図である。
【図１８】試験１における実施例の学習によって得られた個体情報で用いられたノードの機能を示す図である。
【図１９】試験１における参考例の学習によって得られた個体情報の構造を示す図である。
【図２０】試験１における参考例の学習によって得られた個体情報で用いられたノードの機能を示す図である。
【図２１】試験２における学習とその結果を示す図（No.1-5）である。
【図２２】試験２における学習とその結果を示す図（No.6-10）である。
【図２３】試験２における検証結果を示す図（No.1-5）である。
【図２４】試験２における学習の評価値の遷移を表すグラフを示す図である。
【図２５】試験２における実施例の学習によって得られた個体情報の構造を示す図である。
【図２６】試験２における実施例の学習によって得られた個体情報で用いられたノードの機能を示す図である。
【図２７】試験２における参考例の学習によって得られた個体情報の構造を示す図である。
【図２８】試験２における参考例の学習によって得られた個体情報で用いられたノードの機能を示す図である。
【発明を実施するための形態】
【００１２】
以下、本発明の画像処理システム、及び画像処理プログラムの実施形態について詳細に説明する。ただし、本発明は、以下の実施形態、及び後述する実施例の具体的な内容に限定されるものではない。
【００１３】
［第一実施形態］
まず、本発明の第一実施形態に係る画像処理システムについて、図１〜図３を参照して説明する。図１は、本実施形態の画像処理システムに相当する画像処理装置の構成を示すブロック図であり、図２は、同画像処理システムによる処理手順を示すフローチャートである。また、図３は、同画像処理システムによる処理手順における遺伝子操作の処理手順を示すフローチャートである。
【００１４】
本実施形態の画像処理システムは、生物の進化を数学的に模擬した最適化手法である遺伝的操作により、画像から検出対象を検出する画像処理を最適化する。
具体的には、本実施形態の画像処理システムに相当する画像処理装置１は、図１に示すように、機能単位記憶部１０、個体生成部１１、個体群記憶部１２、検査対象画像入力部１３、検査対象画像記憶部１４、良品画像入力部１５、良品画像記憶部１６、教師情報入力部１７、教師情報記憶部１８、画像処理部１９、出力情報記憶部２０、評価値計算部２１、評価結果記憶部２２、及び遺伝子操作部２３を備えている。
【００１５】
本実施形態の画像処理装置１におけるこれらの各構成は、図１に示すように一個の情報処理装置に全て備えることができる。また、これらの各構成は、複数の情報処理装置からなる画像処理システムの各装置に分散して備えてもよい。これは、後述する各実施形態についても同様である。
【００１６】
機能単位記憶部１０は、ある処理を実行する機能単位であるノード（遺伝子に相当する）をノード番号ごとに記憶する。本実施形態において、このノードとして、画像処理を行うための様々なものを用いることができ、後述する実施例では、図６〜図１２に示すものを用いている。
また、これらのノードは、それぞれの処理の実行に用いるパラメータが存在する場合には、そのパラメータと共に機能単位記憶部１０に記憶される。
【００１７】
さらに、ノードとして、何ら処理を実行しないものを用いてもよく、複数の処理を実行する機能単位をまとめたものを１個のノード（ノードセット）として用いてもよい。ノードとして何ら処理を実行しないものを含めて用いることにより、例えば個体情報を生成するための初期ノード数の設定値が多すぎた場合などに、実質的なノード数を減らすことができる。
【００１８】
本明細書において、「画像処理」には、ノイズ除去処理のための各種フィルタ処理や、輝度補正などの補正処理、２値化処理、エッジ検出処理、周波数フィルタ処理、四則演算処理、ファジ演算処理等の狭義の画像処理の他、これに伴って実行され得る検出対象の判定処理、及び出力処理などが含まれる。
【００１９】
個体生成部１１は、機能単位記憶部１０に記憶されているノードを用いて、複数のノードの配列からなる個体情報を生成する。このとき、個体生成部１１は、複数のノードにもとづいて、複数の個体情報をランダムに生成することができる。
またこのとき、個体生成部１１は、個体情報において、有閉路を含み得るネットワーク状に複数のノードの実行順序を定義することができる。このネットワークは、向きが付いたリンクにより構成される有向ネットワークであり、フィードバックが含まれることがある。また、このネットワークには、直線構造と木構造も含まれ得る。
【００２０】
このような個体情報を用いれば、直線構造や木構造のみからなる個体情報を用いる場合に比較して、より柔軟な表現力を持つネットワーク構造を含めて学習を行うことができるため、最適解（実用上の最適解，実用解）を導き出す上で優位性がある。すなわち、問題に対してどの構造体が最適解になるかは人が事前に把握することができないため、機械学習の前に構造体の条件を決定することは難しい。このため、個体情報として、有閉路を含み得るネットワーク状に複数のノードの実行順序を定義するものを使用して、幅広い条件で最適解を探索することは、真の最適解を導き出せる可能性を高める上で有効と考えられる。
【００２１】
個体群記憶部１２は、個体生成部１１によって生成された複数の個体情報からなる個体群を記憶する。この個体群として、一の世代又は複数の世代を個体群記憶部１２に記憶させることができ、世代番号ごとに個体情報を個体群記憶部１２に記憶させることができる。
後述する評価値計算部２１は、世代ごとに個体情報を順位付けして、順位付け情報を評価結果記憶部２２に記憶させることができる。
【００２２】
検査対象画像入力部１３は、検査対象物が表示された学習用又は検証用の検査対象画像を画像処理装置１に入力して、画像識別情報ごとに検査対象画像記憶部１４に記憶させる。
良品画像入力部１５は、検査対象物が正しく表示された良品画像を画像処理装置１に入力して、画像識別情報ごとに良品画像記憶部１６に記憶させる。
【００２３】
ここで、良品画像とは、正常な検査対象物を事前に撮影して得られた画像であり、人による目視外観検査において、人が記憶している良品や、ラインに流れる検査対象物の前後の製品を模擬するものである。
本実施形態の画像処理システムでは、このように良品画像を検査対象画像と共に入力して画像処理を行うことで、周辺視を再現することが可能になっている。
【００２４】
教師情報入力部１７は、画像識別情報に対応させて、出力情報を評価するための教師情報として、当該画像識別情報に対応する検査対象画像における検出対象要素の画像を入力し、当該画像識別情報ごとに教師情報記憶部１８に記憶させる。
ここで、検出対象要素とは、検査対象画像における欠陥（クラック、キズ、汚れなど）、特定の部品、特定の柄等とすることができる。なお、検出対象要素が検査対象画像の全体に相当する場合もあり得る。
【００２５】
画像処理部１９は、検査対象画像記憶部１４から検査対象画像を入力すると共に、良品画像記憶部１６から良品画像を入力する。そして、個体群記憶部１２から個体情報を入力し、その個体情報にもとづき当該個体情報に含まれる複数のノードを順次実行することによって、検査対象画像に対して画像処理を行う。
これにより、ノードの実行において良品画像が用いられることによって、検査対象画像に対する画像処理の最適化を、周辺視を模擬したより優れたものにすることが可能となっている。
【００２６】
このとき、各ノードは、画像から得られる情報を用いて、それぞれの機能に対応する処理を実行する。また、各ノードは、その処理結果にもとづいて、処理結果に対応する次のノードを選択的に実行し得る。したがって、個体情報に含まれるノードであっても、画像処理において、必ずしも全てのノードが実行される訳ではない。勿論、個体情報における全てのノードが実行される場合はある。また、フィードバックが行われることによって、一つの個体情報において１つのみ定義されているノードが、複数回実行されることもあり得る。
【００２７】
また、ノードの機能としては、上述したように、ノイズ除去処理のための各種画像フィルタ処理や、輝度補正などの補正処理、２値化処理、エッジ検出処理、周波数フィルタ処理、四則演算処理、ファジ演算処理等の狭義の画像処理がある。これらは、画像処理部１９によって、主として、検出対象要素の候補（検出対象候補）を見つけるための処理として行われる。
【００２８】
また、ノードの機能としての検出対象の判定処理は、画像処理部１９によって、画像における一定範囲の検出対象要素の候補をラベリングしてその特徴量を計算し、閾値などにもとづいて、その特徴量を備えた検出対象要素の候補が、正しい検出対象要素であるか否かを判定する処理として行われる。
なお、検出対象の判定処理において、非検出対象要素の候補をラベリングしてその特徴量を計算し、閾値などにもとづきその特徴量を備えていないことにより、検出対象要素でないことを判定する処理を行うこともできる。
【００２９】
さらに、画像処理部１９は、出力情報を生成して出力する。
具体的には、検査対象画像における検出対象要素の画像を出力情報として生成する。そして、この出力情報を当該検査対象画像の画像識別情報ごとで、かつ個体情報の識別情報ごとに出力情報記憶部２０に記憶させることができる。
このように、本実施形態における画像処理部１９によって得られる出力情報は、検査対象画像における検出対象要素の画像として生成される。
【００３０】
評価値計算部２１は、出力情報記憶部２０から出力情報を入力すると共に、教師情報記憶部１８からその出力情報に対応する画像識別情報に対応する教師情報を入力する。
そして、出力情報と教師情報を比較して評価値を計算し、得られた評価値を当該検査対象画像の画像識別情報ごとで、かつ個体情報の識別情報ごとに評価結果記憶部２２に記憶させることができる。
このとき、評価値計算部２１は、出力情報と教師情報を用いて、検査対象要素の画像の輝度を１ピクセルごとに比較し、最小二乗法により、平均二乗誤差を評価値として算出することができる。
【００３１】
また、評価値計算部２１は、個体群記憶部１２に記憶されている全ての個体情報（又は１世代分の個体情報）につき評価値を計算し終えて評価結果記憶部２２に記憶させた場合などに、これらの評価値にもとづき個体情報を順位付け（ランキング）して、得られた順位付け情報を評価結果記憶部２２に記憶させることができる。
【００３２】
さらに、評価値計算部２１は、画像処理部１９による画像処理を終了するか否かを判定するための終了判定を行うことができる。終了判定は、終了条件を満たすか否かにもとづき行うことができ、終了条件を満たす場合、画像処理部１９による画像の処理を終了させて、画像処理装置１による処理を終了させることができる。そして、評価結果記憶部２２に記憶された最も評価値の高い個体情報が、画像処理を行うための最適化された個体情報として得られる。
【００３３】
終了条件としては、予め設定した全ての世代の個体群について画像処理を完了した場合や、一定の世代数以上で進化が発生していない場合などを挙げることができる。
進化が発生していない場合とは、評価値が、比較対象の時点よりも高くなっていない場合である。なお、後述する実施例では、評価値として平均二乗誤差を用いているため、評価値の小さいほうが良い個体情報となる。したがって、一定の世代数について画像処理を行って評価値が小さくなっていなければ、進化していないと判定できる。
【００３４】
なお、評価値計算部２１からこの終了判定の機能を分離して、本実施形態の画像処理装置１において終了判定を行うための終了判定部を備えてもよい。
【００３５】
遺伝子操作部２３は、評価結果記憶部２２における個体情報の順位付け情報にもとづいて、個体情報の選択又は変更を行って、個体群記憶部１２を更新する。
具体的には、遺伝子操作部２３は、評価値が高い個体情報を次世代に残すエリート個体保存部と、評価値にもとづいて、一定の確率で個体情報を次世代に残す個体選択部と、２つの個体情報の一部を相互に交換する交叉部と、選択された１つの個体情報の一部又は全部をランダムに書き換える突然変異部とを有するものとすることができる。
【００３６】
エリート個体保存部は、各世代の個体群において、一番評価値の良い個体情報などを、無条件で次世代に残す処理を行うことができる。
個体選択部は、各世代の個体群において、評価値の順位の高い個体情報を高い確率で選択して、次世代に残す処理を行うことができる。
【００３７】
交叉部は、交叉処理として、複数の個体情報の各ノードの配列における同一（ノード番号）の並びについて、ある確率で入れ替える１様交叉を行うことができる。また、交叉部は、交叉処理として、各ノードの配列における同一の並びの１点を境として、一方の配列を相互に入れ替える１点交叉や、同一の並びの複数点を境として配列を相互に入れ替える複数点交叉を行うこともできる。交叉部は、このような交叉処理を、個体選択部により選択された個体情報に対して行うことができる。
【００３８】
突然変異部は、突然変異処理として、機能単位記憶部１０に記憶されているノードを用いて、個体情報ごとに一定の確率でその個体情報の一部を書き換えたり、その個体情報の全てを書き換えることができる。突然変異部は、このような突然変異処理を、個体選択部により選択された個体情報に対して行うことができる。また、突然変異部は、突然変異処理として、機能単位記憶部１０に記憶されているノードを用いて、新しい個体情報を生成することもできる。
【００３９】
なお、同じ個体情報にもとづいて生成された同系列個体が増えると、多様性が失われて進化が袋小路（数学的に局所解に陥った状態）に入ってしまう。一方、同系列以外の個体を増やしすぎると、ランダム探索に近づき、効率的な進化が行われない。
そこで、学習初期では多様性を持たせるために、同系列以外の個体を増やすように突然変異部による処理を行い、学習中期では効率的な進化を実施するために、個体選択部により同系列を増やすことが好ましい。また、進化が止まった場合には、再度多様性を持たせるために突然変異部により同系列以外を増やすことなどを好適に行うことができる。
【００４０】
そして、遺伝子操作部２３は、新たな世代の個体群を生成して、個体群記憶部１２に記憶させる。このとき、遺伝子操作部２３は、前の世代の個体群を上書きすることにより、個体群記憶部１２を更新することができる。また、複数世代の個体群を世代ごとに記憶させることにより、個体群記憶部１２を更新することもできる。
【００４１】
本実施形態の画像処理システムにおいて、検査対象画像入力部１３が検査用の画像を入力し、最も評価値の高い個体情報及び良品画像にもとづき画像処理部１９によって検査用の画像を処理して得られた処理結果情報を記憶する処理結果記憶部（図示しない）を備えた構成とすることも好ましい。
処理結果情報としては、例えば、検出対象要素の画像、個数を示す数値、検出対象として認識された位置、検出対象要素の範囲外において検出対象として認識された数等を用いることができる。
【００４２】
また、このような構成において、検査対象画像入力部１３が、検査対象物を撮影して得られた画像をリアルタイムで検査用の画像として入力すると共に、良品画像入力部１５が、検査対象物と同一種類の他の検査対象物を撮影して得られた画像をリアルタイムで良品画像として入力する構成とすることも好ましい。
検査対象物と同一種類の他の検査対象物としては、例えばラインに流れる検査対象物の前後の製品などを用いることができる。
【００４３】
本実施形態をこのような構成にすれば、製品の検査時において、ラインに流れる検査対象物の前後の製品を良品画像として用いることができ、画像処理システムにおいて周辺視を好適に再現することが可能である。
【００４４】
次に、本実施形態の画像処理システムによる処理手順について、図２及び図３を参照して説明する。
まず、画像処理装置１における検査対象画像入力部１３が、検査対象画像を入力して検査対象画像記憶部１４に記憶させる（ステップ１０）。また、良品画像入力部１５が、良品画像を入力して、良品画像記憶部１６に記憶させる（ステップ１１）。さらに、教師情報入力部１７が、教師情報としての検出対象要素の画像を入力して、教師情報記憶部１８に記憶させる（ステップ１２）。そして、個体生成部１１によって、初期個体群が生成され、個体群記憶部１２に記憶される（ステップ１３）。なお、これらのステップの順番は入れ替えてもよい。
【００４５】
このとき、個体生成部１１は、機能単位記憶部１０からノードをランダムに選択して配列することにより個体情報を生成して、個体情報の識別情報ごとに個体群記憶部１２に記憶させることができる。また、個体生成部１１は、複数の個体情報からなる個体群を一つの世代として、世代番号ごとに複数の世代の個体群を個体群記憶部１２に記憶させることもできる。
【００４６】
次に、画像処理部１９は、個体群記憶部１２における個体群の世代ごとに、個体群における全ての個体情報について画像処理を実行する（ステップ１４、１５、１６）。
このとき、画像処理部１９は、個体情報ごとに出力情報として、検査対象画像における検出対象要素の画像を出力して、出力情報記憶部２０に記憶させる。
【００４７】
次に、評価値計算部２１は、個体情報ごとに、出力情報と教師情報を比較して、評価値を計算する（ステップ１７）。
このとき、評価値計算部２１による評価値の計算において、例えば最小二乗法を用いて、評価値として平均二乗誤差を算出することができる。
また、評価値計算部２１は、得られた評価値を評価結果記憶部２２に個体情報ごとに記憶させる。
そして、当該世代の全ての個体情報について、画像の処理から評価値の計算及び記憶までの処理を繰り返し実行する。
【００４８】
次に、評価値計算部２１は、評価結果記憶部２２に記憶されている評価値にもとづいて、個体情報の順位付けを行う（ステップ１８）。
また、評価値計算部２１は、終了条件が満たされているか否かの判定処理を行う（ステップ１９）。終了条件が満たされている場合、画像処理装置１による処理を終了する。
【００４９】
終了条件が満たされていない場合、遺伝子操作部２３は、遺伝子操作処理を実行する（ステップ２０）。
具体的には、図３に示すように、遺伝子操作部２３におけるエリート個体保存部は、最も評価値の高い個体情報を次世代の個体群の個体情報として選択する（ステップ３０）。
また、遺伝子操作部２３における個体選択部は、評価値の順位の高い個体情報ほど高い確率で次世代の個体群の個体情報として選択する（ステップ３１）。
【００５０】
さらに、遺伝子操作部２３における交叉部は、個体選択部により選択された個体情報に対して、交叉処理を実行して、新たな個体情報を生成する（ステップ３２）。
また、遺伝子操作部２３における突然変異部は、個体選択部により選択された個体情報にもとづいて、またはこれらの個体情報を用いることなく、突然変異処理を行い、新たな個体情報を生成する（ステップ３３）。
なお、エリート個体保存部、個体選択部、交叉部、突然変異部による各処理の順序を、各処理を実行可能な順序の範囲で入れ替えて実行してもよい。
【００５１】
このような本実施形態の画像処理装置によれば、外観検査の画像処理技術において、検査対象物の画像だけではなく、良品画像を併せて入力画像として画像処理を行い、得られた出力情報を教師情報と比較することにより画像処理に周辺視を適用し、進化的計算によって画像処理を最適化することができる。
また、進化的計算において、遺伝的ネットワークプログラミング（ＧＮＰ）の手法を採用することにより、最適化の自由度を向上させることが可能になっている。
【００５２】
［第二実施形態］
次に、本発明の第二実施形態に係る画像処理システムについて説明する。本実施形態の画像処理システムは、教師情報として、検査対象画像における検出対象要素の個数を示す数値を用いる点で、第一実施形態と相違する。その他の点は、第一実施形態と同様である。
【００５３】
すなわち、本実施形態の画像処理システムに相当する画像処理装置１ａは、図示しないが、機能単位記憶部１０ａ、個体生成部１１ａ、個体群記憶部１２ａ、検査対象画像入力部１３ａ、検査対象画像記憶部１４ａ、良品画像入力部１５ａ、良品画像記憶部１６ａ、教師情報入力部１７ａ、教師情報記憶部１８ａ、画像処理部１９ａ、出力情報記憶部２０ａ、評価値計算部２１ａ、評価結果記憶部２２ａ、及び遺伝子操作部２３ａを備えており、これらは以下の点を除いて、第一実施形態において対応する各構成と同様の機能を備えている。
【００５４】
本実施形態の画像処理装置１ａにおいて、教師情報入力部１７ａは、画像識別情報に対応させて、出力情報を評価するための教師情報として、当該画像識別情報に対応する検査対象画像における検出対象要素の個数を示す数値を入力し、当該画像識別情報ごとに教師情報記憶部１８ａに記憶させる。
【００５５】
また、画像処理部１９ａは、検査対象画像記憶部１４ａから検査対象画像を入力すると共に、良品画像記憶部１６ａから良品画像を入力する。そして、個体群記憶部１２ａから個体情報を入力し、その個体情報にもとづき当該個体情報に含まれる複数のノードを順次実行することによって、検査対象画像に対して画像処理を行う。
【００５６】
本実施形態において、画像処理部１９ａは、検査対象画像における検出対象要素の個数を示す数値を出力情報として生成する。そして、この出力情報を当該画像の画像識別情報ごとで、かつ個体情報の識別情報ごとに出力情報記憶部２０ａに記憶させることができる。
このように、本実施形態における画像処理部１９ａによって得られる出力情報は、検査対象画像における検出対象要素の個数を示す数値として生成される。
【００５７】
評価値計算部２１ａは、出力情報記憶部２０ａから出力情報を入力すると共に、教師情報記憶部１８ａからその出力情報に対応する画像識別情報に対応する教師情報を入力する。
そして、出力情報と教師情報を比較して評価値を計算し、得られた評価値を当該検査対象画像の画像識別情報ごとで、かつ個体情報の識別情報ごとに評価結果記憶部２２ａに記憶させることができる。
【００５８】
ここで、教師情報を画像にする場合、最小二乗法による評価では、検出対象要素の大きさに評価値が影響を強く受けるため、小さい検出対象要素がない場合よりも、大きい検出対象要素の形状が異なる方が、評価値が悪化し易くなる。
例えば、ある画像において三角形を検出対象要素とした場合に、サイズが１０ピクセルの三角形が検出されなかったとする。
このとき、同じ画像におけるより大きい三角形の出力が教師画像のものよりも一回り小さくなったとすると、その差が１０ピクセル以上であれば、１０ピクセルの三角形が無いことより評価値が悪化することになる。このため、機械学習では小さい三角より大きい三角を教師画像に近づけた方が評価値が良くなる傾向になり、小さい三角形より大きい三角形を一致させるように進化が進み、局所解に陥り易い状態になる。これに対して、本実施形態では検出対象要素の大きさに拘わらず、未検出の誤差が同一になるため、局所解に陥り難くなっている。
【００５９】
このような本実施形態の画像処理システムによれば、画像処理に周辺視を適用することができることに加えて、検査対象画像に画像処理を行って検出対象要素の個数を示す出力情報を作成し、その出力情報を教師情報としての数値と比較することができる。このため、検出対象要素のサイズに拘わらず評価値を同一とすることができ、検出対象要素領域の割合により評価値が悪化する問題を解消することが可能である。
【００６０】
［第三実施形態］
次に、本発明の第三実施形態に係る画像処理システムについて説明する。本実施形態の画像処理システムは、教師情報として、検査対象画像における検出対象要素の位置情報を用いる点で、第一実施形態と相違する。その他の点は、第一実施形態と同様である。
【００６１】
すなわち、本実施形態の画像処理システムに相当する画像処理装置１ｂは、図示しないが、機能単位記憶部１０ｂ、個体生成部１１ｂ、個体群記憶部１２ｂ、検査対象画像入力部１３ｂ、検査対象画像記憶部１４ｂ、良品画像入力部１５ｂ、良品画像記憶部１６ｂ、教師情報入力部１７ｂ、教師情報記憶部１８ｂ、画像処理部１９ｂ、出力情報記憶部２０ｂ、評価値計算部２１ｂ、評価結果記憶部２２ｂ、及び遺伝子操作部２３ｂを備えており、これらは以下の点を除いて、第一実施形態において対応する各構成と同様の機能を備えている。
【００６２】
本実施形態の画像処理装置１ｂにおいて、教師情報入力部１７ｂは、画像識別情報に対応させて、出力情報を評価するための教師情報として、当該画像識別情報に対応する検査対象画像における検出対象要素の位置情報を入力し、当該画像識別情報ごとに教師情報記憶部１８ｂに記憶させる。
この位置情報としては、検出対象要素の範囲（検出対象要素が画像内に占めている領域を表す座標）、又は検出対象要素の重心を用いることが好ましい。
検出対象要素の重心としては、検出対象要素自身の重心のほか、検出対象要素の外接矩形の重心や、検出対象要素の内接円の重心などを用いてもよい。
【００６３】
また、画像処理部１９ｂは、検査対象画像記憶部１４ｂから検査対象画像を入力すると共に、良品画像記憶部１６ｂから良品画像を入力する。そして、個体群記憶部１２ｂから個体情報を入力し、その個体情報にもとづき当該個体情報に含まれる複数のノードを順次実行することによって、検査対象画像に対して画像処理を行う。
【００６４】
本実施形態において、画像処理部１９ｂは、検査対象画像における検出対象要素の範囲や重心などの位置情報を出力情報として生成する。そして、この出力情報を当該検査対象画像の画像識別情報ごとで、かつ個体情報の識別情報ごとに出力情報記憶部２０ｂに記憶させることができる。
このように、本実施形態における画像処理部１９ｂによって得られる出力情報は、検査対象画像における検出対象要素の位置情報として生成される。
【００６５】
本実施形態において、出力情報の検出対象要素の位置情報は、教師情報と同様に、検出対象要素の範囲、又は検出対象要素の重心を用いることが好ましいが、教師情報と出力情報の位置情報の種類は同一である必要はなく、例えば教師情報に範囲を用い、出力情報に重心を用いるというように、異なる種類の位置情報を用いてもよい。
【００６６】
なお、本実施形態でも、教師情報を検出対象要素の画像にする場合に比べて、検出対象要素の大きさに拘わらず、未検出の誤差が同一になるため、局所解に陥り難くなっている。
【００６７】
本実施形態では、画像における検出対象要素の位置情報にもとづいて、評価値を例えば以下の基準で算出することができる。
【数１】
2020107009.tif 000003
【００６８】
ここで、ｎはサンプル数であり、画像数である。検出対象要素の位置情報から得られるスコアであるScoreAは、出力情報における検出対象要素の位置情報である重心が、教師情報における当該検出対象要素の範囲内に存在していない検出対象要素（重心が、教師情報における当該検出対象要素の範囲外に存在する検出対象要素）の数に対する平均二乗誤差である。また、ScoreBは、出力情報における検出対象要素の位置情報である重心が、教師情報における検出対象要素の範囲内に存在していない検出対象要素がある場合の、当該教師情報の数に対する平均二乗誤差である。また、ｗは重み付け情報であり、ScoreBの重要度を変更可能にするものである。
【００６９】
例えば、ある画像に対応する教師画像において、検出対象要素１の位置情報（教師範囲１）と検出対象要素２の位置情報（教師範囲２）が存在したとする。また、この画像に対して画像処理部１９ｂによる画像処理で２値化及びラベリングが行われた結果、検出対象要素が２つ見つかり、それぞれの重心を示す検出対象要素の位置情報（１）と検出対象要素の位置情報（２）を含む出力情報が得られたとする。
【００７０】
そして、検出対象要素の位置情報（１）が教師範囲１内に存在し、検出対象要素の位置情報（２）が教師範囲２外に存在しており、教師範囲２内には重心が存在していなかったとする。
この場合、仮にｗ＝５とすると、検出対象要素の位置情報（１）についての評価値は０であり、検出対象要素の位置情報（２）についての評価値は（０−１）２＋５×（１−０）２＝６となり、この出力画像及び個体情報についての評価値は６と算出される。
【００７１】
なお、上記のScoreAとScoreBを画像処理部１９ｂにより算出させて、これらを出力情報記憶部２０ｂに記憶させ、評価値計算部２１ｂがこれらを用いて評価値を計算する構成とすることもできる。
また、画像における検出対象要素の範囲や重心などの位置情報を取得する機能を評価値計算部２１ｂに行わせることもできる。すなわち、画像処理部１９ｂにより画像処理された後の画像にもとづいて、評価値計算部２１ｂが位置情報を取得し、これにもとづき評価値を計算する構成とすることも可能である。
【００７２】
このような本実施形態の画像処理システムによれば、画像処理に周辺視を適用することができることに加えて、検査対象画像に画像処理を行って検出対象要素の位置情報を示す出力情報を作成し、その出力情報を教師情報である位置情報と比較することができる。このため、検出対象要素のサイズに拘わらず評価値を同一とすることができ、検出対象要素領域の割合により評価値が悪化する問題を解消することが可能である。
【００７３】
［第四実施形態］
次に、本発明の第四実施形態に係る画像処理システムについて、図４及び図５を参照して説明する。図４は、本実施形態の画像処理システムに対応する画像処理装置の構成を示すブロック図であり、図５は、同画像処理システムによる処理手順を示すフローチャートである。
【００７４】
本実施形態の画像処理システムに相当する画像処理装置１ｃは、図４に示すように、機能単位記憶部１０ｃ、個体生成部１１ｃ、個体群記憶部１２ｃ、検査対象画像入力部１３ｃ、検査対象画像記憶部１４ｃ、良品画像入力部１５ｃ、良品画像記憶部１６ｃ、教師情報入力部１７ｃ、教師情報記憶部１８ｃ、画像処理部１９ｃ、出力情報記憶部２０ｃ、評価値計算部２１ｃ、評価結果記憶部２２ｃ、及び遺伝子操作部２３ｃを備えている。また、個体群記憶部１２ｃは、親個体群記憶部１２１ｃと子個体群記憶部１２２ｃを備えている。
【００７５】
本実施形態の画像処理装置１ｃにおける機能単位記憶部１０ｃ、検査対象画像入力部１３ｃ、検査対象画像記憶部１４ｃ、良品画像入力部１５ｃ、良品画像記憶部１６ｃ、教師情報入力部１７ｃ、教師情報記憶部１８ｃ、出力情報記憶部２０ｃ、及び評価結果記憶部２２ｃは、第一実施形態と同様のものとすることができる。また、本実施形態の画像処理装置１ｃにおけるその他の構成についても、以下に説明する点を除いて、第一実施形態と同様のものとすることができる。
【００７６】
個体生成部１１ｃは、機能単位記憶部１０に記憶されているノードを用いて、複数のノードの配列からなる個体情報を生成する。このとき、個体生成部１１ｃは、第一実施形態と同様に、個体情報において、有閉路を含み得るネットワーク状に複数のノードの実行順序を定義することができる。
また、本実施形態における個体生成部１１ｃは、個体情報として、複数の親個体情報をランダムに生成し、これら親個体情報からなる初期の親個体群を親個体群記憶部１２１ｃに記憶させることができる。
【００７７】
遺伝子操作部２３ｃは、親個体群記憶部１２１ｃにおける親個体情報に対して遺伝子操作を実行する。
具体的には、まず、親個体群記憶部１２１ｃにおける親個体群からランダムに、子個体情報を生成する親個体情報を選択する。
【００７８】
遺伝子操作部２３ｃにおけるエリート個体保存部は、選択された親個体情報と同一の子個体情報からなる子個体群を子個体群記憶部１２２ｃに記憶させることができる。
そして、遺伝子操作部２３ｃにおける交叉部は、選択された親個体情報に対して交叉処理を実行して、複数の子個体情報を生成し、これら子個体情報からなる子個体群を子個体群記憶部１２２ｃに記憶させることができる。
また、遺伝子操作部２３ｃにおける突然変異部は、機能単位記憶部１０に記憶されているノードを用いて、選択された親個体情報に対して突然変異処理を実行して、一定の確率で親個体情報の一部を書き換えたり、その全てを書き換えることによって得られた子個体情報からなる子個体群を子個体群記憶部１２２ｃに記憶させることができる。また、突然変異部は、突然変異処理として、機能単位記憶部１０ｃに記憶されているノードを用いて、新しい個体情報を生成することもできる。
【００７９】
さらに、遺伝子操作部２３ｃは、評価結果記憶部２２ｃにおける子個体情報の順位付け情報にもとづいて、一番評価値の良い子個体情報及び確率で選択された子個体情報を、親個体群からランダムに選択された上記の親個体情報と入れ替えることなどによって、親個体群記憶部１２１ｃにおける親個体情報を更新することができる。
【００８０】
検査対象画像入力部１３ｃは、検査対象物が表示された学習用又は検証用の検査対象画像を画像処理装置１ｃに入力して、画像識別情報ごとに検査対象画像記憶部１４ｃに記憶させる。
良品画像入力部１５ｃは、検査対象物が正しく表示された良品画像を画像処理装置１ｃに入力して、画像識別情報ごとに良品画像記憶部１６ｃに記憶させる。
教師情報入力部１７ｃは、画像識別情報に対応させて、出力情報を評価するための教師情報として、当該画像識別情報に対応する検査対象画像における検出対象要素の画像を入力し、当該画像識別情報ごとに教師情報記憶部１８ｃに記憶させる。
【００８１】
画像処理部１９ｃは、検査対象画像記憶部１４ｃから検出対象要画像を入力すると共に、良品画像記憶部１６ｃから良品画像を入力し、子個体群記憶部１２２ｃから子個体情報を入力して、その子個体情報にもとづき当該子個体情報に含まれる複数のノードを順次実行することによって、検査対象画像に対して画像処理を行う。これにより、ノードの実行において良品画像が用いられることによって、検査対象画像に対する画像処理の最適化を、周辺視を模擬したより優れたものにすることが可能になっている。
【００８２】
そして、画像処理部１９ｃは、検査対象画像における検出対象要素の画像を作成して出力情報を生成し、この出力情報を当該画像の画像識別情報ごとで、かつ子個体情報の識別情報ごとに出力情報記憶部２０ｃに記憶させることができる。
【００８３】
評価値計算部２１ｃは、出力情報記憶部２０ｃから出力情報を入力すると共に、教師情報記憶部１８ｃからその出力情報に対応する画像識別情報に対応する教師情報を入力する。
そして、出力情報と教師情報を比較して評価値を計算し、得られた評価値を当該画像の画像識別情報ごとで、かつ子個体情報の識別情報ごとに評価結果記憶部２２ｃに記憶させることができる。
【００８４】
また、評価値計算部２１ｃは、個体群記憶部１２ｃにおける子個体群記憶部１２２ｃに記憶されている全ての子個体情報（又は１世代分の子個体情報）につき評価値を計算し終えて評価結果記憶部２２ｃに記憶させた場合などに、これらの評価値にもとづき子個体情報を順位付けして、得られた順位付け情報を評価結果記憶部２２ｃに記憶させることができる。
さらに、評価値計算部２１ｃは、画像処理部１９ｃによる画像処理を終了するか否かを判定するための終了判定を行うことができる。
【００８５】
次に、本実施形態の画像処理システムの処理手順について、図５を参照して説明する。
まず、画像処理装置１ｃにおける検査対象画像入力部１３ｃが、検査対象画像を入力して、検査対象画像記憶部１４ｃに記憶させる（ステップ４０）。また、良品画像入力部１５ｃが、良品画像を入力して、良品画像記憶部１６ｃに記憶させる（ステップ４１）さらに、教師情報入力部１７ｃが、教師情報としての検出対象要素の画像を入力して、教師情報記憶部１８ｃに記憶させる（ステップ４２）。そして、個体生成部１１ｃによって、初期の親個体群が生成され、親個体群記憶部１２１ｃに記憶される（ステップ４３）。
【００８６】
このとき、個体生成部１１ｃは、機能単位記憶部１０ｃからノードをランダムに選択して配列することにより親個体情報を生成して、親個体情報の識別情報ごとに個体群記憶部１２ｃにおける親個体群記憶部１２１ｃに記憶させることができる。この親個体群記憶部１２１ｃにおける親個体群は、後述する親個体群の更新処理によって更新され、設定された世代について以下の処理が繰り返し行われる（ステップ４４）。
【００８７】
遺伝子操作部２３ｃは、親個体群記憶部１２１ｃにおける親個体群からランダムに、子個体情報を生成する親個体情報を選択する。（ステップ４５）。そして、選択された親個体情報に対して遺伝子操作を実行する（ステップ４６）。なお、ステップ４５の親個体情報の選択を、ステップ４６の遺伝子操作の一部として、実行してもよい。
【００８８】
すなわち、遺伝子操作部２３ｃは、ランダムに選択された親個体情報に対してエリート保存、交叉処理や突然変異処理を実行して、複数の子個体情報を生成し、これら子個体情報からなる子個体群を子個体群記憶部１２２ｃに記憶させる。
【００８９】
次に、画像処理部１９ｃは、子個体群記憶部１２２ｃにおける全ての子個体情報について画像の処理を実行する（ステップ４７、４８）。
このとき、画像処理部１９ｃは、子個体情報ごとに出力情報として、検査対象画像における検出対象要素の画像を出力して、出力情報記憶部２０ｃに記憶させる。
【００９０】
次に、評価値計算部２１ｃは、子個体情報ごとに、出力情報と教師情報を比較して評価値を計算し（ステップ４９）、得られた評価値を評価結果記憶部２２に子個体情報ごとに記憶させる。
そして、子個体群記憶部１２２ｃにおける全ての子個体情報について、画像の処理から評価値の計算及び記憶までの処理を繰り返し実行する。
【００９１】
次に、評価値計算部２１ｃは、評価結果記憶部２２ｃに記憶されている評価値にもとづいて、子個体情報の順位付けを行う（ステップ５０）。
そして、遺伝子操作部２３は、評価結果記憶部２２ｃにおける子個体情報の順位付け情報にもとづいて、一番評価値の良い子個体情報及び確率で選択された子個体情報を、親個体群からランダムに選択された上記の親個体情報と入れ替えることにより、個体群記憶部１２における親個体群記憶部１２１ｃの親個体情報を更新する（ステップ５１）。
【００９２】
また、評価値計算部２１ｃは、終了条件が満たされているか否かの判定処理を行い（ステップ５２）、終了条件が満たされている場合、画像処理装置１ｃによる処理を終了する。
【００９３】
画像処理装置１cによる処理を終了させる場合、評価値計算部２１cは、最終世代における全ての親個体情報につき評価値を計算し、評価値にもとづき個体情報を順位付けして、得られた順位付け情報を評価結果記憶部２２ｃに記憶させることができる。
【００９４】
このような本実施形態の画像処理装置によれば、親個体群から親を選択して子個体情報を生成する時に遺伝子操作が実行されると共に、子個体情報を親個体群における親個体情報と入れ替えることで、親個体群を更新することができる。これにより、第一実施形態に比較して、進化の多様性をより保った状態で、最適な個体情報を探すことが可能となっている。
【００９５】
また、本発明の第一実施形態に係る画像処理システムに、第二実施形態の構成を組み合わせて、画像処理システムにおいて周辺視の再現を可能にすると共に、教師情報として、検査対象画像における検出対象要素の画像と個数を示す数値を用いる構成とすることも好ましい。
また、本発明の第一実施形態に係る画像処理システムに、第三実施形態の構成を組み合わせて、画像処理システムにおいて周辺視の再現を可能にすると共に、教師情報として、検査対象画像における検出対象要素の画像と位置情報を用いる構成とすることも好ましい。
【００９６】
このような本実施形態の画像処理システムによれば、例えば、検出対象要素として太い線と細い線が混在し、その周囲に細かな点のノイズが存在している場合、教師情報として検出対象要素の画像のみを用いる場合には、細い線が消去されてしまう可能性があるが、教師情報として個数や位置情報を用いる場合、このような影響を受けない。一方、検出対象要素が複雑な形状を有しており、その形状を検出することが重要な場合、教師情報として個数や位置情報を用いる場合は、その形状を検出することができない可能性がある。しかし、教師情報として検出対象要素の画像を用いる場合には、このような影響を受けない。そのため、教師情報として検出対象要素の個数や位置情報と画像を組み合わせて教師情報とすることで、より良い個体情報が得られる可能性を高めることが可能である。
【００９７】
また、本発明の第二実施形態に係る画像処理システムに、第三実施形態の構成を組み合わせて、画像処理システムにおいて周辺視の再現を可能にすると共に、教師情報として、検査対象画像における検出対象要素の個数を示す数値と位置情報を用いる構成とすることも好ましい。
このような本実施形態の画像処理装置によれば、例えば、検出対象要素の周囲にノイズなどの非検出対象要素が存在する場合、教師情報として位置情報のみを用いる場合には、検出対象要素と同時に周囲の非検出対象要素も抽出してしまう可能性があるが、教師情報として個数を用いる場合、このような影響を受けない。一方、検出対象要素に細い部分と太い部分が混在する場合、教師情報として個数を用いる場合は、その細い箇所が検出されなかった場合、太い部分が検出され評価値が大きく悪化する。しかし、教師情報として位置情報を用いる場合には、このような影響を受けない。そのため、教師情報として検出対象要素の位置情報と個数を組み合わせて教師情報とすることで、より良い個体情報が得られる可能性を高めることが可能である。
【００９８】
また、本発明の第一実施形態に係る画像処理システムに、第二実施形態及び第三実施形態の構成を組み合わせて、画像処理システムにおいて周辺視の再現を可能にすると共に、教師情報として、検査対象画像における検出対象要素の画像、個数を示す数値、及び位置情報を用いる構成とすることも好ましい。
このような本実施形態の画像処理装置によれば、例えば、境界線がはっきりとしていない検出対象要素について、教師情報として画像のみを用いる場合、与えた教師情報の画像の境界線は人が決定した物であるため決定した人間による差違が発生し、良質な学習が行えない可能性がある。しかし、教師情報に位置情報や個数を用いた場合、このような影響を受けない。そのため、教師情報として検出対象要素の位置情報と個数と画像を組み合わせて教師情報とすることで、より良い個体情報が得られる可能性を高めることが可能である。
【００９９】
さらに、本発明の第四実施形態に係る画像処理システムに、第二実施形態又は第三実施形態の構成を組み合わせて、教師情報を検出対象要素の個数を示す数値又は位置情報に変更して、進化の多様性をより保った状態で、最適な個体情報を探すことを可能にすることも好ましい。
【実施例】
【０１００】
（試験１）
以下、本発明の実施形態に係る画像処理システムを用いて、画像から検出対象を検出する画像処理を最適化した試験について、図６〜図２０を用いて説明する。
実施例１として、本発明の第四実施形態に係る画像処理システムを使用して、検査対象画像内の欠陥を模擬した検出対象要素を検出するアルゴリズムの自動生成（個体情報の最適化）を行った。
また、参考例１として、実施例１の画像処理システムの一部を変更したものを使用した。具体的には、参考例１では良品画像記憶部１６ｃにおける良品画像を画像処理部１９ｃによる画像処理に用いず、検査対象画像のみを用いてアルゴリズムの自動生成を行った。
【０１０１】
機能単位記憶部に記憶させたノードを図６〜図１２に示す。図６に示すノードは、画像処理（ノイズ除去）を行うものであり、図７に示すノードは、画像処理（輝度補正、組合せ）を行うものであり、図８に示すノードは、画像処理（２値化）を行うものであり、図９に示すノードは、画像処理（エッジ検出）を行うものであり、図１０に示すノードは、画像処理（エッジ検出、周波数フィルタ）を行うものであり、図１１に示すノードは、画像処理（四則演算、ファジ演算）を行うものであり、図１２に示すノードは、検出対象の判定処理を行うものである。
【０１０２】
実施例１で設定したノードは、入力ノードが２個、処理ノードが５個、出力ノードが１個の合計８ノードである。参考例１で設定したノードは、入力ノードが１個、処理ノードが５個、出力ノードが１個の合計７ノードである。入力ノードは検査対象画像又は良品画像を入力するものであり、出力ノードは検出対象要素の画像を出力するものである。処理ノードの５個は、個体生成部１１ｃにより機能単位記憶部１０ｃからランダムに選択されるノード数を示す。
【０１０３】
検査対象画像入力部により入力する検査対象物を表示する学習用の画像、及び検証用の画像は、背景を０〜２５５の輝度を１ピクセルごとにランダムに与えた画像（背景画像）に、検出対象要素を記載し、さらにノイズを与えた画像である。
良品画像入力部により入力する検査対象物を正しく表示する良品画像は、上記の背景画像を良品模擬画像として使用した。
なお、実施例１及び参考例１において、これらの画像の入力処理以外の設定は同一である。
【０１０４】
実施例１及び参考例１ともに、学習で使用した入力画像の数は１０枚であり、検証で使用した入力画像の枚数は５枚である。
【０１０５】
評価値は、実施例１及び参考例１共に、画像である出力情報と教師情報を用いて、１ピクセルごとの差にもとづき最小二乗法により、平均二乗誤差を計算した。
【０１０６】
個体生成部により生成させる初期の親個体情報の個数を１００個とし、２個の親個体情報をランダムに選択して親個体群からは削除し、これらの親個体情報に対して遺伝子操作を実行して、７２個の子個体情報を生成した（親と同一個体：２、一様交叉個体：２０、突然変異個体：５０）。
【０１０７】
また、画像処理を行って、子個体情報の評価結果にもとづき評価値が一番よい子個体情報と確率で選択された子個体情報の２個の子個体情報を選択し、これらの子個体情報を親個体情報として親個体群に戻し、以上の処理を設定した世代数分繰り返し実行した。
最大の世代数を１００００世代に設定し、進化がストップしたと判定された場合（評価値が０になった場合）、処理を終了した。
【０１０８】
その結果を図１３〜図２０に示す。図１３及び図１４は、試験１における学習とその結果を示す図であり、図１５は、試験１における検証結果を示す図である。また、試験１における検証結果の評価値を表１に示す。
【表１】
2020107009.tif 000004
【０１０９】
また、図１６は、試験１における学習の評価値の遷移を表すグラフを示す図である。
さらに、図１７は、実施例１の学習によって得られた個体情報の構造を示す図であり、図１８は、実施例１の学習によって得られた個体情報で用いられたノードの機能を示す図である。また、図１９は、参考例１の学習によって得られた個体情報の構造を示す図であり、図２０は、参考例１の学習によって得られた個体情報で用いられたノードの機能を示す図である。なお、個体情報の構造における四角の囲みはノードセットを示し、それぞれが１個の処理ノードである。
【０１１０】
図１３〜図１５において、「出力結果」に示された画像は、評価値が一番良い個体情報によるものが示されている。すなわち、これらの出力情報の出力に用いられた個体情報が、各実施例１及び参考例１において最終的に得られた（最適化された）個体情報である。
なお、図１４のNo.9の実施例１及び参考例１における検査対象画像において、検出対象要素が見え難いため、その輪郭を白色で明示することによって示している。これは試験２における図２２のNo.9についても同様である。
【０１１１】
まず、図１６を参照して進化の推移を確認すると、最終的に評価値は、実施例１の方が良い結果となった。また、実施例１は５０００世代付近で、参考例１は６０００世代付近で進化が頭打ちしていることから、実施例１の方が効率的に進化したと推測される。
これは、実施例１では良品画像を模擬した背景画像を入力画像に加えているため、機械学習が使用できる情報量が多くなったことが要因と推測される。
また、実際に、図１７を参照すると、実施例１では、早い段階で検査対象画像と背景画像を比較する処理を実施している（同図の２ｄ）。また、実施例１は参考例１と比較して簡単な構造が得られている。これは前述したように背景画像を有効に使用できていることに起因すると推測される。
【０１１２】
さらに、図１５に示す検証結果において、参考例１はサンプルNo.4、5においてノイズに反応している。これに対して、実施例１は総じて参考例１よりも良い評価値が得られている（表１）。したがって、本実施形態の画像処理システムによれば、未知のデータに対しても検出対象要素の検出が可能であることが示唆される。
【０１１３】
ここで、一般に、学習で用いた画像に対して性能が良くても、その結果を実場面で使用すること（＝未知のデータを学習結果に適用すること）に対して性能が良いかは不明であり、学習結果の性能が良くて、実際に使うと性能が悪い「過学習」と言われる現象がある（言い換えるとロバスト性が無いとも言える）。このため、本試験では、学習で用いない検証用の画像を用意して学習結果を評価することにより、未知データに対する性能評価（交差検証）としている。
本試験によれば、実施例１の方が、参考例１に比較して学習結果と検証結果の差が少ないことから、本実施形態の画像処理システムによれば、未知のデータに対しても検出対象要素の検出が可能であることが示唆されると考えられる。
【０１１４】
また、実施例１では検査対象画像と良品画像の差分が採られた結果、得られた個体情報（アルゴリズム）が優れたものになったと考えられる。また、このような差分を採った画像処理は、検査対象物が複数品種存在していたとしても、それらの違いがキャンセルされていると言え、複数品種間を一気に検査することも可能である。
このように、本実施形態の画像処理システムは、適用範囲が広く、また汎用性が高いため、例えば、デザイン違いのガラスや缶の模様、ライン替えなどが生じた場合に、画像処理のアルゴリズムを生成し直すことなく適用することが可能である。
【０１１５】
（試験２）
次に、本発明の実施形態に係る画像処理システムを用いて、画像から検出対象を検出する画像処理を最適化した実験について、図２１〜図２８を用いて説明する。
実施例２として、本発明の第四実施形態に第二実施形態の構成を組み合わせた画像処理システムを使用して、検査対象画像内の欠陥を模擬した検出対象要素を検出するアルゴリズムの自動生成（個体情報の最適化）を行った。すなわち、試験１では教師情報として、検出対象要素の画像のみを用いたが、本試験では、教師情報として、検出対象要素の画像と個数を示す数値を併せて使用した。
【０１１６】
また、参考例２として、実施例２の画像処理システムの一部を変更したものを使用した。具体的には、参考例２では良品画像記憶部１６ｃにおける良品画像を画像処理部１９ｃによる画像処理に用いず、検査対象画像のみを用いてアルゴリズムの自動生成を行った。
【０１１７】
機能単位記憶部に記憶させたノードは、試験１と同様である。
実施例２で設定したノードは、入力ノードが２個、処理ノードが５個、出力ノードが１個の合計８ノードである。参考例２で設定したノードは、入力ノードが１個、処理ノードが５個、出力ノードが１個の合計７ノードである。入力ノードは検査対象画像又は良品画像を入力するものであり、出力ノードは検出対象要素の画像と個数を示す数値を出力するものである。処理ノードの５個は、個体生成部１１ｃにより機能単位記憶部１０ｃからランダムに選択されるノード数を示す。
【０１１８】
検査対象画像入力部により入力する検査対象物を表示する学習用の画像、及び検証用の画像は、背景を０〜２５５の輝度を１ピクセルごとにランダムに与えた画像（背景画像）に、検出対象要素を記載し、さらにノイズを与えた画像である。
良品画像入力部により入力する検査対象物を正しく表示する良品画像は、上記の背景画像を良品模擬画像として使用した。
なお、実施例２及び参考例２において、これらの画像の入力処理以外の設定は同一である。
【０１１９】
実施例２及び参考例２ともに、学習で使用した入力画像の数は１０枚であり、検証で使用した入力画像の枚数は５枚である。
【０１２０】
評価値は、実施例２及び参考例２共に、出力情報と教師情報を用いて、検出対象要素の画像（１ピクセルごとの差）と個数に対して重み付けを行い、これらを足し合わせた数値を使用した。具体的には、以下の式により算出した。
教師画像との平均二乗誤差×重み１．０＋教師個数との平均二乗誤差×重み０．１
【０１２１】
個体生成部により生成させる初期の親個体情報の個数を１００個とし、２個の親個体情報をランダムに選択して親個体群からは削除し、これらの親個体情報に対して遺伝子操作を実行して、７２個の子個体情報を生成した（親と同一個体：２、一様交叉個体：２０、突然変異個体：５０）。
【０１２２】
また、画像処理を行って、子個体情報の評価結果にもとづき評価値が一番よい子個体情報と確率で選択された子個体情報の２個の子個体情報を選択し、これらの子個体情報を親個体情報として親個体群に戻し、以上の処理を設定した世代数分繰り返し実行した。
最大の世代数を１００００世代に設定し、進化がストップしたと判定された場合（評価値が０になった場合）、処理を終了した。
【０１２３】
その結果を図２１〜図２８に示す。図２１及び図２２は、試験２における学習とその結果を示す図であり、図２３は、試験２における検証結果を示す図である。また、試験２における検証結果の評価値を表２に示す。
【表２】
2020107009.tif 000005
【０１２４】
また、図２４は、試験２における学習の評価値の遷移を表すグラフを示す図である。
さらに、図２５は、実施例２の学習によって得られた個体情報の構造を示す図であり、図２６は、実施例２の学習によって得られた個体情報で用いられたノードの機能を示す図である。また、図２７は、参考例２の学習によって得られた個体情報の構造を示す図であり、図２８は、参考例２の学習によって得られた個体情報で用いられたノードの機能を示す図である。なお、個体情報の構造における四角の囲みはノードセットを示し、それぞれが１個の処理ノードである。
【０１２５】
図２１〜図２３において、「出力結果」に示された画像は、評価値が一番良い個体情報によるものが示されている。すなわち、これらの出力情報の出力に用いられた個体情報が、各実施例２及び参考例２において最終的に得られた（最適化された）個体情報である。
【０１２６】
まず、図２４を参照して進化の推移を確認すると、最終的に評価値は、実施例２の方が良い結果となった。また、実施例２は５００世代付近で、参考例２は３８００世代付近で進化が頭打ちしていることから、試験１と同様に、実施例２の方が効率的に進化したと推測される。
【０１２７】
さらに、図２３に示す検証結果において、参考例２はサンプルNo.1においてノイズに反応しており、No.5においては一部の特徴点（検出対象要素）を検出できていなかった。これに対して、実施例２は全サンプルにおいて参考例２よりも良い評価値が得られている（表２）。したがって、本実施形態の画像処理システムによれば、未知のデータに対しても検出対象要素の検出が可能であることが示唆される。
【０１２８】
ここで、試験１と試験２を比較すると、試験１では参考例２の学習用の画像No.7、9と検証用の画像のNo.4、5と、実施例２の学習用のNo.7において、出力画像にノイズが除去できておらずに出力されている。
これは、教師情報が検出対象要素の画像だけの場合、そのノイズの箇所を除去すると、検出対象要素の境界付近も併せて除去されてしまい、評価値が悪化するため、ノイズを除去するか、又は検出対象要素の境界付近を残すかというトレードオフの関係が生まれ、その結果として機械学習はノイズを除去するノード構造を生成できなかったと考えられる。
【０１２９】
これに対し、試験２では、教師情報として検出対象要素の個数を示す数値を補助的に用いたことで、ノイズなどの検出対象要素以外が検出された場合、明確に評価値を悪化させるものの、検出対象要素の境界付近が多少削られても評価値を悪化させることがない。このため、機械学習はノイズを除去するノード構造を生成できたと考えられる。
【０１３０】
さらに、試験２では、教師情報として検出対象要素の個数を示す数値を補助的に用いたことで、試験１に比べて進化が収束する速度が圧倒的に早くなっている。これは、初期の世代においては、ノイズが多い画像を出力する構造と、検出対象要素の付近を大まかに捉えている構造があると推測される。
教師情報として検出対象要素の画像のみを用い、個数を示す数値を用いない場合、機械学習は両方の構造を追いながら進化している二兎を追っている状態だと推測される一方で、教師情報として検出対象要素の個数を加えることで、ノイズが多い画像の評価値を悪化されるため、探索領域が制限されることにより進化が早く進んだと推測される。
【０１３１】
上記実施形態の画像処理システムは、本発明の画像処理プログラムに制御されたコンピュータを用いて実現することができる。画像処理システムにおけるコンピュータのＣＰＵは、画像処理プログラムにもとづいてコンピュータの各構成要素に指令を送り、画像処理システムの動作に必要となる所定の処理、例えば、個体生成処理、画像処理、評価値計算処理、遺伝子操作処理等を行わせる。このように、本発明の画像処理システムにおける各処理、動作は、プログラムとコンピュータとが協働した具体的手段により実現できるものである。
【０１３２】
プログラムは予めＲＯＭ，ＲＡＭ等の記録媒体に格納され、コンピュータに実装された記録媒体から当該コンピュータにプログラムを読み込ませて実行されるが、例えば通信回線を介してコンピュータに読み込ませることもできる。
また、プログラムを格納する記録媒体は、例えば半導体メモリ、磁気ディスク、光ディスク、その他任意のコンピュータで読取り可能な任意の記録手段により構成できる。
【０１３３】
以上説明したように、本発明の実施形態に係る画像処理システム、及び画像処理プログラムによれば、画像から検出対象を見つけ出す画像処理技術において画像処理をより最適化することが可能である。
【０１３４】
本発明は、以上の実施形態及び実施例に限定されるものではなく、本発明の範囲内において、種々の変更実施が可能であることは言うまでもない。
例えば、画像処理装置における各構成を複数の情報処理装置に分散して持たせたり、ノードとして実施例で用いたもの以外のものを含めて使用したりすることができる。
また、実施例では検出対象要素として画像内の欠陥を模擬した検出対象要素を用いたが、検出対象要素は画像であれば特に限定されず、例えば機械部品や細胞の画像、３Ｄキャドなどの立体画像等を対象とすることもできる。
【産業上の利用可能性】
【０１３５】
本発明は、設備や製品などの画像データにもとづき検査などを行う場合であって、画像処理が最適化された画像検査用の情報処理装置を得るために、好適に利用することが可能である。
【符号の説明】
【０１３６】
１，１ｃ  画像処理装置
１０，１０ｃ  機能単位記憶部
１１，１１ｃ  個体生成部
１２，１２ｃ  個体群記憶部
１２１ｃ  親個体群記憶部
１２２ｃ  子個体群記憶部
１３，１３ｃ  検査対象画像入力部
１４，１４ｃ  検査対象画像記憶部
１５，１５ｃ  良品画像入力部
１６，１６ｃ  良品画像記憶部
１７，１７ｃ  教師情報入力部
１８，１８ｃ  教師情報記憶部
１９，１９ｃ  画像処理部
２０，２０ｃ  出力情報記憶部
２１，２１ｃ  評価値計算部
２２，２２ｃ  評価結果記憶部
２３，２３ｃ  遺伝子操作部
【図１】
2020107009.tif 000006
【図２】
2020107009.tif 000007
【図３】
2020107009.tif 000008
【図４】
2020107009.tif 000009
【図５】
2020107009.tif 000010
【図６】
2020107009.tif 000011
【図７】
2020107009.tif 000012
【図８】
2020107009.tif 000013
【図９】
2020107009.tif 000014
【図１０】
2020107009.tif 000015
【図１１】
2020107009.tif 000016
【図１２】
2020107009.tif 000017
【図１３】
2020107009.tif 000018
【図１４】
2020107009.tif 000019
【図１５】
2020107009.tif 000020
【図１６】
2020107009.tif 000021
【図１７】
2020107009.tif 000022
【図１８】
2020107009.tif 000023
【図１９】
2020107009.tif 000024
【図２０】
2020107009.tif 000025
【図２１】
2020107009.tif 000026
【図２２】
2020107009.tif 000027
【図２３】
2020107009.tif 000028
【図２４】
2020107009.tif 000029
【図２５】
2020107009.tif 000030
【図２６】
2020107009.tif 000031
【図２７】
2020107009.tif 000032
【図２８】
2020107009.tif 000033