"直接観測できない追跡対象の状態を推定するために、観測可能な事象から得られる観測を取得する取得手段と、前時刻に予測された前記追跡対象の状態の事前確率分布を表す複数のパーティクル各々が示す状態から推定される観測の、前記取得手段により取得された観測に対する尤もらしさを示す尤度各々と、前記事前確率分布とに基づいて、前記追跡対象の状態の事後確率分布を推定する事後確率分布推定手段と、前記事後確率分布推定手段により推定された事後確率分布に基づく事前確率分布、及び観測の類似度から予め求めた状態の類似性に従って得られる、現在の観測と類似する観測に対応する状態が示す確率分布に基づいて、次時刻の前記追跡対象の状態の事前確率分布を予測する事前確率分布予測手段と、を含む状態追跡装置。前記事前確率分布予測手段は、前記事後確率分布推定手段により推定された事後確率分布に従ってサンプリングされた現在のパーティクルに基づく事前確率分布を示すパーティクル、及び前記現在の観測と類似する観測に対応する状態を示すパーティクルとして、前記状態の類似性に従ってサンプリングされたパーティクルを用いて、前記次時刻の前記追跡対象の状態の事前確率分布を予測する請求項1記載の状態追跡装置。前記状態の類似性を、複数の前記追跡対象の状態各々から推定された観測各々の類似度に基づいて、前記観測同士が類似する前記追跡対象の状態同士を対応付けたテーブルとして予め定めた請求項1または請求項2記載の状態追跡装置。前記状態の類似性を、前記追跡対象の状態、及び該追跡対象の状態から推定された観測を含む多次元データが各セルに埋め込まれる共に、セル間の距離が近いほど該セルに埋め込まれた前記多次元データ同士の類似度が高くなる自己組織化マップとして予め定めた請求項1または請求項2記載の状態追跡装置。前記追跡対象の状態と該追跡対象の状態から推定された観測とを対応付けた学習用データを学習することにより、前記状態の類似性を学習する類似性学習手段を更に含む請求項1~請求項4のいずれか1項記載の状態追跡装置。取得手段と、事後確率分布推定手段と、事前確率分布予測手段とを含む状態追跡装置における状態追跡方法であって、前記取得手段は、直接観測できない追跡対象の状態を推定するために、観測可能な事象から得られる観測を取得し、前記事後確率分布推定手段は、前時刻に予測された前記追跡対象の状態の事前確率分布を表す複数のパーティクル各々が示す状態から推定される観測の、前記取得手段により取得された観測に対する尤もらしさを示す尤度各々と、前記事前確率分布とに基づいて、前記追跡対象の状態の事後確率分布を推定し、前記事前確率分布予測手段は、前記事後確率分布推定手段により推定された事後確率分布に基づく事前確率分布、及び観測の類似度から予め求めた状態の類似性に従って得られる、現在の観測と類似する観測に対応する状態が示す確率分布に基づいて、次時刻の前記追跡対象の状態の事前確率分布を予測する状態追跡方法。前記状態追跡装置は、更に類似性学習手段を含み、前記類似性学習手段は、前記追跡対象の状態と該追跡対象の状態から推定された観測とを対応付けた学習用データを学習することにより、前記状態の類似性を学習する請求項6記載の状態追跡方法。コンピュータを、請求項1~請求項5のいずれか1項記載の状態追跡装置を構成する各手段として機能させるための状態追跡プログラム。パーティクルフィルタでは、追跡対象の状態の事前及び事後確率分布を、有限個のパーティクル粒子の集合で表現する。粒子の密度が確率密度分布に相当する。パーティクルによる表現により、任意の分布を近似することが可能となる。しかしながら、有限個のパーティクルにより確率分布を表現するため、局所最適解に陥ってしまい、追跡に失敗してしまうことがある、という問題がある。この問題を図9に模式的に示す。図9は横軸にパラメータ空間を、縦軸に事後確率をとったものである。曲線は事後確率関数を表し、真の事後確率である。また横軸上のドットは、事後確率関数をパーティクルにより表現したものである。パーティクルフィルタの枠組みでは、パーティクルは確率的に生成されるため、必ずしも同図aの様に全ての山事後確率が高くなっている部分にパーティクルが生成されるとは限らず、特に、事後確率関数が複雑な場合には、同図bのようにパーティクルが生成されない山ができてしまう可能性がある。このような事後確率分布から、次時刻における事前確率分布を推定すると、同図bの一番右側の山周辺には事前確率分布が生成されず、局所最適解に陥り、次時刻において追跡対象の追跡に失敗してしまう可能性がある、という問題がある。本発明は上記問題点に鑑みてなされたものであり、局所最適解に陥ることを防止して、追跡対象の状態を追跡することができる状態追跡装置、方法、及びプログラムを提供することを目的とする。上記目的を達成するために第1の発明の状態追跡装置は、直接観測できない追跡対象の状態を推定するために、観測可能な事象から得られる観測を取得する取得手段と、前時刻に予測された前記追跡対象の状態の事前確率分布を表す複数のパーティクル各々が示す状態から推定される観測の、前記取得手段により取得された観測に対する尤もらしさを示す尤度各々と、前記事前確率分布とに基づいて、前記追跡対象の状態の事後確率分布を推定する事後確率分布推定手段と、前記事後確率分布推定手段により推定された事後確率分布に基づく事前確率分布、及び観測の類似度から予め求めた状態の類似性に従って得られる、現在の観測と類似する観測に対応する状態が示す確率分布に基づいて、次時刻の前記追跡対象の状態の事前確率分布を予測する事前確率分布予測手段と、を含んで構成されている。第1の発明の状態追跡装置によれば、取得手段が、直接観測できない追跡対象の状態を推定するために、観測可能な事象から得られる観測を取得する。そして、事後確率分布推定手段が、前時刻に予測された追跡対象の状態の事前確率分布を表す複数のパーティクル各々が示す状態から推定される観測の、取得手段により取得された観測に対する尤もらしさを示す尤度各々と、事前確率分布とに基づいて、追跡対象の状態の事後確率分布を推定し、事前確率分布予測手段が、前記事後確率分布推定手段により推定された事後確率分布に基づく事前確率分布、及び観測の類似度から予め求めた状態の類似性に従って得られる、現在の観測と類似する観測に対応する状態が示す確率分布に基づいて、次時刻の前記追跡対象の状態の事前確率分布を予測する。このように、次時刻の追跡対象の状態の事前確率分布を予測する際に、現在の観測と類似する観測に対応する状態が示す確率分布も加えることにより、局所最適解に陥ることを防止して、追跡対象の状態を追跡することができる。また、前記事前確率分布予測手段の処理をパーティクルにより記述すると、前記事前確率分布予測手段は、前記事後確率分布推定手段により推定された事後確率分布に従ってサンプリングされた現在のパーティクルに基づく事前確率分布を示すパーティクル、及び前記現在の観測と類似する観測に対応する状態を示すパーティクルとして、前記状態の類似性に従ってサンプリングされたパーティクルを用いて、前記次時刻の前記追跡対象の状態の事前確率分布を予測することができる。また、前記状態の類似性を、複数の前記追跡対象の状態各々から推定された観測各々の類似度に基づいて、前記観測同士が類似する前記追跡対象の状態同士を対応付けたテーブルとして予め定めておいたり、前記追跡対象の状態、及び該追跡対象の状態から推定された観測を含む多次元データが各セルに埋め込まれる共に、セル間の距離が近いほど該セルに埋め込まれた前記多次元データ同士の類似度が高くなる自己組織化マップとして予め定めておいたりすることができる。これにより、現在の観測と類似する観測に対応する状態が示す確率分布も用いた事前確率分布の予測が可能になる。また、第1の発明の状態追跡装置は、前記追跡対象の状態と該追跡対象の状態から推定された観測とを対応付けた学習用データを学習することにより、前記状態の類似性を学習する類似性学習手段を更に含んで構成することもできる。また、第2の発明の状態追跡方法は、取得手段と、事後確率分布推定手段と、事前確率分布予測手段とを含む状態追跡装置における状態追跡方法であって、前記取得手段は、直接観測できない追跡対象の状態を推定するために、観測可能な事象から得られる観測を取得し、前記事後確率分布推定手段は、前時刻に予測された前記追跡対象の状態の事前確率分布を表す複数のパーティクル各々が示す状態から推定される観測の、前記取得手段により取得された観測に対する尤もらしさを示す尤度各々と、前記事前確率分布とに基づいて、前記追跡対象の状態の事後確率分布を推定し、前記事前確率分布予測手段は、前記事後確率分布推定手段により推定された事後確率分布に基づく事前確率分布、及び観測の類似度から予め求めた状態の類似性に従って得られる、現在の観測と類似する観測に対応する状態が示す確率分布に基づいて、次時刻の前記追跡対象の状態の事前確率分布を予測する方法である。また、第2の発明において、前記状態追跡装置は、更に類似性学習手段を含み、前記類似性学習手段は、前記追跡対象の状態と該追跡対象の状態から推定された観測とを対応付けた学習用データを学習することにより、前記状態の類似性を学習するようにしてもよい。また、第3の発明の状態追跡プログラムは、コンピュータを、第1の発明の状態追跡装置を構成する各手段として機能させるためのプログラムである。以上説明したように、本発明の状態追跡装置、方法、及びプログラムによれば、パーティクルフィルタに基づいて、動的に変化する状態を追跡する場合において、次時刻の追跡対象の状態の事前確率分布を予測する際に、現在の観測と類似する観測に対応する状態が示す確率分布も加えることにより、局所最適解に陥ることを防止して、追跡対象の状態を追跡することができる、という効果が得られる。以下、図面を参照して本発明の実施の形態を詳細に説明する。第1の実施の形態に係る状態追跡装置10は、CPUCentralProcessingUnitと、RAMRandomAccessMemoryと、後述する追跡処理ルーチン及び類似性学習処理ルーチンを実行するためのプログラムを記憶したROMReadOnlyMemoryとを備えたコンピュータで構成されている。このコンピュータは、機能的には、図1に示すように、追跡部20及び学習部30を含んだ構成で表すことができる。追跡部20は、初期設定部22、観測取得部24、事後確率分布推定部26、及び事前確率分布予測部28を含んだ構成で表すことができる。また、学習部30は、類似性学習部32及び類似性データ記憶部34を含んだ構成で表すことができる。追跡対象の状態の追跡に先立って、類似性学習部32により観測空間での追跡対象の状態の類似性を学習し、類似性データとして類似性データ記憶部34に記憶しておく。初期設定部22は、追跡対象の状態パーティクルの初期状態を設定する。設定方法は周知技術を用いればよく、様々な方法が考えられる。例えば、パーティクルを広く分布させた初期状態を設定することができる。具体的には、可能性のある全ての状態を表すパーティクルを初期状態として作成する。そして、作成したパーティクルの集合を全探索することで追跡対象を発見し、追跡を開始する。ただし、この場合初期化に極めて時間がかかることが予想される。また、別の設定方法として、検出手法を用いてもよい。例えば、カメラで撮影された画像上の顔を追跡対象とする場合では、顔検出装置の結果を用いてパーティクルの初期状態を設定する。パーティクルの状態は、パラメータの組で表現する。この場合は、正面を向いた顔を検出する装置を用いて、検出された顔の位置と、角度として正面を向いているという情報とをパーティクルの状態を表すパラメータの初期値として設定する。また、さらに別の設定方法として、アプリケーションにより人手でパーティクルの初期状態を与えるようにしてもよい。パーティクルの初期状態の設定はどのような方法で行ってもよく、追跡対象に合わせて選択すればよい。設定したパーティクルの初期状態の集合は、事後確率分布推定部26において事前確率分布を表すパーティクルの集合として利用される。観測取得部24は、追跡対象の状態を推定するための実際の観測を取得する。例えば、上記のように画像上の顔を追跡対象とする場合には、カメラで撮影された画像の各画素値を観測として取得する。事後確率分布推定部26は、初期設定部22で設定された事前確率分布、または後述する事前確率分布予測部28により予測された事前確率分布を表すパーティクルの集合に含まれる各パーティクルについて、パーティクルの示す状態から推定される観測を求める。パーティクルの状態から推定した観測と観測取得部24で取得した実際の観測とを比較することにより、推定した観測の実際の観測に対する尤もらしさを示す尤度を求める。そして、事前確率分布と尤度とに基づいて事後確率分布を算出する。ここで、パーティクルの示す状態及び観測について具体例を挙げて説明する。カメラ映像を用いて物体を追跡する場合であれば、パーティクルの示す状態は追跡する物体の位置及び姿勢などを表すパラメータ例えば、X,Y,Z座標やピッチ角度、ロール角度、ヨー角度等であり、実際の観測はカメラにより撮影された画像、つまり実際に観測することができる事象である。また、他の例として、距離センサを用いて自走式ロボットの位置を追跡する場合であれば、パーティクルの示す状態は追跡する自走式ロボットの位置を表すパラメータであり、実際の観測は距離センサの出力となる。カメラ映像を用いて物体を追跡する場合において、テンプレート照合に基づいた追跡をパーティクルフィルタで行う場合を例に、事後確率分布推定部26の具体処理を説明する。まず、テンプレート画像に、事前確率分布を表すパーティクルの状態に従った幾何学変形平行移動及び回転を加えたテンプレートの観測画像を推定する。このような幾何学変形は一般的な行列演算によって実現できる。実際の観測としては、画像画素値の集合が取得される。事前確率分布を表すパーティクルの状態から推定されたテンプレートの観測と、実際の画像とを比較することで尤度を求める。この比較方法として、各画素の差の絶対値、各画素の自乗誤差、各画素の差に何らかの関数ロバスト関数などを適用したものなどが用いられる。ただし、比較方法はこれに限定されない。そして、尤度と事前確率分布とからパーティクルの事後確率分布を推定する。なお、顔姿勢を推定する場合の事後確率分布推定の例は、非特許文献1に詳しく述べられている。類似性データ記憶部34には、観測空間でのパーティクルの類似性を対応付けた類似性データが記憶されている。類似性データは、例えば、図2に示すようなテーブル形式で保持することができる。図2の場合の類似性データは、各パーティクルを識別するための識別番号であるパーティクルid、追跡対象の状態を示すパラメータ、及びそのパラメータから推定される観測と類似した観測を持つパーティクルのパーティクルid、及び観測同士の類似度を含む。ここでの追跡対象の状態を示すパラメータは、テンプレート照合に基づいて、パーティクルフィルタにより状態位置及び姿勢を求める場合のパラメータの一部であり、一例として、x0x位置、、xrヨー角度がパラメータとして定められている。事前確率分布予測部28は、事後確率分布推定部26で推定された事後確率分布と、類似性データ記憶部34に記憶された類似性データとに基づいて次時刻でのパーティクルの状態事前確率分布を予測する。従来のパーティクルフィルタの枠組みでは、事前確率分布推定は、事後確率分布からパーティクルの集合をサンプリングし、各パーティクルの状態に対して、ランダムウォークのダイナミクスを仮定したガウシアンノイズを重畳して、事前確率分布を表すパーティクルの集合としている。なお、サンプリングとは、パーティクルの集合から、パーティクルを選択することを意味する。ここで、従来のパーティクルフィルタは、事前確率分布の予測にあたって、パラメータの状態空間での類似性にのみ着目している。一方、本実施の形態では、類似性データ記憶部34に蓄積された類似性データに基づいてサンプリングされるパーティクルを併せて利用して事前確率分布を予測する。具体的には、従来のパーティクルフィルタの手法と同様に、事後確率分布に基づいてサンプリングされたパーティクルに、ダイナミクスを考慮した変換を加え、事前確率分布を表すパーティクルのひとつとする。ここで、ダイナミクスを考慮した変換とは、ダイナミクスとして、ランダムウォークを仮定する場合には、ガウスノイズを付加することに相当する。また、等速運動を仮定する場合には、一時刻前から現在までのパラメータの変化を加え、さらにガウスノイズを付加することに相当する。さらに、類似性データ記憶部34に記憶された類似性データに基づいて、現在のパーティクル事後確率分布に基づいてサンプリングされたパーティクルと類似したパーティクルを検索し、そのパーティクルの状態に対応するパラメータにガウスノイズを付加し、これを次時刻での事前確率分布を表すパーティクルのひとつに加える。図2に示した類似性データを用いる場合には、現在のパーティクルのパーティクルidを検索し、そのパーティクルidに対応付けられている類似したパーティクルidに対応するパーティクルの状態に対応するパラメータにガウスノイズを付加し、これを次時刻での事前確率分布を表すパーティクルのひとつに加える。このように、観測空間における類似性を考慮した類似性データに基づいて、現在のパーティクルに類似するパーティクルを事前確率分布の予測に加えることにより、図9bで示したように、従来のパラメータ空間の類似性だけを考慮した場合には作成できなかったパーティクルについても作成できる可能性が高くなり、局所最適解に陥ることを抑制することができる。類似性学習部32は、類似性データを学習し、類似性データ記憶部34に記憶する。パーティクルフィルタの枠組みでは、パーティクルの状態から観測を推定することが可能である。そのため、パーティクルの状態を変化させながら観測を推定し、観測空間においてパラメータがどのように類似しているかを学習する。具体的には、想定される全てのパーティクルについて観測を推定し、観測同士の類似度を計算し、類似度が閾値以上であれば、観測が類似するパーティクル同士を対応付けて、例えば、図2に示すようなテーブル形式で類似性データを記憶する。次に、図3を参照して、第1の実施の形態の状態追跡装置10において実行される類似性学習処理ルーチンについて説明する。ここでは、カメラ映像から顔の位置及び姿勢を追跡する場合を例に説明する。ステップ100で、想定される全てのパーティクルの状態の組S={s1,,sN}を作成する。ここで、skはidがkのパーティクルの状態を表し、sk={x0k,x1k、、xrk}である。なお、x0、x1、、xrは、パーティクルの状態を表すパラメータであり、例えば、x0=x座標、x1=y座標、、xr=ヨー角度などとなる。x0kは、idがkのパーティクルのパラメータx0の値を示す。次に、ステップ102で、パーティクルidに対応する変数kに1を設定し、次に、ステップ104で、パーティクルの状態skについて観測を推定する。具体的には、テンプレートをパーティクルの状態skを示すパラメータの位置及び姿勢により変形平行移動及び回転することにより、パーティクルの状態からテンプレートの観測画像を推定する。次に、ステップ106で、上記ステップ104で推定した観測を、パーティクルidkと対応付けて、推定観測結果記憶部図示省略に記憶する。次に、ステップ108で、変数kがNになったか否かを判定することにより、パーティクルの状態の組Sに含まれる全てのパーティクルについて処理が終了したか否かを判定する。k≠Nの場合には、ステップ110へ移行して、kを1インクリメントして、ステップ104へ戻り、ステップ104及びステップ106の処理を繰り返す。一方、k=Nとなった場合には、ステップ112へ移行する。ステップ112では、変数iに1を設定し、次に、ステップ114で、推定観測結果記憶部に記憶された観測のうち、パーティクルidiに対応付けられた観測を検索し、パーティクルidiの観測と、パーティクルidjの観測との類似度dを計算する。なお、jは、j∈S、i≠jである。すなわち、パーティクルidjは、推定観測結果記憶部に記憶されたパーティクルidi以外の全てのパーティクルidに相当する。また、類似度dは、例えば、各画素の差の絶対値、各画素の自乗誤差、各画素の差に何らかの関数ロバスト関数などを適用したものなどが用いて計算することができる。なお、類似度の計算はこれらの方法に限定されない。次に、ステップ116で、上記ステップ114で計算した類似度dが、類似度閾値dth以上か否かを判定する。d≧dthの場合には、ステップ118へ移行して、類似性データ記憶部34に記憶されたテーブル形式の類似性データ例えば、図2に、パーティクルidi、パーティクルidj、及び上記ステップ114で計算した類似度dを対応付けて記憶して、ステップ120へ移行する。また、図2に示したテーブルのように、パーティクルの状態siを示す各パラメータの値も共に対応付けて記憶してもよい。一方、d<dthの場合には、ステップ118をスキップして、ステップ120へ移行する。ステップ120では、変数iがNになったか否かを判定することにより、推定観測結果記憶部に記憶された全てのデータについて処理が終了したか否かを判定する。i≠Nの場合には、ステップ122へ移行して、iを1インクリメントして、ステップ114へ戻り、ステップ114~118の処理を繰り返す。一方、i=Nとなった場合には、処理を終了する。次に、図4を参照して、第1の実施の形態の状態追跡装置10において実行される追跡処理ルーチンについて説明する。ここでは、上記の類似性学習処理と同様に、カメラ映像から顔の位置及び姿勢を追跡する場合を例に説明する。ステップ150で、追跡対象の状態を示すパーティクルの初期状態を設定する。例えば、想定される全ての状態を表すパーティクルを初期状態として作成する。次に、ステップ152で、実際にカメラで撮影された画像観測を取得する。次に、ステップ154で、テンプレート画像に、上記ステップ150で設定されたパーティクルの初期状態に従った変形平行移動及び回転を加えて、テンプレートの観測画像を推定する。そして、推定された観測と上記ステップ152で取得された実際の観測とを比較して尤度を求め、求めた尤度とパーティクルの初期状態が示す事前確率分布に基づいて、事後確率分布を推定する。次に、ステップ156で、後述する事前確率分布予測処理を実行して、次に、ステップ158で、追跡処理を終了するか否かを判定する。この判定は、実際の観測として次フレームの画像が取得されているか否か、処理終了を指示する信号が入力されているか否か等により判定することができる。追跡処理を終了しない場合には、ステップ152へ戻って、ステップ152~156の処理を繰り返す。ステップ158で否定判定されタ後に、ステップ154へ移行した場合には、ステップ154の事後確率分布の推定に用いられる事前確率分布は、上記ステップ150の初期設定された事前確率分布ではなく、ステップ156で前時刻に予測された事前確率分布を用いる。ステップ158で肯定判定された場合には、処理を終了する。次に、図5を参照して、事前確率分布予測処理ルーチンについて説明する。ここでは、図2に示すテーブル形式の類似性データを用いる場合について説明する。ステップ1560で、上記ステップ154で推定された事後確率分布に従って、事後確率分布を表すパーティクル集合から、パーティクルをひとつサンプリングする。次に、ステップ1562で、従来のパーティクルフィルタの手法と同様に、上記ステップ1560でサンプリングしたパーティクルの状態を表すパラメータに、ダイナミクスを考慮した変換を加え、事前確率分布を表すパーティクルのひとつを作成する。次に、ステップ1564で、乱数rを発生させ、次に、ステップ1566で、乱数rが乱数閾値rth以上か否かを判定する。r≧rthの場合には、ステップ1568へ移行し、r<rthの場合には、ステップ1568をスキップして、ステップ1570へ移行する。ステップ1568では、類似性データ記憶部34に記憶されたテーブル形式の類似性データを参照して、上記ステップ1560でサンプリングされたパーティクルのパーティクルidを検索し、そのパーティクルidに対応付けられている類似したパーティクルidに対応するパーティクルの状態を表すパラメータに、ダイナミクスを考慮した変換を加え、事前確率分布を表すパーティクルのひとつとして加える。なお、ここでは、乱数の閾値判断により類似性データに基づくパーティクルの追加を行うか否かを判定しているが、これは、次時刻の事前確率分布を予測するに当たり、多くの場合は、現在のパーティクルの近くのパーティクル、すなわちパラメータ空間において類似するパーティクルをサンプリングすることで対応できると考えられるため、現在のパーティクルの全てについて、類似性データに基づくパーティクルを追加する必要はないからである。また、類似性データに基づくパーティクルの追加を行うか否かの判定は、乱数の閾値判断で行う場合に限定されず、ランダムに行うようにしてもよいし、上記ステップ1560において、予め定めたidのパーティクルがサンプリングされた際に行うようにしてもよい。次に、ステップ1570で、作成された事前確率分布を表すパーティクルの数が、予め定めた所定個に達したか否かを判定する。所定個は、一般的なパーティクルフィルタと同様に、固定の値としてもよいし、追跡対象の状態に応じて適応的に変更してもよい。パーティクル数が所定個に達していない場合には、ステップ1560へ戻って、ステップ1560~1570の処理を繰り返す。パーティクル数が所定個に達した場合には、追跡処理図4にリターンする。以上説明したように、第1の実施の形態の状態追跡装置によれば、パーティクルフィルタに基づいて、動的に変化する状態を追跡する場合において、次時刻の事前確率分布を予測する際に、観測空間において現在のパーティクルと類似するパーティクルも加えることにより、局所最適解に陥ることを防止して、追跡対象の状態を追跡することができる。次に、第2の実施の形態について説明する。第2の実施の形態の状態追跡装置は、類似性データをSOMSelforganizingfeaturemap:自己組織化マップの形式で記憶しておく点が、第1の実施の形態と異なる。なお、第2の実施の形態の状態追跡装置において、第1の実施の形態の状態追跡装置10と同一の構成については、同一符号を付して、詳細な説明を省略する。図1に示すように、第2の実施の形態の状態追跡装置210を構成するコンピュータは、機能的には、追跡部220及び学習部230を含んだ構成で表すことができる。追跡部220は、初期設定部22、観測取得部24、事後確率分布推定部26、及び事前確率分布予測部228を含んだ構成で表すことができる。また、学習部230は、類似性学習部232及び類似性データ記憶部34を含んだ構成で表すことができる。類似性データ記憶部234には、観測空間でのパラメータの類似性を対応づけた類似性データが記憶されている。類似性データは、例えば、図6に示すようなSOMとして保持することができる。SOMとは、高次元データを低次元に圧縮する方法で、可視化の性能に優れた1次元または2次元の情報への圧縮が一般的である。ここでは、2次元データへの圧縮を例にとって説明する。図6は、SOMの例であり、M×Mの2次元データ以下、2次元マップと呼ぶへ、位置X,Y,Zの3次元及び姿勢ピッチ角度、ロール角度、ヨー角度の3次元と、位置及び姿勢状態から推定された観測L次元とをあわせた多次元データを圧縮している。図6の各セルは、それぞれ位置及び姿勢の6次元と観測のL次元とを合わせた多次元データを持ち、隣接するセル同士が有する多次元データは、互いに類似する。ここで、観測のL次元は、画像の表現方法に依存する。観測を単純な画素値の集合とする場合、画像のピクセル数がLとなる。事前確率分布予測部228は、第1の実施の形態における事前確率分布予測部28と、類似性データに基づくパーティクルを追加する処理が異なるだけであるので、異なる点について説明する。事前確率分布予測部228は、現在のパーティクル事後確率分布に基づいてサンプリングされたパーティクルの状態から、そのときの観測を推定し、状態及び推定された観測を含む多次元データを得る。その多次元データと、SOMアルゴリズムに基づいて作成された2次元マップの各セル多次元データを保持しているとの類似性を比較し、最も類似したセルを選択する。この比較は、自乗誤差の逆数などにより行うのが一般的である。さらに、位置、姿勢、及び推定された観測各々を異なる重み付けで足し合わせてもよい。このようにして選択された最も類似したセルを勝ちニューロンと呼ぶ。そして、勝ちニューロンの近傍からセルをひとつサンプリングする。このサンプリングは、2次元マップ上で、勝ちニューロンに近ければ近いほど高い確率でサンプリングされ、勝ちニューロンから離れるに従って、サンプリングされ難くなるように行う。具体的には、正規乱数に従った乱数を用いることで、勝ちニューロンの近傍ほど高い確率でサンプリングされるようにすることができる。そして、サンプリングされたセルが保持する多次元データのうち、位置及び姿勢状態のデータを用い、そこに誤差成分を付加することで、事前確率分布を表すパーティクルに加える。誤差成分の付加には、正規乱数などが一般に利用される。ここで、2次元マップ上では、位置及び姿勢だけでなく、推定された観測を含めた多次元データが類似しているセル同士が近傍に配置されている。つまり、2次元マップ上で近傍を探索することは、単に、位置及び姿勢が類似しているパーティクルをサンプリングする一般的なパーティクルフィルタと比較して、観測までを含めた類似性を考慮した事前確率分布予測となっているといえる。次に、図7を参照して、第2の実施の形態の状態追跡装置210における類似性学習処理ルーチンについて説明する。なお、第1の実施の形態の類似性学習処理と同一の処理については、同一符号を付して詳細な説明を省略する。ステップ100~104を実行して、パーティクルの状態skについて観測を推定し、次に、ステップ200で、パーティクルの状態skを示すパラメータ、及び上記ステップ104で推定された観測を含む多次元データkを、推定観測結果記憶部図示省略に記憶する。次に、ステップ108及びステップ110を経て、パーティクルの状態の組Sに含まれる全てのパーティクルについて多次元データを作成し、ステップ108で肯定判定されると、ステップ202へ移行する。ステップ202では、SOMの各セルにランダムに多次元データを付与して、SOMを初期化する。次に、ステップ112で、変数iに1を設定し、次に、ステップ204で、推定観測結果記憶部に記憶された多次元データから、多次元データiを選択し、上記ステップ202で初期化されたSOMの各セルの中で最も類似したセル勝ちニューロンを求める。なお、多次元データの選択は、上記のように多次元データの先頭から順番に1つ選択する場合に限定されず、ランダムに選択するようにしてもよい。また、類似の尺度は、多次元データの各次元の値の自乗和や重要度に従った重みを付けたものなどを用いることができる。次に、ステップ206で、2次元マップ上の各セルについて、上記ステップ204で選択された最も類似したセルからの2次元マップ上での距離、及び繰り返し回数ステップ120の判定による繰り返し回数に応じた重みに従って、各セルの多次元データの値を、多次元データiの値に近づけるように更新する。2次元マップ上の距離は、例えば、勝ちニューロンの2次元マップ上での位置Wx,Wyと、各セルの2次元マップ上での位置Sx,Syにより、WxSx2WySy20.5などにより求めることができる。次に、ステップ120及びステップ122を経て、推定観測記憶部に記憶された全ての多次元データについて処理し、ステップ120で肯定判定されると、ステップ208へ移行して、現在のSOMを類似性データとして類似性データ記憶部234へ記憶して、処理を終了する。なお、ステップ206において、繰り返し回数が少ない場合には、2次元マップ上の勝ちニューロンを中心としたより広い範囲のセルの多次元データを更新する。繰り返し回数が多くなるに従い、2次元マップ上の勝ちニューロンを中心としたより狭い範囲、つまり勝ちニューロンの近傍セルの多次元データのみを更新する。また、各繰り返しにおいて、2次元マップ上で勝ちニューロンの近傍にあるセルほど、多次元データiの値により近づくように更新する。これを繰り返し行うことによって、2次元マップ上で、近傍にあるセルが持つ状態を示すパラメータはお互い類似するようになる詳細は、非特許文献2httpjawikipediaorgwikiE887AAE5B7B1E7B584E7B994E58C96E58699E5838F、及び非特許文献3T.コホネン著、徳高平蔵、堀尾恵一、大北正昭、大薮又茂、藤村喜久郎訳自己組織化マップ、シュプリンガーフェアラーク東京、2005年参照。次に、第2の実施の形態の状態追跡装置210において実行される追跡処理ルーチンについて説明する。第2の実施の形態における追跡処理ルーチンは、第1の実施の形態における追跡処理ルーチン図4と、ステップ156で実行される事前確率分布予測処理が異なるだけであるので、図8を参照して、第2の実施の形態における事前確率分布予測処理ルーチンについて説明する。なお、第1の実施の形態の事前確率分布処理と同一の処理については、同一符号を付して詳細な説明を省略する。ステップ1560で、上記ステップ154で推定された事後確率分布に従って、事後確率分布を表すパーティクル集合から、パーティクルをひとつサンプリングする。次に、ステップ1562で、上記ステップ1560でサンプリングしたパーティクルの状態を表すパラメータから事前確率分布を表すパーティクルのひとつを作成する。次に、ステップ2560で、上記ステップ1560でサンプリングされた現在のパーティクルの状態から、そのときの観測を推定し、状態及び推定された観測を含む多次元データを得る。その多次元データと、SOMアルゴリズムに基づいて作成された2次元マップの各セルが保持する多次元データとの類似性を比較し、最も類似したセル勝ちニューロンを選択する。次に、ステップ2562で、上記ステップ2560で選択された勝ちニューロンの近傍から、正規乱数に従った乱数を用いることで、勝ちニューロンの近傍ほど高い確率でサンプリングされるように、セルをひとつサンプリングする。次に、ステップ2564で、上記ステップ2564でサンプリングされたセルが保持する多次元データのうち、位置及び姿勢状態のデータを用い、そこに正規乱数などを用いて誤差成分を付加することで、事前確率分布を表すパーティクルとして追加する。次に、ステップ1570で、作成された事前確率分布を表すパーティクルの数が、予め定めた所定個に達したか否かを判定する。パーティクル数が所定個に達していない場合には、ステップ1560へ戻って、ステップ1560~1570の処理を繰り返し、所定個に達した場合には、追跡処理図4にリターンする。以上説明したように、第2の実施の形態の状態追跡装置によれば、パーティクルフィルタに基づいて、動的に変化する状態を追跡する場合において、次時刻の事前確率分布を予測する際に、観測空間において現在のパーティクルと類似するパーティクルも加えることにより、局所最適解に陥ることを防止して、追跡対象の状態を追跡することができる。なお、上記第1及び第2の実施の形態では、追跡部と学習部とを同一のコンピュータで実現する場合について説明したが、個々のコンピュータで構成するようにしてもよい。この場合、類似性データ記憶部は、学習部を構成するコンピュータに設けてもよいし、追跡部を構成するコンピュータに設けてもよいし、また他の外部装置に設けてもよい。追跡部を構成するコンピュータ以外に類似性データ記憶部を設けた場合には、追跡処理の際に、ネットワーク等を介して学習部を構成するコンピュータに設けられた類似性データ記憶部、または他の外部装置に設けられた類似性データ記憶部に記憶された類似性データを読み出すようにするとよい。また、本発明は、上記実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。また、上述の状態追跡装置は、内部にコンピュータシステムを有しているが、コンピュータシステムは、WWWシステムを利用している場合であれば、ホームページ提供環境あるいは表示環境も含むものとする。また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能である。"