(57)【要約】【課題】高い検査精度の外観検査を短時間で実現する。【解決手段】色抽出部５は、正常状態の検査対象物を撮像したＲＧＢカラー画像について、ＲＧＢの各座標値を特徴量とする学習データを画素ごとに作成する。分類部２は、各学習データを競合学習型ニューラルネットワーク１に入力して学習させ、クラスタリングマップを作成する。学習後、分類部２は、競合学習型ニューラルネットワーク１に再度入力させた学習データごとに、クラスタリングマップ上の各ニューロンにおいてユークリッド距離を求め、各ニューロンについてユークリッド距離のリストを作成する。その後、分類部２は、各ニューロンについて、上記リストの最大値を分散とし、重みベクトルを平均ベクトルとして定義したガウス関数を設定する。その後、分類部２は、学習データごとに全ニューロンのガウス関数値総和を求め、全学習データに関するガウス関数値総和の最小値を下限閾値に設定する。【選択図】図１
2010008159.tif 000002
【特許請求の範囲】
【請求項１】
検査対象物を撮像したカラー画像である検査対象画像の各画素における色度座標の各座標値を用いて前記検査対象物の異常の有無を判定する外観検査処理方法であって、
正常状態の検査対象物を撮像したカラー画像である正常サンプル画像の画素ごとに色度座標の各座標値を特徴量とする学習データを作成し、各学習データを競合学習型ニューラルネットワークに入力して学習させ、当該競合学習型ニューラルネットワークの出力層のニューロンをカテゴリに対応付けているクラスタリングマップを作成し、
前記競合学習型ニューラルネットワークの学習後に、各学習データを当該競合学習型ニューラルネットワークに再度入力し、前記学習データごとに、前記クラスタリングマップ上の各ニューロンにおいて、前記学習データと重みベクトルとのユークリッド距離を求め、前記クラスタリングマップ上の各ニューロンに対して、各学習データと前記重みベクトルとから求めた複数のユークリッド距離により決定した分散、及び前記重みベクトルである平均値により定義したガウス関数を設定し、
前記クラスタリングマップ上の各ニューロンに対するガウス関数の設定後に、各学習データを前記競合学習型ニューラルネットワークに再度入力し、前記学習データごとに、前記クラスタリングマップ上の全てのニューロンのガウス関数値の総和を求め、全ての学習データに関する前記ガウス関数値の総和の分布から、正常画像であるための下限閾値を設定し、
その後、前記検査対象画像の画素ごとに色度座標の各座標値を特徴量とする検査データを作成し、各検査データを前記競合学習型ニューラルネットワークに入力し、
前記検査データごとに、当該検査データに関するガウス関数値の総和を求め、当該検査データに関するガウス関数値の総和が前記下限閾値未満である場合、当該検査データに対応する画素を異常判定画素とし、
前記検査対象画像における前記異常判定画素を用いた評価条件によって前記検査対象物の異常の有無を判定する
ことを特徴とする外観検査処理方法。
【請求項２】
前記評価条件は、前記検査対象画像における前記異常判定画素の総数が予め設定された基準値を超える場合に前記検査対象物が異常であると判定する条件であることを特徴とする請求項１記載の外観検査処理方法。
【請求項３】
前記評価条件は、前記検査対象画像上において前記異常判定画素が連結された領域の大きさが予め設定された基準値を超える場合に前記検査対象物が異常であると判定する条件であることを特徴とする請求項１記載の外観検査処理方法。
【請求項４】
前記評価条件は、前記学習データとして用いた正常サンプル画像とは異なる複数の正常サンプル画像の各画素における色度座標の各座標値を特徴とする入力データを作成し、各入力データを前記競合学習型ニューラルネットワークに入力し、前記入力データごとに、当該入力データに関するガウス関数値の総和を求め、前記入力データに関するガウス関数値の総和が前記下限閾値未満である場合、前記入力データに対応する画素を異常判定画素とし、各正常サンプル画像の異常判定画素の総数を求め、求めた異常判定画素の総数の最大値を求め、前記検査対象物の異常判定画素が前記最大値を超える場合に前記検査対象物が異常であると判定する条件であることを特徴とする請求項１記載の外観検査処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検査対象物を撮像した検査対象画像を用いて検査対象物の異常の有無を判定する外観検査処理方法に関するものである。
【背景技術】
【０００２】
検査対象物を撮像した検査対象画像を用いて検査対象物の異常の有無を判定する従来の外観検査処理方法として、検査対象画像から複数の特徴量を抽出し、抽出した複数の特徴量からなる検査データを学習済みのニューラルネットワークに入力データとして入力することによって、検査対象物が正常状態であるか否かを判定する方法が知られている（例えば、特許文献１参照）。従来の外観検査処理方法は、上記のような判定を行う前に、正常サンプルの画像及び異常サンプルの画像の両方から複数の特徴量を抽出し、抽出した複数の特徴量からなる学習データを複数作成する。その後、複数の学習データを学習前のニューラルネットワークに入力データとして入力して学習させている。
【０００３】
特許文献１の外観検査処理方法では、検査対象物の表面を撮影し、検査対象画像から他の領域とは異なって撮像された領域（例えば黒く撮像された領域）の大きさや方向、長さを特徴量として抽出し、抽出した特徴量を学習データとしてニューラルネットワークに入力する。
【特許文献１】特開平５−３３２７５４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の外観検査処理方法には、正常サンプルに比べて発生頻度が少ない異常サンプルの画像に関する学習データを必要とすることから、ニューラルネットワークの精度を短時間で高めることができず、検査精度を高めるのに時間を要するという問題があった。また、異常サンプル画像を擬似的に作成することは容易なことではない。
【０００５】
本発明は上記の点に鑑みて為されたものであり、その目的は、高い検査精度の外観検査を短時間で容易に実現することができる外観検査処理方法を提供することにある。
【課題を解決するための手段】
【０００６】
請求項１の発明は、検査対象物を撮像したカラー画像である検査対象画像の各画素における色度座標の各座標値を用いて前記検査対象物の異常の有無を判定する外観検査処理方法であって、正常状態の検査対象物を撮像したカラー画像である正常サンプル画像の画素ごとに色度座標の各座標値を特徴量とする学習データを作成し、各学習データを競合学習型ニューラルネットワークに入力して学習させ、当該競合学習型ニューラルネットワークの出力層のニューロンをカテゴリに対応付けているクラスタリングマップを作成し、前記競合学習型ニューラルネットワークの学習後に、各学習データを当該競合学習型ニューラルネットワークに再度入力し、前記学習データごとに、前記クラスタリングマップ上の各ニューロンにおいて、前記学習データと重みベクトルとのユークリッド距離を求め、前記クラスタリングマップ上の各ニューロンに対して、各学習データと前記重みベクトルとから求めた複数のユークリッド距離により決定した分散、及び前記重みベクトルである平均値により定義したガウス関数を設定し、前記クラスタリングマップ上の各ニューロンに対するガウス関数の設定後に、各学習データを前記競合学習型ニューラルネットワークに再度入力し、前記学習データごとに、前記クラスタリングマップ上の全てのニューロンのガウス関数値の総和を求め、全ての学習データに関する前記ガウス関数値の総和の分布から、正常画像であるための下限閾値を設定し、その後、前記検査対象画像の画素ごとに色度座標の各座標値を特徴量とする検査データを作成し、各検査データを前記競合学習型ニューラルネットワークに入力し、前記検査データごとに、当該検査データに関するガウス関数値の総和を求め、当該検査データに関するガウス関数値の総和が前記下限閾値未満である場合、当該検査データに対応する画素を異常判定画素とし、前記検査対象画像における前記異常判定画素を用いた評価条件によって前記検査対象物の異常の有無を判定することを特徴とする。
【０００７】
請求項２の発明は、請求項１の発明において、前記評価条件は、前記検査対象画像における前記異常判定画素の総数が予め設定された基準値を超える場合に前記検査対象物が異常であると判定する条件であることを特徴とする。
【０００８】
請求項３の発明は、請求項１の発明において、前記評価条件は、前記検査対象画像上において前記異常判定画素が連結された領域の大きさが予め設定された基準値を超える場合に前記検査対象物が異常であると判定する条件であることを特徴とする。
【０００９】
請求項４の発明は、請求項１の発明において、前記評価条件は、前記学習データとして用いた正常サンプル画像とは異なる複数の正常サンプル画像の各画素における色度座標の各座標値を特徴とする入力データを作成し、各入力データを前記競合学習型ニューラルネットワークに入力し、前記入力データごとに、当該入力データに関するガウス関数値の総和を求め、前記入力データに関するガウス関数値の総和が前記下限閾値未満である場合、前記入力データに対応する画素を異常判定画素とし、各正常サンプル画像の異常判定画素の総数を求め、求めた異常判定画素の総数の最大値を求め、前記検査対象物の異常判定画素が前記最大値を超える場合に前記検査対象物が異常であると判定する条件であることを特徴とする。
【発明の効果】
【００１０】
請求項１の発明によれば、正常サンプル画像を用いるのみで、例えば検査機に対して検査対象物の外観検査に関する検査パラメータを自動設定することができるので、操作者の熟練度合いや専門知識の有無に関係なく、複雑かつ高精度な外観検査を簡単に実現することができるとともに、操作者の主観によらず信頼性の高い外観検査を実現することができる。異常サンプル画像を擬似的に作成する必要もないため、高い検査精度の外観検査を容易に実現することができる。
【００１１】
請求項２の発明によれば、異常判定画素の総数によって検査対象物の異常を判定することによって、特に全体及び広範囲の領域が斑模様になっている検査対象物を精度よく異常と判定することができる。
【００１２】
請求項３の発明によれば、異常判定画素が連結された領域の大きさによって検査対象物の異常を判定することによって、特に一部分に傷や斑が発生している検査対象物を精度よく異常と判定することができる。
【００１３】
請求項４の発明によれば、学習データとして用いていない各正常サンプル画像における異常判定画素の総数の最大値を求めることによって、正常（良品）である検査対象物の範囲を明確にすることができるので、検査対象物の判定を精度よく行うことができる。
【発明を実施するための最良の形態】
【００１４】
（実施形態１）
本実施形態で説明する外観検査方法は、検査対象物を撮像したカラー画像である検査対象画像の各画素における色度座標の各座標値を用いて、検査対象物の異常の有無つまり検査対象物が良品であるか不良品であるかを判定する方法である。
【００１５】
まず、上記外観検査方法に用いられる外観検査装置の構成について図１を用いて説明する。この外観検査装置は、図１に示すように、分類部２に含まれる競合学習型ニューラルネットワーク１を用いて検査対象物の異常の有無つまり検査対象物が良品であるか不良品であるかを判定するものである。
【００１６】
競合学習型ニューラルネットワーク１は、図２に示すように、入力層１１の各ニューロンＮ１と出力層１２の各ニューロンＮ２とが相互に結合されており、入力層１１の各ニューロンＮ１に、入力データが入力される。
【００１７】
図１に示す分類部２は、競合学習型ニューラルネットワーク１とともに、クラスタ判定部３を含んでいる。分類部２の入力側には、画像入力部４と、色抽出部５とが設けられている。
【００１８】
画像入力部４は、検査対象物（図示せず）を撮像するカメラ部（図示せず）を備え、カメラ部で撮像されたＲＧＢカラー画像を色抽出部５に出力する。
【００１９】
色抽出部５は、画像入力部４から入力されたＲＧＢカラー画像の各画素におけるＲＧＢ色度座標から、赤を示すＲ座標値、緑を示すＧ座標値、及び青を示すＢ座標値を特徴量として抽出する。学習時において、色抽出部５は、抽出したＲ座標値、Ｇ座標値及びＢ座標値の組み合わせの学習データを画素ごとに作成する。各学習データは、競合学習型ニューラルネットワーク１に入力データとして入力される。これに対して、検査時においては、色抽出部５は、抽出したＲ座標値、Ｇ座標値及びＢ座標値の組み合わせの検査データを画素ごとに作成する。検査データは、競合学習型ニューラルネットワーク１に入力データとして入力される。なお、学習データは、予め収集されて学習データ記憶部６に記憶されているものを用いてもよい。
【００２０】
次に、本実施形態の外観検査方法について説明する。まず、図３（ａ）に示すように、分類部２において、クラスタ（カテゴリ）登録を行い、学習データを競合学習型ニューラルネットワーク１に入力して学習させる。競合学習型ニューラルネットワーク１の学習後に、クラスタリングマップ上の各ニューロンにガウス関数を設定する。
【００２１】
続いて、競合学習型ニューラルネットワーク１を学習させるまでの動作について詳細に説明する。まず、画像入力部４が、正常状態の検査対象物を撮像し、ＲＧＢカラー画像を正常サンプル画像として色抽出部５に出力する。色抽出部５は、画像入力部４からの正常サンプル画像の画素ごとに、学習データを作成する。その後、分類部２は、各学習データを競合学習型ニューラルネットワーク１に入力データとして入力して学習させ、競合学習型ニューラルネットワーク１の出力層１２の各ニューロンＮ２（図２参照）を正常カテゴリ（良品カテゴリ）又は未知のカテゴリの何れかに対応付けているクラスタリングマップを作成する。クラスタリングマップは、図１に示すマップ記憶部７に記憶される。
【００２２】
続いて、競合学習型ニューラルネットワーク１の学習後の動作について図４を用いて詳細に説明する。競合学習型ニューラルネットワーク１の学習後に（図４のＳ１）、分類部２は、各学習データを競合学習型ニューラルネットワーク１に再度入力し（Ｓ２）、学習データごとに、クラスタリングマップ上の各ニューロンにおいて、学習データと重みベクトルとのユークリッド距離を求める（計算する）（Ｓ３）。
【００２３】
その後、分類部２は、各ニューロンについて、各学習データと重みベクトルとから求めた複数のユークリッド距離のリストを作成する（Ｓ４）。その後、分類部２は、各ニューロンについて、複数のユークリッド距離のリストから最大値を選択し（Ｓ５）、選択したユークリッド距離の最大値を分散σとし、重みベクトルを平均ベクトル［ｍ］として定義したガウス関数を設定する（Ｓ６）。ガウス関数は、ｙ＝ｅｘｐ（−｜［ｘ］−［ｍ］｜２／２σ２）である。［ｘ］は、競合学習型ニューラルネットワーク１に入力される入力データを成分とする特徴ベクトルである。｜［ｘ］−［ｍ］｜は特徴ベクトル［ｘ］の平均ベクトル［ｍ］に対するユークリッド距離である。上記ガウス関数を各ニューロンに割り当てて正常サンプル画像の色分布を近似する。なお、ステップＳ５，Ｓ６において、複数のユークリッド距離のリストから最大値を選択するのではなく、全てのユークリッド距離のうち、大きいほうから数％（例えば上位５％）の順位に該当する値を選択し、選択した値を分散σとしてもよい。
【００２４】
各ニューロンのガウス関数の設定後に、分類部２は、各学習データを競合学習型ニューラルネットワーク１に再度入力し（Ｓ７）、学習データごとに、クラスタリングマップ上における全ニューロンのガウス関数の出力値ｙの総和（以下「ガウス関数値総和」という。）を求め（Ｓ８）、全ての学習データに関するガウス関数値総和のリストを作成する（Ｓ９）。その後、分類部２は、全ての学習データに関するガウス関数値総和のリストから最小値を選択し、選択したガウス関数値総和の最小値を、正常画像であるための下限閾値に設定する（Ｓ１０）。これにより、検査基準を生成することができる。なお、ステップＳ１０において、分類部２は、全ての学習データに関するガウス関数値総和のリストから最小値を選択するのでなく、全てのガウス関数値総和のうち下位１０％の値の平均値を求め、この平均値の５０％の値を下位閾値に設定してもよい。
【００２５】
次に、検査時の動作について図３（ｂ）を用いて説明する。まず、画像入力部４が、検査対象物を撮像し、ＲＧＢカラー画像を検査対象画像として色抽出部５に出力する。色抽出部５は、画像入力部４からの検査対象画像の画素ごとに、検査データを作成する。その後、分類部２は、各検査データを競合学習型ニューラルネットワーク１に入力データとして入力し、検査データごとに、クラスタリングマップ上の各ニューロンに設定されたガウス関数の出力値ｙを求め、さらに、検査データに関するガウス関数値総和を求める。その後、分類部２は、検査データに関するガウス関数値総和が下限閾値未満である場合、上記検査データに対応する画素を異常判定画素と判定する。
【００２６】
その後、分類部２は、異常判定画素の発生状態に応じて検査対象物の異常の有無を判定する。本実施形態の分類部２は、具体的に、１つの検査対象画像における異常判定画素の総数を計数し、計数した異常判定画素の総数が予め設定された基準値を超える場合に、検査対象物が異常（不良品）であると判定する。一方、計数した異常判定画素が上記基準値以下の場合、分類部２は、検査対象物が正常（良品）であると判定する。
【００２７】
本実施形態では、図５に示すように、ある検査データを競合学習型ニューラルネットワーク１に入力したときに、分類部２は、クラスタリングマップ上の各ニューロンの重みベクトルと検査データとのユークリッド距離を求めて、異なる正常カテゴリの領域Ｄに挟まれた領域Ｄ１に存在するニューロンＮ３が発火した場合、この検査データのカテゴリを未知とせずに正常カテゴリ（良品カテゴリ）であると判定する。つまり、分類部２は、検査データに対応する画素を正常画素と判定する。一方、領域Ｄ１の外側に位置するニューロンＮ４が発火した場合、分類部２は、検査データを未知のカテゴリと判定する。つまり、分類部２は、検査データに対応する画素を異常画素と判定する。
【００２８】
図１に示す分類部２で行われた検査対象物の判定結果は、分類部２から判定記憶部８に出力され、判定記憶部８に記憶される。判定記憶部８には、これまでの判定結果が全て記憶されている。
【００２９】
また、分類部２の判定結果は、分類部２から出力部９に伝送され、出力部９の表示画面に表示される。この出力部９の表示画面には、図６に示すように、検査対象画像と検査結果画像が並べて表示されるとともに、検査対象物が正常（良品）であるか異常（不良品）であるかの旨が表示される。検査対象物が良品である場合、図６（ａ）に示すように、良品検査画像及び良品検査結果画像が表示される。一方、検査対象物が不良品である場合、図６（ｂ）に示すように、不良品検査画像及び不良品検査結果画像が表示される。検査結果画像は、正常画素と異常画素とを区別できるように、正常画素を黒色、異常画素を白色というように色分けされて表示される。検査対象物が不良品である場合、図６（ｂ）に示すように、不良品検査画像中の緑色の色斑Ａ１、赤色の色斑Ａ２、青色の色斑Ａ３が、不良品検査結果画像において、それぞれ異常画素の集合Ｂ１，Ｂ２，Ｂ３として検出されている。
【００３０】
以上、本実施形態によれば、正常サンプル画像を用いるのみで、外観検査装置に対して検査対象物の外観検査に関する検査パラメータを自動設定することができるので、操作者の熟練度合いや専門知識の有無に関係なく、複雑かつ高精度な外観検査を簡単に実現することができるとともに、操作者の主観によらず信頼性の高い外観検査を実現することができる。異常サンプル画像を擬似的に作成する必要もないため、高い検査精度の外観検査を容易に実現することができる。
【００３１】
また、本実施形態によれば、異常判定画素の総数によって検査対象物の異常を判定することによって、特に全体及び広範囲の領域が斑模様になっている検査対象物を精度よく異常と判定することができる。
【００３２】
さらに、競合学習型ニューラルネットワーク１の入力データ（学習データ、検査データ）特徴量として、検査対象画像の各画素における色度座標の座標値を用いることによって、カラー画像に対する画像処理に一般的に用いられている色度座標の座標値を兼用することができるので、入力データの特徴量を抽出する手段を新たに設ける必要がない。
【００３３】
なお、実施形態１では、カラー画像としてＲＧＢカラー画像を用いているが、実施形態の変形例として、ＲＧＢカラー画像に代えて、例えばＹＣｂＣｒなど他の色空間の規格によるカラー画像を用いてもよい。ＹＣｂＣｒカラー画像の場合、色抽出部５は、ＹＣｂＣｒカラー画像の各画素における色度座標から、輝度を示すＹ座標値、青の差分信号を示すＣｂ座標値、及び赤の差分信号を示すＣｒ座標値を特徴量として抽出する。実施形態２〜４についても同様である。
【００３４】
（実施形態２）
実施形態２では、図１に示す分類部２が、検査対象画像上において異常判定画素が連結された領域の大きさが予め設定された基準値を超える場合に検査対象物が異常（不良品）であると判定する点で、実施形態１と相違する。なお、実施形態１と同様の構成要素については、同一の符号を付して説明を省略する。
【００３５】
本実施形態の分類部２は、検査対象画像の各画素に対応する検査データを入力するとともに、検査対象画像における各画素の位置情報を画像入力部４から色抽出部５を介して取得する。各画素の位置情報を取得した分類部２は、各画素に対応する検査データと位置情報との対応付けを行う。
【００３６】
その後、異常判定画素を判定した分類部２は、検査対象画像上における異常判定画素の位置を確認し、検査対象画像上における異常判定画素の連結領域の大きさを求め、求めた領域の大きさと基準値とを比較する。上記領域の大きさが基準値を超える場合、分類部２は、検査対象物が異常（不良品）であると判定する。これに対して、上記領域の大きさが基準値以下である場合、分類部２は、検査対象物が正常（良品）であると判定する。
【００３７】
以上、本実施形態によれば、異常判定画素が連結された領域の大きさによって検査対象物の異常を判定することによって、特に一部分に傷や斑が発生している検査対象物を精度よく異常と判定することができる。
【００３８】
（実施形態３）
実施形態３では、検査対象物の異常の有無を判定する際に、学習データとして用いた正常サンプル画像とは異なる複数の正常サンプル画像を用いる点で、実施形態１と相違する。なお、実施形態１と同様の構成要素については、同一の符号を付して説明を省略する。
【００３９】
本実施形態では、図１に示す色抽出部５が、検査対象画像の画素ごとに検査データを作成するとともに、学習データとして用いた正常サンプル画像とは異なる複数の正常サンプル画像の各画素におけるＲＧＢ色度座標のＲ座標値、Ｇ座標値及びＢ座標値を特徴とする入力データを作成する。
【００４０】
本実施形態の分類部２は、検査対象画像における異常判定画素の判定とは別に、各入力データを競合学習型ニューラルネットワーク１に入力し、入力データごとに、入力データに関するガウス関数値の総和を求める。上記入力データに関するガウス関数値の総和が下限閾値未満である場合、入力データに対応する画素を異常判定画素とし、各正常サンプル画像の異常判定画素の総数を求め、求めた異常判定画素の総数の最大値を求める。
【００４１】
その後、分類部２は、検査対象物の異常判定画素が上記最大値を超える場合に検査対象物が異常であると判定する。
【００４２】
以上、本実施形態によれば、学習データとして用いていない各正常サンプル画像における異常判定画素の総数の最大値を求めることによって、正常（良品）である検査対象物の範囲を明確にすることができるので、検査対象物の判定を精度よく行うことができる。
【図面の簡単な説明】
【００４３】
【図１】実施形態１〜３に係る外観検査装置の構成を示すブロック図である。
【図２】同上に係る競合学習型ニューラルネットワークの構成を示す図である。
【図３】同上に係る外観検査方法であって、（ａ）が学習時の流れを示す図、（ｂ）が検査時の流れを示す図である。
【図４】同上におけるガウス関数の設定を説明するためのフローチャートである。
【図５】同上における動作について説明する図である。
【図６】同上において、（ａ）が良品検査画像及び良品検査結果画像を示す図、（ｂ）が不良品検査画像及び不良品検査結果画像を示す図である。
【符号の説明】
【００４４】
１  競合学習型ニューラルネットワーク
２  分類部
５  色抽出部
【図１】
2010008159.tif 000003
【図２】
2010008159.tif 000004
【図３】
2010008159.tif 000005
【図４】
2010008159.tif 000006
【図５】
2010008159.tif 000007
【図６】
2010008159.tif 000008