(57)【要約】【課題】  移動体に対して、１つの物体により、複数の方向を認識させる。【解決手段】  方向認識装置は、撮像部と、登録画像と該登録画像に対応付けられた方向情報とが複数登録された登録画像データベースと、撮像部によりポール１００を撮像した入力画像が入力され、データベースを参照し、入力画像に含まれる方向認識用部材に一致又は類似すると判断された登録画像を抽出する画像認識部と、画像認識部にて選択された登録画像に対応付けられた方向情報に基づき方向を認識して出力する方向認識部とを有する。ポール１００の側面を周方向にＮ分割したＮ分割部分側面ＳＮに対して異なるＮの方向情報を設定してデータベースに登録する場合、方向情報を示す表示面となるＮ分割部分側面ＳＮより、広い範囲を方向認識用領域ＡＳＮとし登録画像とする。【選択図】  図２
2005078375.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも異なるＮ（Ｎ≧２）の方向を認識させるための方向認識用部材を使用して方向認識する方向認識装置であって、
上記Ｎの方向を識別するためのＮ個の登録画像と、各登録画像に対応付けられた方向情報とが登録された記憶手段と、
上記方向認識用部材を任意の方向から撮像した入力画像と、上記Ｎ個の登録画像とを比較し、該入力画像に含まれる方向認識用部材に一致又は類似すると判断した登録画像を抽出する画像認識手段と、
上記抽出した登録画像に対応付けられた方向情報に基づき、上記撮像した方向を認識する方向認識手段とを有し、
上記方向認識用部材は、異なるＮの各方向から識別可能な表示面を有する
ことを特徴とする方向認識装置。
【請求項２】
上記登録画像は、上記方向認識用部材の表面を上記Ｎの方向に応じて分割したＮ分割部分表面を含み該Ｎ分割部分表面より広い表面を識別するための画像であり、
上記方向情報は、上記Ｎの方向に応じて設定される
ことを特徴とする請求項１記載の方向認識装置。
【請求項３】
上記登録画像は、上記方向認識用部材の外周を３６０°に対応させたとき、３６０°／Ｎに対応させた表面より大きい表面を識別するための画像である
ことを特徴とする請求項２記載の方向認識装置。
【請求項４】
上記方向認識用部材は、その表面に周期性がないパターンを有する
ことを特徴とする請求項２記載の方向認識装置。
【請求項５】
各登録画像は、上記表面のパターンを示すパターンデータから、一のＮ分割部分表面を含み且つ当該一のＮ分割部分表面より大きい領域となるように切り出された画像である
ことを特徴とする請求項４記載の方向認識装置。
【請求項６】
各登録画像は、上記Ｎの方向のうち一の方向から上記方向認識用部材を撮像した撮像画像である
ことを特徴とする請求項１記載の方向認識装置。
【請求項７】
上記方向認識用部材は、柱状体であり、
上記登録画像は、上記柱状体の側面を周方向にＮ分割したＮ分割部分側面を含み且つＮ分割部分側面より大きい側面を識別するための画像である
ことを特徴とする請求項２記載の方向認識装置。
【請求項８】
上記画像認識手段は、上記入力画像及び上記登録画像の各々から特徴点を抽出する特徴点抽出手段と、上記入力画像及び上記登録画像の各々について、少なくとも上記特徴点の近傍領域における濃度勾配情報から得られる濃度勾配方向ヒストグラムを特徴量として抽出して保持する特徴量保持手段と、上記入力画像の各特徴点と上記登録画像の各特徴点とを比較し、比較対象となる特徴点同士の上記濃度勾配方向ヒストグラムの一方を濃度勾配方向に巡回的にシフトさせながら求めた該濃度勾配方向ヒストグラム間の距離の最小を該濃度勾配方向ヒストグラム間の最小距離とし、少なくとも該最小距離が所定の閾値以下となる特徴点ペアを候補対応特徴点ペアとして生成する特徴量比較手段と、上記候補対応特徴点ペアを用いて上記入力画像に含まれる方向認識用部材に一致又は類似する登録画像の有無を検出する推定手段とを有する
ことを特徴とする請求項２記載の方向認識装置。
【請求項９】
少なくとも異なるＮ（Ｎ≧２）の方向を認識させるための方向認識用部材を使用して方向認識する方向認識装置であって、
上記Ｎの方向を識別するためのＮ個の登録領域を有する登録画像と、各登録領域に対応付けられた方向情報とが登録された記憶手段と、
上記方向認識用部材を任意の方向から撮像した入力画像と、上記Ｎ個の登録領域とを比較し、該入力画像に含まれる方向認識用部材に一致又は類似すると判断した登録領域を抽出する画像認識手段と、
上記抽出した登録領域に対応付けられた方向情報に基づき、上記撮像した方向を認識する方向認識手段とを有し、
上記方向認識用部材は、異なるＮの各方向から識別可能な表示面を有する
ことを特徴とする方向認識装置。
【請求項１０】
少なくとも異なるＮ（Ｎ≧２）の方向を認識させるための方向認識用部材を使用して方向認識する方向認識方法であって、
記憶手段に登録された、方向情報が対応付けられ上記Ｎの方向を識別するためのＮ個の登録画像と、上記方向認識用部材を任意の方向から撮像した入力画像とを比較し、該入力画像に含まれる方向認識用部材に一致又は類似すると判断した登録画像を抽出する画像認識工程と、
上記抽出した登録画像に対応付けられた方向情報に基づき、上記撮像した方向を認識する方向認識工程とを有し、
上記方向認識用部材は、異なるＮの各方向から識別可能な表示面を有する
ことを特徴とする方向認識方法。
【請求項１１】
上記登録画像は、上記方向認識用部材の表面を、上記Ｎの方向に応じて分割したＮ分割部分表面を含み該Ｎ分割部分表面より広い表面を識別するための画像であり、
上記方向情報は、上記Ｎの方向に応じて設定される
ことを特徴とする請求項１０記載の方向認識方法。
【請求項１２】
上記登録画像は、上記方向認識用部材の外周を３６０°に対応させたとき、３６０°／Ｎに対応させた表面より大きい表面を識別するための画像である
ことを特徴とする請求項１０記載の方向認識方法。
【請求項１３】
上記方向認識用部材は、その表面に周期性がないパターンを有する
ことを特徴とする請求項１１記載の方向認識方法。
【請求項１４】
各登録画像は、上記表面のパターンを示すパターンデータから、一のＮ分割部分表面を含み且つ当該一のＮ分割部分表面より大きい領域となるように切り出された画像である
ことを特徴とする請求項１３記載の方向認識方法。
【請求項１５】
上記登録画像は、設定される方向情報が示す方向から上記方向認識用部材を撮像した撮像画像である
ことを特徴とする請求項１０記載の方向認識方法。
【請求項１６】
少なくとも異なるＮ（Ｎ≧２）の方向を認識させるための方向認識用部材を使用して方向認識する方向認識方法であって、
記憶手段に登録された、方向情報が対応付けられ上記Ｎの方向を識別するためのＮ個の登録領域と、上記方向認識用部材を任意の方向から撮像した入力画像とを比較し、該入力画像に含まれる方向認識用部材に一致又は類似すると判断した登録領域を抽出する画像認識工程と、
上記抽出した登録領域に対応付けられた方向情報に基づき、上記撮像した方向を認識する方向認識工程とを有し、
上記方向認識用部材は、異なるＮの各方向から識別可能な表示面を有する
ことを特徴とする方向認識方法。
【請求項１７】
少なくとも異なるＮ（Ｎ≧２）の方向を認識させるための方向認識用部材と、
上記方向認識用部材を使用して方向認識する方向認識装置とを有し、
上記方向認識用部材は、異なるＮの各方向から識別可能な表示面を有し、
上記方向認識装置は、
上記Ｎの方向を識別するためのＮ個の登録画像と、各登録画像に対応付けられた方向情報とが登録された記憶手段と、
上記方向認識用部材を任意の方向から撮像した入力画像と、上記Ｎ個の登録画像とを比較し、該入力画像に含まれる方向認識用部材に一致又は類似すると判断した登録画像を抽出する画像認識手段と、
上記抽出した登録画像に対応付けられた方向情報に基づき、上記撮像した方向を認識する方向認識手段とを有する
ことを特徴とする方向認識システム。
【請求項１８】
少なくとも異なるＮ（Ｎ≧２）の方向を認識させるための方向認識用部材と、
上記方向認識用部材を使用して方向認識する方向認識装置とを有し、
上記方向認識用部材は、異なるＮの各方向から識別可能な表示面を有し、
上記方向認識装置は、
上記Ｎの方向を識別するためのＮ個の登録領域を有する登録画像と、各登録領域に対応付けられた方向情報とが登録された記憶手段と、
上記方向認識用部材を任意の方向から撮像した入力画像と、上記Ｎ個の登録領域とを比較し、該入力画像に含まれる方向認識用部材に一致又は類似すると判断した登録領域を抽出する画像認識手段と、
上記抽出した登録領域に対応付けられた方向情報に基づき、上記撮像した方向を認識する方向認識手段とを有する
ことを特徴とする方向認識システム。
【請求項１９】
少なくとも異なるＮ（Ｎ≧２）の方向を認識させるための方向認識用部材を使用して方向認識する方向認識装置を搭載し自律的に動作するロボット装置であって、
上記方向認識装置は、
上記Ｎの方向を識別するためのＮ個の登録画像と、各登録画像に対応付けられた方向情報とが登録された記憶手段と、
上記方向認識用部材を任意の方向から撮像した入力画像と、上記Ｎ個の登録画像とを比較し、該入力画像に含まれる方向認識用部材に一致又は類似すると判断した登録画像を抽出する画像認識手段と、
上記抽出した登録画像に対応付けられた方向情報に基づき、上記撮像した方向を認識する方向認識手段とを有し、
上記方向認識用部材は、異なるＮの各方向から識別可能な表示面を有する
ことを特徴とするロボット装置。
【請求項２０】
上記登録画像は、上記方向認識用部材の表面を上記Ｎの方向に応じて分割したＮ分割部分表面を含み該Ｎ分割部分表面より広い表面を識別するための画像であり、
上記方向情報は、上記Ｎの方向に応じて設定される
ことを特徴とする請求項１９記載のロボット装置。
【請求項２１】
少なくとも異なるＮ（Ｎ≧２）の方向を認識させるための方向認識用部材を使用して方向認識する方向認識装置を搭載し自律的に動作するロボット装置において、
上記方向認識装置は、
上記Ｎの方向を識別するためのＮ個の登録領域を有する登録画像と、各登録領域に対応付けられた方向情報とが登録された記憶手段と、
上記方向認識用部材を任意の方向から撮像した入力画像と、上記Ｎ個の登録領域とを比較し、該入力画像に含まれる方向認識用部材に一致又は類似すると判断した登録領域を抽出する画像認識手段と、
上記抽出した登録領域に対応付けられた方向情報に基づき、上記撮像した方向を認識する方向認識手段とを有し、
上記方向認識用部材は、異なるＮの各方向から識別可能な表示面を有する
ことを特徴とするロボット装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、方向認識用部を使用して入力画像から方向を認識する方向認識装置及び方法、方向認識用部材と方向認識装置とからなる方向認識システム、並びに方向認識装置を搭載したロボット装置に関する。
【背景技術】
【０００２】
電気的又は磁気的な作用を用いて人間（生物）の動作に似た運動を行う機械装置を「ロボット」という。我が国においてロボットが普及し始めたのは、１９６０年代末からであるが、その多くは、工場における生産作業の自動化・無人化等を目的としたマニピュレータ及び搬送ロボット等の産業用ロボット（Industrial Robot）であった。
【０００３】
最近では、人間のパートナーとして生活を支援する、すなわち住環境その他の日常生活上の様々な場面における人的活動を支援する実用ロボットの開発が進められている。このような実用ロボットは、産業用ロボットとは異なり、人間の生活環境の様々な局面において、個々に個性の相違した人間、又は様々な環境への適応方法を自ら学習する能力を備えている。例えば、犬又は猫のように４足歩行の動物の身体メカニズム及びその動作を模した「ペット型」ロボット、或いは、２足直立歩行を行う人間等の身体メカニズム及びその動作をモデルにしてデザインされた「人間型」又は「人間形」ロボット（Humanoid Robot）等のロボット装置は、既に実用化されつつある。
【０００４】
これらのロボット装置は、産業用ロボットと比較して、例えばエンターテインメント性を重視した様々な動作等を行うことができるため、エンターテインメントロボットと呼称される場合もある。また、そのようなロボット装置には、ＣＣＤ（Charge  Coupled Device）カメラ及びマイクロホン等の各種外部センサが搭載され、これら外部センサの出力に基づいて外部状況を認識して、外部からの情報及び内部の状態に応じて自律的に動作するものがある。
【０００５】
例えば、ユーザの顔を認識したり、障害物を認識してこれをよけたり、対象物を発見して近寄ったりと、様々な知能的な行動を自律的に実行するようになされており、このために、ロボット装置には、ランドマーク等を使用してカメラにより取得した入力画像から自己位置を同定することができるものがある。このような技術として、ロボット装置の位置検出装置が例えば下記特許文献１に記載されている。この特許文献１に記載の位置検出装置は、移動するロボット装置の位置を検出するものであって、ある領域内に予め異なる配色のポール等からなる標識を３つ配置しておく。これをロボット装置が撮像して各標識の位置関係から、ロボット装置自身の位置を算出することにより、位置検出するものである。
【０００６】
【特許文献１】特開平１０−１０９２９０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、このような位置検出方法では、位置を検出するために複数の標識を用意し、且つそれらの位置関係を把握して位置を算出する必要がある。従って、例えば１つの標識の認識に失敗したりすることで正確な位置を算出することができなくなってしまったり、全ての標識を認識し更に位置を算出するため、位置検出するための処理時間が長くかかってしまったり、ロボット装置の移動範囲内に複数の標識を配置するための領域が必要になってしまう等、エンターテイメント用のロボット装置には不向きである。
【０００８】
本発明は、このような従来の実情に鑑みて提案されたものであり、移動体に複数の方向を認識させることができる方向認識用部材を使用することで、複数の方向を認識することができる方向認識装置、方向認識方法、及び方向認識システム、並びにそのような方向認識装置を搭載したロボット装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上述した目的を達成するために、本発明に係る方向認識装置は、少なくとも異なるＮ（Ｎ≧２）の方向を認識させるための方向認識用部材を使用して方向認識する方向認識装置であって、上記Ｎの方向を識別するためのＮ個の登録画像と、各登録画像に対応付けられた方向情報とが登録された記憶手段と、上記方向認識用部材を任意の方向から撮像した入力画像と、上記Ｎ個の登録画像とを比較し、該入力画像に含まれる方向認識用部材に一致又は類似すると判断した登録画像を抽出する画像認識手段と、上記抽出した登録画像に対応付けられた方向情報に基づき、上記撮像した方向を認識する方向認識手段とを有し、上記方向認識用部材は、異なるＮの各方向から識別可能な表示面を有することを特徴とする。
【００１０】
本発明においては、異なるＮの各方向から認識可能な表示面を有する方向認識用部材を撮像した入力画像と、予め用意した方向情報に対応づけた登録画像と比較することで、入力画像から方向認識用部材の撮像方向を認識することができ、これにより、１つの物体である方向認識用部材により、Ｎ以上の複数の方向を認識することができる。
【００１１】
また、上記登録画像は、上記方向認識用部材の表面を上記Ｎの方向に応じて分割したＮ分割部分表面を含み該Ｎ分割部分表面より広い表面を識別するための画像であり、上記方向情報は、上記Ｎの方向に応じて設定することができ、例えば外周を３６０°に対応させたとき、３６０°／Ｎに対応させた表面より大きい表面を識別するための画像とすることにより、登録画像を、Ｎ分割部分表面より大きい表面とすることで、方向認識率を向上し、正確に方向認識することができる。
【００１２】
更に、上記方向認識用部材は、その表面に周期性がないパターンを有するものとすることができ、各登録画像は、各登録画像は、上記表面のパターンを示すパターンデータから、一のＮ分割部分表面を含み且つ当該一のＮ分割部分表面より大きい領域となるように切り出された画像、又は設定される方向情報が示す方向から上記方向認識用部材を撮像した撮像画像とすることができる。
【００１３】
更にまた、上記方向認識用部材は、柱状体であり、上記登録画像は、上記柱状体の側面を周方向にＮ分割したＮ分割部分側面を含み且つＮ分割部分側面より大きい側面を識別するための画像とすることができ、方向認識用部材が柱状体であれば設置しやすい。
【００１４】
本発明に係る他の方向認識装置は、少なくとも異なるＮ（Ｎ≧２）の方向を認識させるための方向認識用部材を使用して方向認識する方向認識装置であって、上記Ｎの方向を識別するためのＮ個の登録領域を有する登録画像と、各登録領域に対応付けられた方向情報とが登録された記憶手段と、上記方向認識用部材を任意の方向から撮像した入力画像と、上記Ｎ個の登録領域とを比較し、該入力画像に含まれる方向認識用部材に一致又は類似すると判断した登録領域を抽出する画像認識手段と、上記抽出した登録領域に対応付けられた方向情報に基づき、上記撮像した方向を認識する方向認識手段とを有し、上記方向認識用部材は、異なるＮの各方向から識別可能な表示面を有することを特徴とする。
【００１５】
本発明においては、例えば方向認識用部材の撮像可能な範囲全体を登録画像としておき、その一部分の領域毎に方向情報を対応付けることにより、画像認識手段により、任意の方向から撮像した方向認識用部材と一致又は類似すると判断した登録領域を抽出することで方向を認識することができる。
【００１６】
本発明に係る方向認識方法は、少なくとも異なるＮ（Ｎ≧２）の方向を認識させるための方向認識用部材を使用して方向認識する方向認識方法であって、記憶手段に登録された、方向情報が対応付けられ上記Ｎの方向を識別するためのＮ個の登録画像と、上記方向認識用部材を任意の方向から撮像した入力画像とを比較し、該入力画像に含まれる方向認識用部材に一致又は類似すると判断した登録画像を抽出する画像認識工程と、上記抽出した登録画像に対応付けられた方向情報に基づき、上記撮像した方向を認識する方向認識工程とを有し、上記方向認識用部材は、異なるＮの各方向から識別可能な表示面を有することを特徴とする。
【００１７】
本発明に係る他の方向認識方法は、少なくとも異なるＮ（Ｎ≧２）の方向を認識させるための方向認識用部材を使用して方向認識する方向認識方法であって、記憶手段に登録された、方向情報が対応付けられ上記Ｎの方向を識別するためのＮ個の登録領域と、上記方向認識用部材を任意の方向から撮像した入力画像とを比較し、該入力画像に含まれる方向認識用部材に一致又は類似すると判断した登録領域を抽出する画像認識工程と、上記抽出した登録領域に対応付けられた方向情報に基づき、上記撮像した方向を認識する方向認識工程とを有し、上記方向認識用部材は、異なるＮの各方向から識別可能な表示面を有することを特徴とする。
【００１８】
本発明に係る方向認識システムは、少なくとも異なるＮ（Ｎ≧２）の方向を認識させるための方向認識用部材と、上記方向認識用部材を使用して方向認識する方向認識装置とを有し、上記方向認識用部材は、異なるＮの各方向から識別可能な表示面を有し、上記方向認識装置は、上記Ｎの方向を識別するためのＮ個の登録画像と、各登録画像に対応付けられた方向情報とが登録された記憶手段と、上記方向認識用部材を任意の方向から撮像した入力画像と、上記Ｎ個の登録画像とを比較し、該入力画像に含まれる方向認識用部材に一致又は類似すると判断した登録画像を抽出する画像認識手段と、上記抽出した登録画像に対応付けられた方向情報に基づき、上記撮像した方向を認識する方向認識手段とを有することを特徴とする。
【００１９】
本発明に係る他の方向認識システムは、少なくとも異なるＮ（Ｎ≧２）の方向を認識させるための方向認識用部材と、上記方向認識用部材を使用して方向認識する方向認識装置とを有し、上記方向認識用部材は、異なるＮの各方向から識別可能な表示面を有し、上記方向認識装置は、上記Ｎの方向を識別するためのＮ個の登録領域を有する登録画像と、各登録領域に対応付けられた方向情報とが登録された記憶手段と、上記方向認識用部材を任意の方向から撮像した入力画像と、上記Ｎ個の登録領域とを比較し、該入力画像に含まれる方向認識用部材に一致又は類似すると判断した登録領域を抽出する画像認識手段と、上記抽出した登録領域に対応付けられた方向情報に基づき、上記撮像した方向を認識する方向認識手段とを有することを特徴とする。
【００２０】
本発明に係るロボット装置は、少なくとも異なるＮ（Ｎ≧２）の方向を認識させるための方向認識用部材を使用して方向認識する方向認識装置を搭載し自律的に動作するロボット装置であって、上記方向認識装置は、上記Ｎの方向を識別するためのＮ個の登録画像と、各登録画像に対応付けられた方向情報とが登録された記憶手段と、上記方向認識用部材を任意の方向から撮像した入力画像と、上記Ｎ個の登録画像とを比較し、該入力画像に含まれる方向認識用部材に一致又は類似すると判断した登録画像を抽出する画像認識手段と、上記抽出した登録画像に対応付けられた方向情報に基づき、上記撮像した方向を認識する方向認識手段とを有し、上記方向認識用部材は、異なるＮの各方向から識別可能な表示面を有することを特徴とする。
【００２１】
本発明に係る他のロボット装置は、少なくとも異なるＮ（Ｎ≧２）の方向を認識させるための方向認識用部材を使用して方向認識する方向認識装置を搭載し自律的に動作するロボット装置において、上記方向認識装置は、上記Ｎの方向を識別するためのＮ個の登録領域を有する登録画像と、各登録領域に対応付けられた方向情報とが登録された記憶手段と、上記方向認識用部材を任意の方向から撮像した入力画像と、上記Ｎ個の登録領域とを比較し、該入力画像に含まれる方向認識用部材に一致又は類似すると判断した登録領域を抽出する画像認識手段と、上記抽出した登録領域に対応付けられた方向情報に基づき、上記撮像した方向を認識する方向認識手段とを有し、上記方向認識用部材は、異なるＮの各方向から識別可能な表示面を有することを特徴とする。
【発明の効果】
【００２２】
本発明に係る方向認識装置及びシステムによれば、異なるＮの各方向から識別可能な表示面を有する方向認識部材を使用し、そのＮの方向を識別するためのＮ個の画像とこれ対応付けられた方向情報とを予め登録しておくことで、入力画像に含まれる方向認識用部材に一致又は類似する登録画像を識別して抽出し、抽出された登録画像に対応付けられた方向情報に基づき撮像方向を認識することができる。
【００２３】
また、このような方向認識可能な方向認識装置をロボット装置に搭載すれば、撮像方向を認識することができ、例えば距離センサ等により距離を認識すれば、物体に近づく際に距離と物体に対する方向を認識することで、効率よく物体に接近することができ、より知的に見える動作を発現させることができる。
【発明を実施するための最良の形態】
【００２４】
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。この実施の形態は、本発明を、物体の方向を認識可能な方向認識装置及びこれを搭載した２足又は４足のロボット装置に適用したものである。
【００２５】
方向認識装置及びロボット装置は、方向を認識するための方向認識用部材を使用して方向を認識する。ここでは、先ず移動体に方向を認識させるための方向認識用部材とこれを使用することで方向を認識可能な方向認識装置について説明し、次に、本発明における方向認識装置が方向認識用部材を認識するために好適な認識技術の一具体例について説明し、最後に方向認識装置を搭載するロボット装置について説明する。
【００２６】
（１）方向認識用部材による方向認識
先ず、ロボット装置等の移動体に方向認識させるための方向認識用部材について説明する。本実施の形態における方向認識用部材は、方向認識用部材を、この方向認識用部材を中心に異なる方向から撮像した際に、その異なる方向毎に識別可能な表示面を有したものである。例えばロボット装置等の移動体が、この識別可能な表示面を方向情報に対応付けておけば、該表示面を識別して方向（方位）を認識することができる。
【００２７】
例えば、方向認識用部材が円柱状（以下、ポールという。）とされる場合、上記識別可能な表示面として、その側面に周期性を持たないパターン（模様）を有したものとすることができる。このポールを地面に垂直に設置し、例えばその略中心軸に対して垂直方向、すなわち地面に平行方向に放射状にＮ等分に分割し、このＮ分割した各部分表面に対して異なる方向情報を設定する。この部分表面を示す画像と対応する方向情報とを予め登録しておき、方向認識装置やこれを搭載したロボット装置等が、上記登録された複数の画像（登録画像）と、方向認識用部材を撮像した際の画像（入力画像）とを比較し、入力画像に一致又は類似する登録画像を選択することで、選択された登録画像に対応付けられた方向情報、すなわち撮像方向を獲得することができる。
【００２８】
図１は、本実施の形態における方向認識用部材としてのポールを示す斜視図、図２は、そのポールの側面の展開図を示す図であって、方向を認識させるための表示面を示す模式図である。
【００２９】
図１に示すように、円柱状のポール１００を地面に対して垂直方向に設置し、このポール１００の略中心軸１０１から中心軸１０１に垂直方向に放射状にＮ個、すなわち中心角が３６０°／Ｎになるよう分割する。こうしてＮに分割した領域に含まれるポール１００の側面である各Ｎ分割部分側面ＳＮに対して一の方向を示す方向情報を設定することで、計Ｎ方向を認識可能とするものである。ここで設定される方向情報は、ポール１００の中心軸からの放射方向に対応するものとすることができる。
【００３０】
以下の説明では、簡単のため、分割数Ｎ＝８として説明するが、分割数Ｎは必要に応じて設定することができ、例えばＮ＝４や、Ｎ＝１６等としてもよいことは勿論である。
【００３１】
このポール１００の側面には、図２に示すように、方向情報が設定される表示として、全体としては周期性を持たない幾何学模様が記載される。なお、微少単位の周期性はあってもよく、後述するように、方向認識用領域ＡＲＮが画像認識部により互いに認識可能なレベルで異なるパターンとなっていればよい。
【００３２】
また、本実施の形態においては、方向を認識するために識別可能な表示面がポール１００の側面に形成されるものとするが、方向認識用部材が例えば球状である場合は、その全表面に形成され、また、例えば半円柱形とされ壁に面して設置されるような場合は、壁に接する以外の側面に形成されるものとすることができる。すなわち、撮像手段を有するロボット装置等の移動体により撮像可能な部分が方向認識用の表示面となる。
【００３３】
また、本実施の形態においては、設定される方向から方向認識用部材を撮像した場合に一意に特定できるパターンが形成されるものとして説明するが、方向認識用の表示面としては、後述する画像認識部にて認識可能であれば、パターンに限らず凹凸部等を形成したものであってもよい。
【００３４】
本実施の形態においては、８つの方向情報を設定するために、放射状に８等分に分割した各放射状領域に含まれる８つのＮ分割部分側面ＳＮ＝Ｓ０〜Ｓ７に対応した方向情報が設定される。この分割部分側面ＳＮ＝Ｓ０〜Ｓ７は、図２に示す側面展開図上では、ポールの高さＨＰ、半径ＲＰとすると、高さＨＰ、幅が２πＲＰ／Ｎの矩形領域に相当する。
【００３５】
図３は、ポール１００の上面図であって、領域分割方法を説明する図である。図３に示すように、中心軸１０１から放射状にＮ＝８等分に分割すると、中心角４５°の放射状領域ＡＰＮ（ＡＰ０〜ＡＰ７）が形成される。すなわち、センタＡＣＮ＝ＡＣ０〜ＡＣ７を、各放射状領域ＡＰＮの角二等分線の延長とポール１００の円弧との接点とすると、このセンタＡＣＮを中心に中心角４５°の円弧を含むＮ分割部分側面ＳＮが放射状領域ＡＰＮに含まれることになる。
【００３６】
次に、これらのＮ分割部分側面ＳＮに対して方向情報を設定する。例えば、中心軸１０１とセンタＡＣ０とを結ぶ線を基準（＝０°）にすると、各センタＡＣ１〜ＡＣ７は、ＡＣ０からの角度がそれぞれ４５°、９０°、・・・３１５°となる。したがって、Ｎ分割部分側面Ｓ０〜ＳＮに対して、それぞれ４５°、９０°、・・・３１５°の方向情報を設定することができる。これにより、例えば、方向情報＝９０°に設定されるＮ分割部分側面Ｓ２を含む放射状領域ＡＰ２内のポール１００を撮像可能な位置に方向認識装置を搭載したロボット装置１が移動した場合、ロボット装置１は、このポール１００の放射状領域ＡＰ２に含まれるＮ分割部分側面Ｓ２を認識することで、このＮ分割部分側面Ｓ２に対して設定された上記方向情報＝９０°を獲得する。
【００３７】
次に、本実施の形態における方向認識装置について説明する。図４は、本実施の形態における方向認識装置を示すブロック図である。図４に示すように、方向認識装置１１０は、ＣＣＤカメラやＣＭＯＳ（Complementary Metal Oxide Semiconductor）イメージセンサ等からなる撮像部１１１と、所定の方向から撮像されたポール１００を認識するための画像からなる登録画像と該登録画像に対応付けられた方向情報とが複数登録された登録画像データベース１１２と、撮像部１１１により方向認識用部材としてのポール１００を撮像した入力画像が入力され、登録画像データベース１１２を参照し、入力画像に含まれる方向認識用部材に一致又は類似すると判断された登録画像を抽出する画像認識部１１３と、画像認識部１１３にて抽出された登録画像に対応付けられた方向情報に基づき方向を認識して出力する方向認識部１１４とを有する。
【００３８】
画像登録データベース１１２は、上述したＮ分割部分側面ＳＮを含む登録画像と、これと対応付けられた方向情報、すなわちポール１００の中心軸１０１から放射状にＮ分割したＮ分割部分側面ＳＮに割当てられたＮの方向を示す方向情報とが記憶されている。画像登録データベース１１２に登録する登録画像としては、予め用意されたパターンデータから登録画像となる領域を切り出したものを登録してもよく、また、ポール１００をＮの方向から実際に撮影した画像又は撮影した画像を加工した画像等としてもよい。
【００３９】
ところで、例えばＮ＝８の方向を認識するためには、図２に示すように、パターンが付された側面領域を８個に分割した８分割部分側面ＳＮを方向情報を示す表示面とし、これを画像認識する方法が考えられる。ここで、図１からも明らかなように、ポール１００がカメラ等により撮像された場合、本実施の形態にて設定する中心角４５°の円弧を含むＮ分割部分側面Ｓ１より広い範囲、例えば中心角１５０°乃至１８０°程度の円弧を含む部分側面が含まれる。このような知見に基づき、本願発明者等は、Ｎ個の方向情報を設定する場合、すなわちポール１００の側面を周方向にＮ分割したＮ分割部分側面ＳＮに対して異なる方向情報を設定する場合、この方向情報を示す表示面となるＮ分割部分側面ＳＮより、広い範囲を方向認識用の登録画像として登録することにより、画像認識率が向上し、誤認識が低減することを見出した。
【００４０】
すなわち、Ｎ分割後のＮ分割部分側面ＳＮの横辺となる円弧に対する中心角は３６０°／Ｎであるが、方向認識用登録画像としては、（３６０°／Ｎ）＜中心角θに対する円弧を含む領域、すなわち、周方向２πＲＰ／Ｎより大きい幅を有する領域を方向認識用の登録画像とする。ここで、Ｎ分割部分側面ＳＮに対応付けた方向情報を認識するための方向認識用の登録画像には、当該Ｎ分割側面領域ＳＮが含まれるが、このＮ分割側面領域ＳＮが略中心に位置するように方向認識用領域を設定する。このように登録範囲を設定することで、方向情報を獲得するために認識する表示として登録可能な領域が、Ｎ分割部分側面より広域となるため、誤認識を低減させることができる。
【００４１】
例えば図２に示すように、センタＡＣ２のＮ分割部分側面Ｓ２の方向認識用の登録画像は、その左右のＮ分割側面領域Ｓ１及びＳ３などを含む方向認識用領域ＡＳ２を少なくとも含む画像とし、センタＡＣ３のＮ分割部分側面Ｓ３の方向認識用の登録画像は、Ｎ分割部分側面Ｓ２〜Ｓ４などを含む方向認識用領域ＡＳ３を少なくとも含む画像とする。
【００４２】
従って各方向認識用の登録画像ＡＳＮに含まれる方向認識用領域ＡＳＮは、互いにオーバーラップ部分を有するものとなる。ここで、方向認識装置１１０は、各方向認識用の方向認識用領域ＡＳＮを個別に識別することで、これに含まれるＮ分割部分側面ＳＮに対応付けられた方向情報を得るものであるため、各方向認識用領域ＡＳＮは互いに識別可能なユニークなものとする必要がある。図２は、そのようなパターンを示す一例である。方向認識用登録領域ＡＳＮを互いに識別可能な表示とするためのパターンとしては、例えばこのように周期性がない幾何学模様が挙げられる。
【００４３】
図５は、パターンデータから方向認識用領域を切り出して登録画像として登録する場合の登録方法を示すフローチャートである。図５に示すように、先ず、図２に示すようなポール１００の側面展開図に相当するパターンデータを用意する。そして、円周方向の任意の点を基準に円周方向にＮ等分に分割する。図２に示す場合では、例えは、任意の点をセンタＡＣ０とし、センタＡＣ０から２πＲＰ／Ｎ（中心角が３６０°／Ｎの円弧）の間隔、すなわちセンタＡＣ０を中心にして周方向を上記円弧の長さとすると、８個のＮ分割側面領域Ｓ０〜Ｓ７に分けられる。そして、この各Ｎ分割部分側面ＳＮを中心に、周方向がＮ分割部分側面ＳＮより長く、従ってＮ分割部分側面ＳＮより面積が大きい方向認識用領域ＡＳＮを方向認識用登録画像として切り出す（ステップＳ１）。例えばセンタＡＣ２のＮ分割部分側面Ｓ２を含む方向認識用領域ＡＳ２が方向認識用登録画像となる。
【００４４】
すなわち、図２の展開図においては、中心軸１０１から中心角４５°の放射状領域ＡＰＮに対して一の方向情報を対応付けるため、一の方向情報には、中心角４５°の扇形の円弧が横辺となるＮ分割部分側面Ｓ２に対応するが、上記一の方向情報を認識するために使用する方向認識用領域ＡＳ２は、Ｎ分割部分側面Ｓ２を含み、中心角１５０°の扇形の円弧を横方向とする領域とすることで、Ｎ分割部分側面Ｓ２より広く設定するものとする。そして、ここではこの方向認識用領域ＡＳ２を登録画像view２とする。
【００４５】
そして、同様に、中心角４５°の円弧分、例えば左方向にずらして、中心角１５０°の扇形の円弧を横方向とする方向認識用領域ＡＳ３を切り出し、これを登録画像view３とし、・・・というように、展開図において、中心角４５°の円弧分ずらして方向認識用領域ＡＳＮを切り出し登録画像viewＮを作成する（ステップＳ２）。
【００４６】
こうして作成されたＮ個の方向認識用領域ＡＳＮを方向認識用登録画像viewＮとして登録する。図６は、Ｎ＝８の方向認識用登録画像viewＮの登録例を示す図である。図６に示すように、８つの登録画像viewＮが登録される。各登録画像viewＮには、その略中央部分にＮ分割部分側面ＳＮが位置し、それ以外の領域は、他の登録画像とオーバーラップする領域となる。そして、これら８つの登録画像viewＮに対し、それぞれ例えば、０°、４５°、９０°、・・・、３１５°等の方向情報が対応付けられ、登録データベース１１２に記憶される。上述したように、これら登録画像viewＮは、互いにユニークなパターンを有し、方向情報を得るための表示（標識）となっている。このように方向認識用登録画像を作成すれば、方向認識用登録画像がそのまま表示を示すものとなり、入力画像に含まれるポール１００に一致又は類似する方向認識用登録画像を識別しやすい。
【００４７】
また、方向認識用登録画像は、図２に示すようなポール１００の側面に相当するパターンデータから、各方向認識用領域ＡＳＮを切り出して登録することができる他、ポール１００に対して設定する方向から実際にポール１００を撮像した撮像画像を登録画像として使用することができる。
【００４８】
従って、上述のステップＳ１及びＳ２における登録画像の作成に際しては、カメラ等の撮像手段により、実際にポール１００を撮影する。例えば、この方向認識装置を後述するロボット装置に搭載する場合には、そのロボット装置が有する撮像手段によりポール１００を４５°ずつ回転させて撮影し、Ｎの方向情報に対応付ける方向認識用の登録画像viewＮを作成することができる。この場合、上述とは異なり、登録画像viewＮ内には、方向認識用領域とその背景とが含まれる場合がある。そこで、図７に示すように、各登録画像viewＮを撮影する際に背景が含まれるような場合には、濃淡がない等、特徴的な領域として抽出されないようなものを背景として撮影する。この際、各登録画像viewＮを撮影する条件を同じにすることが好ましい。
【００４９】
また、同一方向情報に対応付けられる登録画像を複数登録してもよい。例えば複数の環境下で同一の方向情報を獲得できるように同一方向に向けてキャプチャした複数の画像を登録しておくことにより、環境によるロバスト性を高めることができる。例えばカメラによりキャプチャした画像を登録画像とする場合、登録画像と入力画像との照明等、環境の違いにより、入力画像から登録画像に一致又は類似するものを識別しにくい場合等がある場合には、異なる明度等で同一の方向情報を対応づけた登録画像viewＮを撮影し、これらをグループとして登録しておいてもよい。
【００５０】
このように、複数枚の画像を登録することにより、複雑な環境下においても安定してポールの撮像方向を認識することができる。図８（ａ）乃至（ｃ）に示すように、方向を認識させるためのポール１００は、様々な環境下に設置されることが想定される。したがって、このような異なる環境下では、ポール１００と背景との境界の区別がつきにくい場合が生じる。そのような場合においても、ポール１００を安定して認識できるようにするために、複数の背景でキャプチャした画像を登録をすることで様々な環境下でのロバスト性を向上することができる。
【００５１】
具体的に、例えば背景色が白となるようにしてポール１００を撮像した画像と、背景色が黒となるようにしてポール１００を撮像した画像とを登録する等する。また、図８（ａ）乃至図８（ｃ）に示すような環境下で、ポール１００と若干の背景を含むように撮像するか、又は切り出した画像を登録しておいてもよい。
【００５２】
更に、複数の登録画像を同一方向情報に対応付けて登録する他の例として、遠い距離の認識用に全体像を示す画像と、近い距離の認識用に部分の詳細を示す画像等を登録すれば、認識距離の幅を広げることができる。
【００５３】
また、ポール１００は、図２に示すような周期性がない幾何学模様を有するものとしたが、Ｎ分割後の分割領域が識別可能なパターンであれば幾何学模様以外でもよく、例えば図９に示すようなパターンを有する他のポールを用意し、同様にＮ方向を認識させるものとすることもできる。
【００５４】
図４に戻って、画像認識部１１３は、入力画像に含まれるポール１００に一致又は類似すると判断した登録画像を抽出する。この画像認識部１１３として、本願出願人が先に出願した例えば特願２００３−１２４５２５号に記載の画像認識装置等を使用することができる。上記画像認識装置は、撮像部１１１からの入力画像及び上記登録画像データベース１１２の登録画像からそれぞれ特徴点を抽出する特徴点抽出部と、それぞれ抽出された各特徴点について特徴量を抽出し、この特徴量と特徴点の位置情報とを保持するするそれぞれ特徴量保持部と、両者の各特徴点の特徴量を比較して類似度又は相違度を計算し、この類似尺度を用いて特徴量が類似する、すなわち対応する可能性が高い特徴点ペア（候補対応特徴点ペア）を生成する特徴量比較部と、上記候補対応特徴点ペアから入力画像に含まれるポールに一致する方向認識用登録画像を検出する推定部とを有する。
【００５５】
特徴量比較部は、入力画像の各特徴点と登録画像の各特徴点とを比較し、比較対象となる特徴点同士の濃度勾配方向ヒストグラムの一方を濃度勾配方向に巡回的にシフトさせながら順次求めた該濃度勾配方向ヒストグラム間の距離のうち、最小の距離を該濃度勾配方向ヒストグラム間の最小距離とし、該最小距離が所定の閾値以下の特徴点ペアを候補対応特徴点ペアとする。
【００５６】
また、推定部は、生成された候補対応特徴点ペア群を用いて入力画像上にポール１００の表示面が含まれるか否かを検出する。この画像認識部１１３は、登録画像と入力画像とを比較した際、入力画像に含まれるポール１００が登録画像より大きかったり、多少変形していたりしても、各画像における特徴点を抽出して比較するためにそれらの識別が可能である。なお、この認識装置の詳細については後述する。
【００５７】
方向判定部１４は、画像認識部１１３にて抽出された登録画像に対応付けられた方向情報に基づき認識方向を出力する。ここで、画像認識部１１３にて、一致又は類似するとされた登録画像viewＮが１つであれば、その登録画像viewＮに対応付けられている方向情報を読出しこれを出力する。
【００５８】
また、一致又は類似するとされた登録画像viewＮが複数ある場合には、予め決められた所定の選択基準に従って方向情報を出力するものとする。上述した図６に示す登録画像viewＮは、中心角１５０°の円弧を含む方向認識用領域ＡＳＮを示すパターンデータであり、登録画像viewＮは他の登録画像とオーバーラップ部分を有している。従って、周囲の環境やポール１００を撮影する位置等においては、複数の登録画像viewＮと一致すると判断する場合がある。例えば、図３において、放射状領域ＡＰ２と放射状領域ＡＰ３との間にてポール１００をカメラで撮影したものを入力画像とする場合、登録画像view２と登録画像view３とを認識する可能性がある。また、放射状領域Ｐ２内にてポール１００の認識を行った場合に、例えば登録画像view１〜view３を認識する可能性がある。
【００５９】
そこで、予め決めておく所定の選択基準としては、例えば、一致するとされた複数の登録画像viewＮの中で最も類似性が高いもの、最もスコアが大きいものを一致した登録画像viewＮとし、これに対応付けられた方向情報を認識方向として出力することができる。又は、スコアが所定値以上のものが複数あるような場合には、スコアに応じて重み付けした方向情報を認識方向としてもよい。
【００６０】
又は、例えば一致するとされた登録画像viewＮが３つ等、奇数であった場合、その中心に位置する登録画像viewＮに対応付けられた方向情報を認識方向として出力することができる。また、２つ等、偶数であった場合には、方向認識用登録画像viewｎ及び登録画像viewｎ＋１に対応付けられた方向情報の中間値を認識方向として出力することができる。このように中間値を認識方向とする場合には、Ｎに分割してＮの方向を認識するために用意した各登録画像から、２×Ｎの方向を認識できることになる。
【００６１】
以上説明した方向をさせる認識するための標識となるポール１００は、例えばロボット装置１における充電ステーション等に設置することができる。充電ステーションに設置する場合には、ロボット装置１は、予めポール１００のどの方向に充電ステーションが位置するかの情報を有しているものとする。ロボット装置は、認識したポール１００の例えば入力画像に対するポール１００の大きさや、距離センサ等からポール１００までの距離を認識することができ、更にポール１００に対する方向が認識でき、これらの情報により、どちらの方向からどのようにポール１００に近づけば充電しやすいかを判断し、最適な経路計画を立てて実行することができる。
【００６２】
すなわち、例えばセンタＡＣ０と向かい合った状態で充電されるよう放射状領域ＡＰ０に充電ステーションが設置される場合、方向認識装置１１０を搭載したロボット装置１は、ポール１００を撮像した入力画像と、複数の登録画像とを比較し、入力画像に含まれるポール１００に一致する登録画像を選択することで、ポール１００に対する撮像方向認識できるため、例えば現在の位置が放射状領域ＡＰ２であるという方向情報を得ることができる。この方向情報を獲得することで、ロボット装置１は、９０°時計周りの方向に回りこむ動作を発現することができる。
【００６３】
ここで、方向情報は、上述したように、例えばＮ分割部分側面Ｓ０を０°として、Ｎ分割部分側面Ｓ１は４５°、Ｎ分割部分側面Ｓ２は９０°といった角度情報としたが、その方向情報に対して更に所定の行動が関連付けられたものであってもよい。すなわち、上述の例では方向情報に、更にロボット装置１が９０°時計周りの方向に回りこむ動作が予め対応付けられてもよい。
【００６４】
いずれにおいてもポール１００から方向情報を獲得することにより、ロボット装置１が進みたい方向と獲得した方向情報とから充電ステーションへの最適な経路計画を立てて行動することができ、このような行動が可能になることにより、ロボット装置１が知的に見える手助けとなる。
【００６５】
なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。上述の実施の形態においては、図２に示すような周期性のない幾何学模様として説明したが、これに限らず、例えば上述したように、図９に示す風景画やイラスト等でもよく、また、テキスト等が記載されたものであってもよい。すなわち、異なる方向から撮像した際の異なる方向に応じて識別可能な表示を有していれば、どのようなものであってもよい。
【００６６】
更に、カメラでキャプチャした入力画像と方向認識用登録画像とを比較し、対象物を検出するため、図２に示すパターンを側面に有するポール１００に限らず、設定する方向から撮像した際に異なる表示として識別できればよく、表面に凹凸や、突起部等を形成したものであってもよい。また、円柱状ではなく、三角、四角、五角柱等の多角柱であってもよい。更に、例えば壁際に設置したいような場合には、半円柱状等とすることもでき、方向情報を設定して方向を認識させたい領域にのみ識別可能なパターンを形成すればよく、方向情報の設定が不要な領域等を除いた部分に、方向情報としての表示を形成すればよい。
【００６７】
また、本実施の形態においては、円柱状のポールとして説明したが、例えば円錐、多角推、又は球形等であってもよい。但し、この場合においても、方向認識用部材としては、例えば地球儀のように視野角に応じて異なるパターンを有するものとする。
【００６８】
更に、本実施の形態においては、Ｎ等分に分割するものとして説明したが、等分ではなく、例えば認識させたい重要度等に応じて、方向情報を対応付けるために分割する分割領域の大きさを異ならせて設定してもよい。
【００６９】
（２）画像認識部における画像認識
次に、上述の画像認識部１１３に好適な一具体例として、本願出願人が先に出願した特願２００３−１２４５２５号に記載の画像認識装置について詳細に説明する。この画像認識装置は、1以上のオブジェクトを含む入力画像（以下、オブジェクト画像という）。と、検出対象となるモデルを含むモデル画像とを比較し、オブジェクト画像からモデルを抽出するものである。ここで、モデルが上述した登録領域に相当する。
【００７０】
図１０は、画像認識装置の概略構成を示す図である。図１０に示す画像認識装置２０１において、特徴点抽出部２１０ａ，２１０ｂは、モデル画像及びオブジェクト画像からそれぞれモデル特徴点及びオブジェクト特徴点を抽出し、特徴量保持部２１１ａ，２１１ｂは、抽出された各特徴点について後述する特徴量を抽出し、特徴点の位置情報と共に保持する。そして特徴量比較部２１２は、各モデル特徴点の特徴量と各オブジェクト特徴点の特徴量とを比較して類似度又は相違度を計算し、この類似尺度を用いて特徴量が類似する、すなわち対応する可能性の高いモデル特徴点及びオブジェクト特徴点のペア（候補対応特徴点ペア）を生成する。
【００７１】
モデル姿勢推定部２１３は、生成された候補対応特徴点ペア群を用いてオブジェクト画像上のモデルの有無を検出し、「モデル有」の判定結果の場合には、「検出されるモデルはオブジェクト画像上へのアフィン変換による画像変形が施されている」という拘束条件の下、候補対応特徴点ペア群からランダムに選択した３ペアにより決定されるアフィン変換パラメータをパラメータ空間に投射する操作を繰り返し、パラメータ空間上で形成されたクラスタのうち最多メンバ数を持つクラスタの各メンバを真の特徴点ペア（インライヤ）とし、このインライヤを用いた最小自乗推定によりアフィン変換パラメータを求める。そして、モデル姿勢推定部２１３は、このアフィン変換パラメータで決定されるモデル姿勢をモデル認識結果として出力する。
【００７２】
以下、上記画像認識装置２０１の各ブロックについて詳細に説明する。なお、以下では、画像の水平方向をＸ軸、垂直方向をＹ軸として説明する。
【００７３】
特徴点抽出部２１０ａ，２１０ｂは、特徴点抽出対象画像（モデル画像又はオブジェクト画像）に対し、先ず平滑化フィルタリング、例えば以下の式（１）で示す２次元ガウス関数による畳み込み積（ガウスフィルタリング）と、双２次線形補間リサンプリングによる画像縮小とを繰り返し交互に適用することで、画像の多重解像度ピラミッド構造を構築する。ここで、リサンプリングファクタとしては、式（１）のガウスフィルタで用いたσを用いる。
【００７４】
【数１】
2005078375.tif 000003
【００７５】
すなわち、図１１に示すように、例えば入力画像Ｉにσ＝√２であるガウスフィルタｇ(ｘ、ｙ)を施すことにより第１レベル（最高解像度）の画像Ｉ１を生成し、さらにガウスフィルタを施すことにより画像ｇ＊Ｉ１を生成する。そして、この画像ｇ＊Ｉ１をリサンプリングしてガウスフィルタを施すことにより第２レベルの画像Ｉ２，ｇ＊Ｉ２を生成し、同様にして画像ｇ＊Ｉ２から第３レベルの画像Ｉ３，ｇ＊Ｉ３を生成する。
【００７６】
続いて、特徴点抽出部２１０ａ，２１０ｂは、各レベル（各解像度）の画像に対して、ＤｏＧ（Difference of Gaussian）フィルタを適用する。このＤｏＧフィルタは、画像の輪郭強調のために用いられる２次微分フィルタの一種であり、人間の視覚系で網膜からの情報が外側膝状体で中継されるまでに行われている処理の近似モデルとして、ＬｏＧ（Laplacian of Gaussian）フィルタと共によく用いられるものである。ＤｏＧフィルタの出力は、２つのガウスフィルタ出力画像の差分を取ることにより容易に得られる。すなわち、図１１に示すように、第１レベルの画像について画像ＤＩ１（＝Ｉ１−ｇ＊Ｉ１）が得られ、第２レベル，第３レベルの画像について画像ＤＩ２（＝Ｉ２−ｇ＊Ｉ２），画像ＤＩ３（＝Ｉ３−ｇ＊Ｉ３）が得られる。
【００７７】
そして、特徴点抽出部２１０ａ，２１０ｂは、各レベルにおけるＤｏＧフィルタ出力画像ＤＩ１，ＤＩ２，ＤＩ３・・・の局所点（局所極大点及び局所極小点）のうち、所定の範囲内の解像度変化によって位置の変化がないような点を特徴点として検出する。これにより、画像の拡大縮小操作に対してロバストな特徴点間のマッチングが実現できる。
【００７８】
ここで、多重解像度ピラミッド構造の第Ｌレベル、すなわちσの（Ｌ−１）乗ファクタまでの解像度変化によって位置の変化がないような特徴点を検出する際の処理について図１２のフローチャートを用いて説明する。
【００７９】
先ずステップＳ１１において、第１レベル（最高解像度）におけるＤｏＧフィルタ出力画像ＤＩ１の局所点（局所極大点及び局所極小点）を検出する。なお、局所近傍としては、例えば３×３直接近傍を用いることができる。
【００８０】
次にステップＳ１２において、検出された各局所点について、その１つ上位レベル（解像度の１つ低い層）における対応点を解像度減少に伴う画像縮小を考慮して求め、この対応点が局所点か否かを判別する。局所点である場合（Yes）にはステップＳ１３に進み、局所点でない場合（No）には探索を終了する。
【００８１】
続いてステップＳ１３では、第Ｌレベルまで探索が成功したか否かを判別する。第Ｌレベルまで探索を行っていない場合（No）にはステップＳ１２に戻ってさらに上位レベルの探索を行い、第Ｌレベルまで探索が成功した場合（Yes）には特徴点であるとして、ステップＳ１４においてその位置情報を保持する。
【００８２】
例えば第３レベルまでの解像度変化によって位置の変化がないような特徴点を検出する場合、図１３に示すように、第１レベルの画像ＤＩ１において検出された局所点ＦＰ１，ＦＰ２のうち、ＦＰ１は第３レベルの画像ＤＩ３まで対応点が存在するため特徴点とされ、ＦＰ２は第２レベルまでしか対応点が存在しないため特徴点でないとされる。
【００８３】
なお、この特徴点抽出部２１０ａ，２１０ｂでは、ＤｏＧフィルタの代わりにＬｏＧフィルタを用いるようにしてもよい。また、文献「Harris C. and Stephens M.,“A combined corner and edge detector.”, in Proc. Alvey Vision Conf., pp.147-151, 1988」で物体のコーナー検出に用いられているcorner-ness 関数の出力値をＤｏＧフィルタ出力の代わりに用いるようにしてもよい。
【００８４】
次に、特徴量保持部２１１ａ，２１１ｂ（図１０）は、特徴点抽出部２１０ａ，２１０ｂにて抽出された各特徴点について特徴量を抽出し、保持する。特徴量としては、多重解像度ピラミッド構造の各レベルの画像（Ｉｌ，ｌ＝１，…，Ｌ）の画像情報から導出される特徴点の近傍領域各点の濃度勾配情報（勾配強度及び勾配方向）を用いる。点（ｘ、ｙ）における勾配強度Ｍｘ，ｙ及び勾配方向Ｒｘ，ｙは以下の式（２），（３）により与えられる。
【００８５】
【数２】
2005078375.tif 000004
【００８６】
ここで、特徴量を算出する特徴点近傍領域としては、回転変化に対して構造の変わらないような、特徴点に関して対称なものを選択することが好ましい。これにより、回転変化に対するロバスト性を実現することができる。例えば、（ｉ）特徴点から半径ｒピクセルの範囲内を特徴点近傍領域とする手法や、（ｉｉ）特徴点を中心に幅σの特徴点に関して対称な２次元ガウス重みを濃度勾配に掛ける手法を用いることができる。
【００８７】
特徴点から半径３．５ピクセルの範囲内を近傍領域とした場合における特徴点近傍領域の濃度勾配情報の例を図１４（ａ）に示す。ここで、図１４（ａ）において矢印の長さは勾配強度を表し、矢印の方向は勾配方向を表す。
【００８８】
また、特徴量保持部２１１ａ，２１１ｂは、特徴点近傍の勾配方向に関するヒストグラム（方向ヒストグラム）も特徴量として保持する。図１４（ａ）の濃度勾配情報から得られる勾配方向ヒストグラムの例を図１４（ｂ）に示す。ここで、図１４（ｂ）における階級幅Δθは１０deg であり、階級数Ｎは３６（＝３６０deg ／１０deg ）である。
【００８９】
続いて、特徴量比較部２１２（図１０）は、各モデル特徴点の特徴量と各オブジェクト特徴点の特徴量とを比較し、類似する特徴量を有するモデル特徴点及びオブジェクト特徴点のペア（候補対応特徴点ペア）を生成する。
【００９０】
この特徴量比較部１２における処理の詳細について、図１５のフローチャートを用いて説明する。先ず、ステップＳ２０において、特徴量比較部２１２は、各モデル特徴点の方向ヒストグラムと各オブジェクト特徴点の方向ヒストグラムとを比較してヒストグラム間の距離（相違度）を計算すると共に、モデル−オブジェクト間の推定回転角度を求める。
【００９１】
ここで、階級幅Δθと階級数Ｎとが同一である２つの方向ヒストグラムＨ１＝｛ｈ１（ｎ），ｎ＝１，…，Ｎ｝及びＨ２＝｛ｈ２（ｎ），ｎ＝１，…，Ｎ｝を想定し、ｈ１（ｎ），ｈ２（ｎ）が階級ｎにおける度数を示すものとすると、ヒストグラムＨ１とヒストグラムＨ２との間の距離ｄ（Ｈ１，Ｈ２）は、例えば以下の式（４）で与えられる。ここで、式（４）におけるｒとしては、ｒ＝１，２，∞が一般的に用いられる。
【００９２】
【数３】
2005078375.tif 000005
【００９３】
この式（４）を用いて各モデル特徴点及び各オブジェクト特徴点の方向ヒストグラム間の相違度を計算するが、（ｉ）モデル−オブジェクト間のスケール比がマッチング段階で未知であるため、モデル特徴点の各レベルとオブジェクト特徴点の各レベル間で方向ヒストグラム間のマッチングを行う必要がある。また、（ｉｉ）方向ヒストグラム間のマッチングに関しては、モデル−オブジェクト間の回転変換量を考慮する必要がある。
【００９４】
モデル特徴点ｍのレベルＬＶにおける方向ヒストグラムＨｍＬＶ＝｛ｈｍＬＶ（ｎ），ｎ＝１，…，Ｎ｝と、オブジェクト特徴点ｏのレベルｌｖにおける方向ヒストグラムＨｏｌｖ＝｛ｈｏｌｖ（ｎ），ｎ＝１，…，Ｎ｝との相違度を求める場合を考える。方向ヒストグラムは回転変換に対して巡回的に変化するため、Ｈｏｌｖを巡回的に階級を１つずつシフトさせながら式（４）の計算を行い、その最小値をＨｍＬＶとＨｏｌｖとの間の相違度とする。このとき、相違度の最小値を与えた時のシフト量（ずらした階級数）からオブジェクト特徴点の回転角度を推定することができる。なお、この手法は方向ヒストグラム交差法として知られている。
【００９５】
Ｈｏｌｖをｋ階級分シフトさせた方向ヒストグラムをＨｏｌｖ（ｋ）とすると、方向ヒストグラム交差法による方向ヒストグラム間相違度dissimilarity（ＨｍＬＶ，Ｈｏｌｖ（ｋ））は、以下の式（５）で与えられる。
【００９６】
【数４】
2005078375.tif 000006
【００９７】
また、最小のｄ（ＨｍＬＶ，Ｈｏｌｖ（ｋ））を与えるｋをｋ’とすると、オブジェクト特徴点ｏの近傍領域における推定回転角度θ（ｍ，ＬＶ，ｏ，ｌｖ）は以下の式（６）で与えられる。
【００９８】
【数５】
2005078375.tif 000007
【００９９】
上述の（ｉ）を考慮すると、モデル特徴点ｍとオブジェクト特徴点ｏとの方向ヒストグラム間相違度dissimilarity（Ｈｍ，Ｈｏ）は、以下の式（７）のようになる。
【０１００】
【数６】
2005078375.tif 000008
【０１０１】
特徴量比較部２１２は、モデル特徴点ｍとオブジェクト特徴点ｏとの各ペア（ｍ、ｎ）に対し、最小の方向ヒストグラム間相違度dissimilarity（Ｈｍ，Ｈｏ）を与えるレベルＬＶ，ｌｖ（以下、それぞれＬＶｍ＊，ｌｖｏ＊と表記する。）と、その推定回転角度θ（ｍ，ＬＶｍ＊，ｏ，ｌｖｏ＊）とを、方向ヒストグラム間相違度dissimilarity（Ｈｍ，Ｈｏ）と共に保持する。
【０１０２】
次にステップＳ２１（図１５）において、特徴量比較部２１２は、各モデル特徴点ｍに対し方向ヒストグラム間相違度の小さい順にＫ個のオブジェク特徴点ｏｍ１，…，ｏｍＫを選択し、候補対応特徴点ペアを組ませる。すなわち、各モデル特徴点ｍに対してＫ個の候補対応特徴点ペア（ｍ、ｏｍ１），…，（ｍ、ｏｍｋ），…，（ｍ、ｏｍＫ）が組まれる。また、各候補対応特徴点ペア（ｍ、ｏｍｋ）には対応するレベルＬＶｍ＊，ｌｖｏｍｋ＊と推定回転角度θ（ｍ，ＬＶｍ＊，ｏ，ｌｖｏｍｋ＊）との情報が保持される。
【０１０３】
以上のようにして、全モデル特徴点に対し候補対応特徴点ペアを組ませることで得られたペア群が、候補対応特徴点ペア群となる。
【０１０４】
このように、特徴量比較部２１２では、ヒストグラム度数に勾配強度を累積しておらず、単に勾配方向のみに注目しているため、明度変化に対してロバストな特徴量マッチングが可能になる。また、本実施の形態では方向ヒストグラムの形状を考慮したより安定なマッチングを行うことができる。更に、二次的に安定した特徴量（推定回転角度）を得ることができる。
【０１０５】
なお、上述のステップＳ２１では、各モデル特徴点ｍに対してＫ個の候補対応特徴点ペアを選択するものとして説明したが、これに限定されるものではなく、方向ヒストグラム間相違度が閾値を下回るペア全てを選択するようにしてもよい。
【０１０６】
ここで、上述の操作で生成された候補対応特徴点ペア群は、方向ヒストグラムが類似するものの濃度勾配の空間的特徴が異なっているような対応点ペアも含んでいる。そこで、続くステップＳ２２（図１５）では、濃度勾配ベクトル間類似度によるペアの選択、候補対応特徴点ペア群の更新を行う。
【０１０７】
具体的には、モデル特徴点ｍの近傍のレベルＬＶｍ＊における濃度勾配ベクトルをＵｍとし、このモデル特徴点ｍと対応点ペアを組むオブジェクト特徴点ｏの近傍のレベルｌｖｏｍｋ＊における濃度勾配ベクトルをＵｏとしたとき、ＵｍとＵｏとの類似度が閾値を下回るペアを排除し、候補対応特徴点ペア群を更新する。
【０１０８】
濃度勾配ベクトルＵｍ，Ｕｏ間の類似度の計算手法を図１６に示す。先ず、Ｕｍを空間的に４領域Ｒｉ（ｉ＝１，…，４）に分割し、各領域の平均濃度勾配ベクトル＜Ｖｉ＞（ｉ＝１，…，４）を求める。この＜Ｖｉ＞をまとめた８次元ベクトル＜Ｖ＞でＵｍが表現される。一方、回転変換を考慮した濃度勾配情報のマッチングを行うために、Ｕｏの勾配方向を先に求めた推定回転角度θ（ｍ，ＬＶｍ＊，ｏ，ｌｖｏｍｋ＊）で補正し、Ｕｏ＊を得る。この際、中間位置の値は、双２次線形補間により求める。先と同様にＵｏ＊を４領域Ｒｉ（ｉ＝１，…，４）に分割し、各領域の平均濃度勾配ベクトル＜Ｗｉ＞（ｉ＝１，…，４）を求める。この平均濃度勾配ベクトル＜Ｗｉ＞をまとめた８次元ベクトル＜Ｗ＞でＵｏが表現される。このとき、ＵｍとＵｏとの類似度similarity（Ｕｍ、Ｕｏ）∈［０，１］は、平均濃度勾配ベクトル＜Ｖ＞と＜Ｗ＞との類似度として解釈され、例えばコサイン相関値を用いて以下の式（８）により求められる。ここで、式（８）において（＜Ｖ＞・＜Ｗ＞）は＜Ｖ＞と＜Ｗ＞との内積を表す。
【０１０９】
【数７】
2005078375.tif 000009
【０１１０】
特徴量比較部２１２は、各候補対応特徴点ペアに対して上記式（８）で得られる平均濃度勾配ベクトル間の類似度を求め、類似度が閾値δを下回るペアを候補対応特徴点ペア群から排除し、候補対応特徴点ペア群を更新する。
【０１１１】
このように、特徴量比較部２１２では、部分領域の平均濃度勾配ベクトルを用いて特徴量の比較を行っているため、特徴点位置や推定回転角度の微妙なずれや、明度の変化による濃度勾配情報の変化に対してロバストなマッチングを実現することができ、計算量の削減にもなる。
【０１１２】
以上の操作により、特徴点近傍の局所的な濃度勾配情報が類似する（モデル特徴点−オジェクト特徴点）ペア群を抽出することができるが、巨視的に見ると、このように得られたペア群は、対応特徴点間の空間的位置関係がモデルのオブジェクト画像上での姿勢（モデル姿勢）と矛盾するような「偽の特徴点ペア（アウトライヤ）」を含んでしまっている。
【０１１３】
ここで、候補対応特徴点ペアが３組以上ある場合には、最小自乗推定により近似アフィン変換パラメータの推定が可能であり、推定モデル姿勢と空間的位置関係の矛盾する対応ペアを排除し、残ったペアで再びモデル姿勢推定を行うという操作を繰り返すことで、モデル姿勢を認識することができる。
【０１１４】
しかしながら、候補対応特徴点ペア群中のアウトライヤが多い場合や真のアフィン変換パラメータから極端に逸脱したアウトライヤが存在する場合には、最小自乗推定による推定結果は一般的に満足のいくものではないことが知られている（Hartley R., Zisserman A.,“Multiple View Geometry in Computer Vision.”, Chapter 3, pp.69-116, Cambridge University Press, 2000）ため、本実施の形態におけるモデル姿勢推定部２１３（図１０）では、アフィン変換拘束の下、候補対応特徴点ペア群の空間的位置関係から「真の特徴点ペア（インライヤ）」を抽出し、抽出されたインライヤを用いてモデル姿勢（平行移動量，回転，拡大縮小，ストレッチを決定するアフィン変換パラメータ）を推定する。
【０１１５】
以下、このモデル姿勢推定部２１３における処理について説明する。上述したように、候補対応特徴点ペアが３組以上なければアフィン変換パラメータを決定できないため、候補対応特徴点ペアが２組以下の場合、モデル姿勢推定部２１３は、オブジェクト画像中にモデルが存在しない、又はモデル姿勢検出に失敗したとして、「認識不可」と出力し処理を終了する。一方、候補対応特徴点ペアが３組以上ある場合、モデル姿勢推定部２１３は、モデル姿勢を検出可能であるとし、アフィン変換パラメータの推定を行う。なお、モデル姿勢推定部２１３は、モデル画像及びオブジェクト画像の例えば第１レベル（最高解像度）における特徴点の空間的位置を元にモデル姿勢を推定するものとする。
【０１１６】
ここで、モデル特徴点［ｘ  ｙ］Ｔのオブジェクト特徴点［ｕ  ｖ］Ｔへのアフィン変換は、以下の式（９）で与えられる。
【０１１７】
【数８】
2005078375.tif 000010
【０１１８】
この式（９）において、ａｉ（ｉ＝１，…，４）は回転，拡大縮小，ストレッチを決定するパラメータを表し、［ｂ１  ｂ２］Ｔは平行移動パラメータを表す。決定すべきアフィン変換パラメータはａ１，…，ａ４及びｂ１，ｂ２の６つであるため、候補対応特徴点ペアが３組あればアフィン変換パラメータを決定することができる。
【０１１９】
３組の候補対応特徴点ペアで構成されるペア群＜Ｐ＞を（[ｘ１  ｙ１]Ｔ，[ｕ１  ｖ１]Ｔ），（[ｘ２  ｙ２]Ｔ，[ｕ２  ｖ２]Ｔ），（[ｘ３  ｙ３]Ｔ，[ｕ３  ｖ３]Ｔ）とすると、ペア群＜Ｐ＞とアフィン変換パラメータとの関係は、以下の式（１０）に示す線形システムで表現することができる。
【０１２０】
【数９】
2005078375.tif 000011
【０１２１】
この式（１０）を＜Ａ＞＜ｘ＞＝＜ｂ＞のように書き直すと、アフィン変換パラメータ＜ｘ＞の最小自乗解は以下の式（１１）で与えられる。
【０１２２】
【数１０】
2005078375.tif 000012
【０１２３】
さて、候補対応特徴点ペア群からアウトライヤが１つ以上混入するように繰り返しランダムにペア群＜Ｐ＞を選択した場合、そのアフィン変換パラメータはパラメータ空間上に散らばって投射される。一方、インライヤのみから構成されるペア群＜Ｐ＞を繰り返しランダムに選択した場合、そのアフィン変換パラメータは、何れもモデル姿勢の真のアフィン変換パラメータに極めて類似した、すなわちパラメータ空間上で距離の近いものとなる。したがって、候補対応特徴点ペア群からランダムにペア群＜Ｐ＞を選択し、そのアフィン変換パラメータをパラメータ空間上に投射していく操作を繰り返すと、インライヤはパラメータ空間上で密度の高い（メンバ数の多い）クラスタを形成し、アウトライヤは散らばって出現することになる。このことから、パラメータ空間上でクラスタリングを行い、最多メンバ数を持つクラスタの要素がインライヤとなる。
【０１２４】
モデル姿勢推定部２１３における処理の詳細を図１７のフローチャートを用いて説明する。なお、このモデル姿勢推定部２１３におけるクラスタリング手法としては、ＮＮ（Nearest Neighbor）法を用いるものとする。この際、上述したｂ１，ｂ２は、認識対象画像により様々な値を取り得るため、アフィン変換パラメータ＜ｘ＞空間でもクラスタリングにおいてクラスタリング閾値の選択が認識対象に依存してしまう。そこで、モデル姿勢推定部１３では、「真のパラメータとａ１，…，ａ４は類似するがｂ１，ｂ２が異なるようなアフィン変換パラメータを与えるペア群＜Ｐ＞は殆ど存在しない」という仮定の下、パラメータａ１，…，ａ４（以下、＜ａ＞と表記する。）で張られるパラメータ空間上のみでクラスタリングを行う。なお、上記仮定が成り立たない状況が生じたとしても、＜ａ＞空間とは独立にｂ１，ｂ２で張られるパラメータ空間でクラスタリングを行いその結果を考慮することで、容易に問題を回避することができる。
【０１２５】
先ず図１７のステップＳ３０において初期化を行う。具体的には、繰り返し数のカウント値ｃｎｔをｃｎｔ＝１とし、候補対応特徴点ペア群からランダムにペア群＜Ｐ１＞を選択し、アフィン変換パラメータ＜ａ１＞を求める。また、クラスタ数ＮをＮ＝１とし、アフィン変換パラメータ空間＜ａ＞上で＜ａ１＞を中心とするクラスタＣ１を作る。このクラスタＣ１のセントロイド＜ｃ１＞を＜ｃ１＞＝＜ａ１＞とし、メンバ数ｎｃ１をｎｃ１＝１とする。
【０１２６】
次にステップＳ３１において、モデル姿勢推定部２１３は、候補対応特徴点ペア群からランダムにペア群＜Ｐｃｎｔ＞を選択し、アフィン変換パラメータ＜ａｃｎｔ＞を求める。
【０１２７】
続いてステップＳ３２において、モデル姿勢推定部２１３は、ＮＮ法を用いてアフィン変換パラメータ空間のクラスタリングを行う。具体的には、先ず以下の式（１２）に従ってアフィン変換パラメータ＜ａｃｎｔ＞と各クラスタＣｉのセントロイド＜ｃｉ＞（ｉ＝１，…，Ｎ）との距離ｄ（＜ａｃｎｔ＞、＜ｃｉ＞）のうち、最初の距離ｄｍｉｎを求める。
【０１２８】
【数１１】
2005078375.tif 000013
【０１２９】
そして、所定の閾値τ（例えばτ＝０．１）に対してｄｍｉｎ＜τであればｄｍｉｎを与えるクラスタＣｉにアフィン変換パラメータ＜ａｃｎｔ＞を属させ、＜ａｃｎｔ＞を含めた全メンバでクラスタＣｉのセントロイド＜ｃｉ＞を更新する。また、クラスタＣｉのメンバ数ｎｃｉをｎｃｉ＝ｎｃｉ＋１とする。一方、ｄｍｉｎ≧τであればクラスタ数ＮをＮ＝Ｎ＋１とし、アフィン変換パラメータ空間＜ａ＞上で＜ａｃｎｔ＞をセントロイド＜ｃＮ＋１＞とする新しいクラスタＣＮ＋１を作り、メンバ数ｎｃＮ＋１をｎｃＮ＋１＝１とする。
【０１３０】
続いてステップＳ３３では、繰り返し終了条件を満たすか否かが判別される。ここで、繰り返し終了条件としては、例えば最多メンバ数が所定の閾値（例えば１５）を超え、且つ最多メンバ数と２番目に多いメンバ数との差が所定の閾値（例えば３）を超える場合、或いは繰り返し数カウンタのカウント値ｃｎｔが所定の閾値（例えば５０００回）を超える場合に終了するように設定することができる。ステップＳ３３において、繰り返し終了条件を満たさない場合（No）には、ステップＳ３４で繰り返し数のカウント値ｃｎｔをｃｎｔ＝ｃｎｔ＋１とした後、ステップＳ３１に戻る。一方、繰り返し終了条件を満たす場合（Yes）にはステップＳ３５に進む。
【０１３１】
最後にステップＳ３５において、モデル姿勢推定部２１３は、以上で得られたインライヤを用いて、最小自乗法によりモデル姿勢を決定するアフィン変換パラメータを推定する。
【０１３２】
ここで、インライヤを（[ｘＩＮ１  ｙＩＮ１]Ｔ，[ｕＩＮ１  ｖＩＮ１]Ｔ），（[ｘＩＮ２  ｙＩＮ２]Ｔ，[ｕＩＮ２  ｖＩＮ２]Ｔ），…とすると、インライヤとアフィン変換パラメータとの関係は、以下の式（１３）に示す線形システムで表現することができる。
【０１３３】
【数１２】
2005078375.tif 000014
【０１３４】
この式（１３）を＜ＡＩＮ＞＜ｘＩＮ＞＝＜ｂＩＮ＞のように書き直すと、アフィン変換パラメータ＜ｘＩＮ＞の最小自乗解は以下の式（１４）で与えられる。
【０１３５】
【数１３】
2005078375.tif 000015
【０１３６】
そしてステップＳ３５では、このアフィン変換パラメータ＜ｘＩＮ＞で決定されるモデル姿勢をモデル認識結果として出力する。
【０１３７】
なお、以上の説明では、閾値τが定数値であるものとしたが、ステップＳ３１乃至ステップＳ３４の繰り返し処理を行う際に、始めは比較的大きな閾値τを用いて大雑把なインライヤ抽出を行い、繰り返し回数が増える毎に次第に小さい閾値τを用いる、いわゆる「焼きなまし法」のような手法を適用してもよい。これにより、精度よくインライヤを抽出することができる。
【０１３８】
また、以上の説明では、候補対応特徴点ペア群からランダムにペア群Ｐを選択し、そのアフィン変換パラメータをパラメータ空間上に投射していく操作を繰り返し、パラメータ空間上で最多メンバ数を持つクラスタの要素をインライヤとして、最小自乗法によりモデル姿勢を決定するアフィン変換パラメータを推定したが、これに限定されるものではなく、例えば最多メンバ数を持つクラスタのセントロイドを、モデル姿勢を決定するアフィン変換パラメータとしてもよい。
【０１３９】
また、特徴量比較部２１２で生成された候補対応特徴点ペア群中のアウトライヤの比率が大きくなるほどモデル姿勢推定部２１３におけるインライヤの選択確率が低下し、モデル姿勢を推定する際に繰り返し回数が多くなるため、計算時間が増大してしま場合がある。そのような場合には、上記検出可能判定部２１３に入力される候補対応特徴点ペア群からできる限りアウトライヤを排除しておくことが望ましい。そこで、画像認識装置１の特徴量比較部２１２とモデル姿勢推定部２１３との間に候補対応特徴点ペア選択部を設け、これにより、特徴量比較部２１２で生成された候補対応特徴点ペア群のうち、推定回転角度ヒストグラムのピークを与える推定回転角度を有するペアを選択したり、回転，拡大縮小率，平行移動（ｘ、ｙ方向）の４つの画像変換パラメータを特徴空間（投票空間）とした一般化ハフ変換を用い、最多投票パラメータに投票した候補対応特徴点ペア群を選択してからモデル姿勢推定部２１３に供給するようにしてもよい。
【０１４０】
このような画像認識装置及びその方法によれば、特徴量が類似するとして生成された候補対応特徴点ペアを用いて上記オブジェクト画像上のモデルの有無を検出し、モデルが存在する場合に該モデルの位置及び姿勢を推定する際に、ランダムに選択した３組の候補対応特徴点ペアから決定されるアフィン変換パラメータをパラメータ空間に投射する操作を繰り返し、パラメータ空間上で形成されたクラスタのうち最多メンバ数を持つクラスタに属するアフィン変換パラメータに基づいて上記モデルの位置及び姿勢を決定するアフィン変換パラメータを求める。このように、最小自乗推定を用いてモデルの位置及び姿勢を決定するアフィン変換パラメータを求めるのではなく、アフィン変換パラメータを投射したパラメータ空間上で最多メンバ数を持つクラスタに属するアフィン変換パラメータに基づいてアフィン変換パラメータを求めることにより、候補対応特徴点ペアに偽の対応点ペア含まれている場合であっても、安定してモデルの位置及び姿勢を推定することができる。
【０１４１】
このような画像認識装置２０１によれば、特徴点の近傍領域における濃度勾配情報から得られる濃度勾配方向ヒストグラムを特徴量として特徴量マッチングを行う際に、比較対象となる特徴点同士の濃度勾配方向ヒストグラムの一方を濃度勾配方向に巡回的にシフトさせながら濃度勾配方向ヒストグラム間の距離を求め、最小の距離を濃度勾配方向ヒストグラム間の距離として、距離の類似する特徴点同士で候補対応特徴点ペアを生成する。このように、ヒストグラム度数に勾配強度を累積せず、単に勾配方向のみに注目しているため、明度変化に対してロバストな特徴量マッチングが可能になる。また、方向ヒストグラムの形状を考慮したより安定なマッチングを行うことができると共に、二次的に安定した特徴量（推定回転角度）を得ることができる。
【０１４２】
更に、画像認識装置２０１は、オブジェクト画像及びモデル画像の色彩を認識することなく、その濃淡から対象物を検出するため、例えば対象物と同一の色の物体を対象物とご認識するようなことがない。
【０１４３】
（３）ロボット装置
次に、上述した方向認識装置を搭載したロボット装置について説明する。本ロボット装置は、外部の刺激や内部状態に応じて自律的に動作が可能なロボット装置である。
【０１４４】
（３−１）ロボット装置の構成
図１８に示すように、本実施の形態によるロボット装置１は、４足歩行の脚式移動ロボットとされ、胴体部ユニット２の前後左右にそれぞれ脚部ユニット３ａ，３ｂ，３ｃ，３ｄが連結されると共に、胴体部ユニット２の前端部に頭部ユニット４が連結されて構成されている。
【０１４５】
胴体部ユニット２には、図１９に示すように、ＣＰＵ（Central Processing Unit）１０、ＤＲＡＭ（Dynamic Random Access Memory）１１、フラッシュＲＯＭ（Read Only Memory）１２、ＰＣ（Personal Computer）カードインターフェース回路１３及び信号処理回路１４が内部バス１５を介して相互に接続されることにより形成されたコントロール部１６と、このロボット装置１の動力源としてのバッテリ１７とが収納されている。また、胴体部ユニット２には、ロボット装置１の向きや動きの加速度を検出するための角速度センサ１８及び加速度センサ１９なども収納されている。
【０１４６】
また、頭部ユニット４には、外部の状況を撮像するとともに、周囲の明るさを検出するためのＣＣＤカメラ２０と、前後に倒すといった使用者からの物理的な働きかけを検出するためのタッチセンサ２１と、前方に位置する物体までの距離を測定するための距離センサ２２と、外部音を集音するためのマイクロホン２３と、各種音声を出力するためのスピーカ２４と、頭部ユニット４内に格納可能とされたヘッドライト２５と、ロボット装置１の「目」に相当するＬＥＤ（Light Emitting Diode）（図示せず）などがそれぞれ所定位置に配置されている。なお、ロボット装置１においては、タッチセンサ２１以外にも、胴体部ユニット２及び頭部ユニット４の所定位置に複数のタッチセンサが配置されている。
【０１４７】
さらに、各脚部ユニット３ａ〜３ｄの関節部分や各脚部ユニット３ａ〜３ｄ及び胴体部ユニット２の各連結部分、並びに頭部ユニット４及び胴体部ユニット２の連結部分などにはそれぞれ自由度数分のアクチュエータ２６１〜２６ｎ及びポテンショメータ２７１〜２７ｎが配設されている。例えば、アクチュエータ２６１〜２６ｎはサーボモータを構成として有している。サーボモータの駆動により、脚部ユニット３ａ〜３ｄが制御されて、目標の姿勢或いは動作に遷移する。
【０１４８】
そして、これら角速度センサ１８、加速度センサ１９、タッチセンサ２１、距離センサ２２、マイクロホン２３、スピーカ２４、及び各ポテンショメータ２７１〜２７ｎなどの各種センサ並びにヘッドライト２５、ＬＥＤ及び各アクチュエータ２６１ 〜２６ｎは、それぞれ対応するハブ２８１〜２８ｎを介してコントロール部１６の信号処理回路１４と接続され、ＣＣＤカメラ２０及びバッテリ１７は、それぞれ信号処理回路１４と直接接続されている。
【０１４９】
信号処理回路ｌ４は、上述の各センサから供給されるセンサデータや画像データ及び音声データを順次取り込み、これらをそれぞれ内部バス１５を介してＤＲＡＭ１１内の所定位置に順次格納する。また信号処理回路１４は、これと共にバッテリ１７から供給されるバッテリ残量を表すバッテリ残量データを順次取り込み、これをＤＲＡＭ１１内の所定位置に格納する。
【０１５０】
このようにしてＤＲＡＭ１１に格納された各センサデータ、画像データ、音声データ及びバッテリ残量データは、この後ＣＰＵ１０がこのロボット装置１の動作制御を行う際に利用される。
【０１５１】
実際上ＣＰＵ１０は、ロボット装置１の電源が投入された初期時、胴体部ユニット２の図示しないＰＣカードスロットに装填されたメモリカード２９又はフラッシュＲＯＭ１２に格納された制御プログラムをＰＣカードインターフェース回路１３を介して又は直接読み出し、これをＤＲＡＭ１１に格納する。
【０１５２】
また、ＣＰＵ１０は、この後上述のように信号処理回路１４よりＤＲＡＭ１１に順次格納される各センサデータ、画像データ、音声データ及びバッテリ残量データに基づいて自己及び周囲の状況や、使用者からの指示及び働きかけの有無などを判断する。
【０１５３】
さらに、ＣＰＵ１０は、この判断結果及びＤＲＡＭ１１に格納した制御プログラムに基づいて続く行動を決定すると共に、当該決定結果に基づいて必要なアクチュエータ２６１〜２６ｎを駆動させることにより、頭部ユニット４を上下左右に振らせたり、各脚部ユニット３Ａ〜３Ｄを駆動させて歩行させるなどの行動を行わせる。
【０１５４】
また、この際ＣＰＵ１０は、必要に応じて音声データを生成し、これを信号処理回路１４を介して音声信号としてスピーカ２４に与えることにより当該音声信号に基づく音声を外部に出力させたり、上述のＬＥＤを点灯、消灯又は点滅させる。また、ＣＰＵ１０は、後述するように、ＣＣＤカメラ２０を用いて周囲の明るさを検出させ、その検出結果に応じてヘッドライト２５を点灯させる。
【０１５５】
このようにしてこのロボット装置１においては、自己及び周囲の状況や、使用者からの指示及び働きかけに応じて自律的に行動し得るようになされている。
【０１５６】
（３−２）制御プログラムのソフトウェア構成
ここで、ロボット装置１における上述の制御プログラムのソフトウェア構成は、図２０に示すようになる。この図２０において、デバイス・ドライバ・レイヤ３０は、この制御プログラムの最下位層に位置し、複数のデバイス・ドライバからなるデバイス・ドライバ・セット３１から構成されている。この場合、各デバイス・ドライバは、ＣＣＤカメラ２０（図１９）やタイマ等の通常のコンピュータで用いられるハードウェアに直接アクセスすることを許されたオブジェクトであり、対応するハードウェアからの割り込みを受けて処理を行う。
【０１５７】
また、ロボティック・サーバ・オブジェクト３２は、デバイス・ドライバ・レイヤ３０の最下位層に位置し、例えば上述の各種センサやアクチュエータ２６１〜２６ｎ等のハードウェアにアクセスするためのインターフェースを提供するソフトウェア群でなるバーチャル・ロボット３３と、電源の切換えなどを管理するソフトウェア群でなるバワーマネージャ３４と、他の種々のデバイス・ドライバを管理するソフトウェア群でなるデバイス・ドライバ・マネージャ３５と、ロボット装置１の機構を管理するソフトウェア群でなるデザインド・ロボット３６とから構成されている。
【０１５８】
マネージャ・オブジェクト３７は、オブジェクト・マネージャ３８及びサービス・マネージャ３９から構成されている。オブジェクト・マネージャ３８は、ロボティック・サーバ・オブジェクト３２、ミドル・ウェア・レイヤ４０、及びアプリケーション・レイヤ４１に含まれる各ソフトウェア群の起動や終了を管理するソフトウェア群であり、サービス・マネージャ３９は、メモリカード２９（図１９）に格納されたコネクションファイルに記述されている各オブジェクト間の接続情報に基づいて各オブジェクトの接続を管理するソフトウェア群である。
【０１５９】
ミドル・ウェア・レイヤ４０は、ロボティック・サーバ・オブジェクト３２の上位層に位置し、画像処理や音声処理などのこのロボット装置１の基本的な機能を提供するソフトウェア群から構成されている。また、アプリケーション・レイヤ４１は、ミドル・ウェア・レイヤ４０の上位層に位置し、当該ミドル・ウェア・レイヤ４０を構成する各ソフトウェア群によって処理された処理結果に基づいてロボット装置１の行動を決定するためのソフトウェア群から構成されている。
【０１６０】
なお、ミドル・ウェア・レイヤ４０及びアプリケーション・レイヤ４１の具体なソフトウェア構成をそれぞれ図２１に示す。
【０１６１】
ミドル・ウェア・レイヤ４０は、図２１に示すように、騒音検出用、温度検出用、明るさ検出用、音階認識用、距離検出用、姿勢検出用、タッチセンサ用、動き検出用及び色認識用の各信号処理モジュール５０〜５８並びに入力セマンティクスコンバータモジュール５９などを有する認識系６０と、出力セマンティクスコンバータモジュール６８並びに姿勢管理用、トラッキング用、モーション再生用、歩行用、転倒復帰用、ライト点灯用及び音再生用の各信号処理モジュール６１〜６７などを有する出力系６９とから構成されている。
【０１６２】
認識系６０の各信号処理モジュール５０〜５８は、ロボティック・サーバ・オブジェクト３２のバーチャル・ロボット３３によりＤＲＡＭ１１（図１９）から読み出される各センサデータや画像データ及び音声データのうちの対応するデータを取り込み、当該データに基づいて所定の処理を施して、処理結果を入力セマンティクスコンバータモジュール５９に与える。ここで、例えば、バーチャル・ロボット３３は、所定の通信規約によって、信号の授受或いは変換をする部分として構成されている。
【０１６３】
入力セマンティクスコンバータモジュール５９は、これら各信号処理モジュール５０〜５８から与えられる処理結果に基づいて、「うるさい」、「暑い」、「明るい」、「ボールを検出した」、「転倒を検出した」、「撫でられた」、「叩かれた」、「ドミソの音階が聞こえた」、「動く物体を検出した」又は「障害物を検出した」などの自己及び周囲の状況や、使用者からの指令及び働きかけを認識し、認識結果をアプリケーション・レイヤ４１（図１９）に出力する。
【０１６４】
アプリケーション・レイヤ４ｌは、図２２に示すように、行動モデルライブラリ７０、行動切換モジュール７１、学習モジュール７２、感情モデル７３及び本能モデル７４の５つのモジュールから構成されている。
【０１６５】
行動モデルライブラリ７０には、図２３に示すように、「バッテリ残量が少なくなった場合」、「転倒復帰する」、「障害物を回避する場合」、「感情を表現する場合」、「ボールを検出した場合」などの予め選択された複数の条件項目にそれぞれ対応させて、それぞれ独立した行動モデル７０１〜７０ｎが設けられている。
【０１６６】
そして、これら行動モデル７０１〜７０ｎは、それぞれ入力セマンティクスコンバータモジュール５９から認識結果が与えられたときや、最後の認識結果が与えられてから一定時間が経過したときなどに、必要に応じて後述のように感情モデル７３に保持されている対応する情動のパラメータ値や、本能モデル７４に保持されている対応する欲求のパラメータ値を参照しながら続く行動をそれぞれ決定し、決定結果を行動切換モジュール７１に出力する。
【０１６７】
なお、この実施の形態の場合、各行動モデル７０１〜７０ｎは、次の行動を決定する手法として、図２４に示すような１つのノード（状態）ＮＯＤＥ０〜ＮＯＤＥｎから他のどのノードＮＯＤＥ０〜ＮＯＤＥｎに遷移するかを各ノードＮＯＤＥ０〜ＮＯＤＥｎに間を接続するアークＡＲＣ１〜ＡＲＣｎに対してそれぞれ設定された遷移確率Ｐ１〜Ｐｎに基づいて確率的に決定する有限確率オートマトンと呼ばれるアルゴリズムを用いる。
【０１６８】
具体的に、各行動モデル７０１〜７０ｎは、それぞれ自己の行動モデル７０１〜７０ｎを形成するノードＮＯＤＥ０〜ＮＯＤＥｎにそれぞれ対応させて、これらノードＮＯＤＥ０〜ＮＯＤＥｎごとに図２５に示すような状態遷移表８０を有している。
【０１６９】
この状態遷移表８０では、そのノードＮＯＤＥ０〜ＮＯＤＥｎにおいて遷移条件とする入力イベント（認識結果）が「入力イベント名」の列に優先順に列記され、その遷移条件についてのさらなる条件が「データ名」及び「データ範囲」の列における対応する行に記述されている。
【０１７０】
したがって、図２５の状態遷移表８０で表されるノードＮＯＤＥ１００では、「ボールを検出（ＢＡＬＬ）」という認識結果が与えられた場合に、当該認識結果と共に与えられるそのボールの「大きさ（ＳＩＺＥ）」が「0から1000」の範囲であることや、「障害物を検出（ＯＢＳＴＡＣＬＥ）」という認識結果が与えられた場合に、当該認識結果と共に与えられるその障害物までの「距離（ＤＩＳＴＡＮＣＥ）」が「0から100」の範囲であることが他のノードに遷移するための条件となっている。
【０１７１】
また、このノードＮＯＤＥ１００では、認識結果の入力がない場合においても、行動モデル７０１〜７０ｎが周期的に参照する感情モデル７３及び本能モデル７４にそれぞれ保持された各情動及び各欲求のパラメータ値のうち、感情モデル７３に保持された「喜び（ＪＯＹ）」、「驚き（ＳＵＲＰＲＩＳＥ）」若しくは「悲しみ（ＳＵＤＮＥＳＳ）」のいずれかのパラメータ値が「50から100」の範囲であるときには他のノードに遷移することができるようになっている。
【０１７２】
また、状態遷移表８０では、「他のノードヘの遷移確率」の欄における「遷移先ノード」の行にそのノードＮＯＤＥ０〜 ＮＯＤＥｎから遷移できるノード名が列記されていると共に、「入力イベント名」、「データ値」及び「データの範囲」の列に記述された全ての条件が揃ったときに遷移できる他の各ノードＮＯＤＥ０〜ＮＯＤＥｎへの遷移確率が「他のノードヘの遷移確率」の欄内の対応する箇所にそれぞれ記述され、そのノードＮＯＤＥ０〜ＮＯＤＥｎに遷移する際に出力すべき行動が「他のノードヘの遷移確率」の欄における「出力行動」の行に記述されている。なお、「他のノードヘの遷移確率」の欄における各行の確率の和は１００［％］となっている。
【０１７３】
したがって、図２５の状態遷移表８０で表されるノードＮＯＤＥ１００では、例えば「ボールを検出（ＢＡＬＬ）」し、そのボールの「ＳＩＺＥ（大きさ）」が「0から1000」の範囲であるという認識結果が与えられた場合には、「30［％］」の確率で「ノードＮＯＤＥ１２０（node 120）」に遷移でき、そのとき「ＡＣＴＩＯＮ１」の行動が出力されることとなる。
【０１７４】
各行動モデル７０１〜７０ｎは、それぞれこのような状態遷移表８０として記述されたノードＮＯＤＥ０〜 ＮＯＤＥｎがいくつも繋がるようにして構成されており、入力セマンティクスコンバータモジュール５９から認識結果が与えられたときなどに、対応するノードＮＯＤＥ０〜ＮＯＤＥｎの状態遷移表を利用して確率的に次の行動を決定し、決定結果を行動切換モジュール７１に出力するようになされている。
【０１７５】
図２２に示す行動切換モジュール７１は、行動モデルライブラリ７０の各行動モデル７０１〜７０ｎからそれぞれ出力される行動のうち、予め定められた優先順位の高い行動モデル７０１〜７０ｎから出力された行動を選択し、当該行動を実行すべき旨のコマンド（以下、これを行動コマンドという。）をミドル・ウェア・レイヤ４０の出力セマンティクスコンバータモジュール６８に送出する。なお、この実施の形態においては、図２３において下側に表記された行動モデル７０１〜７０ｎほど優先順位が高く設定されている。
【０１７６】
また、行動切換モジュール７１は、行動完了後に出力セマンティクスコンバータモジュール６８から与えられる行動完了情報に基づいて、その行動が完了したことを学習モジュール７２、感情モデル７３及び本能モデル７４に通知する。
【０１７７】
一方、学習モジュール７２は、入力セマンティクスコンバータモジュール５９から与えられる認識結果のうち、「叩かれた」や「撫でられた」など、使用者からの働きかけとして受けた教示の認識結果を入力する。
【０１７８】
そして、学習モジュール７２は、この認識結果及び行動切換モジュール７１からの通知に基づいて、「叩かれた（叱られた）」ときにはその行動の発現確率を低下させ、「撫でられた（誉められた）」ときにはその行動の発現確率を上昇させるように、行動モデルライブラリ７０における対応する行動モデル７０１〜７０ｎの対応する遷移確率を変更する。
【０１７９】
他方、感情モデル７３は、「喜び（joy）」、「悲しみ（sadness）」、「怒り（anger）」、「驚き（surprise）」、「嫌悪（disgust）」及び「恐れ（fear）」の合計６つの情動について、各情動ごとにその情動の強さを表すパラメータを保持している。そして、感情モデル７３は、これら各情動のパラメータ値を、それぞれ入力セマンティクスコンバータモジュール５９から与えられる「叩かれた」及び「撫でられた」などの特定の認識結果と、経過時間及び行動切換モジュール７１からの通知などに基づいて周期的に更新する。
【０１８０】
具体的には、感情モデル７３は、入力セマンティクスコンバータモジュール５９から与えられる認識結果と、そのときのロボット装置１の行動と、前回更新してからの経過時間などに基づいて所定の演算式により算出されるそのときのその情動の変動量を△Ｅ［ｔ］、現在のその情動のパラメータ値をＥ［ｔ］、その情動の感度を表す係数をｋｅとして、（１５）式によって次の周期におけるその情動のパラメータ値Ｅ［ｔ＋１］を算出し、これを現在のその情動のパラメータ値Ｅ［ｔ］と置き換えるようにしてその情動のパラメータ値を更新する。また、感情モデル７３は、これと同様にして全ての情動のパラメータ値を更新する。
【０１８１】
【数１４】
2005078375.tif 000016
【０１８２】
なお、各認識結果や出力セマンティクスコンバータモジュール６８からの通知が各情動のパラメータ値の変動量△Ｅ［ｔ］にどの程度の影響を与えるかは予め決められており、例えば「叩かれた」といった認識結果は「怒り」の情動のパラメータ値の変動量△Ｅ［ｔ］に大きな影響を与え、「撫でられた」といった認識結果は「喜び」の情動のパラメータ値の変動量△Ｅ［ｔ］に大きな影響を与えるようになっている。
【０１８３】
ここで、出力セマンティクスコンバータモジュール６８からの通知とは、いわゆる行動のフィードバック情報（行動完了情報）であり、行動の出現結果の情報であり、感情モデル７３は、このような情報によっても感情を変化させる。これは、例えば、「吠える」といった行動により怒りの感情レベルが下がるといったようなことである。なお、出力セマンティクスコンバータモジュール６８からの通知は、上述した学習モジュール７２にも入力されており、学習モジュール７２は、その通知に基づいて行動モデル７０１〜７０ｎの対応する遷移確率を変更する。
【０１８４】
なお、行動結果のフィードバックは、行動切換モジュール７１の出力（感情が付加された行動）によりなされるものであってもよい。
【０１８５】
一方、本能モデル７４は、「運動欲（exercise）」、「愛情欲（affection）」、「食欲（appetite）」及び「好奇心（curiosity）」の互いに独立した４つの欲求について、これら欲求ごとにその欲求の強さを表すパラメータを保持している。そして、本能モデル７４は、これらの欲求のパラメータ値を、それぞれ入力セマンティクスコンバータモジュール５９から与えられる認識結果や、経過時間及び行動切換モジュール７１からの通知などに基づいて周期的に更新する。
【０１８６】
具体的には、本能モデル７４は、「運動欲」、「愛情欲」及び「好奇心」については、認識結果、経過時間及び出力セマンティクスコンバータモジュール６８からの通知などに基づいて所定の演算式により算出されるそのときのその欲求の変動量をΔＩ［ｋ］、現在のその欲求のパラメータ値をＩ［ｋ］、その欲求の感度を表す係数ｋｉとして、所定周期で（１６）式を用いて次の周期におけるその欲求のパラメータ値Ｉ［ｋ＋１］を算出し、この演算結果を現在のその欲求のパラメータ値Ｉ［ｋ］と置き換えるようにしてその欲求のパラメータ値を更新する。また、本能モデル７４は、これと同様にして「食欲」を除く各欲求のパラメータ値を更新する。
【０１８７】
【数１５】
2005078375.tif 000017
【０１８８】
なお、認識結果及び出力セマンティクスコンバータモジュール６８からの通知などが各欲求のパラメータ値の変動量△Ｉ［ｋ］にどの程度の影響を与えるかは予め決められており、例えば出力セマンティクスコンバータモジュール６８からの通知は、「疲れ」のパラメータ値の変動量△Ｉ［ｋ］に大きな影響を与えるようになっている。
【０１８９】
なお、本実施の形態においては、各情動及び各欲求（本能）のパラメータ値がそれぞれ0から100までの範囲で変動するように規制されており、また係数ｋｅ、ｋｉの値も各情動及び各欲求ごとに個別に設定されている。
【０１９０】
一方、ミドル・ウェア・レイヤ４０の出力セマンティクスコンバータモジュール６８は、図２１に示すように、上述のようにしてアプリケーション・レイヤ４１の行動切換モジュール７１から与えられる「前進」、「喜ぶ」、「鳴く」又は「トラッキング（ボールを追いかける）」といった抽象的な行動コマンドを出力系６９の対応する信号処理モジュール６１〜６７に与える。
【０１９１】
そしてこれら信号処理モジュール６１〜６７は、行動コマンドが与えられると当該行動コマンドに基づいて、その行動を行うために対応するアクチュエータ２６１〜２６ｎ（図１９）に与えるべきサーボ指令値や、スピーカ２４（図１９）から出力する音の音声データ及び又は「目」のＬＥＤに与える駆動データを生成し、これらのデータをロボティック・サーバ・オブジェクト３２のバーチャル・ロボット３３及び信号処理回路１４（図１９）を順次介して対応するアクチュエータ２６１〜２６ｎ又はスピーカ２４又はＬＥＤに順次送出する。
【０１９２】
このようにしてロボット装置１においては、制御プログラムに基づいて、自己（内部）及び周囲（外部）の状況や、使用者からの指示及び働きかけに応じた自律的な行動を行うことができるようになされている。
【０１９３】
従って、自身の充電池の充電量が減ったり、又はユーザが回りに見当たらないとき等、又は上述の充電ポールを発見した際に等には、自身でその充電ステーションまでの行動を算出し、自己充電することができる。この際、上述した如く、ロボット装置は、上記ポール１００のパターンを検出することでポール１００の方向を認識することができ、例えば距離センサ等によりポール１００までの距離を測定しておけば、ポール１００、すなわち充電ステーションまでの相対位置を認識でき、従って充電ステーションまでの最適な経路計画を立てることができる。このような動作は、ロボット装置が知能的に見える手助けとなり、ユーザに親近感や満足感を与えることができ、エンターテイメント性の更なる向上となる。
【０１９４】
また、上述の方向認識可能な対象物を使用すれば、ロボット装置が周囲の環境を同定する際に極めて有効的である。例えばロボット装置自身が現在どの部屋にいるかを認識する際、例えばランドマーク等を複数設置し、その位置関係を覚えるような方法があるが、方向認識可能なポール１００を使用すれば、任意の部屋と、上述のポールとを対応付けておけば、ポール１００のみで上記部屋を同定できると供に、ポール１００により方向情報が得られるため、ポール１００に対する相対位置からロボット装置自身が部屋のどの位置にいるかを把握することができる。
【図面の簡単な説明】
【０１９５】
【図１】本発明の実施の形態における方向認識用部材としてのポールを示す斜視図である。
【図２】上記ポールの側面の展開図であって、ポール表面のパターンを示す図である。
【図３】上記ポールの上面図であって、領域分割方法を説明する図である。
【図４】本発明の実施の形態における方向認識装置を示すブロック図である。
【図５】上記方向認識装置において、パターンデータから登録画像を生成して登録する場合の登録画像の登録方法を示すフローチャートである。
【図６】分割数Ｎ＝８とした場合の登録画像の登録例を示す図である。
【図７】上記方向認識装置において、ポールを撮影して登録画像を生成し、登録画像を登録する場合であって、背景を統一して撮影された場合の登録画像を示す図である。
【図８】上記方向認識装置において、ポールを撮影して登録画像を生成し、登録画像を登録する場合であって、（ａ）乃至（ｃ）は、それぞれ同一方向情報に対応付けられる登録画像viewＮを異なる背景で撮影された場合の登録画像を示す図である。
【図９】上記ポールの側面の展開図であって、ポール表面のパターンの他の例を示す図である。
【図１０】上記方向認識装置に好適に使用される画像認識装置であって、特願２００３−１２４５２５号に記載の画像認識装置の概略構成を示す図である。
【図１１】上記画像認識装置の特徴点抽出部における画像の多重解像度ピラミッド構造の構築方法を説明する図である。
【図１２】第Ｌレベルまでの解像度変化によって位置の変化がないような特徴点の検出処理を説明するフローチャートである。
【図１３】第３レベルまでの解像度変化によって位置の変化がないような特徴点を検出する場合の例を示す図である。
【図１４】上記画像認識装置の特徴量保持部における処理を説明する図であり、（ａ）は、特徴点から半径３．５ピクセルの範囲内を近傍構造とした場合における特徴点近傍の濃度勾配情報の例を示し、（ｂ）は、（ａ）の濃度勾配情報から得られる勾配方向ヒストグラムの例を示す。
【図１５】上記画像認識装置の特徴量比較部における処理の詳細を説明するフローチャートである。
【図１６】濃度勾配ベクトルＵｍ，Ｕｏ間の類似度の計算手法を説明する図である。
【図１７】同画像認識装置のモデル姿勢推定部における処理の詳細を説明するフローチャートである。
【図１８】本発明の実施の形態におけるロボット装置の外観構成を示す斜視図である。
【図１９】同ロボット装置の回路構成を示すブロック図である。
【図２０】同ロボット装置のソフトウェア構成を示すブロック図である。
【図２１】同ロボット装置のソフトウェア構成におけるミドル・ウェア・レイヤの構成を示すブロック図である。
【図２２】同ロボット装置のソフトウェア構成におけるアプリケーション・レイヤの構成を示すブロック図である。
【図２３】同アプリケーション・レイヤの行動モデルライブラリの構成を示すブロック図である。
【図２４】同ロボット装置の行動決定のための情報となる有限確率オートマトンを説明するために使用した図である。
【図２５】有限確率オートマトンの各ノードに用意された状態遷移表を示す図である。
【符号の説明】
【０１９６】
１  ロボット装置、１００  ポール、１０１  中心軸、１１０  方向認識装置、１１１  撮像部、１１２  登録データベース、１１３  画像認識部、１１４  方向判定部、２０１  画像認識装置、２１０ａ，２１０ｂ  特徴点抽出部、２１１ａ，２１１ｂ  特徴量保持部、２１２  特徴量比較部、２１３  モデル姿勢推定部、２１４  候補対応特徴点ペア選択部、ＳＮ  Ｎ分割側面領域、ＡＰＮ  放射状領域、ＡＣＮ  センタ、viewＮ  登録画像
【図１】
2005078375.tif 000018
【図２】
2005078375.tif 000019
【図３】
2005078375.tif 000020
【図４】
2005078375.tif 000021
【図５】
2005078375.tif 000022
【図６】
2005078375.tif 000023
【図７】
2005078375.tif 000024
【図８】
2005078375.tif 000025
【図９】
2005078375.tif 000026
【図１０】
2005078375.tif 000027
【図１１】
2005078375.tif 000028
【図１２】
2005078375.tif 000029
【図１３】
2005078375.tif 000030
【図１４】
2005078375.tif 000031
【図１５】
2005078375.tif 000032
【図１６】
2005078375.tif 000033
【図１７】
2005078375.tif 000034
【図１８】
2005078375.tif 000035
【図１９】
2005078375.tif 000036
【図２０】
2005078375.tif 000037
【図２１】
2005078375.tif 000038
【図２２】
2005078375.tif 000039
【図２３】
2005078375.tif 000040
【図２４】
2005078375.tif 000041
【図２５】
2005078375.tif 000042