(57)【特許請求の範囲】
【請求項１】
認識対象物を撮影するカメラと、
前記認識対象物用のテンプレートと前記カメラの画像中の認識対象物の位置データとを格納する格納手段と、
前記カメラの画像と前記テンプレートでパターンマッチングを行う画像認識手段とを備え、
前記画像認識手段は、１枚の画像上で異なる２つの領域でパターンマッチングを行い、それぞれの領域で特徴点の位置を割り出し、該割り出した２つの特徴点を通る直線と位置データより決まる前記２つの特徴点を通る直線とのなす角度を求め、該求めた角度を回転角の補正量とすると共に、該割り出した前記２つの特徴点間の距離と位置データより決まる前記２つの特徴点間の距離から、前記カメラと前記認識対象物間の距離の誤差を計算し、該誤差を距離の補正値とすることを特徴とした画像認識装置。
【請求項２】
前記画像認識手段は、前記回転角の補正量の補正又は前記距離の補正値の補正を行った後、該補正後の特徴点の位置と位置データより決まる特徴点の位置の補正を行うことを特徴とした請求項１記載の画像認識装置。
【請求項３】
認識対象物用のテンプレートとカメラの画像中の認識対象物の位置データとを格納する格納手段と、
１枚の画像上で異なる２つの領域でパターンマッチングを行い、それぞれの領域で特徴点の位置を割り出し、該割り出した２つの特徴点を通る直線と位置データより決まる前記２つの特徴点を通る直線とのなす角度を求め、該求めた角度を回転角の補正量とすると共に、該割り出した前記２つの特徴点間の距離と位置データより決まる前記２つの特徴点間の距離から、前記カメラと前記認識対象物間の距離の誤差を計算し、該誤差を距離の補正値とする画像認識手段として、
コンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、１台のカメラでＸ軸方向の補正とＹ軸方向の補正のみならず、Ｚ軸方向の補正（距離の補正）やＺ軸まわり回転角（ここでは、θ３と呼ぶ）の補正も行うことができる画像認識装置及びプログラムに関する。
【０００２】
【従来の技術】
従来、プリント基板（回路基板）の自動チェック（検査）や部品の実装等のためには、ロボットハンドが、水平なステージ上に固定されたプリント基板内の特定部位の直上に移動し、プローブピン等を繰り出して電気的な測定や部品の実装をする装置等では、ロボットのハンドを正確に制御する必要がある。
【０００３】
このようなロボットのハンドの正確な位置決め精度が十分確保できないケースが多く、何らかの補正が必要となる。このため、多く用いられている方法は、ロボットのハンド等に取り付けたカメラで捉えた画像を使って、何らかの画像認識を行って、その認識結果が、本来の位置からどれだけズレているかを計算し、それに対応した量だけハンドを調整（補正）する方法である。チェックする回路基板が固定されるステージの面をＸＹ平面とすると、この補正は、Ｘ軸方向の補正とＹ軸方向の補正の２つで構成されるものであった。
【０００４】
従来の画像認識では、ある画像のどの部分が他の画像のどの部分に対応するかを求める処理が必要となる。こうした処理は、パターンマッチング（pattern matching）と呼ばれ、画像間のマッチングや図形間のマッチングがある。ある特定の対象物に対応するパターンが画像中のどこに存在するかを調べ、対象物を認識することもマッチングの問題となる。特に対象物のパターンが画像として表現され、そのパターンと対象画像の各部分との類似度を調べることによって、対象物の位置を求める操作は、テンプレートマッチング（template matching ）と呼ばれ、画像処理におけるマッチングの最も基本的でよく用いられる手法となっている。
【０００５】
図１３は従来例の説明図である。図１３において、従来のテンプレートマッチングの説明であり、テンプレート▲１▼と画像Ａが設けてある。テンプレートマッチングは、検出しようとする対象を表すテンプレート▲１▼を画像Ａ中の点（i,j ）にその中心が重なるようにし、テンプレート▲１▼とそれと重なる画像の部分パターンとの類似度を測り、その値を点（i,j ）に対象が存在する確からしさとする方法である。対象物の位置を求めるには、この操作を画像のすべての点（画素）に対して施し、類似度が最大となる位置を求めるものであった。
【０００６】
【発明が解決しようとする課題】
上記従来のものは、ハンドのＺ軸方向の誤差とＺ軸まわり回転角（θ３）が無視できない場合は、従来の補正では不十分であった。この２つの補正のためには、カメラを２台取り付け、２つの画像を使って補正することは可能であるが、カメラが２台必要であることや、ハンドが大きくなる、重くなる等の問題があった。
【０００７】
本発明は、１台のカメラでＺ軸方向の補正（距離の補正）やＺ軸まわり回転角（θ３）の補正も行うことを目的とする。
【０００８】
【課題を解決するための手段】
図１は本発明の画像認識装置の説明図である。図１中、１ａは認識対象物、２はカメラ、４はプローブ、１０は制御部、１１ａは駆動手段、１３ａは画像認識手段、１６ａは格納手段である。
【０００９】
本発明は、前記従来の課題を解決するため次のような手段を有する。
【００１２】
（１）：認識対象物１ａを撮影するカメラ２と、前記認識対象物１ａ用のテンプレートと前記カメラの画像中の認識対象物の位置データとを格納する格納手段１６ａと、前記カメラ２の画像と前記テンプレートでパターンマッチングを行う画像認識手段１３ａとを備え、前記画像認識手段１３ａは、１枚の画像上で異なる２つの領域でパターンマッチングを行い、それぞれの領域で特徴点の位置を割り出し、該割り出した２つの特徴点を通る直線と位置データより決まる前記２つの特徴点を通る直線とのなす角度を求め、該求めた角度を回転角の補正量とすると共に、該割り出した前記２つの特徴点間の距離と位置データより決まる前記２つの特徴点間の距離とを比較し、前記カメラ２と前記認識対象物１ａ間の距離の誤差を計算し、該誤差を距離の補正値とする。このため、１枚の画像で回転角の補正量と距離の補正値を求めることができる。
【００１３】
（２）：前記（１）の画像認識装置において、前記画像認識手段１３ａは、前記回転角の補正量の補正又は前記距離の補正値の補正を行った後、該補正後の特徴点の位置と位置データより決まる特徴点の位置の補正を行う。このため、１枚の画像で回転角の誤差や距離の誤差を無くしてＸＹ軸方向の補正をするので、カメラを備えるハンド等の補正を容易にかつ正確に行うことができる。
【００１４】
【発明の実施の形態】
本発明は、１台のカメラを使用し、画像認識を使って、Ｘ軸方向とＹ軸方向の補正のみならず、Ｚ軸方向の補正（距離の補正）やＺ軸まわり回転角（θ３）の補正も行うものである。
【００１５】
（１）：画像認識装置の説明
図１は画像認識装置の説明図である。図１において、認識対象物１ａは、電子部品が搭載されたプリント基板のＩＣリード等である。カメラ２は、ロボットハンド等に取り付けられ認識対象物１ａの画像を得るものである。プローブ４は、ロボットハンド等に取り付けられて認識対象物１ａの検査を行うものである。制御部１０は、画像認識装置全体の制御を行うものである。駆動手段１１ａは、ロボットハンドを駆動するＸ軸、Ｙ軸、Ｚ軸、Ｚ軸回転（θ３）等の４つの駆動部からなるものである。他にも必要に応じて、ハンドのＸ軸回転（θ１）、Ｙ軸回転（θ２）等を備えるがここでは簡単のため含めない。画像認識手段１３ａは、パターンマッチング等の処理を行うものである。格納部１６ａは、カメラ２の画像に相当するＣＡＤデータ（位置データ）やテンプレートの明暗（濃淡）データ等を格納するものである。以下、基板の自動チェック装置に適用した画像認識装置について説明する。
【００１６】
（２）：基板の自動チェックの説明
▲１▼：基板の自動チェック装置構成の説明
図２は基板の自動チェック装置構成の説明図である。図２において、基板の自動チェック装置には、プリント基板１、カメラ２、ハンド（ロボットハンド）３、プローブ４、プローブピン５、ステージ６、モータｘ、モータｙ、モータｚ、モータθ３が設けてある。プリント基板１は、電子部品が搭載されたチェック対象物である。カメラ２は、ハンド３に取り付けられてプリント基板１の画像を得るものである。ハンド３は、プリント基板の自動チェックのためモータにより駆動されるものである。プローブ４は、ハンド３に取り付けられてプリント基板１のチェックを行うものである。プローブピン５は、プリント基板１のコンタクト点と接触してチェックを行うものである。ステージ６は、チェック装置を搭載する基台である。モータｘは、ハンド３をＸ軸方向に移動する駆動手段である。モータｙは、ハンド３をＹ軸（紙面に垂直）方向に移動する駆動手段である。モータｚは、ハンド３をＺ軸方向に移動する駆動手段である。モータθ３は、ハンド３をＺ軸方向の回転移動を行うための駆動手段である。
【００１７】
なお、図２では、簡単のため、ハンド３が１個の例であるが、通常は複数（一般的には４個程度）のハンド３が搭載され、同時にプリント基板１の異なるポイントを測定することになる。
【００１８】
▲２▼：基板の自動チェック装置の制御ブロックの説明
図３は基板の自動チェック装置の制御ブロックの説明図である。基板自動チェック装置の制御ブロックには、制御部１０、モータ群駆動部１１、カメラ制御部１２、画像認識部１３、補正量計算部１４、計測部１５、測定ポイントデータ格納部１６が設けてある。
【００１９】
制御部１０は、全体の制御を行うものである。モータ群駆動部１１は、１つのハンドを動かすのに必要なモータ全ての駆動部を示している。例えば、Ｘ軸、Ｙ軸、Ｚ軸、Ｚ軸回転（θ３）の４つのモータ駆動部からなる。カメラ制御部１２は、プリント基板１の画像を撮影するカメラ２の制御を行うものである。画像認識部１３は、カメラの画像とテンプレートとでパターンマッチングを行い画像認識を行う画像認識手段である。補正量計算部１４は、画像認識結果からハンドの補正量を計算するものである。計測部１５は、例えばデジタルサンプリングオシロスコープ等で、電圧や電気的波形等を計測するものである。測定ポイントデータ格納部１６は、プリント基板（測定対象物）１の測定ポイントをプローブピン５でコンタクトして測定するための場所の座標値の集合、もしくは、座標値に変換可能なデータの集合（プリント基板１のＣＡＤデータ）等を格納するものである。
【００２０】
▲３▼：Ｚ軸回転（θ３）が必要となるケースの説明
簡単なケースでは、θ３のモータを省略して、Ｘ、Ｙ、Ｚ軸の３つのモータだけで任意の点のコンタクトは可能である。しかし、次のようなケースを考えるとθ３のモータが必要となる。
【００２１】
１）プリント基板１の取り付け時にθ３軸まわりの誤差がある場合、ハンドをθ３回転することでプリント基板１のＸ、Ｙ軸とカメラ画像のＸ、Ｙ軸を合わせる（この場合は、画像変換で回転補正をかければ対応できるので、θ３のモータは必須とはいえない）。
【００２２】
２）プリント基板１上の障害物をよけるため、プローブピン５を傾斜させた状態でコンタクトする場合。この場合は、予め傾斜させた向きが障害物のある向きと同じ場合、θ３回転を行うことで障害物をよけることが可能となる。
【００２３】
図４はプローブピンを傾斜させる説明図であり、図４（ａ）はプローブピンを傾斜させない場合の説明、図４（ｂ）はプローブピンを傾斜させ回転させる場合の説明である。図４（ａ）において、プリント基板１の上にハードディスク等の大型部品７が搭載されている場合、コンタクトしたい点にプローブ４を傾斜させないでコンタクトしようとすると、プローブ４の一部が干渉する。このため、図４（ｂ）のように、プローブピン５を予め傾斜させた状態で、ハンド３をθ３回転を行うことで、図の左右のプローブ４のように大型部品７とプローブ４の干渉を防ぐことができる。
【００２４】
３）複数ハンドで同時測定を行う場合、コンタクト点が近接していると、ハンド同士がぶつかる危険がある。この場合に、ハンド回転させることで衝突を回避できる場合がある。
【００２５】
４）ハンドにプローブピンとグランドピンの２つのピンを持たせる場合。仮に、プローブピン先端がθ３軸に一致している場合、グランドピンをプローブピンから所定量移動するモータと、θ３モータを正しく動かせば、プローブピンとグランドピンの両方が正しくコンタクトできる。
【００２６】
（３）：特徴点の位置の割り出し（ＸＹ補正）の説明
▲１▼：一つのテンプレートを使用する場合の説明
図５は１つのテンプレートを使用する場合の説明図である。図５において、画像Ａとテンプレート▲１▼が設けてある。画像Ａは、プリント基板１のカメラの画像であり、周囲にリードを持つＩＣ画像ａが示されている。ＩＣ画像ａは、周囲にリード（一部のリードを省略）を持ち、このリードはプリント基板上のパットと接続されるものである。テンプレート▲１▼は、パターンマッチングに使用するため予め格納されているデータ（ここではリードパターンの一部のデータ）である。
【００２７】
（パターンマッチングの説明）
パターンマッチングは、ＣＡＤデータにより、テンプレート▲１▼に相当する画像部分（図２のステージ６に固定されたプリント基板１の画像部分）のだいたいの位置が予めわかっているため誤差がなければパターンが一致すると思われる位置を中心にし、その位置からテンプレートを前後左右に移動して行う。図６は画像認識処理フローである。以下、図６の処理Ｓ１〜Ｓ３に従って説明する。
【００２８】
Ｓ１：画像認識部１３の格納手段等にテンプレート▲１▼のデータを設定する。このデータは、２次元の明暗を表すデータである。
【００２９】
Ｓ２：画像認識部１３は、テンプレート▲１▼とカメラ画像の回路基板とのパターンマッチングを行い類似度を求める。この動作をテンプレート▲１▼を１ピクセル分動かす毎に繰り返して、２次元の類似度マトリックスを作成する。なお、このテンプレート▲１▼を動かす範囲は位置ズレ誤差をカバーする範囲とする。動かす単位は通常１ピクセル単位である。
【００３０】
Ｓ３：画像認識部１３は、作成した類似度マトリックスの中から最大類似度の位置の画素を割り出し、マッチング位置とする。
【００３１】
▲２▼：複数のテンプレートを使用する場合の説明
図７は２つのテンプレートを使用する場合の説明図である。図７において、画像Ａとテンプレート▲１▼、▲２▼が設けてある。画像Ａは、カメラの画像であり、周囲にリード（一部のリードを省略）を持つＩＣ画像ａと２個のＶＩＡ（ビア）ｂが示されている。テンプレート▲１▼、▲２▼は、パターンマッチングに使用するため予め格納されているデータ（ここでは、ＶＩＡとリードパターンの一部のデータ）である。なお、ＶＩＡは、中心にＶＩＡホール（多層プリント基板の層間を接続するための穴（黒丸で示す））を持つものである。また、ここではテンプレート▲１▼、▲２▼を同時に示してあるが、通常、画像認識部１３の格納手段等に別々に格納されるものである。
【００３２】
（パターンマッチングの説明）
パターンマッチングでは、ＣＡＤデータによりテンプレートに相当する画像部分のだいたいの位置が予めわかっているため、プリント基板に位置決め誤差がなければパターンが一致すると思われる位置を中心にし、その位置からテンプレートを前後左右に移動して行う。図８は画像認識処理フローである。以下、図８の処理Ｓ１１〜Ｓ１５に従って説明する。
【００３３】
Ｓ１１：画像認識部１３の格納手段等に、ＶＩＡ用のテンプレート▲１▼とリードパターン用のテンプレート▲２▼の明暗データを設定する。
【００３４】
Ｓ１２：画像認識部１３は、先ず、ＶＩＡ用のテンプレート▲１▼とカメラ画像の回路基板（テンプレート▲１▼に相当する部分のだいたいの位置が予めわかっているため誤差がなければパターンが一致すると思われる位置を中心とする領域で）とのパターンマッチングを行い類似度を求める動作と、テンプレート▲１▼を１ピクセル（画素）動かす動作を繰り返し、類似度マトリックスを作成する。なお、このテンプレート▲１▼を動かす範囲は位置ズレ範囲を考えて適当に設定する。
【００３５】
Ｓ１３：画像認識部１３は、次に、リードパターン用のテンプレート▲２▼を使用して、テンプレート▲１▼と同様に１ピクセルづつ動かしてパターンマッチングを行い類似度を求める（テンプレート▲２▼を使用した類似度マトリックスを作成する）。この動かす範囲はテンプレート▲１▼と同じ範囲（誤差がなければパターンが一致すると思われる位置を中心として）で行う。
【００３６】
Ｓ１４：画像認識部１３は、次に、テンプレート▲１▼を使用して得られた類似度とテンプレート▲２▼を使用して得られた類似度とを各位置（同じ移動距離）で加算（テンプレート▲１▼とテンプレート▲２▼を使用して作成した類似度マトリックスを加算し、加算した類似度マトリックスを作成）する。
【００３７】
Ｓ１５：画像認識部１３は、前記加算した類似度マトリックスの中から最大類似度の位置の画素を割り出し、マッチング位置とする。
【００３８】
図９は類似度加算の説明図であり、図９（ａ）はテンプレート▲１▼の類似度マトリックスの説明、図９（ｂ）はテンプレート▲２▼の類似度マトリックスの説明、図９（ｃ）はテンプレート▲１▼とテンプレート▲２▼を加算した類似度マトリックスの説明である。
【００３９】
図９（ａ）のテンプレート▲１▼で得られた類似度マトリックスと図９（ｂ）のテンプレート▲２▼で得られた類似度マトリックスとを加算したものが図９（ｃ）の類似度マトリックスである。例えば、図９（ａ）と図９（ｂ）の中心の類似度がそれぞれ「１８」と「２０」であるので、図９（ｃ）では中心の類似度が「３８」となる。
【００４０】
図９（ｃ）において、類似度が最も高いのは「５１」であり、この位置は中心（ＣＡＤデータの位置）より１ピクセル分右斜め上となる。このように、複数のテンプレートを用いることで、画像のノイズ等の影響を受けにくく、認識精度が高まる。
【００４１】
なお、テンプレート▲１▼とテンプレート▲２▼は、パターンの全く違うものの組み合わせを使用すると認識誤差をさらに少なくする（誤差が出やすい方向が異なるケースがあるため）ことが期待できる。また、テンプレート▲１▼とテンプレート▲２▼を合わせたような大きなテンプレートを用いることも考えられるが、保存に必要なプログラムが多く（テンプレートの数も増える）なり、パターンマッチングの処理量も増加するため現実的ではない。
【００４２】
なお、上記実施の形態では、テンプレートを１〜２を使用する説明をしたが、３以上使用することにより画像位置の認識結果をより向上することがきる。更に、パターンマッチングに類似度を用いたが、距離を用いることもできる。距離は、類似度とは逆に類似度が高いほど小さく（短く）なる。
【００４３】
（４）：画像認識を使ったＺ補正（距離の補正）とθ３補正の説明
１台のカメラでＸ軸方向の補正（Ｘ補正）とＹ軸方向の補正（Ｙ補正）のみならず、Ｚ軸方向の補正（距離の補正（Ｚ補正））やＺ軸まわり回転角（θ３）の補正も行うものである。
【００４４】
ハンドを所定の位置に移動したところで、カメラに写っているであろう２つの特徴点の位置を割り出す。この割り出しには、前記で説明した１つの点の位置の割り出しを使用する。例えば、カメラの画像上の右半分と左半分からそれぞれ１点づつ選ぶ。ここで特徴点とは、画像認識が可能なものを指している。例えば、プリント基板上のＶＩＡやＩＣのリード接続用のパッド（フットパッド）等である。
【００４５】
２つの特徴点ａ、ｂのそれぞれの本来の座標を
ａ＝（ｘ１，ｙ１）、ｂ＝（ｘ２，ｙ２）とする。
【００４６】
パターンマッチングを行って画像認識した結果の２つの特徴点Ａ、Ｂの座標を
Ａ＝（Ｘ１，Ｙ１）＝（ｘ１＋δｘ１，ｙ１＋δｙ１）
Ｂ＝（Ｘ２，Ｙ２）＝（ｘ２＋δｘ２，ｙ２＋δｙ２）
とし、以下、画像認識部１３が行うＺ補正とθ３補正の具体的処理手順を説明する。
【００４７】
▲１▼：回転角（θ３）の補正の説明
１枚の画像上の異なる２つの領域で別々に画像認識を行い、その結果から回転角の補正量を求めるものである。
【００４８】
回転角の誤差δθ3 は、ベクトルの外積を使って
【００４９】
【数１】
0004002107.tif 000002
【００５０】
図１０は回転角（θ３）の補正の説明図である。図１０において、線分ａ、ｂと線分Ａ、Ｂとがつくる角度がδθ3 となる。これにより、ロボットのハンドのＸＹ方向の誤差と高さの誤差を「０」とすると、ハンドのθ３（カメラの光軸回りの回転角）を、ここで求まったδθ3 だけ回すと、画像上の点Ａ、Ｂに見えていたものは、逆方向に回り、それぞれ、点ａ、ｂに見えることになる。即ち、δθ3 の回転によりθ３が補正され、正確な値となったことになる。
【００５１】
▲２▼：高さ（距離）の補正の説明
１枚の画像上の異なる２つの領域で別々に画像認識を行い、その結果から認識対象物までの距離の補正量を求めるものである。
【００５２】
図１１は高さの補正の説明図である。図１１において、カメラ２と対象物までの設計上の高さをｈとし、実際の高さをｈ’、その誤差をδｈ＝ｈ−ｈ’とすると、ハンドの高さを＋δｈ補正することで、ハンド（取り付けられているカメラ）は正しい高さｈに移動することになる。
【００５３】
【数２】
0004002107.tif 000003
【００５４】
カメラと対象物までの距離（設計値）をｈ、実際の距離をｈ’、その誤差をδｈ＝ｈ−ｈ’とすると、
【００５５】
【数３】
0004002107.tif 000004
【００５６】
▲３▼：高さ（距離）の補正と回転角の補正の説明
１枚の画像上の異なる２つの領域で別々に画像認識を行い、その結果から回転角の補正量と認識対象物までの距離の補正量を求めるものである。
【００５７】
上記▲１▼と▲２▼で説明した回転角（θ３）の補正と高さ（距離）の補正は、組み合わせて行うことができる。
【００５８】
【数４】
0004002107.tif 000005
【００５９】
これらの回転角の誤差δθ3 と高さの誤差δｈの補正を行い、回転角と高さの両者を正確にすることができる。
【００６０】
▲４▼：ＸＹ補正と回転角補正の説明
１枚の画像上の異なる２つの領域で別々に画像認識を行い、その結果からＸＹ補正量と回転角の補正量を求めるものである。
【００６１】
(1) 上記▲１▼で説明した回転角（θ３）の補正の方式で回転角の誤差δθ3 を求める（図１２（ａ）参照）。
【００６２】
(2) 次に、カメラの画像に、−δθ3 の回転処理をほどこす。この時、点Ａ、Ｂが、点Ａ’、Ｂ’に移動したとする（図１２（ｂ）参照）。
【００６３】
【数５】
0004002107.tif 000006
【００６４】
なお、(2) の替わりに、次の (2)’の処理を行ってもよい。
【００６５】
(2)’ハンドに＋δθ3 の回転をほどこす。その後、再度カメラの画像を取得し直し、画像認識もやり直し、その認識結果の点をＡ’、Ｂ’とする。
【００６６】
図１２はＸＹ補正と回転角補正の説明図であり、図１２（ａ）はδθ3 の説明である。図１２（ａ）において、画像認識の結果の点Ａ、Ｂによる線分ＡＢと本来（設計上）の点ａ、ｂによる線分ａｂとがつくる角がδθ3 となる（上記(1) 参照）。
【００６７】
図１２（ｂ）は回転処理後の説明である。図１２（ｂ）において、画像に−δθ3 の回転処理又はハンドに＋δθ3 の回転をほどこした時の点Ａ’、Ｂ’である（上記(2) 又は(2) ’参照）。
【００６８】
【数６】
0004002107.tif 000007
【００６９】
▲５▼：ＸＹ補正と高さ補正の説明
１枚の画像上の異なる２つの領域で別々に画像認識を行い、その結果からＸＹ補正量と高さ（距離）の補正量を求めるものである。
【００７０】
(1) 上記▲２▼で説明した高さの補正の方式で高さの誤差δｈを求める。
【００７１】
(2) 次に、カメラの画像に対して、（ｈ−δｈ）／ｈ倍の拡大（若しくは縮小）処理を行う。ここで、点Ａ、Ｂの変換（処理）後の点をＡ’、Ｂ’とする。
【００７２】
【数７】
0004002107.tif 000008
【００７３】
なお、上記(2) の替わりに、次の (2)’の処理を行ってもよい。
【００７４】
(2)’ハンドをδｈだけＺ軸方向に移動する。移動後、あらためてカメラの画像を取得、画像認識をやり直し、その認識結果の点をＡ’、Ｂ’とする。その後、前記▲４▼と同様にＸＹの補正を行う。
【００７５】
▲６▼：ＸＹ補正、回転角補正、高さ補正を同時に行う説明
１枚の画像上の異なる２つの領域で別々に画像認識を行い、その結果からＸＹ補正量、回転角の補正量、高さ（距離）の補正量を求めるものである。
【００７６】
(1) 上記▲３▼で説明した高さの補正と回転角の補正の方式で高さの誤差δｈ、回転角の誤差δθ3 を求める。
【００７７】
(2) 次に、カメラの画像に対して、上記▲４▼の(2) で説明した−δθ3 の回転処理と、上記▲５▼の(2) で説明した（ｈ−δｈ）／ｈ倍の拡大（若しくは縮小）処理を行う。ここで、点Ａ、Ｂの変換（処理）後の点をＡ’、Ｂ’とする。
【００７８】
【数８】
0004002107.tif 000009
【００７９】
なお、上記(2) の替わりに、次の (2)’の処理を行ってもよい。
【００８０】
(2)’ハンドをδｈだけＺ軸方向に移動し、回転角もδθ3 補正する。その後、カメラの画像を取得と画像認識をやり直し、その認識結果の点をＡ’、Ｂ’とする。その後、前記▲４▼と同様にＸＹの補正を行う。
【００８１】
また、回転角補正、高さ補正、ＸＹ補正を求めるやり方は次のように行うこともできる。
【００８２】
(1) 最初のカメラの画像を使って、回転角、高さ、ＸとＹの補正量を計算する（これらの４つの計算順序はどのような順番でも構わない）。
【００８３】
(2) その後、ＸＹ補正量に対して、回転角の誤差分の変換を行って、最終的なＸＹ補正量を求める。
【００８４】
(3) その後、メカ（ハンド）に対して回転角、高さ、ＸＹ成分（２成分）の補正を行う（これらの４つの補正順序はどのような順番でも構わない）。
【００８５】
（５）：プログラムインストールの説明
制御部１０、モータ群駆動部１１、駆動手段１１ａ、カメラ制御部１２、画像認識部１３、画像認識手段１３ａ、補正量計算部１４、計測部１５、測定ポイントデータ格納部１６、格納手段１６ａ等は、プログラムで構成でき、主制御部（ＣＰＵ）が実行するものであり、主記憶に格納されているものである。このプログラムは、一般的な、コンピュータで処理されるものである。このコンピュータは、主制御部、主記憶、ファイル装置、表示装置、キーボード等の入力手段である入力装置などのハードウェアで構成されている。
【００８６】
このコンピュータに、本発明のプログラムをインストールする。このインストールは、フロッピィ、光磁気ディスク等の可搬型の記録（記憶）媒体に、これらのプログラムを記憶させておき、コンピュータが備えている記録媒体に対して、アクセスするためのドライブ装置を介して、或いは、ＬＡＮ等のネットワークを介して、コンピュータに設けられたファイル装置にインストールされる。そして、このファイル装置から処理に必要なプログラムステップを主記憶に読み出し、主制御部が実行するものである。
【００８７】
〔以下付記を記載する〕
（付記１）  認識対象物を撮影するカメラと、
前記認識対象物用のテンプレートと前記カメラの画像中の認識対象物の位置データとを格納する格納手段と、
前記カメラの画像と前記テンプレートでパターンマッチングを行う画像認識手段とを備え、
前記画像認識手段は、１枚の画像上で異なる２つの領域でパターンマッチングを行い、それぞれの領域で特徴点の位置を割り出し、該割り出した２つの特徴点を通る直線と位置データより決まる前記２つの特徴点を通る直線とのなす角度を求め、該求めた角度を回転角の補正量とすることを特徴とした画像認識装置。
【００８８】
（付記２）  認識対象物を撮影するカメラと、
前記認識対象物用のテンプレートと前記カメラの画像中の認識対象物の位置データとを格納する格納手段と、
前記カメラの画像と前記テンプレートでパターンマッチングを行う画像認識手段とを備え、
前記画像認識手段は、１枚の画像上で異なる２つの領域でパターンマッチングを行い、それぞれの領域で特徴点の位置を割り出し、該割り出した２つの特徴点間の距離と位置データより決まる前記２つの特徴点間の距離から、前記カメラと前記認識対象物間の距離の誤差を計算し、該誤差を距離の補正値とすることを特徴とした画像認識装置。
【００８９】
（付記３）  認識対象物を撮影するカメラと、
前記認識対象物用のテンプレートと前記カメラの画像中の認識対象物の位置データとを格納する格納手段と、
前記カメラの画像と前記テンプレートでパターンマッチングを行う画像認識手段とを備え、
前記画像認識手段は、１枚の画像上で異なる２つの領域でパターンマッチングを行い、それぞれの領域で特徴点の位置を割り出し、該割り出した２つの特徴点を通る直線と位置データより決まる前記２つの特徴点を通る直線とのなす角度を求め、該求めた角度を回転角の補正量とすると共に、該割り出した前記２つの特徴点間の距離と位置データより決まる前記２つの特徴点間の距離から、前記カメラと前記認識対象物間の距離の誤差を計算し、該誤差を距離の補正値とすることを特徴とした画像認識装置。
【００９０】
（付記４）  前記画像認識手段は、前記回転角の補正量の補正又は前記距離の補正値の補正を行った後、該補正後の特徴点の位置と位置データより決まる特徴点の位置の補正を行うことを特徴とした付記１〜３のいずれかに記載の画像認識装置。
【００９１】
（付記５）  認識対象物用のテンプレートとカメラの画像中の認識対象物の位置データとを格納する格納手段と、
１枚の画像上で異なる２つの領域でパターンマッチングを行い、それぞれの領域で特徴点の位置を割り出し、該割り出した２つの特徴点を通る直線と位置データより決まる前記２つの特徴点を通る直線とのなす角度を求め、該求めた角度を回転角の補正量とする画像認識手段として、
コンピュータを機能させるためのプログラム又はプログラムを記録したコンピュータ読取可能な記録媒体。
【００９２】
（付記６）  認識対象物用のテンプレートと前記カメラの画像中の認識対象物の位置データとを格納する格納手段と、
１枚の画像上で異なる２つの領域でパターンマッチングを行い、それぞれの領域で特徴点の位置を割り出し、該割り出した２つの特徴点間の距離と位置データより決まる前記２つの特徴点間の距離から、前記カメラと前記認識対象物間の距離の誤差を計算し、該誤差を距離の補正値とする画像認識手段として、
コンピュータを機能させるためのプログラム又はプログラムを記録したコンピュータ読取可能な記録媒体。
【００９３】
（付記７）  認識対象物用のテンプレートと前記カメラの画像中の認識対象物の位置データとを格納する格納手段と、
１枚の画像上で異なる２つの領域でパターンマッチングを行い、それぞれの領域で特徴点の位置を割り出し、該割り出した２つの特徴点を通る直線と位置データより決まる前記２つの特徴点を通る直線とのなす角度を求め、該求めた角度を回転角の補正量とすると共に、該割り出した前記２つの特徴点間の距離と位置データより決まる前記２つの特徴点間の距離から、前記カメラと前記認識対象物間の距離の誤差を計算し、該誤差を距離の補正値とする画像認識手段として、
コンピュータを機能させるためのプログラム又はプログラムを記録したコンピュータ読取可能な記録媒体。
【００９４】
（付記８）  前記回転角の補正量の補正又は前記距離の補正値の補正を行った後、該補正後の特徴点の位置と位置データより決まる特徴点の位置の補正を行う前記画像認識手段として、
付記５〜７のいずれかに記載のコンピュータを機能させるためのプログラム又は付記５〜７のいずれかに記載のプログラムを記録したコンピュータ読取可能な記録媒体。
【００９５】
【発明の効果】
以上説明したように、本発明によれば次のような効果がある。
【００９８】
（１）：画像認識手段で、１枚の画像上で異なる２つの領域でパターンマッチングを行い、それぞれの領域で特徴点の位置を割り出し、該割り出した２つの特徴点を通る直線と位置データより決まる前記２つの特徴点を通る直線とのなす角度を求め、該求めた角度を回転角の補正量とすると共に、該割り出した前記２つの特徴点間の距離と位置データより決まる前記２つの特徴点間の距離とを比較し、該比較した距離が等しくなるようにカメラと認識対象物間の距離を移動し、該移動した距離を距離の補正値とするため、１枚の画像で回転角の補正量と距離の補正値を容易に求めることができる。
【００９９】
（２）：画像認識手段は、回転角の補正量の補正又は距離の補正値の補正を行った後、該補正後の特徴点の位置と位置データより決まる特徴点の位置の補正を行うため、１枚の画像で回転角の誤差や距離の誤差を無くしてＸＹ軸方向の補正をするので、カメラを備えるハンド等の補正を容易にかつ正確に行うことができる。
【０１００】
（３）：認識対象物用のテンプレートとカメラの画像中の認識対象物の位置データとを格納する格納手段と、１枚の画像上で異なる２つの領域でパターンマッチングを行い、それぞれの領域で特徴点の位置を割り出し、該割り出した２つの特徴点を通る直線と位置データより決まる前記２つの特徴点を通る直線とのなす角度を求め、該求めた角度を回転角の補正量とすると共に、該割り出した前記２つの特徴点間の距離と位置データより決まる前記２つの特徴点間の距離から、前記カメラと前記認識対象物間の距離の誤差を計算し、該誤差を距離の補正値とする画像認識手段として、コンピュータを機能させるためのプログラムとするため、このプログラムをコンピュータにインストールすることで、１枚の画像で回転角の補正量と距離の補正値を容易に求めることができる画像認識装置を容易に提供することができる。
【図面の簡単な説明】
【図１】本発明の画像認識装置の説明図である。
【図２】実施の形態における基板の自動チェック装置構成の説明図である。
【図３】実施の形態における基板の自動チェック装置の制御ブロックの説明図である。
【図４】実施の形態におけるプローブピンを傾斜させる説明図である。
【図５】実施の形態における１つのテンプレートを使用する場合の説明図である。
【図６】実施の形態における画像認識処理フローである。
【図７】実施の形態における２つのテンプレートを使用する場合の説明図である。
【図８】実施の形態における画像認識処理フローである。
【図９】実施の形態における類似度加算の説明図である。
【図１０】実施の形態における回転角（θ３）の補正の説明図である。
【図１１】実施の形態における高さの補正の説明図である。
【図１２】実施の形態におけるＸＹ補正と回転角補正の説明図である。
【図１３】従来例の説明図である。
【符号の説明】
１ａ  認識対象物
２  カメラ
４  プローブ
１０  制御部
１１ａ  駆動手段
１３ａ  画像認識手段
１６ａ  格納手段
【図１】
0004002107.tif 000010
【図２】
0004002107.tif 000011
【図３】
0004002107.tif 000012
【図４】
0004002107.tif 000013
【図５】
0004002107.tif 000014
【図６】
0004002107.tif 000015
【図７】
0004002107.tif 000016
【図８】
0004002107.tif 000017
【図９】
0004002107.tif 000018
【図１０】
0004002107.tif 000019
【図１１】
0004002107.tif 000020
【図１２】
0004002107.tif 000021
【図１３】
0004002107.tif 000022