(57)【特許請求の範囲】
【請求項１】
クエリ画像とモデル画像とを比較し、前記モデル画像の被写体と前記クエリ画像の被写体とを同定する情報処理装置において、
前記モデル画像からＮ個（Ｎは１以上の整数値）の特徴点が抽出され、抽出された前記Ｎ個の特徴点の特徴量がそれぞれ記述された場合、前記Ｎ個の特徴点とそれらの前記特徴量を示す情報が登録されるモデル辞書が自身内部または外部に存在し、
前記モデル辞書に登録されている前記モデル画像の前記Ｎ個の特徴点のそれぞれについて、対応する前記特徴量と、前記クエリ画像との相関画像をそれぞれ生成する相関画像生成手段と、
前記相関画像生成手段により生成された前記Ｎ個の相関画像のそれぞれについて、対応する前記特徴点の前記モデル画像内の配置位置に応じて、各画素の画素位置をシフトすることで、Ｎ個のシフト相関画像を生成するシフト相関画像生成手段と、
前記シフト相関画像生成手段により生成された前記Ｎ個のシフト相関画像の各画素の画素値を加算することで、相関和画像を生成する相関和画像生成手段と、
前記相関和画像生成手段により生成された前記相関和画像に基づいて、前記モデル画像の被写体と前記クエリ画像の被写体とが一致するか否かを判定する判定手段と
を備える情報処理装置。
【請求項２】
前記モデル辞書に登録されている前記モデル画像の１以上の前記特徴点のそれぞれについて、記述された自身の前記特徴量と、自身が抽出された前記モデル画像、および１以上の別モデル画像との相関画像がそれぞれ生成され、それらの相関画像に基づいて、前記モデル画像の前記被写体を識別するための寄与度を示す識別能力値が演算された場合、それらの識別能力値も、対応する前記特徴点を示す情報とともに前記モデル辞書にさらに登録され、
前記シフト相関画像生成手段は、さらに、前記Ｎ個のシフト相関画像の各画素の画素値を、前記モデル辞書に登録された前記識別能力値に応じて重み付けをすることで、Ｎ個の重みつきシフト相関画像を生成し、
前記相関和画像生成手段は、前記シフト相関画像生成手段により生成された前記Ｎ個の重みつきシフト相関画像の各画素の画素値を加算することで、前記相関和画像を生成する
請求項１に記載の情報処理装置。
【請求項３】
前記モデル辞書に登録されている前記モデル画像の１以上の前記特徴点のうちの少なくとも１つがベース点とされ、前記ベース点の一定範囲内に存在する前記特徴点の中から１以上のサポート点が選択された場合、それらのベース点とサポート点を示す情報も前記モデル辞書にさらに登録され、
前記相関画像生成手段は、さらに、
前記モデル辞書に登録されている前記モデル画像の前記Ｎ個の特徴点のそれぞれについて、対応するmb個（mbは０以上の整数値）のサポート点の前記特徴量と、前記クエリ画像とのmb個のサポート点相関画像をそれぞれ生成し、前記mb個のサポート点相関画像のそれぞれについて、対応する前記サポート点と前記ベース点の前記モデル画像内の配置位置に応じて、各画素の画素位置をシフトすることで、mb個のサポート点シフト相関画像を生成し、
前記Ｎ個の相関画像のそれぞれについて、自身および前記mb個のサポート点シフト相関画像の各画素の画素値を加算することで、Ｎ個の相関画像和を生成し、
前記シフト相関画像生成手段は、
前記相関画像生成手段により生成された前記Ｎ個の相関画像和のそれぞれから、前記Ｎ個のシフト相関画像を生成する
請求項１に記載の情報処理装置。
【請求項４】
前記モデル辞書に登録されている前記モデル画像の１以上の前記特徴点のそれぞれについて、記述された自身の前記特徴量と、自身が抽出された前記モデル画像、および１以上の別モデル画像との相関画像がそれぞれ生成され、それらの相関画像に基づいて、前記モデル画像の前記被写体を識別するための寄与度を示す識別能力値が演算された場合、それらの識別能力値も、対応する前記特徴点を示す情報とともに前記モデル辞書にさらに登録され、
前記モデル辞書に登録されている前記モデル画像の１以上の前記特徴点のうちの少なくとも１つがベース点とされ、前記ベース点の一定範囲内に存在する前記特徴点の中から前記識別能力値が前記ベース点よりも高い前記特徴点がサポート点として選択された場合、それらのベース点とサポート点を示す情報も前記モデル辞書にさらに登録され、
前記相関画像生成手段は、さらに、
前記モデル辞書に登録されている前記モデル画像の前記Ｎ個の特徴点のそれぞれについて、対応するmb個（mbは０以上の整数値）のサポート点の前記特徴量と、前記クエリ画像とのmb個のサポート点相関画像をそれぞれ生成し、前記mb個のサポート点相関画像のそれぞれについて、対応する前記サポート点と前記ベース点の前記モデル画像内の配置位置に応じて、各画素の画素位置をシフトすることで、mb個のサポート点シフト相関画像を生成し、
前記Ｎ個の相関画像のそれぞれについて、自身および前記mb個のサポート点シフト相関画像の各画素の画素値を加算することで、Ｎ個の相関画像和を生成し、
前記シフト相関画像生成手段は、
前記相関画像生成手段により生成された前記Ｎ個の相関画像和の各画素の画素値を、前記モデル辞書に登録された前記識別能力値に応じて重み付けをすることで、Ｎ個の重みつきシフト相関画像を生成し、
前記相関和画像生成手段は、前記シフト相関画像生成手段により生成された前記Ｎ個の重みつきシフト相関画像の各画素の画素値を加算することで、前記相関和画像を生成する
請求項１に記載の情報処理装置。
【請求項５】
クエリ画像とモデル画像とを比較し、前記モデル画像の被写体と前記クエリ画像の被写体とを同定する情報処理装置の情報処理方法において、
前記モデル画像からＮ個（Ｎは１以上の整数値）の特徴点が抽出され、抽出された前記Ｎ個の特徴点の特徴量がそれぞれ記述された場合、前記Ｎ個の特徴点とそれらの前記特徴量を示す情報が登録されるモデル辞書が自身内部または外部に存在し、
前記情報処理装置が実行するステップとして、
前記モデル辞書に登録されている前記モデル画像の前記Ｎ個の特徴点のそれぞれについて、対応する前記特徴量と、前記クエリ画像との相関画像をそれぞれ生成し、
生成された前記Ｎ個の相関画像のそれぞれについて、対応する前記特徴点の前記モデル画像内の配置位置に応じて、各画素の画素位置をシフトすることで、Ｎ個のシフト相関画像を生成し、
生成された前記Ｎ個のシフト相関画像の各画素の画素値を加算することで、相関和画像を生成し、
生成された前記相関和画像に基づいて、前記モデル画像の被写体と前記クエリ画像の被写体とが一致するか否かを判定する
ステップを含む情報処理方法。
【請求項６】
クエリ画像とモデル画像とを比較し、前記モデル画像の被写体と前記クエリ画像の被写体とを同定する情報処理装置を制御するコンピュータであって、
前記モデル画像からＮ個（Ｎは１以上の整数値）の特徴点が抽出され、抽出された前記Ｎ個の特徴点の特徴量がそれぞれ記述された場合、前記Ｎ個の特徴点とそれらの前記特徴量を示す情報が登録されるモデル辞書が自身内部または外部に存在するコンピュータに、
前記モデル辞書に登録されている前記モデル画像の前記Ｎ個の特徴点のそれぞれについて、対応する前記特徴量と、前記クエリ画像との相関画像をそれぞれ生成し、
生成された前記Ｎ個の相関画像のそれぞれについて、対応する前記特徴点の前記モデル画像内の配置位置に応じて、各画素の画素位置をシフトすることで、Ｎ個のシフト相関画像を生成し、
生成された前記Ｎ個のシフト相関画像の各画素の画素値を加算することで、相関和画像を生成し、
生成された前記相関和画像に基づいて、前記モデル画像の被写体と前記クエリ画像の被写体とが一致するか否かを判定する
ステップを実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置および方法、並びにプログラムに関し、特に、より確実に画像内の物体を認識することができるようになった情報処理装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
従来、局所特徴量を用いたテクスチャベースの一般物体認識手法が存在する（特許文献１参照）。かかる手法は、照明変化に強く、ロバストに物体の認識を可能にする一方で、テクスチャの少ない物体に適用すると識別能力が低下するという特徴がある。
【０００３】
また、本願の出願当初の出願人によって既に特願2006-100705号として出願された願書に添付した明細書等には、エッジ情報やサポート点を使用することにより、テクスチャのない物体に対して局所特徴マッチングの手法の適用を可能にするといった手法が開示されている。即ち、かかる手法とは、モデル画像とクエリ画像とから特徴点を抽出し、その周辺の局所特徴量を記述し、特徴量同士のマッチングを行い、ハフ変換やRANSAC等を用いたアウトライヤ（ミスマッチ）除去を行った後のマッチングペア数で、モデル画像内の物体とクエリ画像内の物体の識別をするという手法である。
【特許文献１】特開2004-326693号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、これらの従来の手法では、次のような３つの問題点が存在していた。その結果、これらの従来の手法よりも確実に画像内の物体を認識できる手法の実現が期待されている状況である。
【０００５】
即ち、第１の問題点とは、モデル画像の特徴点位置とクエリ画像の特徴点位置の出現再現性が悪い場合には、識別能力が著しく低下するという問題点である。この第１の問題点は、エッジを使用した場合には、モデル画像のエッジとクエリ画像のエッジの再現性が識別能力に大きく影響するというという問題点となる。
【０００６】
第２の問題点とは、最終的にモデルの識別をインライヤ（ミスマッチペア除去後）のマッチペア数で判断しているため、モデル画像内の物体とクエリ画像内の物体の類似度によらず、複雑なテクスチャや輪郭で、特徴点が多く出る物体同士のマッチペアは多くなり、単純なテクスチャや形状の物体は、マッチペアが少なくなるという傾向がある、という問題点である。
【０００７】
第３の問題点とは、ベース点周辺にサポート点を設け、マッチングの精度向上に利用する場合、サポート点の選択基準が、複数のモデル画像間の差異を考慮していない、という問題点である。
【０００８】
本発明は、このような状況に鑑みてなされたものであり、より確実に画像内の物体を認識することができるようにするものである。
【課題を解決するための手段】
【０００９】
本発明の一側面の情報処理装置は、クエリ画像とモデル画像とを比較し、前記モデル画像の被写体と前記クエリ画像の被写体とを同定する情報処理装置であって、前記モデル画像からＮ個（Ｎは１以上の整数値）の特徴点が抽出され、抽出された前記Ｎ個の特徴点の特徴量がそれぞれ記述された場合、前記Ｎ個の特徴点とそれらの前記特徴量を示す情報が登録されるモデル辞書が自身内部または外部に存在し、前記モデル辞書に登録されている前記モデル画像の前記Ｎ個の特徴点のそれぞれについて、対応する前記特徴量と、前記クエリ画像との相関画像をそれぞれ生成する相関画像生成手段と、前記相関画像生成手段により生成された前記Ｎ個の相関画像のそれぞれについて、対応する前記特徴点の前記モデル画像内の配置位置に応じて、各画素の画素位置をシフトすることで、Ｎ個のシフト相関画像を生成するシフト相関画像生成手段と、前記シフト相関画像生成手段により生成された前記Ｎ個のシフト相関画像の各画素の画素値を加算することで、相関和画像を生成する相関和画像生成手段と、前記相関和画像生成手段により生成された前記相関和画像に基づいて、前記モデル画像の被写体と前記クエリ画像の被写体とが一致するか否かを判定する判定手段とを備える。
【００１０】
前記モデル辞書に登録されている前記モデル画像の１以上の前記特徴点のそれぞれについて、記述された自身の前記特徴量と、自身が抽出された前記モデル画像、および１以上の別モデル画像との相関画像がそれぞれ生成され、それらの相関画像に基づいて、前記モデル画像の前記被写体を識別するための寄与度を示す識別能力値が演算された場合、それらの識別能力値も、対応する前記特徴点を示す情報とともに前記モデル辞書にさらに登録され、前記シフト相関画像生成手段は、さらに、前記Ｎ個のシフト相関画像の各画素の画素値を、前記モデル辞書に登録された前記識別能力値に応じて重み付けをすることで、Ｎ個の重みつきシフト相関画像を生成し、前記相関和画像生成手段は、前記シフト相関画像生成手段により生成された前記Ｎ個の重みつきシフト相関画像の各画素の画素値を加算することで、前記相関和画像を生成する。
【００１１】
前記モデル辞書に登録されている前記モデル画像の１以上の前記特徴点のうちの少なくとも１つがベース点とされ、前記ベース点の一定範囲内に存在する前記特徴点の中から１以上のサポート点が選択された場合、それらのベース点とサポート点を示す情報も前記モデル辞書にさらに登録され、前記相関画像生成手段は、さらに、前記モデル辞書に登録されている前記モデル画像の前記Ｎ個の特徴点のそれぞれについて、対応するmb個（mbは０以上の整数値）のサポート点の前記特徴量と、前記クエリ画像とのmb個のサポート点相関画像をそれぞれ生成し、前記mb個のサポート点相関画像のそれぞれについて、対応する前記サポート点と前記ベース点の前記モデル画像内の配置位置に応じて、各画素の画素位置をシフトすることで、mb個のサポート点シフト相関画像を生成し、前記Ｎ個の相関画像のそれぞれについて、自身および前記mb個のサポート点シフト相関画像の各画素の画素値を加算することで、Ｎ個の相関画像和を生成し、前記シフト相関画像生成手段は、前記相関画像生成手段により生成された前記Ｎ個の相関画像和のそれぞれから、前記Ｎ個のシフト相関画像を生成する。
【００１２】
前記モデル辞書に登録されている前記モデル画像の１以上の前記特徴点のそれぞれについて、記述された自身の前記特徴量と、自身が抽出された前記モデル画像、および１以上の別モデル画像との相関画像がそれぞれ生成され、それらの相関画像に基づいて、前記モデル画像の前記被写体を識別するための寄与度を示す識別能力値が演算された場合、それらの識別能力値も、対応する前記特徴点を示す情報とともに前記モデル辞書にさらに登録され、前記モデル辞書に登録されている前記モデル画像の１以上の前記特徴点のうちの少なくとも１つがベース点とされ、前記ベース点の一定範囲内に存在する前記特徴点の中から前記識別能力値が前記ベース点よりも高い前記特徴点がサポート点として選択された場合、それらのベース点とサポート点を示す情報も前記モデル辞書にさらに登録され、前記相関画像生成手段は、さらに、前記モデル辞書に登録されている前記モデル画像の前記Ｎ個の特徴点のそれぞれについて、対応するmb個のサポート点の前記特徴量と、前記クエリ画像とのmb個のサポート点相関画像をそれぞれ生成し、前記mb個のサポート点相関画像のそれぞれについて、対応する前記サポート点と前記ベース点の前記モデル画像内の配置位置に応じて、各画素の画素位置をシフトすることで、mb個のサポート点シフト相関画像を生成し、前記Ｎ個の相関画像のそれぞれについて、自身および前記mb個のサポート点シフト相関画像の各画素の画素値を加算することで、Ｎ個の相関画像和を生成し、前記シフト相関画像生成手段は、前記相関画像生成手段により生成された前記Ｎ個の相関画像和の各画素の画素値を、前記モデル辞書に登録された前記識別能力値に応じて重み付けをすることで、Ｎ個の重みつきシフト相関画像を生成し、前記相関和画像生成手段は、前記シフト相関画像生成手段により生成された前記Ｎ個の重みつきシフト相関画像の各画素の画素値を加算することで、前記相関和画像を生成する。
【００１３】
本発明の一側面の情報処理方法およびプログラムは、上述した本発明の一側面の情報処理装置に対応する方法およびプログラムである。
【００１４】
本発明の一側面においては、クエリ画像とモデル画像とを比較し、前記モデル画像の被写体と前記クエリ画像の被写体とを同定する情報処理として、次のような処理が実行される。ただし、前記モデル画像からＮ個（Ｎは１以上の整数値）の特徴点が抽出され、抽出された前記Ｎ個の特徴点の特徴量がそれぞれ記述された場合、前記Ｎ個の特徴点とそれらの前記特徴量を示す情報が登録されるモデル辞書が存在する。この場合、前記モデル辞書に登録されている前記モデル画像の前記Ｎ個の特徴点のそれぞれについて、対応する前記特徴量と、前記クエリ画像との相関画像がそれぞれ生成され、生成された前記Ｎ個の相関画像のそれぞれについて、対応する前記特徴点の前記モデル画像内の配置位置に応じて、各画素の画素位置をシフトすることで、Ｎ個のシフト相関画像が生成され、生成された前記Ｎ個のシフト相関画像の各画素の画素値を加算することで、相関和画像が生成され、生成された前記相関和画像に基づいて、前記モデル画像の被写体と前記クエリ画像の被写体とが一致するか否かが判定される。
【発明の効果】
【００１５】
以上のように、本発明の一側面によれば、画像内の物体を認識することができる。特に、本発明の一側面によれば、より確実に画像内の物体を認識することができる。
【発明を実施するための最良の形態】
【００１６】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書又は図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書又は図面に記載されていることを確認するためのものである。したがって、明細書又は図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００１７】
本発明の一側面の情報処理装置は、
クエリ画像（例えば図１２（Ａ）のクエリ画像２２）とモデル画像（例えば図１２（Ｂ）のモデル画像２１）とを比較し、前記モデル画像の被写体と前記クエリ画像の被写体とを同定する情報処理装置において（例えば図１１のクエリ画像認識部１３を有する図１の物体認識装置）、
前記モデル画像からＮ個（Ｎは１以上の整数値）の特徴点が抽出され、抽出された前記Ｎ個の特徴点の特徴量がそれぞれ記述された場合、前記Ｎ個の特徴点とそれらの前記特徴量を示す情報が登録されるモデル辞書（例えば図１１のモデル特徴量辞書１２）が自身内部または外部に存在し、
前記モデル辞書に登録されている前記モデル画像の前記Ｎ個の特徴点のそれぞれについて、対応する前記特徴量と、前記クエリ画像との相関画像をそれぞれ生成する相関画像生成手段（例えば図１１の相関画像生成部５２）と、
前記相関画像生成手段により生成された前記Ｎ個の相関画像のそれぞれについて、対応する前記特徴点の前記モデル画像内の配置位置に応じて、各画素の画素位置をシフトすることで、Ｎ個のシフト相関画像を生成するシフト相関画像生成手段（例えば図１１のシフト相関画像生成部５３）と、
前記シフト相関画像生成手段により生成された前記Ｎ個のシフト相関画像の各画素の画素値を加算することで、相関和画像を生成する相関和画像生成手段（例えば図１１の相関画像和生成部５４）と、
前記相関和画像生成手段により生成された前記相関和画像に基づいて、前記モデル画像の被写体と前記クエリ画像の被写体とが一致するか否かを判定する判定手段（例えば図１１の判定部５５）と
を備える。
【００１８】
前記モデル辞書に登録されている前記モデル画像の１以上の前記特徴点のそれぞれについて、記述された自身の前記特徴量と、自身が抽出された前記モデル画像、および１以上の別モデル画像との相関画像がそれぞれ生成され、それらの相関画像に基づいて、前記モデル画像の前記被写体を識別するための寄与度を示す識別能力値が演算された場合、それらの識別能力値も、対応する前記特徴点を示す情報とともに前記モデル辞書にさらに登録され、
前記シフト相関画像生成手段は、さらに、前記Ｎ個のシフト相関画像の各画素の画素値を、前記モデル辞書に登録された前記識別能力値に応じて重み付けをすることで、Ｎ個の重みつきシフト相関画像を生成し（例えば図１４のステップＳ１４２を実行し）、
前記相関和画像生成手段は、前記シフト相関画像生成手段により生成された前記Ｎ個の重みつきシフト相関画像の各画素の画素値を加算することで、前記相関和画像を生成する。
【００１９】
前記モデル辞書に登録されている前記モデル画像の１以上の前記特徴点のうちの少なくとも１つがベース点とされ、前記ベース点の一定範囲内に存在する前記特徴点の中から１以上のサポート点が選択された場合、それらのベース点とサポート点を示す情報も前記モデル辞書にさらに登録され、
前記相関画像生成手段は、さらに、
前記モデル辞書に登録されている前記モデル画像の前記Ｎ個の特徴点のそれぞれについて、対応するmb個のサポート点の前記特徴量と、前記クエリ画像とのmb個のサポート点相関画像をそれぞれ生成し、前記mb個のサポート点相関画像のそれぞれについて、対応する前記サポート点と前記ベース点の前記モデル画像内の配置位置に応じて、各画素の画素位置をシフトすることで、mb個のサポート点シフト相関画像を生成し（例えば図１５のＳ１５１−２を実行し）、
前記Ｎ個の相関画像のそれぞれについて、自身および前記mb個のサポート点シフト相関画像の各画素の画素値を加算することで、Ｎ個の相関画像和を生成し（例えば図１５のＳ１５１−３を実行し）、
前記シフト相関画像生成手段は、
前記相関画像生成手段により生成された前記Ｎ個の相関画像和のそれぞれから、前記Ｎ個のシフト相関画像を生成する（例えば図１５のＳ１５２を実行する）。
【００２０】
前記モデル辞書に登録されている前記モデル画像の１以上の前記特徴点のそれぞれについて、記述された自身の前記特徴量と、自身が抽出された前記モデル画像、および１以上の別モデル画像との相関画像がそれぞれ生成され、それらの相関画像に基づいて、前記モデル画像の前記被写体を識別するための寄与度を示す識別能力値が演算された場合、それらの識別能力値も、対応する前記特徴点を示す情報とともに前記モデル辞書にさらに登録され、
前記モデル辞書に登録されている前記モデル画像の１以上の前記特徴点のうちの少なくとも１つがベース点とされ、前記ベース点の一定範囲内に存在する前記特徴点の中から前記識別能力値が前記ベース点よりも高い前記特徴点がサポート点として選択された場合、それらのベース点とサポート点を示す情報も前記モデル辞書にさらに登録され、
前記相関画像生成手段は、さらに、
前記モデル辞書に登録されている前記モデル画像の前記Ｎ個の特徴点のそれぞれについて、対応するmb個のサポート点の前記特徴量と、前記クエリ画像とのmb個のサポート点相関画像をそれぞれ生成し、前記mb個のサポート点相関画像のそれぞれについて、対応する前記サポート点と前記ベース点の前記モデル画像内の配置位置に応じて、各画素の画素位置をシフトすることで、mb個のサポート点シフト相関画像を生成し（例えば図１６のＳ１６１−２を実行し）、
前記Ｎ個の相関画像のそれぞれについて、自身および前記mb個のサポート点シフト相関画像の各画素の画素値を加算することで、Ｎ個の相関画像和を生成し（例えば図１６のＳ１６１−３を実行し）、
前記シフト相関画像生成手段は、
前記相関画像生成手段により生成された前記Ｎ個の相関画像和の各画素の画素値を、前記モデル辞書に登録された前記識別能力値に応じて重み付けをすることで、Ｎ個の重みつきシフト相関画像を生成し（例えば図１６のＳ１６２を実行し）、
前記相関和画像生成手段は、前記シフト相関画像生成手段により生成された前記Ｎ個の重みつきシフト相関画像の各画素の画素値を加算することで、前記相関和画像を生成する（例えば図１６のＳ１６３を実行する）。
【００２１】
本発明の一側面の情報処理方法およびプログラムは、上述した本発明の一側面の情報処理装置に対応する方法およびプログラムである。詳細については後述するが、このプログラムは、例えば、図１７のリムーバブルメディア２１１や、記憶部２０８に含まれるハードディスク等の記録媒体に記録され、図１７の構成のコンピュータにより実行される。
【００２２】
その他、本発明の一側面としては、上述した本発明の一側面のプログラムを記録した記録媒体も含まれる。
【００２３】
以下、図面を参照しながら本発明の実施の形態について説明する。
【００２４】
図１は、本発明の一実施の形態である物体認識装置の機能の構成を示すブロック図である。
【００２５】
図１において、物体認識装置は、モデル特徴量抽出部１１、モデル特徴量辞書１２、およびクエリ画像認識部１３から構成される。
【００２６】
モデル特徴量抽出部１１は、物体の認識において、認識の対象の物体をそれぞれ含むモデル画像２１−１乃至２１−Ｎ（Ｎは１以上の整数値）から、モデル特徴量をそれぞれ抽出して、モデル特徴量辞書１２に登録する。
【００２７】
なお、モデル画像２１−１乃至２１−Ｎは、静止画像そのものまたは動画像のフレーム画像とされる。
【００２８】
クエリ画像認識部１３は、モデル画像２１−１乃至２１−Ｎに含まれる各物体と比較され、認識される物体を含むクエリ画像２２から、クエリ特徴量を抽出し、モデル特徴量辞書１２に登録されているモデル特徴量とのマッチングを行い、そのマッチングの結果に基づいて、モデル画像２１−１乃至２１−Ｎ内の各物体とクエリ画像２２内の物体との同定を試みる。
【００２９】
なお、クエリ画像２２は、モデル画像２１−１乃至２１−Ｎと同様に、静止画像そのものまたは動画像のフレーム画像とされる。
【００３０】
以下、モデル特徴量抽出部１１とクエリ画像認識部１３とのそれぞれの詳細について、その順番で個別に説明していく。
【００３１】
なお、以下、モデル画像２１−１乃至２１−Ｎを個々に区別する必要がない場合、換言すると、モデル画像２１−１乃至２１−Ｎのうちの１つについて言及する場合、単にモデル画像２１と称する。
【００３２】
図２は、モデル特徴量抽出部１１の機能の詳細な構成を示すブロック図である。
【００３３】
モデル特徴量抽出部１１は、特徴点抽出部３１、特徴量記述部３２、特徴点識別能力値演算部３３、サポート点選択部３４、および、モデル特徴量情報生成部３５を含むように構成される。
【００３４】
特徴点抽出部３１は、モデル画像２１から特徴点を抽出し、その抽出結果を特徴量記述部３２とモデル特徴量情報生成部３５とに提供する。
【００３５】
なお、特徴点抽出部３１が採用する特徴点抽出手法自体は特に限定されない。
【００３６】
具体的には例えば、図３は、Harrisコーナーディテクタ等を使用した特徴点抽出手法が採用された場合の特徴点の抽出結果を示している。図３の○（白丸印）が特徴点を示している。かかる手法では、図３に示されるように、コーナ点が特徴点として抽出される。
【００３７】
また例えば、図４は、Cannyエッジディテクタ等を使用した特徴点抽出手法が採用された場合の特徴点の抽出結果を示している。図４の○（白丸印）が特徴点を示している。かかる手法では、図４に示されるように、エッジ点が特徴点として抽出される。
【００３８】
特徴量記述部３２は、特徴点抽出部３１によって抽出された各特徴点の周辺で、局所特徴量記述を行う処理をそれぞれ行い、各処理結果を特徴点識別能力値演算部３３とモデル特徴量情報生成部３５とに提供する。
【００３９】
なお、特徴量記述部３２が採用する局所特徴量記述手法自体は特に限定されない。
【００４０】
例えば、画素値の輝度勾配等を利用した、局所特徴量のベクトル記述を行う手法を採用できる。
【００４１】
具体的には例えば、図５に示されるように、特徴点周辺で、５ｘ５画素の範囲の輝度勾配をベクトル記述する場合は、各画素の輝度勾配の、ｘ成分、ｙ成分をそれぞれ次元とし、(Vx(0,0),Vy(0,0), Vx(0,1), Vy(0,1),…Vx(4,4), Vy(4,4))で５０次元ベクトルを構成する、といった手法を採用することができる。
【００４２】
また、別の手法としては、例えば、輝度勾配ベクトルの方向別にヒストグラムを取った記述手法等も採用できる。例えば特徴点周辺の起動勾配ベクトルの方向を、１０度ごとにヒストグラムをとった場合３６次元ベクトルとなる。
【００４３】
また例えば、輝度情報をそのまま特徴量とするといった手法等も採用できる。たとえば特徴量周辺の５ｘ５画素の範囲で、輝度情報をそのままベクトル記述する場合は、２５次元ベクトルとなる。
【００４４】
さらにまた、上述した各種記述手法を組み合わせてもよい。
【００４５】
特徴点識別能力値演算部３３は、特徴点抽出部３１によって抽出された各特徴点（特徴量記述部３２により特徴量記述化された各特徴点）のそれぞれについて、識別能力値を演算し、それらの各演算結果をサポート点選択部３４とモデル特徴量情報生成部３５に提供する。
【００４６】
ここで、識別能力値とは、モデル画像２１に含まれる被写体、即ち認識対象の物体を、他の物体（他のモデル画像に含まれる物体等）と区別して識別する場合において、その特徴点がその識別にどの程度寄与しているのか、即ち、その特徴点がその識別においてどの程度影響を及ぼしているのか、といった被写体を識別するための特徴点の能力（モデル識別の能力）を示す値をいう。
【００４７】
図６は、識別能力値が算出されるまでの一連の処理を説明するフローチャートである。
【００４８】
なお、以下、図６の記載に併せて、モデル画像２１−１から抽出された各特徴点についての識別能力値が演算される場合の処理について説明をする。ただし、実際には、モデル画像２１−１のみならず、別のモデル画像２１−２乃至２１−Ｎから抽出された各特徴点のそれぞれについても、以下の説明と同様の処理が施されて、識別能力値がそれぞれ演算される。
【００４９】
図６のステップＳ１００において、モデル特徴量抽出部１１は、全モデル画像２１−１乃至２１−Ｎを取得する。
【００５０】
ステップＳ１０２において、特徴点抽出部３１は、上述したように、モデル画像２１−１から１以上の特徴点を抽出する。ステップＳ１０３において、特徴量記述部３２は、上述したように、モデル画像２１−１から抽出された各特徴点について特徴量記述をそれぞれ行う。
【００５１】
このようなステップＳ１０２とＳ１０３の処理と並行して、ステップＳ１０４において、特徴点識別能力値演算部３３は、モデル画像２１−１乃至２１−Ｎのそれぞれから、特徴量画像４１−１乃至４１−Ｎをそれぞれ生成する。
【００５２】
ここで、特徴量画像４１−Ｋ（Ｋは、１乃至Ｎのうちの何れかの整数値）とは、モデル画像２１−Ｋの全画素を対象として、特徴量記述部３２に採用された局所特徴量記述手法と同一手法に従って特徴量記述がそれぞれ行われた場合、その記述結果、即ち、各特徴量を各画素値として構成された画像をいう。
【００５３】
ステップＳ１０５において、特徴点識別能力値演算部３３は、モデル画像２１−１の各特徴点（ステップＳ１０２の処理で抽出されて、ステップＳ１０３の処理で特徴量記述化された各特徴点）のうちの、識別能力を演算したいP個（Pは、ステップＳ１０２の処理で抽出された個数以下の整数値）の特徴点についてそれぞれ、相関画像を生成する。
【００５４】
ここで、相関画像４２−ＫＬ（Ｋは、上述の特徴量画像４１−ＫのＫと同一値。Ｌは、１乃至Ｐのうちのいずれかの値）とは、次のような画像をいう。即ち、識別能力を演算したいP個の特徴点に１乃至Pの番号を付したする。そして、そのうちの処理の対象として注目すべき番号Ｌの特徴点を、注目特徴点Ｌと称するとする。この場合、注目特徴点Ｌの特徴量と、特徴量画像４１−Ｋを構成する各画素値（即ち、各特徴量）とのマッチングがそれぞれ行われ、それぞれ相関（距離）値が求められたときに、それらの各相関値を各画素値として構成された画像が、相関画像４２−ＫＬとなる。このとき、相関値としては、例えば、ベクトル同士の正規化相関、距離0としてはユーグリッド距離等の尺度を採用することができる。
【００５５】
即ち、注目特徴点Ｌに対して、Ｎ枚の特徴量画像４１−１，４１−２，・・・，４１−Ｎのそれぞれの各画素との相関を示すＮ枚の相関画像４２−１Ｌ，４２−２Ｌ，・・・，４２−ＮＬが生成される。
【００５６】
換言すると、１つの特徴量画像４１−Ｋに対しては、番号１乃至Pがそれぞれ付されたP個の各特徴点毎に１枚ずつの相関画像、即ち、P枚の相関画像４２−Ｋ１，４２−Ｋ２，・・・，４２−ＫＰが生成される。
【００５７】
ステップＳ１０６において、特徴点識別能力値演算部３３は、番号１乃至Pが付されたP個の各特徴点毎に、全相関画像の平均または最大値から識別能力値をそれぞれ演算する。即ち、特徴点識別能力値演算部３３は、この平均または最大値の低いものから順に、モデル識別が高いものとして、識別能力値を与えていく。なお、全相関画像とは、注目特徴点Ｌに対して生成された相関画像の全て、即ち、Ｎ枚の相関画像４２−１Ｌ，４２−２Ｌ，・・・，４２−ＮＬをいう。
【００５８】
例えば、図７や図８には、識別能力値を画像化したものが示されている。ここで、識別能力値が高い特徴点ほど、明るく（白色に）なっている。即ち、図７は、カエルの形状を有する物体（以下、カエルと略称する）を含む画像がモデル画像２１−１とされた場合の識別能力値の例を示している。図７に示されるように、カエルの目の付近が、識別能力値が高い、即ち、カエルであることを識別するために重要な部分であることがわかる。一方、図８は、犬の形状を有する物体（以下、犬と略記する）を含む画像がモデル画像２１−１とされた場合の識別能力値の例を示している。図８に示されるように、犬の尾の付近が、識別能力値が高い、即ち、犬であることを識別するために重要な部分であることがわかる。
【００５９】
なお、図示はしないが、特徴点識別能力値演算部３３は、図６のステップＳ１０６の処理後、例えば、Ｐ個の各特徴点の番号を、識別能力値の高い順に並び替える処理を実行してもよい。即ち、かかる処理後のＰ個の各特徴点の番号とは、モデル識別に重要な順番を示すことになる。
【００６０】
図２に戻り、サポート点選択部３４は、特徴点識別能力値演算部３３により算出された識別能力値を利用してサポート点を選択する。
【００６１】
ここで、サポート点とは、次のような点をいう。即ち、特徴点抽出部３１により抽出された特徴点の中から基準となる点として選択された点を、以下、ベース点と称する。この場合、ベース点以外の特徴点であってベース点に従属して決定される点を、サポート点と称する。
【００６２】
サポート点の決定手法自体は特に限定されず、例えば本実施の形態では、モデル画像２１において、ベース点の配置位置から一定範囲内にある特徴点のうちの、識別能力値がベース点よりも高い値を有する特徴点を、サポート点として選択する、といった手法が採用されているとする。かかる手法を採用した場合には、１つのベース点に対して、複数のサポート点が選択される場合もある。図９は、かかる手法に従ったサポート点選択部３４の処理（以下、サポート点選択処理と称する）の一例を説明するフローチャートである。
【００６３】
図９のステップＳ１２１において、サポート点選択部３４は、モデル画像２１におけるＰ個の各特徴点の識別能力値を取得する。
【００６４】
ステップＳ１２２において、サポート点選択部３４は、Ｐ個の特徴点から１以上のベース点を選択する。なお、ベース点の選択手法自体は特に限定されない。
【００６５】
ステップＳ１２３において、サポート点選択部３４は、１以上のベース点のうちの所定の１つを処理対象として、その処理対象のベース点の位置から一定範囲内にある他の特徴点を抽出する。
【００６６】
ステップＳ１２４において、サポート点選択部３４は、抽出された特徴点の識別能力値が、ベース点の識別能力値より高いか否かを判定する。
【００６７】
ここで、ステップＳ１２３の処理で、１つの特徴点も抽出されない場合がある。かかる場合には、ステップＳ１２４の処理でＮＯであると強制的に判定されて、処理はステップＳ１２６に進むとする。なお、ステップＳ１２６以降の処理については後述する。
【００６８】
逆に、ステップＳ１２３の処理で、複数の特徴点が抽出される場合がある。かかる場合には、複数の特徴点のうちの所定の１つがステップＳ１２４の処理対象となり、その処理対象の特徴点の識別能力値が、ベース点の識別能力値より高いか否かが判定される。
【００６９】
サポート点選択部３４は、ステップＳ１２４において、抽出された特徴点の識別能力値がベース点の識別能力値より高いと判定した場合、ステップＳ１２５において、抽出された特徴点（複数の特徴点が抽出されている場合には、処理対象の特徴点）をサポート点として選択する。これにより、処理はステップＳ１２６に進む。
【００７０】
これに対して、ステップＳ１２４において、抽出された特徴点の識別能力値がベース点の識別能力値より低いと判定された場合、ステップＳ１２５の処理は実行されずに、即ち、抽出された特徴点（複数の特徴点が抽出されている場合には、処理対象の特徴点）はサポート点として選択されずに、処理はステップＳ１２６に進む。
【００７１】
ステップＳ１２６において、サポート点選択部３４は、他に抽出された特徴点があるか否かを判定する。
【００７２】
即ち、上述したように、ステップＳ１２３の処理で複数の特徴点が抽出された場合には、ステップＳ１２６の処理でＹＥＳであると判定され、処理はステップＳ１２４に戻され、それ以降の処理が繰り返される。即ち、複数の特徴点のそれぞれが順次処理対象となり、ステップＳ１２４，Ｓ１２５，Ｓ１２６のループ処理が繰り返し実行される。その結果、複数の特徴点のうちの、ベース点よりも識別能力値が高い特徴点のみがサポート点として選択されることになる。複数の特徴点の全てについて上述のループ処理が実行されると、最後のループ処理のステップＳ１２６においてＮＯであると判定されて、処理はステップＳ１２７に進む。
【００７３】
また、ステップＳ１２３の処理で１つの特徴点のみが抽出された場合または１つの特徴点も抽出されなかった場合におけるステップＳ１２６の処理では、直ちにＮＯであると判定され、処理はステップＳ１２７に進む。
【００７４】
ステップＳ１２７において、サポート点選択部３４は、他にベース点があるか否かを判定する。
【００７５】
まだ、処理対象となっていないベース点が存在する場合には、ステップＳ１２７の処理でＹＥＳであると判定されて、処理はステップＳ１２３に戻されてそれ以降の処理が繰り返される。
【００７６】
このようにして、１以上のベース点のそれぞれについて、サポート点が０以上選択されると、ステップＳ１２７の処理でＮＯであると判定されて、サポート点選択処理は終了する。
【００７７】
具体的には例えば、図１０（Ａ）乃至（Ｃ）のそれぞれには、ベース点とサポート点の選択結果が示されている。即ち、同一のモデル画像２１から、３つのベース点が選択されており、それぞれのベース点が○（白丸）として、図１０（Ａ）乃至（Ｃ）のそれぞれに示されている。そして、それらの３つのベース点に対して選択された複数のサポート点が、図１０（Ａ）乃至（Ｃ）に、ベース点を示す○（白丸）よりも小さな●（黒丸）としてそれぞれ示されている。
【００７８】
図２に戻り、モデル特徴量情報生成部３５は、以上説明した特徴点抽出部３１乃至サポート点選択部３４の各種処理結果を示すモデル特徴量情報（ベース点＋サポート点）を生成し、モデル特徴量辞書１２に登録する。即ち、モデル特徴量情報とは、モデル画像２１−１乃至２１−Ｎのそれぞれについて、抽出された各特徴点に関する情報をいう。具体的には例えば、それらの特徴点がベース点とサポート点との別に区別されて、それぞれについての局所特徴量や識別能力値、また、サポート点情報等から構成される情報が、モデル特徴量情報である。
【００７９】
以上、図１の物体認識装置のうちのモデル特徴量抽出部１１の詳細について説明した。以下、クエリ画像認識部１３の詳細について説明する。
【００８０】
図１１は、クエリ画像認識部１３の機能の詳細な構成を示すブロック図である。
【００８１】
クエリ画像認識部１３は、特徴画像生成部５１、相関画像生成部５２、シフト相関画像生成部５３、相関画像和生成部５４、および判定部５５を含むように構成される。
【００８２】
特徴画像生成部５１は、認識させたい物体を含むクエリ画像２２が入力されると、そのクエリ画像２２から特徴量画像を生成する。即ち、上述した図６のステップＳ１０４と同様の処理がクエリ画像２２に施されることになる。
【００８３】
相関画像生成部５２は、クエリ画像２２の特徴量画像の各画素値（即ち、各画素の特徴量）と、モデル特徴量辞書１２に記録された各モデル画像２１−１乃至２１−Ｎの各特徴点（以下、各モデル特徴点と称する）の特徴量とのマッチングを行い、それぞれの相関（距離）値を各画素値として構成する画像、即ち、相関画像を生成する。
【００８４】
シフト相関画像生成部５３は、各モデル特徴点の位置に応じて、それぞれ対応する相関画像の各画素位置をシフトさせた画像（以下、シフト相関画像と称する）を生成する。なお、シフト相関画像の生成手法については、図１２乃至図１６を参照して後述する。
【００８５】
相関画像和生成部５４は、モデル画像２１−１乃至２１−Ｎ毎に、各モデル特徴点の各シフト相関画像、若しくは、それらに対して各種画像処理を施した後の各画像の和を取った画像（以下、相関和画像と称する）を生成する。即ち、相関和画像とは、２以上の画像の各画素値の総和を、それぞれの画素値として構成される画像をいう。
【００８６】
なお、相関和画像の生成手法（シフト相関画像に対して施される各種画像処理の例含む）の具体例については、図１２乃至図１６を参照して後述する。
【００８７】
判定部５５は、モデル画像２１−１乃至２１−Ｎのそれぞれに対して生成された各相関和画像に基づいて、モデル画像２１−１乃至２１−Ｎに含まれる各物体がクエリ画像２２に含まれている物体と同一であるか否かを判定し、その判定結果を出力する。
【００８８】
即ち、所定のモデル画像２１−Ｋについての相関和画像のうちの、シフト相関画像の生成時のシフト位置（後述する例では中央付近の位置）の画素値が、相関和画像のローカルピークとなる。そして、かかるローカルピークが、モデル画像２１−Ｋに含まれる物体が、クエリ画像２２においてどの程度の割合で存在するのかを示す存在推定度を表すことになる。よって、判定部５５は、モデル画像２１−Ｋの相関和画像のローカルピークが閾値以上の場合、モデル画像２１−Ｋに含まれる物体がクエリ画像２２に含まれる画像と一致すると判定すること、即ち、その物体を認識することができる。
【００８９】
以下、図１２乃至図１６を参照して、クエリ画像認識部１３の動作のうちの、主に相関画像生成部５２乃至相関画像和生成部５４の動作について説明する。
【００９０】
即ち、図１３乃至図１６は、図１２（Ａ）の画像がクエリ画像２２として入力された場合における、図１２（Ｂ）のモデル画像２１との相関和画像が生成されるまでの各種処理結果の具体例を示している。
【００９１】
図１３の例では、モデル画像２１の特徴量情報として、４つのベース点b1乃至b4の特徴量のみが利用されて、相関和画像が生成される。換言すると、図１３の例では、後述する他の例のように、サポート点の情報や、識別能力値は一切利用されない。なお、ベース点b1乃至b4は例示にしか過ぎず、ベース点の位置や個数は図１３の例に限定されず任意であることは言うまでもない。
【００９２】
図１３のステップＳ１３１において、相関画像生成部５２は、クエリ画像２２の特徴量画像の各画素値（即ち、各画素の特徴量）と、モデル画像２１のベース点b1乃至b4の各特徴量とのマッチングを行うことで、図１３のＳ１３１の枠内に示されるような４つの相関画像を生成する。
【００９３】
ステップＳ１３２において、シフト相関画像生成部５３は、各ベース点b1乃至b4の位置に応じて、それぞれ対応する相関画像の各画素位置をシフトさせることで、図１３のＳ１３２の枠内に示されるような４つのシフト相関画像を生成する。
【００９４】
図１３の例のシフト相関画像は、モデル画像２１におけるベース点bn（nは整数値であって、図１３の例ではnは１乃至４のうちの何れかの値）の存在位置（相関画像の対応画素位置）が、画像の中央位置にシフトするように、相関画像の各画素位置がシフトされた結果得られる画像となっている。
【００９５】
ステップＳ１３３において、相関画像和生成部５４は、これらの４つのシフト相関画像を単純に足し合わせることで、図１３のＳ１３３の枠内に示されるような相関和画像を生成する。なお、「足し合わせるとは」、上述の如く、各画素毎に、各画素値を足し合わせることを意味する。このことは、以下の説明でも同様である。
【００９６】
このような図１３の例に対して、図１４の例では、モデル画像２１の特徴量情報として、４つのベース点b1乃至b4の特徴量に加えて、それらの識別能力値に基づく重み値α１乃至α４が利用されて、相関和画像が生成される。
【００９７】
即ち、ステップＳ１４１において、相関画像生成部５２は、クエリ画像２２の特徴量画像の各画素値（即ち、各画素の特徴量）と、モデル画像２１のベース点b1乃至b4の各特徴量とのマッチングを行うことで、図１４のＳ１４１の枠内に示されるような４つの相関画像を生成する。
【００９８】
なお、図１４のＳ１４１の枠内に示される４つの相関画像とは、図１３のＳ１３１の枠内に示される４つの相関画像と同一である。即ち、ステップＳ１４１の処理とステップＳ１３１の処理とは同様の処理である。
【００９９】
ステップＳ１４２の処理では、シフト相関画像の生成処理が実行される。ただし、ステップＳ１４２の処理は、図１３のステップＳ１３２の処理とは異なる。
【０１００】
即ち、ステップＳ１４２−１において、シフト相関画像生成部５３は、各ベース点b1乃至b4の位置に応じて、それぞれ対応する相関画像の各画素位置をシフトさせることで、図１４のＳ１４２−１の点線枠内に示されるような４つのシフト相関画像を生成する。
【０１０１】
なお、図１４のＳ１４２−１の点線枠内に示される４つのシフト相関画像とは、図１３のＳ１３２の枠内に示される４つのシフト相関画像と同一である。即ち、ステップＳ１４２−１の処理とは、図１３のステップＳ１３２の処理と同様の処理である。
【０１０２】
換言すると、ステップＳ１４２の処理とは、図１３のステップＳ１３２（＝ステップＳ１４２−１）の処理に加えて、さらに次のようなステップＳ１４２−２の処理が付加された処理であるといる。なお、ステップＳ１４２−２の処理で最終的に得られるシフト相関画像と、ステップＳ１４２−１の処理の結果得られるシフト相関画像とを個々に区別すべく、以下、前者を重みつきシフト相関画像と称し、後者を単純シフト相関画像と称する。
【０１０３】
即ち、ステップＳ１４２−１の処理では、図１４のＳ１４２−１の点線枠内に示される４つの単純シフト相関画像が生成される。そこで、ステップＳ１４２−２において、シフト相関画像生成部５３は、各ベース点b1乃至b4のそれぞれに対応する各単純シフト相関画像の各画素値に対して、各ベース点b1乃至b4の識別能力値に基づく重み値α1乃至α4をそれぞれ掛けることで、識別能力値に応じた重み付けがなされた各画素値により構成される画像、即ち、図１４のＳ１４２−２の点線枠内に示されるような４つの重みつきシフト相関画像を生成する。
【０１０４】
ステップＳ１４３において、相関画像和生成部５４は、これらの４つの重みつきシフト相関画像を単純に足し合わせることで、図１４のＳ１４３の枠内に示されるような相関和画像を生成する。
【０１０５】
このような図１３，図１４の例に対して、図１５の例では、モデル画像２１の特徴量情報として、４つのベース点b1乃至b4の特徴量に加えてさらに、各ベース点b1乃至b4のサポート点の情報が利用されて、相関和画像が生成される。ただし、図１５の例では、図１４の例のように、識別能力値に基づく重み値α１乃至α４は利用されない。
【０１０６】
ステップＳ１５１の処理では、相関画像の生成処理が実行される。ただし、ステップＳ１５１の処理は、図１３のステップＳ１３１や図１４のステップＳ１４１の処理とは異なる。
【０１０７】
即ち、ステップＳ１５２−１において、相関画像生成部５２は、クエリ画像２２の特徴量画像の各画素値（即ち、各画素の特徴量）と、モデル画像２１のベース点b1乃至b4の各特徴量とのマッチングを行うことで、図１５のＳ１５１−１の枠内に示されるような４つの相関画像を生成する。
【０１０８】
なお、図１５のＳ１５１−１の枠内に示される４つの相関画像とは、図１３のＳ１３１の枠内に示される４つの相関画像と同一、即ち図１４のＳ１４１の枠内に示される４つの相関画像と同一である。即ち、ステップＳ１５１−１の処理とは、図１３のステップＳ１３１や図１４のステップＳ１４１の処理と同様の処理である。
【０１０９】
換言すると、ステップＳ１５１の処理とは、図１３のステップＳ１３１（＝図１４のステップＳ１４１＝図１５のステップＳ１５１−１）の処理に加えて、さらに次のようなステップＳ１５１−２，Ｓ１５１−３の処理が付加された処理であるといる。なお、以下、各ステップＳ１５１−１乃至Ｓ１５１−３の各処理の結果得られる相関画像を個々に区別すべく、ステップＳ１５１−１の処理の結果得られる相関画像をベース点相関画像と称し、ステップＳ１５１−２の処理の結果得られる相関画像をサポート点シフト相関画像と称し、ステップＳ１５１−３の処理の結果得られる相関画像を、ベース点bnを中心としたサポート点シフト相関画像和と称する。
【０１１０】
即ち、ステップＳ１５１−１の処理では、図１５のＳ１５１−１の点線枠内に示される４つのベース点相関画像が生成される。
【０１１１】
ステップＳ１５１−２において、相関画像生成部５２は、モデル画像２１のベース点bnについて、クエリ画像２２の特徴量画像の各画素値（即ち、各画素の特徴量）と、ベース点bnにおけるサポート点snm（mは、１以上の整数値）の各特徴量とのマッチングをそれぞれ行うことで、m個の相関画像を生成する。さらに、相関画像生成部５２は、サポート点snmの存在位置（相関画像の対応画素位置）を、ベース点bnの存在位置（相関画像の対応画素位置）にシフトすることで、ベース点b1乃至b4のそれぞれについて、図１５のＳ１５１−２の枠内に示されるようなm個のサポート点シフト相関画像をそれぞれ生成する。
【０１１２】
即ち、ベース点b1には、2個のサポート点s11，s12が存在する。よって、サポート点s11についてのサポート点シフト相関画像と、サポート点s12についてのサポート点シフト相関画像が生成される。
【０１１３】
以下同様に、ベース点b2には、3個のサポート点s21，s22，s23が存在する。よって、サポート点s21についてのサポート点シフト相関画像、サポート点s22についてのサポート点シフト相関画像、および、サポート点s23についてのサポート点シフト相関画像が生成される。
【０１１４】
ベース点b3には、2個のサポート点s31，s32が存在する。よって、サポート点s31についてのサポート点シフト相関画像と、サポート点s32についてのサポート点シフト相関画像が生成される。
【０１１５】
ベース点b4には、1個のサポート点s41が存在する。よって、サポート点s41についてのサポート点シフト相関画像が生成される。
【０１１６】
ステップＳ１５１−３において、相関画像生成部５２は、モデル画像２１のベース点bnについて、対応するベース点相関画像（ステップＳ１５１−１の処理の結果得られる画像）と、対応するm個のサポート点シフト相関画像（ステップＳ１５１−２の処理の結果得られる画像）を単純に足し合わせることで、図１５のＳ１５１−３の枠内に示されるような、ベース点bnを中心としたサポート点シフト相関画像和を生成する。
【０１１７】
即ち、ベース点b1については、ベース点b1についてのベース点相関画像、並びに、サポート点s11についてのサポート点シフト相関画像およびサポート点s12についてのサポート点シフト相関画像が足し合わされ、その結果、ベース点b1を中心としたサポート点シフト相関画像和が生成される。
【０１１８】
以下同様に、ベース点b2については、ベース点b2についてのベース点相関画像、並びに、サポート点s21についてのサポート点シフト相関画像、サポート点s22についてのサポート点シフト相関画像、および、サポート点s23についてのサポート点シフト相関画像が足し合わされ、その結果、ベース点b2を中心としたサポート点シフト相関画像和が生成される。
【０１１９】
ベース点b3については、ベース点b3についてのベース点相関画像、並びに、サポート点s31についてのサポート点シフト相関画像およびサポート点s32についてのサポート点シフト相関画像が足し合わされ、その結果、ベース点b3を中心としたサポート点シフト相関画像和が生成される。
【０１２０】
ベース点b4については、ベース点b4についてのベース点相関画像、並びに、サポート点s41についてのサポート点シフト相関画像が足し合わされ、その結果、ベース点b4を中心としたサポート点シフト相関画像和が生成される。
【０１２１】
その後のステップＳ１５２，Ｓ１５３の処理は、図１３のステップＳ１３２，Ｓ１３３の処理と基本的に同様の処理が実行される。ただし、図１３のステップＳ１３２の処理対象は、図１５のステップＳ１５１−１の処理結果であるベース点相関画像となっていた。これに対して、図１５のステップＳ１５２の処理対象は、上述の如く、図１５のステップＳ１５１−１の処理結果であるベース点相関画像に対して、ステップＳ１５１−２の処理結果であるサポート点シフト相関画像が足し合わされた結果得られる画像、即ち、ベース点を中心としたサポート点シフト相関画像和である。
【０１２２】
図１６の例は、図１４の例と図１５の例とを組み合わせた例である。即ち、図１６の例では、モデル画像２１の特徴量情報として、４つのベース点b1乃至b4の特徴量に加えて、それらの識別能力値に基づく重み値α１乃至α４と、各ベース点b1乃至b4のサポート点の情報との両者が利用されて、相関和画像が生成される。
【０１２３】
換言すると、図１６のステップＳ１６１の処理が、図１５のステップＳ１５１の処理と同様の処理である。即ち、図１６のステップＳ１６１−１乃至Ｓ１６１−３のそれぞれが、図１５のステップＳ１５１−１乃至Ｓ１５１−３のそれぞれと同様の処理である。
【０１２４】
一方、図１６のステップＳ１６２の処理が、図１４のステップＳ１４２の処理と同様の処理である。即ち、図１６のステップＳ１６２−１，Ｓ１６２−２のそれぞれが、図１４のステップＳ１４１−１，Ｓ１４１−２のそれぞれと同様の処理である。
【０１２５】
式で表すと、図１６のステップＳ１６１の処理結果は、次の式（１）のように表される。
【０１２６】
【数１】
0004873258.tif 000002
・・・（１）
【０１２７】
式（１）の左辺のSumSpCorbn(x,y)が、ベース点bnを中心としたサポート点シフト相関画像和の座標（x,y）における画素値を示している。なお、nは、図１６の例では１乃至4のうちの何れかの値とされているが、任意の整数値に一般化できることはいうまでもない。
【０１２８】
また、式（１）の右辺において、Corsnm(x,y)が、サポート点snmの相関画像の(x,y)における画素値を示している。mbnは、ベース点bnにおけるサポート点の数を示している。即ち、図１６の例では、mb1＝２，mb2＝３，mb3＝２，mb4＝１とされている。(bxn，byn)は、ベース点bnの座標を示している。(snxm，snym)は、サポート点snmの座標を示している。
【０１２９】
そして、図１６のステップＳ１６３の最終的な処理結果は、次の式（２）のように表される。即ち、式（２）の右辺のΣ内の式が、図１６のステップＳ１６２の処理結果を示している。
【０１３０】
【数２】
0004873258.tif 000003
・・・（２）
【０１３１】
式（２）の左辺のSumCor(x,y)が、ステップＳ１６３の処理の結果得られる相関和画像の座標（x,y）における画素値を示している。
【０１３２】
また、式（２）の右辺において、(cx,cy)が、モデル画像２１の中心座標を示している。
【０１３３】
以上説明したように、本発明を適用することで、モデル画像と、クエリ画像の特徴点抽出のリピータビリティーを考慮する必要がなくなり、よりロバストな認識が可能になる。
【０１３４】
また、相関画像和の所定画素値（例えば中央付近の画素値）、即ち、相関値の総和の値が、物体の存在推定度を表すので、この値を比較することにより、どの物体がどれ位の確率で存在しているかが分かるようになる。
【０１３５】
また、自分のモデル画像の他の部分や、他のモデル画像との相関具合を考慮して、特徴量の識別能力値を演算し、その識別能力値に基づいてサポート点の選択もできるので、マッチングの精度が向上する。
【０１３６】
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【０１３７】
図１７は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータの構成の例を示すブロック図である。CPU（Central Processing Unit）２０１は、ROM（Read Only Memory）２０２、または記憶部２０８に記憶されているプログラムに従って各種の処理を実行する。RAM（Random Access Memory）２０３には、CPU２０１が実行するプログラムやデータなどが適宜記憶される。これらのCPU２０１、ROM２０２、およびRAM２０３は、バス２０４により相互に接続されている。
【０１３８】
CPU２０１にはまた、バス２０４を介して入出力インターフェース２０５が接続されている。入出力インターフェース２０５には、キーボード、マウス、マイクロフォンなどよりなる入力部２０６、ディスプレイ、スピーカなどよりなる出力部２０７が接続されている。CPU２０１は、入力部２０６から入力される指令に対応して各種の処理を実行する。そして、CPU２０１は、処理の結果を出力部２０７に出力する。
【０１３９】
入出力インターフェース２０５に接続されている記憶部２０８は、例えばハードディスクからなり、CPU２０１が実行するプログラムや各種のデータを記憶する。通信部２０９は、インターネットやローカルエリアネットワークなどのネットワークを介して外部の装置と通信する。
【０１４０】
また、通信部２０９を介してプログラムを取得し、記憶部２０８に記憶してもよい。
【０１４１】
入出力インターフェース２０５に接続されているドライブ２１０は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア２１１が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記憶部２０８に転送され、記憶される。
【０１４２】
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム記録媒体は、図１７に示されるように、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む）、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア２１１、または、プログラムが一時的もしくは永続的に格納されるROM２０２や、記憶部２０８を構成するハードディスクなどにより構成される。プログラム記録媒体へのプログラムの格納は、必要に応じてルータ、モデムなどのインターフェースである通信部２０９を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
【０１４３】
なお、本明細書において、プログラム記録媒体に格納されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０１４４】
また、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。例えば、以上においては、本発明を物体認識装置に適用した実施の形態について説明したが、本発明は、例えば、画像内の物体を比較し認識する情報処理装置に適用することができる。
【図面の簡単な説明】
【０１４５】
【図１】本発明の一実施の形態である物体認識装置の機能の構成を示すブロック図である。
【図２】図１のモデル特徴量抽出部の機能の詳細な構成を示すブロック図である。
【図３】図２の特徴点抽出部の処理結果の具体例を示す図である。
【図４】図２の特徴点抽出部の処理結果の具体例を示す図である。
【図５】図２の特徴量記述部の処理手法の例を説明する図である。
【図６】図２の特徴点識別能力値演算部の処理例を説明するフローチャートである。
【図７】図６の処理結果の具体例を示す図である。
【図８】図６の処理結果の具体例を示す図である。
【図９】図２のサポート点選択部によるサポート点選択処理例を説明するフローチャートである。
【図１０】図９の処理結果の具体例を示す図である。
【図１１】図１のクエリ画像認識部の機能の詳細な構成を示すブロック図である。
【図１２】図１１のクエリ画像認識部の処理を説明するためのモデル画像とクエリ画像の具体例を示す図である。
【図１３】図１１のクエリ画像認識部の処理結果の具体例を示す図である。
【図１４】図１１のクエリ画像認識部の処理結果の具体例を示す図である。
【図１５】図１１のクエリ画像認識部の処理結果の具体例を示す図である。
【図１６】図１１のクエリ画像認識部の処理結果の具体例を示す図である。
【図１７】パーソナルコンピュータの構成の例を示すブロック図である。
【符号の説明】
【０１４６】
１１  モデル特徴量抽出部，  １２  モデル特徴量辞書，  １３  クエリ画像認識部，  ２１  モデル画像２１  クエリ画像，  ３１  特徴点抽出部，  ３２  特徴量記述部，  ３３  特徴点識別能力値演算部，  ３４  サポート点選択部，  ５１  特徴画像生成部，  ５２  相関画像生成部，  ５３  シフト相関画像生成部，  ５４  相関画像和生成部，  ５５  判定部， ２０１  ＣＰＵ，  ２０２  ＲＯＭ，  ２０３  ＲＡＭ，  ２０８  記憶部，  ２１１  リムーバブルメディア
【図１】
0004873258.tif 000004
【図２】
0004873258.tif 000005
【図３】
0004873258.tif 000006
【図４】
0004873258.tif 000007
【図５】
0004873258.tif 000008
【図６】
0004873258.tif 000009
【図７】
0004873258.tif 000010
【図８】
0004873258.tif 000011
【図９】
0004873258.tif 000012
【図１０】
0004873258.tif 000013
【図１１】
0004873258.tif 000014
【図１２】
0004873258.tif 000015
【図１３】
0004873258.tif 000016
【図１４】
0004873258.tif 000017
【図１５】
0004873258.tif 000018
【図１６】
0004873258.tif 000019
【図１７】
0004873258.tif 000020