(57)【特許請求の範囲】
【請求項１】
リファレンスモーションデータから、動きのリズムを表して動きの突然的な変化が生じているフレームであるビートフレームを取得する動き解析部と、
前記リファレンスモーションデータを分割した複数のセグメントそれぞれについて、前記リファレンスモーションデータが属するポーズ空間とより低次元の潜在空間のマッピングと前記潜在空間の動力学関数を有するモデルとを学習し、それぞれ学習したモデル同士で遷移可能な潜在空間の座標を推定するモデル構築部と、
前記動き解析部が取得した前記ビートフレームと前記モデル構築部が推定した潜在空間モデルとに基づいて、ユーザの動きを撮影したユーザビデオデータの映像における人体姿勢を追跡する動き追跡部と、を備え、
前記モデル構築部は、
前記リファレンスモーションデータのフレームに対応する潜在空間の座標を用いて復元モーションデータを生成し、前記リファレンスモーションデータと前記復元モーションデータとの距離である復元誤差を計算し、この復元誤差が所定の閾値を超える場合に、前記リファレンスモーションデータを分割する、
ことを特徴とする人体姿勢推定装置。
【請求項２】
前記モデル構築部は、
前記リファレンスモーションデータを分割した複数のセグメントそれぞれについて、各潜在空間でＧＰＤＭ（Ｇａｕｓｓｉａｎ  Ｐｒｏｃｅｓｓ  Ｄｙｎａｍｉｃａｌ  Ｍｏｄｅｌｓ）を学習し、それぞれ学習したＧＰＤＭ同士で遷移可能な潜在空間の座標として、前記動き解析部が取得した前記ビートフレームに対応する潜在空間の座標を用いることを特徴とする請求項１記載の人体姿勢推定装置。
【請求項３】
前記動き解析部は、
前記リファレンスモーションデータを時間区間において主成分分析を行い、特定主成分座標に基づいて動きのビートフレームを推定することを特徴とする請求項１記載の人体姿勢推定装置。
【請求項４】
前記動き追跡部は、
前記ユーザビデオデータのポーズ空間における対象のフレームデータと前記遷移可能な潜在空間の座標に基づく潜在空間からのサンプルとの距離に基づいて尤度を計算する尤度計算部と、
前記尤度計算部が計算した前記尤度に基づいて潜在空間におけるサンプルを置換するリサンプリング部と、
前記リサンプリング部が置換した前記サンプルと前記動き解析部が取得した前記ビートフレームとの距離を計算し、この計算した距離に応じて潜在空間を遷移させる潜在空間遷移尤度算出部と、
前記遷移させた潜在空間の動力学関数において、次フレームの潜在空間の座標を予測し、ポーズ空間にマッピングする予測部と、
を備えることを特徴とする請求項１記載の人体姿勢推定装置。
【請求項５】
前記潜在空間遷移尤度算出部は、
ポーズ空間における対象のフレームデータからＧＰＤＭ（Ｇａｕｓｓｉａｎ  Ｐｒｏｃｅｓｓ  Ｄｙｎａｍｉｃａｌ  Ｍｏｄｅｌｓ）におけるビートフレームまでの距離を計算し、この距離が所定の閾値より小さい場合に前記ビートフレームが所在する潜在空間に遷移させ、前記距離に応じてサンプル数を再分配してサンプルを生成することを特徴とする請求項４記載の人体姿勢推定装置。
【請求項６】
リファレンスモーションデータから、動きのリズムを表して動きの突然的な変化が生じているフレームであるビートフレームを取得する動き解析ステップと、
前記リファレンスモーションデータを分割した複数のセグメントそれぞれについて、前記リファレンスモーションデータが属するポーズ空間とより低次元の潜在空間のマッピングと前記潜在空間の動力学関数を有するモデルとを学習し、それぞれ学習したモデル同士で遷移可能な潜在空間の座標を推定するモデル構築ステップと、
前記動き解析ステップにおいて取得した前記ビートフレームと前記モデル構築ステップにおいて推定した潜在空間モデルとに基づいて、ユーザの動きを撮影したユーザビデオデータの映像における人体姿勢を追跡する動き追跡ステップと、を有し、
前記モデル構築ステップは、
前記リファレンスモーションデータのフレームに対応する潜在空間の座標を用いて復元モーションデータを生成し、前記リファレンスモーションデータと前記復元モーションデータとの距離である復元誤差を計算し、この復元誤差が所定の閾値を超える場合に、前記リファレンスモーションデータを分割する、
ことを特徴とする人体姿勢推定方法。
【請求項７】
コンピュータに、
リファレンスモーションデータから、動きのリズムを表して動きの突然的な変化が生じているフレームであるビートフレームを取得する動き解析ステップと、
前記リファレンスモーションデータを分割した複数のセグメントそれぞれについて、前記リファレンスモーションデータが属するポーズ空間とより低次元の潜在空間のマッピングと前記潜在空間の動力学関数を有するモデルとを学習し、それぞれ学習したモデル同士で遷移可能な潜在空間の座標を推定するモデル構築ステップと、
前記動き解析ステップにおいて取得した前記ビートフレームと前記モデル構築ステップにおいて推定した潜在空間モデルとに基づいて、ユーザの動きを撮影したユーザビデオデータの映像における人体姿勢を追跡する動き追跡ステップと、を実行させるためのコンピュータプログラムであり、
前記モデル構築ステップは、
前記リファレンスモーションデータのフレームに対応する潜在空間の座標を用いて復元モーションデータを生成し、前記リファレンスモーションデータと前記復元モーションデータとの距離である復元誤差を計算し、この復元誤差が所定の閾値を超える場合に、前記リファレンスモーションデータを分割する、
ことを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、人体姿勢推定装置、人体姿勢推定方法、およびコンピュータプログラムに関する。
【背景技術】
【０００２】
パーティクルフィルタを用いて三次元空間における物体追跡を行う技術が知られている。非特許文献２には、非特許文献１に記載されたパーティクルフィルタを改良し、ビデオデータから人体の姿勢を推定する技術が開示されている。また、非特許文献４には、非特許文献３に記載されたＧＰＤＭ（Ｇａｕｓｓｉａｎ  Ｐｒｏｃｅｓｓ  Ｄｙｎａｍｉｃａｌ  Ｍｏｄｅｌｓ；ガウス過程動的モデル）を改良し、潜在空間におけるパーティクルフィルタによって、ビデオデータから人体の姿勢を推定する技術が開示されている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Cappe, O.; Godsill, S.J.; Moulines, E.; , "An Overview of Existing Methods and Recent Advances in Sequential Monte Carlo," Proceedings of the IEEE , vol.95, no.5, pp.899-924, May 2007.
【非特許文献２】J. Duetscher, A. Blake, I. Reid, "Articulated Body Motion Capture by Annealed Particle Filtering," cvpr, vol. 2, pp.2126, 2000 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'00) - Volume 2, 2000.
【非特許文献３】Jack Wang, David Fleet, Aaron Hertzmann, “Gaussian Process Dynamical Models”, Advances in Neural Information Processing Systems 18 (NIPS 2005), pp. 1441-1448.
【非特許文献４】Urtasun, R.; Fleet, D.J.; Fua, P.; , "3D People Tracking with Gaussian Process Dynamical Models," Computer Vision and Pattern Recognition, 2006 IEEE Computer Society Conference on , vol.1, pp. 238- 245, 17-22 June 2006.
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、人体の姿勢を表現する情報における次元数は非常に高く（例えば、数十次元）、非特許文献２に開示されたパーティクルフィルタによる人体姿勢の推定技術では、パーティクルの追跡精度を高くできない。また、非特許文献４に開示された単一のＧＰＤＭモデルでのパーティクルの追跡は、人体のような複雑な動きの追跡には適していない。
【０００５】
本発明は、上記事情に鑑みてなされたものであり、複雑な動きが含まれる人体の姿勢推定を高精度に行う、人体姿勢推定装置、人体姿勢推定方法、およびコンピュータプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
［１］上記の課題を解決するため、本発明の一態様である人体姿勢推定装置は、リファレンスモーションデータから、動きのリズムを表して動きの突然的な変化が生じているフレームであるビートフレームを取得する動き解析部と、前記リファレンスモーションデータを分割した複数のセグメントそれぞれについて、前記リファレンスモーションデータが属するポーズ空間とより低次元の潜在空間のマッピングと前記潜在空間の動力学関数を有するモデルとを学習し、それぞれ学習したモデル同士で遷移可能な潜在空間の座標を推定するモデル構築部と、前記動き解析部が取得した前記ビートフレームと前記モデル構築部が推定した潜在空間モデルとに基づいて、ユーザの動きを撮影したユーザビデオデータの映像における人体姿勢を追跡する動き追跡部と、を備えることを特徴とする。
【０００７】
［２］上記［１］記載の人体姿勢推定装置において、前記モデル構築部は、前記リファレンスモーションデータのフレームに対応する潜在空間の座標を用いて復元モーションデータを生成し、前記リファレンスモーションデータと前記復元モーションデータとの距離である復元誤差を計算し、この復元誤差が所定の閾値を超える場合に、前記リファレンスモーションデータを分割することを特徴とする。
［３］上記［１］記載の人体姿勢推定装置において、前記モデル構築部は、前記リファレンスモーションデータを分割した複数のセグメントそれぞれについて、各潜在空間でＧＰＤＭ（Ｇａｕｓｓｉａｎ  Ｐｒｏｃｅｓｓ  Ｄｙｎａｍｉｃａｌ  Ｍｏｄｅｌｓ）を学習し、それぞれ学習したＧＰＤＭ同士で遷移可能な潜在空間の座標として、前記動き解析部が取得した前記ビートフレームに対応する潜在空間の座標を用いることを特徴とする。
［４］上記［１］または［２］記載の人体姿勢推定装置において、前記動き解析部は、前記リファレンスモーションデータを時間区間において主成分分析を行い、特定主成分座標に基づいて動きのビートフレームを推定することを特徴とする。
［５］上記［１］記載の人体姿勢推定装置において、前記動き追跡部は、前記ユーザビデオデータのポーズ空間における対象のフレームデータと前記遷移可能な潜在空間の座標に基づく潜在空間からのサンプルとの距離に基づいて尤度を計算する尤度計算部と、前記尤度計算部が計算した前記尤度に基づいて潜在空間におけるサンプルを置換するリサンプリング部と、前記リサンプリング部が置換した前記サンプルと前記動き解析部が取得した前記ビートフレームとの距離を計算し、この計算した距離に応じて潜在空間を遷移させる潜在空間遷移尤度算出部と、前記遷移させた潜在空間の動力学関数において、次フレームの潜在空間の座標を予測し、ポーズ空間にマッピングする予測部と、を備えることを特徴とする。
［６］上記［５］記載の人体姿勢推定装置において、前記潜在空間遷移尤度算出部は、ポーズ空間における対象のフレームデータからＧＰＤＭ（Ｇａｕｓｓｉａｎ  Ｐｒｏｃｅｓｓ  Ｄｙｎａｍｉｃａｌ  Ｍｏｄｅｌｓ）におけるビートフレームまでの距離を計算し、この距離が所定の閾値より小さい場合に前記ビートフレームが所在する潜在空間に遷移させ、前記距離に応じてサンプル数を再分配してサンプルを生成することを特徴とする。
【０００８】
［７］上記の課題を解決するため、本発明の一態様である人体姿勢推定方法は、リファレンスモーションデータから、動きのリズムを表して動きの突然的な変化が生じているフレームであるビートフレームを取得する動き解析ステップと、前記リファレンスモーションデータを分割した複数のセグメントそれぞれについて、前記リファレンスモーションデータが属するポーズ空間とより低次元の潜在空間のマッピングと前記潜在空間の動力学関数を有するモデルとを学習し、それぞれ学習したモデル同士で遷移可能な潜在空間の座標を推定するモデル構築ステップと、前記動き解析ステップにおいて取得した前記ビートフレームと前記モデル構築ステップにおいて推定した潜在空間モデルとに基づいて、ユーザの動きを撮影したユーザビデオデータの映像における人体姿勢を追跡する動き追跡ステップと、を有することを特徴とする。
【０００９】
［８］上記の課題を解決するため、本発明の一態様であるコンピュータプログラムは、コンピュータに、リファレンスモーションデータから、動きのリズムを表して動きの突然的な変化が生じているフレームであるビートフレームを取得する動き解析ステップと、前記リファレンスモーションデータを分割した複数のセグメントそれぞれについて、前記リファレンスモーションデータが属するポーズ空間とより低次元の潜在空間のマッピングと前記潜在空間の動力学関数を有するモデルとを学習し、それぞれ学習したモデル同士で遷移可能な潜在空間の座標を推定するモデル構築ステップと、前記動き解析ステップにおいて取得した前記ビートフレームと前記モデル構築ステップにおいて推定した潜在空間モデルとに基づいて、ユーザの動きを撮影したユーザビデオデータの映像における人体姿勢を追跡する動き追跡ステップと、を実行させる。
【発明の効果】
【００１０】
本発明によれば、複雑な動きが含まれる人体の姿勢推定を高精度に行うことができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の一実施形態における、人体スケルトン型動きデータの定義例の概略図である。
【図２】同実施形態における、人体姿勢推定装置の機能構成を示す概略のブロック図である。
【図３】同実施形態における、動き解析部の機能構成を示すブロック図である。
【図４】同実施形態において、データ分割部によるデータ分割処理を説明するための概念図である。
【図５】同実施形態において、主成分座標連結部による主成分座標連結処理を説明するための概念図である。
【図６】正弦近似処理の概念図である。
【図７】ＧＰＤＭ（Ｇａｕｓｓｉａｎ  Ｐｒｏｃｅｓｓ  Ｄｙｎａｍｉｃａｌ  Ｍｏｄｅｌｓ）の学習処理を説明するための概念図である。
【図８】同実施形態における、動き追跡部の機能構成を示すブロック図である。
【図９】同実施形態における、モデル構築部の処理手順を示すフローチャートである。
【図１０】時間に対する復元誤差を表すグラフの例である。
【発明を実施するための形態】
【００１２】
以下、本発明を実施するための形態について、図面を参照して詳細に説明する。
本発明の一実施形態である人体姿勢推定装置は、リファレンスモーションデータと、人体姿勢を推定する対象者（ユーザ）の動きを撮影したユーザビデオデータとをそれぞれ取り込み、リファレンスモーションデータにおける人体姿勢を基準として、ユーザビデオデータにおける人体姿勢に基づきユーザの人体姿勢を推定するものである。
【００１３】
まず、リファレンスモーションデータについて説明する。本実施形態において、リファレンスモーションデータは、人体スケルトン型動きデータ（以下、単に「動きデータ」と呼ぶこともある。）で表現される。
図１は、人体スケルトン型動きデータの定義例の概略図である。この人体スケルトン型動きデータは、人体の骨格をもとに、骨および骨の連結点（ジョイント）を用い、特定の一つのジョイントを根（ルート）とし、ルートからジョイント経由で順次連結される骨の構造を木（ツリー）構造として定義したものである。同図は、人体スケルトン型動きデータの定義の一部分を示している。同図において、ジョイント１００は人体の腰部分であり、ルートとして定義されている。ジョイント１０１は左腕の肘部分、ジョイント１０２は左腕の手首部分、ジョイント１０３は右腕の肘部分、ジョイント１０４は右腕の手首部分、ジョイント１０５は左足の膝部分、ジョイント１０６は左足の足首部分、ジョイント１０７は右足の膝部分、ジョイント１０８は右足の足首部分である。
【００１４】
つまり、スケルトン型動きデータは、スケルトン型対象物の各ジョイントの動きを記録したデータであり、スケルトン型対象物としては人体や動物、ロボットなどが適用できる。スケルトン型動きデータとしては、各ジョイントの位置情報、角度情報、速度情報、加速度情報などが利用できる。次に、角度情報データと加速度情報データとを例として、人体スケルトン型動きデータについて説明する。
【００１５】
角度情報データは、人体の一連の動きを複数の姿勢（ポーズ）によって表すものであり、人体の基本ポーズ（Ｎｅｕｔｒａｌ  Ｐｏｓｅ）を表す基本ポーズデータと、実際の人体の動きにおける各ポーズを表すフレームデータとを有する。基本ポーズデータは、基本ポーズにおけるルートの位置および各ジョイントの位置、ならびに各骨の長さなどの情報を有する。フレームデータは、基本ポーズからの移動量をジョイントごとに表す。例えば、移動量は角度情報として表される。各フレームデータにより、基本ポーズに対して移動量が加味された各ポーズが特定される。これにより、各フレームデータによって特定される各ポーズの連続により、人体の一連の動きが特定される。角度情報データは、リファレンスである人体の動きを撮影した映像をモーションキャプチャ処理することによって取得したり、キーフレームアニメーションの手作業にしたがって取得したりする。
【００１６】
加速度情報データは、人体の各ジョイントの加速度を、ポーズごとのフレームデータと複数のポーズとによって表すものである。加速度情報データは、加速度計で取得したり、映像の動きに基づいて算出したりする。
【００１７】
本実施形態において、リファレンスモーションデータは、様々な動きパターンの動きデータを含むものとすることができる。動きパターンは、例えば人物について例を挙げると、走るパターン、歩くパターン、ボールを投げるパターン、跳躍するパターン等である。リファレンスモーションデータは、人体姿勢推定装置の利用目的や用途等に応じて、適した動きパターンの動きデータを含むものとするのがよい。
【００１８】
次に、本実施形態における人体姿勢推定装置について説明する。
図２は、本実施形態における人体姿勢推定装置の機能構成を示す概略のブロック図である。同図に示すように、人体姿勢推定装置１は、モデル学習部１０と動き追跡部２０とを備える。
【００１９】
モデル学習部１０は、リファレンスモーションデータを取り込み、そのリファレンスモーションデータを動きの複雑さに応じて複数のセグメントに分割し、セグメントごとに、リファレンスモーションデータが属するポーズ空間と、より低次元の潜在空間のマッピングと、当該潜在空間の動力学関数を有するモデルとを学習し、モデル同士のグラフ構造を生成する。
潜在空間のモデルは、例えば、参考文献１（A Global Geometric Framework for Nonlinear Dimensionality Reduction Joshua B. Tenenbaum, Vin de Silva, and John C. Langford Science, VOL 290, ISSUE 5500, 22 December 2000: 2319-2323.）に記載されたＩＳＯＭＡＰ、参考文献２（Nonlinear Dimensionality Reduction by Locally Linear Embedding Sam T. Roweis, and Lawrence K. Saul Science, VOL 290, ISSUE 5500, 22 December 2000: 2323-2326.）に記載されたＬＬＥ（Ｌｏｃａｌｌｙ  Ｌｉｎｅａｒ  Ｅｍｂｅｄｄｉｎｇ）、参考文献３（N. D. Lawrence. Gaussian process latent variable models for visualisation of high dimensional data. Proc. NIPS 16, 2004.）に記載されたＧＰＬＶＭ（Ｇａｕｓｓｉａｎ  Ｐｒｏｃｅｓｓ  Ｌａｔｅｎｔ  Ｖａｒｉａｂｌｅ  Ｍｏｄｅｌ）等を適用することができる。
【００２０】
本実施形態では、非特許文献３に記載されたＧＰＤＭ（Ｇａｕｓｓｉａｎ  Ｐｒｏｃｅｓｓ  Ｄｙｎａｍｉｃａｌ  Ｍｏｄｅｌｓ；ガウス過程動的モデル）を例とする。この例によれば、潜在空間でＧＰＤＭを学習してＧＰＤＭグラフデータを生成する。ＧＰＤＭは、潜在空間において正規過程（Ｇａｕｓｓｉａｎ  Ｐｒｏｃｅｓｓ）を動的システムに応用した動力学モデルと、潜在空間からポーズ空間（姿勢空間）への変換（マッピング）とを含む潜在変数モデルである。なお、「ＧＰＤＭの学習」とは、対象となる潜在空間をＧＰＤＭによってモデル化することである。一潜在空間についてのＧＰＤＭの学習については、非特許文献３に詳述されている。
【００２１】
モデル学習部１０は、その機能構成として、動き解析部１１０と、モデル構築部１２０と、ＧＰＤＭグラフ生成部１３０とを備える。
【００２２】
動き解析部１１０は、リファレンスモーションデータからビートフレームを抽出し、その抽出したビートフレームの時刻を示すビート時刻データを取得する。ビートフレームは、リファレンスモーションデータにおいて、動きのリズムを表して動きの突然的な変化が生じているフレームである。
モデル構築部１２０は、リファレンスモーションデータを動きの複雑さに応じて複数のセグメントに分割する。そして、モデル構築部１２０は、セグメントごとに潜在空間でＧＰＤＭを学習し、その学習したＧＰＤＭ同士で遷移可能な潜在空間の座標を推定する。そして、モデル構築部１２０は、セグメントの分割情報と、各分割セグメントに対するＧＰＤＭデータ（遷移可能な潜在空間の座標の推定結果）とを出力する。
ＧＰＤＭグラフ生成部１３０は、動き解析部１１０から供給されるビート時刻データと、モデル構築部１２０から供給される、セグメントの分割情報および各分割セグメントに対するＧＰＤＭデータとを取り込み、ビート時刻データをキーとして、セグメントの分割情報と各分割セグメントに対するＧＰＤＭデータとを対応付けたＧＰＤＭグラフデータを生成する。
【００２３】
動き追跡部２０は、モデル学習部１０のＧＰＤＭグラフ生成部１３０から供給されるＧＰＤＭグラフデータに基づいて、ユーザビデオデータの映像における人体姿勢をフレームごとに追跡する。そして、動き追跡部２０は、その追跡結果として、各フレームの人体姿勢を表す人体姿勢推定データを出力する。
本実施形態においては、動き追跡部２０は、パーティクルフィルタにより追跡を行う。パーティクルフィルタは、検出と追跡とを同時に行う逐次追跡アルゴリズムである。すなわち、パーティクルフィルタは、現在の状態から起こり得る次の状態を多数のパーティクル（粒子）に見立て、全てのパーティクルの尤度に基づく重み付き平均を次の状態として予測しながら追跡を行うアルゴリズムである。
【００２４】
次に、モデル学習部１０の動き解析部１１０の詳細について説明する。
図３は、動き解析部１１０の機能構成を示すブロック図である。同図に示すように、動き解析部１１０は、物理量変換部１１１と、データ分割部１１２と、短時間主成分分析部１１３と、主成分座標連結部１１４と、ビート推定部１１５と、後処理部１１６とを備える。
【００２５】
物理量変換部１１１は、取り込んだリファレンスモーションデータを対象にして、各ジョイントのルートに対する位置を算出する。具体的には、物理量変換部１１１は、リファレンスモーションデータにおいて、時刻ｔにおけるジョイント相対位置を算出する。ジョイント相対位置は、リファレンスモーションデータを関節位置空間に変換したときの位置であり、ルートに対するジョイントの相対的な位置である。以下、物理量変換部１１１が実行するジョイント相対位置の計算方法について説明する。
【００２６】
まず、物理量変換部１１１は、リファレンスモーションデータの基本ポーズデータとフレームデータとを用いてジョイント位置を算出する。基本ポーズデータは、基本ポーズであるときのルートの位置、各ジョイントの位置、各骨の長さ等、基本ポーズを特定する情報を有する。フレームデータは、ジョイントごとに、基本ポーズからの移動量の情報を有する。ここでは、移動量として角度情報を利用する。この場合、時刻ｔにおけるｋ番目のジョイントの位置（ｘ，ｙ，ｚ）座標であるｐｋ（ｔ）は、下記の式（１）および式（２）によって計算される。なお、時刻ｔはフレームデータの時刻である。ここでは、時刻ｔとしてフレームインデックスを使用し、ｔ＝０，１，２，・・・，Ｔ−１である。Ｔは、動きデータに含まれるフレーム数である。
【００２７】
【数１】
0005604249.tif 000002
【００２８】
【数２】
0005604249.tif 000003
【００２９】
ただし、０番目（ｉ＝０）のジョイントはルートである。Ｒａｘｉｓｉ−１，ｉ（ｔ）は、ｉ番目のジョイントとその親ジョイント（ｉ−１番目のジョイント）間の座標回転マトリックスであり、基本ポーズデータに含まれる。各ジョイントにはローカル座標系が定義されており、座標回転マトリックスは親子関係にあるジョイント間のローカル座標系の対応関係を表す。Ｒｉ（ｔ）は、ｉ番目のジョイントのローカル座標系におけるｉ番目のジョイントの回転マトリックスであり、フレームデータに含まれる角度情報である。Ｔｉ（ｔ）は、ｉ番目のジョイントとその親ジョイント間の遷移マトリックスであり、基本ポーズデータに含まれる。遷移マトリックスは、ｉ番目のジョイントとその親ジョイント間の骨の長さを表す。
【００３０】
次に、物理量変換部１１１は、時刻ｔにおける、ルートに対するｋ番目のジョイントの相対位置（ジョイント相対位置）p’ｋ（ｔ）を下記の式（３）により計算する。
【００３１】
【数３】
0005604249.tif 000004
【００３２】
ただし、pｒｏｏｔ（ｔ）は時刻ｔにおけるルート（０番目のジョイント）の位置（p０（ｔ））である。
これにより、時刻ｔのフレームｘ（ｔ）は、ｘ（ｔ）＝｛ｐ’１（ｔ），ｐ’２（ｔ），・・・，ｐ’Ｋ（ｔ）｝と表される。ただし、Ｋは、ルートを除くジョイント数である。
【００３３】
なお、具体的なジョイントの例として、以下に示す２９個（Ｋ＝２９）のジョイントが挙げられる。１ｌｈｉｐ，２ｌｆｅｍｕｒ，３ｌｔｉｂｉａ，４ｌｆｏｏｔ，６ｒｈｉｐ，７ｒｆｅｍｕｒ，８ｒｔｉｂｉａ，９ｒｆｏｏｔ，１１ｌｏｗｅｒｂａｃｋ１２ｕｐｐｅｒｂａｃｋ，１３ｔｈｏｒａｘ，１４ｌｏｗｅｒｎｅｃｋ，１５ｕｐｐｅｒｎｅｃｋ，１７ｌｃｌａｖｉｃｌｅ，１８ｌｈｕｍｅｒｕｓ，１９ｌｒａｄｉｕｓ，２０ｌｗｒｉｓｔ，２１ｌｈａｎｄ，２２ｌｆｉｎｇｅｒｓ，２４ｒｃｌａｖｉｃｌｅ，２５ｒｈｕｍｅｒｕｓ，２６ｒｒａｄｉｕｓ，２７ｒｗｒｉｓｔ，２８ｒｈａｎｄ，２９ｒｆｉｎｇｅｒｓ。
【００３４】
データ分割部１１２は、ジョイント相対位置データを特定時間区間、例えば一定時間の区間に分割する。データ分割部１１２は、各ジョイントのジョイント相対位置データｐ’ｋ（ｔ）に対して、それぞれデータ分割処理を行う。
図４は、データ分割部１１２によるデータ分割処理を説明するための概念図である。データ分割部１１２によるデータ分割処理では、ジョイント相対位置データを一定時間（一定数のフレーム分に対応）の区間に分割する。分割区間の長さは、適宜設定可能である。分割区間の長さは、例えば９０フレーム分の長さである。
【００３５】
短時間主成分分析部１１３は、データ分割部１１２によって分割されたジョイント相対位置データに対し、各区間で主成分分析処理を行う。ここで、時刻ｔのフレームｘ（ｔ）を用いて、一区間のデータＸを、Ｘ＝｛ｘ（ｔ１），ｘ（ｔ２），・・・，ｘ（ｔＮ）｝と表す。ただし、Ｎは区間長（区間内に含まれるフレームの個数）である。Ｘは、Ｍ行Ｎ列の行列である（ただし、Ｍ＝３×Ｋ）。主成分分析処理では、短時間主成分分析部１１３は、Ｘに対して主成分分析処理を行い、Ｘを主成分空間へ変換する。主成分分析処理については、例えば、“http://en.wikipedia.org/wiki/Principal_components_analysis#Software.2Fsource_code”にオープンソースが開示されている。
【００３６】
ここで、短時間主成分分析部１１３が実行する主成分分析処理について説明する。
まず、短時間主成分分析部１１３は、下記の式（４）により、Ｘから平均値を除いたＮ行Ｍ列の行列Ｄを算出する。
【００３７】
【数４】
0005604249.tif 000005
【００３８】
次に、短時間主成分分析部１１３は、下記の式（５）により、Ｎ行Ｍ列の行列Ｄに対して特異値分解（Ｓｉｎｇｕｌａｒ  Ｖａｌｕｅ  Ｄｅｃｏｍｐｏｓｉｔｉｏｎ）処理を実行する。特異値分解処理については、例えば、“http://www.gnu.org/software/gsl/”にオープンソースが開示されている。
【００３９】
【数５】
0005604249.tif 000006
【００４０】
ただし、Ｕは、Ｎ行Ｎ列のユニタリ行列である。Σは、Ｎ行Ｍ列の負でない対角要素を降順にもつ対角行列であり、主成分空間の座標の分散を表す。Ｖは、Ｍ行Ｍ列のユニタリ行列であり、主成分に対する係数（Ｐｒｉｎｃｉｐａｌ  Ｃｏｍｐｏｎｅｎｔ）である。
【００４１】
次に、短時間主成分分析部１１３は、下記の式（６）により、Ｎ行Ｍ列の行列Ｄを主成分空間へ変換する。Ｍ行Ｎ列の行列Ｙは、主成分空間の座標を表す。
【００４２】
【数６】
0005604249.tif 000007
【００４３】
短時間主成分分析部１１３は、区間ごとに、主成分空間の座標を表す行列（主成分座標行列）Ｙと、主成分に対する係数の行列（主成分係数行列）Ｖとを、メモリに保存する。
【００４４】
なお、元空間の座標を表す行列Ｘと主成分座標行列Ｙは、式（６）および下記の式（７）によって相互に変換することができる。
【００４５】
【数７】
0005604249.tif 000008
【００４６】
また、上位のｒ個の主成分によって、下記の式（８）により変換することができる。
【００４７】
【数８】
0005604249.tif 000009
【００４８】
ただし、Ｖｒは、主成分係数行列Ｖ内の上位のｒ個の行から成るＭ行ｒ列の行列である。Ｙｒは、主成分座標行列Ｙ内の上位のｒ個の列から成るｒ行Ｎ列の行列である。Ｘ〜は、復元されたＭ行Ｎ列の行列である。
【００４９】
なお、元空間の一部の自由度だけを主成分分析処理することも可能である。例えば、足の動きだけでビートを表現することができる場合には、足に関するジョイント相対位置データのみから生成したＭ’行Ｎ列の行列Ｘ’に対して、式（４）から式（６）式までによって主成分分析処理を行う。
【００５０】
主成分座標連結部１１４は、各区間の主成分の座標を時系列に沿って連結する。主成分座標連結部１１４が実行する主成分座標連結処理では、連続する２つの区間の境界部分において主成分の座標が滑らかに連結されるように、主成分の座標を調整する。
【００５１】
図５は、主成分座標連結部１１４による主成分座標連結処理を説明するための概念図である。本実施形態では、主成分座標連結部１１４は、時系列にしたがって、先頭の区間から順番に主成分座標連結処理を行う。同図では、ある区間（前区間）までの主成分座標連結処理が終了している。そして、主成分座標連結部１１４は、その前区間に対して、次の区間（当区間）を連結するための主成分座標連結処理を実行する。この主成分座標連結処理では、主成分座標連結部１１４は、前区間の主成分座標に対し、当区間の主成分座標が滑らかに連結されるように当区間の主成分座標を調整する。この主成分座標の調整処理では、主成分選択ステップによって選択された当区間の主成分座標（元座標）に対して、符号反転または座標シフトを行う。
【００５２】
ここで、主成分座標連結部１１４が実行する主成分座標連結処理について説明する。
主成分座標連結ステップＳ１１：
主成分座標連結部１１４は、当区間の主成分の座標（第１主成分の元座標）Ｙ１に対し、当区間の主成分係数行列Ｖから、第１主成分に対する係数Ｖ１を取得する。さらに、主成分座標連結部１１４は、メモリに保存されている前区間の主成分係数行列Ｖから、第１主成分に対する係数Ｖ１ｐｒｅを取得する。
【００５３】
主成分座標連結ステップＳ１２：
主成分座標連結部１１４は、当区間に係る第１主成分に対する係数Ｖ１と前区間に係る第１主成分に対する係数Ｖ１ｐｒｅとの関係に基づいて、当区間に係る第１主成分の元座標を符号反転するか否かを判定する。この符号反転の判定は、下記の式（９）により行う。式（９）による判定の結果、符号反転する場合には、主成分座標連結部１１４は、当区間の第１主成分の元座標Ｙ１に対して符号反転を行うと共に、当区間の主成分係数行列Ｖに対しても符号反転を行う。一方、（９）式による判定の結果、符号反転しない場合には、主成分座標連結部１１４は、当区間の第１主成分の元座標Ｙ１および当区間の主成分係数行列Ｖともに、そのままの値を主成分座標連結ステップＳ１２の処理結果とする。
【００５４】
【数９】
0005604249.tif 000010
【００５５】
ただし、Ｙ１は、当区間で選択された主成分の座標（第１主成分の元座標）である。Ｖは、当区間の主成分係数行列である。Ｖ１は、当区間に係る第１主成分に対する係数である。Ｖ１ｐｒｅは、前区間に係る第１主成分に対する係数である。（Ｖ１・Ｖｋｐｒｅ）は、Ｖ１とＶ１ｐｒｅの内積である。Ｙ１’は、当区間で選択された主成分の座標（第１主成分の元座標）Ｙ１に対する主成分座標連結ステップＳ１２の処理結果である。Ｖ’は、当区間の主成分係数行列Ｖに対する主成分座標連結ステップＳ１２の処理結果である。
【００５６】
主成分座標連結ステップＳ１３：
主成分座標連結部１１４は、主成分座標連結ステップＳ１２の処理結果の主成分座標Ｙ１’に対して座標シフトを行う。具体的には、主成分座標連結部１１４は、下記の式（１０）により座標シフトを行う。この場合、主成分座標連結部１１４は、前区間の主成分座標行列Ｙから、前区間の第ｔＮフレームにおける第１主成分の座標Ｙ１ｐｒｅ（ｔＮ）を取得する。
【００５７】
【数１０】
0005604249.tif 000011
【００５８】
ただし、Ｙ１’（ｔ１）は、ステップＳ１２の処理結果の主成分座標Ｙ１’のうち、第ｔ１フレームの座標である。Ｙ１”（ｔ２）は、式（１０）の最初の計算式の計算結果の座標Ｙ１”のうち、第ｔ２フレームの座標である。
式（１０）の最初の計算式の計算結果の座標Ｙ１”に対し、主成分座標連結部１１４は、第ｔ１フレームの座標Ｙ１”（ｔ１）をＹ１ｏｐｔ（ｔ１）に置き換える。この置き換え後の座標Ｙ１”が、座標シフト結果の座標である。
【００５９】
主成分座標連結ステップＳ１４：
主成分座標連結部１１４は、当区間において、主成分座標連結ステップＳ１２の処理結果の座標Ｙ１’に対して、主成分座標連結ステップＳ１３の処理結果の座標Ｙ１ｏｐｔ（ｔ１）を反映する。これにより、当区間の主成分座標は、前区間の主成分座標に対して滑らかに連結されるものとなる。
【００６０】
主成分座標連結部１１４は、上記した主成分座標連結処理を最初の区間から最後の区間まで行う。これにより、連結後の全区間の主成分座標ｙ（ｔ），ｔ＝０，１，２，・・・，Ｔ−１が求まる。ただし、Ｔは、動きデータに含まれるフレームの個数である。
【００６１】
ビート推定部１１５は、主成分座標連結部１１４によって算出された連結後の全区間の主成分座標ｙ（ｔ）から、極値ｂ（ｊ）を算出する。この算出結果の極値ｂ（ｊ）がビートに対応する。ビートの集合Ｂは、下記の式（１１）で表される。ただし、Ｊは、ビートの個数である。
【００６２】
【数１１】
0005604249.tif 000012
【００６３】
なお、ビートの集合の算出は、上記した方法以外の方法でも可能である。例えば、ビート推定部１１５は、主成分座標連結部１１４によって算出された連結後の全区間の主成分座標から自己相関値を算出し、該自己相関値の極値ｂ（ｊ）をビートに対応するものとして算出することができる。また、ビート推定部１１５は、主成分座標連結部１１４によって、連結後の隣区間の主成分係数から算出した内積（式（９）によるもの）の自己相関値を算出し、該自己相関値の極値ｂ（ｊ）をビートに対応するものとして算出することができる。
【００６４】
後処理部１１６は、ビート推定部１１５によって算出されたビート集合Ｂから、ビート時刻を検出する。
【００６５】
ここで、後処理部１１６が実行するビート時刻検出処理について説明する。
まず、後処理部１１６は、ビート集合Ｂ内の各極値間を、下記の式（１２）により正弦曲線（Ｓｉｎｕｓｏｉｄ）で近似する。
【００６６】
【数１２】
0005604249.tif 000013
【００６７】
ただし、ｓｊ−１（ｔ）は、（ｊ−１）番目の極値ｂ（ｊ−１）からｊ番目の極値ｂ（ｊ）までの区間の正弦近似値である。ｔはフレームに対応する時刻であり、ｔ＝０，１，２，・・・，Ｔ−１である。Ｔは、動きデータに含まれるフレームの個数である。
【００６８】
図６は、式（１２）による正弦近似処理の概念図である。同図において、１番目の極値ｂ（１）から２番目の極値ｂ（２）までの区間ａ１（ｊ＝２の場合の区間）は、ｓ１（ｔ）で近似される。同様に、２番目の極値ｂ（２）から３番目の極値ｂ（３）までの区間ａ２（ｊ＝３の場合の区間）はｓ２（ｔ）で近似され、３番目の極値ｂ（３）から４番目の極値ｂ（４）までの区間ａ３（ｊ＝４の場合の区間）はｓ３（ｔ）で近似され、４番目の極値ｂ（４）から５番目の極値ｂ（５）までの区間ａ４（ｊ＝５の場合の区間）はｓ４（ｔ）で近似される。
【００６９】
次に、後処理部１１６は、正弦近似値ｓｊ−１（ｔ），ｊ＝２，３，・・・，Ｊに対してフーリエ変換処理を実行する。このフーリエ変換処理には、所定のＦＦＴ（Ｆａｓｔ  Ｆｏｕｒｉｅｒ  Ｔｒａｎｓｆｏｒｍ）ポイント数Ｌのハン窓を用いたＦＦＴ演算器を使用する。そして、後処理部１１６は、そのフーリエ変換の結果に基づいて、フーリエ変換に係る周波数範囲のうちから最大の成分を有する周波数（最大成分周波数）ｆｍａｘを検出する。そして、ビート間隔ＴＢをＴＢ＝Ｆｓ／ｆｍａｘの計算式により算出する。ただし、Ｆｓは、１秒当たりのフレーム数である。
【００７０】
次に、後処理部１１６は、正弦近似値ｓｊ−１（ｔ），ｊ＝２，３，・・・，Ｊと、下記の式（１３）で定義される基準値ｓ’（ｔ）との間の最大相関初期位相を、下記の式（１４）により算出する。
【００７１】
【数１３】
0005604249.tif 000014
【００７２】
【数１４】
0005604249.tif 000015
【００７３】
次に、後処理部１１６は、下記の式（１５）により、ビート時刻ｅｂ（ｊ）の集合ＥＢを算出する。ただし、ＥＪは、ビート時刻ｅｂ（ｊ）の個数である。
【００７４】
【数１５】
0005604249.tif 000016
【００７５】
以上が、本実施形態における動き解析部１１０によるビート時刻検出処理の説明である。本実施形態によれば、動きデータを入力し、短時間の区間ごとに主成分分析処理を行い、第１主成分の座標を算出し、各区間の座標を適切に連結し、ビートを抽出することができる。短時間主成分分析によれば、動きの最も大きい変化を表現できるため、動きの種類を問わず、多様な動きに対応し、より高い精度でビートを抽出することができる。
【００７６】
次に、モデル構築部１２０が実行するＧＰＤＭの学習処理について説明する。図７は、ＧＰＤＭの学習処理を説明するための概念図である。ＧＰＤＭは、低次元である潜在空間Ｘ＝［ｘ１，ｘ２，・・・，ｘＮ］Ｔを、高次元であるポーズ空間Ｙ＝［ｙ１，ｙ２，・・・，ｙＮ］Ｔに変換することができる。また、ＧＰＤＭは、潜在空間Ｘ内で時間的に遷移することができる。なお、同図は、Ｎ＝４の場合を模式的に示したものであり、パラメータであるα（オーババー）、β（オーババー）、およびＷの記載が省略されている。
【００７７】
ｘｉは、ポーズ空間Ｙにおけるフレームｙｉに対応する潜在空間Ｘで学習した座標である。ここでは、ｘｉは、潜在空間Ｘにおけるｉ番目のフレームである。ｙｉは、ポーズ空間Ｙにおけるｉ番目のフレームである。α（オーババー）は、潜在空間Ｘにおいて、座標ｘｉから座標ｘｉ＋１を予測する際に用いられる予測用のパラメータである。また、β（オーババー）およびWは、潜在空間Ｘの座標ｘｉからポーズ空間Ｙのフレームｙｉにマッピングする際に用いられるパラメータである。モデル構築部１２０は、リファレンスモーションデータを取り込むと、これらのパラメータを学習する。
【００７８】
潜在空間Ｘで一つの座標ｘｔ−１を入力すると、次の時刻の座標ｘｔが下記の式（１６）によって推定結果として算出される。
【００７９】
【数１６】
0005604249.tif 000017
【００８０】
ただし、Ｎはフレーム総数であり、μｘ（ｘ）は平均値であり、σ２ｘ（ｘ）は分散であり、Ｉは単位行列である。
【００８１】
また、潜在空間Ｘの座標ｘに対応するポーズ空間Ｙのフレームｙは、下記の式（１７）によって算出される。
【００８２】
【数１７】
0005604249.tif 000018
【００８３】
モデル構築部１２０は、前述したとおり、リファレンスモーションデータを動きの複雑さに応じて複数のセグメントに分割し、セグメントごとに潜在空間でＧＰＤＭを学習し、その学習したＧＰＤＭ同士で遷移可能な潜在空間の座標を推定する。モデル構築部１２０の詳細な処理については後述する。
【００８４】
次に、動き追跡部２０の詳細について説明する。
図８は、動き追跡部２０の機能構成を示すブロック図である。同図に示すように、動き追跡部２０は、サンプル生成部２０１と、尤度計算部２０２と、リサンプリング部２０３と、潜在空間遷移尤度計算部２０４と、予測部２０５とを備える。
【００８５】
サンプル生成部２０１は、ポーズ空間における対象のフレームデータと、リファレンスモーションデータの各フレームデータとの距離をそれぞれ計算し、その計算した距離が全体の平均距離以下であって且つ極小値である、リファレンスモーションデータのフレームデータをシードフレームとして抽出する。そして、サンプル生成部２０１は、下記の式（１８）により距離に基づくサンプル数を計算する。
【００８６】
【数１８】
0005604249.tif 000019
【００８７】
ただし、ｄ（ｉ）は第ｉ番目のシードフレームにおける距離である。ｑ（ｉ）は距離が小さいほど大きくなる関数である。ｐ（ｉ）はｑ（ｉ）を正規化した尤度である。ｎ（ｉ）は、第ｉ番目のシードフレームのサンプル数である。また、Ｎは、サンプル総数である。
【００８８】
サンプル生成部２０１は、第ｉ番目のシードフレームに対応する潜在空間の座標を、ＧＰＤＭグラフデータから抽出する。そして、サンプル生成部２０１は、その抽出した座標を中心に、ｎ（ｉ）個のサンプルを例えば乱数を用いて無作為に生成する。その生成範囲は、例えば、ＧＰＤＭグラフデータにおけるσ２ｘ（ｘ）×ｋ，（０＜ｋ＜１））である。そして、サンプル生成部２０１は、これら生成したサンプルをポーズ空間に対応させて得られる座標を、最終サンプルとして生成する。
【００８９】
なお、人体姿勢推定装置１が処理するポーズ空間における最初のフレームデータについては、サンプル生成部２０１は、例えば以下の方法のいずれかによってユーザビデオデータからポーズデータを取得する。
（１）画像からポーズを検出する専用センサによってポーズを検出し、そのポーズのポーズデータを取得する。
（２）オペレータによる手作業によって映像から所望のポーズを選び、そのポーズのポーズデータを取得する。
（３）あらかじめ、既知ポーズの被写体を撮影してユーザビデオデータを作成しておき、そのユーザビデオデータから既知ポーズに対応するポーズデータを取得する。
（４）公知のポーズ推定技術を用いて、他の画像からポーズデータを取得する。
【００９０】
尤度計算部２０２は、ポーズ空間における対象のフレームデータと各サンプルとを比較して尤度を計算する。具体的には、尤度計算部２０２は、対象のフレームデータにサンプルを投影して枠を生成する。この枠は、例えば、１５個の体のジョイントを含んだ運動学的なツリー構造を有している。そして、尤度計算部２０２は、その枠とフレームデータにおける画像のエッジとを比較して、枠と画像のエッジとの尤度を下記の式（１９）の尤度関数によって計算する。また、尤度計算部２０２は、その枠と画像のシルエットとを比較して、枠と画像のシルエットとの尤度を下記の式（２０）の尤度関数によって計算する。
【００９１】
【数１９】
0005604249.tif 000020
【００９２】
【数２０】
0005604249.tif 000021
【００９３】
なお、これら画像のエッジおよびシルエットを用いた尤度の計算については、非特許文献２に詳細が説明されている。
【００９４】
次に、尤度計算部２０２は、全サンプルの尤度を正規化する。例えば、尤度計算部２０２は、下記の式（２１）により、画像のエッジを用いて計算した尤度と、シルエットを用いて計算した尤度とのサンプルごとの平均値を求めて正規化値とする。
【００９５】
【数２１】
0005604249.tif 000022
【００９６】
リサンプリング部２０３は、尤度計算部２０２が計算した尤度に基づいて重みを計算する。例えば、リサンプリング部２０３は、尤度が大きいほど重みを大きくする。そして、リサンプリング部２０３は、重みに基づいて潜在空間におけるサンプルを置換する。具体的には、リサンプリング部２０３は、現在のサンプルの集合から重みに比例した確率で所定数のパーティクルを生成し、これらのパーティクルの集合で、現在のパーティクルの集合を置き換える。
【００９７】
ここまでの動き追跡部２０の処理によって、ポーズ空間における当該対象のフレームデータの処理が完了する。そして、次に、潜在空間遷移尤度計算部２０４が次フレームに移るための処理を実行する。
【００９８】
潜在空間遷移尤度計算部２０４は、ポーズ空間における当該対象のフレームデータからＧＰＤＭグラフデータにおけるビートフレームまでの距離を計算する。この距離は、例えば遷移尤度である。そして、潜在空間遷移尤度計算部２０４は、その距離が予め決定された閾値より小さい場合に、そのビートフレームが所在する潜在空間に遷移させる。そして、潜在空間遷移尤度計算部２０４は、その距離に応じてサンプル数を再分配する。ここで、潜在空間遷移尤度計算部２０４は、遷移させるサンプル数を前記の式（１８）により計算する。また、潜在空間遷移尤度計算部２０４は、そのサンプル数分のサンプルを、遷移した潜在空間の座標を中心にして生成する。
【００９９】
予測部２０５は、遷移させた潜在空間において、ＧＰＤＭグラフデータを用いて前記の式（１６）を計算することにより、次フレームのサンプルを予測する。そして、予測部２０５は、予測したサンプルを、前記の式（１７）を計算することによってポーズ空間に対応させて得られる座標を、最終サンプルとして生成する。
【０１００】
次に、モデル学習部１０のモデル構築部１２０の動作について説明する。図９は、モデル構築部１２０の処理手順を示すフローチャートである。まず、ステップＳ１において、モデル構築部１２０は、リファレンスモーションデータ全体を１セグメントとしてＧＰＤＭを学習する。そして、モデル構築部１２０は、学習したＧＰＤＭを用い、リファレンスモーションデータの第１フレームに対応する潜在空間の座標を用いて、リファレンスモーションデータｙｔｒａｉｎｉｎｇｔ（１：Ｎ）と同じ長さである復元モーションデータｙｒｅｃｔ（１：Ｎ）を生成する。
【０１０１】
次に、ステップＳ２において、モデル構築部１２０は、リファレンスモーションデータｙｔｒａｉｎｉｎｇｔ（１：Ｎ）と復元モーションデータｙｒｅｃｔ（１：Ｎ）との対応フレームの距離（復元誤差）を下記の式（２２）により計算する。
【０１０２】
【数２２】
0005604249.tif 000023
【０１０３】
次に、ステップＳ３において、モデル構築部１２０は、セグメントを分割するか否かを判定する。具体的には、図１０に示すように復元誤差ｅｒｒｏｒｔがあらかじめ設けられた閾値を超えるとき、モデル構築部１２０は、下記の式（２３）による時点を分割点ｓとして決定する。
【０１０４】
【数２３】
0005604249.tif 000024
【０１０５】
ただし、ｌ（エル）は、セグメントの開始点から復元誤差ｅｒｒｏｒｔが閾値を超えるときまでの時間である。また、ｔはビートフレーム間隔の平均時間である。つまり、２ｔ分の時間は、少なくとも１個のビートフレームが含まれると推定される時間である。
【０１０６】
すなわち、式（２３）によれば、モデル構築部１２０は、セグメントの開始点から復元誤差が閾値を超えるまでの時間ｌ（エル）がビートフレーム間隔の平均時間の２倍の時間２ｔよりも長い場合は、時間ｌ（エル）の時点を分割点ｓとする。また、モデル構築部１２０は、時間ｌ（エル）が時間２ｔ以下である場合は、時間２ｔの時点を分割点ｓとする。
【０１０７】
分割する場合（Ｓ３：ＹＥＳ）はステップＳ４の処理に移り、分割しない場合（Ｓ３：ＮＯ）は本フローチャートの処理を終了する。
ステップＳ４において、モデル構築部１２０は、ステップＳ３の処理において決定した分割点ｓでセグメントを分割する。
【０１０８】
次に、ステップＳ５において、モデル構築部１２０は、ステップＳ４の処理で分割したセグメントの分割点よりも前の部分について、ステップＳ１の処理と同様にしてＧＰＤＭを学習する。
そして、モデル構築部１２０は、分割点以降の部分については、ステップＳ１の処理に戻って、ＧＰＤＭの学習を行う。
【０１０９】
以上説明したとおり、本発明の一実施形態における人体姿勢推定装置１は、リファレンスモーションデータを動きの複雑さに応じて複数のセグメントに分割し、セグメントごとに潜在空間でＧＰＤＭグラフデータを生成する。そして、人体姿勢推定装置１は、ＧＰＤＭグラフデータに基づいて、ユーザビデオデータの映像における人体姿勢をフレームごとに追跡して人体姿勢推定データを出力する。
これにより、本実施形態における人体姿勢推定装置１は、次元数の低い潜在空間でのパーティクルフィルタを適用することにより、パーティクルの追跡を高く保つことができる。さらに、本実施形態における人体姿勢推定装置１は、リファレンスモーションデータを動きの複雑さに応じて複数のセグメントに分割しセグメントごとにＧＰＤＭ学習を行うことにより、複雑な動きが含まれる人体の姿勢推定を高精度に行うことができる。
したがって、本実施形態における人体姿勢推定装置１によれば、複雑な動きが含まれる人体の姿勢推定を高精度に行うことができる。
【０１１０】
なお、上述した実施形態である人体姿勢推定装置の一部の機能をコンピュータで実現するようにしてもよい。この場合、その制御機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）や周辺装置のハードウェアを含むものである。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、光ディスク、メモリカード等の可搬型記録媒体、コンピュータシステムに内蔵される磁気ハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバ装置やクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持するものを含んでもよい。また上記のプログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせにより実現するものであってもよい。
【０１１１】
以上、本発明の実施の形態について図面を参照して詳述したが、具体的な構成はその実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【０１１２】
１  人体姿勢推定装置
１０  モデル学習部
２０  動き追跡部
１１０  動き解析部
１１１  物理量変換部
１１２  データ分割部
１１３  短時間主成分分析部
１１４  主成分座標連結部
１１５  ビート推定部
１１６  後処理部
１２０  モデル構築部
１３０  ＧＰＤＭグラフ生成部
２０１  サンプル生成部
２０２  尤度計算部
２０３  リサンプリング部
２０４  潜在空間遷移尤度計算部
２０５  予測部
【図１】
0005604249.tif 000025
【図２】
0005604249.tif 000026
【図３】
0005604249.tif 000027
【図４】
0005604249.tif 000028
【図５】
0005604249.tif 000029
【図６】
0005604249.tif 000030
【図７】
0005604249.tif 000031
【図８】
0005604249.tif 000032
【図９】
0005604249.tif 000033
【図１０】
0005604249.tif 000034