(57)【要約】【課題】対象情報から追跡対象が追跡可能範囲外に消失し、再度、対象情報に出現した際に、速やかにパラメータの推定を再開することができる時系列パラメータ推定装置を提供することを目的とする。【解決手段】本発明にかかる時系列パラメータ推定装置は、仮説の各パラメータが取り得る値の範囲を記憶する仮説範囲記憶部と、仮説範囲内において、過去の仮説とノイズを用いて、現在の仮説を作成する仮説作成部を有し、仮説作成部は、過去の仮説と評価値を用いて第一予備仮説を作成する第一予備仮説作成部と、第一予備仮説とノイズを用いて第二予備仮説を作成する第二予備仮説作成部と、第二予備仮説のパラメータの値が仮説範囲外の場合には、仮説範囲外のそのパラメータの値を仮説範囲内の最大値または最小値に置換し、追跡仮説を作成する追跡仮説作成部を備える。【選択図】図１
2010117856.tif 000002
【特許請求の範囲】
【請求項１】
パーティクルフィルタを用いた時系列パラメータ推定装置であって、
仮説の各パラメータが取り得る値の範囲を記憶する仮説範囲記憶部と、
前記仮説範囲内において、過去の仮説とノイズを用いて、現在の仮説を作成する仮説作成部と、
１つ以上のパラメータが推定される対象情報と前記仮説を用いて前記仮説の評価値を算出する評価部と、
前記仮説と前記評価値に基づいて推定パラメータを算出するパラメータ推定部と、を有し、
前記仮説作成部は、前記過去の仮説と前記評価値を用いて第一予備仮説を作成する第一予備仮説作成部と、前記第一予備仮説と前記ノイズを用いて第二予備仮説を作成する第二予備仮説作成部と、第二予備仮説のパラメータの値が仮説範囲外の場合には、仮説範囲外の該パラメータの値を仮説範囲内の最大値または最小値に置換し、追跡仮説を作成する追跡仮説作成部を備え、前記追跡仮説を用いて、前記現在の仮説を作成すること、
を特徴とする時系列パラメータ推定装置。
【請求項２】
請求項１記載の時系列パラメータ推定装置であって、
仮説のパラメータの値が正しいパラメータの値に収束しやすいように予め定められたオフセットを記憶するオフセット記憶部を有し、
前記仮説作成部は、前記追跡仮説のパラメータに前記オフセットを加えてオフセット仮説を作成するオフセット仮説作成部を備え、前記オフセット仮説を用いて、前記現在の仮説を作成すること、
を特徴とする時系列パラメータ推定装置。
【請求項３】
請求項１または２記載の時系列パラメータ推定装置であって、
前記仮説作成部の前記追跡仮説作成部は、第二予備仮説のパラメータの値の内、一部のパラメータが仮説範囲外の場合には、仮説範囲外の該パラメータの値を仮説範囲内の最大値または最小値に置換し、他のパラメータの値については前記ノイズの分散を大きくし、追跡仮説を作成すること、
を特徴とする時系列パラメータ推定装置。
【請求項４】
請求項３記載の時系列パラメータ推定装置であって、
正常にパラメータの推定が行われているか否かの判定をする判定部を有し、
前記仮説作成部の前記追跡仮説作成部において、前記他のパラメータは、最後に正常にパラメータの推定が行われた時刻からの異常経過時間に応じて、前記ノイズの分散を大きくして追跡仮説を作成すること、
を特徴とする時系列パラメータ推定装置。
【請求項５】
請求項１から３記載の何れかの時系列パラメータ推定装置であって、
正常にパラメータの推定が行われているか否かの判定をする判定部と、
最後に正常にパラメータの推定が行われた時刻のパラメータの値と該時刻からの経過時間から予測される再開時のデータの値を記憶する再開時データ記憶部と、を有し、
前記仮説作成部は、前記判定部において、正常にパラメータの推定が行われていないと判定された場合には、最後に正常にパラメータの推定が行われた時刻のパラメータの値と該時刻からの異常経過時間から、前記再開時のデータの値を選択し、これを用いて、再開時仮説を作成する再開時仮説作成部を備え、前記再開時仮説を用いて、前記現在の仮説を作成すること、
を特徴とする時系列パラメータ推定装置。
【請求項６】
パーティクルフィルタを用いた時系列パラメータ推定方法であって、
仮説の各パラメータが取り得る値の仮説範囲内において、過去の仮説とノイズを用いて、現在の仮説を作成する仮説作成ステップと、
１つ以上のパラメータが推定される対象情報と前記仮説を用いて前記仮説の評価値を算出する評価ステップと、
前記仮説と前記評価値に基づいて推定パラメータを算出するパラメータ推定ステップと、を有し、
前記仮説作成ステップは、前記過去の仮説と前記評価値を用いて第一予備仮説を作成する第一予備仮説作成ステップと、前記第一予備仮説と前記ノイズを用いて第二予備仮説を作成する第二予備仮説作成ステップと、第二予備仮説のパラメータの値が仮説範囲外の場合には、仮説範囲外の該パラメータの値を仮説範囲内の最大値または最小値に置換し、追跡仮説を作成する追跡仮説作成ステップを備え、前記追跡仮説を用いて、前記現在の仮説を作成すること、
を特徴とする時系列パラメータ推定方法。
【請求項７】
請求項６記載の時系列パラメータ推定方法であって、
前記仮説作成ステップは、作成した追跡仮説のパラメータの値に、仮説のパラメータの値が正しいパラメータの値に収束しやすいように予め定められたオフセットを加えてオフセット仮説を作成するオフセット仮説作成ステップを備え、前記オフセット仮説を用いて、前記現在の仮説を作成すること、
を特徴とする時系列パラメータ推定方法。
【請求項８】
請求項６または７記載の時系列パラメータ推定方法であって、
前記仮説作成ステップの前記追跡仮説作成ステップは、第二予備仮説のパラメータの値の内、一部のパラメータが仮説範囲外の場合には、仮説範囲外の該パラメータの値を仮説範囲内の最大値または最小値に置換し、他のパラメータの値については前記ノイズの分散を大きくし、追跡仮説を作成すること、
を特徴とする時系列パラメータ推定方法。
【請求項９】
請求項８記載の時系列パラメータ推定方法であって、
正常にパラメータの推定が行われているか否かの判定をする判定ステップを有し、
前記仮説作成ステップの前記追跡仮説作成ステップにおいて、前記他のパラメータは、最後に正常にパラメータの推定が行われた時刻からの異常経過時間に応じて、前記ノイズの分散を大きくして追跡仮説を作成すること、
を特徴とする時系列パラメータ推定方法。
【請求項１０】
請求項１から５記載の何れかの時系列パラメータ推定装置としてコンピュータを機能させるための時系列パラメータ推定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、パーティクルフィルタを用いてパラメータの推定を行う時系列パラメータ推定装置、時系列パラメータ推定方法、時系列パラメータ推定プログラムに関する。
【背景技術】
【０００２】
時間的に変化するパラメータを推定するための手法として、パーティクルフィルタがある。パーティクルフィルタでは、各時刻について、推定されるパラメータに対して複数の仮説を作成し、各仮説を評価する。必要に応じて、仮説の作成と評価を繰り返す。その際、既に作成した仮説に対して、評価値に基づき重み付けを行い、大きな重み付けがされた仮説の周辺により多くの仮説を作成する。これをリサンプリングと呼ぶ。そして、仮説と評価値から最終的なパラメータを推定する。逐次上記処理を繰り返すことにより時間的に変化するパラメータを推定することができる。
【０００３】
その動作を、映像中の顔の姿勢（位置、向き）をトラッキング（追跡）する場合を例にあげて簡単に説明する。この場合、推定されるパラメータは、映像中の顔の位置（２次元）、大きさ（１次元）、向き（３次元）（以下、「顔姿勢パラメータ」という）である。まず、これらを含む顔姿勢パラメータの複数の仮説を作成する。各仮説について、現在のフレームの画像に対して当該仮説がどの程度尤もらしいかの評価（尤度評価）を行う。そして各仮説の尤度を用いて最終的な姿勢パラメータ推定を行う。逐次この処理を繰り返し、パラメータを推定し、映像中の顔姿勢をトラッキングする。
【０００４】
ここで、顔姿勢パラメータを推定する場合、各仮説に対する評価値は、仮説が正しいパラメータから離れるに従い評価値が、小さくなっていくことが望ましい。これを実現するために、特徴点における顔の輝度値を用いて評価値を求める方法として、非特許文献１記載の方法がある。
【非特許文献１】Oscar Mateo Lozano, Kazuhiro Otsuka, "Real-time Visual Tracker by Stream Processing -Simultaneous and Fast 3D Tracking of Multiple Faces in Video Sequences by Using a Particle Filter -",[online], 2008年7月12日, Springer New York, Journal of Signal Processing Systems,[平成20年10月28日検索], インターネット<URL: http://www.springerlink.com/content/pk22n1632859082k/fulltext.pdf>
【発明の開示】
【発明が解決しようとする課題】
【０００５】
パーティクルフィルタでは、複数作成した仮説を評価する。しかしながら、推定する対象によっては評価が困難な状況が想定される。例えば、顔姿勢パラメータを推定する場合、一般的に、両目の端が見える範囲を超えた状況下では、顔姿勢パラメータの推定が不安定になることが多い。つまり、映像中の顔についてその顔姿勢パラメータを連続的に求める場合、推定に用いる特徴が映像中から消失するような顔姿勢をとる可能性がある。非特許文献１の方法では、後ろを振り向いてしまい顔がまったく見えない場合、推定に用いる特徴量は消失してしまう。このとき、何れの仮説も適切ではなくなり、望ましい評価値を求めることができない。さらに、誤った評価値を基に、上述のパーティクルフィルタの処理を繰り返し行う。そのため以下のような問題が考えられる。正しいパラメータとは、異なるパラメータに仮説が収束する場合が考えられる。このとき、振り向いて再び顔が出現した場合にも正しい顔姿勢パラメータの推定を再開できないという問題があった。また、異なるパラメータに仮説が収束しない場合であっても、振り向いて再び顔が出現したときに、正しいパラメータから仮説が離れてしまい、正しいパラメータを推定するために多くの時間を要するという問題があった。
【０００６】
本発明の目的は、対象情報（例えば、画像データ）から推定されるパラメータ（例えば、顔姿勢パラメータ）が追跡不可能な状況となり、再度、対象情報に出現した際に、速やかにパラメータの推定を再開することができる時系列パラメータ推定装置、時系列パラメータ推定方法、時系列パラメータ推定プログラムを提供することである。
【課題を解決するための手段】
【０００７】
請求項１記載の時系列パラメータ推定装置は、パーティクルフィルタを用いた時系列パラメータ推定装置であって、仮説の各パラメータが取り得る値の範囲を記憶する仮説範囲記憶部と、仮説範囲内において、過去の仮説とノイズを用いて、現在の仮説を作成する仮説作成部と、１つ以上のパラメータが推定される対象情報と仮説を用いて仮説の評価値を算出する評価部と、仮説と評価値に基づいて推定パラメータを算出するパラメータ推定部と、を有し、仮説作成部は、過去の仮説と評価値を用いて第一予備仮説を作成する第一予備仮説作成部と、第一予備仮説とノイズを用いて第二予備仮説を作成する第二予備仮説作成部と、第二予備仮説のパラメータの値が仮説範囲外の場合には、仮説範囲外のそのパラメータの値を仮説範囲内の最大値または最小値に置換し、追跡仮説を作成する追跡仮説作成部を備え、追跡仮説を用いて、現在の仮説を作成すること、を特徴とする。
【０００８】
請求項６記載の時系列パラメータ推定方法は、パーティクルフィルタを用いた時系列パラメータ推定方法であって、仮説の各パラメータが取り得る値の仮説範囲内において、過去の仮説とノイズを用いて、現在の仮説を作成する仮説作成ステップと、１つ以上のパラメータが推定される対象情報と仮説を用いて仮説の評価値を算出する評価ステップと、仮説と評価値に基づいて推定パラメータを算出するパラメータ推定ステップと、を有し、仮説作成ステップは、過去の仮説と評価値を用いて第一予備仮説を作成する第一予備仮説作成ステップと、第一予備仮説とノイズを用いて第二予備仮説を作成する第二予備仮説作成ステップと、第二予備仮説のパラメータの値が仮説範囲外の場合には、仮説範囲外のそのパラメータの値を仮説範囲内の最大値または最小値に置換し、追跡仮説を作成する追跡仮説作成ステップを備え、追跡仮説を用いて、現在の仮説を作成すること、を特徴とする。
【発明の効果】
【０００９】
本発明の時系列パラメータ推定装置によれば、仮説範囲を用いることで、対象情報から追跡対象が追跡可能範囲外に消失し、再度、対象情報に出現した際に、速やかにパラメータの推定を再開することができる。
【発明を実施するための最良の形態】
【００１０】
ここで、本発明の実施例について説明する。
【実施例１】
【００１１】
［時系列パラメータ推定装置１００］
図１は、実施例１の時系列パラメータ推定装置１００の構成例を示す。図２は、実施例１のフローチャート例を示す。時系列パラメータ推定装置１００は、推定対象読込部１１０と、仮説作成部１３０と、仮説範囲記憶部１５０と、評価部１６０と、判定部１７０と、パラメータ推定部１８０及びオフセット記憶部１９０を有する。
【００１２】
＜ハードウェア構成＞
図３は、実施例１における時系列パラメータ推定装置１００のハードウェア構成例を示す。図３に例示するように、この例の時系列パラメータ推定装置１００は、ＣＰＵ（Central Processing Unit）１１、入力部１２、出力部１３、補助記憶装置１４、ＲＯＭ（Read Only Memory）１５、ＲＡＭ（Random Access Memory）１６及びバス１７を有している。
【００１３】
この例のＣＰＵ１１は、制御部１１ａ、演算部１１ｂ及びレジスタ１１ｃを有し、レジスタ１１ｃに読み込まれた各種プログラムに従って様々な演算処理を実行する。また、入力部１２は、データが入力される入力インターフェース、キーボード、マウス等であり、出力部１３は、データが出力される出力インターフェース等である。補助記憶装置１４は、例えば、ハードディスク、ＭＯ（Magneto-Optical disc）、半導体メモリ等であり、時系列パラメータ推定装置１００としてコンピュータを機能させるためのプログラムが格納されるプログラム領域１４ａ及び各種データが格納されるデータ領域１４ｂを有している。また、ＲＡＭ１６は、ＳＲＡＭ (Static Random Access Memory)、ＤＲＡＭ (Dynamic Random Access Memory)等であり、上記のプログラムが格納されるプログラム領域１６ａ及び各種データが格納されるデータ領域１６ｂを有している。また、バス１７は、ＣＰＵ１１、入力部１２、出力部１３、補助記憶装置１４、ＲＯＭ１５及びＲＡＭ１６を通信可能に接続する。なお、このようなハードウェアの具体例としては、例えば、パーソナルコンピュータの他、サーバ装置やワークステーション等を例示できる。
【００１４】
＜プログラム構成＞
上述のように、プログラム領域１４ａ，１６ａには、実施例１の時系列パラメータ推定装置１００の各処理を実行するための時系列パラメータ推定プログラムが格納される。時系列パラメータ推定プログラムを構成する各プログラムは、単一のプログラム列として記載されていてもよく、また、少なくとも一部のプログラムが別個のモジュールとしてライブラリに格納されていてもよい。また、各プログラムが単体でそれぞれの機能を実現してもよいし、各プログラムがさらに他のライブラリを読み出して各機能を実現するものでもよい。
【００１５】
＜ハードウェアとプログラムとの協働＞
ＣＰＵ１１（図３）は、読み込まれたＯＳ（Operating System）プログラムに従い、補助記憶装置１４のプログラム領域１４ａに格納されている上述のプログラムをＲＡＭ１６のプログラム領域１６ａに書き込む。同様にＣＰＵ１１は、補助記憶装置１４のデータ領域１４ｂに格納されている各種データを、ＲＡＭ１６のデータ領域１６ｂに書き込む。そして、このプログラムやデータが書き込まれたＲＡＭ１６上のアドレスがＣＰＵ１１のレジスタ１１ｃに格納される。ＣＰＵ１１の制御部１１ａは、レジスタ１１ｃに格納されたこれらのアドレスを順次読み出し、読み出したアドレスが示すＲＡＭ１６上の領域からプログラムやデータを読み出し、そのプログラムが示す演算を演算部１１ｂに順次実行させ、その演算結果をレジスタ１１ｃに格納していく。
【００１６】
ここで、推定対象読込部１１０、仮説範囲記憶部１５０及びオフセット記憶部１９０は、補助記憶装置１４、ＲＡＭ１６、レジスタ１１ｃ、その他のバッファメモリやキャッシュメモリ等の何れか、あるいはこれらを併用した記憶領域に相当する。また、仮説作成部１３０、評価部１６０、判定部１７０及びパラメータ推定部１８０は、ＣＰＵ１１に時系列パラメータ推定プログラムを実行させることにより構成されるものである。
【００１７】
また、実施例１の時系列パラメータ推定装置１００は、制御部１１ａの制御のもと各処理を実行する。また、特に示さない限り、演算過程の各データは、逐一、補助記憶装置１４、ＲＡＭ１６、レジスタ１１ｃ、その他のバッファメモリやキャッシュメモリ等の何れか、あるいはこれらを併用した記憶領域に格納・読み出され、各演算処理が進められる。この記憶領域には、ｓ１（ｋ，ｉ）、ｑ（ｋ）等の各データが格納されるが、それらはデータ属性、下付き添え字の値〔例えば、データｓ１（ｋ，ｉ）の下付添え字「１」〕及び（・）内の各値〔例えば、データｑ（ｋ）のｋ〕に対応付けられて格納され、これらを指定することにより、対応するデータを抽出できるものとする。
【００１８】
［時系列パラメータ推定処理］
実施例１では、パーティクルフィルタを用いた時系列パラメータ推定処理の例として、映像データ中の顔姿勢パラメータの推定処理について説明する。なお、本実施例は発明の内容を限定するものではなく、その他パーティクルフィルタを用いて時系列パラメータを推定する際に利用することができる。
【００１９】
［推定対象読込部１１０］
推定対象読込部１１０は、１つ以上のパラメータが推定される対象情報Ｊ（ｋ）を逐次読み込む（ｓ１１０）。但し、ｋはフレーム番号を表す。例えば、顔姿勢パラメータが推定される映像データＪ（ｋ）を、カメラ等から逐次読み込み、計算機等により処理可能な状態となる。但し、補助記憶装置１４等に記憶されている対象情報を読み込んでもよい。また、音の到来方向パラメータを推定するような場合は、マイクロフォン等から対象情報として音響情報が逐次読み込まれる。
【００２０】
［仮説範囲記憶部１５０］
仮説範囲記憶部１５０は、仮説ｓ（ｋ，ｉ）の各パラメータｘ１，ｘ２，…，ｘＭが取り得る値の範囲（以下、「仮説範囲」という）を記憶する。但し、ｉ＝１，２，…，Ｎであり、Ｎは対象情報１フレームに対し作成する仮説の個数を表し、Ｍは仮説の有するパラメータ数を表す。また、仮説範囲とは、言い換えると、後述する評価部１６０において、適切な評価値が得られるパラメータの範囲である。図４に仮説範囲の情報例を示す。図４は、映像から顔向きのパラメータを推定する場合の例であり、Ｐｉｔｃｈパラメータは−４０度以上４０度未満について仮説を正しく評価することができ、それ以外の範囲に関しては、仮に仮説として用いても正しい評価が不可能なため、仮説のパラメータとして用いることができないことを表している。また、例えば、仮説範囲は、ＲＯＭ１５または補助記憶装置１４等から読み込まれ記憶されてもよいし、入力部１２から入力され記憶されてもよい。仮説範囲ｑ（ｋ）は、経験に基づいて予め設定しておくことができる。また、パーティクルフィルタ動作中に仮説範囲ｑ（ｋ）を更新することもできる。これにより、推定状況に応じて仮説範囲を変化させることができる。また、予め複数の仮説範囲が記憶され、推定状況に応じて仮説範囲を選択してもよい。
【００２１】
［仮説作成部１３０］
仮説作成部１３０は、仮説範囲ｑ（ｋ）内において、過去の仮説ｓ（ｋ−１，ｉ）とノイズを用いて、現在の仮説ｓ（ｋ，ｉ）を作成する（ｓ１３０）。詳細は後述する。なお、初期状態では仮説が存在しない。そのため、非特許文献１と同様に、正面顔検出器を用いて正面顔を検出し、検出された位置と、検出時に正面を向いている前提による姿勢によって初期仮説ｓ（ｋ０）を作成する。また、初期仮説の周辺の画像をテンプレートとして記憶する。但し、初期仮説の作成方法については、本発明の範囲外でありどのような方法を用いても構わない。
【００２２】
［評価部１６０］
評価部１６０は、対象情報Ｊ（ｋ）と仮説ｓ（ｋ，ｉ）を用いて仮説の評価値ｃ（ｋ，ｉ）を算出する（ｓ１６０）。評価値としては、尤度等が考えられ、現在のフレームの画像Ｊ（ｋ）に対して各仮説ｓ（ｋ，ｉ）がどの程度尤もらしいかの評価（尤度評価）を行う。例えば、非特許文献１と同様の方法を用いる。以下、概略を説明する。テンプレートと仮説ｓ（ｋ，ｉ）の周辺の画像との色情報等によりマッチングを行い、誤差を算出する。この誤差から評価値を求める。ここで、非特許文献１ではＧＰＧＰＵを用いた並列処理を行うが、ＧＰＵでシーケンシャルに処理してもよい。また、本実施例は、本発明の仮説の評価方法を限定するものではない。仮説の評価方法は推定される対象（パラメータ）により大きく異なるが、本発明は顔姿勢パラメータの推定だけではなく、その他パーティクルフィルタを用いて時系列パラメータを推定する際にも利用することができるためである。
【００２３】
仮説の作成と評価が終了条件を満たしていない場合には、再度仮説を作成する。（ｓ１６５）。ここで、終了条件として、リサンプリングの回数等が考えられる。その他、仮説の尤度による重みつきの歪度による方法も考えられる。つまり、パラメータの移動に対して、その移動量よりも少ない分散で仮説が作成されていた場合、歪度が大きくなる。この歪度が一定範囲内に収まるまで仮説の作成と評価を繰り返すことも考えられる。また、リサンプリングの際には、既に作成した現在の仮説ｓ（ｋ，ｉ）と評価ｃ（ｋ，ｉ）を用いて新たな現在の仮説を作成する。
【００２４】
［判定部１７０］
判定部１７０は、正常にパラメータの推定が行われているか否かの判定をする（ｓ１７０）。判定部１７０は、評価部１６０から評価値ｃ（ｋ，ｉ）を入力される。例えば、判定には、簡単のため、尤度の逆数と閾値を用いる。尤度は大きいほど尤もらしい仮説であることを示す。したがって、その逆数は、大きいほど尤もらしくない仮説であることを示す。最も尤もらしい仮説の尤度の逆数が一定値以上であった場合には、どの仮説も尤もらしくない。つまり、適切なパラメータ推定が行われていないと判定する。また、逆数を用いず、尤度をそのまま用い、最も尤もらしい仮説の尤度が閾値以下であれば、適切なパラメータ推定が行われていないと判定することもできる。さらに、仮説の尤度による重み付けの尖度が一定値以下の場合、適切なパラメータ推定が行われていないと判定してもよい。尖度とは、データにおける分布の尖り具合を表すので、尖度が小さい場合には、仮説が一様に分布し、適切なパラメータ推定が行われていないことを意味するためである。但し、本実施例は判定方法を限定するものではない。判定部１８０は、最後に正常にパラメータの推定が行われた時刻から経過した時間を異常経過時間ｔとして出力する。なお、正常にパラメータの推定が行われた場合には、ｔ＝０を出力してもよい。
【００２５】
［パラメータ推定部１８０］
パラメータ推定部１８０は、仮説ｓ（ｋ，ｉ）と評価値ｃ（ｋ，ｉ）に基づいて推定パラメータを算出する（ｓ１８０）。なお、推定パラメータとは、最終的に時系列パラメータ推定装置が推定するパラメータを意味する。パラメータ推定部１８０は、仮説作成部１３０から仮説ｓ（ｋ，ｉ）を、評価部１６０から評価値ｃ（ｋ，ｉ）を、判定部１８０から判定結果（例えば、異常経過時間ｔ）を入力される。正常にパラメータの推定が行われていないと判定された場合（例えば、異常経過時間ｔが０より大きい場合）には、パラメータ推定部１８０において処理を行わず、次の処理に移る。正常にパラメータの推定が行われていると判定された場合には以下の方法により正しいパラメータを推定し、推定パラメータを出力する。例えば、仮説ｓ（ｋ，ｉ）に尤度で重み付けした平均によって推定パラメータｐ（ｋ）とする。その際、尤度が上位数件（例えば、１００件）の仮説ｓ（ｋ，ｉ）のみの重み付けの平均としてもよい。また、最も尤度の大きい仮説ｓ（ｋ，ｉ）を、そのまま推定パラメータｐ（ｋ）としてもよい。他には、クラスタリングを用いて、同一クラスタになるもののみを選択した上で、重み付け平均をとる推定方法も考えられる。
【００２６】
カメラ等から逐次読み込む映像データ等対象情報ｊ（ｋ）がなくなった場合、または、ユーザから終了の入力があった場合等には、推定終了と判断する（ｓ１８５）。それ以外の場合には、推定対象読込部１１０において、次の対象情報を読み込む（ｓ１８５、ｓ１１０）。
【００２７】
［オフセット記憶部１９０］
オフセット記憶部１９０は、仮説のパラメータの値が正しいパラメータの値に収束しやすいように予め定められたオフセットを記憶する。オフセットの利用方法、効果の詳細については、後述する。
【００２８】
［仮説作成部１３０の詳細］
図５は、実施例１の仮説作成部１３０の構成例を示す。図６は、実施例１の仮説作成部１３０の処理のフローチャート例を示す。仮説作成部１３０は、第一予備仮説作成部１３１と、第二予備仮説作成部１３３と、追跡仮説作成部１３５と、オフセット仮説作成部１３７と、システムモデル作成部１４３と、ノイズ作成部１４５を有する。
【００２９】
［第一予備仮説作成部１３１］
第一予備仮説作成部１３１は、過去の仮説ｓ（ｋ−１，ｉ）と評価値ｃ（ｋ−１，ｉ）を用いて第一予備仮説ｓ１（ｋ，ｉ）を作成する（ｓ１３１）。第一予備仮説作成部１３１は、評価部１６０から評価値を、過去に作成した第一予備仮説ｓ１から作成された仮説ｓを、初期状態の場合には初期仮説ｓ（ｋ０）を入力される。これらの値を用いて、第一予備仮説を作成する。なお、仮説ｓ（ｋ，ｉ）は、第一予備仮説ｓ１（ｋ，ｉ）及び後述する第二予備仮説ｓ２（ｋ，ｉ）、追跡仮説ｓ３（ｋ，ｉ）、オフセット仮説ｓ４（ｋ，ｉ）及び再開時仮説ｓ５（ｋ，ｉ）、を含む概念であり、最終的に仮説作成部から出力されるものをいう。以下、第一予備仮説の作成方法を説明する。例えば、範囲［０，１）の乱数ｒを作成する（ｓ１３１−１）。なお、範囲［ａ，ｂ）はａ以上ｂ未満の範囲を表す。乱数ｒを素に第一予備仮説ｓ１（ｋ，ｉ）を選択する（ｓ１３１−２）。選択方法を図７を用いて説明する。図７中、ｓ（ｋ−１，１），ｓ（ｋ−１，２），ｓ（ｋ−１，３）はそれぞれ一つの仮説を表す。それぞれの中心角は、各仮説ｓ（ｋ−１，１），ｓ（ｋ−１，２），ｓ（ｋ−１，３）の持つ尤度を表し、その合計は１になるように正規化されている。発生させた乱数ｒが止まった場所の仮説が選択され（図７ではｓ（ｋ−１，３））、第一予備仮説ｓ１（ｋ，ｉ）として出力される。この選択方式は、ルーレット方式と呼ばれる。なお、リサンプリング時には、過去の仮説ｓ（ｋ−１，ｉ）と評価値ｃ（ｋ−１，ｉ）用いて得られた現在の仮説ｓ（ｋ，ｉ）と評価値ｃ（ｋ，ｉ）を用いて、新たに現在の第一予備仮説ｓ１（ｋ，ｉ）を再作成する。よって、リサンプリング時も間接的に、過去の仮説と評価値ｃを用いている。なお、本発明は、このような選択方法に限定するものではない。尤度の大きさに応じて、仮説を選択するものであればよく、適宜変更可能である。
【００３０】
［第二予備仮説作成部１３３］
第二予備仮説作成部１３３は、第一予備仮説ｓ１（ｋ，ｉ）とノイズｗを用いて第二予備仮説ｓ２（ｋ，ｉ）を作成する（ｓ１３３）。例えば、第一予備仮説ｓ１（ｋ，ｉ）をシステムモデルＦ（）を用いて変換する（ｓ１３３−１）。ノイズｗを加え第二予備仮説を作成する（ｓ１３３−３）。以下の式により表される。
ｓ２（ｋ，ｉ）＝Ｆ（ｓ１（ｋ，ｉ））＋ｗ
システムモデルＦ（）は頭部姿勢の運動モデルであり、等速加速運動を仮定した場合、以下の式によって表すことができる。
Ｆ（ｓ１（ｋ，ｉ））＝ｓ１（ｋ，ｉ）＋τυｋ−１
τはフレーム間の時間間隔を、υｋ−１は時刻ｋ−１の頭部姿勢の速度を表す。システムモデルＦ（）は、システムモデル作成部１４３で作成され、第二予備仮説作成部１３３に入力される。ノイズｗは、ノイズ作成部１４５で作成され第二予備仮説作成部１３３に入力される。ノイズの分散は予め決めておく。ノイズは、一様乱数により作成しても、ガウス乱数により作成してもよい。速度が十分遅い場合には、システムモデルＦ（）を用いず、ノイズｗを加えるだけでもよい。なお、このシステムモデルはランダムウォークと呼ばれる。推定されるパラメータの速度が十分遅いことが、予め分かっている場合には、システムモデル作成部１４３を設けなくともよい。なお、リサンプル時には、既に速度を考慮した仮説ｓ（ｋ，ｉ）に基づき、新たに現在の第二予備仮説ｓ２（ｋ，ｉ）を再作成するため、ランダムウォークにより第二予備仮説を作成する。
【００３１】
［追跡仮説作成部１３５］
＜ｓ１３５＞
追跡仮説作成部１３５は、第二予備仮説のパラメータの値が仮説範囲外の場合には、仮説範囲外のパラメータの値を仮説範囲内の最大値または最小値に置換し、追跡仮説を作成する（ｓ１３５）。仮説作成部１３０は、追跡仮説を用いて、最終的には現在の仮説ｓ（ｋ，ｉ）を作成する。第二予備仮説のパラメータの値が仮説範囲よりも大きい場合には仮説範囲内の最大値に置換し、仮説範囲よりも小さい場合には仮説範囲内の最小値に置換する。追跡仮説作成部１３５は、第二予備仮説作成部１３３から第二予備仮説ｓ２（ｋ，ｉ）を、ノイズ作成部１４５からノイズｗを、判定部１６０から異常経過時間ｔを、仮説範囲記憶部１５０から仮説範囲ｑ（ｋ）を入力され、追跡仮説ｓ３（ｋ，ｉ）を出力する。
【００３２】
このような構成とすることで、正しいパラメータとは、異なるパラメータに仮説が収束することを抑制し、正しいパラメータから仮説が離れるのを抑制することができる。そして、対象情報から追跡対象が追跡可能範囲外に消失し、再度、対象情報に出現した際に、速やかにパラメータの推定を再開することができる。推定対象のパラメータが仮説範囲内と仮説範囲外を振り子運動のように往復運動をしている場合に特に有効である。また、肌色を使って顔姿勢パラメータを推定する場合には、後ろを向いた後に、正面を向いた場合にも速やかにパラメータの推定を再開することができる。
【００３３】
＜ｓ１３５−１＞
第二予備仮説ｓ２（ｋ，ｉ）の有するパラメータ｛ｘ１,ｘ２，…,ｘＭ｝の全てが仮説範囲ｑ（ｋ）内か否か調べる（ｓ１３５−１）。全てのパラメータが仮説範囲内である場合には、この第二予備仮説ｓ２（ｋ，ｉ）を仮説とする。仮説が規定の個数Ｎに達した場合には、Ｎ個の仮説ｓ（ｋ，ｉ）を出力する（ｓ１４０）。
【００３４】
＜ｓ１３５−３＞
第二予備仮説のパラメータの値の内、一部のパラメータが仮説範囲外の場合には、仮説範囲外のパラメータの値を仮説範囲内の最大値または最小値に置換する（ｓ１３５−３）。
【００３５】
＜ｓ１３５−５＞
他のパラメータの値についてはノイズの分散を大きくし、追跡仮説を作成する（ｓ１３５−５）。例えば、ノイズの分散を大きくするとは、ノイズ作成部１４５に問い合わせ、分散を大きくしたノイズｗ’を受け取り、第二予備仮説ｓ２（ｋ，ｉ）からノイズｗを差し引き、新たなノイズｗ’を加える。ノイズｗ’の分散ｄｅｖ’（ｍ）は、以下のように表される。但し、ａは１以上の定数を、ｄ（ｍ）はパラメータｘｍの初期の分散を表す。
ｄｅｖ’（ｍ）＝ｄ（ｍ）×ａ
また、追跡仮説作成部１３５において、第二予備仮説ｓ２（ｋ，ｉ）からノイズｗを差し引き、ノイズｗをａ倍したものを加えてもよい。以下のように表される。
ｓ３（ｋ，ｉ）＝ｓ２（ｋ，ｉ）−ｗ＋ａ×ｗ
【００３６】
この処理について、図８を用いて説明する。図８は、３つのパラメータ（ｘ１、ｘ２、ｘ３）を推定するタスクにおいて、ｘ１について、面Ｂを仮説範囲として設定していることを示している。また、楕円球Ｃは、作成された仮説群を示している。今、楕円球内にあり、面Ｂよりもｘ１が大きい仮説について、ｘ１に、面Ｂを構成するｘ１の値を代入すると、それらは全て、平面Ｂ上の楕円Ａ内に移動することになる。すなわち、楕円Ａ内の仮説の密度は上昇するものの、仮説により検証できる範囲はなんら拡がらないことが分かる。したがって、本発明では、ｘ２、ｘ３のパラメータについて、加えるノイズの分散を大きくして仮説を再作成することで、仮説範囲を拡げる。このような構成とすることで、ｓ１３５で得られる効果に加え、仮説のパラメータの自由度が高くなる。例えば、基本的には往復運動をしているが、仮説範囲外から仮説範囲内へ推定対象が変化する際に、様々なノイズが加わるような場合でも、パラメータの推定を再開ができる。例えば、着席環境で顔姿勢パラメータを推定するような場合、首の付け根及び座面部分の２重振り子のような動きになり、仮説範囲外から仮説範囲内へ顔姿勢パラメータが移動する際には、ズレが生じる。そのような場合にも迅速にパラメータの推定を再開できる。
【００３７】
＜ｓ１３５−５’＞
また、異常経過時間ｔを用いて、以下のように、ノイズの分散を大きくしてもよい。他のパラメータは、最後に正常にパラメータの推定が行われた時刻からの異常経過時間ｔに応じて、ノイズの分散を大きくして追跡仮説を作成する（ｓ１３５−５’）。この処理について、説明する。仮説範囲外から仮説範囲内に戻る場合、短時間で戻る場合に比べて、戻るまでに長時間かかる場合のほうが、パラメータの変化が大きくなると想定される。図９は、再来時間と位置の関係を示す図である。つまり、仮説範囲内から仮説範囲外に移動し、再び仮説範囲内に戻ってくる動作について、戻ってくるまでの時間（以下「再来時間」という）とその時にパラメータがどれだけ変化したかの頻度をプロットした図である。よって、例えば、図９のような事例を基に、各時刻において、９０％以上の事例をカバーするように、分散を決定することも考えられる。
【００３８】
また、異常経過時間ｔに応じて、ノイズの分散を大きくする方法として以下のような方法もある。ノイズ作成部１４５に問い合わせ、分散を大きくしたノイズｗ’を受け取り、第二予備仮説ｓ２（ｋ，ｉ）からノイズｗを差し引き、新たなノイズｗ’を加える。異常経過時間ｔのノイズｗ’の分散ｄｅｖ’（ｔ，ｍ）は、以下のように表される。但し、ａは１以上の定数を、ｄ（ｍ）はパラメータｘｍの初期の分散を表す。
ｄｅｖ’（ｍ，ｔ）＝ｄ（ｍ）×ａ×ｔ
また、追跡仮説作成部１３５において、第二予備仮説ｓ２（ｋ，ｉ）からノイズｗを差し引き、ノイズｗをａ×ｔ倍したものを加えてもよい。以下のように表される。
ｓ３（ｋ，ｉ）＝ｓ２（ｋ，ｉ）−ｗ＋ａ×ｔ×ｗ
【００３９】
このような構成とすることで、ｓ１３５−５で得られる効果に加え、効率的に仮説のパラメータの自由度が高くすることができる。再来時間が短い場合には、仮説が拡がりすぎず、精度の良い推定ができる。一方、再来時間が長い場合には、仮説の範囲が拡がるため、とりもらすことなく、パラメータの推定を再開することができる。例えば、振り子運動中心に誤差が加わっても再来時間に応じて仮説を拡がるため追跡可能となる。
【００４０】
なお、全てのパラメータが仮説範囲外である場合には、全てのパラメータの値を仮説範囲内の最大値または最小値に置換する。
【００４１】
なお、追跡仮説作成部１３５において、第二予備仮説のパラメータの値が仮説範囲外の場合には、仮説範囲外のパラメータの値を仮説範囲内の最大値または最小値に置換し、追跡仮説を作成することにより、対象情報から追跡対象が追跡可能範囲外に消失し、再度、対象情報に出現した際に、速やかにパラメータの推定を再開することができるという効果を有する。他のステップ（ｓ１３５−１、ｓ１３５−３、ｓ１３５−５及びｓ１３５−５’等）については、適宜変更可能である。
【００４２】
［オフセット仮説作成部１３７］
オフセット仮説作成部１３７は、追跡仮説のパラメータにオフセットを加えてオフセット仮説を作成する（ｓ１３７）。仮説作成部１３０は、オフセット仮説を用いて、最終的には現在の仮説ｓ（ｋ，ｉ）を作成する。オフセット仮説作成部１３７は、追跡仮説作成部１３５から追跡仮説ｓ３（ｋ，ｉ）を、オフセット記憶部１９０からオフセットｇ（ｋ）を入力され、オフセット仮説ｓ４（ｋ，ｉ）を出力する。ここで、オフセットとは、正しいパラメータと追跡仮説のパラメータの差を実験等により予測した値のことである。図１０を用いて、オフセットを説明する。例えば、非特許文献１の方法を用いて、図１０の顔姿勢パラメータの推定を行う場合、図１０の仮説１よりも仮説２のほうが正しい顔姿勢パラメータに収束する可能性が高い。なぜなら、非特許文献１では、特徴量として顔の色を用いているからである。つまり、肌色の顎や頬と、黒い髪で特徴量が著しく異なるため、仮説１では、髪の毛領域が増える下方向へ更新されづらく、正しい顔姿勢パラメータへ収束していく可能性は低い。一方仮説２では、肌色の領域が増える上方向へ推定パラメータが更新され、正しい顔姿勢パラメータへ収束していく可能性が高い。このように、実験等による事前の知識から正しいパラメータに収束しやすいオフセットが既知である場合には、オフセットを踏まえた仮説作成を行うことができる。
【００４３】
例えば、図１０において、顔姿勢パラメータを推定する場合には、仮説の位置が下部にあるほうが正しい顔姿勢パラメータに収束しやすいという傾向がある。よって、入力された追跡仮説の顔姿勢パラメータの縦軸方向の位置パラメータについて、マイナスのオフセットを加える。
【００４４】
このような構成とすることで、正しいパラメータと推定パラメータの誤差に偏りがある場合に、効率よく仮説を配置することができる。正しいパラメータが仮説範囲外から仮説範囲内へ変化した場合、迅速にパラメータの推定を再開することができる。但し、本発明において、必ずしも、オフセット仮説作成部１３７を有さずとも、上述の追跡仮説作成部１３５を有することにより、対象情報から追跡対象が追跡可能範囲外に消失し、再度、対象情報に出現した際に、速やかにパラメータの推定を再開することができるという効果を得ることができる。
【００４５】
仮説作成部１３０は、仮説ｓ（ｋ，ｉ）を出力し、仮説が規定の個数Ｎに達するまで、第一予備仮説作成部１１０に処理を戻し、次の仮説を作成する処理を繰り返す（ｓ１４０）。なお、Ｎ個の仮説ｓ（ｋ，ｉ）は、評価部１６０に出力されるとともに、次の時刻の仮説作成、または、リサンプリングに備え、第一予備仮説作成部１１０にも出力される。
【実施例２】
【００４６】
実施例１と異なる部分のみ説明する。図１１は実施例２の時系列パラメータ推定装置２００の構成例を示す。構成要素として、再開時データ記憶部２９５を加え、仮説作成部２３０及び判定部２７０の処理が実施例１と異なる。
【００４７】
［再開時データ記憶部２９５］
再開時データ記憶部２９５は、最後に正常にパラメータの推定が行われた時刻のパラメータの値とその時刻からの異常経過時間ｔから予測される再開時のデータの値を記憶する。なお、再開時のデータの値とは、実験等により得られた再開時のパラメータの値がとる平均や分散等を意味する。図１２は、再開時データ記録部２９５に記録されるデータの例を示す。例えば、最後に正常にパラメータの推定が行われた時刻のパラメータｘ１の値が0.1より大きく0.2未満、パラメータｘ２の値が0.3より大きく0.4未満、パラメータｘ３の値が20より大きく25未満の場合、異常経過時間ｔが１の時、ｘ１は平均0.2、分散0.2のガウス分布によって近似されることを意味している。最後に正常にパラメータの推定が行われた時刻のパラメータの値とその時刻からの異常経過時間ｔから予測される再開時のデータを実験等により調べておき、予め再開時データ記憶部２９５に記憶しておく。
【００４８】
［仮説作成部２３０の詳細］
図１３は実施例２の仮説作成部２３０の構成例を、図１４は実施例２の仮説作成部２３０の処理のフローチャート例を示す。仮説作成部２３０は、再開時仮説作成部２３９を加え、第一予備仮説作成部２３１の処理が実施例１と異なる。判定部２７０から出力される異常経過時間ｔは、追跡仮説作成部１３５には入力されず、第一予備仮説２３１及び再開時仮説作成部２３９へ入力される。以下、処理の内容を説明する。
【００４９】
第一予備仮説作成部２３１は、評価部１６０から評価値ｃ（ｋ，ｉ）を、判定部２７０から異常経過時間ｔを、オフセット仮説作成部１３７または再開時仮説作成部１３９から仮説ｓ（ｋ，ｉ）を入力される。
【００５０】
異常経過時間ｔを用いてパラメータの推定が正常に行われているか否か判断する（ｓ２３０−１）。例えば、異常経過時間ｔの値が０の場合には、正常と判断し、第一予備仮説作成部２３１において、実施例１と同様に第一予備仮説ｓ１（ｋ，ｉ）を作成し（ｓ１３１）、第二予備仮説作成部１３３において、第二予備仮説ｓ２（ｋ，ｉ）を作成する（ｓ１３３）。追跡仮説作成部１３５においても、実施例１と同様の処理を行うが（ｓ１３５）、その際、異常経過時間ｔを用いて、ノイズの分散を大きくすることはできない。異常経過時間ｔを用いてパラメータの推定が正常に行われているか否か判断し、正常に行われていないと判断した場合には、再開時仮説作成部２３９に処理を移すためである。さらに、オフセット仮説作成部１３７において、オフセット仮説ｓ４（ｋ，ｉ）を作成し（ｓ１３７）、出力する。
【００５１】
［再開時仮説作成部２３９］
以下、異常経過時間ｔを用いてパラメータの推定が正常に行われていないと判断した場合（例えば、ｔが０より大きい場合）の再開時仮説作成部２３９の処理を説明する。再開時仮説作成部２３９は、最後に正常にパラメータの推定が行われた時刻のパラメータの値とその時刻からの異常経過時間ｔから、再開時のデータの値を選択し、これを用いて、再開時仮説を作成する（ｓ２３９）。仮説作成部２３０は、再開時仮説を用いて、最終的には現在の仮説ｓ（ｋ，ｉ）を作成する。再開時仮説作成部２３９は、判定部２７０から異常経過時間ｔを、追跡仮説作成部１３５から追跡仮説ｓ３（ｋ，ｉ）か、または、オフセット仮説作成部１３７からオフセット仮説ｓ４（ｋ，ｉ）を、再開時データ記憶部２９５から再開時データｈ（ｋ）を入力される。例えば、再開時仮説作成部２３９は、最後に正常にパラメータの推定が行われた時刻のパラメータの値として、追跡仮説ｓ３（ｋ，ｉ）またはオフセット仮説ｓ４（ｋ，ｉ）を保持しておく。そして、異常経過時間ｔが０より大きい場合には、正常にパラメータの推定が行われていないと判定し、保持したパラメータの値と異常経過時間ｔを基に、再開時データ記憶部２９５へ問い合わせ、対応する再開時データｈ（ｋ）を得る。再開時仮説作成部２３９は、再開時データｈ（ｋ）（例えば、各パラメータの平均値と分散）を用いて、再開時仮説ｓ５（ｋ，ｉ）を作成し、出力する。他の処理については、実施例１と同様である。
【００５２】
このような構成とすることで、振り子運動や過去の履歴に基づく運動からの誤差が大きい場合であっても、復帰できるようになる。正しいパラメータが仮説範囲外から仮説範囲内へ変化した場合、迅速にパラメータの推定を再開することができる。実験等により得られた再開時のパラメータの値がとる平均や分散等を用いるので、特に、推定対象が類似した動きを繰り返す運動等をしているときに有効である。但し、本発明において、必ずしも、再開時仮説作成部２３９を有さずとも、上述の追跡仮説作成部２３５を有することにより、対象情報から追跡対象が追跡可能範囲外に消失し、再度、対象情報に出現した際に、速やかにパラメータの推定を再開することができるという効果を得ることができる。
【図面の簡単な説明】
【００５３】
【図１】実施例１の時系列パラメータ推定装置１００の構成例を示す図。
【図２】実施例１のフローチャート例を示す図。
【図３】実施例１における時系列パラメータ推定装置１００のハードウェア構成例を示す図。
【図４】仮説範囲の情報例を示す図。
【図５】実施例１の仮説作成部１３０の構成例を示す図。
【図６】実施例１の仮説作成部１３０の処理のフローチャート例を示す図。
【図７】第一予備仮説作成部において仮説の選択する方法を説明するための図。
【図８】ノイズの分散を大きくする処理を説明するための図。
【図９】再来時間と位置の関係を示す図。
【図１０】オフセットを説明するための図。
【図１１】実施例２の時系列パラメータ推定装置２００の構成例を示す図。
【図１２】再開時データ記録部２９５に記録されるデータの例を示す図。
【図１３】実施例２の仮説作成部２３０の構成例を示す図。
【図１４】実施例２の仮説作成部２３０の処理のフローチャート例を示す図。
【符号の説明】
【００５４】
１００、２００    時系列パラメータ推定装置        １１０    推定対象読込部
１３０、２３０    仮説作成部        １５０仮説範囲記憶部
１６０    評価部        １７０、２７０    判定部
１８０    パラメータ推定部        １９０    オフセット記憶部
１３１、２３１    第一予備仮説作成部        １３３    第二予備仮説作成部
１３５    追跡仮説作成部        １３７    オフセット仮説作成部
１４３    システムモデル作成部        １４５    ノイズ作成部
２９５    再開時データ記憶部        ２３９    再開時仮説作成部
【図１】
2010117856.tif 000003
【図２】
2010117856.tif 000004
【図３】
2010117856.tif 000005
【図４】
2010117856.tif 000006
【図５】
2010117856.tif 000007
【図６】
2010117856.tif 000008
【図７】
2010117856.tif 000009
【図８】
2010117856.tif 000010
【図９】
2010117856.tif 000011
【図１１】
2010117856.tif 000012
【図１２】
2010117856.tif 000013
【図１３】
2010117856.tif 000014
【図１４】
2010117856.tif 000015
【図１０】
2010117856.tif 000016