"姿勢推定対象が撮影された画像を入力する画像入力手段と、前記姿勢推定対象が持つ追跡対象の特徴量がテンプレートデータとして記憶されたテンプレート記憶手段と、前記追跡対象の3次元動作モデルデータが記憶された3次元動作モデル記憶手段と、前記3次元動作モデルデータを参照して、前記追跡対象について、初期の位置候補を複数設定する位置候補初期設定手段と、前記画像入力手段によって入力した前記画像から、前記追跡対象の位置候補における特徴量を算出し、該特徴量を前記テンプレート記憶手段に記憶された前記テンプレートデータと比較した結果得られる類似度の重みに基づき、前記追跡対象の位置を推定し、前記追跡対象の位置の推定情報を出力する位置推定手段と、前記類似度の重みと、前記3次元動作モデルデータに基づき、前記追跡対象の前記位置候補を改めて設定する位置候補設定手段と、前記位置推定手段による前記追跡対象の位置の推定と、前記位置候補設定手段による前記追跡対象の前記位置候補の設定とを複数回数繰り返すことにより、前記追跡対象の位置を追跡する追跡処理手段と、前記追跡対象の位置の推定情報と、前記3次元動作モデルデータを参照して、前記姿勢推定対象の3次元姿勢を推定する姿勢推定手段とを備えたことを特徴とする姿勢推定装置。前記姿勢推定対象が人体であり、前記追跡対象が関節であることを特徴とする請求項1に記載の姿勢推定装置。姿勢推定対象が撮影された画像を入力する画像入力手段と、前記姿勢推定対象が持つ追跡対象の特徴量がテンプレートデータとして記憶されたテンプレート記憶手段と、前記追跡対象の3次元動作モデルデータが記憶された3次元動作モデル記憶手段とを備える姿勢推定装置における姿勢推定方法であって、前記3次元動作モデルデータを参照して、前記追跡対象について、初期の位置候補を複数設定する位置候補初期設定ステップと、前記画像入力手段によって入力した前記画像から、前記追跡対象の位置候補における特徴量を算出し、該特徴量を前記テンプレート記憶手段に記憶された前記テンプレートデータと比較した結果得られる類似度の重みに基づき、前記追跡対象の位置を推定し、前記追跡対象の位置の推定情報を出力する位置推定ステップと、前記類似度の重みと、前記3次元動作モデルデータに基づき、前記追跡対象の前記位置候補を改めて設定する位置候補設定ステップと、前記位置推定ステップによる前記追跡対象の位置の推定と、前記位置候補設定ステップによる前記追跡対象の前記位置候補の設定とを複数回数繰り返すことにより、前記追跡対象の位置を追跡する追跡処理ステップと、前記追跡対象の位置の推定情報と、前記3次元動作モデルデータを参照して、前記姿勢推定対象の3次元姿勢を推定する姿勢推定ステップとを有することを特徴とする姿勢推定方法。請求項3に記載の姿勢推定方法をコンピュータに実行させるためのことを特徴とする姿勢推定プログラム。しかしながら、動作モデルを利用して、2次元の関節位置から3次元の姿勢を補充する場合、2次元の関節位置の情報の不確かさが増すほど、3次元の姿勢の不確かさも増してしまう。一般に、2次元の関節位置は画像上で取得可能な色やエッジの情報を基に推定するため、安定した推定が困難であるという問題がある。このような問題は、人体及び関節に限られた問題ではなく、姿勢が変化する物例えば、人体やロボットとその物が持つ追跡対象例えば、関節や可動部に関して一般的な問題である。本発明は、このような事情に鑑みてなされたもので、2次元の追跡対象の安定した推定を行い、それに伴って3次元の姿勢推定の精度の向上を実現することができる姿勢推定装置、姿勢推定方法及び姿勢推定プログラムを提供することを目的とする。本発明は、姿勢推定対象が撮影された画像を入力する画像入力手段と、前記姿勢推定対象が持つ追跡対象の特徴量がテンプレートデータとして記憶されたテンプレート記憶手段と、前記追跡対象の3次元動作モデルデータが記憶された3次元動作モデル記憶手段と、前記3次元動作モデルデータを参照して、前記追跡対象について、初期の位置候補を複数設定する位置候補初期設定手段と、前記画像入力手段によって入力した前記画像から、前記追跡対象の位置候補における特徴量を算出し、該特徴量を前記テンプレート記憶手段に記憶された前記テンプレートデータと比較した結果得られる類似度の重みに基づき、前記追跡対象の位置を推定し、前記追跡対象の位置の推定情報を出力する位置推定手段と、前記類似度の重みと、前記3次元動作モデルデータに基づき、前記追跡対象の前記位置候補を改めて設定する位置候補設定手段と、前記位置推定手段による前記追跡対象の位置の推定と、前記位置候補設定手段による前記追跡対象の前記位置候補の設定とを複数回数繰り返すことにより、前記追跡対象の位置を追跡する追跡処理手段と、前記追跡対象の位置の推定情報と、前記3次元動作モデルデータを参照して、前記姿勢推定対象の3次元姿勢を推定する姿勢推定手段とを備えたことを特徴とする。本発明は、前記姿勢推定対象が人体であり、前記追跡対象が関節であることを特徴とする。本発明は、姿勢推定対象が撮影された画像を入力する画像入力手段と、前記姿勢推定対象が持つ追跡対象の特徴量がテンプレートデータとして記憶されたテンプレート記憶手段と、前記追跡対象の3次元動作モデルデータが記憶された3次元動作モデル記憶手段とを備える姿勢推定装置における姿勢推定方法であって、前記3次元動作モデルデータを参照して、前記追跡対象について、初期の位置候補を複数設定する位置候補初期設定ステップと、前記画像入力手段によって入力した前記画像から、前記追跡対象の位置候補における特徴量を算出し、該特徴量を前記テンプレート記憶手段に記憶された前記テンプレートデータと比較した結果得られる類似度の重みに基づき、前記追跡対象の位置を推定し、前記追跡対象の位置の推定情報を出力する位置推定ステップと、前記類似度の重みと、前記3次元動作モデルデータに基づき、前記追跡対象の前記位置候補を改めて設定する位置候補設定ステップと、前記位置推定ステップによる前記追跡対象の位置の推定と、前記位置候補設定ステップによる前記追跡対象の前記位置候補の設定とを複数回数繰り返すことにより、前記追跡対象の位置を追跡する追跡処理ステップと、前記追跡対象の位置の推定情報と、前記3次元動作モデルデータを参照して、前記姿勢推定対象の3次元姿勢を推定する姿勢推定ステップとを有することを特徴とする。本発明は、前記姿勢推定方法をコンピュータに実行させることを特徴とする。本発明によれば、追跡対象関節位置を安定して推定できることに加え、追跡対象の位置推定と同時に姿勢推定対象の3次元姿勢を推定することが可能となるため、3次元の姿勢推定の精度の向上を実現することができるという効果が得られる。以下、図面を参照して、本発明の一実施形態による姿勢推定装置を説明する。図1は同実施形態の構成を示すブロック図である。この図において、符号101は、姿勢を解析する対象となる映像データが記憶された解析映像記憶部である。映像データの一例として、未校正の1台または複数台のカメラによって撮像された映像データから構成される。符号102は、解析映像記憶部101に記憶された映像データを入力する画像入力部であり、入力した映像データを推定処理を行う形式へ変換する。この変換は例えば、色相変換やフレーム補間等である。符号103は、画像入力部102により入力した映像データから画像特徴量などを用いて人体の関節位置の座標を抽出し、解析対象の全フレームに対して追跡処理を行う2次元関節追跡部である。符号104は、2次元関節追跡部103によって追跡した人体の2次元関節位置座標から、3次元の姿勢を推定する3次元姿勢推定部である。符号105は、追跡対象とする領域の特徴や位置等の情報をテンプレートとして記憶するテンプレート記憶部である。テンプレートの形式は、2次元関節追跡部103ので利用する手法に依存する。2次元関節追跡部103は、画像入力部102により入力した映像データの各フレームの画像情報と、テンプレート記憶部105に記憶されたテンプレートから追跡処理を行う。符号106は、3次元姿勢推定部104で推定された3次元の姿勢情報を保持する姿勢情報記憶部である。符号107は、3次元姿勢推定部104において、3次元の姿勢を推定する際に用いる事前3次元動作モデル情報を記憶する事前3次元動作モデル記憶部である。動作モデルは、例えば、非特許文献2のように、3次元動作を低次元特徴で表現したものが適用可能である。符号108は、2次元間接追跡部103が推定した追跡対象の推定状態情報を記憶する推定情報記憶部である。3次元姿勢推定部104は、推定情報記憶部108の2次元の関節位置情報と事前3次元動作モデル記憶部107の動作モデル情報を参照して3次元姿勢を推定する。3次元姿勢推定部104における3次元姿勢の推定処理は公知の方法を用いて行う。ここで、図5を参照して、パーティクルフィルタを用いて2次元関節位置を追跡する処理動作を説明する。パーティクルフィルタを用いる場合、図5に示すように、追跡対象の位置候補を仮説として多数N個生成する。まず、仮説の位置を初期化するSTEP0。そして、各時刻において、仮説位置の特徴量を追跡対象のテンプレート特徴量と比較して、その類似度を重みとして算出するSTEP1。次に、N個の仮説の中からもっともらしいものを選択し、その時刻の推定位置状態とするSTEP2。続いて、次の時刻の準備として重みの大きい仮説を複製し、小さい仮説を消滅させるSTEP3。そして、追跡対象の状態遷移モデルに従って、仮説を移動させてSTEP4、STEP1に戻り、処理を繰り返す。状態遷移モデルは、対象物の運動モデルに基づいて定義することが望ましいが、運動モデルの定式化が難しい場合は、等速直線運動やランダムウォークを想定する。次に、図2を参照して、図1に示す2次元関節追跡部103の動作を説明する。図2は、図1に示す2次元関節追跡部103の動作を示すフローチャートである。まず、2次元関節追跡部103は、時刻tを0としステップS1、解析映像記憶部101に蓄積される解析対象の映像データより時刻tが0であるフレームを取り出し、追跡対象とする関節の初期位置[x0,y0]を指定するステップS2。この指定には、例えば、手動指定や肌色検出、エッジ検出等の画像処理を用いることが可能である。次に、2次元関節追跡部103は、ステップS2において指定した関節位置の特徴量Itempを算出し、これをテンプレートとしてテンプレート記憶部105に保持するステップS3。この特徴量は、例えば、色ヒストグラムやHOG特徴量等、任意のものを用いることが可能である。続いて、2次元関節追跡部103は、追跡対象の位置を状態Φt=[xt,yt]とし、N個の仮説を生成して、ステップS2において指定した初期位置[x0,y0]を中心として分布するように初期化するステップS5。このとき、分布には例えば平均[x0,y0]の正規分布等を用いることが可能である。次に、2次元関節追跡部103は、時刻tが解析フレーム数T以下であるか否かを判定しステップS6、時刻tが解析フレーム数T以下でなければ処理を終了する。一方、時刻tが解析フレーム数T以下であれば、解析映像記憶部101に蓄積されている解析対象の映像データよりt=Tとなるフレーム映像を取り出すステップS7。そして、2次元関節追跡部103は、取り出したフレーム映像に対して、仮説Φit,i=1,2,..,Nの場合の特徴量Iitを算出するステップS10。次に、2次元関節追跡部103は、得られたIitとテンプレート特徴量Itempを比較してその類似度の重みwitを算出するステップS11。重みは、例えば、IitとItempの距離を用いることが可能である。続いて、2次元関節追跡部103は、算出した重みwitより、時刻tにおける状態Φtを推定するステップS12。この推定は、もっとも大きな重みをもつ仮説を選んだり、重みつき平均をとる等の方法によって行うことが可能である。そして、推定した状態情報を推定情報記憶部108のへ保存する。次に、2次元関節追跡部103は、重みwitの大きさに応じて重みの大きい仮説は複製し、小さい仮説は削除することで、推定した状態付近に仮説が集まるようにリサンプリングを行うステップS13。続いて、2次元関節追跡部103は、次の時刻の準備として、追跡対象の状態遷移モデルに基づいて、仮説のサンプリングを行うステップS14。このサンプリングは例えば、等速直線やランダムウォークのモデルによって行う。そして、2次元関節追跡部103は、時刻tに1加算してステップS15、ステップS6に戻って、処理を繰り返す。次に、図3を参照して、図1に示す姿勢推定装置の変形例を説明する。図3は、図1に示す姿勢推定装置の変形例の構成を示すブロック図である。この図において、図1に示す姿勢推定装置と同一の部分には同一の符号を付し、その説明を省略する。図3に示す姿勢推定装置が図1に示す姿勢推定装置と異なる点は、2次元関節追跡部103に代えて、2次元関節追跡部109を設けた点である。2次元関節追跡部109は、画像入力部102により入力した映像データと、テンプレート記憶部105に記憶されたテンプレート情報と、事前3次元動作モデル記憶部107に記憶された動作モデル情報とを参照して追跡処理を行う。次に、図4を参照して、図3に示す2次元関節追跡部109の動作を説明する。図4は、図3に示す2次元関節追跡部109の動作を示すフローチャートである。図4において、図2に示す動作と同一の部分には同一の符号を付し、その説明を省略する。図4に示す動作が図2に示す動作と異なる点は、ステップS4、S51、S8、S9、S121、S141を設けた点である。まず、2次元関節追跡部109は、時刻tを0とするステップS1。解析映像記憶部101に蓄積される解析対象の映像データより時刻tが0であるフレームを取り出し、追跡対象とする関節の初期位置[x0,y0]を指定するステップS2。次に、2次元関節追跡部109は、ステップS2において指定した関節位置の特徴量Itempを算出し、これをテンプレートとしてテンプレート記憶部105に保持するステップS3。続いて、2次元関節追跡部109は、解析対象となる映像の初期視点V0を指定する。この初期視点V0は、3次元姿勢を2次元に投影処理する際に用いる。次に、2次元関節追跡部109は、追跡対象の3次元姿勢Ytと2次元映像への投影視点Vtを状態Φt=[Yt,Vt]とし、N個の仮説を生成して、Vtは先に指定した初期視点V0を中心として分布するように、Ytは事前3次元動作モデル記憶部107に記憶されている動作情報を中心として分布するように初期化するステップS51。次に、2次元関節追跡部109は、時刻tが解析フレーム数T以下であるか否かを判定しステップS6、時刻tが解析フレーム数T以下でなければ処理を終了する。一方、時刻tが解析フレーム数T以下であれば、解析映像記憶部101に蓄積されている解析対象の映像データよりt=Tとなるフレーム映像を取り出すステップS7。そして、時刻tのフレーム映像より、人体の重心位置を算出するステップS8。これは、例えば、腰の位置で表現でき、人体領域のシルエットの面積の重心を用いたりすることで可能である。続いて、2次元関節追跡部109は、ステップS8で用いたフレーム映像に対して、仮説Φit,i=1,2,..,Nの2次元関節位置[xit,yit]を3次元姿勢Yitと投影視点Vitより算出するステップS9。次に、2次元関節追跡部109は、取り出したフレーム映像に対して、仮説Φit,i=1,2,..,Nの場合の特徴量Iitを算出しステップS10、得られたIitとテンプレート特徴量Itempを比較してその類似度の重みwitを算出するステップS11。そして、2次元関節追跡部109は、算出した重みwitより、時刻tにおける状態Φt=[Yt,Vt]と2次元関節位置[xt,yt]を推定するステップS121。ここで、推定した状態情報と2次元関節位置情報を推定情報記憶部108へ保存する。次に、2次元関節追跡部109は、重みwitの大きさに応じて重みの大きい仮説は複製し、小さい仮説は削除することで、推定した状態付近に仮説が集まるようにリサンプリングを行うステップS13。続いて、2次元関節追跡部109は、次の時刻の準備として、追跡対象の状態遷移モデルに基づいて、仮説のサンプリングを行うステップS141。ここで、状態遷移モデルは事前3次元動作モデル記憶部107に保持されている動作情報より定義する。3次元姿勢Yiの状態遷移は、例えば、非特許文献2の動作モデルを用いた場合、1式、2式で与えられる。このとき、である。ここで、Xnは3次元姿勢Ynの低次元表現である。また、kXX,kYXはi番目の要素にkXX,Xi,kYX,Xiをもつベクトルであり、例えば5式、6式のように適当な関数で定義する。このとき、α,βは学習により求めるパラメータである。また、投影視点Viの状態遷移は、例えば、事前学習済みの動作情報より腰位置の並進と回転の変化量を用いて定義する。より具体的には、投影視点をV=[θ,φ]と表現した場合、その視点変化dθn,dφnは、同じ時刻の3次元動作データYと最も近い動作データを事前3次元動作モデル記憶部107から選び、その並進tn-1と回転rn-1からそれぞれ視点の変化量dθtn=tn-tn-1,dθrn=rn-rn-1を求める。全体としての視点変化はdθn=dθtn-dθrnで定義する。φに関しても同様に求められる。次に、2次元関節追跡部109は、時刻tに1加算してステップS15、ステップS6に戻って、処理を繰り返す。以上説明したように、2次元の関節位置を推定する際に、2次元関節位置の追跡を観測される画像情報だけでなく、事前に学習済みの3次元動作情報を利用して行うようにして、従来は2次元関節位置の追跡結果から推定を行っていた3次元動作を2次元関節位置の追跡と同時に行うことが可能となるため、3次元の姿勢推定の精度の向上を実現することができる。なお、図1、図3における処理部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより姿勢推定処理を行ってもよい。なお、ここでいうコンピュータシステムとは、OSや周辺機器等のハードウェアを含むものとする。また、コンピュータシステムは、ホームページ提供環境あるいは表示環境を備えたWWWシステムも含むものとする。また、コンピュータ読み取り可能な記録媒体とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらにコンピュータ読み取り可能な記録媒体とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリRAMのように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する伝送媒体は、インターネット等のネットワーク通信網や電話回線等の通信回線通信線のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル差分プログラムであってもよい。以上、図面を参照して本発明の実施の形態を説明してきたが、上記実施の形態は本発明の例示に過ぎず、本発明が上記実施の形態に限定されるものではないことは明らかである。したがって、本発明の精神及び範囲を逸脱しない範囲で構成要素の追加、省略、置換、その他の変更を行っても良い。"