(57)【要約】【課題】パターンマッチングにより位置認識を行う際、サーチエリアのサイズを小さくしても、認識エラーが発生する危険性を極めて低くできるようにする。【解決手段】パターンマッチング処理手段１０２は、カメラによって撮像された画像上のサーチエリア内において、テンプレートとの相関値が最も高くなる第１のエリアの位置を求める。判別手段１０２は、テンプレートに最も類似した本来の認識すべきエリアである第２のエリアが、サーチエリアからはみ出しているか否かを判別する。サーチエリア変更手段１０４は、第２のエリアがサーチエリアからはみ出していると判別された場合、第１のエリアの相関値を利用して第２のエリアのはみ出し量を推測し、推測したはみ出し量に応じて上記画像上に設定するサーチエリアのサイズおよび位置を変更する。【選択図】図１
2011028427.tif 000002
【特許請求の範囲】
【請求項１】
カメラによって撮像された画像上のサーチエリア内においてテンプレートとの相関値が最も高くなる第１のエリアの位置を求めるパターンマッチング処理手段と、
前記テンプレートに最も類似した本来の認識すべきエリアである第２のエリアが、前記サーチエリアからはみ出しているか否かを判別する判別手段と、
該判別手段で前記第２のエリアが前記サーチエリアからはみ出していると判別された場合、前記第１のエリアの相関値を利用して前記第２のエリアのはみ出し量を推測し、該推測したはみ出し量に応じて前記画像上に設定するサーチエリアのサイズおよび位置を変更するサーチエリア変更手段とを備えたことを特徴とする位置認識装置。
【請求項２】
請求項１記載の位置認識装置において、
前記サーチエリア変更手段は、前記第１のエリアと前記テンプレートとの相関値と、予め定められている基準相関値との差分に基づいてはみ出し量を推測することを特徴とする位置認識装置。
【請求項３】
請求項１または２記載の位置認識装置において、
前記サーチエリア変更手段は、前記推測したはみ出し量が多いほど、変更後のサーチエリアのサイズを大きくすることを特徴とする位置認識装置。
【請求項４】
請求項１、２または３記載の位置認識装置において、
前記サーチエリア変更手段は、変更後のサーチエリアのサイズを、前記テンプレートのサイズに前記はみ出し量を加えたサイズとすることを特徴とする位置認識装置。
【請求項５】
請求項４記載の位置認識装置において、
前記サーチエリア変更手段は、前記第２のエリアのはみ出し方向と、前記第１のエリアの位置とに基づいて、変更後のサーチエリアの位置を決定することを特徴と位置認識装置。
【請求項６】
請求項１乃至５の何れか１項に記載の位置認識装置において、
前記パターンマッチング処理手段は、前記サーチエリア変更手段で設定された最新のサーチエリアを利用して前記テンプレートとのパターンマッチングを行うことを特徴とする位置認識装置。
【請求項７】
請求項１乃至６の何れか１項に記載の位置認識装置において、
前記サーチエリア変更手段は、変更後のサーチエリアが前記カメラによって撮像された画像からはみ出すか否かを判定し、はみ出す場合は、前記変更後のサーチエリアが前記カメラによって撮像される画像内に収まるように前記カメラの撮像位置を変更することを特徴とする位置認識装置。
【請求項８】
パターンマッチング処理手段が、カメラによって撮像された画像上のサーチエリア内においてテンプレートとの相関値が最も高くなる第１のエリアの位置を求め、
判別手段が、前記テンプレートに最も類似した本来の認識すべきエリアである第２のエリアが、前記サーチエリアからはみ出しているか否かを判別し、
サーチエリア変更手段が、前記判別手段で前記第２のエリアが前記サーチエリアからはみ出していると判別された場合、前記第１のエリアの相関値を利用して前記第２のエリアのはみ出し量を推測し、該推測したはみ出し量に応じて前記画像上に設定するサーチエリアのサイズおよび位置を変更することを特徴とする位置認識方法。
【請求項９】
請求項８記載の位置認識方法において、
前記サーチエリア変更手段は、変更後のサーチエリアが前記カメラによって撮像された画像からはみ出すか否かを判定し、はみ出す場合は、前記変更後のサーチエリアが前記カメラによって撮像される画像内に収まるように前記カメラの撮像位置を変更することを特徴とする位置認識方法。
【請求項１０】
コンピュータを位置認識装置として機能させるためのプログラムであって、
前記コンピュータを、
カメラによって撮像された画像上のサーチエリア内においてテンプレートとの相関値が最も高くなる第１のエリアの位置を求めるパターンマッチング処理手段、
前記テンプレートに最も類似した本来の認識すべきエリアである第２のエリアが、前記サーチエリアからはみ出しているか否かを判別する判別手段、
該判別手段で前記第２のエリアが前記サーチエリアからはみ出していると判別された場合、前記第２のエリアのはみ出し量を推測し、該推測したはみ出し量に応じて前記画像上に設定するサーチエリアのサイズおよび位置を変更するサーチエリア変更手段として機能させるためのプログラム。
【請求項１１】
請求項１０記載のプログラムにおいて、
前記サーチエリア変更手段は、変更後のサーチエリアが前記カメラによって撮像された画像からはみ出すか否かを判定し、はみ出す場合は、前記変更後のサーチエリアが前記カメラによって撮像される画像内に収まるように前記カメラの撮像位置を変更することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パターンマッチングによる位置認識技術に関する。
【背景技術】
【０００２】
パターンマッチングでは、テンプレートと呼ばれる検索基準画像を予め登録しておくと共に、カメラ視野範囲内にサーチエリアと呼ばれる検索範囲を設定しておく。その後、サーチエリア内をピクセル単位で移動しながらテンプレートサイズの対象画像を順次切り出し、切り出した対象画像とテンプレートとの類似度を正規化相関関数と呼ばれる評価式を用いて数値化する。そして、最も相関値の高い座標を認識位置とし、結果として相関値と認識位置を出力する。また、最も相関値の高い座標とその周辺のベクトル間距離を考慮するなどして、サブピクセル単位の位置認識精度を有するため、一般的な位置認識を行う際、最も頻繁に使用される手法である。
【０００３】
しかし、正規化相関関数の計算時間は比較的長く、テンプレートサイズとサーチエリアサイズとにより計算回数が決定するため、テンプレートサイズやサーチエリアサイズが大きくなると画像処理時間が長くなる欠点がある。これを補うため、テンプレートサイズを小さくしたり、サーチエリアサイズを小さくするなどにより、処理時間を短くする工夫がなされる。ところが、サーチエリアサイズを小さくすると、認識マークを有するワークをセットの際の位置再現性や、ロット間の寸法精度の偏りなどにより、認識マーク位置の偏りが発生し、認識すべきエリアがサーチエリアに対してギリギリになったり、はみ出したりしてしまうことがある。ここで、認識すべきエリアとは、テンプレートと最も類似した認識したいエリアであり、サーチエリアを考慮せずパターンマッチングを行った際に相関値が最も大きくなる、テンプレートと同じサイズのエリアである。
【０００４】
一般的なパターンマッチングでは、予め相関値に閾値を設けて良否判定を行っている。また、一般的に、認識すべきエリアが、サーチエリアに対してギリギリになったり、サーチエリアからはみ出した場合は、相関値が下がり、位置認識精度が低下する。従って、サーチエリアサイズを小さくし、且つ、閾値を１００％に近い大きな値とした場合は、認識エラーとなり、作業者が介在せねばならず生産効率が悪くなる。逆に、閾値が小さい場合は、認識エラーは発生しないが、位置認識精度が低くなり、位置認識結果を元に搭載動作などを行う装置等では搭載位置精度悪化という品質不良に繋がってしまう。
【０００５】
このような課題に対応するための技術として、次のような技術が知られている（例えば、特許文献１，２参照）。
【０００６】
特許文献１に記載されている技術では、画像データの画面中に大小２種類のサーチエリアを設定し、先ず、小さなサーチエリア内でパターンマッチングを行い、認識マークがサーチエリアからはみ出し、相関値の最大値が閾値よりも小さくなった場合には、大きなサーチエリア内でパターンマッチングを行うようにしている。
【０００７】
また、特許文献２に記載されている技術では、サーチエリアの辺毎に、その辺から認識マークがはみ出しているか否かを調べ、はみ出している場合には、サーチエリアのサイズを、認識マークがはみ出している辺の方向に一定サイズだけ拡大し、拡大したサーチエリア内で再度パターンマッチングを行うようにしている。即ち、拡大したサーチエリアを示す情報を、ライブラリに登録されている既存のパターンマッチング用のプログラムによって実現されているパターンマッチング処理手段に渡し、パターンマッチング処理手段を起動させる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開平１０−２６１８９８号公報
【特許文献２】特開２００５−９３６２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
特許文献１に記載されている技術では、先ず、用意されている大小２種類のサーチエリアの内の小さい方のサーチエリアを利用してパターンマッチングを行い、このパターンマッチングにおいて得られた相関値が閾値以下の場合には、大きな方のサーチエリアを用いてパターンマッチングを行うようにしているので、認識エラーが発生する危険性を少なくすることができる。しかし、特許文献１に記載されている技術は、大きな方のサーチエリアのサイズが一定サイズとされていため、そのサイズが大きすぎる場合には、無駄な処理が多く行われることとなり、反対にそのサイズが小さすぎる場合には、認識マークがサーチエリアからはみ出すなど、認識マークとサーチエリアとの位置関係が適切でない状態となり、認識エラーが発生する危険性があるという問題がある。
【００１０】
また、特許文献２に記載されている技術では、サーチエリアから認識マークがはみ出した場合、サーチエリアを認識マークのはみ出し方向に一定サイズ拡大するようにしているので、認識エラーが発生する危険性を少なくすることができる。しかし、特許文献２に記載されている技術では、一定サイズだけサーチエリアを拡大するようにしているので、拡大サイズが大きすぎる場合には、無駄な処理が多く行われることとなり、反対に小さすぎる場合には、認識マークがサーチエリアからはみ出すなど、認識マークとサーチエリアとの位置関係が適切でない状態となり、認識エラーが発生する危険性がある。
【００１１】
[発明の目的]
そこで、本発明の目的は、サーチエリアを変更する際、サーチエリアのサイズをなるべく小さく、且つ、認識エラーの発生する危険性を極めて少なくすることにある。
【課題を解決するための手段】
【００１２】
本発明にかかる第１の位置認識装置は、
カメラによって撮像された画像上のサーチエリア内においてテンプレートとの相関値が最も高くなる第１のエリアの位置を求めるパターンマッチング処理手段と、
前記テンプレートに最も類似した本来の認識すべきエリアである第２のエリアが、前記サーチエリアからはみ出しているか否かを判別する判別手段と、
該判別手段で前記第２のエリアが前記サーチエリアからはみ出していると判別された場合、前記第２のエリアのはみ出し量を推測し、該推測したはみ出し量に応じて前記画像上に設定するサーチエリアのサイズおよび位置を変更するサーチエリア変更手段とを備える。
【００１３】
本発明にかかる第１の位置認識方法は、
パターンマッチング処理手段が、カメラによって撮像された画像上のサーチエリア内においてテンプレートとの相関値が最も高くなる第１のエリアの位置を求め、
判別手段が、前記テンプレートに最も類似した本来の認識すべきエリアである第２のエリアが、前記サーチエリアからはみ出しているか否かを判別し、
サーチエリア変更手段が、前記判別手段で前記第２のエリアが前記サーチエリアからはみ出していると判別された場合、前記第１のエリアの相関値を利用して前記第２のエリアのはみ出し量を推測し、該推測したはみ出し量に応じて前記画像上に設定するサーチエリアのサイズおよび位置を変更する。
【００１４】
本発明にかかる第１のプログラムは、
コンピュータを位置認識装置として機能させるためのプログラムであって、
前記コンピュータを、
カメラによって撮像された画像上のサーチエリア内においてテンプレートとの相関値が最も高くなる第１のエリアの位置を求めるパターンマッチング処理手段、
前記テンプレートに最も類似した本来の認識すべきエリアである第２のエリアが、前記サーチエリアからはみ出しているか否かを判別する判別手段、
該判別手段で前記第２のエリアが前記サーチエリアからはみ出していると判別された場合、前記第２のエリアのはみ出し量を推測し、該推測したはみ出し量に応じて前記画像上に設定するサーチエリアのサイズおよび位置を変更するサーチエリア変更手段として機能させる。
【発明の効果】
【００１５】
本発明によれば、サイズが小さく、且つ、認識エラーの発生する危険性が極めて低いサーチエリアを設定することができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の第１の実施の形態の構成例を示すブロック図である。
【図２】一般的なパターンマッチングにおいて、適正に位置認識を行える場合を説明するための図である。
【図３】一般的なパターンマッチングにおいて、適正に位置認識を行うことができない場合を説明するための図である。
【図４】テンプレート２０３を説明するための図である。
【図５】サーチエリア２０２と、認識すべきエリア２０９と、認識位置２０５と、認識マーク２０４の中心位置との関係を示した図である。
【図６】第１の実施の形態の処理例を示すフローチャートである。
【図７】サーチエリア２０２と、認識したエリア２０８と、認識すべきエリア２０９と、認識位置２０５との関係を示した図である。
【図８】本発明の第２の実施の形態の構成例を示すブロック図である。
【図９】第２の実施の形態の処理例を示すフローチャートである。
【発明を実施するための形態】
【００１７】
[本発明の第１の実施の形態]
まず、一般的なパターンマッチングにおいて、適正に位置認識を行うことができる場合、および、適正な位置認識を行うことができない場合について、簡単に説明しておく。
【００１８】
図２は、一般的なパターンマッチングにより適正に位置認識を行うことができる場合を示している。一般的に位置決めを行う場合には、ワークの角度の影響を受けないように丸型の認識マークが用いられるため、図２の例でも丸型の認識マーク２０４を使用するものとする。また、この例では、認識マーク２０４を、テンプレート２０３の中心位置に設定するようにしている。図示を省略したカメラ等により撮像された視野（画像）２０１に対して、そのサイズが、テンプレート２０３のサイズ以上で、且つ、視野２０１と同じか或いはそれよりも狭いサイズのサーチエリア２０２を設置し、予め登録したテンプレート２０３とのパターンマッチングを行うことで、視野２０１またはサーチエリア２０２に対してサブピクセルレベルで認識位置２０５を得ることができる。ここで、一般的にパターンマッチングでは、相関値と呼ばれる類似度を算出しているが、これは正規化相関関数などと呼ばれる評価式により算出され、基本的にはサーチエリア２０２の中で予め登録されたテンプレート２０３との一致度合いを表し、予め設定された閾値と比較する事でパターンマッチングの合否判定として使われる。
【００１９】
図３は、パターンマッチングにより適正に位置認識を行うことができない場合を示している。同図に示すように、認識すべきエリア２０９の一部分がサーチエリア２０２からはみ出している場合、予め設定された閾値が１００％に近い高い値の場合は、認識処理がエラー判定となり、予め設定された閾値が低い場合は、認識処理自体は合格判定だが位置ズレを引き起こす。同図に示すように、認識すべきエリア２０９がサーチエリア２０２から２０％程度はみ出している場合、サーチエリア２０２内の認識すべきエリア２０９の相関値すなわち一致度合いは８０％程度あることになる。従って、閾値を９０％程度に設定した場合は、エラー判定となり、通常は、作業者の介在が必要となり生産性を損なう。一方、閾値を７０％程度に設定した場合は、図３の例のように２０％程度のはみ出しでは、認識処理自体は合格判定となる。しかし、この場合、正規化相関関数により異なるが、認識位置２０５は、ずれた方向にサーチエリア２０２と認識すべきエリア２０９が接する状態から算出される位置となり、認識位置２０５は、実際の正しい位置に対して、サーチエリア２０９からはみ出した分だけサーチエリア２０２の中心方向にずれた位置となる。認識マーク２０４が基板の位置決めマークであり、このマークを基準としてチップなどを搭載する装置であれば、認識処理が合格判定のため認識位置２０５を基準として搭載を行うが、認識マーク２０４の中心と認識位置２０５のズレ分だけ搭載ズレを引き起こしてしまう。
【００２０】
次に、本発明の第１の実施の形態にかかる位置認識装置について説明する。
【００２１】
図１を参照すると、本発明の第１の実施の形態にかかる位置認識装置１００は、画像データ記憶部１０１と、パターンマッチング処理手段１０２と、判別手段１０３と、サーチエリア変更手段１０４と、サーチエリア情報記憶部１０５と、テンプレート記憶部１０６とを備えている。
【００２２】
画像データ記憶部１０１には、図示を省略したカメラによって撮像された画像の画像データが格納される。サーチエリア情報記憶部１０５には、サーチエリアのサイズ及び位置を示すサーチエリア情報が格納される。テンプレート記憶部１０６には、検索基準画像となるテンプレートが格納される。
【００２３】
パターンマッチング処理手段１０２は、画像データ記憶部１０１に格納されている画像データによって表わされる画像上に、サーチエリア情報記憶部１０５に格納されているサーチエリア情報によって表わされるサーチエリアを設定し、サーチエリア内においてテンプレートとの相関値が最も高くなるエリアを認識する機能や、上記認識したエリア（第１のエリアという場合もある）とその周囲のエリアの相関値を利用した補間処理を行い、第１のエリアの位置をサブピクセル単位で認識する機能を有する。
【００２４】
判別手段１０３は、認識すべきエリア（第２のエリアという場合もある）がサーチエリアからはみ出しているか、または、サーチエリアに対してギリギリ（第２のエリアとサーチエリアの縁部が重なりあっている状態）か否かを判別する機能を有する。ここで、第２のエリアがサーチエリアに対してギリギリか否かを判別するようにしているのは、サーチエリアの周辺部における照明のムラや、テンプレートの切り出しやテンプレート内認識位置の指定がピクセル単位の整数値でしか与えられない事や、認識処理によって得られる相関値が一様な曲線ではなくノイズ成分を有する曲線となっている事等に起因し、位置精度が低くなると考えられるからである。なお、具体的な判別方法については、後で詳しく説明する。
【００２５】
サーチエリア変更手段１０４は、判別手段１０３によって、認識すべきエリアがサーチエリアからはみ出している、または、ギリギリと判別された場合、認識すべきエリアのはみ出し量を推測する機能や、推測したはみ出し量に応じてサーチエリアのサイズおよび位置を変更する機能を有する。
【００２６】
なお、位置認識装置１００は、コンピュータによって実現可能であり、コンピュータによって実現する場合は、例えば、次のようにする。コンピュータを位置認識装置として機能させるためのプログラムを記録したディスク、半導体メモリ、その他の記録媒体を用意し、コンピュータに上記プログラムを読み取らせる。コンピュータは、読み取ったプログラムに従って自身の動作を制御することにより、自コンピュータ上に、パターンマッチング処理手段１０２、判別手段１０３、及び、サーチエリア変更手段１０４を実現する。
【００２７】
図４を参照すると、テンプレート記憶部１０６には、形状が矩形で、ｘ，ｙ軸方向のサイズがＴｓｘ，Ｔｓｙのテンプレート２０３が登録されている。テンプレート２０３の登録は、一般的には、カメラ等によって撮像した画像からテンプレート２０３とすべき部分を切り出し、それをテンプレート記憶部１０６に登録することにより行う。テンプレート２０３のサイズＴｓｘ，Ｔｓｙは、特徴点である認識マーク２０４をテンプレート２０３に含ませるため、認識マーク２０４のサイズよりも大きなものとする。また、本実施の形態では、認識マーク２０４の中心位置を認識位置２０５とする。認識位置２０５は、テンプレート２０３の相対座標系として
(Ｔｐｘ，Ｔｐｙ)で与えられる。この値は、例えば、テンプレート記憶部１０６に登録される。
【００２８】
図５を参照すると、本実施の形態では、認識位置２０５をサーチエリア２０２の左上の点からの相対座標(IPx,IPy)で表している。一般的には、パターンマッチングの位置認識処理では、認識位置２０５は視野座標系として得られるが、視野全面がサーチエリアに設定可能であることと、および、説明を簡略化するため本実施の形態では、サーチエリア座標系としてサーチエリアからの相対座標で認識位置２０５を表すようにしている。より具体的には、サーチエリア２０２の範囲でパターンマッチングを行うため、相関値が最も高くなるエリアの位置（第１のエリアの例えば左上の点の位置）がサーチエリア２０２の相対座標として特定され、認識位置２０５はテンプレート１０３の相対座標として与えられているため、両者を加算することでサーチエリア２０２の相対座標として認識位置２０５(IPx,IPy)を得ることができる。
【００２９】
次に、図６のフローチャートを参照して本実施の形態の動作について説明する。
【００３０】
先ず、ステップ６０１において、図示を省略したカメラなどにより、ワーク等の対象物を撮像し、その画像データを画像データ記憶部１０１に格納する。ここでは、図５に示すような画像が撮像されたものとする。
【００３１】
次のステップ６０２では、パターンマッチング処理手段１０２が、ステップ６０１で撮像した画像に対してパターンマッチング処理を行い、相関値と認識位置２０５とを得る。より具体的には、先ず、パターンマッチング処理手段１０２は、画像データ記憶部１０１に格納されている画像データによって表わされる画像上に、サーチエリア情報記憶部１０５に格納されているサーチエリア情報によって表わされるサーチエリア２０２を設定する。次に、サーチエリア２０２内でパターンマッチング処理を行い、テンプレート記憶部１０６に格納されているテンプレート２０３と最も相関値が高くなる、テンプレート２０３と同一サイズのエリアを認識する。その後、認識したエリア（第１のエリア）やその周囲のエリアの相関値などに基づいて補間処理を行い、サブピクセル精度で認識位置２０５を求める。そして、最後に、上記認識したエリアの相関値および上記認識位置２０５を出力する。なお、一般的なパターンマッチング処理では、得られた相関値と予め定められている閾値とを比較し、閾値の方が大きい場合には認識エラーとして作業者を介在させるが、本実施の形態では相関値での合否判定を行わない。
【００３２】
次のステップ６０３では、判別手段１０３がサーチエリア２０２と認識すべきエリア２０９との位置関係を算出し、サーチエリア変更フラグを算出した位置関係に応じたものとする。より具体的には、認識すべきエリア２０９がサーチエリア２０２からはみ出しているか、もしくは、サーチエリア２０２に対してギリギリか否かを判別し、そうである場合にはサーチエリア変更フラグをＯＮとし、そうでない場合はＯＦＦにする。
【００３３】
ここで、判別方法について図７を参照して説明する。図７は図５に示したサーチエリア２０２に対して認識すべきエリア２０９が右下方向にずれた部分を拡大して簡略化したものであり、認識したエリア２０８の左上、右下の位置は、パターンマッチングの結果として得られる認識位置２０５から(IPx−Tpx,IPy−Tpy)、(IPx−Tpx＋Tsx,IPy−Tpy＋Tsy)として算出される。
【００３４】
パターンマッチング処理は、サーチエリア２０２の範囲内でテンプレート２０３との合致エリアを検索するため、認識すべきエリア２０９がサーチエリア２０２からはみ出した場合、認識したエリア２０８とサーチエリア２０２との位置関係で判別する事ができる。具体的には、サーチエリア２０２の４辺において、認識したエリア２０８がどのくらいギリギリかを判別すればよく、[条件１]はサーチエリア２０２の左辺，[条件２]は同上辺，[条件３]は同右辺，[条件４]は同下辺と認識したエリア２０８との距離を表し、いずれか１つ以上を満たすとき、認識すべきエリア２０９がサーチエリア２０２に対してギリギリか、はみ出した状態であると判別することができる。ここで、αx，αyは予め設定しておく定数で、認識すべきエリア２０９がサーチエリア２０２のギリギリの範囲内であることを判別するためのピクセル数を与えておく。
【００３５】
αx，αyは理論的にはサーチエリア２０２のギリギリの範囲に認識すべきエリア２０９があった場合でも全く問題なく相関値も位置精度も高くなるため、サブピクセル補間分として１ピクセルを設定すれば良いが、実際は相関値は高くても位置精度が落ちる場合が多い事から、要求されている位置精度を確保できるピクセル数を指定する事で、認識位置精度を保証できる。従って、図６のステップ６０３に示す、サーチエリア２０２と認識すべきエリア２０９との位置関係算出では、[条件１]〜[条件４]のいずれか１つ以上を満たすとき、サーチエリア変更フラグをＯＮし、１つも満たさない場合はサーチエリア変更フラグをＯＦＦする。このサーチエリア変更フラグは、図示を省略したフラグ記憶部に格納され、サーチエリア変更手段１０４から参照可能になっている。また、判別手段１０３は、サーチエリア変更フラグをＯＮとして場合は、[条件１]〜[条件４]の内、どの条件が満たされたのかを示す情報もフラグ記憶部に登録しておく。
【００３６】
［条件１］IPx−Tpx≦αx
［条件２］IPy−Tpy≦αy
［条件３］Ssx−αx≦IPx−Tpx＋Tsx
［条件４］Ssy−αy≦IPy−Tpy＋TSy
【００３７】
次のステップ６０４では、サーチエリア変更手段１０４が、ステップ６０３で設定されたサーチエリア変更フラグの状態により条件分岐を行う。サーチエリア変更フラグがＯＦＦの場合は、ステップ６０２のパターンマッチング処理で得られた認識位置(IPx,IPy)を採用して終了する（ステップ６１０）。これに対して、サーチエリア変更フラグがＯＮの場合は、サーチエリア２０２を変更する（ステップ６０５）。
【００３８】
ここで、ステップ６０５で行うサーチエリアの変更処理について詳しく説明する。サーチエリアの変更は、そのサイズおよび位置を変更することにより行う。先ず、サーチエリアのサイズの変更処理について説明する。
【００３９】
本実施の形態では、認識すべきエリア２０９がサーチエリア２０２からどの程度はみ出しているのか推測し、推測したはみ出し量に応じてサーチエリア２０２のサイズを変更する。以下、サーチエリアのサイズの変更処理について詳しく説明する。
【００４０】
先ず、はみ出し量の推測方法について説明する。本実施の形態では、はみ出し量を相関値から推測する。この方法は、はみ出し量と相関値の相関性が予め分かる場合には特に有効である。ここでは、はみ出し量と相関値の相関性が１：１、つまりはみ出し量が１％変化すると相関値が１％変化するような場合を例とするが、相関性が不明だったり曲線的だったりテンプレートに依存して相関性が毎回異なる様な場合であっても有効である。また、パターンマッチグ処理を行って得られる相関値は１００％になる事はまずない事を考慮して、基準相関値を設定して基準相関値から相関値が不足した分だけはみ出したとして、はみ出し量を推測する。基準相関値は適切な撮像条件を満たし、かつサーチエリアが認識すべきエリアを包含している事を満たした正常な認識を行った場合の相関値の基準値であり、正常な認識を繰り返した場合の相関値を統計処理して求めた最高値や平均値等としても良いし、経験的に９０％程度が最高値であると分かっていればその値を使用しても良い。
【００４１】
例えば、図７の認識したエリア２０８についてステップ６０２で算出した相関値が８０％であり、基準相関値が９０％であるとすると、９０−８０＝１０（％）から認識すべきエリア２０９は、そのサイズ（テンプレート２０３のサイズと等しい）の１０％分、サーチエリア２０２からはみ出していると推測できる。また、フラグ記憶部に格納されている情報（条件１〜条件４の内、どの条件が満たされているのかを示す情報）に基づいて、サーチエリア２０２の右辺および下辺からはみ出していることを認識ができる。従って、サーチエリアの右辺方向には0.1×Tsxピクセル分、下辺方向には0.1×Tsyピクセル分だけはみ出したと推測する。ここで、Tsx,Tsyは、テンプレート２０３のx,y軸方向の長さである。以上がはみ出し量の推測方法の一例である。
【００４２】
はみ出し量を推測すると、サーチエリア変更手段１０４は、変更後のサーチエリアのサイズとして、テンプレート２０３のサイズをはみ出し量だけ広げたサイズを求める。上記した例のように推測したはみ出し量が0.1×Tsx，0.1×Tsyである場合には、変更後のサーチエリアのx,y軸方向のサイズをTsx＋0.1Tsx，Tsy＋0.1Tsyとする。これを一般的に表すと、変更後のサーチエリアのサイズは、次のようになる。但し、基準相関値および相関値は、パーセント（百分率）で与えられているとする。
【００４３】
【数１】
2011028427.tif 000003
【００４４】
次に、サーチエリアの位置変更処理について説明する。サーチエリアの位置変更は、認識すべきエリア２０９の左上座標と右下座標のどちらがはみ出したかに依存してしなければならないが、これは[条件１]〜[条件４]のどれが成立したかによって決めればよい。
【００４５】
[条件１]と[条件２]のどちらか、もしくは両方が成立する場合、これはサーチエリア２０２の左上座標方向にはみ出したこと、すなわちサーチエリア２０２の左辺と上辺のうち、どちらかもしくは両方にはみ出した事を意味する。この場合、認識したエリア２０８の右下座標が、変更後のサーチエリアの右下座標となるように設定すれば良いから、変更後のサーチエリアの右下座標は、(IPx−Tpx＋Tsx,IPy−Tpy＋Tsy)として計算できる。また、これから上記サーチエリアサイズ分だけ引けば、変更後のサーチエリアの左上座標は、次のようになる。
【００４６】
【数２】
2011028427.tif 000004
【００４７】
次に、[条件３]と[条件４]のどちらか、もしくは両方が成立する場合、これはサーチエリア２０２の右下座標方向にはみ出したこと、すなわちサーチエリアの右辺と下辺のうち、どちらかもしくは両方にはみ出した事を意味する。この場合、認識したエリア２０８の左上座標が、変更後のサーチエリアの左上座標となるように設定すれば良いから、変更後のサーチエリアの左上座標は、(IPx−Tpx,IPy−Tpy)として計算できる。また、これに上記サーチエリアのサイズ分だけ加算すれば変更後のサーチエリアの右下座標は、次のようになる。
【００４８】
【数３】
2011028427.tif 000005
【００４９】
上記したようにして変更後のサーチエリアのサイズ及び位置を算出したら、サーチエリア変更手段１０４は、それらをサーチエリア情報としてサーチエリア情報記憶部１０５に格納する。
【００５０】
サーチエリア情報記憶部１０５に変更後のサーチエリアのサイズ及び位置を示すサーチエリア情報を格納すると、パターンマッチング処理手段１０２に、変更後のサーチエリアにおいて再度パターンマッチング処理を行わせる。即ち、変更後のサーチエリアを示すサーチエリア情報を、ライブラリに登録されているプログラム等によって実現されているパターンマッチング処理手段１０２に渡し、パターンマッチング処理手段１０２を起動する。この時、前述したはみ出し量と相関値の相関性が想定を超えて悪かった場合には、サーチエリアのサイズが不十分で認識すべきエリア２０９を包含できない状態になり、無限に処理を繰り返すことになる。そこで、本実施の形態では、これを防ぐため、ステップ６０５のサーチエリア変更回数をカウントして所定回数に到達した場合はエラーとするか、ステップ６０２のパターンマッチング処理実行後に相関値が所定値（例えば２０％）未満の場合はエラーとする処理を加えることで無限ループを回避できる。
【００５１】
なお、上述した実施の形態では説明しなかったが、サーチエリアのサイズの変更方法として、変更後のサーチエリアのサイズがテンプレートのサイズよりも大きくなることを条件にして、現在のサーチエリアのサイズを所定量もしくは所定割合小さくする方法を採用することができる。例えば、所定量（βx,βy）だけ小さくする場合には、変更後のサーチエリアのサイズを(Ssx−βx,Ssy−βy)として算出されるサイズにする。ただし、βx,βyは正値をとり、同値でも構わない。また、例えば、所定割合（βx,βy）だけ小さくする場合は、（Ssx×βx,Ssy×βy）として算出されるサイズにする。ただし、０＜（βx,βy）≦１で、βx,βyは同値でも構わないが、変更後のサイズがテンプレートのサイズより大きいことが条件となる。
【００５２】
また、テンプレートのサイズより所定量もしくは所定割合大きいサイズを変更後のサーチエリアのサイズとする方法を採用することもできる。所定量（βx,βy）だけ大きくする場合は、（Tsx＋βx,Tsy＋βy）で算出されるサイズにする。ただし、βx,βyは正値をとり、同値でも構わない。また、所定割合（βx,βy）を用いる場合は、（Tsx×βx,Tsy×βy）で算出されるサイズとする。ただし、１＜（βx,βy）で、同値でも構わない。
【００５３】
また、上述した実施の形態では、[条件１]〜[条件４]に基づいて、認識すべきエリア２０９がサーチエリア２０２からはみ出しているか否かを判別するようにしたが、認識したエリア２０８の相関値と予め定められている閾値とを比較し、閾値の方が大きい場合、認識すべきエリア２０９がサーチエリア２０２からはみ出していると判別するようにしても構わない。
【００５４】
[第１の実施の形態の効果]
本実施の形態によれば、サイズが小さく、且つ、認識エラーが発生する危険性が極めて低いサーチエリアを設定することができる。その理由は、認識すべきエリア２０９（第２のエリア）のサーチエリア２０２からのはみ出し量を推測し、推測したはみ出し量に応じてサーチエリアのサイズおよび位置を変更するようにしているからである。
【００５５】
また、本実施の形態では、パターンマッチング処理手段１０２が、サーチエリア変更手段１０４により設定された最新のサーチエリア内においてパターンマッチング処理を行うようにしているので、作業者の癖などにより、ワークが偏った位置にセットされる状況が続くような場合、サーチエリアの変更頻度を減少させることができる。
【００５６】
[本発明の第２の実施の形態]
次に、本発明の第２の実施の形態について説明する。前述した第１の実施の形態では、一部分でも認識すべきエリアがサーチエリアに入っており、少なくとも視野範囲内に認識すべきエリアが存在する事を前提とした。しかし、ワーク交換やロット変更や製品変更などにより被撮像対象を入れ替える際にどうしても視野範囲から認識すべきエリアが外れてしまう事態が起こる。また、サーチエリアが視野全体だった場合にも、サーチエリアから認識すべきエリアがはみ出すような場合は視野からはみ出した事となり同じ状態になる。本実施の形態は、このような事態に対応できるようにするため、図８に示す構成を有している。
【００５７】
図８を参照すると、本実施の形態は、位置認識装置１００ａと、ステージ８１１と、Ｘ，Ｙ軸方向の駆動部８１２，８１３と、カメラ８２１とを備えている。
【００５８】
位置決め対象となるワーク８０１は、ステージ８１１にセットされる。ステージ８１１は、Ｘ，Ｙ軸方向の駆動部８１２、８１３を有しており、ＸＹ平面内で自由に移動可能となっている。ワーク８０１には、認識マーク２０４が付されている。また、ワーク８０１を撮像するカメラ８２１は、その光軸がＸＹ平面に対して垂直になるように固定されている。なお、本実施の形態では、カメラ８２１を固定にし、ワーク８０１側を移動可能にしたが、カメラ８２１側に駆動系を設け、カメラ８２１を移動させるようにしても良い。
【００５９】
位置認識装置１００ａは、図１に示した位置認識装置１００と同様の構成を有している。ただし、本実施の形態の位置認識装置１００ａ内のサーチエリア変更手段１０４は、第１の実施の形態で説明した機能に加え、変更後のサーチエリアがカメラ８２１の視野からはみ出す場合（カメラ８２１によって撮像された画像からはみ出す場合）、駆動部８１２，８１３を制御し、変更後のサーチエリアがカメラ８２１の視野内に入るように、カメラ８２１の撮像位置を変更する機能を有する。なお、位置認識装置１００ａも位置認識装置１００と同様にコンピュータによって実現することができる。
【００６０】
次に、図９のフローチャートを参照して本実施の形態の動作について説明する。
【００６１】
最初に、カメラ８２１によってワーク８０１の所定位置が撮像されるように、ステージ８１１を移動する。その後、位置認識装置１００ａが前述したステップ６０１〜６０３と同様の処理を行う。
【００６２】
その後、位置認識装置１００ａ内のサーチエリア変更手段１０４は、サーチエリア変更フラグがＯＮとなっているか否かを判定する。そして、ＯＦＦとなっている場合は、認識すべきエリアがサーチエリア内の適切な位置に存在することになるので、ステップ６０２で求めた認識位置を採用し、その後、処理終了となる（ステップ６１０）。
【００６３】
これに対して、サーチエリア変更フラグがＯＮになっている場合は、少なくとも認識すべきエリアの一部がサーチエリアからはみ出していることになり、場合によって変更後のサーチエリアがカメラ８２１の視野(画像)からはみ出していることもある。そこで、ステップ９０３において、カメラ８２１と変更後のサーチエリアとの位置関係を算出する。具体的には、前述したステップ６０５と同様の処理を行うことにより、変更後のサーチエリアのサイズ及び位置を算出し、その後、変更後のサーチエリアが視野からはみ出しているか否かを調べる。
【００６４】
そして、はみ出していない場合は、視野変更フラグをＯＦＦにすると共に、変更後のサーチエリアのサイズ及び位置を示すサーチエリア情報をサーチエリア情報記憶部１０５に格納する。これに対して、はみ出している場合は、視野変更フラグをＯＮにすると共に、変更後のサーチエリアのサイズ及び位置を示すサーチエリア情報をサーチエリア情報記憶部１０５に格納する。
【００６５】
その後、サーチエリア変更手段１０４は、視野変更フラグにより条件分岐を行う。視野変更フラグがＯＦＦの場合は、パターンマッチング処理手段１０２にステップ６０２のパターンマッチング処理を行わせる。これに対して、視野変更フラグがＯＮの場合は、ＸＹ軸方向の駆動部８１２，８１３に制御信号を加えてステージ８１１を移動させ、カメラ８２１の視野内に変更後のサーチエリアが入るようにする。具体的には、既に求めてある変更後のサーチエリアのサイズおよび位置に基づいて、変更後のサーチエリアのどの辺が、どれだけカメラ８２１の視野からはみ出しているのかを算出し、算出結果に基づいて、カメラ８２１とステージ８１１とを相対的に移動させる。例えば、変更後のサーチエリアの左辺がΔｘだけカメラ８２１の視野からはみ出している場合は、Ｘ軸方向の駆動部８１２を制御してステージ８１１をΔｘだけ右方向に移動させ、また、例えば、変更後のサーチエリアの上辺がΔｙだけカメラ８２１の視野からはみ出している場合は、Ｙ軸方向の駆動部８１３を制御し、ステージ８１１をΔｙだけ下方向に移動させる。その後、位置認識装置１００ａは、ステップ６０１に戻り、再度、カメラ８２１により対象物を撮像する。
【００６６】
[第２の実施の形態の効果]
本実施の形態によれば、第１の実施の形態と同様の効果を得ることができると共に、変更後のサーチエリアがカメラ８２１の視野からはみ出した場合であっても、位置認識処理を継続して行うことができる。その理由は、変更後のサーチエリアがカメラ８２１によって撮像された画像からはみ出すか否かを判定し、はみ出す場合には、変更後のサーチエリアが画像内に収まるように、カメラ８２１の撮像位置を変更するようにしているからである。
【産業上の利用可能性】
【００６７】
本発明は、部品搭載機や自動組立装置など、部品と部品の位置を認識して位置合わせを行う装置に利用することができる。
【符号の説明】
【００６８】
１００、１００ａ・・・位置認識装置
１０１・・・画像データ記憶部
１０２・・・パターンマッチング処理手段
１０３・・・判別手段
１０４・・・サーチエリア変更手段
１０５・・・サーチエリア情報記憶部
１０６・・・テンプレート記憶部
２０１・・・視野
２０２・・・サーチエリア
２０３・・・テンプレート
２０４・・・認識マーク
２０５・・・認識位置
２０８・・・認識した位置
２０９・・・認識すべき位置
８０１・・・ワーク
８１１・・・ステージ
８１２，８１３・・・駆動部
８２１・・・カメラ
【図１】
2011028427.tif 000006
【図２】
2011028427.tif 000007
【図３】
2011028427.tif 000008
【図４】
2011028427.tif 000009
【図５】
2011028427.tif 000010
【図６】
2011028427.tif 000011
【図７】
2011028427.tif 000012
【図８】
2011028427.tif 000013
【図９】
2011028427.tif 000014