(57)【要約】フレームシーケンス中のモーションキャプチャマーカグループをトラッキングする方法では：現フレーム中の複数のモーションキャプチャマーカの間のグループ関係を設定し；そして現フレーム中の複数のモーションキャプチャマーカにグループ関係を使用してラベル付けする。【選択図】図１
2009521758.tif 000002
【特許請求の範囲】
【請求項１】
フレームシーケンス中のモーションキャプチャマーカグループをトラッキングする方法であって：
現フレーム中の複数のモーションキャプチャマーカの間のグループ関係を設定し；
前記現フレーム中の前記複数のモーションキャプチャマーカに、前記グループ関係を使用してラベル付けする、
方法。
【請求項２】
更に、
次フレーム中のラベル付けされていない複数のモーションキャプチャマーカに前記グループ関係を使用してラベル付けする、
請求項１記載の方法。
【請求項３】
前記次フレームは後続フレームである、請求項２記載の方法。
【請求項４】
前記次フレームは先行フレームである、請求項２記載の方法。
【請求項５】
前記グループ関係を使用して、前記次フレーム中のラベル付けされていない前記複数のモーションキャプチャマーカにラベル付けする操作では、形状分析を行なう、請求項２記載の方法。
【請求項６】
前記形状分析は拡張分析を含む、請求項５記載の方法。
【請求項７】
前記拡張分析では、ＦＡＣＳ（ｆａｃｉａｌ  ａｃｔｉｏｎ  ｃｏｄｉｎｇ  ｓｙｓｔｅｍ：顔面表情記号化システム）を拡張して用いる、請求項６記載の方法。
【請求項８】
前記複数のモーションキャプチャマーカには、グループ拡張からのずれが最も小さくなるようにラベル付けされる、請求項６記載の方法。
【請求項９】
前記グループ拡張は別のフレームにおいて定義される、請求項８記載の方法。
【請求項１０】
更に、
前記現フレームと前記次フレームとの間に配置される中間フレーム中の複数のモーションキャプチャマーカへのラベル付けを省略する、
請求項２記載の方法。
【請求項１１】
特定のマーカに対するラベル付けは、前記特定のマーカに関するラベル付け問題の解が複数存在する場合には行なわれない、請求項２記載の方法。
【請求項１２】
前記グループ関係は、
少なくとも所定数のモーションキャプチャマーカを含む、請求項１記載の方法。
【請求項１３】
前記所定数は３である、請求項１２記載の方法。
【請求項１４】
前記グループ関係が所定数のモーションキャプチャマーカよりも少ないモーションキャプチャマーカを含む場合、前記グループ関係は、次フレーム中の複数のモーションキャプチャマーカの間で再設定される、請求項１記載の方法。
【請求項１５】
前記所定数は３である、請求項１４記載の方法。
【請求項１６】
別のグループ関係を使用して、前記次フレームにおける前記グループ関係の再設定を容易にする、請求項１４記載の方法。
【請求項１７】
更に、
座標系を設定する、請求項１記載の方法。
【請求項１８】
更に、
前記座標系を構成して、前記グループ関係が並進運動により変化しないようにする、請求項１７記載の方法。
【請求項１９】
更に、
前記座標系を構成して、前記グループ関係が回転運動により変化しないようにする、請求項１７記載の方法。
【請求項２０】
請求項１記載の方法を使用して生成される少なくとも一つの画像を格納するように構成される記憶媒体。
【請求項２１】
前記少なくとも一つの画像は動画像を形成するように構成される、請求項２０記載の記憶媒体。
【請求項２２】
フレームシーケンス中のモーションキャプチャマーカグループをトラッキングするシステムであって：
基準モーションキャプチャマーカグループ情報を生成する基準グループモジュールと；
ラベル付けされたマーカグループ軌跡データを前記基準モーションキャプチャマーカグループ情報を使用して生成するグループ軌跡ラベル付けモジュールと、
を備えるシステム。
【請求項２３】
前記基準グループモジュールは、前記基準モーションキャプチャマーカグループ情報を、選択された注目モーションキャプチャマーカを使用して生成するように構成される、請求項２２記載のシステム。
【請求項２４】
前記基準グループモジュールは、前記基準モーションキャプチャマーカグループ情報を、所定の基準グループを使用して生成するように構成される、請求項２２記載のシステム。
【請求項２５】
前記グループ軌跡ラベル付けモジュールは更に、
現フレーム中の複数のモーションキャプチャマーカの間のグループ関係を設定するグループ設定モジュールを含む、
請求項２２記載のシステム。
【請求項２６】
前記グループ軌跡ラベル付けモジュールは更に、
モーションキャプチャマーカグループにラベル付けするグループラベル付けモジュールを含む、
請求項２２記載のシステム。
【請求項２７】
前記グループ軌跡ラベル付けモジュールは更に、
形状分析情報を生成して、ラベル付けされたマーカグループ軌跡データを生成する前記操作を容易にする形状分析モジュールを含む、
請求項２２記載のシステム。
【請求項２８】
前記グループ軌跡ラベル付けモジュールは更に、
形状分析情報を生成する前記操作を容易にする拡張分析モジュールを含む、
請求項２７記載のシステム。
【請求項２９】
請求項２２記載のシステムを使用して生成される少なくとも一つの画像を格納するように構成される記憶媒体。
【請求項３０】
前記少なくとも一つの画像は動画像を形成するように構成される、請求項２９記載の記憶媒体。
【請求項３１】
フレームシーケンス中のモーションキャプチャマーカグループをトラッキングする装置であって：
現フレーム中の複数のモーションキャプチャマーカの間のグループ関係を設定する手段と；
前記現フレーム中の前記複数のモーションキャプチャマーカに前記グループ関係を使用してラベル付けする手段と、
を備える装置。
【請求項３２】
更に、
次フレーム中のラベル付けされていない複数のモーションキャプチャマーカに前記グループ関係を使用してラベル付けする手段を備える、
請求項３１記載の装置。
【請求項３３】
更に、
前記現フレームと前記次フレームとの間に配置される中間フレーム中の複数のモーションキャプチャマーカへのラベル付けを省略する手段を備える、
請求項３２記載の装置。
【請求項３４】
更に、
座標系を設定する手段を備える、
請求項３１記載の装置。
【請求項３５】
更に、
前記座標系を構成して前記グループ関係が並進運動により変化しないようにする手段を備える、
請求項３４記載の装置。
【請求項３６】
更に、
前記座標系を構成して前記グループ関係が回転運動により変化しないようにする手段を備える、
請求項３４記載の装置。
【請求項３７】
請求項３１記載の装置を使用して生成される少なくとも一つの画像を格納するように構成される記憶媒体。
【請求項３８】
前記少なくとも一つの画像は動画像を形成するように構成される、請求項３７記載の記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は概して、モーションキャプチャ（ｍｏｔｉｏｎ  ｃａｐｔｕｒｅ）に関するものであり、特にモーションキャプチャマーカデータに対してグループごとにトラッキングを行なう方法及びシステムに関するものである。
【背景技術】
【０００２】
通常のモーションキャプチャシステムは、空間ボリュームを取り囲む複数の固定カメラを含む。これらのカメラは、人のようなターゲットに取り付けられるマーカ群の動きを記録する。記録した動きに基づいて、ターゲットの動きのモデルを作成し、そして次に、当該モデルを使用して、映画またはビデオゲームにおけるような該当する動きのグラフィカル表示を生成することができる。
【０００３】
モーションキャプチャシステムの一の実施形態では、撮影画像上のマーカ群にラベル付けしてマーカが何を表わしているかの確認を容易にする。非常に多くの画像を特定のシーンに関して撮影することができ、これらの画像に基づいて、ボリュームデータの連続フレームが生成される。シーンの中の各マーカを、連続フレームに渡って個々にトラッキングして、当該マーカの動きのグラフィカル表示を生成する。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
トラッキング作業は、例えばアクターに取り付けられる幾つかのマーカの軌跡を、非常に多くのフレーム（ボリューム）に渡ってトラッキングする必要がある場合に複雑になる。この作業は、複数のマーカを取り付けた複数のアクター及び／又はオブジェクトがシーンにおいて交錯する場合には極めて複雑になる。
【０００５】
従って、必要なのは、複数のモーションキャプチャマーカを従来の方法を使用して上述のようにトラッキングする際に確認されるこれらの深刻な問題を解決するシステム及び方法である。
【課題を解決するための手段】
【０００６】
本発明は、モーションキャプチャデータフレームシーケンス中のモーションキャプチャマーカデータに対するグループごとのトラッキングを可能にする。
【０００７】
一の実施形態においては、フレームシーケンス中のモーションキャプチャマーカグループをトラッキングする方法では：現フレーム中の複数のモーションキャプチャマーカの間のグループ関係を設定し；そして現フレーム中の複数のモーションキャプチャマーカに、グループ関係を使用してラベル付けする。
【０００８】
別の実施形態では、フレームシーケンス中のモーションキャプチャマーカグループをトラッキングするシステムは：基準モーションキャプチャマーカグループ情報を生成する基準グループモジュールと；そしてラベル付けされたマーカグループ軌跡データを基準モーションキャプチャマーカグループ情報を使用して生成するグループ軌跡ラベル付けモジュールと、を備える。
【０００９】
本発明の他の特徴及び利点は、この技術分野の当業者であれば、次の詳細な記述、及び添付の図を吟味することにより一層容易に理解できるものと思われる。
【発明を実施するための最良の形態】
【００１０】
ここに開示する所定の実施形態によって、連続するモーションキャプチャデータボリュームにおけるモーションキャプチャマーカ群の軌跡をトラッキングする方法及びシステムが実現する。一の実施形態では、個々のモーションキャプチャマーカをトラッキングする操作は、個々のモーションキャプチャマーカを含むグループをトラッキングし、そしてグループ関係情報を利用することにより極めて容易になる。
【００１１】
例えば、ここに開示する一つの方法によって、グループ関係をモーションキャプチャデータの基準フレーム内で設定し、当該グループのマーカ群にラベル付けし、そして次に、他のモーションキャプチャデータフレーム群のマーカ群に、基準フレーム内で設定されたグループ関係情報を使用してラベル付けすることができる。グループ関係は基準フレーム内で、注目マーカ群に関する情報を使用して設定することができる、または所定のマーカグループ関係を適用することにより設定することができる。更に、グループ関係情報は、拡張分析を含む形状分析によって補完することができ、これによって他のフレーム群のマーカ群にラベル付けすることができる。
【００１２】
別の例では、コンピュータ上でホストされるグループトラッキングシステムは、基準グループモジュールと、そしてグループ軌跡ラベル付けモジュールと、を含む。システムは、ボリュームマーカ位置データを含むフレームデータを受信し、基準グループ情報をマーカ位置データに基づいて生成し、そしてラベル付けされたマーカグループ軌跡データを生成する。システムは更に、形状分析モジュールと、そして拡張分析モジュールと、を含む。
【００１３】
この記述を一読した後に、この技術分野の当業者には、本発明をどのようにして種々の別の実施形態、及び別のアプリケーションにおいて実施すればよいかが明らかになるであろう。しかしながら、本発明の種々の実施形態をここに説明するが、これらの実施形態は例示としてのみ提示されるのであって、本発明を制限するために提示されるのではないことを理解されたい。従って、種々の別の実施形態に関するこの詳細記述は、添付の請求項に示される本発明の技術範囲または特許の広さ（ｂｒｅａｄｔｈ）を制限するものとして捉えられるべきではない。
【００１４】
図１は、例示としてのモーションキャプチャシステム１００を示すブロック図である。図示のように、モーションキャプチャ（ＭＯＣＡＰ）システム１００は、撮影空間１１０と、モーションキャプチャカメラ１２０Ａ〜Ｃと、モーションキャプチャ処理システム１３０と、グループトラッキングシステム１３２と、マーカ１４０Ａ〜Ｃと、そしてアクター１６０と、を含む。
【００１５】
撮影空間１１０はボリュームであり、このボリュームの中で、モーションキャプチャカメラ１２０Ａ〜Ｃが動きを撮影する。マーカ１４０Ａ〜Ｃはアクター１６０に取り付けられ、そしてアクター１６０は撮影空間１１０の内部で演技する。モーションキャプチャ処理システム１３０は、画像データの複数のフレームシーケンスをモーションキャプチャカメラ１２０Ａ〜Ｃから受信し、そしてこれらのフレームシーケンスを合成して、演技中のアクターの動きのモデルを表わす３次元（３Ｄ）ボリュームデータを生成する。ボリュームデータの一つのフレームシーケンスは、「ビート（ｂｅａｔ）」と表記される。モーションキャプチャ処理システム１３０は通常さらに、インターフェースモジュール及びディスプレイモジュール（図示せず）を含む。
【００１６】
一の実施形態では、アクター１６０のボディ（体）に取り付けられるマーカ１４０Ａ〜Ｃは小さい逆反射球である。撮影空間１１０は高出力照明光源によって照明され、そしてマーカ１４０Ａ〜Ｃは照明光を明るい照明ポイントとして反射し、これらの照明ポイントは、モーションキャプチャカメラ１２０Ａ〜Ｃが生成する画像データとして撮影される。
【００１７】
図１に示す例では、マーカ１４０Ａ〜Ｃは、アクター１６０の左上腕に取り付けられる。マーカ１４０Ａ〜Ｃによって一つのグループ１５０が定義される。上部前腕はボディ（体）の比較的硬い部分であるので、マーカ１４０Ａ〜Ｃは、アクター１６０が演技している間は、互いに対して非常に安定した位置に留まることになる。従って、局所座標系をグループ１５０に関して定義することができ、この局所座標系では、マーカ１４０Ａ〜Ｃの相対的な位置関係は、対象物体（上腕）の並進運動及び回転運動が変化した場合でもフレームごとにほとんど変化することがない。
【００１８】
グループトラッキングシステム１３２はビートデータをモーションキャプチャ処理システム１３０から受信し、そしてグループトラッキング機能をビートに撮影されているマーカデータに対して実行する。マーカ群に固有の形でラベル付けされ、これにより、これらのマーカの軌跡をビートの連続３次元ボリュームとして撮影し、そして仮想アクターまたはオブジェクトに適用することができる。グループトラッキングでは、注目マーカ群を個々にではなくグループとしてトラッキングすることにより、汎用マーカトラッキングプロセスの精度及び効率を高めることができる。
【００１９】
図２は、グループトラッキングを行なう例示としての方法２００のフローチャートである。グループ関係を設定するためのラベル付けされたデータの単一フレームを使用して、グループトラッキング機能では、ビートの開始フレームの前または後の全てのフレームのグループに属する、ラベル付けされていないマーカ群にラベル付けしようとする。一般的に、既にラベル付けされているマーカ群に対してラベル付けし直すことはない。
【００２０】
データフレームを判断ボックス２１０で受信する。受信データフレームは通常、ラベル付けされていない複数のモーションキャプチャマーカデータポイントを含み、これらのポイントに基づいて、基準グループを作成する。データフレームはビートの第１データフレームとすることができる、当該データフレームは最終データフレームとすることができる、または当該データフレームは、第１データフレームと最終データフレームとの間のいずれかのデータフレームとすることができる。基準グループは判断ボックス２２０で設定され（図３Ａ及び３Ｂを参照）、そしてデータフレームに含まれる複数のマーカから選択される少なくとも所定最小数のマーカを含む。これらのマーカは、データフレームによって表わされるボリュームの中のこれらのマーカの位置によって特定される。マーカグループは固有の形状も有し、固有の形状は他のデータフレームに含まれるマーカ群にラベル付けするために使用される。グループのマーカ群に判断ボックス２３０でラベル付けする。ラベル付けでは、固有の識別情報をグループの各マーカに関連付けて、グループ内での区別を容易にする。判断ボックス２４０では、ビートの他のデータフレーム群に含まれるマーカグループ群を、初期データフレームに含まれる基準グループと一致するように設定する（図４Ａ及び４Ｂも参照）。他のデータフレーム群の各データフレーム中の該当するグループに含まれるマーカ群に、基準グループのマーカ群に関連付けられる固有ラベル群と一致するようにラベル付けする。基準グループの各マーカの軌跡はこのようにして、データフレームシーケンスに基づいて作成され、この場合、各マーカは、当該マーカに固有のラベルによって特定される。
【００２１】
図３Ａ及び３Ｂは、基準マーカグループを、図２に示すフローチャートの判断ボックス２２０に従って行なわれるように設定する例示としての方法のフローチャートである。図３Ａでは、判断ボックス３００において、注目マーカ群を初期データフレーム内に特定する。例えば、図１によれば、アクター１６０の上腕に配置される３つのマーカ１４０Ａ〜Ｃを初期データフレーム内で選択して一つのマーカ基準グループを定義することにより、ビートのデータフレーム群全体に対するトラッキングを行なうことができる。これらの注目マーカは種々の方法で選択される。例えば、ソフトウェアツールによってユーザは、基準グループをコンピュータ画面に表示されるカーソルマーカを使用して選択を行なうことにより設定することができる。判断ボックス３１０では、マーカ基準グループに固有の座標系を設定する。局所座標系を使用して、次のフレームデータのマーカ群に対するラベル付けを、分析を行なう際のボリューム中のマーカ群の相対的な位置関係が、対象物体（上腕）の並進運動及び回転運動が変化した場合でも変化することがないようにすることにより容易にする。このような座標系は多くの方法で、この技術分野の当業者によって作成することができることを理解されたい。
【００２２】
図３Ｂは、基準マーカグループを、図２に示す方法の判断ボックス２２０に従って行なわれるように設定する別の方法のフローチャートである。判断ボックス３２０では、所定の基準グループを受信する。一つの例では、図１によれば、特定のアクター１６０の上腕に配置されるマーカ１４０Ａ〜Ｃを含む基準グループを設定し、そして保存する。保存した基準グループを呼び出し、そして当該特定のアクター１６０が後の時点で演技している間に生成される上腕マーカデータに適用することができる。基準グループデータのデータベースは、モーションキャプチャシーンにおけるいずれのアクターまたはオブジェクトに関しても維持し、そしてアクセスすることができるので、マーカトラッキングを簡易化することができ、そして一貫性のあるマーカトラッキングを行なうことができる。判断ボックス３３０では、マーカ基準グループに固有の座標系を、判断ボックス３１０に関連して上に議論したように設定する。
【００２３】
図４Ａ及び４Ｂは、モーションキャプチャフレームシーケンス中のマーカグループ群に、図２に示すフローチャートの判断ボックス２４０に従って行なわれるようにラベル付けする例示としての方法のフローチャートである。次のデータフレームを判断ボックス４００で受信する。次のデータフレームは、ラベル付けされていないマーカ群を含み、そしてシーケンス中で後に続くことができる、またはシーケンス中で先行することができる。次のデータフレームは、シーケンス中で隣接することもできる、またはシーケンス中で現フレームから離された一つ以上のフレームとすることができる。一旦、次フレームが受信されると、当該フレームは「現フレーム」と表記される。
【００２４】
判断ボックス４１０では、マーカ基準グループに含まれるマーカ群に対応する現フレーム中のラベル付けされていないマーカ群にラベル付けする（図５も参照されたい）。検査を判断ボックス４２０で行なって、グループトラッキングにより処理すべき更に多くのデータフレームがビートの中に残っているかどうかを判断する。現フレームが、ビート中の処理すべき最後のフレームではない場合、判断ボックス４００を再度実行し、そして次のデータフレームを受信する。
【００２５】
図４Ｂは、モーションキャプチャフレームシーケンス中のマーカグループ群に、図２に示すフローチャートの判断ボックス２４０に従って行なわれるようにラベル付けする別の方法のフローチャートである。幾つかの数のデータフレームを予め分析して、グループ内の幾つかのマーカが一つのフレームに、または別のフレームに含まれていないかどうかを判断すると有用である場合が多い。例えば、一つのマーカに一つのデータフレームにおいてラベル付けすることができるが、次に当該マーカが次フレームにおいてのみ「消えて」、当該次フレームの後の後続フレームに「再び現われる」。或るデータフレーム中の該当するマーカに対するラベル付けを行なわないように判断して、より理想的に適した該当するマーカが後続データフレームに含まれるときに当該マーカが或るデータフレームにおいて欠落している状態になるようにすることができる。更に、範囲外の或るマーカ、または不適合の或るマーカに、グループの一部として不正にラベル付けして欠落マーカを埋め合わせようとするような試みは行なわれない。
【００２６】
複数の次のデータフレームを判断ボックス４３０で受信する。複数の次のデータフレームは、ラベル付けされていないマーカ群を含み、そしてシーケンス中で現フレームの後に続く、またはシーケンス中で現フレームに先行するデータフレーム群とすることができる。次に、複数の受信データフレームの内の一つのデータフレームが選択され、そして判断ボックス４４０で現フレームになる。
【００２７】
判断ボックス４１０では、マーカ基準グループに含まれるマーカ群に対応する現フレーム中のラベル付けされていないマーカ群にラベル付けする（図５も参照されたい）。検査を判断ボックス４５０で行なって、判断ボックス４３０で受信した複数のデータフレームの中に処理すべきデータフレームが更に残っているかどうかについて判断する。データフレームが更に残っていて処理する必要がある場合、判断ボックス４４０で一つのデータフレームを選択して現フレームとする。データフレームが更に残ってはいない場合、別の検査を判断ボックス４２０で行なって、データフレームがビート中に更に残っていて、グループトラッキングによって処理すべきかどうかについて判断する。現フレームが、ビート中の処理すべき最後のフレームではない場合、判断ボックス４３０を再度実行し、そして別のセットの複数の次のデータフレームを受信する。
【００２８】
図５は、或るモーションキャプチャフレーム中のマーカグループ群に、図４に示すフローチャートの判断ボックス４１０に従って行なわれるようにラベル付けする例示としての方法のフローチャートである。現データフレーム中のラベル付けされていないマーカ群のグループを判断ボックス５００で設定する（図６も参照されたい）。
【００２９】
一の実施形態では、形状分析を用いて不正確なマーカラベル付けを無くす、またはほぼ最小限に抑える。従って、形状分析を判断ボックス５１０で行なう（図７も参照されたい）。基準グループの形状からのラベル付けされていないマーカ群（グループの）の形状のずれの指標を判断ボックス５１０で生成し、そして判断ボックス５２０で一つ以上の許容値と比較する形で検査する。ずれ指標が許容値（群）に収まる場合、グループを構成するラベル付けされていないマーカ群に判断ボックス５３０でラベル付けする。ずれ指標が許容値（群）に収まらない場合、次のデータフレームを判断ボックス５６０で受信する。一の実施形態では、図４Ａに示す方法に従って、次のデータフレームを判断ボックス４００と同じようにして判断ボックス５６０で受信する。別の実施形態では、図４Ｂに示す方法に従って、次のデータフレームを、データフレームを複数の次の受信データフレームの中から判断ボックス４４０で選択する方法と同じようにして判断ボックス５６０で受信する。いずれの実施形態の場合においても、受信データフレームは現フレームとなり、この場合、マーカグループを判断ボックス５００で設定する。
【００３０】
グループを構成するラベル付けされていないマーカ群に判断ボックス５３０でラベル付けした後、検査を判断ボックス５４０で行なって、グループが十分な数のラベル付けされたマーカ、及びラベル付けされていないマーカを含んでいるかどうかを判断する。一つの例では、マーカ（ラベル付けされたマーカ、及びラベル付けされていないマーカ）の最小数を３として、局所座標系を適切に定義する。ラベル付けされたマーカ、及びラベル付けされていないマーカの数が最小数を下回る場合、グループを次フレームにおいて再設定する試みを行なう。従って、判断ボックス５５０を実行してマーカグループを再設定する（図８も参照されたい）。
【００３１】
図６は、モーションキャプチャマーカグループを、図５に示すフローチャートの判断ボックス５００に従って行なわれるように設定する例示としての方法のフローチャートである。判断ボックス６００では、或るボリューム領域を決定し、このボリューム領域内には、基準マーカグループのラベル付けされたマーカ群が配置される。一の実施形態では、この領域は、基準グループが判断ボックス２２０（図３Ａ及び３Ｂを参照）で最初に設定されるときに事前に決定される。領域については、基準グループ情報の中で記述されることになる。領域は、ラベル付けされたマーカ群の全てを取り込み、そして残りのマーカ群を除外する操作を容易にするいずれかの形状を有することができる。普通、球のような容易に描くことができる形状が使用される。領域内に配置される、現フレーム中のラベル付けされていないマーカ群は、他の全てのラベル付けされていないマーカ群から分離される。領域の内部に配置されるマーカ群は判断ボックス６１０で位置が特定され、そしてグループの一部分として保持される。一の実施形態では、局所座標系は現フレーム中で、図３Ａ及び３Ｂの判断ボックス３１０及び３３０のそれぞれと同様に判断ボックス６２０で設定される。
【００３２】
図７は、モーションキャプチャマーカグループを、図５に示すフローチャートの判断ボックス５１０に従って行なわれるように形状分析する例示としての方法のフローチャートである。現フレーム中のラベル付けされていないマーカ群を基準グループ内の該当するマーカ群に判断ボックス７００で関連付ける。マーカ群の位置によって、グループの「形状」を局所座標系の中で定義する。従って、対象物体の並進運動的に、及び回転運動的に不変量の比較が、基準グループにおけるラベル付けされていないマーカ群の位置と、ラベル付けされたマーカ群の位置との間で行なうことができる。ラベル付けされたマーカ群に最も近接して配置されるラベル付けされていないマーカ群は、現フレーム内のグループ構成マーカ候補群として選択される。
【００３３】
ラベル付けされた各マーカが示し、かつデータフレームシーケンス全体における当該マーカの軌跡から抽出される運動特性によって、ラベル付けされていないマーカ群をラベル付けされたマーカ群に関連付け易くすることができる。例えば、処理済みデータフレームシーケンス全体におけるマーカの運動を特徴付ける速度情報及び慣性情報を現フレームに伝搬させ、該当するマーカが配置される可能性のある場所を予測することができる。
【００３４】
ラベル付けされていないマーカ群をラベル付けされたマーカ群に関連付ける操作は、現フレーム中の注目グループに対する、関連付けられていない他のマーカグループ群の相対位置を利用する「補助グループトラッキング（ａｓｓｉｓｔｅｄ  ｇｒｏｕｐ  ｔｒａｃｋｉｎｇ）」によって更に容易になる。
【００３５】
一の実施形態では、処理は、ラベル付けされていないマーカ群及びラベル付けされたマーカ群の関連付けによって、現フレーム中の２つ以上のラベル付けされていないマーカを、基準グループ内の一つ以上のラベル付けされたマーカに一致させる複数の解が得られる場合に中止することができる。従って、ユーザが介入し、そして例えば現フレーム中の最良のマーカを手動で選択してラベル付けを行なうことができる。
【００３６】
拡張分析を現フレーム内のグループ（現グループ）に対して判断ボックス７１０で行なう。一の実施形態では、簡易な拡張分析によってグループ拡張を所定のグループ拡張値と、或る＋／−許容範囲内で比較する。すなわち、形状を現グループ内で定義するマーカ群の位置は、基準グループの形状によって定義される形状から許容範囲内でずれることが許容される。
【００３７】
別の実施形態では、学習型拡張分析（ｌｅａｒｎｅｄ  ｓｔｒｅｔｃｈ  ａｎａｌｙｓｉｓ）を用いる。既にラベル付けされているフレーム群中の基準グループの形状情報を使用してグループ拡張値（例えば、或る＋／−許容範囲の）を定義する。この情報を提供するフレーム群は、現ビートの一部分とすることができる、または外部ストレージソースから読み込むことができる。これらのフレームは現ビートまたは別のビートにおいて既にラベル付けされていて、この場合、マーカ群はほぼ同じ場所に配置される。ユーザは拡張距離値を、グループが定義される或るフレームシーケンスに関して保存する。次に、拡張距離をグループ追跡格納部に、これらのマーカの所定の拡張値として保存する。幾つかのこのような所定の拡張値はこのようにして、ユーザが定義するいずれかの所定のマーカグループに関して保存し、そして取り出すことができる。
【００３８】
別の実施形態では、顔面表情記号化システム（ｆａｃｉａｌ  ａｃｔｉｏｎ  ｃｏｄｉｎｇ  ｓｙｓｔｅｍ：ＦＡＣＳ）を拡張する手法を用いる。動き、及び／又は筋肉運動を記録するためにアクターの顔に取り付けられたマーカ群及び／又は電極群を利用して撮影される顔の動きを使用して、顔モデルを作成し、そしてアニメートする（例えば、２００４年１１月８日出願の「顔の筋肉及び眼の動きをトラッキングしてコンピュータグラフィックスにアニメートするシステム及び方法」と題する米国特許出願第１０／９８４，４８８号を参照されたく、この特許出願をここで参照することにより、当該出願の内容が本明細書に組み込まれる）。マーカグループ群がどのようにして特定のアクターの顔の上を移動するかについてのＦＡＣＳ情報を使用して、拡張分析をグループに対して、ＦＡＣＳに加えられる制限に基づいて実行することができる。一の実施形態では、ユーザは、複数のＦＡＣＳグループ内のマーカ群を選択する必要がある。各アクター及び各マーカグループに関するルックアップテーブルによって、動的なグループ拡張及びグループ定義が可能になって、現グループのマーカ群に正しくラベル付けすることにより局所座標系を維持し、そして「入れ替わり（ｓｗａｐ）」（この場合、一つのグループの或るマーカが別のグループの或るマーカに非常に近接するようになり、そしてこれらのマーカのラベルが間違った形で相互に割り当てられる）を回避する。
【００３９】
別の実施形態では、拡張分析を使用して、ラベル付けを継続すべきか、または全て中止すべきかについての判断も行なう。例えば、グループ拡張が許容範囲を超えると判断されると、ラベル付けが停止する。
【００４０】
図８は、図５に示すフローチャートの判断ボックス５５０に従って行なわれるように、基準マーカグループを再設定する例示としての方法のフローチャートである。次のデータフレームを判断ボックス８００で受信する。受信した次のデータフレームが現フレームになる。判断ボックス８１０では、基準グループのマーカ群の運動を特徴付ける速度及び慣性のような運動情報を処理済みデータフレームシーケンスに乗せて送信する。一の実施形態では、運動情報を各現フレームで求めることにより、当該運動情報を計算するのではなく、直近に更新された送信情報に簡単にアクセスすることができる。次に、当該情報を使用して、現フレームのどの部分に、グループ内のラベル付けされていないマーカ群が配置されている可能性があるかについて予測する。このようにして位置が特定されたマーカ群に判断ボックス８２０でラベル付けする。
【００４１】
図９Ａは、コンピュータシステム９００及びユーザ９０２を表わす図を示している。ユーザ９０２はコンピュータシステム９００を使用することによりグループトラッキングを行なうことができる。コンピュータシステム９００はグループトラッキングシステム９１６（図１に示すグループトラッキングシステム１３２と同様に機能する）を収容し、そして実行し、グループトラッキングシステム９１６はモーションキャプチャフレームデータを処理する。
【００４２】
図９Ｂは、グループトラッキングシステム９１６のホストとなるコンピュータシステム９００を示す機能ブロック図である。コントローラ９１０はプログラマブルプロセッサであり、そしてコンピュータシステム９００及び当該システムのコンポーネントの動作を制御する。コントローラ９１０は命令をメモリ９２０または埋め込みコントローラメモリ（ｅｍｂｅｄｄｅｄ  ｃｏｎｔｒｏｌｌｅｒ  ｍｅｍｏｒｙ：図示せず）から読み込み、そしてこれらの命令を実行してシステムを制御する。コントローラ機能を実行するために、コントローラ９１０はグループトラッキングシステム９１６をソフトウェアシステムとして実現する。別の構成として、このサービスは、コントローラ９１０内の、またはコンピュータシステム９００内の別のコンポーネントとして実装することができる。
【００４３】
メモリ９２０はデータを一時的に保存して、コンピュータシステム９００の他のコンポーネントが使用することができるようにする。一の実施形態では、メモリ９２０はＲＡＭとして実装される。別の実施形態では、メモリ９２０は更に、フラッシュメモリ及び／又はＲＯＭのような長期メモリまたは永久メモリを含む。
【００４４】
ストレージ９３０は、コンピュータシステム９００の他のコンポーネントが使用することができるようにデータを一時的に、または長期間に渡って保存する、例えばグループトラッキングシステム９１６が使用するデータを保存する。一の実施形態では、ストレージ９３０はハードディスクドライブである。
【００４５】
メディア装置９４０は取り外し可能な媒体を受け入れ、そして挿入媒体に対するデータの読み出し、及び／又は書き込みを行なう。一の実施形態では、メディア装置９４０は光ディスクドライブである。
【００４６】
ユーザインターフェース９５０は、ユーザ入力をコンピュータシステム９００のユーザから受け入れ、そして情報をユーザに対して提示するコンポーネントを含む。一の実施形態では、ユーザインターフェース９５０はキーボード、マウス、オーディオスピーカ、及びディスプレイを含む。コントローラ９１０はユーザからの入力を使用してコンピュータシステム９００の動作を調整する。
【００４７】
Ｉ／Ｏインターフェース９６０は、外部ストレージまたは補助装置（例えば、プリンタまたはＰＤＡ）のような該当するＩ／Ｏ装置との接続を行なう一つ以上のＩ／Ｏポートを含む。一の実施形態では、Ｉ／Ｏインターフェース９６０のポートは：ＵＳＢポート、ＰＣＭＣＩＡポート、シリアルポート、及び／又はパラレルポートのようなポートを含む。別の実施形態では、Ｉ／Ｏインターフェース９６０は、外部デバイスと無線通信する無線インターフェースを含む。
【００４８】
ネットワークインターフェース９７０は、イーサネット（登録商標）接続をサポートするＲＪ−４５または「Ｗｉ−Ｆｉ」インターフェース（これに制限されないが、８０２．１１を含む）のような有線及び／又は無線ネットワーク接続を含む。
【００４９】
コンピュータシステム９００は、コンピュータシステムでは普通の更に別のハードウェア及びソフトウェア（例えば、電源システム、冷却システム、オペレーティングシステム）を含むが、これらのコンポーネントは図を簡単にするために、図９Ｂには詳細には示されていない。他の実施形態では、コンピュータシステムの異なる構成を使用することができる（例えば、異なるバスまたはストレージ構成、或いはマルチプロセッサ構成）。
【００５０】
図１０は、図９に示す例示としてのグループトラッキングシステム９１６を示す機能ブロック図である。グループトラッキングシステム９１６は、基準グループモジュール１０００及びグループ軌跡ラベル付けモジュール１０１０を含む。基準グループモジュール１０００は、ビートの初期フレームに含まれ、かつラベル付けされていないマーカ群を含むフレームデータを受信する。初期フレームはビート中のいずれかのデータフレームとすることができ、データフレームは、第１データフレーム、最終データフレーム、及び第１データフレームと最終データフレームとの間のいずれかのフレームを含む。フレームデータに基づいて、基準グループモジュール１０００は基準グループ情報を生成する。一の実施形態では、基準グループモジュール１０００は図２に示す判断ボックス２１０，２２０，及び２３０で処理を実行する。
【００５１】
グループ軌跡ラベル付けモジュール１０１０は基準グループ情報及びフレームデータを受信し、そしてラベル付けされたマーカグループ軌跡データ（図１１も参照されたい）を生成する。ラベル付けされたマーカグループ軌跡データは、ビートの少なくとも一部分の連続データフレームに渡ってトラッキングされる一つ以上のグループのラベル付けされたマーカ群の軌跡を含む。一つの例では、ラベル付けされたマーカ群のグループの軌跡は、アクター１６０がモーションキャプチャ空間１１０で行なう演技の間のマーカ群（例えば、図１に示す１４０Ａ〜Ｃ）の動きを表わす。マーカ１４０Ａ〜Ｃの軌跡は、アクター１６０の上腕の動きを表わし、そしてこれらの軌跡を当該動きに合わせて使用し、アニメーション中の仮想キャラクタの上腕の動きに指示を出すことができる。
【００５２】
図１１は、図１０に示す例示としてのグループ軌跡ラベル付けモジュール１０１０を示す機能ブロック図である。グループ軌跡ラベル付けモジュール１０１０は、グループ設定モジュール１１００、形状分析モジュール１１１０、グループラベル付けモジュール１１２０、拡張分析モジュール１１３０、及び軌跡モジュール１１４０を含む。
【００５３】
グループ設定モジュール１１００は基準グループ情報（例えば、基準グループモジュール１０００からの）及びフレームデータを受信し、そしてフレームデータの中のラベル付けされていないどのマーカがグループに含まれているかに関する情報を生成する。グループ設定モジュール１１００は一の実施形態において普通、図６に示すマーカグループを設定する方法を実行する。
【００５４】
グループマーカ情報を形状分析モジュール１１１０に渡し、形状分析モジュール１１１０は、ラベル付けされていないマーカ群にラベル付けすべきかどうかに関する情報を、ラベル付けされていないマーカ群の形状及びグループ拡張性に基づいて生成する。この情報をグループラベル付けモジュール１１２０に渡す。形状分析モジュール１１１０は普通、図７に記述される方法を実行する。従って、形状分析モジュール１１１０は形状及びマーカ情報を拡張分析モジュール１１３０に渡す。今度は、拡張分析モジュール１１３０が、ラベル付けされていないマーカ群の拡張性に関する情報を形状分析モジュール１１１０に返送する。
【００５５】
グループラベル付けモジュール１１２０は、いずれのマーカ群にラベル付けすべきかについての情報を形状分析モジュール１１１０から受信し、そしてこの情報に従って、マーカ群にラベル付けする（または、ラベル付けしない）。グループラベル付けモジュール１１２０は普通、図５の判断ボックス５３０で処理を実行する。（ラベル付けされた、そしてラベル付けされていない）マーカ群及びグループ群に関する情報を軌跡モジュール１１４０に渡し、軌跡モジュール１１４０は、ビートの連続データフレームに渡ってトラッキングされる一つ以上のグループのラベル付けされたマーカ群の軌跡を含むラベル付けされたマーカグループ軌跡データを生成する。
【００５６】
本発明の一の実施形態は、或るグループ軌跡のシーケンス群を無視し、そして無視する代わりに、ラベル付けが行なわれようとしていて、かつ拡張値を上回っている軌跡「終了」フレームで停止する機能を含む。従って、ユーザは、既にラベル付けされているマーカ群を有するデータフレーム群を処理し直す必要を回避しながら、問題のあるデータフレームに辿り着いて介入することができる。この場合、例えばユーザに対して表示される現フレームは、グループトラッキング器がラベル付けを中止した位置のフレームである。
【００５７】
別の実施形態は、軌跡全体にラベル付けする機能、または別の構成として、軌跡データの各データフレームを分析して新規データの各フレームがグループトラッキング要件を満たすことを確認する機能のいずれかを含む。
【００５８】
別の実施形態では、マーカの入れ替わり状態（ｍａｒｋｅｒ  ｓｗａｐ  ｃｏｎｄｉｔｉｏｎ）を検出し易くするために、拡張値をグループ内で上回るグループ軌跡を含むラベル付けされたフレーム群のシーケンスの中のいずれのフレームでも停止する機能を提供する。非ラベル付けモード（ｎｏｎ−ｌａｂｅｌｉｎｇ  ｍｏｄｅ）を更に設定し、このモードでは、入れ替わり状態を検出し、そしてグループの既にラベル付けされているフレーム群の中で修復するが、グループの外のラベル付けされていない、または既知のマーカ群にラベル付けする試みは行なわれない。従って、ユーザは入れ替わり状態の修復のみに集中することができ、更に別の処理がマーカラベル付けに必要になることがない。
【００５９】
更に別の変形例及び実施形態を用いることもできる。更に、モジュール、ブロック、またはステップの内部での機能群のグループ化が、記述を分り易くするために行なわれていることを理解されたい。特定の機能群またはステップ群は、一つのモジュールから別のモジュールに本発明から逸脱しない限り移動させることができる。
【００６０】
開示した実施形態に関する上の記述は、この技術分野のどのような当業者でも本発明を作製する、または使用することができるように行なわれる。これらの実施形態に対する種々の変更は、この技術分野の当業者であれば容易に想到し得るものであり、そして本明細書に記載される一般的原理は他の実施形態に、本発明の技術思想または技術範囲から逸脱しない限り適用することができる。従って、本明細書において提供される記述及び図は、本発明の現時点で好適な実施形態を表わしているので、本発明が広義に意図する主題を表わすことを理解されたい。更に、本発明の技術範囲は、この技術分野の当業者が想到し得る他の実施形態を完全に包含するものであり、従って本発明の技術範囲は、添付の請求項によってのみ規定されることを理解されたい。
【図面の簡単な説明】
【００６１】
本発明の構造及び動作の両方に関する本発明の詳細は、添付の図を分析することにより部分的に明らかになり、これらの図では、同様の参照番号は同様の構成要素を指す。
【図１】モーションキャプチャマーカグループを含む例示としてのモーションキャプチャシーンを示している。
【図２】グループごとのトラッキングを行なう例示としての方法のフローチャートである。
【図３】図Ａは基準マーカグループを設定する例示としての方法のフローチャートであり、図Ｂは基準マーカグループを設定する別の方法のフローチャートである。
【図４Ａ】モーションキャプチャフレームシーケンス中のマーカグループ群にラベル付けする例示としての方法のフローチャートである。
【図４Ｂ】モーションキャプチャフレームシーケンス中のマーカグループ群にラベル付けする別の方法のフローチャートである。
【図５】一つのモーションキャプチャフレーム中のマーカグループ群にラベル付けする例示としての方法のフローチャートである。
【図６】モーションキャプチャマーカグループを設定する例示としての方法のフローチャートである。
【図７】モーションキャプチャマーカグループの形状分析を行なう例示としての方法のフローチャートである。
【図８】モーションキャプチャマーカグループを再設定する例示としての方法のフローチャートである。
【図９】図Ａは、コンピュータシステム及びユーザを示し、図Ｂは、コンピュータシステムをホストとする例示としてのグループトラッキングシステムを示す機能ブロック図である。
【図１０】例示としてのグループトラッキングシステムを示す機能ブロック図である。
【図１１】例示としてのグループ軌跡ラベル付けモジュールを示す機能ブロック図である。
【図１】
2009521758.tif 000003
【図２】
2009521758.tif 000004
【図３】
2009521758.tif 000005
【図４Ａ】
2009521758.tif 000006
【図４Ｂ】
2009521758.tif 000007
【図５】
2009521758.tif 000008
【図６】
2009521758.tif 000009
【図７】
2009521758.tif 000010
【図８】
2009521758.tif 000011
【図９】
2009521758.tif 000012
【図１０】
2009521758.tif 000013
【図１１】
2009521758.tif 000014
【国際調査報告】
2009521758.tif 000015