(57)【特許請求の範囲】
【請求項１】
検査対象物を撮像して得られた検査対象画像の中から予め登録された規範パターンをサーチし、当該検査対象画像に対して当該規範パターンの位置および姿勢を決定する位置決め方法であって、
前記検査対象物の規範となる製品の規範画像を表示し、当該規範画像において前記規範パターンを取り囲むように第一領域を設定するとともに、当該規範画像において前記規範パターンの位置および姿勢を特徴づける第二領域を該第一領域内に設定する設定工程と、
前記規範画像に設定された前記第一領域から抽出された特徴を前記検査対象画像からサーチすることで前記検査対象画像における前記規範パターンの位置および姿勢を粗に求める第一サーチ工程と、
前記第一サーチ工程において決定された前記規範パターンの位置および姿勢の少なくとも一方を細密に求める第二サーチ工程であって、前記第一サーチ工程において決定された前記規範パターンの位置および姿勢のいずれか一方を固定した状態で他方を変化させながら前記規範画像に設定された前記第二領域から抽出された特徴を前記検査対象画像からサーチし、前記検査対象画像における前記規範パターンの位置および姿勢の少なくとも一方を細密に求める第二サーチ工程と
を有することを特徴とする位置決め方法。
【請求項２】
前記第一サーチ工程および前記第二サーチ工程を通じて決定された前記規範パターンの位置および姿勢に合わせて前記検査対象物の外観検査を実行する検査ツールの検査領域の位置および姿勢を決定する決定工程と、
前記検査対象画像に対して配置された前記検査領域において前記検査ツールにより外観検査を実行する実行工程と
を有することを特徴とする請求項１に記載の位置決め方法。
【請求項３】
前記第二サーチ工程を実行するか否かを選択する選択工程をさらに有し、
前記選択工程において前記第二サーチ工程を実行することが選択されると、前記決定工程において、前記第一サーチ工程および前記第二サーチ工程を通じて決定された前記規範パターンの位置および姿勢に合わせて前記検査領域の位置および姿勢を決定し、前記選択工程において前記第二サーチ工程を実行しないことが選択されると、前記決定工程において、前記第一サーチ工程により決定された前記規範パターンの位置および姿勢に合わせて前記検査領域の位置および姿勢を決定することを特徴とする請求項２に記載の位置決め方法。
【請求項４】
前記第二サーチ工程は、前記第一サーチ工程において決定された前記規範パターンの位置を固定した状態で、該規範パターンに対して設定された回転中心を基準として、該規範パターンの姿勢を回転させることにより、前記検査対象画像における前記規範パターンの姿勢を細密に決定する工程を含むことを特徴とする請求項１ないし３のいずれか一項に記載の位置決め方法。
【請求項５】
前記第二サーチ工程は、前記第一サーチ工程において決定された前記規範パターンの姿勢を固定した状態で、該規範パターンの位置を直線的に変化させることにより、前記規範パターンの位置を細密に決定する工程を含むことを特徴とする請求項１ないし３のいずれか一項に記載の位置決め方法。
【請求項６】
前記第一サーチ工程および前記第二サーチ工程では前記規範画像と前記検査対象画像とからそれぞれ抽出されたエッジ情報を用いて幾何サーチが実行されることを特徴とする請求項１ないし５のいずれか一項に記載の位置決め方法。
【請求項７】
前記第一サーチ工程および前記第二サーチ工程では前記規範画像と前記検査対象画像を用いたパターンマッチングまたは正規化相関サーチが実行されることを特徴とする請求項１ないし５のいずれか一項に記載の位置決め方法。
【請求項８】
前記第一サーチ工程では、前記規範画像と前記検査対象画像をそれぞれ縮小して得られる縮小画像を用いてサーチが実行されることを特徴とする請求項１ないし７のいずれか一項に記載の位置決め方法。
【請求項９】
前記第一サーチ工程では、前記検査対象画像を縮小して得られる第一縮小画像を用いて粗サーチが実行され、さらに、前記検査対象画像の等倍画像または前記第一縮小画像よりも大きな第二縮小画像を用いて微細サーチが実行されることを特徴とする請求項１ないし７のいずれか一項に記載の位置決め方法。
【請求項１０】
前記第二サーチ工程では、予め設定された回転中心に対して前記検査対象画像を回転させながら前記検査対象画像において前記規範パターンに対する類似度が最も高くなる姿勢を探索し、さらに、再度、前記微細サーチを実行することで最終的な前記規範パターンの位置と姿勢を確定させることを特徴とする請求項９に記載の位置決め方法。
【請求項１１】
前記第一サーチ工程では相対的に大きな面積の特徴の類似度に基づき前記検査対象画像での前記規範パターンの位置および姿勢がサーチされ、
前記第二サーチ工程では相対的に小さな面積の特徴の類似度に基づき前記検査対象画像での前記規範パターンの位置および姿勢がサーチされることを特徴とする請求項１ないし１０のいずれか一項に記載の位置決め方法。
【請求項１２】
コンピュータに請求項１ないし１１のいずれか一項に記載の各工程を実行させるプログラム。
【請求項１３】
請求項１２に記載のプログラムを記録したコンピュータ可読記録媒体。
【請求項１４】
検査対象物を撮像して得られた検査対象画像の中から予め登録された規範パターンをサーチし、当該検査対象画像に対して当該規範パターンの位置および姿勢を決定し、前記検査対象物の外観検査を実行する外観検査装置であって、
前記検査対象物の規範となる製品の規範画像を表示し、当該規範画像において前記規範パターンを取り囲むように第一領域を設定するとともに、当該規範画像において前記規範パターンの位置および姿勢を特徴づける第二領域を該第一領域内に設定する設定手段と、
前記第一領域から抽出された特徴を前記検査対象画像からサーチすることで前記検査対象画像における前記規範パターンの位置および姿勢を粗に決定する第一サーチ手段と、
前記第一サーチ手段により決定された前記規範パターンの位置および姿勢の少なくとも一方を細密に求める第二サーチ手段であって、前記第一サーチ手段により決定された前記規範パターンの位置および姿勢のいずれか一方を固定した状態で他方を変化させながら前記規範画像に設定された前記第二領域から抽出された特徴を前記検査対象画像からサーチすることで、前記規範パターンの位置および姿勢の少なくとも一方を細密に求める第二サーチ手段と、
前記第一サーチ手段および前記第二サーチ手段を通じて決定された前記規範パターンの位置および姿勢に合わせて前記検査対象物の外観検査を実行する検査ツールの検査領域の位置および姿勢を補正し、当該位置および姿勢を補正された検査領域を用いて前記検査ツールにより外観検査を実行する検査手段と
を有することを特徴とする外観検査装置。
【請求項１５】
検査対象物の規範となる規範製品が写っている規範画像を表示し、当該規範画像において前記規範製品の外形特徴を取り囲むように外形特徴領域を設定するとともに、前記規範製品の位置および姿勢を特徴づける姿勢特徴を取り囲むように前記規範画像に対して姿勢特徴領域を該外形特徴領域内に設定する設定工程と、
検査対象物を撮像することで検査対象画像を取得する取得工程と、
前記規範画像の前記外形特徴領域から抽出された外形特徴を前記検査対象画像からサーチして当該検査対象画像における検査対象製品の位置と姿勢を抽出する第一サーチ工程と、
前記第一サーチ工程において決定された前記検査対象製品の位置および姿勢のいずれか一方を固定した状態で他方を変化させながら前記規範画像の前記姿勢特徴領域から抽出された姿勢特徴を前記検査対象画像からサーチすることで、前記第一サーチ工程において決定された前記検査対象製品の位置および姿勢の少なくとも一方を細密に決定する第二サーチ工程と
前記第一サーチ工程および前記第二サーチ工程を通じて特定された前記検査対象画像における前記検査対象製品の位置および姿勢に応じて、前記検査対象画像に対して検査領域を配置する配置工程と、
前記検査対象画像に対して配置された前記検査領域において前記検査対象製品の外観検査を実行する外観検査工程と
を有することを特徴とする外観検査方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、製品の画像を撮像して製品の位置決めを行う位置決め方法、製品の外観を検査する外観検査装置、外観検査方法、プログラムおよびコンピュータ可読記録媒体に関する。
【背景技術】
【０００２】
工場で製造された製品の良否を判定するために外観検査が実行される。外観検査では検査対象物をカメラで撮影して検査対象画像が取得される。ベルトコンベアなどで製品は搬送されながら外観を検査されるが、ベルトコンベア上での製品の位置は一定ではない。そのため、検査対象画像内のどこに製品が写っているかを位置決めする必要がある。位置決めでは検査対象画像におけるモデルパターンの位置がサーチされる。つまり、検査対象画像においてモデルパターンに類似した部分画像が特定され、外観検査が実行される。モデルパターンは検査合格品などから予め取得される製品の規範となるパターンであり、製品の全体であったり、製品の部位であったりする。このようなサーチでは、モデルパターンを含むテンプレート画像を予め準備し、検査対象画像とテンプレート画像との間の正規化相関が用いられることもある。また、テンプレート画像から抽出されたエッジ情報を用いて幾何サーチが行われることもある（特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−０６７２４６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、工場で製造される製品にはボールベアリングや自動車のホイール、電子機器のコネクタなど高度に形状の対称性を有する製品が存在する。このような対称性を有する製品であってもエッジ情報を抽出することで検査対象画像内でのモデルパターンの位置を求めることができる。しかし、ベルトコンベア上で製品は位置がずれるだけでなく、姿勢が回転してしまうこともある。したがって、姿勢についても補正される必要があるが、高対称性の製品の姿勢（回転角度）を正確に求めることは困難であった。このような製品であっても姿勢の特徴となる部位は存在するが、その部位の面積は製品全体の面積に比較して非常に小さいため、サーチにおいて無視されてしまう。また、サーチ処理の高速化のためにサイズを縮小した画像が使用される場合には、画像縮小によって姿勢特徴が消えてしまうこともある。姿勢を含む位置決めの精度が低下すると、外観検査の精度も低下してしまう。たとえは、良品であっても良品と判断されずに廃棄されてしまうことも考えられる。そこで、本発明は、対称性を有する製品であっても精度よく位置決めを行うことを目的とする。
【課題を解決するための手段】
【０００５】
本発明は、たとえば、
検査対象物を撮像して得られた検査対象画像の中から予め登録された規範パターンをサーチし、当該検査対象画像に対して当該規範パターンの位置および姿勢を決定する位置決め方法であって、
前記検査対象物の規範となる製品の規範画像を表示し、当該規範画像において前記規範パターンを取り囲むように第一領域を設定するとともに、当該規範画像において前記規範パターンの位置および姿勢を特徴づける第二領域を該第一領域内に設定する設定工程と、
前記規範画像に設定された前記第一領域から抽出された特徴を前記検査対象画像からサーチすることで前記検査対象画像における前記規範パターンの位置および姿勢を粗に求める第一サーチ工程と、
前記第一サーチ工程において決定された前記規範パターンの位置および姿勢の少なくとも一方を細密に求める第二サーチ工程であって、前記第一サーチ工程において決定された前記規範パターンの位置および姿勢のいずれか一方を固定した状態で他方を変化させながら前記規範画像に設定された前記第二領域から抽出された特徴を前記検査対象画像からサーチし、前記検査対象画像における前記規範パターンの位置および姿勢の少なくとも一方を細密に求める第二サーチ工程と
を有することを特徴とする位置決め方法を提供する。
【発明の効果】
【０００６】
本発明によれば、対称性を有する製品であっても精度よく位置決めを行うことが可能となる。
【図面の簡単な説明】
【０００７】
【図１】外観検査装置の概略を示す概略図
【図２】外観検査装置のハードウェア構成の一例を示す図
【図３】外観検査処理の基本フローを示すフローチャート
【図４】規範パターンの位置と姿勢を説明する図
【図５】位置・姿勢補正に関するパラメータを設定する処理を示すフローチャート
【図６】ＣＰＵ等の機能を示すブロック図
【図７】外形特徴領域と姿勢特徴領域を説明する図
【図８】位置・姿勢補正に関するパラメータを設定するためのユーザインタフェースを示す図
【図９】位置決め処理を含む外観検査を示すフローチャート
【図１０】位置と姿勢のサーチ結果の一例を示す図
【図１１】姿勢を固定しつつ所定方向に微細サーチを行う例を示す図
【図１２】応用例を示す図
【図１３】位置決め処理を含む外観検査を示すフローチャート
【図１４】複数の姿勢特徴領域を説明する図
【発明を実施するための形態】
【０００８】
以下に本発明の一実施形態を示す。以下で説明される個別の実施形態は、本発明の上位概念、中位概念および下位概念など種々の概念を理解するために役立つであろう。また、本発明の技術的範囲は、特許請求の範囲によって確定されるのであって、以下の個別の実施形態によって限定されるわけではない。
【０００９】
図１は外観検査装置１の概略を示す概略図である。外観検査装置１は、コントローラ２、プログラマブルロジックコントローラ（ＰＬＣ）３、カメラ４、照明装置５、コンソール９、モニタ１０、プログラム作成支援装置１１を有している。ＰＬＣ３によって制御されるベルトコンベヤなどの搬送装置７によって検査対象物８が搬送され、照明装置５によって照明された検査対象物８がカメラ４によって撮像される。検査対象物８はワークと呼ばれることもある。コントローラ２は、たとえば、ＰＬＣ３からの命令にしたがって、照明装置５の照明条件を切り替えたり、カメラ４に撮像を実行させたりする。
【００１０】
コントローラ２は検査対象物８の画像からエッジ検出や面積計算などの各種計測処理を実行する。たとえば、コントローラ２はカメラ４から得られた画像データを用いて画像処理を実行し、外部接続されたＰＬＣ３などの制御機器に対し、検査対象物８の良否などの判定結果を示す信号として判定信号を出力する。
【００１１】
カメラ４は検査対象物８を撮像する撮像素子を有するカメラモジュールを備えている。撮像素子としては、たとえばＣＭＯＳ（相補型金属酸化膜半導体）やＣＣＤ（電荷結合素子）を用いることができる。カメラ４は、ＰＬＣ３から入力される制御信号、たとえばカメラ４から画像データを取り込むタイミングを規定する撮像トリガ信号に基づいて、検査対象物８の撮像を行う。
【００１２】
モニタ１０は液晶パネルや自発光式パネル等の表示装置である。検査対象物８を撮像して得られた画像や、その画像データを用いた計測処理の結果を表示する。モニタ１０は、パターンマッチング用の比較データ（規範画像）を作成するために使用される基準画像など、良品から取得された画像を表示してもよい。なお、規範画像はモデル画像と呼ばれてもよい。
【００１３】
コンソール９は、ユーザがモニタ１０上で各種操作するため（モニタ１０がタッチパネルなら省略可）の入力装置である。コンソール９は、モニタ１０上で各メニュー項目を選択したり、パラメータ値を設定したりする。コンソール９は、ポインティングデバイスの一例である。ユーザは、モニタ１０を視認することで、コントローラ２の運転中の動作状態を確認することができる。また、ユーザは、モニタ１０を視認しつつ、コンソール９を操作することによって、必要に応じて各種設定や各種編集を行うことができる。
【００１４】
照明装置５は、検査対象物８を照明する装置である。照明装置５としては、たとえば、光沢を際立たせる同軸落射照明、傷や刻印のエッジが際立つローアングル照明、ブラックライトを当てるブラックライト照明、面照明（検査対象物の透過光または影を観察するための透過照明）、四方八方から拡散光を照射するドーム照明など、各種の照明を行う照明装置が採用されうる。特に、同軸落射照明は、視野全体に略均一に照明を当てる照明手法であり、カメラ４と照明装置５をＶ字に配置して検査対象物８からの正反射光を受光する照明手法とほぼ同様の効果が得られる利点がある。また、ローアングル照明は、たとえばＬＥＤ等の投光素子をリング状に配置し、検査対象物８の表面を浅い角度で全周方向から光を照らす照明手法である。検査対象物８の表面に当たった光はカメラ４の方向には反射せず、刻印や傷のエッジ部分で反射した光だけが受光される。すなわち、照射角度が非常に浅い角度であるため、光沢面では反射が弱く、検査対象物８上の僅かな傷やエッジでのみ強い反射が得られ、はっきりとしたコントラストが得られる。
【００１５】
プログラム作成支援装置１１は、コントローラ２が実行する制御プログラムを作成するためのコンピュータ（ＰＣ）である。制御プログラムは、以下で説明するような外観検査に関するそれぞれ異なる計測を実行するための複数の計測処理モジュールを有している。コントローラ２は、設定された順番に沿って各種計測処理モジュールを呼び出して実行する。プログラム作成支援装置１１とコントローラ２とは、通信ケーブルや通信ネットワークを介して接続されている。プログラム作成支援装置１１上で生成された制御プログラムやパラメータ値等の設定情報は通信ケーブル等を介してコントローラ２に転送される。また逆に、コントローラ２から制御プログラムやパラメータ値等の設定情報などを取り込んで、プログラム作成支援装置１１が再編集してもよい。
【００１６】
工場において、複数の検査対象物８は、コンベアなどの搬送装置７のライン上を流れてくる。コントローラ２は、検査対象物８の上方（または側方、下方）に設置されているカメラ４により検査対象物８を撮像し、撮像した画像を基準画像（たとえば良品を撮像した画像）や基準画像から作成したモデル画像と比較して、検査対象物８に傷や欠陥等が存在するか否かの判断を行う。検査対象物８に傷や欠陥等が存在すると判断した場合には、ＮＧ判定となる。一方、検査対象物８に傷や欠陥等が存在しないと判断した場合には、ＯＫ判定となる。このように、外観検査装置１は、検査対象物８を撮像した画像を用いて、検査対象物８の外観の良否判定を行う。
【００１７】
検査対象物８の外観検査を行う場合、ユーザは検査に用いる各種パラメータの内容（パラメータ値等）を設定する必要がある。パラメータとしては、たとえば、シャッタースピードなどの撮像条件を規定する撮像パラメータ、照度などの照明条件を規定する照明パラメータ、どのような検査を行うかを示す検査条件を規定する計測処理パラメータ（いわゆる検査パラメータ）等がある。外観検査装置１では、良否判定を行う前に、これらの各種パラメータの内容を設定する。
【００１８】
外観検査装置１は、実際に搬送装置７のライン上を次々と流れてくる検査対象物８の外観検査を行うモード、すなわち実際に検査対象物８の良否判定を行う運転モード（Ｒｕｎモード）と、検査に用いる各種パラメータの内容の設定を行う設定モード（非Ｒｕｎモード）とを有しており、これらのモードを切り替えるためのモード切替手段を有している。ユーザは、運転モードにおいて、搬送装置７のライン上を流れてくる複数の検査対象物８に対して良否判定が繰り返し行われる前に、設定モードにおいて、各種パラメータに対して最適なパラメータ値を設定（調整）する。基本的に、各種パラメータに対してはデフォルト値が設定されており、ユーザがパラメータ値としてデフォルト値が最適であると判断した場合には、特段、パラメータ値を調整する必要はない。しかし、実際のところ、周囲の照明環境、カメラ４の取り付け位置、カメラ４の姿勢ずれ、ピント調整等の相違に起因して、デフォルト値のままではユーザが望む判定結果を得ることができない場合がある。そこで、設定モードにおいて、コントローラ２のモニタ１０上またはプログラム作成支援装置１１上にて、運転モードから設定モードに切り換え、各種パラメータの内容を編集できるようになっている。
【００１９】
＜外観検査装置１のハードウェア構成＞
図２は外観検査装置１のハードウェア構成の一例を示す図である。主制御部２１は、各種プログラムに基づき数値計算や情報処理を行うとともに、ハードウェア各部の制御を行う。たとえば、中間演算処理装置としてのＣＰＵ２２と、主制御部２１が各種プログラムを実行する際のワークエリアとして機能するＲＡＭなどのワークメモリ２３と、起動プログラムや初期化プログラムなどが格納されたＲＯＭ、フラッシュＲＯＭまたはＥＥＰＲＯＭなどのプログラムメモリ２４とを有している。照明制御部２６は主制御部２１のＣＰＵ２２やＰＬＣ３からの命令に基づいて照明装置５に対して照明制御信号を送信する。
【００２０】
画像入力部２５はカメラ４での撮像により取得された画像データを取り込むＡＳＩＣ（Application Specific Integrated Circuit）などから構成される。画像入力部２５には画像データをバッファリングするためのフレームバッファが含まれていてもよい。具体的に、画像入力部２５は、ＣＰＵ２２からカメラ４の撮像指令を受信すると、カメラ４に対して画像データ取り込み信号を送信する。そして、画像入力部２５は、カメラ４で撮像が行われた後、撮像して得られた画像データを取り込む。取り込んだ画像データは、一旦バッファリング（キャッシュ）される。
【００２１】
操作入力部２７は、コンソール９からの操作信号が入力される。操作入力部２７は、ユーザの操作に応じてコンソール９が出力する操作信号を受信するインターフェース（Ｉ／Ｆ）として機能する。
【００２２】
モニタ１０には、コンソール９を用いたユーザの操作内容が表示される。具体的に説明すると、コンソール９を操作することによって、ユーザはモニタ１０上で、画像処理の制御プログラムを編集したり、各計測処理モジュールのパラメータ値を編集したり、カメラ４の撮像条件を設定したり、基準画像の中で特徴的な部分を規範画像として登録したり、サーチ領域内をサーチして規範画像に一致した領域を検査領域として設定したりと、様々なことを行うことができる。
【００２３】
表示制御部２８はモニタ１０に対して画像を表示させる表示用ＤＳＰなどから構成される。表示制御部２８には、画像を表示させる際に画像データを一時記憶するＶＲＡＭなどのビデオメモリが含まれていてもよい。表示制御部２８はＣＰＵ２２から送られてきた表示指令（表示コマンド）に基づいてモニタ１０に対して所定の画像（映像）を表示させるための制御信号を送信する。たとえば、表示制御部２８は、計測処理前または計測処理後の画像データを表示するために、モニタ１０に対して制御信号を送信する。また、表示制御部２８はコンソール９を用いたユーザの操作内容をモニタ１０に表示させるための制御信号も送信する。
【００２４】
通信部２９は、外部のＰＬＣ３やプログラム作成支援装置１１などと通信可能に接続される。たとえば、センサ（不図示の光電センサ等）が検査対象物８の到着タイミングを認識するために製造ラインに設置され、かつ、ＰＬＣ３に接続されている。当該センサは検査対象物８を検知するとトリガ信号を出力する。通信部２９はＰＬＣ３から出力されたトリガ信号を受信するインターフェース（Ｉ／Ｆ）として機能する。トリガ信号はカメラ４に撮像を実行させる制御信号として利用される。また、通信部２９は、プログラム作成支援装置１１から転送されてくるコントローラ２の制御プログラムなどを受信するインターフェース（Ｉ／Ｆ）としても機能する。
【００２５】
画像処理部３０はエッジ検出や面積計算などの計測処理を実行する演算用ＤＳＰなどから構成される。画像処理部３０には計測処理用の画像データを記憶するメモリが含まれていてもよい。画像処理部３０は画像データに対する計測処理を実行する。具体的に、画像処理部３０は、画像入力部２５のフレームバッファから画像データを読み出して、画像処理部３０内のメモリへ内部転送を行う。そして、画像処理部３０は、そのメモリに記憶された画像データを読み出して、計測処理を実行する。
【００２６】
プログラムメモリ２４は、照明制御部２６、画像入力部２５、操作入力部２７、表示制御部２８、通信部２９、および画像処理部３０の各部を、ＣＰＵ２２のコマンド等により制御するための制御プログラムを格納している。また、プログラム作成支援装置１１から転送されてきた制御プログラムはプログラムメモリ２４に格納される。
【００２７】
ＣＰＵ２２は、通信部２９を介してＰＬＣ３から撮像トリガ信号を受信すると、画像入力部２５に対して撮像指令（コマンド）を送る。また、ＣＰＵ２２は、制御プログラムに基づいて、画像処理部３０に対して、実行すべき画像処理を指示するコマンドを送信する。なお、撮像トリガ信号を生成する装置として、ＰＬＣ３ではなく、光電センサなどのトリガ入力用のセンサを通信部２９に直接接続してもよい。
【００２８】
これらの各ハードウェアは、バスなどの電気的な通信路（配線）を介し、通信可能に接続されている。
【００２９】
＜計測モジュール（画像処理ツール）＞
ここでは、外観検査を実行する計測モジュールを画像処理ツールと呼ぶことにする。なお、画像処理ツールは検査ツールや計測ツールと呼ばれてもよい。画像処理ツールには様々なものがあり、主要な画像処理ツールとしては、エッジ位置計測ツール、エッジ角度計測ツール、エッジ幅計測ツール、エッジピッチ計測ツール、エリア計測ツール、ブロブ計測ツール、パターンサーチ計測ツール、傷計測ツールなどがある。
●エッジ位置計測ツール：検査対象物８の画像が表示される画面上において、エッジ位置を検出したい検査領域に対してウインドウを設定することにより、設定された検査領域内で、任意の方向にスキャンして複数のエッジ（明から暗に切り替わる箇所または暗から明に切り替わる箇所）を検出する。検出した複数のエッジから、一のエッジの指定を受け付け、指定を受け付けたエッジの位置を計測する。
●エッジ角度計測ツール：設定を受け付けた検査領域内に２つのセグメントを設定し、それぞれのセグメントで検出したエッジからの検査対象物８の傾斜角度を計測する。傾斜角度は、たとえば時計回りを正とすることができる。
●エッジ幅計測ツール：設定を受け付けた検査領域内で、任意の方向にスキャンして複数のエッジを検出し、検出した複数のエッジ間の幅を計測する。
●エッジピッチ計測ツール：設定を受け付けた検査領域内で、任意の方向にスキャンして複数のエッジを検出する。検出した複数のエッジ間の距離（角度）の最大値／最小値や平均値を計測する。
●エリア計測ツール：カメラ４で撮像した検査対象物８の画像を二値化処理して、白色領域または黒色領域の面積を計測する。たとえば、計測する対象として白色領域または黒色領域の指定をパラメータとして受け付けることにより、白色領域または黒色領域の面積を計測する。
●ブロブ計測ツール：カメラ４で撮像した検査対象物８の画像を二値化処理して、同一の輝度値（２５５または０）の画素の集合（ブロブ）に対してパラメータとしての数、面積、重心位置等を計測する。
●パターンサーチ計測ツール：比較対象とする画像パターン（モデル画像）を事前に記憶装置に記憶しておき、撮像した検査対象物８の画像の中から記憶してある画像パターンに類似している部分を検出することで、画像パターンの位置、傾斜角度、相関値を計測する。
●傷計測ツール：設定を受け付けた検査領域内で、小領域（セグメント）を移動させて画素値の平均濃度値を算出し、閾値以上の濃度差となった位置を傷が存在すると判定する。
●その他にも、検査領域内の文字情報を切り出して辞書データ等と照合することで文字列を認識するＯＣＲ認識ツール、画像上に設定したウインドウ（領域）をシフトさせながら、各ウインドウの位置においてエッジの検出を繰り返す機能を有するトレンドエッジツール、設定したウインドウ内の濃淡の平均、偏差等を計測する機能を有する濃淡ツール、設定したウインドウ内の濃度の平均、偏差等を計測する機能を有する濃度ツールなどもあり、ユーザは検査内容に応じて必要な画像処理ツールを選択することができる。なお、これらの画像処理ツールは、典型的な機能およびその実現方法の代表例を示すものに過ぎない。あらゆる画像処理に対応する画像処理ツールが本願発明の対象になり得る。
【００３０】
＜外観検査の基本フロー＞
図３は外観検査処理の基本フローを示すフローチャートである。外観検査処理は、検査対象物８の良否を判定するために必要となる規範画像、検査領域、サーチ領域、検出点（以下、基準点と称す）、基準線、公差などの閾値を設定する設定モードと、実際に検査対象物８を撮像してパターンマッチングなどの画像処理を実行して良否を判定する運転モードとに分かれている。なお、検査用のパラメータを適切に設定するために、設定モードと運転モードとを繰り返し実行することが一般的である。なお、寸法計測、エリアツールや傷ツールなどによる外観検査処理が実行されてもよい。
【００３１】
Ｓ１で、ＣＰＵ２２は、画像入力部２５を通じてカメラ４に撮像命令を送信することで、カメラ４に撮像を実行させる。ＣＰＵ２２は、カメラ４により取得された画像データを、表示制御部２８を通じてモニタ１０に表示させる。ユーザは、モニタ１０に表示された画像を視認することで、カメラ４の姿勢や照明装置５の照明状態を確認する。
【００３２】
Ｓ２で、ＣＰＵ２２は、コンソール９によって入力された指示に基づいてカメラ４のシャッタースピードなどの露光条件を調整する。なお、ユーザは、カメラ４の姿勢を手動で調整してもよい。
【００３３】
Ｓ３で、ＣＰＵ２２は、搬送装置７の撮像位置に配置された検査対象物８の画像をワーク画像として取り込むために、カメラ４に撮像命令を送信する。なお、ワーク画像（基本画像）は、不揮発性メモリに記憶されて繰り返し使用される基準画像であってもよいし、規範画像を作成するためにその都度撮像される都度画像であってもよい。ここでは、ワーク画像はワークメモリ２３に記憶される。なお、モデル画像は基準画像から作成してもよい。
【００３４】
Ｓ４で、ＣＰＵ２２は、位置・姿勢補正の設定処理を実行する。カメラ４によって取得された画像において、検査対象物８の画像の位置が理想位置からずれていることがある。そこで、ＣＰＵ２２は、検査対象物８の画像から検査対象物８の位置と姿勢（回転角度）を取得する。取得された位置におうじて画像処理ツール（検査ツール）の位置と姿勢を補正することで、位置ずれを補正する。なお、位置・姿勢補正は、画像処理部３０が実行してもよい。このように位置・姿勢補正は検査ツールの位置と姿勢を検査対象物８の画像の位置と姿勢に整合させる処理である。
【００３５】
Ｓ５で、ＣＰＵ２２は、上述した各種の検査ツールを設定する。たとえば、外観検査においてどの計測を実行するかや計測を実行するために必要となるサーチ領域、検査領域、基準点などが設定される。
【００３６】
Ｓ６で、ＣＰＵ２２は、外観検査で必要となるパラメータ（例：公差などの検査閾値）を、コンソール９によって入力された指示に基づいて設定する。Ｓ７で、ＣＰＵ２２は、設定モードから運転モードに切り替える。
【００３７】
Ｓ８で、ＣＰＵ２２は、ＰＬＣ３からの指示にしたがって検査対象物８をカメラ４で撮像し、画像処理部３０にパターンマッチングなどを実行させ、実行結果に基づいて良否を判定し、判定結果をＰＬＣ３に出力したり、モニタ１０に出力したりする。
【００３８】
Ｓ９で、ＣＰＵ２２は、コンソール９からモードの切り替え指示が入力されると、運転モードから設定モードに切り替える。Ｓ１０で、ＣＰＵ２２は、コンソール９によって入力された指示に基づいてパラメータを再設定する。
【００３９】
＜位置・姿勢補正が必要な理由＞
各検査ツールの設定に用いられる規範画像における検査対象物８（検査合格品）の位置や姿勢と、運転モードにおいて取得された画像内での検査対象物８（未検査品）の位置や姿勢は一致していないことが多い。なお、検査合格品は規範品や基準品、モデル品と称されてもよい。未検査品とは、検査ツールによって検査の対象となっている製品であり、検査対象品と呼ばれてもよい。
【００４０】
図４（Ａ）は規範画像４０における検査対象物８（検査合格品）の位置や姿勢を示す図である。規範画像４０は設定モードにおいて検査対象物８（検査合格品）をカメラ４で撮像することで取得された画像である。ユーザは規範画像４０に対して各検査ツールの検査領域４３などを設定する。たとえば、矩形の検査領域４３が設定されると、検査領域４３における左上の頂点の座標を原点として他の検査領域の位置や姿勢が決定され、それを示すデータがＲＡＭなどに保持されうる。ここでは一つの検査領域４３が示されているが、実際には検査ツールごとに検査領域４３が設定される。なお、検査領域４３は、検査対象物８の位置や姿勢を補正するためのモデルパターンを取り囲むように設定される位置補正ウインドウであってもよい。
【００４１】
検査対象物８（検査合格品）は平面視で対称形状（例：円形）をしており、４つのネジ穴４１ａ〜４１ｄが設けられている。ある検査ツールでは４つのネジ穴４１ａ〜４１ｄの位置や形状などが合格判定基準を満たしているかどうかが判定される。
【００４２】
図４（Ａ）に示されている十字マークは検査対象物８を取り囲む外接円の中心を示している。検査対象物８の外形（輪郭）が円形であれば、外接円と外形とが重なることになる。外接円は回転中心を求めるためにしばしば利用される。
【００４３】
図４（Ｂ）は検査画像４５における検査対象物８（未検査品）の位置や姿勢を示す図である。検査画像４５は運転モードにおいて検査対象物８（未検査品）をカメラ４で撮像することで取得された画像である。図４（Ｂ）に示された検査対象物８（未検査品）は、図４（Ａ）に示された検査対象物８（検査合格品）と比較して、右上にシフトしてしまっている。検査領域４３の位置は規範画像４０における検査対象物８（検査合格品）の位置（例：中心位置）と関連付けられている。よって、検査画像４５内での検査対象物８（未検査品）の位置に応じて検査領域４３が右上に位置補正されなければならない。
【００４４】
図４（Ｃ）は検査画像４５における検査対象物８（未検査品）の位置や姿勢を示す図である。図４（Ｃ）に示された検査対象物８（未検査品）は、図４（Ａ）に示された検査対象物８（検査合格品）と比較して、θだけ時計回りに回転してしまっている。したがって、検査領域４３もθだけ姿勢が補正されなければならない。
【００４５】
このように検査領域４３の位置や姿勢を正確に補正することは、検査ツールにより検査結果の精度を向上させる上で重要である。一般に、検査画像４５において幾何サーチや正規化相関サーチなどを実行して検査対象物８（未検査品）の位置と姿勢を発見することで検査領域４３の位置と姿勢が補正される。とりわけ、検査対象物８の外形が左右非対称である場合には精度よく検査領域４３の位置と姿勢が補正される。しかし、図４（Ａ）などに示した左右対称形状の検査対象物８に関しては検査領域４３の姿勢を正しく補正することが難しい。たとえば、図４（Ａ）に示したような検査対象物８ではサーチにおいてエッジが抽出されるが、外形に占めるエッジの量に比べて、ネジ穴４１ａ〜４１ｄのエッジの量は非常に少ない。そのため、サーチにおいて外形のエッジは、検査領域４３の位置や姿勢を決める上で支配的な情報となっていた。とりわけ、サーチ処理等の高速化のために縮小画像が使用されるケースでは、縮小処理によって姿勢特徴が失われてしまうこともある。たとえば、図４（Ａ）などに示した円形の検査対象物８では、姿勢特徴が失われてしまうと検査領域４３の正確な姿勢の補正量を決定することが困難となる。これは、検査対象物８の外形エッジには姿勢を決定づける部分が無いからであり、また、姿勢を決定づけるようなネジ穴など姿勢特徴も画像縮小によって失われてしまうからである。
【００４６】
＜基本的な考え方＞
本実施形態では、ＣＰＵ２２や画像処理部３０がユーザ操作に応じて検査対象物８の規範となる製品（検査合格品）の外形特徴（輪郭）を含む第一領域と、検査合格品の位置や姿勢の規範となる特徴（姿勢特徴）を含む第二領域とを設定する。さらに、ＣＰＵ２２や画像処理部３０は外形特徴に基づいて検査画像内での検査対象物８（未検査品）の位置や姿勢を大まか（ラフ）にサーチする（第一サーチ工程）。さらに、ＣＰＵ２２や画像処理部３０は姿勢特徴を用いて未検査品の位置や姿勢を細密にサーチする（第二サーチ工程）。このように姿勢特徴を用いて位置や姿勢が決定されるため、検査ツールの検査領域の位置や姿勢の精度が向上する。
【００４７】
＜位置・姿勢補正に関するパラメータの設定＞
図５は位置・姿勢補正に関するパラメータを設定する処理を示すフローチャートである。図６はＣＰＵ２２や画像処理部３０などが実現する機能を示している。ＣＰＵ２２はプログラムメモリ２４に記憶されている制御プログラムを実行することで様々な機能を実現する。これらの機能の一部またはすべてはＡＳＩＣやＦＰＧＡなどの論理回路によって実現されてもよい。
【００４８】
Ｓ１１でＣＰＵ２２（撮像制御部５８）は、カメラ４や照明装置５を制御して検査対象物８の規範となる製品（検査合格品）を撮像し、規範画像４０の画像データを規範画像記憶部６０に記憶させる。規範画像４０はＣＰＵ２２が設定モードに遷移している期間において保持されていれば十分であるが、運転モードの遷移している期間においても継続的に保持されていてもよい。Ｓ１２でＣＰＵ２２（ＵＩ制御部５０）は規範画像４０の画像データを規範画像記憶部６０から読み出して、表示制御部２８を介してモニタ１０に表示する。
【００４９】
Ｓ１３でＣＰＵ２２（第一領域設定部５２）は規範画像４０において規範パターンを取り囲むように外形特徴領域である第一領域７０を設定する。
【００５０】
図７（Ａ）は規範画像４０に含まれている規範パターン（検査合格品）の画像を取り囲むように第一領域７０が設定されることを示している。第一領域７０は検査対象物８の全体（外形や輪郭の全体）を取り囲むように設定される。第一領域７０を設定する方法はいくつか考えられる。たとえば、第一領域設定部５２は、ユーザによるコンソール９の操作に応じて第一領域７０の形状（例：矩形や円形など）を選択し、さらにコンソール９のさらなる操作に応じて第一領域７０のサイズと位置を設定してもよい。あるいは、図７（Ｂ）が示すように、第一領域設定部５２は、画像処理部３０に検査対象物８のエッジを抽出させ、すべてのエッジが含まれるように第一領域７０のサイズと位置を設定する。
【００５１】
Ｓ１４でＣＰＵ２２（第一領域設定部５２）は第一領域７０において規範パターンの画像から外形特徴（輪郭を示すエッジの情報など）を抽出し、外形特徴を示すデータを設定データ記憶部６２に保持する。たとえば、図７（Ｂ）が示すように、外形特徴を示すデータ７１はエッジのデータ（例：エッジ強度やエッジ角度など）である。
【００５２】
Ｓ１５でＣＰＵ２２（第二領域設定部５３）は第一領域７０内において規範パターンの位置および姿勢を特徴づける第二領域を設定する。図７（Ｃ）が示すように、第二領域７２は、検査対象物８の位置および姿勢を特徴づける検査対象物８の部位を囲むように設定される。たとえば、第二領域設定部５３は、ユーザによるコンソール９の操作に応じて第二領域７２の形状（例：矩形や円形など）を選択し、さらにコンソール９のさらなる操作に応じて第二領域７２のサイズと位置を設定する。
【００５３】
Ｓ１６でＣＰＵ２２（第二領域設定部５３）は第二領域７２において検査対象物８の位置および姿勢の特徴（例：エッジ強度やエッジ角度など）を抽出し、抽出した姿勢特徴を示すデータを設定データ記憶部６２に保持する。姿勢特徴には姿勢の特徴だけでなく、位置の特徴も含まれていてもよい。たとえば、図７（Ｄ）が示すように、姿勢特徴を示すデータ７３は第二領域７２に含まれている検査対象物８の部位から抽出されたエッジの情報などである。
【００５４】
＜位置・姿勢補正設定のためのユーザインタフェースの一例＞
図５に示したＵＩ制御部５０は表示系のユーザインタフェースや入力系のユーザインタフェースを制御する。表示系のユーザインタフェースとしては、たとえば、外観検査や位置・姿勢補正に関する各種のパラメータを設定するために使用されるユーザインタフェースがある。また、入力系のユーザインタフェースにはコンソール９やキーボードなどがある。パラメータ設定部５１はコンソール９などから入力されるユーザの指示に従って外観検査や位置・姿勢補正に関する各種のパラメータを設定する。
【００５５】
図８は位置・姿勢補正設定のためのユーザインタフェースの一例を示している。設定ＵＩ８０は、検査対象物８の規範となる製品（検査合格品）の画像を表示する規範画像表示領域８１を有している。ＵＩ制御部５０は規範画像記憶部６０から読み出した規範画像４０の画像データを規範画像表示領域８１にレンダリングする。
【００５６】
チェックボックス８２は姿勢特徴サーチを有効化するかどうかを選択するためのユーザインタフェースである。パラメータ設定部５１に含まれている第二サーチ有効化部５４は、チェックボックス８２にチェックが付与されていれば第二サーチである姿勢特徴サーチを有効化し、チェックボックス８２にチェックが付与されていなければ姿勢特徴サーチを無効化する。外形特徴だけで十分に検査領域４３の姿勢を補正可能なワークに関しては姿勢特徴サーチを無効化することで、位置・姿勢補正に関する処理時間を短縮することが可能となる。
【００５７】
プルダウンメニュー８３はワークの種類（回転方式）を選択するためのユーザインタフェースである。たとえば、円、上下反転、多角形などが選択肢として用意されている。円が選択されると、姿勢特徴について全周探索が実行される。この場合、規範パターンの外接円が決定され、この外接円について一定の角度ずつ検査画像が回転される。上下反転が選択されると、０度と１８０度の２つの回転角度でだけサーチが実行される。これにより処理時間が短縮される。上下反転が適している形状のワークでは、サーチのロバスト性が向上する。多角形が選択されると、頂点数Ｎを選択するための選択領域が有効となり、ユーザは頂点数Ｎを設定する。これにより、３６０度を頂点数Ｎで除算して得られる商（角度）ずつ、検査画像が回転されることになる。ナットのような多角形ワークでは、処理時間が短縮されるとともに、サーチのロバスト性が向上する。
【００５８】
回転中心設定部８４は検査対象物８の回転中心４２を設定するためのユーザインタフェースである。回転中心設定部８４の設定ボタンがコンソール９によって操作されると、十字マークによって示されている回転中心４２の座標（位置）が変更可能となる。つまり、コンソール９の操作に応じて回転中心４２の座標（位置）が設定される。第二サーチにおいては、回転中心４２を基準として検査画像内の検査対象物８（未検査品）の回転量が求められる。求められた回転量は検査領域４３の姿勢の補正量として決定される。
【００５９】
図８が示すように、第二領域７２と第一領域７０は同一のユーザインタフェース上で設定されもよいし、それぞれ個別のユーザインタフェース上で設定されてもよい。
【００６０】
姿勢特徴高密度化設定部８５は第二領域７２内におけるモデル点の密度の高密度化を有効化するためのＵＩである。高密度化が有効化されると、第二領域７２内におけるモデル点の密度が、それ以外の領域におけるモデル点の密度よりも高密度化される。これにより多くの探索ラインが設定されることになり、サーチのロバスト性が向上しよう。なお、モデル点とは、画像から抽出されたエッジ上に数画素おきに設定される幾何サーチの基準点である。探索ラインとは、各モデル点ごとに設定されるラインであり、エッジの法線方向に延びるラインである。幾何サーチはこの探索ラインに沿って実行される（特開２０１０−０６７２４６号公報）。幾何サーチでは複数の探索ライン上に重なっている未検査品のエッジの数が計算され、最もエッジの数が多かった位置が検査画像内における未検査品の位置として決定される。なお、幾何サーチとしては輪郭サーチなどが採用されてもよい。偏芯余裕範囲設定部８６は回転中心４２の偏芯許容量を設定するためのＵＩである。偏芯許容量を増加するとサーチ範囲が増加する。つまり、探索ラインの長さが延長される。これにより、より広い範囲にわたって姿勢特徴に類似する候補が探索されることになる。なお、正規化相関サーチやその他のパターンマッチングなど、探索ラインを用いないサーチ手法では探索範囲を広げる他の手法が採用されてもよい。また、姿勢特徴高密度化を適応する際に、たとえば、姿勢特徴に選ばれた部分に重みを付けた、重み付き正規化相関を採用可能である。これは、モデル点密度を上げるのと同様に、姿勢特徴を通常より重視したサーチを行うことを可能とする。
【００６１】
＜位置・姿勢補正＞
ここでは幾何サーチを用いて検査画像内での規範パターンの位置と姿勢を求め、求められた位置および姿勢に応じて検査領域の位置と姿勢の補正量を決定する。一般に幾何サーチでは、規範画像に対して検査画像の位置を少しずつシフトさせながらエッジの類似度や相関値等の評価値が求められ、最も高い評価値となった位置が特定される。つまり、検査画像のシフト量が検査領域の位置の補正量となる。なお、ここでは検査ツールの検査領域が検査画像ごとに補正されるものとして説明するが、規範画像を用いて決定された検査ツールの検査領域を固定したまま検査画像の位置や姿勢が補正されてもよい。つまり、検査領域の位置や姿勢を補正する代わりに、検査画像の位置や姿勢が補正されてもよい。
【００６２】
図６、図９、図１０を用いて位置・姿勢補正について説明する。位置・姿勢補正は運転モード（Ｓ８）において実行される処理の一部であり、各検査対象物８ごとに実行される。
【００６３】
Ｓ２０でＣＰＵ２２（撮像制御部５８）はカメラ４や照明装置５を制御して検査対象物８（未検査品）を撮像し、検査画像の画像データを検査画像記憶部６１に記憶させる。
【００６４】
Ｓ２１で画像処理部３０（第一サーチ部６５）は規範画像の第一領域７０から抽出された特徴を検査対象画像（検査画像）からサーチすることで規範パターンの位置および姿勢を粗（ラフ）に決定する第一サーチ工程を実行する。たとえば、第一サーチ部６５は、検査画像から抽出した外形特徴と予め規範画像から抽出されて設定データ記憶部６２に保持されている外形特徴とを比較し、検査画像における規範パターンの位置および姿勢を決定する。なお、規範画像における規範パターンの位置および姿勢に対する検査画像における規範パターンの位置および姿勢の差が、検査ツールの検査領域の補正量として利用される。サーチ手法としては幾何サーチや正規化相関サーチを適用可能であるが、ここでは幾何サーチが実行されるものとする。
【００６５】
第一サーチ工程はＳ２２やＳ２３のような複数のサーチ工程を含んでいてもよい、これらの複数のサーチ工程のうち少なくとも一つが実行されてもよい。Ｓ２２で縮小画像生成部６４は検査画像を縮小して縮小画像を生成し、第一サーチ部６５が縮小画像における規範パターンの位置および姿勢をサーチする。なお、縮小画像が使用される場合、画像処理部３０は、規範画像についても縮小画像を生成し、外形特徴や姿勢特徴などを予め抽出する。
【００６６】
図１０（Ａ）は縮小画像を用いた位置と姿勢のサーチ結果の一例を示す図である。実線は規範パターン（検査合格品）を示し、破線は未検査品を示している。縮小画像は、元の画像のサイズを１／４、１／８または１／１６などの縮尺で縮小することで生成される。縮小画像を用いることでサーチ処理が高速化する。その反面、外形特徴に比べて姿勢特徴は小さいため、縮小画像では姿勢特徴が失われてしまう。したがって、規範画像における規範パターンの位置に対して検査画像における未検査品の位置を近づけることは可能であるが、姿勢に関してはずれてしまう。
【００６７】
Ｓ２３で第一サーチ部６５はＳ２２で使用された縮小画像よりもサイズの大きな画像（検査画像）を用いて微細サーチを実行し、検査画像における規範パターンの位置および姿勢を決定する。Ｓ２２で使用された縮小画像のサイズが１／８であれば、Ｓ２３では１／１の画像（検査画像そのもの）が使用されてもよいし、１／４のサイズの縮小画像が使用されてもよい。小さなサイズの画像よりも大きなサイズの画像の方が姿勢特徴を多く残しているため、検査画像内での未検査品の位置および姿勢をより細密に決定可能となる。
【００６８】
図１０（Ｂ）は微細サーチの結果を示している。図１０（Ａ）と比較すると、図１０（Ｂ）では微細サーチによって、規範パターンの位置に対して未検査品の位置がさらに近づいていることがわかる。微細サーチでも、未検査品の検査画像から見つかったエッジの法線方向に探索ラインを設定し、探索ラインに沿って検査画像を移動させることで、未検査品の位置や姿勢を規範パターンの位置や姿勢に近づける。しかし、円形ワークなどの高度に対称性を有する検査対象物８ではこのような微細サーチを用いても未検査品の姿勢を正確に求めることが難しい。そのため、図１０（Ｂ）が示す微細サーチの結果においても未検査品の姿勢は検査合格品の姿勢からずれている。
【００６９】
Ｓ２４で第二サーチ部６６は第一サーチ工程において決定された検査画像内の規範パターンの位置および姿勢の少なくとも一方を細密に決定する第二サーチ工程を実行する。とりわけ、第二サーチ工程では、第二領域７２から抽出された姿勢特徴を検査画像からサーチし、当該サーチ結果に基づき検査画像内での規範パターンの位置および姿勢の少なくとも一方が細密に決定される。たとえば、第二サーチ部６６は予め設定された回転中心４２を基準として検査画像を回転させることで、規範画像内の規範パターン（検査合格品）の位置および姿勢に対して検査画像内での規範パターン（未検査品）の位置や姿勢を近づける。つまり、規範画像内での規範パターンの位置および姿勢に対する検査画像内での規範パターンの位置や姿勢のずれ量が正確に求められる。図１０（Ｃ）は第二サーチ工程のサーチ結果の一例を示す図である。第二サーチ工程では、外形特徴を用いずに、姿勢特徴を利用して検査画像を回転させながら、未検査品の位置や姿勢がサーチされる。そのため、未検査品の位置と姿勢が規範パターンにより一層近づくため、検査領域の姿勢がより正確に補正されるようになる。
【００７０】
Ｓ２５で第一サーチ部６５は規範パターンの外形特徴を用いた微細サーチを再度実行することで未検査品の位置や姿勢がより精度よく決定される。つまり、規範画像内の規範パターンの位置および姿勢に対する検査画像内の未検査品の位置や姿勢のずれ量がさらに正確に求められる。図１０（Ｄ）は最終的なサーチ結果を示しており、規範パターンの位置および姿勢に対して未検査品の位置や姿勢が精度よく決定されていることがわかる。このように、再度、微細サーチを適用することで、回転中心の位置のずれ（偏芯）の影響も低減されることになる。
【００７１】
Ｓ２６で位置姿勢決定部６７は、最終的に求められた位置・姿勢の補正量を用いて各検査ツールの検査領域の位置と姿勢を補正する。つまり、位置姿勢決定部６７は、規範画像における規範パターンの位置および姿勢に対する検査画像における未検査品の位置や姿勢のずれ量から検査ツールの位置および姿勢の補正量を決定する。たとえば、規範パターンの姿勢に対して未検査品の姿勢が時計回りにθ度だけ回転している場合、検査ツールの検査領域を時計回りにθ度だけ回転させる。換言すれば、規範パターンに対して未検査品を時計回りに−θ度だけ回転したときに、規範パターンと未検査品との位置や姿勢が一致した場合、位置姿勢決定部６７は、検査ツールの検査領域を時計回りにθ度だけ回転させる。このように、ずれ量の符号（＋、−）を反転させることで補正量が決定されてもよい。これにより、検査画像内の規範パターン（未検査品）に対して各検査ツールの検査領域が配置される。なお、規範画像に対して決定された各検査ツールの検査領域の位置と姿勢を固定して、検査画像の位置と姿勢が補正されてもよい。このように検査画像と検査領域との位置・姿勢の関係は相対的なものであるため、検査画像の位置・姿勢が補正されてもよいし、検査領域の位置・姿勢が補正されてもよい。
【００７２】
Ｓ２７で外観検査部６８は、検査ツール選択部５５により選択された検査ツールを用いて検査画像に対して外観検査を実行する。検査ツールは位置や姿勢の補正された検査領域を用いる。Ｓ２８でＣＰＵ２２（良否判定部５９）は外観検査部６８から受け取った外観検査の実行結果と、検査閾値設定部５７により設定された閾値とを比較することで、検査画像に写りこんでいる検査対象物８が良品かどうかを判定する。
【００７３】
このように、本実施形態では、第一サーチ工程と第二サーチ工程といった少なくとも二段階のサーチが実行される。また、規範パターンの位置や姿勢を特徴づける第二領域が規範画像に対して設定され、第二領域から取得された特徴に基づいて、検査画像における規範パターンの位置および姿勢の少なくとも一方が細密に決定される。これにより、検査対象物８の外形が対称形状であっても検査領域の位置および姿勢の少なくとも一方が精度よく決定されるようになる。
【００７４】
＜ＣＰＵ等が実現するその他の機能＞
図６に示した検査ツール選択部５５は検査対象物８に対して実行される検査ツールを、コンソール９を通じて入力されるユーザ指示にしたがって選択する。画像処理部３０の外観検査部６８は様々な検査ツールを有しているが、そのすべてが常に必要となるわけではない。ユーザは検査対象物８に応じて実行されるべき検査ツールを選択する。検査領域設定部５６は検査ツール選択部５５によって選択された検査ツールによって検査の対象となる領域（検査領域）を設定する。たとえば、検査対象物８の第一部位から第二部位までの距離を計測する計測ツールが選択された場合、検査対象物８の規範となる製品（検査合格品）の画像に対して第一部位を囲む検査領域と第二部位を囲む検査領域とが設定される。検査対象物８の第一部位の面積を計測する面積計測ツールが選択された場合は、検査対象物８の規範となる製品（検査合格品）の画像に対して第一部位を囲む検査領域が設定される。検査閾値設定部５７は検査対象物８の良否を判定するための基準となる検査閾値を設定する。たとえば、検査ツール選択部５５によって距離を計測する計測ツールが選択された場合、検査閾値設定部５７は距離の合格基準となる範囲（公差）を検査閾値として設定する。検査閾値はコンソール９などを通じてユーザにより入力される。これらの設定データも設定データ記憶部６２に記憶され、運転モードにおいて外観検査部６８により読み出されて使用される。
【００７５】
＜規範パターンの姿勢を固定した位置のサーチ＞
検査画像における規範パターンの位置と姿勢を正確に求める際に、規範パターンの姿勢を固定しつつ、基本パターンをある特定の方向にのみ直線的にサーチすることで、検査画像内での規範パターンの位置と姿勢が正確に求められることがある。
【００７６】
図１１（Ａ）は規範画像における規範パターン（検査合格品）９０と検査画像における規範パターン（未検査品）９１の関係を示している。このような規範パターンについて図１０（Ｂ）が示すように、エッジを求め、エッジの法線方向に探索ラインを設定し、探索ラインに沿って検査画像をシフトすることで規範パターンの位置と姿勢を探索したとしても、十分に良いサーチ結果が得られない。そこで、第二領域設定部５３は、図１０（Ｃ）が示すように規範パターンの端部に第二領域を設定することで位置姿勢特徴９３を設定する。さらに、パラメータ設定部５１は、コンソール９を通じて入力されたユーザ指示に従ってサーチ方向９４を設定する。第二サーチ部６６は位置姿勢特徴９３を検査画像内でサーチ方向９４に沿ってシフトすることで検査画像における規範パターンの位置と姿勢を決定する。このように細長いワークではワークの長さ方向と平行にサーチ方向９４を設定することで、検査画像における規範パターンの位置と姿勢をより正確に決定することが可能となる。正規化相関サーチなど、探索ラインを用いてない手法でも、姿勢特徴が一致する位置が、相関値（評価値）として最も高くなるわけではなく、外乱等に影響される場合がある。したがって、本実施例のように姿勢特徴に基づいてサーチをすることが有利である。
【００７７】
なお、このような直線的なサーチについては、上述したプルダウンメニュー８３において「直線」が選択されると実行される。つまり、プルダウンメニュー８３において第二サーチ工程のサーチ方式として「直線」が選択されると、Ｓ２４で第二サーチ部６６は図１０（Ｄ）に示したようにサーチ方向９４に沿って直線的に検査画像を移動させ、検査画像における規範パターンの位置と姿勢をサーチする。
【００７８】
このような直線的なサーチは細線ワークやコネクタワークで有効であろう。コネクタワークでは多数の類似ないしは同一の形状（多数の端子など）が並んでいるため、サーチの誤りが発生しやすい。そこで、特定方向をサーチ方向に設定することで第二サーチ工程における姿勢特徴のサーチの精度が向上する。
【００７９】
ここでサーチ方向９４をメインに説明したが、パラメータ設定部５１はサーチ方向９４とともに探索距離を設定してもよい。これにより探索範囲が限定されるため、第二サーチ部６６におけるサーチ時間の短縮化を図ることが可能となる。
【００８０】
＜姿勢特徴サーチの応用例＞
姿勢特徴サーチには様々な応用例が存在する。図１２（Ａ）はコンデンサの側面図である。コンデンサ１００には端子１０１が設けられる底面１０２と、この底面１０２の反対側に位置する頂面１０３とがある。よって、コンデンサ１００の本体に端子１０１を接続するためにコンデンサ１００の上下を検査ツールによって判別することがある。上述した姿勢特徴を抽出するための第二領域７２をコンデンサ１００の底面付近にある姿勢特徴に設定することで、検査ツールによって精度よくコンデンサ１００の上下を判別することが可能となる。
【００８１】
図１２（Ｂ）は位相マークを付与されたナットを示す図である。ナット１１０のような正多角形のワークは高度の対称性を有しているため、通常の幾何サーチでは姿勢を判別することが困難である。本実施形態では、ナット１１０の表面に付与された位相マーク１１１に第二領域７２を設定することで姿勢特徴が抽出され、検査ツールは姿勢特徴に基づきナット１１０の位相を判別できるようになる。ナット１１０の位相がわかれば、ナット１１０が規定の位相まで締め付けられているかを検査することも可能となる。
【００８２】
図１２（Ｃ）は円形ワーク１２０の表面に文字１２２が付与されている例を示している。円形ワーク１２０の表面に傷１２１が付いているかどうかを検査ツールが検出する場合、円形ワーク１２０の表面に付与されている文字１２２が傷と誤検出されてしまうことがある。よって、文字１２２にはマスクを施すことで、マスク内については傷検出を禁止することが望ましい。しかし、マスクを正確に貼り付けるためには、円形ワーク１２０の姿勢を正確に検出し、検出した姿勢に応じてマスクを正確に貼り付ける必要がある。そこで、文字１２２に第二領域７２を設定すること画像処理部３０は円形ワーク１２０の姿勢を正確に求められるようになる。つまり、位置姿勢決定部６７は文字１２２に対して正確にマスクを配置することが可能となる。これにより、検査ツールが文字１２２を傷として誤検出してしまう確率が減少し、本来の傷１２１を精度よく検出することが可能となる。
【００８３】
＜重み付け姿勢特徴サーチ＞
図９のＳ２４では姿勢特徴のみを用いた幾何サーチによって検査画像における規範パターンの位置と姿勢を求めていた。しかし、外形的特徴など姿勢特徴以外の特徴も姿勢特徴とともに考慮されてもよい。ただし、姿勢特徴は外形的特徴と比較して小さな特徴であるため、姿勢特徴のサーチへの寄与率が低い。そこで、本実施形態では、姿勢特徴のみの評価値（例：相関値）に大きな重みαを付与することで、複数の特徴の内で姿勢特徴のサーチへの寄与率を相対的に増加させる。
【００８４】
ある回転角度での評価値＝姿勢特徴のみの評価値×α  ＋  姿勢特徴以外の特徴の評価値
このように各回転角度について重みづけされた評価値を求めることで、姿勢特徴のサーチへの寄与率が増加し、精度よく、位置と姿勢が決定されるようになる。
【００８５】
＜正規化相関サーチ＞
図９や図１１では第二サーチ工程で幾何サーチを実行するものとして説明した。一般に幾何サーチでは、規範画像または検査画像のうち一方の位置を少しずつシフトしながら、規範画像におけるエッジと検査画像におけるエッジとの重なっている数を求め、重なっている数が最も大きいときの位置（シフト量）が求められる。上述したように各エッジにいくつかのモデル点が設定され、各モデル点からエッジに対して法線方向に延びる探索ラインが設定され、この探索ラインに沿ってシフトが実行されてもよい。このような幾何サーチに代えて、図１３が示すような正規化相関サーチが適用されてもよい。この場合、第二サーチ工程（Ｓ２４）と微細サーチ（Ｓ２５）はＳ３１ないしＳ３３に置換される。Ｓ３１で第二サーチ部６６は予め設定された回転中心４２を基準として、規範画像に設定された第二領域内の模範パターンを一定角度ずつ回転させ、各角度における規範パターンと検査画像との相関値を求める。Ｓ３２で第二サーチ部６６は求められた複数の相関値のうち最も高い相関値を求め、最も高い相関値が得られた角度を特定する。Ｓ３３で第一サーチ部６５は最も高い相関値が得られた角度について上述した微細サーチを実行することで、偏芯の影響が低減される。
【００８６】
＜姿勢特徴領域の数＞
図８に示したユーザインタフェースでは姿勢特徴領域である第二領域７２は一つだけ設定されていたが、図１４が示すように複数の第二領域７２ａ、７２ｂが設定されてもよい。この場合、第二領域７２ａ、７２ｂのそれぞれについて姿勢特徴が抽出され、幾何サーチや正規化相関サーチなどが実行されることになる。
【００８７】
＜まとめ＞
以上説明したように本実施形態によれば、検査対象物８を撮像して得られた検査対象画像（検査画像４５）の中から、予め登録された規範パターンをサーチし、当該検査画像４５に対して当該規範パターンの位置および姿勢を決定する位置決め方法が提供される。図５ないし図８などを用いて説明したように、設定工程では、検査対象物８の規範となる製品（検査合格品など）の規範画像４０が表示され、当該規範画像４０において規範パターンを取り囲むように第一領域７０が設定される。さらに、設定工程では、当該規範画像４０において規範パターンの位置や姿勢を特徴づける第二領域７２が設定される。Ｓ２１に関して説明したように、第一サーチ工程では、規範画像４０に設定された第一領域７０から抽出された特徴を検査画像４５からサーチすることで検査画像４５における規範パターンの位置および姿勢が粗く（ラフに）求められる。Ｓ２４に関して説明したように、第二サーチ工程では、第一サーチ工程で決定された規範パターンの位置および姿勢の少なくとも一方が細密に求められる。とりわけ、第二サーチ工程では、規範画像４０の第二領域７２から抽出された特徴が検査画像４５からサーチされ、検査画像４５における規範パターンの位置および姿勢の少なくとも一方が細密に求められる。このように、本実施形態では、規範パターンの位置や姿勢を特徴づける第二領域７２が設定され、第二領域７２からこれらの特徴が抽出され、検査画像４５における規範パターンの位置および姿勢が求められる。したがって、外形形状の対称性を有する製品であっても精度よく位置決めを行うことが可能となる。
【００８８】
Ｓ２６に関して説明したように、第一サーチ工程および第二サーチ工程を通じて決定された規範パターンの位置および姿勢に合わせて検査対象物８の外観検査を実行する検査ツールの検査領域４３の位置および姿勢が決定される。つまり、検査ツールの検査領域４３の位置および姿勢は検査対象物８の位置や姿勢に合わせて補正される。もちろん、検査ツールの検査領域４３の位置および姿勢に合わせて検査画像４５の位置と姿勢が補正されてもよい。検査ツールの検査領域４３の位置および姿勢と、検査画像４５の位置および姿勢とは相対的な関係にあるからである。Ｓ２７、Ｓ２８に関して説明したように、検査画像４５に対して配置された検査領域４３において検査ツールにより外観検査が実行される。本実施形態では、対称性を有する製品であっても精度よく位置決めされるため、外観検査の精度の向上も期待できる。
【００８９】
図８のチェックボックス８２を用いて説明したように、第二サーチ工程を実行するか否かを選択する選択工程が設けられてもよい。選択工程において第二サーチ工程を実行することが選択されると、位置姿勢決定部６７は、第一サーチ工程および第二サーチ工程を通じて決定された規範パターンの位置および姿勢に合わせて検査領域の位置および姿勢を決定する。一方、選択工程において第二サーチ工程を実行しないことが選択されると、位置姿勢決定部６７は、第一サーチ工程により決定された規範パターンの位置および姿勢に合わせて検査領域の位置および姿勢を決定する。左右非対称のワークなど外形特徴だけでも十分に規範パターンの位置と姿勢を確定可能な製品も存在する。このような製品については、第二サーチ工程を省略することで、サーチ工程全体での処理時間を短縮することが可能となる。
【００９０】
図４（Ｃ）や図８を用いて説明したように、第二サーチ工程では、規範パターンに対して設定された回転中心を基準として検査画像（とりわけ、位置補正領域内の画像）を回転させることで検査画像における規範パターンの姿勢が細密に決定されてもよい。高対称性の検査対象物８であっても位置については精度よく求めることが可能である。したがって、姿勢を確定する際には回転中心を基準として回転処理を適用することで、効率よく、姿勢を求めることが可能となる。従来の幾何サーチ等では探索ラインに沿ってサーチを行っても姿勢を精度よく求めることが困難であった。しかし、回転処理によって姿勢をサーチすることで、従来よりも精度よく姿勢を求めることが可能となる。
【００９１】
図１１を用いて説明したように、第二サーチ工程は、規範パターンの姿勢を固定し、規範パターンの位置を直線的に変化させることで規範パターンの位置を細密に決定する工程を含んでもよい。細線ワークは対称性を有していないこともあるが、このようなワークに対してエッジの法線方向に探索ラインを設定しても精度よく位置決めを行うことが困難であった。そこで、規範パターンの姿勢を固定し、規範パターンの位置を直線的に変化させることで規範パターンの位置を細密に決定することが可能となる。
【００９２】
第一サーチ工程および第二サーチ工程では規範画像と検査画像とからそれぞれ抽出されたエッジ情報を用いて幾何サーチが実行されてもよい。また、第一サーチ工程および第二サーチ工程では規範画像と検査画像を用いたパターンマッチングが実行されてもよい。また、図１３を用いて説明したように第一サーチ工程および第二サーチ工程では規範画像と検査画像を用いた正規化相関サーチが実行されてもよい。Ｓ２２に関して説明したように、第一サーチ工程では規範画像と検査画像をそれぞれ縮小して得られる縮小画像を用いてサーチが実行されてもよい。これにより高速に位置決めを行うことが可能となる。
【００９３】
Ｓ２２に関して説明したように、第一サーチ工程では、検査画像を縮小して得られる第一縮小画像を用いて粗サーチが実行される。さらに、Ｓ２３に関して説明したように、検査画像の等倍画像または第一縮小画像よりも大きな第二縮小画像を用いて微細サーチが実行されてもよい。このような微細サーチを実行することで、位置決めの精度が向上する。また、位置決めが精度よく行われた状態で姿勢決めが実行されるため、精度よく姿勢決めも実行されることになろう。
【００９４】
Ｓ２４に関して説明したように、第二サーチ工程では、予め設定された回転中心に対して検査画像を回転させながら検査画像において規範パターンに対する類似度が最も高くなる姿勢が探索されてもよい。さらに、Ｓ２５、Ｓ３３に関して説明したように、再度、微細サーチを実行することで最終的な規範パターンの位置と姿勢が確定されてもよい。このように、再度の微細サーチによって回転中心のずれ（偏芯）の影響も軽減されよう。
【００９５】
図７や図８からわかるように、第一サーチ工程では相対的に大きな面積の特徴の類似度に基づき検査画像での規範パターン（規範パターンに類似した候補）の位置および姿勢がサーチされる。また、第二サーチ工程では相対的に小さな面積の特徴の類似度に基づき検査画像での規範パターン（規範パターンに類似した候補）の位置および姿勢がサーチされる。このように第二サーチ工程では、大きな面積の特徴を使用せずに、小さな面積の特徴を使用してサーチを行うことで位置や姿勢のサーチ精度が向上する。
【００９６】
上述した位置決め方法や外観検査方法はＣＰＵ２２などのコンピュータによって実行されるプログラムとして提供されてもよい。また、このようなプログラムを記録したコンピュータ可読記録媒体も本実施形態によって提供される。
【００９７】
図１を用いて説明したように、外観検査装置１は、検査対象物８を撮像して得られた検査画像の中から予め登録された規範パターン（規範パターンに類似した部分画像（候補））をサーチし、当該検査画像に対して当該規範パターンの位置および姿勢を決定し、検査対象物の外観検査を実行する外観検査装置として機能する。
【００９８】
図６を用いて説明したように、第一領域設定部５２は、検査対象物８の規範となる製品の規範画像をモニタ１０に表示し、当該規範画像において規範パターンを取り囲むように第一領域７０を設定する設定手段として機能する。第二領域設定部５３は、規範画像において規範パターンの位置および姿勢を特徴づける第二領域７２を設定する設定手段として機能する。第一サーチ部６５は、第一領域７０から抽出された特徴を検査画像からサーチすることで検査画像における規範パターンの位置および姿勢を粗（ラフ）に決定する第一サーチ手段として機能する。第二サーチ部６６は、第一サーチ部６５により決定された規範パターンの位置および姿勢の少なくとも一方を細密に求める第二サーチ手段として機能する。とりわけ、第二サーチ部６６は、第二領域７２から抽出された特徴を検査画像からサーチすることで、規範パターンの位置および姿勢の少なくとも一方を細密に求める。外観検査部６８は、第一サーチ部６５および第二サーチ部６６を通じて決定された規範パターンの位置および姿勢に合わせて検査対象物８の外観検査を実行する検査ツールの検査領域の位置および姿勢を補正し、当該位置および姿勢を補正された検査領域を用いて検査ツールにより外観検査を実行する検査手段として機能する。
【００９９】
また、図５や図９などを用いて説明したように本実施形態によれば外観検査方法が提供される。Ｓ１２、Ｓ１３によれば、検査対象物８の規範となる規範製品が写っている規範画像が表示され、当該規範画像において規範製品の外形特徴を取り囲むように外形特徴領域が設定される。Ｓ１５に関して説明したように、規範製品の位置および姿勢を特徴づける姿勢特徴を取り囲むように規範画像に対して姿勢特徴領域が設定される。Ｓ２０に関して説明したように、検査対象物８を撮像することで検査画像が取得される。Ｓ２１に関して説明したように、規範画像の外形特徴領域から抽出された外形特徴を検査画像からサーチして当該検査画像における検査対象製品の位置と姿勢を抽出する第一サーチ工程が実行される。Ｓ２４に関して説明したように、規範画像の姿勢特徴領域から抽出された姿勢特徴を検査画像からサーチすることで、第一サーチ工程において決定された検査対象製品の位置および姿勢の少なくとも一方を細密に決定する第二サーチ工程が実行される。Ｓ２６に関して説明したように、第一サーチ工程および第二サーチ工程を通じて特定された検査画像における検査対象製品の位置および姿勢に応じて、検査画像に対して検査領域を配置する配置工程が実行される。さらに、Ｓ２７などに関して説明したように、検査画像に対して配置された検査領域において検査対象製品の外観検査を実行する外観検査工程が実行される。とりわけ、本実施形態では姿勢特徴領域から抽出された姿勢特徴に基づき、検査画像の位置と姿勢が決定され、検査領域が配置されるため、精度よく外観検査を実行することが可能となる。
【図１】
0006608682.tif 000002
【図２】
0006608682.tif 000003
【図３】
0006608682.tif 000004
【図４】
0006608682.tif 000005
【図５】
0006608682.tif 000006
【図６】
0006608682.tif 000007
【図７】
0006608682.tif 000008
【図８】
0006608682.tif 000009
【図９】
0006608682.tif 000010
【図１０】
0006608682.tif 000011
【図１１】
0006608682.tif 000012
【図１２】
0006608682.tif 000013
【図１３】
0006608682.tif 000014
【図１４】
0006608682.tif 000015