(57)【要約】【課題】  深さ画像から生成したデータ点を、対象のラベル付け部位を表すグループにグループ化して、このデータ点のグループ化を用いて、前記対象を表すモデルを前記データ点にフィットさせるような、対象の姿勢を推定、追跡する装置および方法を提供する。【解決手段】  前記データ点のグループ化の処理は、前記データ点の近接性に基づいて、前記データ点をセグメントにグループ化し、次に、制約条件を用いて前記セグメントを前記ラベル付け部位に割り当てる。前記データ点を前記ラベル付け部位にグループ化することで、前記モデルを前記データ点にフィットさせる。【選択図】  図１
2010514064.tif 000002
【特許請求の範囲】
【請求項１】
対象を含む第１の画像から前記対象のデータ点を生成し、
前記データ点を、少なくとも前記データ点の近接性に基づいて、前記対象のラベル付け部位を表すデータ点のグループにグループ化し、
前記グループを用いて、前記対象を表すモデルを前記データ点にフィットさせて、前記データ点から推定される前記対象の姿勢を表す姿勢ベクトルを生成し、
前記姿勢ベクトルを出力する
ことを特徴とする対象の姿勢を推定、追跡する方法。
【請求項２】
前記第１の画像は、深さ画像キャプチャ装置で取得した前記対象の深さ画像を含み、この深さ画像は、前記深さ画像キャプチャ装置と前記対象の部位との距離を表すことを特徴とする請求項１に記載の対象の姿勢を推定、追跡する方法。
【請求項３】
前記モデルをフィットさせるステップは、
前記深さ画像キャプチャ装置において視覚可能な、前回のモデルの頂点を判定し、この場合の前記前回のモデルは、前記第１の画像に先立つ第２の画像から生成し、
前記第２の画像から生成した前記モデルの頂点に対応する前記第１の画像のデータ点を取得し、
前記モデルの頂点と前記対応するデータ点に基づいて、前記第１の画像の前記対象の姿勢ベクトルを推定することを特徴とする請求項２に記載の対象の姿勢を推定、追跡するための方法。
【請求項４】
前記モデルの姿勢ベクトルを推定するステップは、逆運動学的手法を実行することを含むことを特徴とする請求項３に記載の対象の姿勢を推定、追跡する方法。
【請求項５】
2010514064.tif 000027
【請求項６】
前記データ点をグループ化するステップは、
近接する前記データ点をセグメントにグループ化し、
前記セグメントを、制約条件を用いてグループ化することを特徴とする請求項１に記載の対象の姿勢を推定、追跡する方法。
【請求項７】
前記制約条件は、
第１のグループにフィットさせた形状の外側にある第１のデータ点は前記第１のグループにグループ化しないことを示すフィッティング部位の制約条件と、
深さプロファイルを有する第２のデータ点は第２のグループにグループ化することを示す深さの制約条件と、
所定の色を有する第３のデータ点に対応する色画像の画素に応答して、前記第３のデータ点を第３のグループにグループ化することを示す色の制約条件と
を含むことを特徴とする請求項６に記載の対象の姿勢を推定、追跡する方法。
【請求項８】
前記セグメントをグループ化するステップは、
前記セグメントの前記グループへの割り当てを変更し、
前記セグメントと前記セグメントを割り当てた前記グループの中心との距離に少なくとも基づいて、前記セグメントの前記グループへの割り当てに関わる費用を算定し、
前記費用が最小になるように前記セグメントをグループへ割り当てることを決定する
ことを特徴とする請求項６に記載の対象の姿勢を推定、追跡する方法。
【請求項９】
前記セグメントをグループ化するステップは最適化アルゴリズムを用いることを特徴とする請求項６に記載の対象の姿勢を推定、追跡する方法。
【請求項１０】
前記対象の所定の姿勢を用いて前記モデルのパラメータを初期化するステップを含むことを特徴とする請求項１に記載の対象の姿勢を推定、追跡するための方法。
【請求項１１】
前記モデルのパラメータを初期化するステップは、
前記対象の所定の姿勢を検出し、
前記対象の所定の姿勢から前記対象の関節の位置を検出し、
前記モデルのパラメータを前記関節の位置にフィットさせるように調整する
ことを特徴とする請求項１０に記載の対象の姿勢を推定、追跡するための方法。
【請求項１２】
前記第１の画像でフィットさせた前記モデルの姿勢ベクトルを用いて、前記第１の画像に続く次の画像シーケンスにおけるデータ点をグループ化し、前記モデルを前記次の画像におけるデータ点にフィットさせることを特徴とする請求項１に記載の対象の姿勢を推定、追跡するための方法。
【請求項１３】
プロセッサが実行可能な指令を記憶したコンピュータ読み取り可能な媒体を含むコンピュータプログラム製品であって、
前記指令を実行することで、前記プロセッサに、
対象を含む第１の画像から前記対象のデータ点を生成する処理と、
前記データ点を、少なくとも前記データ点の近接性に基づいて、前記対象のラベル付け部位を表すデータ点のグループにグループ化する処理と、
前記グループを用いて、前記対象を表すモデルを前記データ点にフィットさせて、前記データ点から推定される前記対象の姿勢を表す姿勢ベクトルを生成する処理と、
前記姿勢ベクトルを出力する処理と
を実行させることを特徴とするコンピュータプログラム製品。
【請求項１４】
前記第１の画像は、深さ画像キャプチャ装置で取得した前記対象の深さ画像を含み、この深さ画像は、前記深さ画像キャプチャ装置と前記対象の部位との距離を表すことを特徴とする、請求項１に記載のコンピュータプログラム製品。
【請求項１５】
前記モデルをフィットさせる処理は、前記プロセッサに、
前記深さ画像キャプチャ装置において視覚可能な、前回のモデルの頂点を判定し、この場合の前記モデルは前記第１の画像に先立つ第２の画像から生成し、
前記第２の画像から生成した前記モデルの頂点に対応する前記第１の画像のデータ点を取得し、
前記モデルの頂点と前記対応するデータ点とに基づいて、前記第１の画像の前記対象の姿勢ベクトルを推定する処理を実行させる
ことを含むことを特徴とする請求項１４に記載のコンピュータプログラム製品。
【請求項１６】
2010514064.tif 000028
【請求項１７】
前記データ点をグループ化する処理は、前記プロセッサに、
近接する前記データ点をセグメントにグループ化し、
前記セグメントを、制約条件を用いてグループ化する処理を実行させる
ことを含むことを特徴とする請求項１３に記載のコンピュータプログラム製品。
【請求項１８】
前記コンピュータプログラム製品は、前記プロセッサに、前記対象の所定の姿勢を用いて前記モデルのパラメータを初期化する処理を実行させることを含むことを特徴とする請求項１３に記載のコンピュータプログラム製品。
【請求項１９】
前記コンピュータプログラム製品は、前記プロセッサに、前記第１の画像で生成した前記モデルの姿勢ベクトルを用いて、前記第１の画像に続く次の画像シーケンスにおけるデータ点をグループ化し、次のモデルを前記次の画像におけるデータ点にフィットさせる処理を実行させることを含む
ことを特徴とする請求項１３に記載のコンピュータプログラム製品。
【請求項２０】
対象の画像からデータ点を生成する画像キャプチャモジュールと、
前記画像キャプチャ装置に接続し、前記データ点を、少なくとも前記データ点の近接性に基づいて、前記対象のラベル付け部位を表すデータ点のグループにグループ化するラベル付けモジュールと、
前記画像キャプチャモジュールと前記ラベル付けモジュールとに接続し、前記対象を表すモデルを前記データ点にフィットさせるモデルフィッティングモジュールと
を備えることを特徴とする対象の姿勢を推定、追跡する装置。
【請求項２１】
前記画像は、この深さ画像は、前記画像キャプチャモジュールの画像キャプチャ装置と前記対象の部位との距離を表す深さ画像を含む
ことを特徴とする、請求項２０に記載の対象の姿勢を推定、追跡する装置。
【請求項２２】
前記ラベル付けモジュールは、
制約条件を用いて、近接する前記データ点を前記セグメントにグループ化する第１のグループ化モジュールと、
制約条件を用いて、前記セグメントを前記グループにグループ化する第２のグループ化モジュールと
を備えることを特徴とする請求項２１に記載の対象の姿勢を推定、追跡する装置。
【請求項２３】
前記第２のグループ化モジュールは、
前記セグメントと前記セグメントを割り当てた前記グループの中心との間の距離に少なくとも基づいて、前記セグメントの前記グループへの割り当てに関わる費用を算定する費用算定モジュールと、
前記費用算定モジュールに接続され、前記費用が最小になるように前記セグメントの割り当てを決定するセクション調整モジュールと
を備えることを特徴とする請求項２２に記載の対象の姿勢を推定、追跡する装置。
【請求項２４】
前記第２のグループ化モジュールは、最適化アルゴリズムを用いて前記割り当てを決定することを特徴とする請求項２２に記載の対象の姿勢を推定、追跡する装置。
【請求項２５】
前記モデルフィッティングモジュールは、前記モデルの頂点と、前記モデルの頂点に対応する前記データ点とから、前記対象の姿勢を表す前記モデルの姿勢ベクトルを推定することを特徴とする請求項２０に記載の対象の姿勢を推定、追跡する装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、米国特許法第１１９条第ｅ項に基づく米国特許仮出願第６０／８７１，４１９号（出願日：２００６年１２月２１日）発明の名称：「Human Pose Estimation and Tracking Using Label Assignment」、米国特許出願第１１／８６９，４３５号（出願日：２００７年１０月９日）発明の名称：「Human Pose Estimation and Tracking Using Label Assignment」の優先権を請求するものであり、この出願の主題のすべての記載をここに引用するものである。さらに、本願は、同時係属出願中の米国特許出願第１１／３７８，５７３号（出願日：２００６年３月１７日）発明の名称：「Pose Estimation Based on Critical Point Analysis」についても関連するものであり、この出願の主題のすべての記載をここに引用するものである。
【０００２】
本発明は、マシンビジョン（machine vision）に関し、特に、対象者の姿勢をマシンベースで推定・追跡することに関する。
【背景技術】
【０００３】
人体の姿勢を推定・追跡することは、様々な用途の中でも特に、動作認識、監視、マンマシン・インタラクション（man-machine interaction）などの用途において有用である。画像やビデオシーケンスから任意の姿勢を推定・追跡することは、人体姿勢の微妙なニュアンスを捕捉することが必要な場合が多く、困難な課題である。背景の乱れや、周囲の照明条件の変化、この他の擾乱等の事実によって、課題はさらに困難になる。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
視覚的画像やビデオシーケンスに基づく人体姿勢の推定と追跡に関するアプローチは複数ある。その中には身体の部分を検出するボトムアップ手法（bottom-up approach）という手法がある。そして、検出した成分を使って全身の構成を表すものである。ボトムアップ手法は、雑然とした場面の中の各種の部分を正確かつ容易に検出できないという問題点がある。
【０００５】
別の手法としてはマシンラーニング手法（machine learning techniques）がある。この手法にも、多数の姿勢を取り扱えないという問題点がある。
【０００６】
手法の中には、人体のシルエットを用いて、人体の姿勢を推定、追跡するような手法もある。シルエットを用いる利点としては、画像中のあいまいさを低減できる点である。しかし、この手法も、３Ｄの人体姿勢を再構築するために必要な細部が損なわれる恐れがあるという問題点がある。
【０００７】
近年、複数の深さ画像（depth image）からなるストリームを用いた開発がなされている。これら複数の深さ画像には、人体のシルエットを表現する輪郭の深さプロファイル（depth profile）が含まれており、姿勢の推定についてより多くの情報が利用可能である。３Ｄモデルを深さ画像から生成した３Ｄデータ点にフィットさせる方法として、ＩＣＰ（iterative closet point）は、しばしば、深さ画像とともに用いられる。例えば、J. Zieglerらの「Tracking of the articulated upper body on multi-view stereo image sequences、 CVPR  ２００６年」には、無香料カルマンフィルタ（unscented Kalman filters）とICP手法とを利用して、４つのステレオ画像のストリームから得た３Ｄデータ点に基づいて、人体の上半身の姿勢を再構築することが開示されている。ICP手法に関する主な問題点は、モデルが実際のデータから次第に乖離したり、ICPが極小解になってしまう場合がある点である。次第に乖離したり極小解になってしまう問題点を避けるために、ICPにとって初期設定（initial configuration）が非常に重要になる。しかし、すべての画像について初期設定を適切に行うのは、特に、画像間の動きの変化が大きい場合には困難である。
【０００８】
上記の手法では、姿勢の推定や追跡には演算処理が大変な作業となってしまう。もし、追跡・推定のためのアルゴリズムが遅すぎると、制約された時間内に追跡・推定の処理行うために、いくつかの画像をスキップしなければならない可能性も出てくる。しかし、このように画像をスキップすれば、姿勢の追跡・推定の精度を低減させるという問題点が生じる。
【０００９】
そこで、人体の各種姿勢を正確に追跡し、検出できる人体姿勢を推定・追跡する方法および装置の向上が求められている。さらに、上記の極小解の課題を解消するような人体姿勢を推定・追跡する方法および装置が求められている。さらにまた、演算処理を低減してリアルタイムで人体姿勢を推定・追跡できるような方法および装置が求められている。
【課題を解決するための手段】
【００１０】
本発明の実施形態は、次の２つのステップからなる、対象（例えば、人間）の姿勢を推定・追跡する方法を提供する：（ｉ）画像キャプチャ装置から得たデータ点をグループ化して、対象のラベル付け部位を表すグループにする、（ｉｉ）前記データ点のグループを用いて、対象を表現するモデルをデータ点にフィットさせる。画素の３Ｄ座標を画像キャプチャ装置から得て、これらを費用関数が最小になるようなセグメントにグループ化する。さらに、このセグメントを、前回の画像での対象の制約条件と姿勢ベクトルに基づいてグループ化する。次に、例えば、逆運動学手法を用いて、グループ化したデータ点についてモデルフィッティングを行って、ラベル付けの精度を高め、ラベル付けだけの場合では得られないような姿勢のパラメータを得る。
【００１１】
一実施形態では、データ点をラベル付け部位を表すグループにグループ化する前に、モデルのパラメータを初期化する。このモデルの初期化は、対象の所定の姿勢を検出することで行うようにしてもよい。
【００１２】
一実施形態では、近傍のデータ点をグループ化してセグメントにする。さらに、このセグメントを、制約条件を用いて、対象のラベル付け部位にグループ化する。制約条件とは、いくつかある条件の中で、特に次のような条件である：類似する位置にあるデータ点を、同じラベル付け部位または近接するラベル付け部位にグループ化する；特定のラベル付け部位にフィットさせた円やボックスの外側にあるデータ点は、そのラベル付け部位にグループ化してはならない（例えば、頭部を囲んだ円の外に位置するセグメントは頭部のラベル付けをしてはならない、など）；深さ画像において、他の部位とは異なる深さプロファイルを有するデータ点のグループは、特定のラベル付け部位にグループ化しなければならない；色画像において同じ色または類似する色を有するデータ点のグループは、特定のラベル付け部位にグループ化しなければならない、など。
【００１３】
一実施形態では、ラベル付け部位を用いてモデルをデータ点にフィットさせるために、画像キャプチャ装置において視覚可能であるようなモデルの頂点を判定する。次に、ラベル付け部位におけるデータ点を検索して、モデルの同じラベル付け部位の頂点に対応するデータ点を特定する。そして、逆運動力学を用いて、モデルの頂点とデータ点の３Ｄ座標のから姿勢ベクトルを推定する。
【００１４】
本明細書に記載される特徴および特長はすべて包含される必要はなく、特に、当業者であれば、図や明細書あるいは特許請求の範囲に照らして、さらなる特徴および特長を追加することが可能であることは明らかである。
さらに、本明細書中の説明で用いられた文言は、読みやすさや例示的な目的から主に用いられたものであって、本発明の主題の範囲を詳説したり、限定するために選択されたものではない。
【図面の簡単な説明】
【００１５】
【図１】一実施形態に係る対象の姿勢を推定、追跡する装置の概略図である。
【図２】一実施形態に係る対象の姿勢を推定、追跡する方法に関するフローチャートである。
【図３】一実施形態に係るモデルのパラメータを初期化する方法に関するフローチャートである。
【図４】一実施形態に係る対象の姿勢を推定、追跡する装置の追跡モジュールのブロック図である。
【図５】一実施形態に係る対象の姿勢を推定、追跡するサブルーチンに関するフローチャートである。
【図６】一実施形態に係るラベル付けモジュールのブロック図である。
【図７】一実施形態に係る構造モデルの階層を示す図である。
【図８】一実施形態に係る、モデルを３Ｄのデータ点にフィットさせるためのモデルフィッティングのサブルーチンに関するフローチャートである。
【発明を実施するための最良の形態】
【００１６】
本発明の教示は、付属の図面に関する詳細な説明に照らすならば、容易に理解されるはずである。
【００１７】
以下に、図面を参照しつつ本発明の好ましい実施形態について記載するが、類似する参照符号は機能的に類似する構成要素を表す。
【００１８】
明細書中の「一実施形態」あるいは「実施形態」という記述は、当該の実施形態に関して記載された特定の特徴、構造、特性が本発明の少なくとも１つの実施形態に含まれることを意味する。明細書の随所に現れる「一実施形態では」という表現は、必ずしも同一の実施形態について言及するものではない。
【００１９】
詳細な記載の部分によっては、コンピュータメモリ内のデータビットの操作に関するアルゴリズムや符号表現によって提示される。このようなアルゴリズム的な記載や表現は、データ処理技術を扱う当業者によって用いられる手段であり、他の当業者に仕事の実体を効果的に伝達するためのものである。ここで言う一般的なアルゴリズムとは、所望の結果を導くためのステップが自己無撞着に連続したものと認識されるものである。このようなステップでは、物理量を物理的に操作することを必要とする。必ずしもではないが通常、このような物理量は、記憶、伝送、結合、比較、もしくは処理が可能な電気信号あるいは磁気信号の形態をとる。主に一般用途の理由から、このような信号をビット、値、要素、シンボル、文字、用語、数などで呼ぶほうがしばしば利便である。さらに、物理的な数量の物理的な操作を必要とするステップに関する特定の構成を、モジュールや符号装置などと呼ぶほうが、一般性を失うことなく、しばしば利便である。
【００２０】
しかしながら、このような表現あるいは類似の表現は所定の物理量に関連する便宜上のラベルにすぎない。説明から明らかな場合を除いて特に言及しない限りは、記載全体を通じて「処理する」、「演算する」、「算出する」、「決定する」あるいは「表示する」などの表現を用いる説明では、コンピュータシステムの記録部や記憶部に記憶される物理的（電子的）な数量として表されるデータを操作して、コンピュータシステムの記録部、記憶部、送信部、表示部などに記憶される、同様に物理量として表される別のデータに変換するようなコンピュータシステムあるいは類似の電子演算装置の実行や処理について述べている。
【００２１】
本発明の特定の側面は、ここではアルゴリズムの形態で記載される処理ステップや指令を含む。なお、本発明のこれらの処理ステップや指令は、ソフトウェア、ファームウェアあるいはハードウェアにおいて具現可能であり、ソフトウェアにおいて具現する場合、各種のオペレーションシステムで用いられる異なるプラットフォーム上に搭載され、そこから操作したりするためにダウンロードが可能である。
【００２２】
また、本発明は、ここに記載される動作を実行する装置に関する。この装置は、必要な用途に合わせて特定の構成を備えていてもよいし、コンピュータに記憶されるコンピュータプログラムによって選択的に起動されたり、再構成されるような汎用コンピュータから構成されていてもよい。かかるコンピュータプログラムは、以下のようなコンピュータ読取り可能な媒体に記憶されてもよいが、これらに限定されるものではない：フレキシブルディスク、光ディスク、CD-ROM、磁気光ディスクなどを含むあらゆる種類のディスク、ROM、RAM、EPROM、EEPROM、磁気カードや光カード、ASIC（Application Specific Integrated Circuits）、あるいは電子命令（electronic instructions）の記憶に適したあらゆる種類の媒体、および各々がコンピュータシステムバスに連結されたもの。さらに、本明細書に記載されるコンピュータには単一のプロセッサが含まれ、あるいは、演算能力を向上させるために複数のプロセッサデザインを用いた構造であってもよい。
【００２３】
ここでいうアルゴリズムや表示は、特定のコンピュータやこの他の装置に固有的に関連するものではない。各種の汎用システムは、ここに教示される内容に従ったプログラムとともに用いてもよく、あるいは、必要な方法ステップを実行するために特化された装置を構築するほうが利便な場合もある。これらの各種システムに必要な構造は、以下の記載から明らかである。さらに、本発明は、特定のプログラミング言語を指して記載されるものではない。各種のプログラミング言語を用いて、以下に記載される本発明の特定の教示を実装するようにしてもよく、さらに、以下の特定言語は、本発明の実施可能性と最良の形態を開示するために記載されたものであることは理解されるであろう。
【００２４】
本明細書中の説明で用いられた文言は、読みやすさや例示的な目的から主に用いられたものであって、本発明の主題の範囲を詳説したり、限定するために選択されたものではない。したがって、本発明の開示は、例示を意図したものであって、以下の特許請求の範囲に記載される本発明の範囲を限定するものではない。
【００２５】
対象の姿勢を推定、追跡するための方法に関する一実施形態は主に次の２つのステップを含む：（ｉ）ラベル付け部位のデータ点をグループ化する、（ｉｉ）データ点のグループ化を用いて、対象を表すモデルをデータ点にフィットさせる。ラベル付けのステップでは、深さ画像から生成した対象のデータ点をグループ化してセグメントにする。これらのセグメントを、各種の制約条件を用いて、さらにグループ化してラベル付け部位（例えば、頭部、胴体部、左腕部、右腕部など）にする。モデルをフィットさせるステップでは、ラベル付け部位の点ごとに逆運動学を行って、データ点にフィットするモデルの姿勢ベクトルを求める。前記のモデルのフィッティングで求めた姿勢ベクトルを姿勢の推定として出力し、同時に、この姿勢ベクトルを次の深さ画像における対象の姿勢を推定・追跡するために用いる。
【００２６】
ここでの対象とは、２つ以上の姿勢を有する移動対象をいう。なお、移動対象には、特に、任意の物体、動物、人間、ロボット等が含まれる。ここでの実施形態は、対象として人間を参照しつつ記載するが、本発明は、２つ以上の姿勢を有する、この他の物体や動物についても必然的に同じ方法で適用可能である。
【００２７】
ここでのラベル付け部位とは、関節およびリンクのグループとして概念的に特定することが可能であるような、対象の任意の部分をいう。例えば、対象が人体であれば、ラベル付け部位には、部位の中でも特に、頭部、胴体部、左腕部、右腕部、右足部、左足部などが含まれる。ラベル付けした部位は、他の部位に下位区分（例えば、左腕部には左上腕部と左前腕部とを有する）することも可能である。ラベル付け部位の数は制限されるものではなく、姿勢の推定・追跡の目的に応じて増減可能である。
【００２８】
ここでのモデルとは、関節とリンクによる対象の表現を指す。一実施形態では、モデルとは、スキンメッシュが適用された関節とリンクの階層構造で表した人体である。関節とリンクを有する各種モデルを、対象のモデルとして用いてもよい。
【００２９】
制約条件は、対象の構造や特性に由来する条件を指す。制約条件とは、条件の中でも特に、類似する位置にあるデータ点をグループ化して同じラベル付け部位あるいは近接するラベル付け部位にする；同じラベル付け部位あるいは類似するラベル付け部位に属するデータ点は、深さ画像において類似する深さプロファイルを有するようにする；同じラベル付け部位あるいは類似するラベル付け部位のデータ点は、色画像において類似する色プロファイルを有するようにする、などの条件である。
【００３０】
＜姿勢を推定・追跡する装置および方法の概要＞
図１は、一実施形態に係る対象人体１００の姿勢を推定・追跡する姿勢推定部１１８の概略図を示している。図１の実施形態では、姿勢推定部１１８は２つの画像ソースである、（ｉ）デプスカメラ（depth camera）１１０から人体１００の各点までの距離を表す深さ画像１３２を生成するデプスカメラ１１０と（ｉｉ）人体１００の色画像１３２を捕捉するビデオカメラ１１２とに接続される。一実施形態では、デプスカメラ１１０は、毎秒１７フレームの速度で人体１００の３Ｄデータ点を表現するようなグレースケール画像１３２を生成するスイスのRanger製のデプスカメラであり、ビデオカメラ１１２は、毎秒１５フレームの速度で640×480解像度の色画像１３４を生成する、ソニー製のDFWV500カメラである。
【００３１】
姿勢推定部１１８には、モジュールの中でも特に、初期化モジュール１２０と追跡モジュール１１２とを備える。初期化モジュール１２０は、図３を参照しつつ後記するモデルの初期化を行う。姿勢推定部１１８の追跡モデル１１２は、モジュールの中でも特に、ラベル付けモジュール１２４とモデルフィッティングモジュール１２６とを備える。姿勢推定部１１８は、図8を参照しつつ後記する人体１００の推定姿勢の姿勢ベクトル１３０を出力する。
【００３２】
一実施形態では、深さ画像１３２は、デプスカメラ１１０の代わりに複数台のカメラや構造型光センサにより生成される。一実施形態では、深さ画像１３４を、デプスカメラ１１０およびこの他の感知装置（複数台のカメラや光センサなど）からの入力を組み合わせて生成する。
【００３３】
図２は、一実施形態に係る人体１００の姿勢を推定・追跡する方法のフローチャートを示したものである。まず、図３を参照しつつ後記する所定の姿勢（例えば、対象が両腕を伸ばして下方に下げた状態でデプスカメラ１１０に対峙するＴポーズなど）を用いて、対象の人体１００の姿勢を初期化する（Ｓ２１０）。このようにモデルのパラメータを初期化した後、ビデオカメラ１１２およびデプスカメラ１１０から次の画像シーケンスを取得し（Ｓ２２０）する。次に、図４から図８を参照しつつ後記するように、人体１００を追跡して姿勢ベクトル１３０を生成する（Ｓ２３０）。
【００３４】
＜モデルの初期化＞
図３は、モデルのパラメータを初期化する方法のフローチャートを示したものである。一実施形態では、この初期化はＴポーズに基づいて行われる。まず、深さ画像１３２からＴポーズを検出する（Ｓ３１０）。Ｔポーズの検出には、SVM（Support Vector Machine）ベースの検出器を用いてもよい。特に、Ｔポーズの特徴の検出は、深さ画像１３２において高速フーリエ変換（FFT：Fast-Fourier Transform）を行って、Ｔポーズ画像の輪郭における画素間の距離を判定することで検出する。
【００３５】
Ｔポーズを検出した後、例えば、同時係属出願中の米国特許出願第１１／３７８，５７３号（出願日：２００６年  ３月１７日）発明の名称：「Pose Estimation Based on Critical Point Analysis」に開示されるような方法で、人体１００の関節を検出する（Ｓ３２０）。なお、前記文献に記載されるすべての内容をここに引用する。あるいは、人体１００の関節は、前記人体のラベル付け部位内の画素のx-y座標値の中央値から判定するようにしてもよい。
【００３６】
前記の検出した関節を用いて、モデルのパラメータ４１８を生成する（Ｓ３３０）。モデルのパラメータ４１８を決定している間に、モデルのパラメータ（例えば、前腕部の長さや胴体部の高さなど）を前記の検出した関節に基づいて調整する。検出したモデルのパラメータ４１８は、デプスカメラ１３２から受信する次の画像シーケンスに基づいて人体１００の姿勢を推定・追跡するために、モデルフィッティングモジュール１２６に記憶する。
【００３７】
＜姿勢追跡のモジュールおよび方法＞
図４は、一実施形態に係る人体１００の姿勢を追跡する姿勢推定部１１８に含まれる追跡モジュール１２２のブロック図である。姿勢推定部１１８の追跡モジュール１２２は、各種モジュールの中でも特に、ラベル付けモジュール１２４とモデルフィッティングモジュール１２６とを備える。ラベル付けモジュール１２４は、前回の画像から生成した姿勢ベクトル４１０と、現在の深さ画像１３２と、現在の色画像１３４とを受信する。ラベル付けモジュール１２４は、深さ画像１３２から生成した３Ｄデータ点をグループ化し、図６を参照しつつ後記するラベル付け部位を生成して、各データ点についてのラベル情報４１６を生成する。なお、ラベル付けモジュール１２４とモデルフィッティングモジュール１２６とを単一のモジュールとして実装してもよい。また、ラベル付けモジュール１２４とモデルフィッティングモジュール１２６とを、例えば、ハードウェア、ファームウェア、ソフトウェアとして実装してもよく、あるいは、これらを組み合わせたものであってもよい。
【００３８】
モデルフィッティングモジュール１２６は、前回の画像のフレームから生成した姿勢ベクトル４１０と、現在の画像の深さ画像１３２と、ラベル情報４１６を受信する。モデルフィッティングモジュール１２６では、姿勢ベクトル４１０、現在の深さ画像１３２およびラベル情報４１６を（初期化モジュール１２０で取得してモデルフィッティングモジュール１２６に記憶した）モデルの初期化済パラメータとともに用いて、図８を参照しつつ後記する現在の姿勢ベクトル１３０を生成する。次に、モデルフィッティングモジュール１２６が生成した姿勢ベクトル１３０を、前回の画像の姿勢ベクトル４１０として、ラベル付けモジュール１２４とモデルフィッティングモジュール１２６とにフィードバックする。
【００３９】
図５は、一実施形態に係る人体１００の姿勢を追跡・推定するためのサブルーチンのフローチャートを示したものである。まず、図６を参照しつつ後記するように、セグメントをグループ化してラベル付け部位にするための制約条件を生成する（Ｓ５１０）。次に、深さ画像１３２から生成した３Ｄデータ点を、前記の制約条件を用いてラベル付けする（Ｓ５２０）。３Ｄデータ点をラベル付け部位にグループ化するために、まず、３Ｄデータ点を複数のセグメントにグループ化して、次に、これら複数のセグメントを、図６を参照しつつ後記するラベル付け部位にグループ化する。
【００４０】
前記のラベル付け処理に基づいて、図７を参照しつつ後記するような、モデルフィッティングを行う（Ｓ５３０）。モデルにラベル付け部位をフィットさせることで、ラベル付けの精度が向上するため、このような精度の向上がなければ得ることができないような、姿勢パラメータ（前腕部と上腕部との角度など）を取得することができる。
【００４１】
＜ラベル付けの最適化＞
図６は、一実施形態に係るラベル付けモジュール４１６のブロック図である。ラベル付けモジュール４１６は、セグメント生成部６１０と、制約サポートモジュール（Constraint Support Module）６２０と、最適化エンジン６１２とを備える。セグメント生成部６１０は、深さ画像１３２から生成した３Ｄデータ点を、３Ｄデータ点の深さプロファイルと空間位置の類似性に基づいて、セグメントにグループ化する。
2010514064.tif 000003
【００４２】
制約サポートモジュール６２０は、適用可能な制約条件を生成して、この適用可能な制約条件を最適化エンジン６１２に送信する。画像の利用可能なソースと姿勢推定部１１８の性能（例えば、プロセッサ速度など）とに応じて、異なる制約条件を適用するようにしてもよい。一実施形態では、制約サポートモジュール６２０は、頭部／胴体部追跡モジュール（Head and Torso Tracking Module）６２２と、深さ走査モジュール（Depth Scanning Module）６２４と、色検出モジュール６２６とを備える。
【００４３】
頭部／胴体部追跡モジュール６２２は、人体１００の頭部および胴体部を追跡して、最適化エンジン６１２に頭部と胴体部の追跡（以下、「頭部／胴体部制約条件」と言う）から得られた制約条件を提供する。具体的には、予測する深さ画像１３２の頭部の輪郭に円をフィットさせて人体１００の頭部を特定する。胴体部は、予測する深さ画像１３２の胴体部の輪郭にボックスをフィットさせて特定する。胴体部にフィットさせたボックスは、５つの自由度（x方向、y方向、高さ、奥行き、向き）を有し、対象の人体１００の周囲の背景のデータ点の数が最小になるような位置に配置される。頭部が人体の他の部位（例えば、腕部など）などに覆われて、深さ画像１３２から特定できない場合は、胴体部を表すボックスから頭部の位置を推定するようにしてもよい。
【００４４】
深さ走査モジュール６２４は、深さ画像１３２を走査して、深さ画像１３２の他の部位とは異なる特徴の深さプロファイルを有する３Ｄデータ点を特定する。特徴的な深さプロファイルを有する３Ｄデータ点は、人体の特定部位（例えば、胴体部前方に位置する腕部など）を表す。深さ走査モジュール６２４は、このような特徴的な深さプロファイルに基づいて制約条件（以下、「深さの制約条件」という）を生成して最適化エンジン６１２に送信する。
【００４５】
色検出モジュール６２６は色の制約条件を生成して、最適化エンジン６１２に送信する。色の制約条件とは、特定の色によって人体の特定部位を特定するような条件のことをいう。例えば、人体１００の手はしばしば露出し、色画像１３４において肌色で現れる。したがって、場合によっては、データ点の色の類似性を利用して、特定のデータ点を人体の特定部位にラベル付けすることができる。色の制約条件は、人体の異なる部位同士が接近しているために、深さの差異だけではこれらの部位を特定できない場合（例えば、胴体部に密接した手など）には非常に有用である。一実施形態では、ブロブ探査（blob search）を行って、特定色のデータ点を求める。ブロブ探査は、他のブロブを検出しないように、色画像の特定領域に限定するようにしてもよい。例えば、手のデータ点を検出する場合、肌色についてブロブ探査を行うときには、（同じく肌色の）顔が存在しないような領域のみに限定するようにしてもよい。
【００４６】
2010514064.tif 000004
【００４７】
【数１】
2010514064.tif 000005
【００４８】
2010514064.tif 000006
【００４９】
【表１】
2010514064.tif 000007
【００５０】
2010514064.tif 000008
【００５１】
式（２）から式（６）は、式（１）を解くために用いられる制約条件を表す。式（３）から式（５）（Zejは絶対値|Apj-Aqj|を表す）は、隣り合うセグメント同士は同じか近接するラベル付け部位にグループ化する必要があるとする制約条件に由来する。
【００５２】
式（２）から式（６）に加えて、追加的な制約条件を加えることもできる。一実施形態では、頭部／胴体部追跡モジュール６２２と、深さ探査モジュール６２４と、色検出モジュール６２６での制約条件を用いる。頭部／胴体部追跡モジュール６２２は、頭部にフィットさせた円の外側に位置するセグメントには式Ai,1=0で表される制約条件を付与し、胴体部にフィットさせたボックスの外側に位置するセグメントには式Ai,2=0で表される制約条件を付与する。深さ探査モジュール６２４は、例えば、胴体部の前方に現れているセグメント（つまり、左腕部や右腕部を表すセグメント）には、式Ai,3+Ai,4=1で表される制約条件を付与する。さらに、色検出モジュール６２６は、例えば、色画像１３４においてデータ点が肌色を有するようなセグメント（つまり、右手部または左手部を表すセグメント）には、式Ai,3+Ai,4=1で表される制約条件を付与する。
【００５３】
式（１）から式（６）によって表される最適化問題は、NP困難の整数計画（integer program which is NP-hard）である。一実施形態では、Aijを非整数の値とすることで、最適化問題を線形計画に簡素化する。このような簡素化法を用いることで、式（１）から式（６）で表される最適化問題を、一般市場で入手可能なlp_solve 5.5.0.10などのソフトウェアライブラリを使って効率的に解くことができる（例えば、http://lpsolve.sourceforge.net/5.5/で入手可能である）。
【００５４】
＜構造モデルを用いたモデルフィッティング＞
2010514064.tif 000009
【００５５】
一実施形態では、対象のモデルは、肌メッシュが装着された状態の関節とリンクの階層として表現される。演算処理を簡素化するために、スキンの一部に基づくモデルの頂点をメッシュ化して１つだけのリンクとし、頂点では複数の重み付けを用いるリニア混合を行わないようにする。図７は、子関節として腰部を含んだルート関節である骨盤を有する階層化構造モデルを例示するものである。腰関節には、首関節、左肩関節および右肩関節が含まれる。左肩関節と右肩関節は、順次に、他の子関節（左ひじ関節と右ひじ関節）を含む。
【００５６】
2010514064.tif 000010
【００５７】
【数２】
2010514064.tif 000011
【００５８】
2010514064.tif 000012
【００５９】
2010514064.tif 000013
【００６０】
2010514064.tif 000014
【００６１】
【数３】
2010514064.tif 000015
【００６２】
2010514064.tif 000016
【００６３】
【数４】
2010514064.tif 000017
【００６４】
2010514064.tif 000018
【００６５】
2010514064.tif 000019
【００６６】
【数５】
2010514064.tif 000020
【００６７】
2010514064.tif 000021
【００６８】
【数６】
2010514064.tif 000022
【００６９】
2010514064.tif 000023
【００７０】
＜最適化されたラベル付けおよびモデルフィッティングによる実験結果＞
ある実施形態において人間の姿勢シーケンスについてテストを行った。この実施形態では、深さ画像１３２をスイスのＲａｇｅｒ社製ＳＲ３０００の深さカメラを用いて、さらに色画像を、Ｓｏｎｙ社製ＤＦＷＶ５００のビデオカメラを用いて得た。カリフォルニア州Ｓａｎ  ＬｅａｎｄｒｏのＰｈａｓｅＳｐａｃｅ社製のモーションキャプチャシステムを８台のカメラに接続して、実施形態で得られる関節の推定座標と比較するために、対象の人体の主な８つの関節について実座標を得た。実験では、マーカーを対象の人体に取り付けて実座標を生成した。
【００７１】
テストモーションのシーケンスには、基本的な太極拳（Taiji）の動きを含んだ武術の動作のセットが含まれる。このテストモーションのシーケンスは２．１３ＨＧｚのＰｅｎｔｉｕｍ（登録商標）４において、２〜３Ｈｚのフレーム速度で追跡することができた。本実施形態で得られた関節の位置と実座標とを比較して判定した、関節の位置の誤差を、太極拳動作のシーケンスに関する下の表２に示す。
【００７２】
【表２】
2010514064.tif 000024
【００７３】
表２から分かるように、全体の追跡誤差は約５ｃｍであった（対象はカメラから１．５〜２ｍのところに立っていた）。
【００７４】
高速の動作の姿勢を推定・追跡に関して、本実施形態のロバスト性を検証するために、さらに実験を行った。テストのサンプリング間隔は１から４とした。つまり、k回連続する画像から１つの画像を取り出して、残りの画像をスキップした。下の表３は、本実施形態は、正確性で妥協しない場合では、k = 4までは有効であることを示している。
【００７５】
【表３】
2010514064.tif 000025
【００７６】
制約条件を各種組み合わせて、組み合わせの違いによる効果を確認した。その結果を表４に示す。表４において、制約条件１は頭部と胴体部の制約条件であり、制約条件２は深さの制約条件であり、制約条件３は色の制約条件である。最後の行は、式（２）から式（６）までで表される制約条件のみを用いたものである。なお、表４には、制約条件をすべて用いた場合に達成された最良の結果を示した。
【００７７】
【表４】
2010514064.tif 000026
【００７８】
本実施形態では、さらに、ICP（Iterative Closet Point）のみを用いた推定・追跡との比較も行った。ICPのみを用いた場合は、時折、追跡および推定が欠落する場合では、後続の画像において復旧することができなかったのに対して、本実施形態では、ICPが欠落してもうまく機能した。ICPを用いた方法は処理速度が遅くなったが、これは、収束までにより多くの反復が必要になるためである。
【００７９】
＜代替の実施形態＞
一実施形態では、深さカメラとビデオカメラから受信した画像のフレーム速度に応じてセグメントのサイズを制御する。姿勢推定部の処理速度が、受信した画像を処理するのに十分な速度が得られない場合に、セグメント化の処理速度を速めると、セグメントのサイズが大きくなってしまう。逆に、姿勢推定部の処理速度が、フレーム速度がさらに速いものを処理できるだけの速度である場合は、セグメントのサイズは小さくなって、一般に、より正確な姿勢の推定・追跡が得られる。
【００８０】
一実施形態では、姿勢推定部は、複数の対象を検出、追跡することができる。例えば、姿勢推定部は、深さ画像（および色画像）から２つ以上の対象を検出して特定することができる。
【００８１】
一実施形態では、深さカメラとビデオカメラから受信した画像は、姿勢推定部に出力される前にフィルターで予備処理される。
【００８２】
本発明は、前記の実施形態について説明したが、本発明の範囲内において各種の変更が可能である。したがって、本発明の開示は以下の特許請求の範囲に記載される発明の範囲を例示するためのものであって、これらを限定するためのものではない。
【図１】
2010514064.tif 000029
【図２】
2010514064.tif 000030
【図５】
2010514064.tif 000031
【図７】
2010514064.tif 000032
【図８】
2010514064.tif 000033
【図３】
2010514064.tif 000034
【図４】
2010514064.tif 000035
【図６】
2010514064.tif 000036
【国際調査報告】
2010514064.tif 000037