(57)【特許請求の範囲】
【請求項１】
テンプレート画像にサーチ画像内の対象画像を照合させて、サーチ画像内の前記対象画像の位置、回転角度、スケールを検出する画像処理装置であって、
前記テンプレート画像のエッジ点が前記対象画像のエッジ点になる基準点候補を、位置及び回転角度の変動範囲をカバーする投票空間上に投票し、投票空間に投票された複数の基準点候補から対象画像の位置及び回転角度を検出する第１の検出部と、
前記第１の検出部で検出された回転角度の前記テンプレート画像のエッジ点が前記対象画像のエッジ点になる基準点候補を、位置及びスケールの変動範囲をカバーする投票空間上に投票し、投票空間で投票数が最大になる基準点候補から対象画像の位置及びスケールを検出する第２の検出部とを備え、
前記第１の検出部が、スケール変動を考慮したマトリックスデータを用いて、複数の基準点候補を同時に投票することを特徴とする画像処理装置。
【請求項２】
前記第１の検出部が、中心の基準点候補よりも周辺の基準点候補への投票数を少なくしたマトリックスデータを用いて投票することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記第１の検出部が、スケールの変動方向に前記マトリックスデータを前後させて複数回に亘って投票することを特徴とする請求項１又は請求項２に記載の画像処理装置。
【請求項４】
前記第２の検出部が、前記第１の検出部で絞り込まれた複数の基準点候補から１つの基準点候補に絞り込むことを特徴とする請求項１から請求項３のいずれかに記載の画像処理装置。
【請求項５】
前記位置及び回転角度の変動範囲をカバーする投票空間に使用したメモリ領域を、前記位置及びスケールの変動範囲をカバーする投票空間に使用することを特徴とする請求項１から請求項４のいずれかに記載の画像処理装置。
【請求項６】
前記第１の検出部及び前記第２の検出部によって粗検出された位置、回転角度、スケールの前記テンプレート画像と前記対象画像とをアフィン変換によって照合させて、前記対象画像の位置、回転角度、スケールを精密検出する第３の検出部を備えることを特徴とする請求項１から請求項５のいずれかに記載の画像処理装置。
【請求項７】
前記第１の検出部及び前記第２の検出部よりも前記第３の検出部で高解像度のサーチ画像を用いることを特徴とする請求項６に記載の画像処理装置。
【請求項８】
前記サーチ画像から対象画像の複数のエッジ点を検出するエッジ検出部と、
前記エッジ検出部で検出された複数のエッジ点のうち、前記第１の検出部が回転角度を検出した所定の投票領域に投票したエッジ点を抽出する抽出部とを備え、
前記第２の検出部が、前記抽出部で抽出した前記テンプレート画像のエッジ点が前記対象画像のエッジ点になる基準点候補を投票することを特徴とする請求項１から請求項７のいずれかに記載の画像処理装置。
【請求項９】
前記抽出部が、前記エッジ検出部で検出された複数のエッジ点で投票し、投票先が前記所定の投票領域になるエッジ点を抽出することを特徴とする請求項８に記載の画像処理装置。
【請求項１０】
前記所定の投票領域が前記第１の検出部で投票された複数の基準点候補であることを特徴とする請求項８又は請求項９に記載の画像処理装置。
【請求項１１】
請求項１から請求項１０のいずれかに記載の画像処理装置と、
前記画像処理装置に部品を含むサーチ画像を入力する撮像装置とを備え、
前記画像処理装置でサーチ画像から前記部品を示す対象画像を検出し、対象画像の位置、回転角度、スケールに応じて前記部品を補正することを特徴とする実装装置。
【請求項１２】
テンプレート画像にサーチ画像内の対象画像を照合させて、サーチ画像内の前記対象画像の位置、回転角度、スケールを検出する画像処理方法であって、
前記テンプレート画像のエッジ点が前記対象画像のエッジ点になる基準点候補を、位置及び回転角度の変動範囲をカバーする投票空間上に投票し、投票空間に投票された複数の基準点候補から対象画像の位置及び回転角度を検出する第１のステップと、
前記第１のステップで検出された回転角度の前記テンプレート画像のエッジ点が前記対象画像のエッジ点になる基準点候補を、位置及びスケールの変動範囲をカバーする投票空間上に投票し、投票空間で投票数が最大になる基準点候補から対象画像の位置及びスケールを検出する第２のステップとを備え、
前記第１のステップがスケール変動を考慮したマトリックスデータを用いて、複数の基準点候補を同時に投票することを特徴とする画像処理方法。
【請求項１３】
請求項１２に記載の画像処理方法の各ステップを画像処理装置に実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テンプレートマッチングに使用される画像処理装置、実装装置、画像処理方法及びプログラムに関する。
【背景技術】
【０００２】
テンプレートマッチングにおいては、一般化ハフ（Hough）変換と呼ばれる手法が広く用いられている。一般化ハフ変換は、多数決方式の検出方法であるため、非常にロバストであり、部分的な隠蔽やノイズに強い照合方法である。一般化ハフ変換は、複数のエッジ点で位置ｘ、ｙ、角度θ、スケールｓの４次元の投票空間で投票するため、投票処理に膨大な処理時間が必要になっている。このため、一般化ハフ変換の変換処理をハードウェアで実現して高速化を図った一般化ハフ変換回路が提案されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開昭６２−０７７６８９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載の一般化ハフ変換回路で一般化ハフ変換をハードウェアで実施したとしても、一般化ハフ変換での処理量が減るわけではない。ハードウェアで一般化ハフ変換する場合であっても、位置ｘ、ｙ、角度θ、スケールｓの４次元で投票処理されるため、一般化ハフ変換回路での処理時間が長くなる。特に、エッジ点が多い画像を照合する場合には、投票処理が膨大になって処理遅延が大きくなる可能性があった。さらに、一般化ハフ変換回路の回路構成が複雑になって、一般化ハフ変換をハードウェアで高速で処理するには限界があった。
【０００５】
本発明はかかる点に鑑みてなされたものであり、回路構成を複雑化することなく、テンプレート画像に対する対象画像の照合処理を高速化することができる画像処理装置、実装装置、画像処理方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の画像処理装置は、テンプレート画像にサーチ画像内の対象画像を照合させて、サーチ画像内の前記対象画像の位置、回転角度、スケールを検出する画像処理装置であって、前記テンプレート画像のエッジ点が前記対象画像のエッジ点になる基準点候補を、位置及び回転角度の変動範囲をカバーする投票空間上に投票し、投票空間に投票された複数の基準点候補から対象画像の位置及び回転角度を検出する第１の検出部と、前記第１の検出部で検出された回転角度の前記テンプレート画像のエッジ点が前記対象画像のエッジ点になる基準点候補を、位置及びスケールの変動範囲をカバーする投票空間上に投票し、投票空間で投票数が最大になる基準点候補から対象画像の位置及びスケールを検出する第２の検出部とを備え、前記第１の検出部が、スケール変動を考慮したマトリックスデータを用いて、複数の基準点候補を同時に投票することを特徴とする。
【０００７】
本発明の画像処理方法は、テンプレート画像にサーチ画像内の対象画像を照合させて、サーチ画像内の前記対象画像の位置、回転角度、スケールを検出する画像処理方法であって、前記テンプレート画像のエッジ点が前記対象画像のエッジ点になる基準点候補を、位置及び回転角度の変動範囲をカバーする投票空間上に投票し、投票空間に投票された複数の基準点候補から対象画像の位置及び回転角度を検出する第１のステップと、前記第１のステップで検出された回転角度の前記テンプレート画像のエッジ点が前記対象画像のエッジ点になる基準点候補を、位置及びスケールの変動範囲をカバーする投票空間上に投票し、投票空間で投票数が最大になる基準点候補から対象画像の位置及びスケールを検出する第２のステップとを備え、前記第１のステップがスケール変動を考慮したマトリックスデータを用いて、複数の基準点候補を同時に投票することを特徴とする。
【０００８】
これらの構成によれば、スケール変動を考慮したマトリックスデータを用いて、対象画像の位置及び回転角度を示す複数の基準点候補が投票空間に投票される。これにより、スケール変動が生じる範囲内で、対象画像の位置及び回転角度を示す基準点候補が複数に絞られる。複数の基準点候補から回転角度と回転中心が検出され、この回転角度を固定、回転中心により基準点候補の存在範囲を限定した状態で対象画像の位置及びスケールを示す基準点候補が投票空間に投票される。これにより、投票空間内の複数の基準点候補から、対象画像の位置、回転角度、スケールを示す基準点候補が絞られる。このように、回転角度の検出とスケールの検出を個別に実施することで、投票空間をコンパクト化すると共に全体の投票回数を減らすことができ、テンプレート画像に対する対象画像の照合処理を高速化することができる。
【０００９】
本発明の画像処理装置において、前記第１の検出部が、中心の基準点候補よりも周辺の基準点候補への投票数を少なくしたマトリックスデータを用いて投票する。この構成によれば、マトリックスデータの投票数に重み付けして、対象画像の位置及び回転角度を示す複数の基準点候補を精度よく絞り込むことができる。
【００１０】
本発明の画像処理装置において、前記第１の検出部が、スケールの変動方向に前記マトリックスデータを前後させて複数回に亘って投票する。この構成によれば、マトリックスデータだけではカバーできないスケール変動が生じても、対象画像の位置及び回転角度を示す複数の基準点候補を絞り込むことができる。
【００１１】
本発明の画像処理装置において、前記第２の検出部が、前記第１の検出部で絞り込まれた複数の基準点候補から１つの基準点候補に絞り込む。この構成によれば、第２の検出部の処理量を減らして処理速度を速めることができる。
【００１２】
本発明の画像処理装置において、前記位置及び回転角度の変動範囲をカバーする投票空間に使用したメモリ領域を、前記位置及びスケールの変動範囲をカバーする投票空間に使用する。この構成によれば、回転角度の検出時とスケールの検出時とでメモリ領域を切り替えて使用することで、メモリ容量を低減することができる。
【００１３】
本発明の画像処理装置において、前記第１の検出部及び前記第２の検出部によって粗検出された位置、回転角度、スケールの前記テンプレート画像と前記対象画像とをアフィン変換によって照合させて、前記対象画像の位置、回転角度、スケールを精密検出する第３の検出部を備える。この構成によれば、テンプレート画像と対象画像をより精度よく照合して、サーチ画像内の対象画像の位置、回転角度、スケールを精度よく検出することができる。
【００１４】
本発明の画像処理装置において、前記第１の検出部及び前記第２の検出部よりも前記第３の検出部で高解像度のサーチ画像を用いる。この構成によれば、粗検出時の投票処理に要する時間を短くすると共に、精密検出時の照合処理の精度を高めることができる。
【００１５】
本発明の画像処理装置において、前記サーチ画像から対象画像の複数のエッジ点を検出するエッジ検出部と、前記エッジ検出部で検出された複数のエッジ点のうち、前記第１の検出部が回転角度を検出した所定の投票領域に投票したエッジ点を抽出する抽出部とを備え、前記第２の検出部が、前記抽出部で抽出した前記テンプレート画像のエッジ点が前記対象画像のエッジ点になる基準点候補を投票する。この構成によれば、第２の検出部による投票処理前に対象画像のエッジ点を絞ることができるため、投票処理の処理負担を減らして処理速度を速めると共に、エッジ点に使用するメモリ容量を低減することができる。
【００１６】
本発明の画像処理装置において、前記抽出部が、前記エッジ検出部で検出された複数のエッジ点で投票し、投票先が前記所定の投票領域になるエッジ点を抽出する。この構成によれば、投票先から逆引きして、所定の投票領域に投票した対象画像のエッジ点を抽出することができる。
【００１７】
本発明の画像処理装置において、前記所定の投票領域が前記第１の検出部で投票された複数の基準点候補である。この構成によれば、第１の検出部で投票された複数の基準点候補から逆引きして、対象画像のエッジ点を抽出することができる。
【００１８】
本発明の実装装置は上記の画像処理装置と、前記画像処理装置に部品を含むサーチ画像を入力する撮像装置とを備え、前記画像処理装置でサーチ画像から前記部品を示す対象画像を検出し、対象画像の位置、回転角度、スケールに応じて前記部品を補正することを特徴とする。この構成によれば、画像処理装置の処理速度が高速化されるため、実装装置全体のスループットを向上することができる。
【００１９】
本発明のプログラムは、上記の画像処理方法の各ステップを画像処理装置に実行させることを特徴とする。この構成によれば、画像処理装置にプログラムをインストールすることで、テンプレート画像に対する対象画像の照合処理を高速化することができる。
【発明の効果】
【００２０】
本発明によれば、回転角度の検出とスケールの検出を個別に実施することで、投票空間をコンパクト化すると共に全体の投票回数を減らすことができ、テンプレート画像に対する対象画像の照合処理を高速化することができる。
【図面の簡単な説明】
【００２１】
【図１】第１の実施の形態の実装装置の上面模式図である。
【図２】一般化ハフ変換の説明図である。
【図３】通常の一般化ハフ変換の投票空間の説明図である。
【図４】第１の実施の形態の画像処理装置の機能ブロック図である。
【図５】第１の実施の形態のテンプレートのデータ構造の一例を示す図である。
【図６】第１の実施の形態の投票空間の一例を示す図である。
【図７】第１の実施の形態のマトリックスデータの一例を示す図である。
【図８】第１の実施の形態の第１の検出処理の一例を示す図である。
【図９】第１の実施の形態の第２の検出処理の一例を示す図である。
【図１０】第１の実施の形態の第３の検出処理の一例を示す図である。
【図１１】第１の実施の形態のテンプレート画像の一例を示す図である。
【図１２】第１の実施の形態の画像処理方法のフローチャートの一例を示す図である。
【図１３】第１の実施の形態の部品の実装動作のフローチャートの一例を示す図である。
【図１４】第２の実施の形態の画像処理装置の機能ブロック図である。
【図１５】第２の実施の形態の抽出処理の一例を示す図である。
【図１６】第２の実施の形態の抽出前後のエッジ点の一例を示す図である。
【図１７】第２の実施の形態の抽出処理のフローチャートの一例を示す図である。
【発明を実施するための形態】
【００２２】
以下、添付図面を参照して、本実施の形態の画像処理装置を備えた実装装置について説明する。図１は、第１の実施の形態の実装装置の上面模式図である。図２は、一般化ハフ変換の説明図である。図３は、通常の一般化ハフ変換の投票空間の説明図である。なお、本実施の形態では、実装装置に画像処理装置を備える構成について説明するが、画像処理装置は撮像装置を備えた他の装置に適用可能である。
【００２３】
図１に示すように、実装装置１は、テープフィーダ等の部品供給装置１０から供給された部品（不図示）を、実装ヘッド４０によって基板Ｗの載置面に搭載するように構成されている。実装装置１の基台２０の略中央には、Ｘ軸方向に沿って基板搬送部２１が配設されている。基板搬送部２１は、Ｘ軸方向の一端側から部品搭載前の基板Ｗを実装ヘッド４０の下方に搬入して位置決めし、部品搭載後の基板ＷをＸ軸方向の他端側から搬出する。また、基台２０上には、基板搬送部２１を挟んだ両側に多数の部品供給装置１０がＸ軸方向に横並びに配置されている。
【００２４】
部品供給装置１０にはテープリール１１が着脱自在に装着され、テープリール１１には多数の部品をパッケージングしたキャリアテープ（不図示）が巻回されている。各部品供給装置１０は、装置内に設けられたスプロケットホイールの回転によって実装ヘッド４０にピックアップされる受け渡し位置に向けて順番に部品を繰り出している。実装ヘッド４０の受け渡し位置では、キャリアテープから表面のカバーテープが剥離され、キャリアテープのポケット（不図示）内の部品が外部に露出される。なお、本実施の形態では、部品供給装置１０としてテープフィーダを例示したが、ボールフィーダ等で構成されていてもよい。
【００２５】
基台２０上には、実装ヘッド４０をＸ軸方向及びＹ軸方向に移動させるＸＹ移動部３０が設けられている。ＸＹ移動部３０は、Ｙ軸方向に平行に延びる一対のＹ軸部３１と、Ｘ軸方向に平行に延びるＸ軸部３２とを有している。一対のＹ軸部３１は、基台２０の四隅に立設された支持部（不図示）に支持されており、Ｘ軸部３２は、一対のＹ軸部３１上にＹ軸方向に移動可能に設置されている。Ｘ軸部３２上には、実装ヘッド４０がＸ軸方向に移動可能に設置されている。実装ヘッド４０は、ＸＹ移動部３０によって部品供給装置１０と基板Ｗとの間で往復移動される。
【００２６】
実装ヘッド４０は、ノズル４１を備えた複数（本実施の形態では３つ）のヘッド部４２を有している。ヘッド部４２は、Ｚ軸モータ（不図示）によってノズル４１をＺ軸方向に上下動すると共に、θモータ（不図示）によってノズル４１をＺ軸回りに回転する。各ノズル４１は吸引源（不図示）に接続されており、吸引源からの吸引力によって部品を吸着保持する。なお、実装ヘッド４０のノズル４１は、上記の吸引ノズルに限定されず、部品供給装置１０から部品を取り出して基板Ｗに搭載可能であればよく、例えばグリッパーノズルで構成されていてもよい。
【００２７】
実装ヘッド４０には、測定対象の高さを測定する高さセンサ４５と、ノズル４１に吸着された部品の形状寸法や吸着ズレ等を認識可能な不図示のレーザ認識部とが設けられている。高さセンサ４５は、発光素子から測定対象に向けて発光し、測定対象からの反射光を受光素子で受光することで実装ヘッド４０から測定対象までの距離を測定している。不図示のレーザ認識部は、多数の発光素子と受光素子とを水平方向で対向させ、横一列に並んだレーザ光を遮らせるように部品を上下動及び回転させることで、部品の形状寸法や吸着ズレを認識している。
【００２８】
また、実装ヘッド４０には、基板ＷのＢＯＣ（Board  Offset  Correction）マークを撮像する基板撮像部４８と、ノズル４１による部品の搭載動作を撮像するノズル撮像部４９とが設けられている。基板撮像部４８は、ＢＯＣマークの撮像画像に基づいて基板Ｗの位置、傾き、伸縮等を認識している。ノズル撮像部４９は、ノズル４１による吸着前後の部品を撮像する他、基板Ｗに対する搭載前後の部品を撮像して、これらの各画像をトレーサビリティ情報として保存している。また、ノズル４１による吸着前の部品の撮像画像から部品の吸着位置が認識される。
【００２９】
実装装置１の基台２０上には、ノズル４１に吸着された部品を下方から撮像する部品撮像部（撮像装置）２５が設けられている。部品撮像部２５は、実装ヘッド４０による搬送中の部品を撮像して、部品の傾きや高さ等を認識している。また、実装装置１には、テンプレートマッチングによって部品撮像部２５に撮像されたサーチ画像内の部品を認識する画像処理装置５０が設けられている。このような部品認識においては、部品のサイズ変動や所定角度以上（例えば、１０度以上）の角度ズレ等が起こる場合があり、想定外の部品についても適切な対応が求められている。
【００３０】
テンプレートマッチングでは、事前に生成されたテンプレート画像がティーチングデータとして使用されるが、上記したような部品のサイズ変動や角度ズレ等が起こると、ティーチングデータを作り直さなければならない。また、ノイズ成分を減らしてマッチング処理を簡素化するために、部品認識時に対象物以外が視野に入らないようにして撮像しなければならなかった。これらの不具合を解消するために、部品のサイズ変動、位置ズレ、ノイズ成分等に強く、ロバスト性の高い一般化ハフ変換を部品認識に採用することが検討されている。
【００３１】
ここで一般化ハフ変換について簡単に説明する。図２Ａに示すように、一般化ハフ変換では、テンプレート画像６０のエッジ点Ｐ１−Ｐ４から基準点Ｏに向かうベクトルが求められ、エッジ点Ｐ１−Ｐ４にベクトル（α、Ｌ）を関連付けたエッジ点リストが作成されている。このテンプレート画像６０の各エッジ点Ｐ１−Ｐ４から基準点Ｏに向かうベクトルを用いて、ｘ、ｙを座標軸とする投票空間（ｘ、ｙ）に対して対象画像７０（図２Ｂ参照）の基準点候補が投票される。対象画像７０の各エッジ点Ｐ１’−Ｐ４’にテンプレート画像６０の各ベクトルが設定され、ベクトルが示すマスに対して基準点候補が投票される。
【００３２】
仮に、図２Ｂに示すように、対象画像７０の回転角度やスケールがテンプレート画像６０（図２Ａ参照）に一致している場合、対象画像７０の個々のエッジ点Ｐ１’−Ｐ４’を始点として、テンプレート画像６０の全てのベクトル（α１、Ｌ１）−（α４、Ｌ４）が設定される。この結果、投票空間のマスＳ１−Ｓ４に１票、マスＳ５−Ｓ８に２票、マスＳ９に４票が投票される。そして、投票数が最大になるマスＳ９を基準点候補Ｏ’とする対象画像７０の位置が検出される。このように、一般化ハフ変換では、投票数が最大になる基準点候補Ｏ’に基づいて対象画像７０のパラメータが求められる。
【００３３】
図２Ｃに示すように、対象画像７０の回転角度が不明な場合には、スケールについて考えなければ、回転角度を変えた複数のテンプレート画像６０のベクトルを用いて投票空間に投票すればよい。図２Ｃの図示右側に示すように、基準点候補Ｏ’の投票数が最大になる対象画像７０の位置及び回転角度が検出される。同様に、対象画像７０のスケールが不明な場合には、回転角度について考えなければ、スケールを変えた複数のテンプレート画像６０のベクトルを用いて投票空間に投票すればよい。図２Ｄの図示右側に示すように、基準点候補Ｏ’の投票数が最大になる対象画像７０の位置及びスケールが検出される。
【００３４】
しかしながら、図３に示すように、対象画像の位置ｘ、ｙ、回転角度θ、スケールｓを検出するためには、各パラメータの変動範囲をカバーする４次元の投票空間で投票しなければならない。このため、投票回数が多くなって処理時間が長くなると共に、メモリ容量が膨大になって実用的ではない。そこで、本実施の形態の画像処理装置５０（図４参照）では、一般化ハフ変換においてスケール変動を考慮しつつ回転角度θを検出した後に、回転角度θを固定した状態でスケールｓを検出するようにしている。これにより、投票回数を減らすと共にメモリをコンパクト化し、処理速度を向上させるようにしている。
【００３５】
以下、本実施の形態の画像処理装置について説明する。図４は、第１の実施の形態の画像処理装置の機能ブロック図である。図５は、第１の実施の形態のテンプレートのデータ構造の一例を示す図である。図６は、第１の実施の形態の投票空間の一例を示す図である。図７は、第１の実施の形態のマトリックスデータの一例を示す図である。図８は、第１の実施の形態の第１の検出処理の一例を示す図である。図９は、第１の実施の形態の第２の検出処理の一例を示す図である。図１０は、第１の実施の形態の第３の検出処理の一例を示す図である。
【００３６】
図４に示すように、画像処理装置５０には、テンプレート画像生成部５１、テンプレートデータ生成部５２、ピラミッド画像生成部５３、エッジ検出部５４が設けられている。また、画像処理装置５０には、粗検出用に第１、第２の検出部５５、５６が設けられ、精密検出用に第３の検出部５７が設けられている。テンプレート画像生成部５１は、サーチ対象の寸法データやサーチ対象の特徴的な輪郭データ（ポリゴンデータ）等に基づいてテンプレート画像を生成する。テンプレート画像はサーチ対象となる部品毎に用意されており、部品認識の対象になる部品の種類に応じて適切なテンプレート画像が使用される。また、カメラで部品を撮像し、得られた画像データをテンプレート画像として使用しても構わない。
【００３７】
図４及び図５に示すように、テンプレートデータ生成部５２は、テンプレート画像６０に基づいてテンプレートデータを生成する。テンプレートデータには、テンプレート属性として、テンプレートＩＤ、画像データ、基準点、エッジエンベロプ、エッジ点数、エッジ点リストが設定されている。なお、テンプレートデータには、テンプレート画像６０の重心点が基準点Ｏとして設定されるが、任意の位置が基準点Ｏとして設定されてもよい。エッジ点数は、適宜変更されてもよく、粗検出でエッジ点数を減らして検出処理を高速化し、精密検出でエッジ点数を増やして検出精度を向上させてもよい。
【００３８】
また、エッジ点リストには、エッジ点Ｐ毎に基準点ＯへのベクトルＶＰ−Ｏ、エッジ勾配ベクトルＶＧ、エッジ高さ、極大点フラグの４つのパラメータが設定されている。基準点ＯへのベクトルＶＰ−Ｏは各エッジ点Ｐから基準点Ｏまでのベクトルを示し、エッジ勾配ベクトルＶＧはエッジ点Ｐでの法線ベクトルを示している。エッジ高さはエッジ勾配方向でのコントラストの大きさを示し、極大点フラグはエッジ点Ｐが極大か否かを示している。なお、エッジ点リストには、エッジ勾配ベクトルの代わりにエッジ点Ｐでの接線ベクトルを示すエッジ接線ベクトルＶＴが設定されていてもよい。
【００３９】
図４に示すように、ピラミッド画像生成部５３は、サーチ画像の圧縮率を可変して、ピラミッド画像として解像度の異なる複数のサーチ画像を生成する。低解像度のサーチ画像は粗検出に使用され、高解像度のサーチ画像は精密検出に使用される。エッジ検出部５４は、Ｓｏｂｅｌフィルタ、ガウシアンフィルタ等を組み合わせて、サーチ画像から対象画像の複数のエッジ点（エッジ点列情報）を検出する。エッジ検出部５４は、粗検出用のサーチ画像に対してはエッジ点の検出数を抑え、精密検出用のサーチ画像に対してはエッジ点の検出数を増やしている。
【００４０】
図４に示すように、粗検出では、一般化ハフ変換を用いて低解像度のサーチ画像から対象画像が検出される。上記したように、対象画像の位置、回転角度、スケールを同時に検出すると投票回数が膨大になるため（図３参照）、回転角度とスケールとを分けて一般化ハフ変換するようにしている。これにより、図６に示すように、位置ｘ、ｙの変動範囲をカバーする投票空間を、回転角度θ又はスケールｓのいずれかの変動範囲分だけ用意すればよく、投票回数を減らして一般化ハフ変化の処理速度を高速化することが可能になっている。
【００４１】
しかしながら、対象画像は、位置ｘ、ｙ、回転角度θ、スケールｓのパラメータで示されるため、いずれか一つのパラメータを完全に無視して投票することはできない。すなわち、サーチ画像から対象画像の位置ｘ、ｙ、回転角度θだけを検出しようとしても、対象画像のスケールが変動することによって、対象画像の位置ｘ、ｙ、回転角度θの検出結果に大きな誤差が生じてしまう。そこで、本実施の形態では、対象画像の位置ｘ、ｙ及び回転角度θの検出時に、対象画像のスケール変動を考慮した投票が実施される。
【００４２】
図７Ａに示すように、対象画像のスケール変動を考慮した投票には、投票空間の複数のマスに対して複数の基準点候補を同時に投票するマトリックスデータ（投票マスク）が使用される。マトリックスデータは、１つの基準点候補だけではなく、その周辺の基準点候補にも投票するように構成されている。この結果、投票空間の１つのマスに投票数が集中することがなく、一定領域の複数のマスに投票数が分散される。このように、対象画像のスケール変動によって基準点候補にズレが生じることを考慮して、一定領域の複数の基準点候補に投票している。
【００４３】
また、マトリックスデータは、投票空間においてｘ、ｙ方向に最大で５×５マスに対して投票可能であり、中心の基準点候補よりも周辺の基準点候補の投票数を少なくしている。マトリックスデータの投票数に重み付けすることで、対象画像の位置ｘ、ｙ（回転中心）及び回転角度θを示す複数の基準点候補をより精度よく絞り込むことができる。なお、マトリックスデータの重み付けは、対象画像のスケール変動に応じて決定される。投票数の重み付けは、標準偏差をσとした以下式（１）の重み関数にて決定されてもよい。また、マトリックスデータのサイズは、５×５マスに限らず、対象画像のスケール変動に応じて適宜変更することが可能である。
【数１】
0006655422.tif 000002
【００４４】
図７Ｂに示すように、マトリックスデータでカバーしきれないスケール変動の場合には、スケールの変動方向にマトリックスデータを前後させて複数回に亘って投票される。この場合、スケール変動によって基準点候補がエッジ点からベクトル方向に変動するため、マトリックスデータがベクトル方向で前後に動かされる。例えば、マトリックスデータでカバー可能なスケール変動量が１０％、実際の対象画像のスケール変動量が３０％の場合には、ベクトルの先端に示される位置で投票され、さらにマトリックスデータのサイズ分だけベクトル方向で前後に動かした位置で投票される。
【００４５】
図４及び図８に示すように、第１の検出部５５は、上記のスケール変動を考慮したマトリックスデータを用いて、テンプレート画像のエッジ点が対象画像のエッジ点になる複数の基準点候補を、位置ｘ、ｙ及び回転角度θの変動範囲をカバーする投票空間上に投票する。これにより、対象画像にスケール変動が生じる範囲内で、対象画像の位置ｘ、ｙ（回転中心）及び回転角度θを示す基準点候補が絞られる。そして、第１の検出部５５は、投票空間に投票された一定領域の複数の基準点候補から対象画像の位置及び回転角度θを検出する。
【００４６】
例えば、位置ｘ、ｙの変動範囲をカバーする複数の投票空間が、回転角度θの変動方向で所定角度置きに用意されており、各投票空間でマトリックスデータを用いて複数の基準点候補が投票される。各投票空間で一定数以上（例えば、３票以上）の投票数を獲得した複数の基準点候補が票数に応じてラベリングされる。これら複数の基準点候補の投票数の加重平均が最も高くなる対象画像の回転角度θ（図８ではθ１）が検出され、このときの複数の基準点候補を示す対象画像の位置ｘ、ｙが検出される。なお、対象画像の位置ｘ、ｙは、破線で囲んだ複数の基準点候補のバラツキに応じた変動量をもっている。
【００４７】
なお、対象画像のスケール変動がマトリックスデータでカバーできない場合には、スケールの変動方向にマトリックスデータを前後させて複数回に亘って投票することも可能である（図７Ｂ参照）。また、第１の検出部５５による対象画像の回転角度θの検出方法は、複数の基準点候補から最も適切な回転角度θを検出可能であればよく、加重平均が高くなる回転角度θに限定されない。また、位置ｘ、ｙ及び回転角度θの変動範囲をカバーする投票空間を用意すればよいので、メモリ領域が膨大になることもない。このようにして、テンプレート画像に対応する対象画像の位置ｘ、ｙ及び回転角度θが検出される。
【００４８】
図４及び図９に示すように、第２の検出部５６は、第１の検出部５５で検出された回転角度θのテンプレート画像のエッジ点が対象画像のエッジ点になる基準点候補を、位置ｘ、ｙ及びスケールｓの変動範囲をカバーする投票空間上に投票する。そして、第２の検出部５６は、投票空間で投票数が最大になる基準点候補から対象画像の位置ｘ、ｙ及びスケールｓを検出する。これにより、投票空間内の複数の基準点候補から、対象画像の位置ｘ、ｙ、回転角度θ、スケールｓを示す基準点候補が絞られる。
【００４９】
例えば、位置ｘ、ｙの変動範囲をカバーする複数の投票空間が、スケールｓの変動方向で所定スケール置きに用意されており、各投票空間で基準点候補が投票される。各投票空間のうち投票数が最大になる基準点候補のスケールｓ（図９ではｓ１）が検出され、このときの基準点候補を示す位置ｘ１、ｙ１が検出される。この場合、第１の検出部５５によって絞り込まれた破線に示す一定領域内で１つの基準点候補に絞り込まれる。したがって、破線に示す一定領域以外の投票を無視すると共に、一定領域内から投票数が最大の基準点候補を探せばよいため、第２の検出部５６の処理量を減らして処理速度を速めることができる。
【００５０】
また、位置ｘ、ｙ及び回転角度ｓの変動範囲をカバーする投票空間を用意すればよいので、メモリ領域が膨大になることもない。また、位置ｘ、ｙ及び回転角度θの変動範囲をカバーする投票空間に使用したメモリ領域を、位置ｘ、ｙ及びスケールｓの変動範囲をカバーする投票空間に使用している。これにより、回転角度θを検出時とスケールｓの検出時とでメモリ領域を切り替えて使用することで、メモリ容量を低減することができる。このようにして、テンプレート画像に対応する対象画像の位置ｘ、ｙ、回転角度θ、スケールｓが検出される。
【００５１】
なお、粗検出においては、第１の検出部５５による回転角度θの検出処理が繰り返されてもよい。例えば、第１の検出部５５が、回転角度θの変動方向で１０度置きに投票空間を設定して対象画像の回転角度θを検出した後に、今度は回転角度θの変動方向で１度置きに投票空間を設定して対象画像の回転角度θを再検出してもよい。これにより、第１の検出部５５による検出精度を高めると共に投票回数を減らして投票時間を短くすることができる。同様に、粗検出においては、第２の検出部５６によるスケールｓの検出処理が繰り返されてもよい。
【００５２】
また、投票空間の複数のマスの大きさは、第１、第２の検出部５５、５６による検出処理毎に可変されてもよい。例えば、第１の検出部５５が１０度置きに投票空間を設定して回転角度θを検出する場合には、投票空間の１マスが４ピクセル（２×２ピクセル）に設定されることが好ましい。また、第１の検出部５５が１度置きに投票空間を設定して回転角度θを検出する場合には、投票空間の１マスが１ピクセルに設定されることが好ましい。さらに、第２の検出部がスケールｓを検出する場合には、投票空間の１マスが１ピクセルに設定されることが好ましい。
【００５３】
ところで、一般化ハフ変換では、対象画像の位置ｘ、ｙ、回転角度θ、スケールｓに僅かな誤差が生じる可能性がある。このため、図４及び図１０に示すように、第３の検出部５７は、一般化ハフ変換で生じた誤差を補正するように、高解像度のサーチ画像から対象画像７０の位置ｘ、ｙ、回転角度θ、スケールｓを精密検出している。このとき、第１、第２の検出部５５、５６で粗検出された位置ｘ、ｙ、回転角度θ、スケールｓのテンプレート画像６０と対象画像７０とをアフィン変換によって照合させている。
【００５４】
例えば、アフィン変換後のテンプレート画像６０の各エッジ点Ｐ１−Ｐｉと対象画像７０の各エッジ点Ｐ１’−Ｐｉ’との対応リストが生成され、対応する各エッジ点Ｐ１−Ｐｉ、Ｐ１’−Ｐｉ’同士が比較される。このとき、ＩＣＰ（Iterative  Closest  Point）法によってアフィン変換が繰り返されて、エッジ点Ｐ１−Ｐｉ、Ｐ１’−Ｐｉ’同士の距離が最小になるようなパラメータが算出される。このようにして、テンプレート画像６０とサーチ画像内の対象画像７０とが照合される。このときの、対象画像７０の位置ｘ、ｙ、回転角度θ、スケールｓは実装装置１（図１参照）の制御部（不図示）に位置決め情報として出力される。
【００５５】
本実施の形態では、第１、第２の検出部５５、５６による粗検出に低解像度のサーチ画像を用い、第３の検出部５７による精密検出に高解像度のサーチ画像を用いている。また、第１、第２の検出部５５、５６による粗検出のエッジ点数を少なくし、第３の検出部５７による精密検出のエッジ点数を多くしている。これにより、対象画像７０の位置ｘ、ｙ、回転角度θ、スケールｓの検出の投票処理に要する時間を短くすると共に、テンプレート画像６０と対象画像７０をアフィン変換によって精度よく照合することができる。なお、サーチ画像の解像度、エッジ点数は適宜変更することが可能である。
【００５６】
また、画像処理装置５０の各部は、各種処理を実行するプロセッサやメモリ等により構成されている。メモリは、用途に応じてＲＯＭ(Read  Only  Memory)、ＲＡＭ（Random  Access  Memory）等の一つ又は複数の記憶媒体で構成されている。なお、本実施の形態では、画像処理装置５０が実装装置１（図１参照）の内部に組み込まれているが、画像処理装置５０が実装装置１とは別体に設置されていてもよい。また、画像処理装置５０によって実行される画像処理方法のプログラムは、実装装置１のメモリに記憶されてもよいし、画像処理装置５０のメモリに記憶されてもよい。
【００５７】
以下、図１１及び図１２を参照して、画像処理装置による画像処理方法について説明する。図１１は、第１の実施の形態のテンプレート画像の一例を示す図である。図１２は、第１の実施の形態の画像処理方法のフローチャートの一例を示す図である。なお、以下の説明では、サーチ画像から対象画像として部品を検出する場合を例示して説明するが、この構成に限定されるものではなく、例えば、サーチ画像から部品以外を検出することも可能である。また、ここでは説明の便宜上、図４の符号を使用しながら説明する。
【００５８】
図１１に示すように、テンプレート画像生成部５１によってサーチ対象になる部品の種類に応じて、適切なテンプレート画像６０が生成されている。テンプレート画像６０は、例えば、部品本体部やリード部の輪郭データであり、縦横寸法、端子幅、リード数等の部品データや、オペレータの入力によって生成される。もしくは、カメラにて正姿勢の部品を撮像し、その画像データをテンプレート画像６０として用意することができる。テンプレート画像６０の種類としては、例えば、チップ部品、リード部品、異形部品のテンプレート画像６０が用意される。これら複数種類のテンプレート画像６０から対象となるテンプレート画像６０が適時選択される。
【００５９】
図１２に示すように、画像処理装置５０にサーチ画像が入力されると、ピラミッド画像生成部５３によって解像度の異なる複数のサーチ画像が生成される（ステップＳ０１）。次に、エッジ検出部５４によって低解像度のサーチ画像から複数のエッジ点（エッジ点列情報）が検出される（ステップＳ０２）。次に、第１の検出部５５によって低解像度のサーチ画像からテンプレート画像に対応する対象画像の位置ｘ、ｙ、回転角度θが粗検出される（ステップＳ０３）。このとき、部品の種類に応じたテンプレートデータが読み込まれる。
【００６０】
位置ｘ、ｙ及び回転角度θの粗検出では、一般化ハフ変換によって回転角度θの変動方向で所定角度置きに用意された投票空間に、スケール変動を考慮したマトリックスデータを用いて複数の基準点候補が同時に投票される。そして、一定数以上の投票数を獲得した複数の基準点候補の加重平均が最も高くなる回転角度θと、この複数の基準点候補を示す位置ｘ、ｙとが検出される（図８参照）。この場合、検出された回転角度θの変動範囲（例えば、±５度）に、さらに細かい角度単位（例えば、１度単位）の投票空間を設定して、回転角度θを再検出して検出精度を高めてもよい。
【００６１】
次に、第２の検出部５６によってサーチ画像からテンプレート画像に対応する対象画像の位置ｘ、ｙ、スケールｓが粗検出される（ステップＳ０４）。位置ｘ、ｙ及びスケールｓの粗検出では、第１の検出部５５に検出された回転角度θに固定した状態で、一般化ハフ変換によってスケールｓの変動方向で所定スケール置きに用意された投票空間に基準点候補が投票される。そして、投票数が最大になる基準点候補のスケールｓと、このときの基準点候補を示す位置ｘ、ｙとが検出される（図９参照）。
【００６２】
次に、エッジ検出部５４によって高解像度のサーチ画像から複数のエッジ点（エッジ点列情報）が検出される（ステップＳ０５）。次に、第３の検出部５７によって高解像度のサーチ画像からテンプレート画像に対応する対象画像の位置ｘ、ｙ、回転角度θ、スケールｓが精密検出される（ステップＳ０６）。位置ｘ、ｙ、回転角度θ、スケールｓの精密検出では、テンプレート画像がアフィン変換されて、テンプレート画像と対象画像とが照合される（図１０参照）。このようにして、サーチ画像内の対象画像（部品）の位置ｘ、ｙ、回転角度θ、スケールｓが位置決め情報として検出される。
【００６３】
以下、図１３を参照して、実装装置による部品の実装動作について説明する。図１３は、第１の実施の形態の部品の実装動作のフローチャートの一例を示す図である。なお、ここでは説明の便宜上、図１の符号を使用しながら説明する。
【００６４】
図１３に示すように、実装ヘッド４０によって部品供給装置１０から部品がピックアップされると（ステップＳ１１）、実装ヘッド４０のノズル４１の先端に吸着された部品が部品撮像部２５によって撮像される（ステップＳ１２）。次に、部品撮像部２５から画像処理装置５０に部品を含むサーチ画像が入力されて、画像処理装置５０において部品認識が実施される（ステップＳ１３）。画像処理装置５０の部品認識では、上記したステップＳ０１からステップＳ０６の処理によってサーチ画像内の対象画像が検出されて、部品の位置決め情報が生成される。
【００６５】
次に、対象画像の位置決め情報に基づいて実装ヘッド４０によって部品の姿勢が補正され（ステップＳ１４）、実装ヘッド４０によって基板Ｗの所望の位置に部品が適切な姿勢で実装される（ステップＳ１５）。このように、部品のサイズ変動、位置ズレ、ノイズ成分等に強く、ロバスト性の高い一般化ハフ変換を部品認識に採用することで、部品のサイズ変動や所定角度以上の角度ズレ等が起きた想定外の部品であっても、基板Ｗに対して適切に実装することができる。また、部品のサイズ変動が生じていても部品データを作り直す必要もない。さらに、部品認識の処理速度が高速化されるため、実装装置１全体のスループットを向上できる。
【００６６】
以上のように、第１の実施の形態の画像処理装置５０によれば、スケール変動を考慮したマトリックスデータを用いて、対象画像の位置ｘ、ｙ及び回転角度θを示す複数の基準点候補が投票空間に投票される。これにより、スケール変動が生じる範囲内で、対象画像の位置ｘ、ｙ及び回転角度θを示す基準点候補が複数に絞られる。複数の基準点候補から回転角度θと回転中心が検出され、この回転角度θを固定、回転中心によって基準点候補の存在領域を限定した状態で対象画像の位置及びスケールｓを示す基準点候補が投票空間に投票される。これにより、投票空間内の複数の基準点候補から、対象画像の位置ｘ、ｙ、回転角度θ、スケールｓを示す基準点候補が絞られる。このように、回転角度θの検出とスケールｓの検出を個別に実施することで、投票空間をコンパクト化すると共に全体の投票回数を減らすことができ、テンプレート画像に対する対象画像の照合処理を高速化することができる。
【００６７】
ところで、テンプレートマッチングでは、サーチ対象の部品の表面の凹凸や模様等のように、テンプレート画像には存在しない箇所も対象画像のエッジ点として検出される場合がある。テンプレート画像に存在しないエッジ点についても、同様な投票処理を実施すると、処理速度が遅くなると共に不要なエッジ点にメモリ領域を確保しなければならない。そこで、第２の実施の形態の画像処理装置では、回転角度の検出時に所定の投票領域（複数の基準点候補）に投票したエッジ点を抽出して、後段のスケールの検出時の対象画像のエッジ点を絞り込むようにしている。
【００６８】
以下、第２の実施の形態の画像処理装置について説明する。なお、第２の実施の形態の画像処理装置は、回転角度の検出後に対象画像の複数のエッジ点を絞り込む点でのみ第１の実施の形態と相違する。したがって、第１の実施の形態と同様な構成については説明を省略する。図１４は、第２の実施の形態の画像処理装置の機能ブロック図である。図１５は、第２の実施の形態の抽出処理の一例を示す図である。図１６は、第２の実施の形態の抽出前後のエッジ点の一例を示す図である。なお、以下では、説明の便宜上、第１の実施の形態と同一の名称には同一の符号を付して説明する。
【００６９】
図１４に示すように、画像処理装置５０の機能ブロックには、上記したテンプレート画像生成部５１、テンプレートデータ生成部５２、ピラミッド画像生成部５３、エッジ検出部５４、第１、第２、第３の検出部５５、５６、５７に加えて、抽出部５９が設けられている。抽出部５９は、エッジ検出部５４で検出された対象画像の複数のエッジ点のうち、第１の検出部５５が回転角度を検出した複数の基準点候補に投票したエッジ点を抽出する。これにより、対象画像の複数のエッジ点のうち、回転中心付近に投票したエッジ点に絞って、後段の第２の検出部５６で第２の検出処理が実施される。
【００７０】
具体的には、図１５に示すように、回転角度の検出処理ではエッジ検出部５４で検出された対象画像の各エッジ点で投票空間に対して投票される。図示左側に示すように対象画像の全てのエッジ点で投票処理が実施されており、この段階では破線で囲んだ複数の基準点候補に投票したエッジ点が不明である。このため、図示右側に示すように抽出部５９は、エッジ検出部５４で検出されたエッジ点で再度投票して、投票先が破線で囲んだ複数の基準点候補になるエッジ点だけを抽出している。抽出部５９による投票処理では、第１の検出部５５で検出された回転角度θ１のテンプレート画像が使用される。
【００７１】
この場合、抽出部５９は、第１の検出部５５で検出された回転角度θ１のテンプレート画像のエッジ点が対象画像のエッジ点になる基準点候補を、当該回転角度θ１の投票空間上で再度投票する。そして、抽出部５９は、基準点候補に投票したエッジ点についてはフラグを立てて、フラグが立っていないエッジ点を無視し、フラグが立ったエッジ点のみを抽出している。このように、第１の検出部５５で投票された複数の基準点候補から逆引きして、対象画像のエッジ点を絞り込んでいる。なお、抽出部５９は、マトリックスデータを用いずに投票するが、上記したマトリックスデータを用いて投票してもよい。
【００７２】
第２の検出部５６では、エッジ点を絞った状態で第２の検出処理を実施することができるため、投票処理の処理負担を減らして処理速度を速めると共に、エッジ点に使用するメモリ容量を低減することができる。例えば、図１６Ａに示すように、エッジ検出直後の対象画像には、サーチ対象の部品の輪郭だけでなく、輪郭の内側にも多数のエッジ点が存在している。このため、後段の第２の検出部５６で対象画像の全てのエッジ点で投票処理が実施されると、部品の輪郭だけのテンプレート画像と比べてエッジ点が多く、輪郭の内側のエッジ点でも投票処理が発生する分だけ処理負担が大きくなる。
【００７３】
一方で、図１６Ｂに示すように、対象画像の全てのエッジ点に対して上記した抽出処理を実施すると、テンプレート画像に対応した輪郭のエッジ点だけが抽出される。テンプレート画像と明らかに異なる輪郭の内側のエッジ点が大幅に削減されるため、後段の第２の検出部５６での投票処理の処理負担が軽減されている。なお、第１の検出部５５による回転角度の検出処理が繰り返される場合には、抽出部５９による抽出処理の実施タイミングは特に限定されないが、回転角度の検出精度が高い最後の検出処理後にエッジ点の抽出処理を実施することが好ましい。
【００７４】
例えば、第１の検出部５５において１回目に±５度の誤差で回転角度が検出され、２回目に±０．５度の誤差で回転角度が検出される場合には、２回目の回転角度の検出後に抽出部５９によるエッジ点の抽出処理が実施される。より正確な回転角度で抽出処理が実施されるため、エッジ点の抽出精度を高めることができる。また、回転角度の検出後においてもスケール変動は存在するため、投票空間の１マスが細かいとエッジ点の抽出数が少なくなり過ぎる。このため、エッジ点の抽出時の投票空間は１マスが複数のピクセル（例えば９ピクセル（３×３ピクセル））に設定されることが好ましい。
【００７５】
続いて、図１７を参照して抽出部によるエッジ点の抽出処理について説明する。図１７は、第２の実施の形態の抽出処理の一例を示すフローチャートである。なお、エッジ検出部によってサーチ画像から対象画像のエッジ点が検出されているものとする。また、ここでは説明の便宜上、図１４の符号を使用しながら説明する。
【００７６】
第１の検出部５５によって対象画像の回転角度が検出されると、抽出部５９によって複数のエッジ点のうち１つ目のエッジ点から投票処理が開始される（ステップＳ２１）。この場合、第１の検出部５５で検出された回転角度のテンプレート画像を用いて投票空間に投票処理が実施される。次に、エッジ点からの投票先の座標が算出され（ステップＳ２２）、投票先の座標が回転角度検出時の複数の基準点候補のいずれかに該当するか否かが判定される（ステップＳ２３）。この場合、投票空間のマス（例えば、３×３ピクセル）が大きめに設定されているため、複数の基準点候補の投票領域にマージン（許容領域）が加えられている。
【００７７】
投票先の座標が複数の基準点候補に該当する場合（ステップＳ２３でＹｅｓ）には、エッジ点にフラグが設定される（ステップＳ２４）。エッジ点にフラグが設定された場合、又は投票先の座標が複数の基準点候補に該当しない場合（ステップＳ２３でＮｏ）には、全てのエッジ点で投票処理が完了したか否かが判定される（ステップＳ２５）。全てのエッジ点で投票処理が完了している場合（ステップＳ２５Ｙｅｓ）には抽出処理が終了し、全てのエッジ点で投票処理が完了していない場合（ステップＳ２５Ｎｏ）にはステップＳ２１からステップＳ２５の処理が繰り返される。
【００７８】
以上のように、第２の実施の形態の画像処理装置５０によれば、第１の実施の形態と同様に、投票空間をコンパクト化すると共に全体の投票回数を減らすことができ、テンプレート画像に対する対象画像の照合処理を高速化することができる。さらに、第２の検出部５６による投票処理前に対象画像のエッジ点を絞ることができるため、投票処理の処理負担を減らして処理速度を速めると共に、エッジ点に使用するメモリ容量を低減することができる。
【００７９】
なお、本発明は上記各実施の形態に限定されず、種々変更して実施することが可能である。上記実施の形態において、添付図面に図示されている大きさや形状などについては、これに限定されず、本発明の効果を発揮する範囲内で適宜変更することが可能である。その他、本発明の目的の範囲を逸脱しない限りにおいて適宜変更して実施することが可能である。
【００８０】
例えば、各実施の形態において、マトリックスデータの投票数が重み付けされる構成について説明したが、マトリックスデータの投票数が重み付けされていなくてもよい。すなわち、マトリックスデータによって各基準点候補に対して１票ずつ投票してもよい。
【００８１】
また、各実施の形態において、位置ｘ、ｙ及び回転角度θの変動範囲をカバーする投票空間に使用したメモリ領域を、位置ｘ、ｙ及びスケールｓの変動範囲をカバーする投票空間に使用する構成にしたが、この構成に限定されない。位置ｘ、ｙ及び回転角度θの変動範囲をカバーする投票空間に使用するメモリ領域と、位置ｘ、ｙ及びスケールｓの変動範囲をカバーする投票空間に使用するメモリ領域とを個別に用意してもよい。
【００８２】
また、各実施の形態において、第１、第２の検出部５５、５６によって対象画像７０の位置ｘ、ｙ、回転角度θ、スケールｓが粗検出された後に、第３の検出部５７によって対象画像７０の位置ｘ、ｙ、回転角度θ、スケールｓが精密検出される構成にしたが、この構成に限定されない。少なくとも、第１、第２の検出部５５、５６によって対象画像７０の位置ｘ、ｙ、回転角度θ、スケールｓが検出可能であればよい。
【００８３】
また、各実施の形態において、第１、第２の検出部５５、５６によって低解像度のサーチ画像が使用され、第３の検出部５７によって高解像度のサーチ画像が使用される構成にしたが、この構成に限定されない。例えば、第１、第２の検出部５５、５６によって高解像度のサーチ画像が使用されてもよい。
【００８４】
また、各実施の形態において、画像処理装置５０が、部品撮像部２５から出力されたサーチ画像を画像処理する構成にしたが、この構成に限定されない。画像処理装置５０は、ノズル撮像部４９及び基板撮像部４８から出力されたサーチ画像を画像処理してもよい。また、画像処理装置５０は、実装装置１以外の他の装置に搭載されてもよい。
【００８５】
また、第２の実施の形態において、抽出部５９は回転角度の検出処理で複数の基準点候補に投票したエッジ点を抽出する構成にしたが、この構成に限定されない。抽出部５９は、所定の投票領域に投票したエッジ点を抽出する構成であればよい。例えば、所定の投票領域は、第１の検出部５５によって投票された複数の基準点候補の荷重平均を中心とした所定範囲に設定されてもよい。
【００８６】
また、第２の実施の形態において、第１の検出部５５による回転処理後に１回だけ抽出部５９による抽出処理を実施する構成にしたが、この構成に限定されない。第１の検出部５５による回転角度の検出処理が繰り返される場合には、回転角度の検出処理が実施される毎にエッジ点の抽出処理が繰返し実施されてもよい。
【００８７】
また、第２の実施の形態において、抽出部５９の再投票によってエッジ点を抽出する構成について説明したが、この構成に限定されない。例えば、投票先をエッジ点にリンクさせてエッジ点を抽出することも可能である。
【産業上の利用可能性】
【００８８】
以上説明したように、本発明は、回路構成を複雑化することなく、テンプレート画像に対する対象画像の照合処理を高速化することができるという効果を有し、特に、実装装置の部品認識に使用される画像処理装置、実装装置、画像処理方法及びプログラムに有用である。
【符号の説明】
【００８９】
１  実装装置
２５  部品撮像部（撮像装置）
４０  実装ヘッド
５０  画像処理装置
５５  第１の検出部
５６  第２の検出部
５７  第３の検出部
５９  抽出部
６０  テンプレート画像
７０  対象画像
【図１】
0006655422.tif 000003
【図２】
0006655422.tif 000004
【図３】
0006655422.tif 000005
【図４】
0006655422.tif 000006
【図５】
0006655422.tif 000007
【図６】
0006655422.tif 000008
【図７】
0006655422.tif 000009
【図８】
0006655422.tif 000010
【図９】
0006655422.tif 000011
【図１０】
0006655422.tif 000012
【図１１】
0006655422.tif 000013
【図１２】
0006655422.tif 000014
【図１３】
0006655422.tif 000015
【図１４】
0006655422.tif 000016
【図１５】
0006655422.tif 000017
【図１６】
0006655422.tif 000018
【図１７】
0006655422.tif 000019