(57)【特許請求の範囲】
【請求項１】
検査対象画像より抽出したワーク検査画像の周囲に、基準画像より抽出した複数の候補画像を配置して、整列画像を生成する生成手段と、
前記整列画像に対して、整列画像中の領域間の類似性を表すための類似領域検出処理を行う手段と、
前記類似領域検出処理が行われた後の前記整列画像に基づき、候補画像を選択しワーク基準画像として決定する決定手段と、
前記ワーク検査画像を前記ワーク基準画像と比較する比較手段と
を備える画像処理装置であって、
前記類似領域検出処理は、前記整列画像を所定の分割サイズおよび位相に従って分割して得られる複数の分割領域のそれぞれについて平均化処理を行った後、前記分割サイズおよび位相の少なくとも一方が互いに異なるようにして得られた前記平均化処理の結果を加算する処理を行うことを特徴とする画像処理装置。
【請求項２】
前記生成手段は、前記ワーク検査画像および前記ワーク基準画像に対し、カラー情報をモノクロ輝度信号に変換するモノクロ変換処理、および画像のエッジを抽出するエッジ抽出処理の少なくとも一方を実行した上で、前記整列画像を生成することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記生成手段は、前記基準画像の中の異なる位置に存在する複数の画像を抽出して、前記複数の候補画像とすることを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記生成手段は、前記基準画像より抽出した画像を異なる比率で拡大または縮小することによって、前記複数の候補画像を生成することを特徴とする請求項１または２に記載の画像処理装置。
【請求項５】
前記生成手段は、前記基準画像を異なる角度で回転させながら抽出した複数の画像を、前記複数の候補画像とすることを特徴とする請求項１または２に記載の画像処理装置。
【請求項６】
前記比較手段は、カラー情報に基づいて、前記ワーク検査画像を前記ワーク基準画像と比較することを特徴とする請求項１から５のいずれか１項に記載の画像処理装置。
【請求項７】
前記比較手段は、
前記ワーク検査画像の周囲に前記決定手段が決定した前記ワーク基準画像を配置して検査用整列画像を生成し、
前記検査用整列画像に対し特異部検出処理を行い、
前記特異部検出処理が行われた後の前記検査用整列画像に基づいて前記ワーク検査画像に特異部が存在するか否かを判断するものであって、
前記特異部検出処理は、前記検査用整列画像を所定の分割サイズおよび位相に従って分割して得られる複数の分割領域のそれぞれについて平均化処理を行った後、前記分割サイズおよび位相の少なくとも一方が互いに異なるようにして得られた前記平均化処理の結果を加算する処理を行った結果に基づいて前記特異部の存在を判断することを特徴とする請求項１から６のいずれか１項に記載の画像処理装置。
【請求項８】
前記比較手段は、パターンマッチング法を用いて前記ワーク検査画像を前記ワーク基準画像と比較することを特徴とする請求項１から７のいずれか１項に記載の画像処理装置。
【請求項９】
前記決定手段は、前記複数の候補画像のうち前記ワーク検査画像に最も類似する候補画像を前記ワーク基準画像として決定することを特徴とする請求項１から８のいずれか１項に記載の画像処理装置。
【請求項１０】
対象物を読み取ることにより前記検査対象画像を取得する読み取り手段を更に備えることを特徴とする請求項１から９のいずれか１項に記載の画像処理装置。
【請求項１１】
検査対象画像より抽出したワーク検査画像の周囲に、基準画像より抽出した複数の候補画像を配置して、整列画像を生成する生成工程と、
前記整列画像に対して、整列画像中の領域間の類似性を表すための類似領域検出処理を行う工程と、
前記類似領域検出処理が行われた後の前記整列画像に基づき、候補画像を選択しワーク基準画像として決定する決定工程と、
前記ワーク検査画像を前記ワーク基準画像と比較する比較工程と
を有する画像処理方法であって、
前記類似領域検出処理は、前記整列画像を所定の分割サイズおよび位相に従って分割して得られる複数の分割領域のそれぞれについて平均化処理を行った後、前記分割サイズおよび位相の少なくとも一方が互いに異なるようにして得られた前記平均化処理の結果を加算する処理を行うことを特徴とする画像処理方法。
【請求項１２】
前記生成工程は、前記ワーク検査画像および前記ワーク基準画像に対し、カラー情報をモノクロ輝度信号に変換するモノクロ変換処理、および画像のエッジを抽出するエッジ抽出処理の少なくとも一方を実行した上で、前記整列画像を生成することを特徴とする請求項１１に記載の画像処理方法。
【請求項１３】
前記生成工程は、前記基準画像の中の異なる位置に存在する複数の画像を抽出して、前記複数の候補画像とすることを特徴とする請求項１１または１２に記載の画像処理方法。
【請求項１４】
前記生成工程は、前記基準画像より抽出した画像を異なる比率で拡大または縮小することによって、前記複数の候補画像を生成することを特徴とする請求項１１または１２に記載の画像処理方法。
【請求項１５】
前記生成工程は、前記基準画像を異なる角度で回転させながら抽出した複数の画像を、前記複数の候補画像とすることを特徴とする請求項１１または１２に記載の画像処理方法。
【請求項１６】
前記比較工程は、カラー情報に基づいて、前記ワーク検査画像を前記ワーク基準画像と比較することを特徴とする請求項１１から１５のいずれか１項に記載の画像処理方法。
【請求項１７】
前記比較工程は、
前記ワーク検査画像の周囲に前記決定工程が決定した前記ワーク基準画像を配置して検査用整列画像を生成し、
前記検査用整列画像に対し特異部検出処理を行い、
前記特異部検出処理が行われた後の前記検査用整列画像に基づいて前記ワーク検査画像に特異部が存在するか否かを判断するものであって、
前記特異部検出処理は、前記検査用整列画像を所定の分割サイズおよび位相に従って分割して得られる複数の分割領域のそれぞれについて平均化処理を行った後、前記分割サイズおよび位相の少なくとも一方が互いに異なるようにして得られた前記平均化処理の結果を加算する処理を行った結果に基づいて前記特異部の存在を判断することを特徴とする請求項１１から１６のいずれか１項に記載の画像処理方法。
【請求項１８】
前記比較工程は、パターンマッチング法を用いて前記ワーク検査画像を前記ワーク基準画像と比較することを特徴とする請求項１１から１７のいずれか１項に記載の画像処理方法。
【請求項１９】
前記決定工程は、前記複数の候補画像のうち前記ワーク検査画像に最も類似する候補画像を前記ワーク基準画像として決定することを特徴とする請求項１１から１８のいずれか１項に記載の画像処理方法。
【請求項２０】
対象物を読み取ることにより前記検査対象画像を取得する読み取り工程を更に有することを特徴とする請求項１１から１９のいずれか１項に記載の画像処理方法。
【請求項２１】
請求項１１から２０のいずれか１項に記載の画像処理方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は検査対象画像を基準画像と比較するための画像処理装置および画像処理方法に関する。
【背景技術】
【０００２】
特許文献１には、検査対象物の欠陥を人の視覚メカニズムに準じて検出するためのアルゴリズムが開示されている。以下、特許文献１に開示されている処理を、本明細書では周辺視・固視微動処理と称す。周辺視・固視微動処理を採用することにより、検査対象物の欠陥を、人間の注視を伴うことなく効率的に検出したり顕在化したりすることが可能となる。
【０００３】
一方、非特許文献１には、複数の対象物の中から不良品を検出するために、複数の対象物それぞれについて検査対象領域を撮影し、得られた画像をつなぎ合わせて整列画像を生成し、当該整列画像に対し上記周辺視・固視微動処理を行う方法が開示されている。上記非特許文献を採用することにより、複数の対象物の中から他とは異なる特異部（欠陥）のあるものを、比較的簡易に検出することができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−１８５８６２号公報
【非特許文献】
【０００５】
【非特許文献１】「実部品による「傷の気付き」処理の性能検証」ビジョン技術の実利用ワークショップ講演論文集  （ＶｉＥＷ２０１３）、ＯＳ４−Ｈ４（ＩＳ２−Ａ４）、精密工学会、（２０１３）
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、製造ラインにおいて連続搬送される複数の対象物を、固定したカメラを用いて順番に検査する場合、カメラによる撮影領域には、対象物ごとにどうしてもある程度のずれが生じる。そして、このようなずれを含んだ状態で非特許文献１を採用すると、実際に対象物に存在する傷によっても、上記のような画像間のズレによっても、周辺視・固視微動処理においては特異部が検出され、結果的に検査精度を低下させてしまう場合があった。
【０００７】
本発明は、上記問題点を解決するためになされたものである。よってその目的とするところは、対象物を撮影して得られた画像領域のズレの影響を抑え、対象物に対する高精度な検査を実現可能な画像処理装置を提供することである。
【課題を解決するための手段】
【０００８】
そのために本発明は、検査対象画像より抽出したワーク検査画像の周囲に、基準画像より抽出した複数の候補画像を配置して、整列画像を生成する生成手段と、前記整列画像に対して、整列画像中の領域間の類似性を表すための類似領域検出処理を行う手段と、前記類似領域検出処理が行われた後の前記整列画像に基づき、候補画像を選択しワーク基準画像として決定する決定手段と、前記ワーク検査画像を前記ワーク基準画像と比較する比較手段とを備える画像処理装置であって、前記類似領域検出処理は、前記整列画像を所定の分割サイズおよび位相に従って分割して得られる複数の分割領域のそれぞれについて平均化処理を行った後、前記分割サイズおよび位相の少なくとも一方が互いに異なるようにして得られた前記平均化処理の結果を加算する処理を行うことを特徴とする。
【発明の効果】
【０００９】
本発明によれば、基準画像に対する検査対象画像のズレの影響を抑え、検査対象画像に対し高精度な検査を実現することが出来る。
【図面の簡単な説明】
【００１０】
【図１】本発明で使用可能な検査システムの概略図である。
【図２】（ａ）および（ｂ）は、特異部検出アルゴリズムのフローチャートである。
【図３】（ａ）および（ｂ）はワーク検査画像とワーク候補画像の抽出を示す図である。
【図４】整列画像の整列状態を示す図である。
【図５】類似領域検出処理の詳細を説明するためのフローチャートである。
【図６】（ａ）および（ｂ）は、処理対象画像の分割例を示す図である。
【図７】加算処理の過程を模式的に示した図である。
【図８】（ａ）〜（ｃ）は、拡張処理を説明するための図である。
【図９】（ａ）および（ｂ）は、整列画像と類似領域検出処理を行った結果の図である。
【図１０】検査対象画像と基準画像の相対的なずれを示す図である。
【図１１】基準画像より抽出される複数のワーク候補画像の基点を示す図である。
【図１２】（ａ）および（ｂ）は、特異部検出処理を行った結果を示す図である。
【図１３】（ａ）および（ｂ）は、ワーク候補画像を抽出する別方法を示す図である。
【発明を実施するための形態】
【００１１】
図１は、本発明で使用可能な検査システムの概略図である。本システムは、主として、画像処理装置２００と、シート状の複数の検査対象物Ｐと、個々の対象物Ｐの所定位置を撮影するためのカメラ１０１で構成されている。複数の対象物Ｐは矢印の方向に一定の速度で搬送され、画像処理装置２００は、対象物Ｐを撮影して得られる画像に基づいて、対象物Ｐの欠陥（特異部）を検出する。
【００１２】
ＣＰＵ２０１は、ＨＤＤ２０３に保持されているプログラムに従って、ＲＡＭ２０２をワークエリアとしながら、システム全体を制御する。例えばＣＰＵ２０１は、カメラＩ／Ｆ（インターフェース）２０４を介して接続されたカメラ１０１を制御して、搬送される対象物Ｐのそれぞれを撮影し、それぞれに対応する画像を得る。この際、ＣＰＵ２０１は、個々の対象物Ｐの検査対象領域１０５がカメラ１０１の撮影領域に配置されたタイミングと、搬送速度に応じた周期で撮影を繰り返し、得られた画像を逐次ＲＡＭ２０２に格納する。搬送の誤差などにより、個々の検査対象領域１０５に対する撮影領域にズレが生じるような場合は、対象物Ｐにあらかじめ基準点となるようなパターンなどを記録しておき、パターンの検出を基準として、撮影のタイミングを設定するようにしても良い。なお、カメラ１０１とカメラＩ／Ｆとの接続方式としては、ＣａｍｅｒａＬｉｎｋ、ＵＳＢ、ＩＥＥＥ１３９４、ＬＡＮ等を用いることができる。また、図では、カメラ１０１を用いた構成としているが、カメラ１０１の変わりにラインセンサを備えたスキャナを用いることもできる。更に、図ではカメラ１０１による１回の撮影動作で撮影可能な領域が、シートＰの検査対象領域１０５と同等である場合を示している。しかし、撮影可能領域が検査対象領域１０５よりも小さい場合には、１つのシートＰに対し複数回の撮影動作を行っても良い。
【００１３】
キーボード・マウスＩ／Ｆ  ２０５は、不図示のキーボードやマウス等のＨＩＤ（Ｈｕｍａｎ  Ｉｎｔｅｒｆａｃｅ  Ｄｅｖｉｃｅ）を制御するＩ／Ｆである。オペレータは、キーボード・マウスＩ／Ｆ  ２０５を介して、検査に係る情報を入力することができる。ディスプレイＩ／Ｆ  ２０６は、不図示のディスプレイにおける表示を制御するＩ／Ｆである。オペレータは、ディスプレイＩ／Ｆ  ２０６を介して、検査の状態や結果などを確認することができる。
【００１４】
図２（ａ）および（ｂ）は、ＣＰＵ２０１が実行する本実施形態の特異部検出アルゴリズムを説明するためのフローチャートである。本処理は、撮影された画像の位置調整を行うための第１処理と、位置調整された画像を用いて特異部検出処理を行うための第２処理で構成される。以下、順番に説明する。
【００１５】
図２（ａ）は、第１処理を示すフローチャートである。本処理が開始されると、ＣＰＵ２０１は、ステップＳ１０１において、基準画像３０１を取得する。基準画像３０１とは、検査対象画像と比較することによって、検査対象画像に特異部が存在するか否かを判断するための画像である。基準画像３０１はＲＧＢ信号値を有する複数の画素で構成されおり、ＰＤＦなどの形式で予めＲＯＭなどに記憶されているものとする。
【００１６】
ステップＳ１０２において、ＣＰＵ２０１は検査対象画像３０２を取得する。すなわち、検査の対象となる対象物Ｐの検査対象領域１０５をカメラ１０１で撮影し、得られた画像を検査対象画像３０２とする。本実施形態の検査対象画像３０２は、レッドＲ、グリーンＧ、ブルーＢの３成分からなる２５６階調の輝度信号を有する複数の画素で構成されているものとする。
【００１７】
続くステップＳ１０３において、ＣＰＵ２０１は検査対象画像３０２に対する前処理を行う。具体的には、ＲＧＢ信号をモノクロ輝度信号に変換するモノクロ変換処理や、エッジ抽出処理を行う。モノクロ変換処理としては、例えば下式を採用することができる。
Ｉ＝０．３×Ｒ＋０．６×Ｇ＋０．１×Ｂ  
エッジ抽出処理としては、ソーベルフィルタ、ラプラシアンフィルタなどを用いることができる。
【００１８】
ステップＳ１０４において、ＣＰＵ２０１はステップＳ１０３で補正した検査対象画像３０２を、所定のワーク画像サイズに従って抽出し、ワーク検査画像３０３を得る。また、ステップＳ１０５では、ステップＳ１０１で取得した基準画像３０１を、同じく所定のワーク画像サイズに従って抽出し、ワーク候補画像３０４を得る。この際、ワーク候補画像３０４は、基準画像３０１の中から複数抽出する。
【００１９】
図３（ａ）および（ｂ）は、ワーク検査画像３０３およびワーク候補画像３０４を抽出する様子を示す図である。図３（ａ）は、ワーク検査画像３０３を検査対象画像３０２の座標（ｘ0、ｙ0）より抽出する様子を示している。一方、図３（ｂ）は、抽出されたワーク検査画像３０３の座標（ｘ0、ｙ0）を基準として、基準画像３０１から複数のワーク候補画像３０４を抽出する様子を示す図である。本例では、基準画像３０１の座標（ｘ0、ｙ0）を中心とする位置から所定量ずつシフトした位置より、ワーク検査画像３０３と等しい大きさを有する複数の画像を抽出し、これをワーク候補画像とする。すなわち、ワーク候補画像の座標は、変数α、βを用いて（ｘ0＋α、ｙ0＋β）と表すことができる。図３（ｂ）では、２つのワーク候補画像３０４ａおよび３０４ｂを示しているが、ステップＳ１０５では、（ｘ0、ｙ0）を含む８位置からワーク候補画像を抽出するものとする。
【００２０】
続くステップＳ１０６では、これら複数のワーク候補画像のそれぞれについて、ステップＳ１０３と同様の前処理を行う。これにより、モノクロ輝度信号で構成される１つのワーク検査画像３０３と、当該画像と同じ大きさを有し同じくモノクロ輝度信号で構成される、８つのワーク候補画像３０４ａ〜３０４ｈが用意される。ステップＳ１０７において、ＣＰＵ２０１は、ワーク検査画像３０３とワーク候補画像３０４ａ〜３０４ｈを整列させて整列画像４０１を生成する。
【００２１】
図４は、整列画像４０１の整列状態を示す図である。整列画像４０１は、１つのワーク検査画像３０３の８方位に、８つのワーク候補画像３０４ａ〜３０４ｈを隣接配置して構成される。この際、整列画像４０１における８つのワーク候補画像３０４ａ〜３０４ｈのそれぞれの配置位置は特に限定されるものではない。ワーク候補画像３０４ａ〜３０４ｈのそれぞれについて、基準画像３０１における位置（座標）と整列画像４０１における配置位置が対応づけられていればよい。
【００２２】
ステップＳ１０８において、ＣＰＵ２０１は、ステップＳ１０６で生成された整列画像４０１に対し、周辺視・固視微動処理を利用した類似領域検出処理を実行する。本処理の具体的な方法については後に詳しく説明する。
【００２３】
ステップＳ１０９では、ステップＳ１０８での類似領域検出処理の結果画像に基づいてワーク基準画像３０５を決定する。具体的には、ステップＳ１０８の類似領域検出処理が施された後の画像を検査することにより、ステップＳ１０７で配置した８つのワーク候補画像の中からワーク検査画像に最も近い１つを選択し、これをワーク基準画像３０５として決定する。
【００２４】
ステップＳ１１０では、ステップＳ１０２で取得した検査対象画像３０２の中に、ワーク検査画像を抽出すべき領域がまだ残っているか否かを判断する。残っていると判断した場合、次のワーク検査画像を抽出するためにステップＳ１０４に戻る。一方、検査対象画像３０２の中にワーク検査画像を抽出すべき領域は残っていない場合は、第２の処理に進む。
【００２５】
図５は、ステップＳ１０８で実行する類似領域検出処理の詳細を説明するためのフローチャートである。本処理が開始されると、ＣＰＵ２０１は、先ずステップＳ１０において、ステップＳ１０７で生成した整列画像４０１の全域に対して周辺視・固視微動処理が正常に行えるよう、整列画像４０１に拡張処理を施し処理対象画像１００１を生成する。拡張処理については後に詳しく説明する。
【００２６】
続くステップＳ１１において、ＣＰＵ２０１は、予め用意された複数の分割サイズの中から、一つの分割サイズを設定する。また、ステップＳ１２では、ステップＳ１１で設定された分割サイズに対応づけて予め用意されている複数の位相の中から、一つの位相を設定する。複数の分割サイズもこれに対応づけられた複数の位相も、ステップＳ１０４で抽出するワーク検査画像のサイズに準じて予め用意されている。本実施形態の場合、処理の特性上、分割サイズはワーク画像サイズと同等のサイズ、またはワーク画像サイズに対し±１０％程度のサイズが用意されている。
【００２７】
図６（ａ）および（ｂ）は、分割サイズと位相に基づく処理対象画像１００１の分割例を示す図である。図６（ａ）は、分割サイズを２×２画素とした場合、図６（ｂ）は分割サイズを３×２画素とした場合を夫々示している。図６（ａ）に示すように分割サイズ１０００を２×２画素とした場合、処理対象画像１００１は２×２画素の単位で分割されるが、その分け方は１００２〜１００４の４通りが可能である。図６（ｂ）に示すように分割サイズ１００５を３×２画素とした場合、処理対象画像１００１の分け方は１００６〜１０１１の６通りが可能であり、６つの位相が存在する。一般に、Ｘ方向にＳｘ画素、Ｙ方向にＳｙ画素の領域を有する分割領域の場合、位相の数はＳｘ×Ｓｙ個となる。周辺視・固視微動処理では、この位相を順次変更しながら、それぞれの分割領域の平均化、量子化、および加算を行う。
【００２８】
図５に戻る。ステップＳ１３では、ステップＳ１１で設定された分割サイズとステップＳ１２で設定された位相に基づいて、ステップＳ１０で生成した処理対象画像１００１を図６（ａ）や（ｂ）のように分割し、分割領域ごとに平均化処理を行う。具体的には、分割された各領域に含まれる複数の画素について、個々の画素が有するモノクロ輝度信号Ｉ´の平均値を求める。
【００２９】
ステップＳ１４では、ステップＳ１３で求めた各分割領域の平均値を画素ごとに量子化する。具体的には、例えば処理対象画像１００１全体の輝度の中央値を閾値とし、当該閾値と個々の平均値を比較して、１または０の値を出力する。なお、本実施形態では２値化処理としているが、３値化以上の量子化処理とすることもできる。
【００３０】
ステップＳ１５では、ステップＳ１４で得られた量子化値を加算画像データに加算する。加算画像データは、分割サイズと位相を異ならせた場合の夫々で得られる量子化値を加算した結果を示す画像データで、初期値は０である。ステップＳ１４で得られた量子化データが最初の分割サイズの最初の位相である場合、ステップＳ１５で得られる加算画像データはステップＳ１４で得られる量子化データと等しくなる。
【００３１】
続くステップＳ１６において、ＣＰＵ２０１は、現在設定されている分割サイズに対する総ての位相についての処理が完了したか否かを判断する。未だ処理すべき位相が残っていると判断した場合、ステップＳ１２に戻り次の位相を設定する。一方、総ての位相について処理が完了したと判断した場合はＳ１７に進む。
【００３２】
図７は、ステップＳ１１で設定された分割サイズが図６（ａ）に示した２×２画素の場合において、ステップＳ１５の加算処理を総ての位相について順番に行う過程を説明する図である。分割サイズが２×２画素の場合、図６（ａ）でも説明したように位相は４つ存在する。図７に示される数字は、これら４つの位相を順番に変えていく過程で、注目画素Ｐｘの加算処理のために周辺画素の２値データが利用される加算回数を画素ごとに示している。図７に示すように、注目画素Ｐｘについては、自身が分割領域内に含まれる総ての位相について利用されるので加算回数は最も多く、加算結果への寄与が最も大きい。また、注目画素Ｐｘから離れる画素ほど加算回数は少なくなり、加算結果への寄与も少なくなる。
【００３３】
図５のフローチャートに戻る。ステップＳ１７において、ＣＰＵ２０１は予め用意されている全ての分割サイズについての処理が完了したか否かを判断する。未だ、処理すべき分割サイズが残っていると判断した場合、ステップＳ１１に戻り次の分割サイズを設定する。一方、全ての分割サイズについて処理が完了したと判断した場合は本処理を終了し、図２（ａ）のフローチャートに戻る。
【００３４】
ここで、ステップＳ１０で実行する拡張処理について説明する。図７にて説明したように、本実施形態の周辺視・固視微動処理では、注目画素Ｐｘを中心に移動する分割領域に含まれる全画素の平均値に基づいて加算データを算出する。このため、処理対象画像１００１の端部に位置する注目画素については、分割領域の中にデータの存在しない領域が含まれ、正常な処理を行うことが出来なくなってしまう。
【００３５】
但し、本実施形態のステップＳ１０９では、ワーク検査画像３０３における処理の結果と、その周囲に配置されるワーク候補画像３０４における処理の結果を比較することが出来れば良い。そしてそのためには、ステップＳ１２〜Ｓ１７の周辺視・固視微動処理が整列画像４０１の全域に対して正常に行われれば良い。つまり、本実施形態の拡張処理Ｓ１０では、整列画像４０１の全域にわたる周辺視・固視微動処理を正常に行うために必要な領域を、整列画像４０１の更に周辺に追加する。
【００３６】
図８（ａ）〜（ｃ）は、ステップＳ１０で実行する拡張処理を説明するための図である。図において、整列画像４０１に相当する領域は斜線で示している。図８（ａ）に示すように、注目画素Ｐｘが検査対象領域の角に位置する場合、注目画素Ｐｘを中心とした分割領域（実線）においても、そこから位相をずらした分割領域（点線）においても、分割領域にはデータの存在しない領域（白領域）が含まれてしまう。このため、ステップＳ１０の拡張処理では、角に位置する画素Ｐｘに対し、最大の分割サイズで最大の位相とした場合であっても分割領域に含まれる総ての画素に相応なデータが存在するように、当該領域にダミーデータを追加する。
【００３７】
図８（ｂ）は、ダミーデータの生成方法を示す図である。整列画像の頂点Ａ、Ｂ、Ｃ、Ｄのそれぞれについて点対象に反転した４つ画像と、辺ＡＢ、ＢＣ、ＣＤ、ＤＡのそれぞれについて線対称に反転した４つの画像を生成し、これら８つの画像で整列画像を囲む。本実施形態では、このようにして作成されたＡ´Ｂ´Ｃ´Ｄ´で囲まれた領域を処理対象画像１００１とすることも出来る。但し、負荷の軽減を考慮すると、処理対象画像のサイズはなるべく小さいほうが好ましい。例えば、周辺視・固視微動処理における最大の分割サイズを（Ｓｘ、Ｓｙ）、最大の移動距離を（Ｋｘ、Ｋｙ）としたとき、ダミーデータはＸ方向にＦｐ＝（Ｓｘ／２）＋Ｋｘ、Ｙ方向にＦｑ＝（Ｓｙ／２）＋Ｋｙだけ拡張した領域まで生成されればよい。図８（ｃ）は、このようにしてダミーデータが付加された処理対象画像１００１を示している。
【００３８】
図９（ａ）および（ｂ）は、図２（ａ）で説明した第１処理を実行した場合の処理の様子を具体的に示す図である。図９（ａ）は、ステップＳ１０７で生成された整列画像４０１の一例を示し、図９（ｂ）はこの整列画像４０１に対しステップＳ１０８で類似領域検出処理を施した結果画像を示している。
【００３９】
図９（ａ）に示す整列画像４０１では、ワーク検査画像３０３の周囲に、複数のワーク候補画像３０４ａ〜３０４ｈが配置している。ここでは、ワーク検査画像３０３の真上に位置するワーク候補画像３０４ｂが、ワーク検査画像３０３と最も類似している状態を示している。このような画像に対し、ステップＳ１０８にて類似領域検出処理を行うと、図９（ｂ）のような結果が得られる。本処理の場合、明度が高い（明るい）ほど個々のワーク領域の画像がワーク検査領域の画像に類似している（同じ特徴を有している）ことを意味する。図９（ａ）の整列画像４０１では、ワーク検査画像３０３が配置された中央部の明度が最も高く一様であるが、その次にはワーク候補画像３０４ｂが配置された位置の明度が高く且つ一様である。ステップＳ１０８において、ＣＰＵ２０１は、このような画像結果を精査し、ワーク候補画像３０４ａ〜３０４ｈの中からワーク検査画像に最も類似しているワーク候補画像３０４ｂを選択し、これをワーク基準画像３０５として設定する。
【００４０】
図１０は、ステップＳ１０２で取得した検査対象画像３０２と、ステップＳ１０１で取得される基準画像３０１の相対的なずれを示す図である。図では、検査対象画像３０２およびこの検査対象画像３０２から抽出されるワーク検査画像３０３を実線で示している。また、夫々のワーク検査画像３０３に相当する基準画像３０１内の領域を点線で示している。
【００４１】
図１０において、検査対象画像３０２における座標５０１と基準画像３０１における座標５０１は、一致している。このため、座標５０１を基点とするワーク検査画像と、座標５０１を基点として抽出されたワーク候補画像の間には、ほとんどズレが存在しない。しかし、座標５０２を基点とするワーク検査画像と、座標５０８を基点として抽出されるワーク候補画像の間には、僅かなズレが生じている。そして、図１０で示す範囲においては、座標５０６を基点とするワーク検査画像３０３と、座標５１２を基点として抽出されたワーク候補画像の間のズレが最も大きくなっている。
【００４２】
図１１は、このようなずれが発生している場合に、ステップＳ１０５において、基準画像３０１より抽出される複数のワーク候補画像のそれぞれの基点を示す図である。検査対象画像３０２におけるワーク検査画像３０３の基点ｐと、基準画像３０１におけるワーク候補画像３０４ａの基点ｑにズレが存在する状態を示している。このような状況においても、図のように、基点ｑを中心とした複数の基点を用意すれば、その中にはワーク検査画像３０３の基点ｐにより近いものも存在する。
【００４３】
本実施形態では、これら複数の基点に合わせて平行移動させた複数の領域をワーク候補画像として抽出し、図４で説明したようにワーク検査画像の周囲に配置して、整列画像４０１を生成する。さらに、当該画像に対し上述した類似領域検出処理を行うことにより、ワーク検査画像３０３に最も類似する（すなわちワーク検査画像に相当する）ワーク候補画像を配置した箇所で明度が最も高く且つ一様になるような画像が得られる。
【００４４】
そして、以上のようなＳ１０２〜Ｓ１１０の処理を、図１０に示すように所定の方向に配列するワーク検査画像のそれぞれについて行っていくことにより、ワーク検査画像３０３のそれぞれに対し、適切なワーク基準画像３０５を対応づけることができる。ＣＰＵ２０１は、複数のワーク検査画像３０３のそれぞれについて、基準画像３０１よりワーク基準画像３０５を抽出するべき座標を記憶した後、第２処理に移行する。
【００４５】
以下、本実施形態の第２処理について、図２（ｂ）を参照しながら説明する。本処理が開始されると、ＣＰＵ２０１は、ステップＳ１１１において、ステップＳ１０２で取得した検査対象画像３０２の中から、改めてワーク検査画像３０３を抽出する。この段階で抽出されるワーク検査画像３０３は、ステップＳ１０４で抽出されたワーク検査画像３０３と、検査対象画像３０２の同じ座標を有する。但し、ステップＳ１０４で抽出されたワーク検査画像３０３とは異なり、色情報を有している。
【００４６】
ステップＳ１１２では、ステップＳ１１１で抽出されたワーク検査画像３０３に対応するワーク基準画像３０５を抽出する。具体的には、第１処理のステップＳ１０９で記憶された座標情報を参照し、ステップＳ１１２で抽出されたワーク検査画像３０３に対応する座標に基づいた領域を基準画像３０１より抽出し、これをワーク基準画像３０５とする。
【００４７】
続くステップＳ１１３において、ＣＰＵ２０１は、ワーク基準画像３０５に対し所定の補正処理を行う。本処理は、この後ステップＳ１１５で実行する特異部検出処理に整合させるための処理である。例えば、特異部検出処理が色の変位を検出したい場合は、明るさ補正やカラーマッチング処理を行って基準画像として期待される色に調整する。また、色差の許容範囲が予め定義されている場合は、最大の色差を有する複数の補正画像を生成しても良い。
【００４８】
ステップＳ１１４において、ＣＰＵ２０１は、ステップＳ１１１で得られたワーク検査画像３０３と、ステップＳ１１３で補正されたワーク基準画像３０５を整列させて検査用整列画像３０７を生成する。検査用整列画像３０７は、１つのワーク検査画像３０３の８方位に、同じワーク基準画像３０５を隣接配置させることにより生成される。更に、ステップＳ１１５において、ＣＰＵ２０１は、ステップＳ１１４で生成された検査用整列画像３０７に対し、周辺視・固視微動処理を利用した特異部検出処理を行う。なお、ステップＳ１１４およびＳ１１５の特異部検出処理は、ステップＳ１１３で複数の補正画像を生成している場合には、これら複数の画像ごとに行うことも出来る。また、複数の補正画像を混在させて検査用整列画像を生成し、当該検査用整列画像に対し特異部検出処理を行うことも出来る。
【００４９】
図１２（ａ）および（ｂ）は、検査用整列画像３０７の一例と当該画像に対し、特異部検出処理を行った結果を示す図である。図１２（ａ）に見るように、検査用整列画像３０７において、ワーク検査画像３０３の８方位に配置されるワーク基準画像３０５は、第１処理において複数のワーク候補画像より、ワーク検査画像に最も類似する画像として選出された画像である。なお、図では、ワーク検査画像３０３に傷１２０が存在する状態を示している。
【００５０】
ワーク検査画像３０３に傷などが存在しない場合、ワーク検査画像３０３とワーク基準画像３０５とは類似し、特異部検出処理後の画像は一様性が高い画像となる。しかし、ワーク検査画像３０３に図１２（ａ）に見るような傷１２０が存在すると、ワーク検査画像３０３とワーク基準画像３０５との類似性は低くなる。このため、特異部検出処理後の画像は図１２（ｂ）に見るように、ワーク検査画像３０３に相当する領域に特異部が見られるようになる。
【００５１】
図２（ｂ）に戻る。ステップＳ１１５にて特異部検出処理が終了すると、ＣＰＵ２０１はステップＳ１１６に進み、検査対象画像３０２の中に、未だ処理を行っていないワーク検査画像が残っているか否かを判断する。まだ残っていると判断した場合、次のワーク対象画像についての処理を行うためにステップＳ１１１に戻る。一方、検査対象画像３０２の中に未処理のワーク検査画像は残っていない場合は、検査対象画像３０２全域について特異部検出処理は終了したと判断し、ステップＳ１１７に進む。
【００５２】
ステップＳ１１７では、複数のワーク検査画像についての特異部検出処理の結果に基づいて、検査後処理を行う。検査後処理の内容は特に限定されるものではないが、例えば、オペレータの注意を促すように、特異部をポップアップ表示することが出来る。この場合、オペレータはポップアップされた画像に基づいて特異部を確認し、発生原因を判断することが出来る。また、特異部が欠陥部であった場合、これを補修したり不良品として排除したりすることが出来る。また、ステップＳ１１７においては、オペレータを介することなく更に詳しい調査を自動的に行うこともできる。例えば、特異部が検出された対象物に対し、カメラ１０１の画角とフォーカスを変更し、より高解像度な設定で特異部を撮影してもよい。この場合、得られた画像を予め用意した正常部品の画像とパターンマッチングして、傷の大きさや程度を調査することができる。また、対象物が印刷物である場合には、特異部の原因が、紙粉であるか、印刷ヘッドの不良であるか、搬送の不良であるか、などを確認することもできる。さらに、ステップＳ１１７の検査後処理では、判定の結果に応じて製造ラインを停止することも出来る。
【００５３】
ステップＳ１１７において、検査対象画像３０２に対する検査後処理が終了すると、ＣＰＵ２０１はステップＳ１１８に進み、続いて検査すべき対象物が存在するか否かを判断する。存在する場合は図２（ａ）のステップＳ１０２に戻り、次の対象物のための撮影動作を行う。一方、検査すべき対象物は既に存在しないと判断した場合は本処理を終了する。
【００５４】
以上説明した本実施形態によれば、対象物を撮影して得られる検査対象画像と、基準画像とのズレを調整した上で、検査対象画像における特異部検出処理を行うことが出来る。結果、基準画像に対する検査対象画像のズレの影響を抑え、検査対象画像に対し高精度な検査を実現することが出来る。
【００５５】
ところで以上説明した実施形態では、第１処理ではモノクロ輝度信号に変換した画像に対し周辺視・固視微動処理を行い、第２処理ではカラー信号を有する画像に対し周辺視・固視微動処理を行った。これは、位置合わせが目的である第１処理においては、そもそものばらつきが大きい色情報を排除し、画像の構造に忠実なモノクロ輝度信号に基づいた判断を行うためである。しかしながら、本発明はこのような形態に限定されるものではない。第１処理、第２処理ともにカラー情報を用いた処理を行っても良いし、第１処理、第２処理ともにモノクロ輝度情報で判断することも出来る。
【００５６】
ワーク画像のサイズについては特に限定されるものではないが、例えば図１に示す検査システムの場合、対象物Ｐの搬送誤差を考慮することが望ましい。具体的には、最大１ｍｍの誤差が発生する場合、その約２倍である２ｍｍ角の領域をワーク検査画像やワーク基準画像とすることが好ましい。１ｍｍの誤差に対し１０ｍｍのような大きな値をワーク画像のサイズに設定してしまうと、図９（ｂ）で示した処理後の画像において、画像全域で一様性が損なわれ、ワーク基準画像の選定が困難になる。
【００５７】
また、以上では、図１１にみるように、平行移動させた複数のワーク候補画像を生成する形態としたが、ワーク候補画像の生成方法はこれに限定されるものではない。検査対象画像においては、撮影時におけるカメラと対象物の相対角度や相対距離または倍率の変動などに起因して、平行移動では対処しきれない誤差が含まれる場合がある。このような場合には、例えば図１３（ａ）にみるように、基準画像を拡大または縮小する比率を異ならせながら複数のワーク候補画像を抽出しても良い。また、図１３（ｂ）にみるように、基準画像３０１に対する回転角度を異ならせながら複数のワーク候補画像を抽出しても良い。
【００５８】
また、以上では、検査対象画像から抽出される１つのワーク検査画像に対し、複数のワーク候補画像を抽出する形態で説明した。しかし、本発明の第１処理においては、基準画像から抽出される１つのワーク基準画像に対し、検査対象画像から複数のワーク候補画像を抽出するとすることもできる。更に、以上では、全てのワーク検査画像について、第１処理を行う内容で説明したが、本発明はこのような形態に限定されるものではない。例えば、基準画像と検査対象画像の位置ずれの傾向が図１０のように明らかな場合は、いくつかのワーク検査画像についてワーク基準画像の座標が設定されれば、他のワーク検査画像に対応するワーク基準画像の座標は、補間関数を用いて算出することができる。いずれにしても、基準画像と検査対象画像のそれぞれから、互いに類似する画像の組み合わせを、ワーク基準画像およびワーク検査画像として１対１で対応づけることができれば、本発明の第１処理を実現させることができる。
【００５９】
また、以上では、１つの検査対象画像３０２から複数のワーク検査画像３０３を、１つの基準画像３０１から複数のワーク基準画像３０５を生成する形態で説明したが、本実施形態はこのような形態に限定されるものではない。１つの検査対象画像３０２から１つのワーク検査画像３０３を、１つの基準画像３０１から１つのワーク基準画像３０５を生成する形態であっても良い。また、１つの検査対象画像３０２から生成される複数のワーク検査画像３０３は、互いに重複領域を含むものであっても良い。
【００６０】
更に、以上では、基準画像を予め画像処理装置２００に記憶しておく形態で説明したが、本発明はこのような形態に限定されるものではない。例えば、明らかに傷や画像ズレなどが無いことが確認されている対象物を予め用意し、これを基準画像として用いるために撮影する工程を設けてもよい。
【００６１】
更にまた、以上の説明では、第１処理の類似領域検出処理においても第２処理の特異部検出処理においても、周辺視・固視微動処理を採用した。しかしながら本発明において、特異部を検出するための第２処理では、必ずしも周辺視・固視微動処理を採用する必要は無い。例えば、ステップＳ１１５における特異部検出処理においては、基準画像と検査対象画像の差異を検出することが出来れば、パターンマッチング法など他の検査アルゴリズムを採用することもできる。また、第１処理における位置あわせの目的が必ずしも第２処理のような検査のためでなくても構わない。例えば、動画像のフレーム間で上記第１処理を実行すれば、背景のブレを取り除いた状態である点の移動追跡を明確に行うことが出来る。いずれにせよ、何らかの目的のために２つの画像の位置あわせを必要とする状況であれば、本発明は有効に機能する。
【００６２】
なお、本発明は、上記実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現することが可能である。
【符号の説明】
【００６３】
２００    画像処理装置
３０１    基準画像
３０２    検査対象画像
３０４    ワーク基準画像
３０５    ワーク検査画像
３０７    整列画像
Ｐ    対象物
【図１】
0006701118.tif 000002
【図２】
0006701118.tif 000003
【図３】
0006701118.tif 000004
【図４】
0006701118.tif 000005
【図５】
0006701118.tif 000006
【図６】
0006701118.tif 000007
【図７】
0006701118.tif 000008
【図８】
0006701118.tif 000009
【図９】
0006701118.tif 000010
【図１０】
0006701118.tif 000011
【図１１】
0006701118.tif 000012
【図１２】
0006701118.tif 000013
【図１３】
0006701118.tif 000014