(57)【特許請求の範囲】
【請求項１】
固定されておらず、不確定な位置で検査対象の外観を撮像し、前記検査対象の撮像画像を取得する撮像装置と、
良品の検査対象を撮像した参照画像と、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換する第１のホモグラフィ行列とを記憶する記憶部と、
前記撮像画像の特徴点及び前記参照画像の特徴点と、前記撮像画像の特徴点それぞれの特徴量及び前記参照画像の特徴点それぞれの特徴量を算出し、前記撮像画像の特徴点それぞれについて、前記参照画像の特徴点のうち前記特徴量が類似する参照画像を抽出する対応点検出部と、
前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換し、比較画像を出力する画像処理部と、
前記比較画像と前記参照画像とを用いて、前記検査対象が良品であるか不良品であるかを判断するマッチング処理部と、を含み、
前記画像処理部は、
前記第１のホモグラフィ行列の誤差を補正する第１の誤差行列と前記第１のホモグラフィ行列とを用いて前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換することによって得られる第１の比較画像の画素それぞれの輝度値と、前記参照画像の画素それぞれの輝度値との差の二乗和が最小となる、前記第１の誤差行列を算出し、
前記第１のホモグラフィ行列と前記第１の誤差行列とを用いて、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換し、前記第１の比較画像を出力し、
前記第１の比較画像の画素それぞれの輝度値と前記参照画像の画素それぞれの輝度値との差の第１の二乗和を算出し、
前記第１の二乗和を用いて、前記第１の比較画像と前記参照画像との第１の類似度を算出することを含み、
前記第１の類似度が所定の閾値を超える場合には、
前記マッチング処理部は、
前記検査対象が良品であると判断し、
前記第１の類似度が前記所定の閾値を超えない場合には、
前記撮像画像の特徴点それぞれの座標値、前記参照画像の特徴点それぞれの座標値及び前記対応点検出部の抽出結果を用いて、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換する第２のホモグラフィ行列を生成するホモグラフィ行列生成部を更に含み、
前記画像処理部は、
前記第２のホモグラフィ行列の誤差を補正する第２の誤差行列と前記第２のホモグラフィ行列とを用いて前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換することによって得られる第２の比較画像の画素それぞれの輝度値と、前記参照画像の画素それぞれの輝度値との差の二乗和が最小となる、前記第２の誤差行列を算出し、
前記第２のホモグラフィ行列と前記第２の誤差行列とを用いて、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換し、前記第２の比較画像を出力し、
前記マッチング処理部は、
前記第２の比較画像と前記参照画像とを比較して、前記比較画像と前記参照画像との第２の類似度を算出し、
前記第２の類似度が前記所定の閾値を超えた場合には、前記検査対象が不良品であると判断し、
前記第２の類似度が前記所定の閾値を超えなかった場合には、前記検査対象が良品であると判断する、
ことを特徴とする検査システム。
【請求項２】
固定されておらず、不確定な位置で検査対象の外観を撮像し、前記検査対象の撮像画像を取得することと、
良品の検査対象を撮像した参照画像と、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換する第１のホモグラフィ行列とを記憶することと、
前記撮像画像の特徴点及び前記参照画像の特徴点と、前記撮像画像の特徴点それぞれの特徴量及び前記参照画像の特徴点それぞれの特徴量を算出し、
前記撮像画像の特徴点それぞれについて、前記参照画像の特徴点のうち前記特徴量が類似する参照画像を抽出することと、
前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換し、比較画像を出力することと、
前記比較画像と前記参照画像とを用いて、前記検査対象が良品であるか不良品であるかを判断することと、を含み、
前記比較画像を出力することは、
前記第１のホモグラフィ行列の誤差を補正する第１の誤差行列と前記第１のホモグラフィ行列とを用いて前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換することによって得られる第１の比較画像の画素それぞれの輝度値と、前記参照画像の画素それぞれの輝度値との差の二乗和が最小となる、前記第１の誤差行列を算出し、
前記第１のホモグラフィ行列と前記第１の誤差行列とを用いて、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換し、前記第１の比較画像を出力し、
前記第１の比較画像の画素それぞれの輝度値と前記参照画像の画素それぞれの輝度値との差の第１の二乗和を算出し、
前記第１の二乗和を用いて、前記第１の比較画像と前記参照画像との第１の類似度を算出することを含み、
前記第１の類似度が所定の閾値を超える場合には、
前記検査対象が良品であるか不良品であるかを判断することは、
前記検査対象が良品であると判断し、
前記第１の類似度が前記所定の閾値を超えない場合には、
前記撮像画像の特徴点それぞれの座標値、前記参照画像の特徴点それぞれの座標値及び抽出された前記参照画像の特徴点のうち前記特徴量が類似する参照画像を用いて、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換する第２のホモグラフィ行列を生成することを更に含み、
前記比較画像を出力することは、
前記第２のホモグラフィ行列の誤差を補正する第２の誤差行列と前記第２のホモグラフィ行列とを用いて前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換することによって得られる第２の比較画像の画素それぞれの輝度値と、前記参照画像の画素それぞれの輝度値との差の二乗和が最小となる、前記第２の誤差行列を算出し、
前記第２のホモグラフィ行列と前記第２の誤差行列とを用いて、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換し、前記第２の比較画像を出力することを含み、
前記検査対象が良品であるか不良品であるかを判断することは、
前記第２の比較画像と前記参照画像とを比較して、前記比較画像と前記参照画像との第２の類似度を算出し、
前記第２の類似度が前記所定の閾値を超えた場合には、前記検査対象が不良品であると判断し、
前記第２の類似度が前記所定の閾値を超えなかった場合には、前記検査対象が良品であると判断することを含む、
ことを特徴とする検査方法。
【請求項３】
固定されておらず、不確定な位置で検査対象の外観を撮像し、前記検査対象の撮像画像を取得する撮像装置と、
良品の検査対象を撮像した参照画像と、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換する第１のホモグラフィ行列とを記憶する記憶部と、
前記撮像画像の特徴点及び前記参照画像の特徴点と、前記撮像画像の特徴点それぞれの特徴量及び前記参照画像の特徴点それぞれの特徴量を算出し、
前記撮像画像の特徴点それぞれについて、前記参照画像の特徴点のうち前記特徴量が類似する参照画像を抽出する対応点検出部と、
前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換し、比較画像を出力する画像処理部と、
前記比較画像と前記参照画像とを用いて、前記検査対象が良品であるか不良品であるかを判断するマッチング処理部として、
コンピュータを機能させ、
前記画像処理部は、
前記第１のホモグラフィ行列の誤差を補正する第１の誤差行列と前記第１のホモグラフィ行列とを用いて前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換することによって得られる第１の比較画像の画素それぞれの輝度値と、前記参照画像の画素それぞれの輝度値との差の二乗和が最小となる、前記第１の誤差行列を算出し、
前記第１のホモグラフィ行列と前記第１の誤差行列とを用いて、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換し、前記第１の比較画像を出力し、
前記第１の比較画像の画素それぞれの輝度値と前記参照画像の画素それぞれの輝度値との差の第１の二乗和を算出し、
前記第１の二乗和を用いて、前記第１の比較画像と前記参照画像との第１の類似度を算出することを含み、
前記第１の類似度が所定の閾値を超える場合には、
前記マッチング処理部は、
前記検査対象が良品であると判断し、
前記第１の類似度が前記所定の閾値を超えない場合には、
前記撮像画像の特徴点それぞれの座標値、前記参照画像の特徴点それぞれの座標値及び前記対応点検出部の抽出結果を用いて、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換する第２のホモグラフィ行列を生成するホモグラフィ行列生成部として、前記コンピュータを更に機能させ、
前記画像処理部は、
前記第２のホモグラフィ行列の誤差を補正する第２の誤差行列と前記第２のホモグラフィ行列とを用いて前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換することによって得られる第２の比較画像の画素それぞれの輝度値と、前記参照画像の画素それぞれの輝度値との差の二乗和が最小となる、前記第２の誤差行列を算出し、
前記第２のホモグラフィ行列と前記第２の誤差行列とを用いて、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換し、前記第２の比較画像を出力し、
前記マッチング処理部は、
前記第２の比較画像と前記参照画像とを比較して、前記比較画像と前記参照画像との第２の類似度を算出し、
前記第２の類似度が前記所定の閾値を超えた場合には、前記検査対象が不良品であると判断し、
前記第２の類似度が前記所定の閾値を超えなかった場合には、前記検査対象が良品であると判断する、
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理により製品の検査を行う検査システム、その方法及びプログラムに関するものである。
【背景技術】
【０００２】
現在、製造過程における製品の外観検査は、多くの製品に対して作業員の目視検査により行われている。
しかしながら、この作業員による目視検査は、作業員の熟練度による検査における良否判定のバラツキ、また、製品の不良を見逃すことにより、作業員が心理的な負担を受けることになる。
また、検査の判定を検査記録により再確認する場合、この検査記録における良否判定自体が各作業者によってばらついているため、過去の良否判定の見直しを高い精度にて行えないという問題もある。
【０００３】
このため、作業員による目視検査の問題を解決するため、製品の外観検査の自動化（画像処理による判定）が進められている。
例えば、固定されたカメラにより撮影された画像と、予め用意された画像とのテンプレートマッチングにより、製品に対する部品の取り付けの有無を確認する外観検査装置が提案されている（例えば、特許文献１を参照）。
また、カメラをロボットハンドに取り付け、このカメラの撮影した画像により外観検査を行う外観検査装置が提案されている（例えば、特許文献２を参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−５５６３７公報
【特許文献２】特開２００１−８８０７３公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１及び特許文献２に示す外観検査装置にあっては、製品を撮影する固定カメラまたはカメラが取り付けられたロボットを配置する必要があり、この配置する場所（作業スペース）を確保することと、製造ラインが変更される度に、配置させるための専用のシステムを導入する設備交換の煩雑さとが、外観検査の自動化を行う障壁となっている。
【０００６】
本発明は、このような事情に鑑みてなされたもので、その目的は、配置に必要な作業スペースと設備交換の煩雑さとの問題を解決し、外観検査の自動化を行うことが可能な検査システム、その方法及びプログラムを提供することにある。
【課題を解決するための手段】
【０００７】
本発明の検査システムは、固定されておらず、不確定な位置で検査対象の外観を撮像し撮像画像とする撮像装置と、予め基準となる前記検査対象を撮像した参照画像を記憶する記憶部と、前記撮像装置の撮像座標上の前記撮像画像を、前記参照画像を撮像した際の参照撮像座標上に座標変換し、変換した結果を比較画像として出力する画像処理部と、前記参照画像と前記比較画像とを比較するマッチング処理部とを備えることを特徴とする。
この構成により、本発明は、作業員が手に持った撮像装置により、検査対象の外観である撮像画像を撮影しても、この撮像画像をテンプレートである参照画像の撮影位置に合わせることができ、撮像画像と参照画像との比較を行うことが可能となる。
この結果、この発明によれば、作業員が手に携帯しているため、撮像位置が固定されず、常に不確定な撮像位置でも、参照画像と比較する比較画像を得ることができるため、従来の外観検査装置のように、撮像装置を固定する装置を配置する作業スペースと、その装置の設備の煩雑な交換とを必要としない。
また、この発明によれば、作業員が携帯して検査用の撮像画像を撮像するが、作業員自身が外観検査の判定を行う訳ではないので、検査ミスなどが発生した場合においても、作業者の心理的負担を低減することができる。
本発明の検査システムは、固定されておらず、不確定な位置で検査対象の外観を撮像し、前記検査対象の撮像画像を取得する撮像装置と、良品の検査対象を撮像した参照画像と、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換する第１のホモグラフィ行列とを記憶する記憶部と、前記撮像画像の特徴点及び前記参照画像の特徴点と、前記撮像画像の特徴点それぞれの特徴量及び前記参照画像の特徴点それぞれの特徴量を算出し、前記撮像画像の特徴点それぞれについて、前記参照画像の特徴点のうち前記特徴量が類似する参照画像を抽出する対応点検出部と、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換し、比較画像を出力する画像処理部と、前記比較画像と前記参照画像とを用いて、前記検査対象が良品であるか不良品であるかを判断するマッチング処理部と、を含み、前記画像処理部は、前記第１のホモグラフィ行列の誤差を補正する第１の誤差行列と前記第１のホモグラフィ行列とを用いて前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換することによって得られる第１の比較画像の画素それぞれの輝度値と、前記参照画像の画素それぞれの輝度値との差の二乗和が最小となる、前記第１の誤差行列を算出し、前記第１のホモグラフィ行列と前記第１の誤差行列とを用いて、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換し、前記第１の比較画像を出力し、前記第１の比較画像の画素それぞれの輝度値と前記参照画像の画素それぞれの輝度値との差の第１の二乗和を算出し、前記第１の二乗和を用いて、前記第１の比較画像と前記参照画像との第１の類似度を算出することを含み、前記第１の類似度が所定の閾値を超える場合には、前記マッチング処理部は、前記検査対象が良品であると判断し、前記第１の類似度が前記所定の閾値を超えない場合には、前記撮像画像の特徴点それぞれの座標値、前記参照画像の特徴点それぞれの座標値及び前記対応点検出部の抽出結果を用いて、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換する第２のホモグラフィ行列を生成するホモグラフィ行列生成部を更に含み、前記画像処理部は、前記第２のホモグラフィ行列の誤差を補正する第２の誤差行列と前記第２のホモグラフィ行列とを用いて前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換することによって得られる第２の比較画像の
画素それぞれの輝度値と、前記参照画像の画素それぞれの輝度値との差の二乗和が最小となる、前記第２の誤差行列を算出し、前記第２のホモグラフィ行列と前記第２の誤差行列とを用いて、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換し、前記第２の比較画像を出力し、前記マッチング処理部は、前記第２の比較画像と前記参照画像とを比較して、前記比較画像と前記参照画像との第２の類似度を算出し、前記第２の類似度が前記所定の閾値を超えた場合には、前記検査対象が不良品であると判断し、前記第２の類似度が前記所定の閾値を超えなかった場合には、前記検査対象が良品であると判断する、ことを特徴とする。
【０００８】
本発明の検査システムは、前記画像処理部が、前記撮像座標上の前記撮像画像を前記参照画像と同様の参照撮像座標に座標変換するホモグラフィ行列を、前記撮像画像に乗算して、前記参照画像と同様の参照撮像座標上（参照画像と同様の撮像位置の座標系）の前記比較画像を生成することを特徴とする。
この構成により、撮像画像の特徴点と参照画像の特徴点とにおける対応点からホモグラフィ行列を生成し、この生成したホモグラフィ行列を用いて、撮像画像を座標変換し、撮像座標を、参照画像と同様の参照撮像座標とした比較画像を生成する。
このため、ホモグラフィ行列が既知でなくとも、撮像画像の撮像座標を、参照画像と同様の参照撮像座標とするため、作業者が撮像装置の位置を、ホモグラフィ行列が既知となる位置に移動させるなどの注意を払うことなく、製品の外観検査を行うことができる。
【０００９】
本発明の検査システムは、前記画像処理部が、前記撮像座標上の前記撮像画像を前記参照画像と同様の参照撮像座標に座標変換するホモグラフィ行列と、当該ホモグラフィ行列の誤差を補正する誤差行列とを、前記撮像画像に対し乗算し、得られた比較画像と参照画像との各画素の輝度値の差の二乗和を求め、この二乗和が最小となる前記誤差行列を求め、この求めた誤差行列と前記ホモグラフィ行列とにより、前記撮像座標上の前記撮像画像を、前記参照画像と同様の参照撮像座標上に座標変換し、変換結果を前記比較画像として出力することを特徴とする。
この構成により、ホモグラフィ行列を誤差行列により補正する処理を行った後、補正したホモグラフィ行列により、撮像座標の撮像画像を、参照画像と同様の参照撮像座標上の比較画像に座標変換を行うようにしている。
このため、ホモグラフィ行列が既知でなくとも、撮像座標の撮像画像を、参照画像と同様の参照撮像座標の比較画像とするため、作業者が撮像装置の位置を、ホモグラフィ行列が既知となる位置に移動させるなどの注意を払うことなく、製品の外観検査を行うことができる。
【００１０】
本発明の検査システムは、前記撮像画像と前記参照画像とにおける特徴点を求め、この特徴点の特徴量が類似する組合せを、前記撮像画像と前記参照画像との対応点として抽出する対応点検出部と、前記対応点である撮像画像及び参照画像の各々の特徴点の座標値を用い、前記ホモグラフィ行列を求めるホモグラフィ行列生成部とをさらに有することを特徴とする。
この構成により、撮像画像の特徴点と参照画像の特徴点とにおける対応点からホモグラフィ行列を生成し、この生成したホモグラフィ行列を用いて、撮像画像を座標変換し、撮像座標を、参照画像と同様の参照撮像座標とした比較画像を生成する。
このため、ホモグラフィ行列が既知でなくとも、撮像画像の撮像座標を、参照画像と同様の参照撮像座標とするため、作業者が撮像装置の位置を、ホモグラフィ行列が既知となる位置に移動させるなどの注意を払うことなく、製品の外観検査を行うことができる。
【００１１】
本発明の検査システムは、前記画像処理部が、前記比較画像と、前記参照画像との類似性を求め、当該類似性が予め設定した値以下の場合、前記撮像画像を他の撮像画像に変更し、検査処理を再度行うことを特徴とする。
この構成により、画像処理部がホモグラフィ行列生成部の生成するホモグラフィ行列により、一旦、撮像画像を座標変換し、参照画像と同様の参照撮像座標の比較画像とし、参照画像のテンプレート画像と、比較画像から形状抽出した画像との形状比較を行う。
このため、参照画像と比較画像との形状が大きく異なる場合、再度撮像画像の入力から外観検査を行うため、撮像画像の撮像した位置及び傾きが参照画像と大きく異なることで、良品を不良品とする誤った判定を抑制することができ、より作業員の手にした撮像装置で検査を行うことを容易とすることが可能である。
【００１２】
本発明の検査方法は、上記検査システムを動作させる検査方法であり、画像処理部が、固定されておらず、不確定な位置で撮像を行う撮像装置により撮像された検査対象の外観である撮像画像を入力し、前記撮像装置の撮像座標上の前記撮像画像を、予め基準となる前記検査対象の参照画像を撮像した際の参照撮像座標上に座標変換し、変換した結果を比較画像として出力する画像処理過程と、マッチング処理部が、前記参照画像と前記比較画像とを比較するマッチング処理過程とを有する。
本発明の検査方法は、固定されておらず、不確定な位置で検査対象の外観を撮像し、前記検査対象の撮像画像を取得することと、良品の検査対象を撮像した参照画像と、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換する第１のホモグラフィ行列とを記憶することと、前記撮像画像の特徴点及び前記参照画像の特徴点と、前記撮像画像の特徴点それぞれの特徴量及び前記参照画像の特徴点それぞれの特徴量を算出し、前記撮像画像の特徴点それぞれについて、前記参照画像の特徴点のうち前記特徴量が類似する参照画像を抽出することと、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換し、比較画像を出力することと、前記比較画像と前記参照画像とを用いて、前記検査対象が良品であるか不良品であるかを判断することと、を含み、前記比較画像を出力することは、前記第１のホモグラフィ行列の誤差を補正する第１の誤差行列と前記第１のホモグラフィ行列とを用いて前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換することによって得られる第１の比較画像の画素それぞれの輝度値と、前記参照画像の画素それぞれの輝度値との差の二乗和が最小となる、前記第１の誤差行列を算出し、前記第１のホモグラフィ行列と前記第１の誤差行列とを用いて、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換し、前記第１の比較画像を出力し、前記第１の比較画像の画素それぞれの輝度値と前記参照画像の画素それぞれの輝度値との差の第１の二乗和を算出し、前記第１の二乗和を用いて、前記第１の比較画像と前記参照画像との第１の類似度を算出することを含み、前記第１の類似度が所定の閾値を超える場合には、前記検査対象が良品であるか不良品であるかを判断することは、前記検査対象が良品であると判断し、前記第１の類似度が前記所定の閾値を超えない場合には、前記撮像画像の特徴点それぞれの座標値、前記参照画像の特徴点それぞれの座標値及び抽出された前記参照画像の特徴点のうち前記特徴量が類似する参照画像を用いて、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換する第２のホモグラフィ行列を生成することを更に含み、前記比較画像を出力することは、前記第２のホモグラフィ行列の誤差を補正する第２の誤差行列と前記第２のホモグラフィ行列とを用いて前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変
換することによって得られる第２の比較画像の画素それぞれの輝度値と、前記参照画像の画素それぞれの輝度値との差の二乗和が最小となる、前記第２の誤差行列を算出し、前記第２のホモグラフィ行列と前記第２の誤差行列とを用いて、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換し、前記第２の比較画像を出力することを含み、前記検査対象が良品であるか不良品であるかを判断することは、前記第２の比較画像と前記参照画像とを比較して、前記比較画像と前記参照画像との第２の類似度を算出し、前記第２の類似度が前記所定の閾値を超えた場合には、前記検査対象が不良品であると判断し、前記第２の類似度が前記所定の閾値を超えなかった場合には、前記検査対象が良品であると判断することを含む、ことを特徴とする。
【００１３】
本発明のプログラムは、上記検査システムの機能をコンピュータに実行させるためのプログラムであり、画像処理部が、固定されておらず、不確定な位置で撮像を行う撮像装置により撮像された検査対象の外観である撮像画像を入力し、前記撮像装置の撮像座標上の前記撮像画像を、予め基準となる前記検査対象の参照画像を撮像した際の参照撮像座標上に座標変換し、変換した結果を比較画像として出力する画像処理ステップと、マッチング処理部が、前記参照画像と前記比較画像とを比較するマッチング処理ステップとを有するコンピュータが実行可能なプログラムである。
本発明のプログラムは、固定されておらず、不確定な位置で検査対象の外観を撮像し、前記検査対象の撮像画像を取得する撮像装置と、良品の検査対象を撮像した参照画像と、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換する第１のホモグラフィ行列とを記憶する記憶部と、前記撮像画像の特徴点及び前記参照画像の特徴点と、前記撮像画像の特徴点それぞれの特徴量及び前記参照画像の特徴点それぞれの特徴量を算出し、前記撮像画像の特徴点それぞれについて、前記参照画像の特徴点のうち前記特徴量が類似する参照画像を抽出する対応点検出部と、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換し、比較画像を出力する画像処理部と、前記比較画像と前記参照画像とを用いて、前記検査対象が良品であるか不良品であるかを判断するマッチング処理部として、コンピュータを機能させ、前記画像処理部は、前記第１のホモグラフィ行列の誤差を補正する第１の誤差行列と前記第１のホモグラフィ行列とを用いて前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換することによって得られる第１の比較画像の画素それぞれの輝度値と、前記参照画像の画素それぞれの輝度値との差の二乗和が最小となる、前記第１の誤差行列を算出し、前記第１のホモグラフィ行列と前記第１の誤差行列とを用いて、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換し、前記第１の比較画像を出力し、前記第１の比較画像の画素それぞれの輝度値と前記参照画像の画素それぞれの輝度値との差の第１の二乗和を算出し、前記第１の二乗和を用いて、前記第１の比較画像と前記参照画像との第１の類似度を算出することを含み、前記第１の類似度が所定の閾値を超える場合には、前記マッチング処理部は、前記検査対象が良品であると判断し、前記第１の類似度が前記所定の閾値を超えない場合には、前記撮像画像の特徴点それぞれの座標値、前記参照画像の特徴点それぞれの座標値及び前記対応点検出部の抽出結果を用いて、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換する第２のホモグラフィ行列を生成するホモグラフィ行列生成部として、前記コンピュータを更に機能させ、前記画像処理部は、前記第２のホモグラフィ行列の誤差を補正する第２の誤差行列と前記第２のホモグラフィ行列とを用いて前記撮像画像の撮像座標を前記参照画像の撮像座標に座
標変換することによって得られる第２の比較画像の画素それぞれの輝度値と、前記参照画像の画素それぞれの輝度値との差の二乗和が最小となる、前記第２の誤差行列を算出し、前記第２のホモグラフィ行列と前記第２の誤差行列とを用いて、前記撮像画像の撮像座標を前記参照画像の撮像座標に座標変換し、前記第２の比較画像を出力し、前記マッチング処理部は、前記第２の比較画像と前記参照画像とを比較して、前記比較画像と前記参照画像との第２の類似度を算出し、前記第２の類似度が前記所定の閾値を超えた場合には、前記検査対象が不良品であると判断し、前記第２の類似度が前記所定の閾値を超えなかった場合には、前記検査対象が良品であると判断する、ことを特徴とするプログラムである。
【図面の簡単な説明】
【００１４】
【図１】この発明の第１の実施形態による検査システムの構成例を示すブロック図である。
【図２】撮像画像を撮像したカメラC１と、参照画像を撮像したカメラC２とのワールド座標系における、それぞれのカメラ座標Ｊ１とカメラ座標Ｊ２との関係を示す図である。
【図３】ＥＳＭ法により、カメラ座標Ｊ１からカメラ座標Ｊ２への座標変換を説明する概念図である。
【図４】第１の実施形態よる検査システムにおける検査処理の動作例を示すフローチャートである。
【図５】この発明の第２の実施形態による検査システムの構成例を示すブロック図である。
【図６】撮像画像の特徴点と、参照画像の特徴点とを比較し、類似した点を対応点として抽出する処理を説明する図である。
【図７】第２の実施形態よる検査システムにおける検査処理の動作例を示すフローチャートである。
【図８】第３の実施形態よる検査システムにおける検査処理の動作例を示すフローチャートである。
【図９】第４の実施形態よる検査システムにおける検査処理の動作例を示すフローチャートである。
【図１０】第５の実施形態よる検査システムにおける検査処理の動作例を示すフローチャートである。
【発明を実施するための形態】
【００１５】
本発明の検査システムは、例えば、プリント基板上における電子部品の実装の有無、あるいは装置において配置する部品の有無を検査する装置等である。
この検査システムは、作業員が手にしたカメラなどの撮像装置により、例えば、プリント基板の電子部品の実装面を撮像した撮像画像と、予め検査対象の電子部品の実装面（良品もしくは不良品である）を撮像した参照画像とを比較して、製品の良否を判断する。
【００１６】
このとき、本発明においては、作業員が自身で携帯する撮像装置により、撮像画像を撮像するため、この撮像画像と、予め撮像された参照画像との撮像した際の撮像装置の位置及び傾きと異なるため、この撮像画像を参照画像と同一の位置及び傾きに変換して、変換後の撮像画像を参照画像と比較する。
以下、上述した本発明の実施形態を詳細に説明する。
【００１７】
＜第１の実施形態＞
以下、図面を参照して、本発明の第１の実施形態について説明する。図１は、この発明の第１の実施形態による検査システムの構成例を示す概略ブロック図である。
同図において、検査システムは、画像検査装置１と撮像装置２とから構成されている。
画像検査装置１は、入力処理部１１、画像処理部１２、マッチング処理部１３及び参照画像記憶部１４を備えている。
撮像装置２は、デジタルカメラまたはデジタルビデオカメラ等の画像を撮像する装置であり、作業員Ｐにより携帯されている。作業員Ｐは、撮像装置２により検査対象の製品Ｔの外観を撮像する。レンジファインダを用いて距離画像を得るようにしてもよい。
【００１８】
入力処理部１１は、撮像した製品Ｔの撮像画像が撮像装置２から供給されると、画像処理部１２へこの撮像画像を出力する。
また、入力処理部１１は、撮像装置２がデジタルビデオカメラの場合、所定の周期にてサンプリングして、サンプリングした画像データを撮像画像として画像処理部１２へ出力する。
参照画像記憶部１４は、検査対象の製品が良品の場合、あるいは不良品の場合の外観の画像データである、基準となる参照画像が記憶されている。以下においては、参照画像として良品の場合の製品の外観を撮像した画像を用いた場合を説明する。
【００１９】
画像処理部１２は、撮像画像を撮影したカメラ座標を、参照画像を撮影したカメラ座標に変換する処理を行う。ここで、カメラ座標とは、３次元のワールド（世界）座標系に位置する、カメラが撮像した２次元平面の座標系を示している。このため、カメラ座標系の平面にある画素は、ワールド座標系におけるｘ，ｙ，ｚ座標における並進ベクトル及び回転ベクトルにより表されることになる。
【００２０】
図２は撮像画像を撮像したカメラC１（撮像装置２）と、参照画像を撮像したカメラC２（予め参照画像を撮像した撮像装置、撮像装置２あるいは他の撮像装置）とのワールド座標系における、それぞれのカメラ座標Ｊ１とカメラ座標Ｊ２との関係を示す図である。検査対象としての製品Ｔのある面の座標系は２次元の座標（平面）πである。座標πの点Ｑが、カメラ座標Ｊ１の座標ｐ＊、またカメラ座標Ｊ２の座標ｐに対応している。
カメラC１のカメラ座標Ｊ１と、カメラC２のカメラ座標Ｊ２とは、互いに２次元座標である座標πにある製品の面を撮像しているが、製品Ｔの面を撮像した位置及び傾きが異なるため、互いに空間的に異なる位置に配置された２次元座標系となっている。
このため、参照画像をテンプレートとして、外観検査のためのマッチング処理を行う場合には、カメラ座標Ｊ１をカメラ座標Ｊ２の座標系に対応させる必要がある。
【００２１】
ここで、カメラ座標Ｊ１をカメラ座標Ｊ２に変換するためには、座標変換関数が用いられ、例えば、一般的にホモグラフィ行列が用いられている。
ホモグラフィ行列Ｈは、３×３行列であり、下記（１）式により表され、例えば、ワールド座標系において、カメラ座標Ｊ１を、カメラ座標Ｊ２に変換させる。すなわち、この（２）式において、Ａ１及びＡ２はそれぞれカメラC１、カメラC２のカメラ特有の内部パラメータであり、Ｒはカメラ座標Ｊ２に対するカメラ座標Ｊ１の回転ベクトルであり、ｔはカメラ座標Ｊ２に対するカメラ座標Ｊ１の並進ベクトルであり、ｄはカメラC１のレンズ中心から平面πに対する垂線の長さ、ｎは平面πにおけるカメラC１のカメラ座標Ｊ１での法線ベクトルである。
【００２２】
【数１】
0005600954.tif 000002
【００２３】
また、空間における同一点をカメラC１及びカメラC２において撮像した際、その点がカメラC１のカメラ座標Ｊ１の座標点Ｐ＊に位置し、カメラC２のカメラ座標Ｊ２の座標点Ｐに位置する。
ワールド座標系において、座標点Ｐ＊と座標点Ｐとに対してホモグラフィ行列Ｈによる対応関係は、以下の（２）式として表される。
【００２４】
【数２】
0005600954.tif 000003
【００２５】
（２）式において、αはカメラ座標Ｊ１における座標点Ｐ＊と、カメラ座標Ｊ２の座標点Ｐの座標値により決定される定数である。また、ｕ＊、ｖ＊は座標点Ｐ＊の２次元座標系における座標を示し、ｕ、ｖは座標点Ｐの２次元座標系における座標を示している。それぞれの「１」は、各カメラの焦点距離を示す数値であり、この焦点距離により座標が規格化されている。このため、規格化した際の焦点距離の数値は定数αに含まれている。これにより、ワールド座標系におけるカメラ座標Ｊ１及びカメラ座標Ｊ２との中心と平面πとの距離は、同様と考えられる。
【００２６】
また、ホモグラフィ行列Ｈは、３×３の行列であり、同一平面状の４個以上の座標点Ｐ＊（カメラ座標Ｊ１の２次元平面上の座標点）と座標点Ｐ（カメラ座標Ｊ２の２次元平面上の座標点）との組が４つ以上あれば、求めることができる。
ホモグラフィ行列は３×３の行列であり、９個の成分を持つが、定数倍の自由度があるので、どれか一つの成分を定数に固定して、未知数は８個であるとみなせる。対応点として座標点が４組あれば、それぞれカメラ座標の２軸（X軸、Y軸）の成分を持っているので、８個の連立方程式を立てることが出来、未知数が決定できる。
【００２７】
図１に戻り、画像処理部１２は、入力処理部１１から撮像画像を読み込み、上述したホモグラフィ行列Ｈを用いて、作業員がカメラC１により撮像した撮像画像のカメラ座標Ｊ１を、カメラC２で撮像した参照画像のカメラ座標Ｊ２に変換する処理を行う。
ここで、撮像画像の撮像位置が参照画像の撮像位置近傍にある場合、後述する行列＾Ｇには単位行列が用いられる。この単位行列は、例えばカメラ座標Ｊ１の各画素を座標変換した場合、同一のカメラ座標Ｊ１となる行列である。
このため、画像処理部１２は、参考文献（”Ｈｏｍｏｇｒａｐｈｙ−ｂａｓｅｄ  ２Ｄ  Ｖｉｓｕａｌ  Ｔｒａｃｋｉｎｇ  ａｎｄ  Ｓｅｒｖｏｉｎｇ”、Ｓ．Ｂｅｎｈｉｍａｎｅ  ａｎｄ  Ｅ．Ｍａｌｉｓ、Ｔｈｅ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｊｏｕｒｎａｌ  ｏｆ  Ｒｏｂｏｔｉｃｓ  Ｒｅｓｅｒｃｈ  ２００７；２６；６６１）等に記載されている一般的なＥＳＭ法（Ｅｆｆｉｃｉｅｎｔ  Ｓｅｃｏｎｄ−ｏｒｄｅｒ  Ｍｉｎｉｍｉｚａｔｉｏｎ  Ｍｅｔｈｏｄ；効率的２次最小化法、）を用いた座標変換処理を行う。座標変換を行うことができれば、これ以外の手法を用いるようにしてもよい。
【００２８】
図３はＥＳＭ法によるカメラ座標Ｊ１からカメラ座標Ｊ２への座標変換を説明する概念図である。このＥＳＭ法とは、後述するＳＩＦＴ及びＳＵＲＦが複数次元の特徴量を有する特徴点を用いて対応点を抽出し、この対応点を用いてホモグラフィ行列を生成している。
一方、ＥＳＭ法においては、全画素の各々の輝度値（階調度）を用いてホモグラフィ行列を生成している。
ここで、画像処理部１２は、図３に示すように、座標変換においてホモグラフィ行列Ｈではなく＾ＧＧ（ｘ）を用いている。ここで、＾ＧとＨとは同一の行列である。また、Ｇ（ｘ）は、誤差ベクトルである。
ＥＳＭ法のアルゴリズムは、ホモグラフィ行列＾Ｇにより透視投影変換を行い、誤差行列Ｇ（ｘ）によりさらに回転及び並進処理を行うことで、ワールド座標系において、撮像画像のカメラ座標Ｊ１の各画素の座標値を、参照画像のカメラ座標Ｊ２の各画素の座標値に近づける操作を行うものである。
まず、画像処理部１２は、ホモグラフィ行列＾ＧＧ（ｘ）を用い、カメラ座標Ｊ１の撮像画像の座標点ｐ（画素）を、カメラ座標Ｊ２の参照画像と同一平面に対して透視投影変換する。これにより、カメラ座標系Ｊ１の座標点ｐ＊に対応したカメラ座標系Ｊ２における座標点ｐは以下の（３）式により求められる。（３）式において、ｗ（Ｇ）は座標変換に用いる透視投影変換行列である。
【００２９】
【数３】
0005600954.tif 000004
【００３０】
これにより、カメラ座標Ｊ１（撮像画像）の座標値ｐ＊を、カメラ座標Ｊ２（参照画像）の座標値ｐに、ホモグラフィ行列＾ＧＧ（ｘ）により変換し、この（４）式により求められる座標値ｐ、すなわちカメラ座標Ｊ１の変換値ｐ＊に対応するカメラ座標Ｊ２の座標値ｐの画素の明るさは、以下の（４）式により表される。
【００３１】
【数４】
0005600954.tif 000005
【００３２】
また、カメラ座標Ｊ１における座標値Ｐ＊の画素の明るさは、以下の（５）式により表される。
【００３３】
【数５】
0005600954.tif 000006
【００３４】
画像処理部１２は、（３）式により、カメラ座標系Ｊ１の座標点ｐ＊に対応したカメラ座標系Ｊ２における座標点ｗ（＾ＧＧ（ｘ））（ｐ＊）を求める。
また、画像処理部１２は、この座標点ｗ（＾ＧＧ（ｘ））（ｐ＊）の画素の輝度値Ｉ（ｗ（＾ＧＧ（ｘ））（ｐ＊））を、参照画像記憶部１４の参照画像から読み出す。
画像処理部１２は、カメラ座標系Ｊ１における座標値ｐ＊の画素の輝度値を読み出し、輝度値Ｉ（ｗ（＾ＧＧ（ｘ））（ｐ＊））から、輝度値Ｉ＊（ｐ＊）を減算して誤差を算出する。
【００３５】
画像処理部１２は、このカメラ座標Ｊ１の全ての座標値ｐ＊を順次、カメラ座標Ｊ２の座標値ｗ（＾ＧＧ（ｘ））（ｐ＊）に座標変換し、座標変換したカメラ座標Ｊ２における座標値ｗ（＾ＧＧ（ｘ））（ｐ＊）の画素の輝度値と、変換前のカメラ座標Ｊ１の座標値ｐ＊の画素の輝度値との差分を、以下の（６）式により求める。
【００３６】
【数６】
0005600954.tif 000007
【００３７】
また、画像処理部１２は、カメラ座標系Ｊ１の撮像画像の全ての座標点について、上述した二乗和を求め、誤差行列Ｇ（ｘ）の要素を変換することで、回転及び並進の処理を行い、二乗和が最小となる誤差行列Ｇ（ｘ）を要素ｘを変更しつつ求める。
また、このとき、画像処理部１２は、撮像画像の各画素を座標変換し、参照画像と同一の画素数にする。すなわち、カメラ座標Ｊ２における参照画像の座標範囲をはみ出した部分の画素（参照画像の画素と重ならない画素）に座標変換された画素を破棄し、参照画像の座標範囲に入る画素（参照画像の画素と重なる画素）のみを比較画像とする。
【００３８】
画像処理部１２は、ホモグラフィ行列＾Ｇと二乗和が最小となる誤差行列Ｇ（ｘ）とを用い、（３）式により撮像画像を、参照画像と同様の撮像位置のカメラ座標Ｊ２上に変換する座標変換を行い、座標変換の結果として比較画像を生成し、生成した比較画像をマッチング処理部１３へ出力する。
ここで、二乗和が最小となるＧ（ｘ）における要素ｘを求めるアルゴリズムとしては、ＥＳＭ法で用いたアルゴリズムではなく、ＫＬＴ（Ｋａｎａｄｅ−Ｌｕｃａｓ−Ｔｏｍａｓｉ）法等を用いても良い。
【００３９】
マッチング処理部１３は、参照画像のデータを参照画像記憶部１４から読み込み、画像処理部１２から入力される比較画像の各画素と、この各画素に座標値に対して参照画像の対応する座標値の画素との差分を求め、全画素の差分の二乗和を、以下に示す（７）式により求める。この式（７）において、Ｐｉは比較画像の画素ｉの輝度値であり、Ｔｉは参照画像の画素ｉの輝度値である。
【００４０】
【数７】
0005600954.tif 000008
【００４１】
マッチング処理部１３は、予め設定した閾値以下の場合、参照画像と比較画像とが一致したと判定して良品を示す信号を出力し、一方、予め設定した閾値を超えた場合、参照画像と比較画像とが一致しないと判定して不良品を示す信号を出力する。
また、マッチング処理部１３は、差分の二乗和を求めるのではなく、以下の（８）式に示す相関係数により類似度を求めるように構成しても良い。この（８）式において、Ｔｉは参照画像の画素ｉの輝度値であり、ＴＭは参照画像における全画素の輝度値の平均値であり、Ｐｉは比較画像の画素ｉの輝度値であり、ＰＭは比較画像の全画素の輝度値の平均値である。
【００４２】
【数８】
0005600954.tif 000009
【００４３】
この（８）式を用いた場合、マッチング処理部１３は、予め設定した閾値以上の場合、参照画像と比較画像とが一致したと判定して良品を示す信号を出力し、一方、予め設定した閾値未満の場合、参照画像と比較画像とが一致しないと判定して不良品を示す信号を出力する。
【００４４】
次に、第１の実施形態による検査システムの動作を図４を用いて説明する。図４は第１の実施形態による検査システムの検査処理の動作例を示すフローチャートである。
本実施形態は、後述する他の実施形態に対して、対応点の検索を行っていないが、例えば、撮像画像が参照画像近傍の画像の場合、すなわちカメラ座標Ｊ１とカメラ座標Ｊ２とがほぼ重なる位置である場合に有効に用いることができる。
【００４５】
ステップＳ１：
入力処理部１１は、撮像装置２から製品Ｔが撮像された撮像画像のデータを、画像処理部１２に対して出力する。撮像装置２による製品Ｔの撮像は、作業者Ｔが撮像装置２を手に持って、製品Ｔの各面の撮像することにより行われる。ここで、作業者Ｔはいずれの面を、撮像装置２により撮像しているかを示す識別情報を、入力処理部１１に対して入力する。
画像処理部１２は、入力処理部１１から供給される撮像画像を所定の周期において、内部記憶部に格納する。
【００４６】
ステップＳ２：
次に、画像処理部１２は、撮像している面の識別情報に対応する参照画像のデータを、参照画像記憶部１４から読み込み、内部記憶部に格納する。
【００４７】
ステップＳ３：
次に、画像処理部１２は、すでに説明したように、ＥＳＭ法により、ワールド座標系におけるカメラ座標Ｊ１からカメラ座標Ｊ２に座標変換するホモグラフィ行列を求め、カメラ座標Ｊ１における撮像画像の各画素の座標を、カメラ座標Ｊ２における比較画像の各画素の座標に変換する。
【００４８】
ステップＳ４：
マッチング処理部１３は、比較画像と参照画像との対応する座標点における輝度値を、二乗和あるいは相関値を用いて、類似度を抽出し、この抽出した類似度により、撮像した製品Ｔの面が良品か不良品かのいずれであるかの判定を行う。
【００４９】
ステップＳ４：
そして、マッチング処理部１３は、例えば、（７）式を用いた差の二乗和あるいは相関値等により、比較画像の参照画像に対する類似度を求めた場合、予め設定した閾値以下の場合、参照画像と比較画像とが一致したと判定して良品を示す信号を出力する。
一方、マッチング処理部１３は、予め設定した閾値を超えた場合、参照画像と比較画像とが一致しないと判定して不良品を示す信号を出力する。
【００５０】
上述したように、本実施形態によれば、作業者Ｐが撮像した製品Ｔの撮像画像と、予め良品の製品の画像として撮像した参照画像とを比較するため、カメラ座標Ｊ１の撮像画像を一旦、参照画像と同一のカメラ座標Ｊ２の比較画像に座標変換し、参照画像の座標系に合わせた後に、比較画像と参照画像との比較を行うため、作業者が手で持つ撮像装置２で撮像した撮像画像を容易に参照画像と比較することが可能となる。
この結果、製品Ｔに対して常に撮像装置２を固定しておく必要が無く、作業者がその度に撮像装置２により任意の位置から、製品Ｔの各面の撮像を行うことができ、撮像装置２を固定する装置を配置する作業スペースと、製造ライン変更に伴う煩雑な装置設備の交換作業とを必要とせず、かつ作業員自身が外観検査の判定を行わないので、作業者の心理的負担を低減することができる。
【００５１】
＜第２の実施形態＞
次に、図面を参照して、本発明の第２の実施形態について説明する。図５は、この発明の第２の実施形態による検査システムの構成例を示す概略ブロック図である。
同図において、検査システムは、第１の実施形態と同様に、画像検査装置１と撮像装置２とから構成されている。
画像検査装置１は、入力処理部１１、画像処理部２２、マッチング処理部１３、参照画像記憶部１４、対応点検出部１５及びホモグラフィ行列作成部１６を備えている。図１の第１の実施形態と同様の構成については同一の符号を付し、その説明を省略する。
【００５２】
対応点検出部１５は、撮像画像及び参照画像の各々に対して、ＳＵＲＦ（Ｓｐｅｅｄｅｄ  Ｕｐ  Ｒｏｂｕｓｔ  Ｆｅａｔｕｒｅｓ）またはＳＩＦＴ（Ｓｃａｌｅ  Ｉｎｖａｒｉａｎｔ  Ｆｅａｔｕｒｅ  Ｔｒａｎｓｆｏｒｍ）を用いて、画像の特徴点の抽出を行い、画像の特徴点とその特徴量のベクトルのデータとを求める。このとき、特徴ベクトルの合成ベクトルが予め設定した数値以上の画素を特徴点として検出する。この特徴点の特徴量のベクトルとしては、ＲＧＢ（Red Green Blue；三原色）毎の階調度、隣接する画素との色毎の階調度の差などの複数の次元から構成されている。例えば、ＳＩＦＴを用いた場合、特徴量としては１２８次元のベクトルとして表現される。
【００５３】
また、対応点検出部１５は、撮像画像の特徴点と、参照画像の特徴点とを比較し、類似する画素を対応点として選択する。
図６は撮像画像の特徴点と、参照画像の特徴点とを比較し、類似した点を対応点として抽出する処理を説明する図である。
対応点検出部１５は、撮像画像の特徴点Ｄ１を選択し、この特徴点Ｄ１の特徴量と、参照画像の全ての特徴点との比較を、以下の（９）式により行う。
【００５４】
【数９】
0005600954.tif 000010
【００５５】
すなわち、対応点検出部１５は、撮像画像の特徴点Ｄ１と、全ての参照画像の特徴点各々とのユークリッド距離を、（９）式により求め、特徴点Ｄ１とユークリッド距離が最小の参照画像における特徴点を抽出し、撮像画像の特徴点Ｄ１と、抽出された参照画像の特徴点とを対応点として組合せる。例えば、図６においては、撮像画像の特徴点Ｄ１との間において、最もユークリッド距離の小さい参照画像の特徴点は特徴点ＤＰ１であり、特徴点Ｄ１と特徴点ＤＰ１とが対応点となる。
【００５６】
図６において、特徴点Ｄ１と特徴点ＤＰ１との特徴長のユークリッド距離ｄは１２であり、特徴点Ｄ１と特徴点ＤＰ２との特徴量のユークリッド距離ｄは５４であり、特徴点Ｄ１と特徴点ＤＰ３との特徴量のユークリッド距離ｄは４７であり、特徴点Ｄ１と特徴点ＤＰ２との特徴量のユークリッド距離ｄは６８である。
このため、対応点検出部１５は、特徴点Ｄ１と特徴点ＤＰ１とのユークリッド距離ｄが１２と、全ての組合せのなかで最も小さいため、撮像画像の特徴点Ｄ１と、参照画像の特徴点ＤＰ１とを対応点として組合せに設定する。
そして、対応点検出部１５は、撮像画像の特徴点を順次選択し、選択した特徴点毎に、参照画像の特徴点各々とのユークリッド距離を求め、最小となるユークリッド距離を有する参照画像の特徴点を、選択した特徴点の対応点とする。
ここで、対応点検出部１５は、後述するホモグラフィ行列の算出に必要な対応点を、４組以上求める。
【００５７】
ホモグラフィ行列生成部１６は、撮像画像の特徴点と参照画像の特徴点との対応点全ての情報を用いて、（２）式を求め、この（２）式を連立させて解くことにより、ホモグラフィ行列Ｈのなかの４つの未定要素を求める。ここでは、対応点を精度良く抽出する方法としてRANSAC等がある。
画像処理部２２は、ホモグラフィ行列生成部１６の生成したホモグラフィ行列Ｈを用いて、カメラ座標Ｊ１の撮像画像の各画素の座標点を座標変換し、カメラ座標Ｊ２における比較画像を生成する。この座標変換により、カメラ座標Ｊ２の参照画像と同様の位置及び傾きである撮像画像として、比較画像を得ることができる。
【００５８】
次に、第２の実施形態による検査システムの動作を図７を用いて説明する。図７は第２の実施形態による検査システムの検査処理の動作例を示すフローチャートである。
図７のフローチャートにおいて、ステップＳ２１、ステップＳ２８、ステップＳ２９の各々は、第１の実施形態の図４のフローチャートにおけるステップＳ１、ステップＳ４、ステップＳ５とそれぞれ同様のため説明を省略する。また、本実施形態においては、第１の実施形態におけるＥＳＭによる座標変換処理を行っていない。ＳＩＦＴなどにより抽出した特徴点から正確な対応点が抽出できれば、ＥＳＭによるカメラ座標Ｊ１とカメラ座標Ｊ２との合わせ込みが必要ではない。
このＥＳＭの処理の有無は、検査対象毎に撮像画像及び参照画像における特徴点の数の比較、あるいは特徴量のユークリッド距離の大きさなどを実験により求めておく。
【００５９】
ステップＳ２２：
次に、対応点検出部１５は、内部記憶部に記憶している撮像画像（ステップＳ２１において入力された撮像画像）における特徴点の抽出を、ＳＩＦＴまたはＳＵＲＦ等を用いて行う。
【００６０】
ステップＳ２３：
そして、対応点検出部１５は、撮像している面の識別情報に対応する参照画像のデータを、参照画像記憶部１４から読み込み、内部記憶部に格納する。
【００６１】
ステップＳ２４：
次に、対応点検出部１５は、内部記憶部に記憶している参照画像における特徴点の抽出を、ＳＨＩＦを用いて行う。
【００６２】
ステップＳ２５：
撮像画像及び参照画像の特徴点の抽出が終了すると、対応点検出部１５は、撮像画像の特徴点を順次１つ選択し、この選択した撮像画像の特徴点と、参照画像の全特徴点の各々との特徴量のユークリッド距離を求め、選択した撮像画像の特徴点とのユークリッド距離が最も小さい参照画像の特徴点を、選択した撮像画像の特徴点との対応点として抽出する。
また、対応点検出部１５は、上述した特徴点の組合せとしての対応点において、この対応点における最も小さなユークリッド距離が予め設定した値より小さい場合、この撮像画像の特徴点と参照画像の特徴点とを、対応点として抽出しないように構成しても良い。
【００６３】
ステップＳ２６：
次に、ホモグラフィ行列生成部１６は、抽出された対応点のなかから、特徴量のユークリッドが小さい方から４つの対応点を抽出し、この４つの対応点を用いてホモグラフィ行列を求める。
すなわち、ホモグラフィ行列生成部１６は、対応点毎に組み合わされている特徴点の座標を用い、４つの（２）式を生成し、この４つの式を連立して解くことにより、ホモグラフィ行列Ｈの未定要素を求めて、ホモグラフィ行列Ｈを生成する。
【００６４】
ステップＳ２７：
画像処理部２２は、ホモグラフィ行列生成部１６が求めたホモグラフィ行列により、カメラ座標Ｊ１における２次元平面上の撮像画像を座標変換し、カメラ座標Ｊ２の２次元平面上の比較画像を生成する。
この後段の処理であるステップＳ２８及びステップＳ２９の各々は、それぞれ図４のフローチャートのステップＳ４、ステップＳ５と同様のため、説明を省略する。
【００６５】
本第２の実施形態によれば、第１の実施形態と同様に、作業者Ｐが撮像した製品Ｔの撮像画像と、予め良品の製品の画像として撮像した参照画像とを比較するため、カメラ座標Ｊ１の撮像画像を一旦、参照画像と同一のカメラ座標Ｊ２の比較画像に座標変換し、参照画像の座標系に合わせた後に、比較画像と参照画像との比較を行うため、作業者が手で持つ撮像装置２で撮像した撮像画像を容易に参照画像と比較することが可能となる。
この結果、製品Ｔに対して常に撮像装置２を固定しておく必要が無く、作業者がその度に撮像装置２により任意の位置から、製品Ｔの各面の撮像を行うことができ、撮像装置２を固定する装置を配置する作業スペースと、製造ライン変更に伴う煩雑な装置設備の交換作業とを必要とせず、かつ作業員自身が外観検査を行わないので、作業者の心理的負担を低減することができる。
【００６６】
また、本第２の実施形態によれば、撮像画像の特徴点と参照画像の特徴点とにおける対応点からホモグラフィ行列Ｈを生成し、この生成したホモグラフィ行列Ｈを用いて、カメラ座標Ｊ１の撮像画像を、参照画像と同様のカメラ座標Ｊ２に変換し（各画素の座標変換を行い）、参照画像と同様の撮影位置とした比較画像を生成する。
このため、ホモグラフィ行列が既知でなくとも、カメラ座標Ｊ１の撮像画像を、参照画像と同様のカメラ座標Ｊ２に座標変換して比較画像とするため、作業者が撮像装置の位置を、ホモグラフィ行列が既知となる位置に移動させるなどの注意を払うことなく、製品の外観検査を行うことができる。
【００６７】
＜第３の実施形態＞
次に、本発明の第３の実施形態について説明する。第３の実施形態の構成は、第２の実施形態と同様である。以下、第２の実施形態と異なる動作を説明する。
第３の実施形態が第２の実施形態と異なる点は、画像処理部２２がホモグラフィ行列Ｈを用いて、（３）式から（６）式により、カメラ座標Ｊ１の２次元平面上の撮像画像を、カメラ座標Ｊ２の２次元平面上の比較画像に座標変換することにある。
【００６８】
次に、第３の実施形態による検査システムの動作を図８を用いて説明する。図８は第３の実施形態による検査システムの検査処理の動作例を示すフローチャートである。
図８のフローチャートにおいて、ステップＳ３１からステップＳ３６の各々は、それぞれ図７のフローチャートのステップＳ２１からステップＳ２６と同様であり、説明を省略する。また、ステップＳ３９及びステップＳ４０の各々は、図７のフローチャートのステップＳ２８、ステップＳ２９と同様であり、説明を省略する。
【００６９】
ステップＳ３７、Ｓ３８：
次に、画像処理部１２は、ワールド座標系におけるカメラ座標Ｊ１からカメラ座標Ｊ２に座標変換するホモグラフィ行列Ｈ及び参照画像の各画素の輝度値を用い、第１の実施形態において説明したＥＳＭ法により、ホモグラフィ行列＾Ｇ（Ｈ）に対する誤差行列Ｇ（ｘ）を求め、カメラ座標Ｊ１における撮像画像の各画素の座標を、カメラ座標Ｊ２における比較画像の各画素の座標に座標変換する。
この後段の処理であるステップＳ３９及びステップＳ４０の各々は、それぞれ図７のフローチャートのステップＳ２８、ステップＳ２９と同様のため、説明を省略する。
【００７０】
第４の実施形態によれば、第１及び第２の実施形態の効果に加え、撮像画像の特徴点と参照画像の特徴点とにおける対応点からホモグラフィ行列を生成し、この生成したホモグラフィ行列＾Ｇ（Ｈ）を誤差行列Ｇ（ｘ）により補正する処理を行った後、補正したホモグラフィ行列（＾ＧＧ（ｘ））により、カメラ座標Ｊ１の撮像画像を、参照画像と同様のカメラ座標Ｊ２の比較画像に座標変換を行うようにしている。
このため、ホモグラフィ行列が既知でなくとも、カメラ座標Ｊ１の撮像画像を、参照画像と同様のカメラ座標Ｊ２の比較画像とするため、作業者が撮像装置の位置を、ホモグラフィ行列が既知となる位置に移動させるなどの注意を払うことなく、製品の外観検査を行うことができる。
【００７１】
＜第４の実施形態＞
次に、本発明の第４の実施形態について説明する。第４の実施形態の構成は、第３の実施形態と同様である。以下、第３の実施形態と異なる動作を説明する。
第３の実施形態と異なる点は、まず、第１の実施形態と同様にＥＳＭを行いた座標変換処理を行う。そして、座標変換したカメラ座標Ｊ２における座標値ｗ（＾ＧＧ（ｘ））（ｐ＊）の画素の輝度値と、変換前のカメラ座標Ｊ１の座標値ｐ＊の画素の輝度値との差分の二乗和による類似度（後述する（７）式）、あるいは相関値による類似度（後述する（８）式）を求め、この類似度が予め設定した閾値に対して低い場合、第２の実施形態と同様にホモグラフィ行列の生成を行う。
【００７２】
次に、第４の実施形態による検査システムの動作を図９を用いて説明する。図９は第４の実施形態による検査システムの検査処理の動作例を示すフローチャートである。第３の実施形態に追加された処理としては、ステップＳ７０及びステップＳ７１である。
ステップＳ３１：
入力処理部１１は、撮像装置２から製品Ｔが撮像された撮像画像のデータを、画像処理部１２に対して出力する。撮像装置２による製品Ｔの撮像は、作業者Ｔが撮像装置２を手に持って、製品Ｔの各面の撮像することにより行われる。ここで、作業者Ｔはいずれの面を、撮像装置２により撮像しているかを示す識別情報を、入力処理部１１に対して入力する。
画像処理部１２は、入力処理部１１から供給される撮像画像を所定の周期において、内部記憶部に格納する。
【００７３】
ステップＳ３３：
そして、対応点検出部１５は、撮像している面の識別情報に対応する参照画像のデータを、参照画像記憶部１４から読み込み、内部記憶部に格納する。
【００７４】
ステップＳ７０：
次に、画像処理部１２は、すでに説明したように、ＥＳＭ法により、ワールド座標系におけるカメラ座標Ｊ１からカメラ座標Ｊ２に座標変換するホモグラフィ行列を求め、カメラ座標Ｊ１における撮像画像の各画素の座標を、カメラ座標Ｊ２における比較画像の各画素の座標に変換する。
【００７５】
ステップＳ７１：
そして、画像処理部１２は、座標変換したカメラ座標Ｊ２における座標値ｗ（＾ＧＧ（ｘ））（ｐ＊）の画素の輝度値と、変換前のカメラ座標Ｊ１の座標値ｐ＊の画素の輝度値との差分を全画素で加算し、この加算値の逆数を類似度とし予め設定した閾値を超える場合、類似しているとして、ホモグラフィ行列＾Ｇと得られた誤差行列Ｇとにより、撮像画像の各画素の座標変換を行い、比較画像を生成して処理をステップＳ３９へ進め、一方、類似度が予め設定した閾値より低い場合、類似していないとして処理をステップＳ３２へ進める。
以降の処理は、第３の実施形態と同様であるため、説明を省略する。
本実施形態によれば、撮像画像を参照画像の撮像位置近傍で撮像することにより、ホモグラフィ行列を求めることなく、行列＾Ｇを対角行列とし、誤差行列Ｇ（ｘ）により微調整を行うことで、テンプレートマッチングの処理を行うことが可能となるため、高速化することができる。
【００７６】
＜第５の実施形態＞
次に、本発明の第５の実施形態について説明する。第５の実施形態の構成は、第２及び第３の実施形態と同様である。以下、第３の実施形態と異なる動作を説明する。
第５の実施形態が第３の実施形態と異なる点は、画像処理部２２がホモグラフィ行列Ｈを生成した後、このホモグラフィ行列Ｈにより、カメラ座標Ｊ１の撮像画像を、参照画像と同様なカメラ座標Ｊ２の比較画像に座標変換し、座標変換後の形状が参照画像の形状と大きく異なっていた場合、撮像画像が異なる位置を撮像したり、あるいは参照画像を撮像した位置と大幅にずれていて座標変換の可能範囲を超えているとして、現在処理している撮像画像を破棄し、新たに次に入力処理部１１がサンプリングする撮像画像に対して新たに処理を開始することにある。
【００７７】
次に、第５の実施形態による検査システムの動作を図１０を用いて説明する。図１０は第５の実施形態による検査システムの検査処理の動作例を示すフローチャートである。
図１０のフローチャートにおいて、ステップＳ５１からステップＳ５６の各々は、それぞれ図９のフローチャートのステップＳ３１からステップＳ３６と同様であり、説明を省略する。また、ステップＳ６０及びステップＳ６１の各々は、図９のフローチャートのステップＳ３９、ステップＳ４０と同様であり、説明を省略する。
【００７８】
ステップＳ５７：
画像処理部２２は、ホモグラフィ行列生成部１６から入力されるホモグラフィ行列Ｈにより、このホモグラフィ行列Ｈにより、カメラ座標Ｊ１の撮像画像を、参照画像と同様であるカメラ座標Ｊ２の比較画像に座標変換する。
【００７９】
ステップＳ５８：
画像処理部２２は、参照画像記憶部１４に予め記憶されている、参照画像における製品の形状抽出したテンプレート画像と、比較画像から形状抽出した画像との形状比較を行う。
ここで、画像処理部２２は、形状抽出として撮像画像のエッジ検出を行い、この検出したエッジの画像とテンプレート画像との類似度を、（７）式または（８）式により類似度を求め、この類似度が予め設定している数値より小さい場合、異なる形状と判定する。
【００８０】
このとき、画像処理部２２は、テンプレート画像と、比較画像から形状抽出した画像との形状が異なる場合、撮像画像が異なる位置を撮像したり、あるいは参照画像を撮像した位置と大幅にずれていて座標変換の可能範囲を超えているとして、処理をステップＳ５３に戻す。
一方、画像処理部２２は、テンプレート画像と、比較画像から形状抽出した画像との形状が同様の場合、処理をステップＳ５９へ進める。
【００８１】
ステップＳ５９：
次に、画像処理部１２は、第１の実施形態において説明したように、ＥＳＭ法により、ワールド座標系におけるカメラ座標Ｊ１からカメラ座標Ｊ２に座標変換するホモグラフィ行列を求め、カメラ座標Ｊ１における撮像画像の各画素の座標を、カメラ座標Ｊ２における比較画像の各画素の座標に変換する。
この後段の処理であるステップＳ６０及びステップＳ６１の各々は、それぞれ図８のフローチャートのステップＳ３９、ステップＳ４０と同様のため、説明を省略する。
【００８２】
第５の実施形態によれば、第１、第２及び第３の実施形態の効果に加え、画像処理部２２がホモグラフィ行列生成部１６の生成するホモグラフィ行列Ｈにより、一旦、撮像画像を座標変換し、参照画像と同様のカメラ座標Ｊ２の比較画像とし、参照画像のテンプレート画像と、比較画像から形状抽出した画像との形状比較を行い、形状が大きく異なる場合、再度撮像画像の入力から外観検査を行うため、撮像画像の撮像した位置及び傾きが参照画像と大きく異なることに起因する、良品を不良品とする誤った判定を抑制することができ、より作業員の手にした撮像装置で検査を行うことを容易とすることが可能である。
【００８３】
また、図１０に示すフローチャートにおいて、ステップＳ５８の処理を、ステップＳ５７とステップＳ５９の間ではなく、ステップＳ５９とステップＳ６０との間に配置する構成としても良い。
また、図１０のフローチャートに対して、ステップＳ５８と同様の処理を、ステップＳ６９及びステップＳ６０の間に追加する構成としても良い。
また、ステップＳ５８における座標変換がうまく行われたか否かの判定として、参照画像と比較画像との画像の比較を、上述した形状比較により行うのではなく、色の情報を用いて行うように、画像処理部２２を構成しても良い。例えば、変換される前の撮像画像における座標ｐ＊の画素の色情報（ＲＧＢの各々の階調度）と、変換された後の比較画像における座標ｐの画素の色情報とを比較し、予め設定された閾値を超える差分があれば、同様でないと判定する。
【００８４】
また、ステップＳ６０において、外観検査の結果として不良判定となった場合、ステップＳ６１に処理を進めるのではなく、ステップＳ５３からステップＳ６０までの処理を、良品判定となるまであるいは設定した回数まで、繰り返す構成としてもよい。この場合、設定した回数となるまで良品判定が行われない場合、外観検査の結果を不良と判定するようにする。
これにより、撮像画像の撮像した位置及び傾きが参照画像と大きく異なることに起因する、良品を不良品とする誤った判定を抑制することができ、作業員の手にした撮像装置で検査を行うことをさらに容易にすることが可能である。
【００８５】
第１の実施形態から第５の実施形態において、予め準備する参照画像を良品の画像として説明したが、例えば、電子部品の実装において、不良品となった実装基板の写真を撮像して参照画像として用い、類似したら不良品として判定するように構成しても良い。
また、予め複数の参照画像を準備しておき、各参照画像と撮像画像との類似の比較を行い、全てと類似した場合、あるいは予め設定した数以上に類似した場合を良品として判定（参照画像が不良品の場合には不良品と判定）するように構成しても良い。
なお、上述の実施形態において、平面画像に関する座標変換を説明したが、対象が３Dであっても本システムは有効である。3D復元には、８点以上の対応点があればよいので、平面と同様の手法（SIFT,SURF等を使う）で取り扱うことができる。３Dの場合は、座標変換にホモグラフィ行列を使いず、ホモグラフィ行列のような３×３の行列を使って座標変換を行う。
【００８６】
なお、図１及び図５に示す参照画像記憶部１４は、ハードディスク装置や光磁気ディスク装置、フラッシュメモリ等の不揮発性のメモリや、ＣＤ−ＲＯＭ等の読み出しのみが可能な記憶媒体、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）のような揮発性のメモリ、あるいはこれらの組み合わせにより構成されるものとする。
なお、図１及び図５における画像処理部１２、２２、マッチング処理部１３、対応点検出部１５及びホモグラフィ行列生成部１６は、専用のハードウェアにより実現されるものであってもよく、また、メモリおよびマイクロプロセッサにより実現させるものであってもよい。
なお、この画像処理部１２、２２は専用のハードウェアにより実現されるものであってもよく、また、この処理部３０はメモリおよびＣＰＵ（中央演算装置）により構成され、処理部３０の機能を実現するためのプログラムをメモリにロードして実行することによりその機能を実現させるものであってもよい。
なお、以上説明した実施形態において、テンプレートマッチング処理より前に撮影画像をテンプレート画像と同じ画素数にする場合には、SIFT、SURF等の処理の後（座標変換後）に対象領域の切り取り（対応点位置が分るので、切り出す画素領域もわかる）を行うか、ESMで座標変換した後に対象領域の切り取りを行う。
【００８７】
また、図１における画像処理部１２、２２、マッチング処理部１３、対応点検出部１５、ホモグラフィ行列生成部１６の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより外観検査の処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。
【００８８】
また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【００８９】
以上、この発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【００９０】
１…画像検査装置  ２…撮像装置  １１…入力処理部  １２，２２…画像処理部  １３…マッチング処理部  １４…参照画像記憶部  １５…対応点検出部  １６…ホモグラフィ行列生成部
【図１】
0005600954.tif 000011
【図２】
0005600954.tif 000012
【図３】
0005600954.tif 000013
【図４】
0005600954.tif 000014
【図５】
0005600954.tif 000015
【図６】
0005600954.tif 000016
【図７】
0005600954.tif 000017
【図８】
0005600954.tif 000018
【図９】
0005600954.tif 000019
【図１０】
0005600954.tif 000020