(57)【特許請求の範囲】
【請求項１】
テンプレートマッチングにより物体の認識を行う物体認識装置で用いられるテンプレートのセットを作成するテンプレート作成装置であって、
一つの物体の異なる姿勢に対する複数の画像、又は、複数の物体に対する複数の画像のそれぞれから、複数のテンプレートを取得する取得部と、
前記複数のテンプレートから選ばれる２つのテンプレートの組み合わせについて画像特徴の類似度を計算し、前記類似度に基づき前記複数のテンプレートを複数のグループに分ける、クラスタリング処理を行うクラスタリング部と、
前記複数のグループのそれぞれについてグループ内の全てのテンプレートを１つのまたはグループ内のテンプレートの数より少ない数の統合テンプレートへ統合する統合処理を行い、前記複数のグループにそれぞれ対応する複数の統合テンプレートからなる新たなテンプレートセットを生成する統合部と、
前記統合処理により得られた複数の統合テンプレートのそれぞれに対し低解像度化処理を施すことによって、複数の低解像度テンプレートを生成する解像度変換部と、を有し、
前記低解像度化処理により得られた前記複数の低解像度テンプレートに対し、前記クラスタリング部による前記クラスタリング処理、及び、前記統合部による前記統合処理を行うことによって、低解像度の新たなテンプレートセットを生成する
ことを特徴とするテンプレート作成装置。
【請求項２】
前記低解像度の新たなテンプレートセットに対し、前記解像度変換部による前記低解像度化処理、前記クラスタリング部による前記クラスタリング処理、及び、前記統合部による前記統合処理を行うことによって、さらに低解像度の新たなテンプレートセットを生成する、という繰り返し処理を行うことによって、階層的に解像度が低くなる複数のテンプレートセットを生成する
ことを特徴とする請求項１に記載のテンプレート作成装置。
【請求項３】
前記テンプレートは、物体の画像における複数の特徴点の特徴量を含むデータであり、
前記低解像度化処理によって低解像度テンプレートに含まれる特徴点の数が所定値よりも減った場合に、前記繰り返し処理を止める
ことを特徴とする請求項２に記載のテンプレート作成装置。
【請求項４】
前記テンプレートは、物体の画像における複数の特徴点の特徴量を含むデータであり、
２つのテンプレートのあいだの類似度は、当該２つのテンプレートのあいだで特徴点の座標及び特徴量の値がともに一致する特徴点の数から計算される
ことを特徴とする請求項１〜３のうちいずれか１項に記載のテンプレート作成装置。
【請求項５】
テンプレートマッチングにより物体の認識を行う物体認識装置で用いられるテンプレートのセットを作成するテンプレート作成装置であって、
一つの物体の異なる姿勢に対する複数の画像、又は、複数の物体に対する複数の画像のそれぞれから、複数のテンプレートを取得する取得部と、
前記複数のテンプレートから選ばれる２つのテンプレートの組み合わせについて画像特徴の類似度を計算し、前記類似度に基づき前記複数のテンプレートを複数のグループに分ける、クラスタリング処理を行うクラスタリング部と、
前記複数のグループのそれぞれについてグループ内の全てのテンプレートを１つのまたはグループ内のテンプレートの数より少ない数の統合テンプレートへ統合する統合処理を行い、前記複数のグループにそれぞれ対応する複数の統合テンプレートからなる新たなテンプレートセットを生成する統合部と、を有し、
前記テンプレートは、物体の画像における複数の特徴点の特徴量を含むデータであり、
２つのテンプレートのあいだの類似度は、当該２つのテンプレートのあいだで特徴点の座標及び特徴量の値がともに一致する特徴点の数から計算される
ことを特徴とするテンプレート作成装置。
【請求項６】
前記テンプレートは、物体の画像における複数の特徴点の特徴量を含むデータであり、
前記統合部は、グループ内の各テンプレートにおける同じ座標の特徴点の特徴量を統合することによって、前記統合テンプレートを生成する
ことを特徴とする請求項１〜５のうちいずれか１項に記載のテンプレート作成装置。
【請求項７】
テンプレートマッチングにより物体の認識を行う物体認識装置で用いられるテンプレートのセットを作成するテンプレート作成方法であって、
コンピュータが、一つの物体の異なる姿勢に対する複数の画像、又は、複数の物体に対する複数の画像のそれぞれから、複数のテンプレートを取得するステップと、
コンピュータが、前記複数のテンプレートから選ばれる２つのテンプレートの組み合わせについて画像特徴の類似度を計算し、前記類似度に基づき前記複数のテンプレートを複数のグループに分ける、クラスタリング処理を行うステップと、
コンピュータが、前記複数のグループのそれぞれについてグループ内の全てのテンプレートを１つのまたはグループ内のテンプレートの数より少ない数の統合テンプレートへ統合する統合処理を行い、前記複数のグループにそれぞれ対応する複数の統合テンプレートを生成するステップと、
コンピュータが、前記統合処理により得られた前記複数の統合テンプレートを、物体が前記複数のグループのいずれに属するかの判定に用いるテンプレートセットとして記憶するステップと、
コンピュータが、前記統合処理により得られた複数の統合テンプレートのそれぞれに対し低解像度化処理を施すことによって、複数の低解像度テンプレートを生成するステップと、
コンピュータが、前記低解像度化処理により得られた前記複数の低解像度テンプレートに対し、前記クラスタリング処理、及び、前記統合処理を行うことによって、低解像度の新たなテンプレートセットを生成するステップと、
を有することを特徴とするテンプレート作成方法。
【請求項８】
テンプレートマッチングにより物体の認識を行う物体認識装置で用いられるテンプレートのセットを作成するテンプレート作成方法であって、
コンピュータが、一つの物体の異なる姿勢に対する複数の画像、又は、複数の物体に対する複数の画像のそれぞれから、複数のテンプレートを取得するステップと、
コンピュータが、前記複数のテンプレートから選ばれる２つのテンプレートの組み合わせについて画像特徴の類似度を計算し、前記類似度に基づき前記複数のテンプレートを複数のグループに分ける、クラスタリング処理を行うステップと、
コンピュータが、前記複数のグループのそれぞれについてグループ内の全てのテンプレートを１つのまたはグループ内のテンプレートの数より少ない数の統合テンプレートへ統合する統合処理を行い、前記複数のグループにそれぞれ対応する複数の統合テンプレートを生成するステップと、
コンピュータが、前記統合処理により得られた前記複数の統合テンプレートを、物体が前記複数のグループのいずれに属するかの判定に用いるテンプレートセットとして記憶するステップと、を有し、
前記テンプレートは、物体の画像における複数の特徴点の特徴量を含むデータであり、
２つのテンプレートのあいだの類似度は、当該２つのテンプレートのあいだで特徴点の座標及び特徴量の値がともに一致する特徴点の数から計算される
ことを特徴とするテンプレート作成方法。
【請求項９】
請求項７又は８に記載のテンプレート作成方法の各ステップをコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テンプレートマッチングによる物体認識で用いられるテンプレートを作成する技術に関する。
【背景技術】
【０００２】
テンプレートマッチングによる物体認識は、例えば、ＦＡ（Factory Automation）における検査やピッキング、ロボット・ビジョン、監視カメラなど様々な用途に利用されている。テンプレートマッチングの基本処理は、認識対象となる物体のモデル（テンプレート）を予め登録しておき、入力画像とモデルのあいだの画像特徴の一致度を評価することで、入力画像に含まれる物体の２次元位置や姿勢を検出するというものである。
【０００３】
近年、画像のテンプレートマッチングを３次元における物体の位置・姿勢の認識に応用する技術に注目が集まっている。高価な距離センサを用いる必要もなく、また既設の画像撮影用カメラを流用することもできるため、コストメリットが大きいからである。しかしながら、画像のテンプレートマッチングにより任意の姿勢の物体を認識するためには、認識しようとする姿勢ごとに個別のテンプレートを用意し、それらのテンプレートに対して総当たりによるマッチングを行う必要があるため、処理時間の増大が問題となる。
【０００４】
このような問題への対応策として、特許文献１には、２次元投影画像同士の類似度に基づいて、似たような見え方になるビュー（視点）をまとめることでテンプレートを削減すること、さらにこの間引きを２次元投影画像の解像度を下げながら繰り返し行い、階層的なテンプレートを作成することなどが開示されている。しかしながら、特許文献１の方法は、視点を間引くというアプローチのため、認識対象物体の形状によっては、テンプレートの削減が適切に行われない可能性がある。例えば、単純な形状の物体や、対称形状をもつ物体の場合、視点位置が離れていても似たような見え方になる場合がある。しかし、特許文献１の方法では、離れた視点同士をまとめることができないため、テンプレートの削減に限界があり、その結果テンプレートマッチングの回数減少、さらには処理時間の短縮の効果が十分得られない。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】欧州特許第２０４８５９９号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は、上記実情に鑑みてなされたものであり、従来方法に比べて、より高いテンプレート削減効果が得られ、物体の認識に用いるテンプレートの統合を効果的に行うことができる技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために本発明では、テンプレートマッチングにより物体の認識を行う物体認識装置で用いられるテンプレートのセットを作成するテンプレート作成装置であって、一つの物体の異なる姿勢に対する複数の画像、又は、複数の物体に対する複数の画像のそれぞれから、複数のテンプレートを取得する取得部と、前記複数のテンプレートから選ばれる２つのテンプレートの組み合わせの全てについて画像特徴の類似度を計算し、前記類似度に基づき前記複数のテンプレートを複数のグループに分ける、クラスタリング処理を行うクラスタリング部と、前記複数のグループのそれぞれについてグループ内の全
てのテンプレートを１つの統合テンプレートへ統合する統合処理を行い、前記複数のグループにそれぞれ対応する複数の統合テンプレートからなる新たなテンプレートセットを生成する統合部と、を有することを特徴とする。
【０００８】
この構成によれば、画像特徴が類似するテンプレート同士が（視点の近い／遠いにかかわらず）統合されるため、視点を間引くというアプローチの従来方法に比べて、より高いテンプレート削減効果を期待でき、テンプレートの統合を効果的に行うことができる。特に、認識対象物体の形状が単純であったり対称性を有している場合には、その効果が大きい。
【０００９】
前記統合処理により得られた複数の統合テンプレートのそれぞれに対し低解像度化処理を施すことによって、複数の低解像度テンプレートを生成する解像度変換部をさらに有し、前記低解像度化処理により得られた前記複数の低解像度テンプレートに対し、前記クラスタリング部による前記クラスタリング処理、及び、前記統合部による前記統合処理を行うことによって、低解像度の新たなテンプレートセットを生成することが好ましい。低解像度化すると、テンプレートの画像特徴が平滑化されるため、類似するテンプレートの組み合わせが多くなる。したがって、低解像度化した後にテンプレートのクラスタリング及び統合を行うことで、テンプレートの数のさらなる削減が可能となる。
【００１０】
前記低解像度の新たなテンプレートセットに対し、前記解像度変換部による前記低解像度化処理、前記クラスタリング部による前記クラスタリング処理、及び、前記統合部による前記統合処理を行うことによって、さらに低解像度の新たなテンプレートセットを生成する、という繰り返し処理を行うことによって、階層的に解像度が低くなる複数のテンプレートセットを生成することが好ましい。このような複数のテンプレートセットを用意しておけば、解像度の低いテンプレートセットでラフな認識を行い、その結果を用いて解像度の高いテンプレートセットで詳細な認識を行う、といった階層的探索が可能となり、物体認識処理の高精度化及び高速化を図ることができる。
【００１１】
前記テンプレートは、物体の画像における複数の特徴点の特徴量を含むデータであり、前記低解像度化処理によって低解像度テンプレートに含まれる特徴点の数が所定値よりも減った場合に、前記繰り返し処理を止めることが好ましい。テンプレート内の特徴点の数が少なすぎるとテンプレートの識別能力が落ち、物体の認識精度が低下する可能性があるからである。
【００１２】
前記テンプレートは、物体の画像における複数の特徴点の特徴量を含むデータであり、２つのテンプレートのあいだの類似度は、当該２つのテンプレートのあいだで特徴点の座標及び特徴量の値がともに一致する特徴点の数から計算されることが好ましい。このような計算方法によれば、簡単かつ高速に類似度を計算することができるため、テンプレートの作成処理に要する時間を短縮することができる。
【００１３】
前記テンプレートは、物体の画像における複数の特徴点の特徴量を含むデータであり、前記統合部は、グループ内の各テンプレートにおける同じ座標の特徴点の特徴量を統合することによって、前記統合テンプレートを生成することが好ましい。このような統合方法によれば、簡単かつ高速にテンプレートの統合を行うことができるため、テンプレートの作成処理に要する時間を短縮することができる。
【００１４】
なお、本発明は、上記構成の少なくとも一部を有するテンプレート作成装置、又は、そのテンプレート作成装置を有する物体認識装置として捉えることができる。また、本発明は、上記処理の少なくとも一部を含むテンプレート作成方法、または、そのテンプレート作成方法で作成されたテンプレートを利用する物体認識方法、または、かかる方法をコン
ピュータに実行させるためのプログラムやそのプログラムを非一時的に記憶したコンピュータ読取可能な記録媒体として捉えることもできる。上記構成および処理の各々は技術的な矛盾が生じない限り互いに組み合わせて本発明を構成することができる。
【発明の効果】
【００１５】
本発明によれば、従来方法に比べて、よりテンプレート削減が可能であり、高いテンプレートの統合の効果が期待できる。
【図面の簡単な説明】
【００１６】
【図１】物体認識装置の全体構成を示す図。
【図２】物体認識装置のハードウェア構成を示す図。
【図３】物体認識装置の機能構成を示す図。
【図４】任意の姿勢の物体が混在している画像の一例を示す図。
【図５】物体に対し複数の視点を設定する例を模式的に示す図。
【図６】テンプレート作成処理の流れを示すフローチャート。
【図７】テンプレートのデータ構造の一例を示す図。
【図８】テンプレートの統合処理の一例を示す図。
【図９】テンプレートの低解像度化処理の一例を示す図。
【図１０】クラスタリング処理〜統合処理〜低解像度化処理の流れを概念的に示す図。
【図１１】階層的なテンプレートセットの一例を模式的に示す図。
【図１２】物体認識処理の流れを示すフローチャート。
【発明を実施するための形態】
【００１７】
本発明は、画像を用いたテンプレートマッチングにより物体の３次元位置・姿勢の認識を行う技術に関し、より詳しくは、３次元における物体の認識を効率的に行うためのテンプレートを作成する技術に関する。この技術は、ＦＡ用の画像センサ、コンピュータビジョン、マシンビジョンなどにおける物体認識などに応用することができる。以下に述べる実施形態では、本発明の好ましい応用例の一つとして、ベルトコンベヤで搬送される物体の位置及び姿勢を判別するＦＡ用の画像センサに本発明を適用した例を説明する。
【００１８】
（物体認識装置の全体構成）
図１を参照して、本発明の実施形態に係る物体認識装置の全体構成および適用場面について説明する。
【００１９】
物体認識装置１は、生産ラインなどに設置され、カメラ１１から取り込まれた画像を用いてコンベヤ３上の物体２の認識を行うシステムである。コンベヤ３上には複数の物体２が任意の姿勢で流れている。物体認識装置１は、カメラ１１から所定の時間間隔で画像を取り込み、画像処理装置１０によって画像に含まれる各物体２の種類・位置・姿勢を認識する処理を実行し、その結果を出力する。物体認識装置１の出力（認識結果）は、例えば、ピッキング・ロボットの制御、加工装置や印字装置の制御、物体２の検査・計測などに利用される。
【００２０】
（ハードウェア構成）
図２を参照して、物体認識装置１のハードウェア構成を説明する。物体認識装置１は、大まかに分けて、カメラ１１と画像処理装置１０から構成される。
【００２１】
カメラ１１は、物体２のデジタル画像を画像処理装置１０に取り込むための撮像デバイスであり、例えばＣＭＯＳ（Complementary Metal-Oxide-Semiconductor）カメラやＣＣ
Ｄ（Charge-Coupled Device）カメラを好適に用いることができる。入力画像の形式（解
像度、カラー／モノクロ、静止画像／動画、階調、データ形式など）は任意であり、物体２の種類やセンシングの目的に合わせて適宜選択すればよい。可視光像以外の特殊な画像（Ｘ線画像、サーモ画像など）を物体認識や検査に利用する場合には、その画像に合わせたカメラを用いてもよい。
【００２２】
画像処理装置１０は、ＣＰＵ（中央演算処理装置）１１０と、記憶部としてのメインメモリ１１２およびハードディスク１１４と、カメラインターフェイス１１６と、入力インターフェイス１１８と、表示コントローラ１２０と、ＰＬＣインターフェイス１２２と、通信インターフェイス１２４と、データリーダ／ライタ１２６とを含む。これらの各部は、バス１２８を介して、互いにデータ通信可能に接続される。
【００２３】
カメラインターフェイス１１６は、ＣＰＵ１１０とカメラ１１とのあいだのデータ伝送を仲介する部分であり、カメラ１１からの画像データを一時的に蓄積するための画像バッファ１１６ａを有している。入力インターフェイス１１８は、ＣＰＵ１１０と入力部（マウス１３、キーボード、タッチパネル、ジョグコントローラなど）とのあいだのデータ伝送を仲介する。表示コントローラ１２０は、液晶モニタなどのディスプレイ１２に接続され、当該ディスプレイ１２での表示を制御する。ＰＬＣインターフェイス１２２は、ＣＰＵ１１０とＰＬＣ４のあいだのデータ伝送を仲介する。通信インターフェイス１２４は、ＣＰＵ１１０とコンソール（あるいは、パーソナルコンピュータやサーバ装置）などとのあいだのデータ伝送を仲介する。データリーダ／ライタ１２６は、ＣＰＵ１１０と記憶媒体であるメモリカード１４との間のデータ伝送を仲介する。
【００２４】
画像処理装置１０は、汎用的なアーキテクチャを有するコンピュータで構成可能であり、ＣＰＵ１１０が、ハードディスク１１４またはメモリカード１４に格納されたプログラムを読み込み、実行することで、各種機能を提供する。このようなプログラムは、メモリカード１４や光ディスクなどのコンピュータ読取可能な記録媒体に格納された状態で流通するか、インターネットなどを通じて提供（ダウンロード）される。なお、本実施形態に係るプログラムは単体のアプリケーションプログラムとして提供されてもよいし、他のプログラムの一部に組み込まれるモジュールとして提供されてもよい。また、その機能の一部または全部がＡＳＩＣなどの専用回路で代替されてもよい。
【００２５】
（機能構成）
図３に、物体認識装置１の機能構成を示す。図３に示す機能は、画像処理装置１０がプログラムを実行することにより実現されるものである。物体認識装置１は、大まかに分けて、テンプレート作成装置２０としての機能部と物体認識処理装置３０としての機能部とを備える。テンプレート作成装置２０は、物体認識処理で利用するテンプレートを作成する機能部であり、取得部２１、クラスタリング部２２、統合部２３、記憶部２４、解像度変換部２５を有している。テンプレート作成装置２０によって作成されたテンプレートは、物体認識処理装置３０のテンプレートＤＢ（データベース）３１に登録される。物体認識処理装置３０は、カメラ１１から取り込まれた画像に対しテンプレートマッチングを実行することで、画像中の物体を認識する機能部である。物体認識処理装置３０は、テンプレートＤＢ３１、画像取得部３２、テンプレートマッチング部３３、認識結果出力部３４を有している。これらの機能の詳細については後述する。
【００２６】
図４にカメラ１１から取り込まれる画像の一例を示す。図４に示すように、画像の中には、複数の物体２が含まれており、且つ、各物体２の位置（ＸＹＺ座標）及び姿勢（ＸＹＺの３軸周りの角度）は任意である。完全な球体である場合を除き、カメラ１１に対する物体の姿勢（向き）が異なると、画像に写る物体の形態（形状、色など）も異なるものとなる。したがって、２Ｄ画像を用いた一般的なテンプレートマッチングにおいて任意姿勢の３Ｄ物体を認識するためには、物体の姿勢ごとに個別のテンプレートを用意し、それら
のテンプレートの総当たりによるマッチングを行う必要がある。
【００２７】
図５に示すように、物体２を中心とする仮想的な半球面上に複数の視点ＶＰを均等に配置し、各視点ＶＰからの物体の見え（姿勢）に対応するテンプレートを用意すると仮定する。例えば３３７個の視点を設定した場合、１つの物体２を認識するために、３３７個のテンプレートが必要となる。さらに視点ＶＰを固定した状態でのカメラの回転（カメラの光軸周りの物体の回転）も考慮すると、例えば３６０度を８０分割する場合は、３３７×８０＝２６９６０個のテンプレートが必要となる。仮に、１テンプレート当たり３０ミリ秒の処理時間がかかるとすると、１つの３Ｄ物体を認識するのに８秒以上の時間を要することとなり、実用的でない。また、テンプレートの数の増加は、処理時間の増大だけでなく、メモリ容量の増大の問題も招く。例えば、１つのテンプレートのデータサイズを４ＫＢと仮定した場合、２６９６０個のテンプレートを格納するのに約１００ＭＢのメモリが必要となる。メモリ容量の増大は装置のコストアップにつながるため好ましくない。
【００２８】
そこで本実施形態の物体認識装置１では、画像特徴が類似するテンプレート同士を統合することで、テンプレートの数を可及的に削減する工夫を行う。特に、ＦＡ分野で認識対象となる物体（機械部品、工業製品など）は、単純な幾何学図形の組み合わせでデザインされ、形状に対称性がみられることが多い。したがって、まったく異なる視点間でもテンプレートに高い類似性があることが多く、テンプレートの大幅な削減が期待できる。
【００２９】
以下では、テンプレート作成装置２０によるテンプレートの作成処理について説明し、その後、物体認識処理装置３０による物体認識処理の流れについて説明する。
【００３０】
（テンプレートの作成処理）
図６のフローに沿って、テンプレート作成装置２０によって実行されるテンプレート作成処理の流れを説明する。なお、本明細書では、ある物体のある姿勢に対応するテンプレート（つまり、他のテンプレートと統合されていないテンプレート）を「オリジナルのテンプレート」と呼ぶ。また、複数のテンプレートの集合を「テンプレートセット」と呼ぶ。
【００３１】
まず、取得部２１が、認識対象となる物体に関し、オリジナルのテンプレートセットを取得する（ステップＳ６００）。オリジナルのテンプレートセットは、当該物体がとり得る複数の姿勢（あるいは、認識する必要のある複数の姿勢）それぞれに対応するオリジナルのテンプレートから構成される。前述の例のように、３３７個の視点と８０分割のカメラの回転を認識する場合であれば、一つの視点に対して一つのテンプレートを作成するとオリジナルのテンプレートとして２６９６０個のテンプレートが取得される。
【００３２】
テンプレートは、物体の画像において当該物体の特徴を表すデータである。テンプレートの形式はどのようなものでもよいが、本実施形態では、図７に示すように、画像中の複数の特徴点の特徴量を記述した形式のデータを用いる。図７右側のテンプレートの各行が１つの特徴点の情報を表しており、特徴点の情報は、特徴点の座標ｘ，ｙ（物体の中心を原点とする）と特徴量の値ｖａｌを含んでいる。
【００３３】
特徴量としては、例えば、画素値（輝度）、輝度勾配方向、量子化勾配方向、ＨｏＧ（Histogram of Oriented Gradients）、ＨＡＡＲ−ｌｉｋｅ、ＳＩＦＴ（Scale-Invariant
Feature Transform）などを用いることができる。輝度勾配方向とは、特徴点を中心とする局所領域での輝度の勾配の方向（角度）を連続値で表すものであり、量子化勾配方向とは、特徴点を中心とする局所領域での輝度の勾配の方向を離散値で表す（例えば、８方向を０〜７の１バイトの情報で保持する）ものである。図７の特徴量ｖａｌは、量子化勾配方向を２進数で表記した例を示している。各ビットが０度、４５度、９０度、１３５度、
１８０度、２２５度、２７０度、３１５度の方向を表している。
【００３４】
オリジナルのテンプレートは、各姿勢に対する画像を用いて特徴点検出及び特徴量抽出の処理を行うことにより作成することができる。特徴点検出及び特徴量抽出については公知の手法を利用できるため、ここでは詳しい説明を割愛する。各姿勢に対する画像は、実際の物体を撮影することにより得ることができる。あるいは、物体の３次元ＣＡＤデータを入手可能な場合には、３次元コンピュータグラフィックスを用いてレンダリング処理することにより、所望の姿勢（視点、回転角）及び光源の下での画像を得ることができる。本実施形態では、取得部２１が認識対象物体の３次元ＣＡＤデータを受け付け、そのＣＡＤデータから生成した各視点の画像を用いてオリジナルのテンプレートセットを自動生成する構成を採る。
【００３５】
次に、クラスタリング部２２が、テンプレート間の類似度を計算する（ステップＳ６０１）。このとき、テンプレートセットから選ばれる２個のテンプレートの全通りの組み合わせについて（例えば、テンプレートの総数が２６９６０個の場合は、（２６９６０×２６９５９）／２＝３６３４０７３２０通り）、類似度が計算される。類似度とは、一方のテンプレートが表す画像特徴と他方のテンプレートが表す画像特徴との一致度合を表す指標である。本実施形態では、２個のテンプレートの間で座標（ｘ，ｙ）及び特徴量ｖａｌが一致する特徴点の数をカウントし、一致する特徴点の数（又は、一致する特徴点の数をテンプレート内の特徴点の総数で割った値）を類似度として用いる。
【００３６】
クラスタリング部２２は、ステップＳ６０１で計算した類似度に基づくクラスタリング処理によって、テンプレートセット内の複数のテンプレートを複数のグループ（クラスタ）に分ける（ステップＳ６０２）。これにより、互いに類似するテンプレート同士を同じグループにまとめることができる。クラスタリング手法としては、例えば、ｋ−ｍｅａｎｓ、ｘ−ｍｅａｎｓ、スペクトラルクラスタリングなど、いかなるアルゴリズムを用いてもよい。
【００３７】
次に、統合部２３が、ステップＳ６０２で得られた各グループについて、グループ内の全てのテンプレートを１つの統合テンプレートへ統合する統合処理を行う（ステップＳ６０３）。本実施形態では、グループ内の各テンプレートにおける同じ座標（ｘ，ｙ）の特徴点の特徴量ｖａｌを統合することによって、統合テンプレートが生成される。特徴量の統合にはいかなる手法を用いてもよい。例えば、輝度のように１つの数値で表される特徴量の場合には、平均値、最頻値、合計値、最大値、最小値などを統合後の特徴量とすることができる。また、ＨｏＧのような特徴量の場合には、ヒストグラムを合成したものを統合後の特徴量とすることができる。なお、本実施形態の統合処理では、グループ内の全てのテンプレートから１つの統合テンプレートを生成したが、ｎ個（ｎは１より大きく、グループ内のテンプレートの総数より少ない数）の統合テンプレートを生成する構成としてもよい。例えば、統合後の特徴量として平均値を用いた統合テンプレートと、統合後の特徴量として最頻値を用いた統合テンプレートのように、統合手法の異なる統合テンプレートを生成してもよい。
【００３８】
図８は、３つのテンプレートＴａ〜Ｔｃの特徴量（量子化勾配方向）を統合する例を示している。特徴点（２０，２０）については、テンプレートＴａ〜Ｔｃの特徴量の値００１０００００、０００００００１、０００００１００を統合することにより、統合後の特徴量の値００１００１０１が得られる。同様に、特徴点（３２，２５）については、値０００００１００、０００００１００、００００００１０を統合することにより、統合後の特徴量の値０００００１１０が得られる。また、統合テンプレートには、テンプレートＴａ〜Ｔｃへの参照情報ｐａｒｅｎｔが記録される。この参照情報ｐａｒｅｎｔを参照することによって、当該統合テンプレートの作成に用いた親テンプレートＴａ〜Ｔｃを特定す
ることができる。
【００３９】
ステップＳ６０３の統合処理を各々のグループについて行うことで、複数の統合テンプレートが得られる。これら複数の統合テンプレートは、新たなテンプレートセットとして記憶部２４に記憶される（ステップＳ６０４）。このテンプレートセットは、物体認識処理において、認識対象の物体２が複数のグループのいずれに属するかの判定に用いることができる。
【００４０】
一方、解像度変換部２５は、ステップＳ６０３で得られた複数の統合テンプレートのそれぞれに対し低解像度化処理を施すことによって、複数の低解像度テンプレートを生成する（ステップＳ６０５）。低解像度化処理とは、各特徴点の位置関係を基に、近傍にある複数の特徴点を統合することで、テンプレートの解像度を下げる処理である。低解像度化によりテンプレートの画像特徴が平滑化されるため、類似するテンプレートの組み合わせが多くなる。したがって、低解像度化した後にテンプレートのクラスタリング及び統合を再度行うことで、テンプレートの数のさらなる削減が可能となる。
【００４１】
図９に、テンプレートの解像度を１／２にする例を示す。解像度を１／２にする場合、２×２の範囲内の近傍特徴点が１つの特徴点に統合される。図９の例では、４つの特徴点（１，１）、（１，２）、（２，１）、（２，２）の特徴量の値を統合した結果が、低解像度テンプレートの特徴点（１，１）の特徴量の値となる。また、３つの特徴点（１，３）、（１，４）、（２，４）の特徴量の値を統合した結果が、低解像度テンプレートの特徴点（１，２）の特徴量の値となる。なお、これは低解像度化処理の一例であり、他の方法によりテンプレートの低解像度化を行ってもよい。
【００４２】
ステップＳ６０６では、解像度変換部２５が、各低解像度テンプレートに含まれる特徴点の数が所定値以上かどうかをチェックする。いずれの低解像度テンプレートも所定値以上の特徴点を含んでいた場合には（ステップＳ６０６；ＮＯ）、ステップＳ６０１に戻る。そして、ステップＳ６０５で得られた複数の低解像度テンプレートに対し、先と同じようにクラスタリング処理（ステップＳ６０２）及び統合処理（ステップＳ６０３）を行って、低解像度の新たなテンプレートセットを生成し、記憶部２４に記憶する（ステップＳ６０４）。
【００４３】
以上の処理を繰り返すことによって、階層的に解像度が低くなる複数のテンプレートセットを生成することができる。なお、低解像度化後にいずれかのテンプレートの特徴点の数が所定値よりも減っていた場合には（ステップＳ６０６；ＹＥＳ）、繰り返し処理を止め、テンプレートの作成を終了する。テンプレート内の特徴点の数を終了条件としたのは、特徴点の数が少なすぎるとテンプレートの識別能力が落ち、物体の認識精度が低下する可能性があるからである。
【００４４】
図１０に、クラスタリング処理（ステップＳ６０２）〜統合処理（ステップＳ６０３）〜低解像度化処理（ステップＳ６０５）の流れを概念的に示す。図１０では、図示の便宜から、テンプレートを画像で表している（特徴点が存在しない座標は黒画素で示し、特徴点が存在する座標は白画素で示す。）。図１０の左端は、ｍ０個のテンプレートから構成されるテンプレートセット８０である。テンプレート間の類似度に基づきテンプレートセット８０をクラスタリングすることで、ｍ１個のグループ（クラスタ）８１が得られる（ｍ０＞ｍ１）。そして、グループごとにテンプレートの統合を行うことで、ｍ１個の統合テンプレートから構成される新たなテンプレートセット８２が得られる。その後、低解像度化処理によってｍ１個の低解像度テンプレート８３を作成し、これに対して再びクラスタリング及び統合処理が行われる。
【００４５】
図１１に、繰り返し処理によって得られた階層的なテンプレートセットの一例を模式的に示す。例えば、オリジナルのテンプレートに対し、グループ（クラスタ）数を元の要素の１／８にするクラスタリング処理及び統合処理を３回繰り返した場合、オリジナル（０層目）のテンプレートＴ０は２６９６０個であるのに対し、１層目のテンプレートＴ１は３３７０個、２層目のテンプレートＴ２は４２１個、３層目のテンプレートＴ３は５３個となる。これらのテンプレートセットは、テンプレートＤＢ３１に格納され、物体認識処理装置３０における物体認識処理で利用される。
【００４６】
（物体認識処理）
次に、図１２のフローに沿って、物体認識処理装置３０によって実行される物体認識処理の流れを説明する。
【００４７】
まず、画像取得部３２が、カメラ１１から画像を取り込む（ステップＳ１２０）。この画像には任意の姿勢の物体２が写っているものとする。
【００４８】
テンプレートマッチング部３３は、テンプレートＤＢ３１から最下位層のテンプレートセットを読み込み（ステップＳ１２１）、このテンプレートセットを用いたテンプレートマッチングを行う（ステップＳ１２２）。いずれかのテンプレートにマッチした場合（ステップＳ１２３；ＹＥＳ）、テンプレートマッチング部３３は、そのマッチしたテンプレートの親テンプレートを上位層のテンプレートセットから読み込む（ステップＳ１２５）。そして、テンプレートマッチング部３３は、新たに読み込んだテンプレートセットを用いたテンプレートマッチングを行い（ステップＳ１２２）、さらにテンプレートを絞り込む。以上の操作を最上位層のテンプレートに到達するまで順に繰り返すことで（ステップＳ１２４）、最終的に、画像に最もマッチする最上位層のテンプレートを特定することができる。図１１の例では、３層目：Ｔ３，１２→２層目：Ｔ２，８３→１層目：Ｔ１，５５３→０層目：Ｔ０，２００の順にテンプレートが選択されている。０層目のテンプレートＴ０，２００は物体２の姿勢と一対一で対応しているため、物体２の姿勢を特定することができる。
【００４９】
物体２の姿勢情報は、認識結果として、認識結果出力部３４により出力される（ステップＳ１２６）。この認識結果は、例えば、ピッキング・ロボットの制御、加工装置や印字装置の制御、物体２の検査・計測などに利用される。
【００５０】
（本実施形態の利点）
以上述べた本実施形態のテンプレート作成方法によれば、画像特徴が類似するテンプレート同士が（視点の近い／遠いにかかわらず）統合されるため、視点を間引くというアプローチの従来方法に比べて、テンプレートの統合を適切に行うことができ、より高いテンプレート削減効果を期待できる。特に、認識対象物体の形状が単純であったり対称性を有している場合には、その効果が大きい。
【００５１】
また本実施形態では、階層的なテンプレートセットを作成し、解像度の低いテンプレートセットによるラフな認識を行い、その結果を用いて解像度の高いテンプレートセットによる詳細な認識を行う、といった階層的探索を行うので、物体認識処理の高精度化及び高速化を図ることができる。例えば、図１１の例において、階層的探索を行わない場合には、オリジナルの２６９６０個のテンプレートの総当たりのマッチングが必要となる。それに対し、階層的探索を行う場合には、３層目のマッチングで５３個のテンプレートを用い、２層目、１層目、０層目のマッチングでそれぞれ８個のテンプレートを用いたとしても、合計７７回のマッチングだけで済み、大幅な処理負荷の軽減を図ることができる。
【００５２】
（変形例）
上述した実施形態の構成は本発明の一具体例を示したものにすぎず、本発明の範囲を限定する趣旨のものではない。本発明はその技術思想を逸脱しない範囲において、種々の具体的構成を採り得るものである。
【００５３】
例えば、上記実施形態では、オリジナルのテンプレートセットとして、一つの物体の異なる姿勢に対する複数の画像のそれぞれから得られたテンプレートセットを与えたが、複数の物体（異なる物体）に対する複数の画像のそれぞれから得られたテンプレートセットを与えても構わない。異なる物体であっても、外観形状が似ており、画像特徴が類似しているのであれば、共通のテンプレートを適用できるからである。この場合も、上記実施形態で述べたのと同じ手順で、階層的テンプレートセットを作成することができる。このようなテンプレートセットは、例えば、複数種類の物体がコンベヤ上に混在して流れているような生産ラインにおいて、物体の種類と姿勢の両方を認識する用途に好ましく適用できる。
【００５４】
また、上記実施形態では、同じ視点でもカメラの回転角度に応じて別個のテンプレートを用意したが、一つの視点に対しては一つのテンプレートのみを用意し、テンプレートマッチングの処理で、画像又はテンプレートを回転させてもよい。これにより、テンプレートの数をさらに削減することができる。
【００５５】
上記実施形態では輝度を画素値とした画像の例を挙げたが、画素に対応する物体までの距離を画素値とした画像（距離画像）を採用することもできる。この場合、距離画像から直接的に物体の形状を把握することは可能であるが、距離画像と３次元ＣＡＤデータから得たテンプレートとをマッチングすることで、３次元における物体の位置・姿勢の認識をより正確に行うことができる。
【符号の説明】
【００５６】
１：物体認識装置、２：物体、３：コンベヤ、１０：画像処理装置、１１：カメラ
２０：テンプレート作成装置、２１：取得部、２２：クラスタリング部、２３：統合部、２４：記憶部、２５：解像度変換部
３０：物体認識処理装置、３１：テンプレートＤＢ、３２：画像取得部、３３：テンプレートマッチング部、３４：認識結果出力部
【図１】
0006554900.tif 000002
【図２】
0006554900.tif 000003
【図３】
0006554900.tif 000004
【図４】
0006554900.tif 000005
【図５】
0006554900.tif 000006
【図６】
0006554900.tif 000007
【図７】
0006554900.tif 000008
【図８】
0006554900.tif 000009
【図９】
0006554900.tif 000010
【図１０】
0006554900.tif 000011
【図１１】
0006554900.tif 000012
【図１２】
0006554900.tif 000013