(57)【要約】方法は：顔筋肉活動を顔マーカデータに基づいて生成するステップと；コンピュータグラフィックス顔形態モデルを、顔筋肉活動を使用してアニメートするステップと；  コンピュータグラフィックス顔形態モデルに重ね合わせる皮膚レイヤを生成するステップと；そして皮膚レイヤを、顔マーカデータを使用してアニメートするステップと、を含む。
2009545084.tif 000002
【特許請求の範囲】
【請求項１】
顔筋肉活動を顔マーカデータに基づいて生成するステップと、
コンピュータグラフィックス顔形態モデルを、顔筋肉活動を使用してアニメートするステップと、
コンピュータグラフィックス顔形態モデルに重ね合わせる皮膚レイヤを生成するステップと、
皮膚レイヤを、顔マーカデータを使用してアニメートするステップと、
を含む方法。
【請求項２】
顔筋肉活動を生成する前記ステップは、
所定の顔筋肉活動の重み付け合成解を求めるステップを含む、請求項１記載の方法。
【請求項３】
所定の顔筋肉活動はＦＡＣＳマトリクスに保存される、請求項２記載の方法。
【請求項４】
顔マーカデータは、
複数のフレームを含み、各フレームは複数のデータポイントを含み、そして各データポイントは一つの空間位置を含み、
各フレームの各データポイントは、複数のフレームの内の少なくとも一つの他のフレームの一つのデータポイントに時間軸上で関連付けられる、請求項１記載の方法。
【請求項５】
皮膚レイヤをアニメートする前記ステップは：
特定フレームの一つのデータポイントを、皮膚レイヤの該当する領域に関連付けるステップと、
皮膚レイヤの該当する領域を移動させるステップと、
を含む、請求項４記載の方法。
【請求項６】
前記移動は、
特定フレームのデータポイントの空間位置と、少なくとも一つの他のフレームの時間軸上で関連付けられるデータポイントの空間位置との間の変位に対応する、
請求項５記載の方法。
【請求項７】
移動させる前記ステップは、
変位を、皮膚レイヤの該当する領域に関連付けられる所定の位置に加えるステップを含む、
請求項６記載の方法。
【請求項８】
変位を修正する、請求項６記載の方法。
【請求項９】
前記移動は、
皮膚レイヤの該当する領域の所定の弾性に対応する、
請求項５記載の方法。
【請求項１０】
更に、
中間フレームの不良データポイントを修正するステップを含む、
請求項４記載の方法。
【請求項１１】
不良データポイントは、
欠落データポイント、誤ラベル付けデータポイント、及びノイズの大きなデータポイントを含む、
請求項１０記載の方法。
【請求項１２】
不良データポイントは、
特定フレームのデータポイントに時間軸上で関連付けられ、かつ少なくとも一つの他のフレームの時間軸上で関連付けられるデータポイントである、
請求項１０記載の方法。
【請求項１３】
中間フレームは、
時間軸上に位置し、かつ特定フレームと少なくとも一つの他のフレームとの間に位置する、
請求項１２記載の方法。
【請求項１４】
不良データポイントを修正する前記ステップは、
中間フレームの置き換えデータポイントの空間位置を推定するステップを含む、
請求項１２記載の方法。
【請求項１５】
置き換えられるデータポイントの空間位置を推定する前記ステップは、
複数の所定フレームの間を補間するステップを含む、
請求項１４記載の方法。
【請求項１６】
複数の所定フレームはＦＡＣＳマトリクスに保存される、請求項１５記載の方法。
【請求項１７】
顔マーカデータを受信し、そして顔筋肉グループ活動を生成する顔筋肉活動モジュールと、
顔筋肉グループ活動を受信し、そして活動顔形態モデルを生成するアニメーションモジュールと、
活動顔形態モデル及び顔マーカデータを受信し、そしてアニメートされ、かつ皮膚レイヤ化された顔形態モデルを生成する皮膚レイヤモジュールと、
を備える、システム。
【請求項１８】
前記顔筋肉活動モジュールは、
所定の顔筋肉活動の重み付け合成解を求めるユニットを含む、
請求項１７記載のシステム。
【請求項１９】
所定の顔筋肉活動はＦＡＣＳマトリクスに保存される、請求項１８記載のシステム。
【請求項２０】
顔マーカデータは、
複数のフレームを含み、各フレームは複数のデータポイントを含み、そして各データポイントは一つの空間位置を含み、
各フレームの各データポイントは、複数のフレームの内の少なくとも一つの他のフレームの一つのデータポイントに時間軸上で関連付けられる、請求項１７記載のシステム。
【請求項２１】
前記皮膚レイヤモジュールは：
特定フレームの一つのデータポイントを、皮膚レイヤの該当する領域に関連付けるデータポイント関連付けモジュールと、
皮膚レイヤの該当する領域を移動させる皮膚移動モジュールと、
を含む、請求項２０記載のシステム。
【請求項２２】
皮膚レイヤモジュールは、
特定フレームのデータポイントの空間位置と、少なくとも一つの他のフレームの時間軸上で関連付けられるデータポイントの空間位置との間の変位を生成する変位モジュールを含む、
請求項２１記載のシステム。
【請求項２３】
前記皮膚移動モジュールは、
生成される変位を、皮膚レイヤの該当する領域に関連付けられる所定の位置に加えるユニットを含む、
請求項２２記載のシステム。
【請求項２４】
皮膚レイヤモジュールは更に、
変位を修正する変位修正モジュールを含む、請求項２２記載のシステム。
【請求項２５】
前記皮膚レイヤモジュールは、
皮膚レイヤの該当する領域の所定の弾性を計算し、そして付与することにより、皮膚が予測可能に非常に正確に動くようにする皮膚弾性付与モジュールを含む、
請求項２１記載のシステム。
【請求項２６】
顔筋肉活動を顔マーカデータに基づいて生成する手段と、
コンピュータグラフィックス顔形態モデルを、顔筋肉活動を使用してアニメートする手段と、
コンピュータグラフィックス顔形態モデルに重ね合わせる皮膚レイヤを生成する手段と、
皮膚レイヤを、顔マーカデータを使用してアニメートする手段と、
を備える装置。
【請求項２７】
コンピュータ読み取り可能な媒体に格納され、かつ実行可能な命令を含むコンピュータプログラムであって、実行可能な命令によってコンピュータは：
顔筋肉活動を顔マーカデータに基づいて生成し、
コンピュータグラフィックス顔形態モデルを、顔筋肉活動を使用してアニメートし、
コンピュータグラフィックス顔形態モデルに重ね合わせる皮膚レイヤを生成し、
皮膚レイヤを、顔マーカデータを使用してアニメートする、
コンピュータプログラム。
【請求項２８】
コンピュータに顔筋肉活動を生成させる実行可能な命令は、コンピュータに、
所定の顔筋肉活動の重み付け合成解を求めさせる実行可能な命令を含む、
請求項２７記載のコンピュータプログラム。
【請求項２９】
所定の顔筋肉活動はＦＡＣＳマトリクスに保存される、請求項２８記載のコンピュータプログラム。
【請求項３０】
顔マーカデータは、
複数のフレームを含み、各フレームは複数のデータポイントを含み、そして各データポイントは一つの空間位置を含み、
各フレームの各データポイントは、複数のフレームの内の少なくとも一つの他のフレームの一つのデータポイントに時間軸上で関連付けられる、
請求項２７記載のコンピュータプログラム。
【請求項３１】
コンピュータに皮膚レイヤをアニメートさせる実行可能な命令は、コンピュータに：
特定フレームの一つのデータポイントを、皮膚レイヤの該当する領域に関連付けさせ、
皮膚レイヤの該当する領域を移動させる実行可能な命令を含む、
請求項３０記載のコンピュータプログラム。
【請求項３２】
コンピュータに皮膚レイヤの該当する領域を移動させる実行可能な命令は、
特定フレームのデータポイントの空間位置と、少なくとも一つの他のフレームの時間軸上で関連付けられるデータポイントの空間位置との間に変位を生じさせることに対応する、
請求項３１記載のコンピュータプログラム。
【請求項３３】
コンピュータに皮膚レイヤの該当する領域を移動させる実行可能な命令は、コンピュータに、
変位を、皮膚レイヤの該当する領域に関連付けられる所定の位置に加えさせる実行可能な命令を含む、
請求項３２記載のコンピュータプログラム。
【請求項３４】
変位を修正する、請求項３２記載のコンピュータプログラム。
【請求項３５】
コンピュータに皮膚レイヤの該当する領域を移動させる実行可能な命令は、
皮膚レイヤの該当する領域の所定の弾性を生じさせることに対応する、
請求項３１記載のコンピュータプログラム。
【請求項３６】
更に、コンピュータに、
中間フレームの不良データポイントを修正させる実行可能な命令を含む、
請求項３０記載のコンピュータプログラム。
【請求項３７】
不良データポイントは、
欠落データポイント、誤ラベル付けデータポイント、及びノイズの大きなデータポイントを含む、
請求項３６記載のコンピュータプログラム。
【請求項３８】
不良データポイントは、
特定フレームのデータポイントに時間軸上で関連付けられ、かつ少なくとも一つの他のフレームの時間軸上で関連付けられるデータポイントである、
請求項３６記載のコンピュータプログラム。
【請求項３９】
中間フレームは、
時間軸上に位置し、かつ特定フレームと少なくとも一つの他のフレームとの間に位置する、
請求項３８記載のコンピュータプログラム。
【請求項４０】
コンピュータに不良データポイントを修正させる実行可能な命令は、コンピュータに、
中間フレームの置き換えられるデータポイントの空間位置を推定させる実行可能な命令を含む、
請求項３８記載のコンピュータプログラム。
【請求項４１】
コンピュータに、置き換えられるデータポイントの空間位置を推定させる実行可能な命令は、コンピュータに、
複数の所定フレームの間を補間させる実行可能な命令を含む、
請求項４０記載のコンピュータプログラム。
【請求項４２】
複数の所定フレームはＦＡＣＳマトリクスに保存される、請求項４１記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、第３５編米国法典１１９条に基づいて、２００６年７月２８日出願の同時係属中の「モーションキャプチャにおけるＦＡＣＳ（顔の表情符号化システム）解決法」と題する米国仮特許出願第６０／８３４，２９８号に関する優先権の利益を主張するものであり、当該仮特許出願の開示内容は本明細書において参照することにより本明細書に組み込まれる。
【０００２】
本出願は更に、本出願と同じ譲受人に譲渡され、かつ２００３年５月２３日出願の「デジタル顔形態モデルをアニメートするシステム及び方法」と題する米国特許第７，０６８，２７７号；２００３年５月１日出願の「顔及びボディの動きを撮影するシステム及び方法」と題する米国特許出願第１０／４２７，１１４号；２００７年４月２４日出願の「演技から作り出される顔アニメーション」と題する米国特許出願第１１／７３９，４４８号；及び２００６年７月２８日出願の「モーションキャプチャにおけるＦＡＣＳ（顔の表情符号化システム）クリーニング」と題する米国仮特許出願第６０／８３４，１３２号の開示内容を参照することにより組み込む。
【０００３】
本発明は概して、モーションキャプチャ（motion capture）に関するものであり、特にデジタル顔形態モデルに重ね合わせる皮膚レイヤをアニメートする方法及びシステムに関するものである。
【背景技術】
【０００４】
モーションキャプチャシステムを使用して実際のオブジェクトの動きを撮影し、そしてこの動きをアニメートする方法として、この動きをコンピュータにより表現されるオブジェクトにマッピングする。このようなシステムは多くの場合、動画及びビデオゲームの作成に使用されてオブジェクトまたは人のデジタル表示を行ない、このデジタル表示をソースデータとして使用して、コンピュータグラフィックス（ＣＧ）アニメーションを作成する。通常のシステムでは、アクターが、マーカを種々の位置に取り付けた（例えば、小さな光反射マーカをボディ（体）及び四肢に取り付けた）衣服を纏う。次に、正確な場所に配置されるデジタルカメラ群がアクターのボディの動きを撮影空間において異なるアングルから、マーカを照明しながら記録する。システムは後の時点で、画像を分析してアクターの衣服に取り付けられたマーカの位置（例えば、空間座標）及び向きを各フレームで求める。これらのマーカの位置をトラッキングすることにより、システムはこれらのマーカに関する時間軸を考慮した空間表示を行ない、そして動いているアクターのデジタル表示を構築する。次に、この動きをデジタルモデルに仮想空間において適用し、次にこのデジタルモデルで質感を表現し、そしてモデルをレンダリングして、アクター及び／又は演技の完全なＣＧ表示を構築することができる。この技法は、リアルなアニメーションを多くの人気のある映画に収めるために特殊効果会社によって使用されている。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
アクターの顔の表情を表わす動きを撮影するためには、ボディの動きを撮影する操作と同様のアプローチを必要とする。しかしながら、アクターが「衣服」を彼または彼女の顔に纏うことは現実的ではない。更に、ヒトの顔の表情は、通常のボディの動きよりもずっと動きが速い顔筋肉の動きを含む。顔の動きを撮影する場合、マーカ群はアクターの顔に直接取り付けるのではなく、普通、顔の動きを最適に定義するために配置される。これらのマーカは更に、動きの速い多くの種類の顔筋肉の動きを撮影するために十分な数だけ取り付けられる。しかしながら、非常に多くのマーカ、及びこれらのマーカの近傍部分によって、撮影後のフレーム毎のマーカトラッキングが困難になり、そして各個々のマーカに対する正確なトラッキングを確実に行なうために膨大な手作業処理が必要になる。
【０００６】
これらのデータをクリーニングしてトラッキングの難しさを大幅に軽減する。しかしながら、更に別の問題が、デジタル顔形態モデルをアニメートするために使用される撮影済みの顔マーカデータも、良好にデジタル顔形態モデルに空間的に一致することがない場合に生じることが多い。キャラクターの皮膚は多くの場合、結果として得られる顔アニメーションの中で不連続な動きになる。
【課題を解決するための手段】
【０００７】
本発明の実施形態は、デジタル顔形態モデルの皮膚レイヤを生成し、そしてアニメートする技術を用いるシステム、方法、装置、及びコンピュータプログラムを含む。
【０００８】
一の態様では、本方法は：顔筋肉活動を顔マーカデータに基づいて生成するステップと；コンピュータグラフィックス顔形態モデルを、顔筋肉活動を使用してアニメートするステップと；コンピュータグラフィックス顔形態モデルに重ね合わせる皮膚レイヤを生成するステップと；そして皮膚レイヤを、顔マーカデータを使用してアニメートするステップと、を含む。
【０００９】
別の態様では、本システムは：顔マーカデータを受信し、そして顔筋肉グループ活動を生成する顔筋肉活動モジュールと；顔筋肉グループ活動を受信し、そして活動顔形態モデルを生成するアニメーションモジュールと；そして活動顔形態モデル及び顔マーカデータを受信し、そしてアニメートされ、かつ皮膚レイヤ化された顔形態モデルを生成する皮膚レイヤモジュールと、を備える。
【００１０】
本発明の他の特徴及び利点は、この技術分野の当業者であれば、次の詳細な記述、及び添付の図面を吟味することにより一層容易に理解できるものと思われる。
【図面の簡単な説明】
【００１１】
本発明の構造及び動作の両方に関する本発明の詳細は、添付の図面を分析することにより部分的に調査することができ、これらの図面では、同様の参照番号は同様の構成要素を指す。
【図１】顔モーションキャプチャシステムの機能ブロック図である。
【図２】一の実施形態によるデジタル顔形態モデルをアニメートする方法を示すフローチャートである。
【図３】一の実施形態によるＦＡＣＳマトリクスを初期化する方法を示すフローチャートである。
【図４】一の実施形態による顔マーカデータをクリーニングする方法を示すフローチャートである。
【図５】一の実施形態による顔筋肉活動を顔マーカデータに基づいて生成する方法を示すフローチャートである。
【図６】本発明の一の実施形態によるデジタル顔形態モデルをアニメートするシステムの機能ブロック図である。
【図７】アニメートされた皮膚レイヤを生成する皮膚レイヤモジュールの機能ブロック図である。
【図８Ａ】ユーザ及びコンピュータシステムを表わす図を示している。
【図８Ｂ】ＦＡＣＳ解決システムのホストとなるコンピュータシステムを示す機能ブロック図である。
【発明を実施するための形態】
【００１２】
本明細書に開示される所定の実施形態は、デジタル顔形態モデルの皮膚レイヤを生成し、そしてアニメートするシステム及び方法を実現する。例えば、本明細書に開示される一の方法によって、顔筋肉活動を顔マーカデータに基づいて生成し；コンピュータグラフィックス顔形態モデルを顔筋肉活動を使用してアニメートし；コンピュータグラフィックス顔形態モデルに重ね合わせる皮膚レイヤを生成し；そして皮膚レイヤを顔マーカデータを使用してアニメートすることが可能になる。
【００１３】
皮膚レイヤをアニメートする操作では、顔マーカデータポイントを皮膚レイヤの該当する領域に関連付け、そして皮膚レイヤの該当する領域を移動させる。皮膚レイヤの当該領域の移動は：（１）顔マーカデータポイントの空間位置と別のフレームの時間軸上で関連付けられたデータポイントの空間位置との間の変位に対応し；そして移動させる操作では、（２）この変位を皮膚の当該領域の上の所定位置に加える。
【００１４】
この記述を一読した後、この技術分野の当業者であれば、どのようにして本発明を種々の別の実施形態及び別の用途において実施すればよいかが理解できるであろう。しかしながら、本発明の種々の実施形態が本明細書において記載されるが、これらの実施形態は例示としてのみ提示されるのであり、本発明を制限するために提示されるのではないことを理解されたい。従って、種々の別の実施形態についてのこの詳細な記述は、添付の請求項に示される本発明の範囲または広さを制限するものとして捉えられるべきではない。
【００１５】
顔の表情符号化システム（Facial Action Coding System:FACS）は、ヒトの顔の表情を体系的に分類する標準的な分類法を提供する。種々の顔の表情を表わす顔の動きデータは、図１に示すシステムのような顔モーションキャプチャシステムを使用して撮影され、そして次に、ＦＡＣＳに従って分類することができる。トラッキングエラーによって異常が、ラベル付けされたマーカデータの軌跡に生じるので、データが分類には適さなくなる。
【００１６】
ＦＡＣＳクリーニングシステムの実施形態は、種々のトラッキングエラーを除去し、そして撮影マーカデータの安定性を仮想空間において高めるシステム及び方法を含む。ＦＡＣＳ、ＦＡＣＳクリーニングシステム（２００６年７月２８日出願の「モーションキャプチャにおけるＦＡＣＳクリーニング」と題する米国仮特許出願第６０／８３４，１３２号に詳細に記載されている）、演技から作り出される或るタイプの顔アニメーション（２００７年４月２４日出願の「演技から作り出される顔アニメーション」と題する米国特許出願第１１／７３９，４４８号に詳細に記載されている）、及び顔マーカデータを利用して、アニメートされた皮膚を有するアニメートされたデジタル顔形態モデルが生成される。
【００１７】
本発明の一の実施形態では、クリーンデータを受信し、そしてＦＡＣＳマトリクスで処理する。すなわち、「クリーニングされた」データは、時間マーカギャップ、誤ラベル付けマーカ、及びノイズがほとんど無い。ＦＡＣＳマトリクスは、複数の顔ポーズを保存（maintain）するＦＡＣＳの一の形態である。ＦＡＣＳマトリクスの各顔ポーズは、特定のアクターが演じる大きく異なるタイプのポーズを表わす。次に、ＦＡＣＳマトリクスを顔マーカデータと一緒にここでも同じように使用して、どの筋肉グループが、顔マーカデータに撮影されている特定のポーズによって活動しているかについて判断する。筋肉グループ活動を使用して、ＣＧキャラクターのデジタル顔形態モデルを当該活動に従ってアニメートする。
【００１８】
モデル製作者は多くの場合、デジタル顔形態モデルの顔形状を作成して、各アクターが演じ、かつＦＡＣＳマトリクスに保存されるポーズに一致させる。顔形状は、ＦＡＣＳマトリクスを使用して生成される顔筋肉グループ活動によって変化する。これにより、デジタル顔形態モデルのアニメーションが得られる。
【００１９】
アニメーションによって、デジタル顔形態モデルの皮膚に、皮膚の境界のような不連続が生じることがあるが、これは、デジタル顔形態モデルで取らせる種々のポーズがオン／オフの態様で始まり、そして終わるからである。すなわち、デジタル顔形態モデルの皮膚は、ＦＡＣＳマトリクスと連動する顔マーカデータによって直接影響を受ける、ということがない。直接影響を受けるのではなく、顔マーカデータを使用することにより、モデル製作者が作成する種々の顔形状の変化を操作する。
【００２０】
皮膚に結果として生じる不連続を無くすために、演技から作り出される顔アニメーションに或る態様において類似する更に別のスキンアニメーション技法（「ダイレクトドライブ（direct drive）」方式と表記されることがある）を、デジタル顔形態モデルの内、顔筋肉グループを操作することにより既にアニメートされている最上層レイヤに適用する。デジタル顔形態モデルの顔面皮膚と顔マーカデータとの間の直接対応付け（direct correspondence）を行なう。顔マーカデータポイント群が動くと、これらのポイントには皮膚レイヤも直接覆い被さる。この皮膚レイヤは、デジタル顔形態モデルに個別レイヤとして重ね合わせ、そしてこの皮膚レイヤを使用して種々の効果を実現することができる。例えば、アクターの顔の皮膚の自然な揺れは、アニメートされる該当するキャラクターの顔の上では小さくすることができる、または別の方法として、ただ単に過剰に大きくすることにより、効果を誇張することができる。従って、筋肉グループをＦＡＣＳマトリクスを利用して活動させ、続いて皮膚レイヤの動きを顔マーカデータで操作することにより、アニメーションを従来の意味で（キャラクターはモデルから外れることがない）制御することができるだけでなく、皮膚を、この皮膚を撮影したときのアクターの顔に現われていた皮膚のように動的に動かすことができる。
【００２１】
図１は、顔モーションキャプチャシステム１００の機能ブロック図であり、顔モーションキャプチャシステム１００は、モーションキャプチャプロセッサ１１０と、モーションキャプチャカメラ１２０，１２２，１２４と、ユーザワークステーション１３０と、そして複数の顔マーカ１５０を取り付けたアクターの顔１４０と、を含む。モーションキャプチャプロセッサ１１０はワークステーション１３０に有線または無線によって接続することができる。モーションキャプチャプロセッサ１１０は通常、制御データパケットをワークステーション１３０から受信するように構成される。
【００２２】
図１に示す実施形態では、３台のモーションキャプチャカメラ１２０，１２２，１２４がモーションキャプチャプロセッサモジュール１１０に接続される。しかしながら、３台よりも多い、または少ないモーションキャプチャカメラを種々のユーザ関連要件及びアニメーション関連要件に従って使用することができる。モーションキャプチャカメラ１２０，１２２，１２４はアクターの顔８０に焦点を合わせ、顔の表面には、球形顔マーカ１５０が特定のターゲットポイントに配置されている。これらの顔マーカ１５０は、アクターの顔１４０の特定の位置に配置されているものとして示されるが、顔マーカ１５０は、特定の顔筋肉グループの撮影、またはアクターの顔１４０の他の定義領域の撮影を最適化するように配置される場合が多い。
【００２３】
モーションキャプチャカメラ１２０，１２２，１２４はモーションキャプチャプロセッサ１１０によって制御され、そしてこれらのカメラはフレーム毎に、マーカの２次元（「２Ｄ」）画像を撮影する。このようにして撮影される画像データは通常、ユーザワークステーション１３０にリアルタイムに保存し、そして／またはユーザワークステーション１３０で閲覧することができる。モーションキャプチャカメラ１２０，１２２，１２４の各カメラによって取得される２Ｄ画像データのフレーム群は、撮影空間におけるモーションキャプチャカメラ１２０，１２２，１２４の空間位置を三角測量することにより統合される。この統合プロセスは「再構成（reconstruction）」と呼ばれ、そしてボリューム顔マーカデータのフレーム群は出力で生成される。フレーム中の各顔マーカデータポイントは該当する一つの空間位置を含み、そしてボリューム顔マーカデータのフレーム群は一つの時間シーケンスを構成し、この時間シーケンスはほぼ、ボリュームの３次元（「３Ｄ」）サンプル群から成り、このボリュームの中で、アクターの顔の動きが演技中に撮影されている。
【００２４】
再構成ボリューム顔マーカデータのフレームシーケンスは「ビート（beat）」と表記され、ビートは普通、「テイク（take）」を表わし、このテイクの間に、アクターの演技が撮影される。モーションキャプチャプロセッサ１１０は、ビートのトラッキング機能を実行する。トラッキングを行なうことにより、ビートにおいて、各フレームの顔マーカ群を、シーケンスにおいて当該各フレームに先行する、そして当該各フレームの後に続く他のフレーム群の該当する顔マーカ群に正確に関連付ける。固有ラベルを各顔マーカデータポイントに割り当て、そしてビートの長さ全体に亘ってトラッキングすることにより、各顔マーカデータポイントに対応する軌跡のトレースが可能になる。一旦、時間軸上の関連付けが完了すると、結果として得られる顔マーカデータは各フレーム内に仮想空間の頂点座標系を含み、各頂点は一つのラベル付けされたマーカによって表わされる。頂点座標系は、アクターの顔１４０を表わすモデル化表面を含む。
【００２５】
特定フレーム内の特定の顔マーカ１５０を表わす顔マーカデータポイントを、次のフレーム内の特定マーカ１５０を表わす顔マーカデータポイントに時間軸上で関連付けようとする。特定の顔マーカ１５０を表わす顔マーカデータポイント群を時間軸上で正しく関連付けることにより、特定マーカ１５０の動きを表わすスムーズな関連性のある軌跡が生成される。しかしながら、トラッキングエラーが発生してしまう。
【００２６】
トラッキングエラーでは普通、一のフレームの顔マーカデータポイントを次のフレームの顔マーカデータポイントに不正に関連付けることにより通常、明らかな「急激な変化（jerk）」が顔マーカ１５０の分解軌跡の動きに生じる。エラーでは更に、顔マーカ１５０が継続的にフレームシーケンス全体で誤ラベル付けされると、反復痙攣として現われる。エラーの他の例として、精度の低い三角測量、オブジェクトの視認性の悪いビューの再構成、及び２つの軸では正しいが、第３の軸では不正になる計算「ゴースト」を挙げることができる。
【００２７】
図２は、一の実施形態によるデジタル顔形態モデルをアニメートする方法２００を示すフローチャートである。図示の実施形態では、ＦＡＣＳマトリクスをブロック２１０で初期化する。初期化では基本的に、ＦＡＣＳ活動単位をＦＡＣＳマトリクスの中で定義し、そしてアクターに関連付けられるポーズを校正し、そして初期化については、図３を参照しながら以下に詳細に説明する。
【００２８】
顔マーカデータをブロック２２０で受信する。顔マーカデータはボリュームデータのフレームシーケンスを含み、各フレームは、複数の顔マーカデータポイントを含み、そして各顔マーカデータポイントは一つの空間位置を含む。上に議論したように、トラッキングプロセスでは、各顔マーカデータポイントを、フレームシーケンスの少なくとも一つの他のフレームの顔マーカデータポイントに時間軸上で、かつ確実に関連付けている。通常、各顔マーカデータポイントをフレームシーケンスの複数の他のフレームの顔マーカデータポイントに時間軸上で関連付けて、軌跡を当該シーケンス内で定義されるボリュームを利用して形成する。
【００２９】
ブロック２３０では、顔マーカデータをクリーニングして時間軸上のギャップ、顔マーカデータポイントの誤ラベル付け、及びノイズに関するデータを除去する。時間軸上のギャップは、フレーム中の一つ以上の顔マーカデータポイントに対するラベル付けが失敗して、例えばシーケンス内の隣接するフレームの正しくラベル付けされたポイントの間に「ギャップ」が発生すると生じる。或る場合には、フレーム中の一つ以上のポイントが誤ラベル付けされることにより、これらのポイントが、隣接するフレームのポイントに不正に時間軸上で関連付けられる。このようにして、不連続が、フレームシーケンスの隣接する他のフレーム中の不正にラベル付けされたポイントの軌跡に生じる。ノイズは、小さなエラーが画像取得中及び／又は再構成中に生じて、例えば顔マーカデータポイントの分解空間位置が、当該ポイントの真の空間位置からわずかに変位することによって顔マーカデータに混入し得る。一の実施形態では、クリーニングは、図４のフローチャートに示される方法４００に従って行なわれる。
【００３０】
ブロック２４０では、顔筋肉活動が顔マーカデータに基づいて生成される。顔筋肉活動の生成では基本的に：顔マーカデータを近似する活動単位の重み付け合成を特徴付ける重みを決定し；そして重み付けされた活動を生成する。顔筋肉活動の生成について、図５を参照しながら以下に更に詳細に説明する。
【００３１】
コンピュータグラフィックス（ＣＧ）顔形態モデルをブロック２５０で、顔筋肉活動を使用してアニメートする。一の実施形態では、ＣＧ顔形態モデルは、アーティストまたはアニメータが「リギング」した（組み立てた）デジタル顔形態モデルである。デジタル顔形態モデルのリギングでは、種々の筋膜レイヤ（fascia layers：筋膜層）を設定し、これらの筋膜レイヤをブレンドすることにより、最終的な顔の変形をデジタル顔形態モデルに生じさせる。これらの筋膜レイヤは一の実施形態では、顔筋肉変形を可能にする筋肉レイヤ（muscle layer）、顎の動きを可能にする顎レイヤ（jaw layer）、種々の顔領域の皮膚の膨らみを制御するボリュームレイヤ（volume layer）、及び唇の動きを明らかにする開度レイヤ（articulation layer）を含む。
【００３２】
筋肉レイヤは、顔を変形させる筋肉制御を行なう頭蓋縫合部（skull patches）を含む。筋肉制御は、モーションキャプチャデータから生成される重み付けされた活動によって行なわれる。顎レイヤは、デジタル顔形態モデルの顎の動きを制御し易くする。ボリュームレイヤは膨らみを、デジタル顔形態モデルに生じる変形に付加する。従って、ボリュームレイヤは、皺及び他の顔変形のモデル化を容易にし、モデル化は、モーションキャプチャデータから生成される重み付けされた活動によって行なうことができる。開度レイヤは、唇が変形するときの唇の形状に関与する。詳細には、開度レイヤは唇の起伏及び膨らみを制御し易くし、この処理は、唇を顔の表情の中で薄く広げる、またはすぼめるときに必須となる。顔マーカデータはデジタル顔形態モデルに、種々の筋膜レイヤを起動する重み付けされた活動として、マッピングされる、またはリターゲットされる。すなわち、重みによって、一つ以上の所定のポーズの各ポーズが、筋膜レイヤを起動する際に及ぼす影響を重みに比例する形で定量化する。
【００３３】
しかしながら、或る場合には、筋膜レイヤを上に議論したように、重み付けされた活動で起動することにより、不所望のセグメンテーション効果がＣＧ顔形態モデルの表面に現われる。すなわち、起動される種々の筋肉グループがこれらのグループの隙間で不連続を示す。ＣＧ顔形態モデルに別の皮膚レイヤを重ね合わせることにより、隙間の不連続をスムーズにし、そしてアーティストまたはアニメータが、結果として得られる顔アニメーションの見栄えを制御することができるときに利用する別の手段を提供することができる。
【００３４】
従って、ＣＧ顔形態モデルに重ね合わせる皮膚レイヤをブロック２６０で生成する。一の実施形態では、この皮膚レイヤは、上に議論した４つの筋膜レイヤとは別の要素として生成される。皮膚レイヤは、ＣＧ顔形態モデルの外側表面を忠実になぞる。皮膚レイヤには種々の視覚属性を持たせることができ、これらの属性として、例えば色、質感、透明度、毛髪、及び／又は産毛（fur:うぶげ）を挙げることができる。皮膚レイヤには更に種々の肉体的属性を持たせることができ、これらの属性として、例えば弾性、厚み、色、及びきめの細かさを挙げることができる。別の実施形態では、皮膚レイヤを複数の領域に区切り、各領域が一つの顔マーカデータポイントに対応するようにする。
【００３５】
次に、ブロック２７０で、皮膚レイヤを顔マーカデータを使用してアニメートする。一の実施形態では、フレームシーケンス全体の各顔マーカデータポイントの軌跡として表現されるアクターの各顔マーカの動きが皮膚レイヤの該当する領域に反映される。すなわち、フレーム毎の空間変位（すなわち、空間位置の変化）を示す各顔マーカデータポイントによって、該当する変位が皮膚レイヤの該当する領域に加えられる。一の実施形態では、このようにして皮膚レイヤの領域に加えられる変位は皮膚の上での「引っ張り」に類似する。アクターの演技によって変わるが、顔マーカデータポイント群の全てが、特定の時点で動く訳ではないことを理解されたい。
【００３６】
一の実施形態では、各顔マーカデータポイントの変位は、皮膚レイヤの該当する領域に対して所定の位置に加えられる。一の例では、変位は各領域の質量中心に、当該レイヤのきめ細かさを決める値に従って加えられる。別の実施形態では、各顔マーカデータポイントの変位を、該当する領域全体に微小面分布関数（surface spreading function）に従って分布させる。例えば、顔マーカの変位は、該当する領域全体に均一に加えられる。別の例では、顔マーカの変位は、該当する領域の中心に加えられ、かつ領域全体にガウス分布に従って分布する。
【００３７】
別の実施形態では、各顔マーカデータポイントの変位を修正する。修正の例として、これらには制限されないが、変位を拡大縮小する、そして／または変位の方向を線形関数及び非線形関数に従って変化させる。別の実施形態では、顔マーカデータポイントの変位を該当する領域全体に、当該領域に関連付けられる弾性関数に従って分布させる。別の実施形態では、顔マーカデータポイントの変位を該当する領域全体に、当該領域に関連付けられる厚さ関数に従って分布させる。別の実施形態では、顔マーカデータポイントの変位を該当する領域全体に、当該領域に関連付けられる密度関数に従って分布させる。
【００３８】
図３は、一の実施形態によるＦＡＣＳマトリクスを初期化する方法２１０を示すフローチャートである。
【００３９】
ＦＡＣＳ（顔の表情符号化システム）によれば、ヒトの顔は筋肉を有し、筋肉は「活動単位（action units）」と呼ばれるグループ単位で連動して働く。ＦＡＣＳは、所定の活動単位が稼働する時点、及び各活動単位に、所定の顔ポーズに対する相対的な影響度を割り当てる方法を決定するフレームワークを提供する。顔の表情は複数の異なる活動単位に分類される。各活動単位によって筋肉の動作（「活動（activation）」）を定義し、筋肉の動作によって瞬時変化が顔の外見に現われる。顔の外見におけるこれらの変化は人ごとに、顔の解剖学的構造、例えば骨格構造、脂肪性沈着物、皺（しわ）、種々の顔の部位の形状、及び関連する他の顔の外見によって変わる。しかしながら、これらの活動単位が稼働すると、或る共通性を人々の間に見出すことができる。ＦＡＣＳにおいて使用される活動単位は、顔の動作の顔の位置、及び関与する顔の動作の種類を利用する。例えば、顔上部は、眉毛、前額部、及び瞼に影響する筋肉を持ち、口及び唇の周りの下部の筋肉は別のグループを形成する。これらの筋肉の各筋肉はグループ単位で働いて活動単位を構成し、そしてこれらの活動単位を更に、顔の左右領域に細かく分割し、これらの左右領域の活動単位は非対称に、かつ互いに独立して稼働することができる。
【００４０】
ブロック３００では、活動単位をＦＡＣＳマトリクスに関して定義する。一の実施形態では、ＦＡＣＳマトリクスは６４個の活動単位を含み、各活動単位は一つの特定の顔の表情を表わし、そして一緒に働くことによって顔の表情を生成する顔筋肉活動グループを定義する。活動単位を更に細かく分割して顔の左側及び右側を表現し、これらの左右両側を用いて、非対称の顔ポーズが表現される。
【００４１】
ＦＡＣＳマトリクスの活動単位をブロック３１０で校正する。一の実施形態では、各アクターは独自の個人化されたＦＡＣＳマトリクスを有する。アクターのＦＡＣＳマトリクスによって保存される各活動単位は、活動単位に対応するポーズを取るアクターの演技の動きを撮影することにより校正される。顔マーカデータを上述のように撮影し、ＦＡＣＳクリーニングし、そして特定の活動単位に対応するＦＡＣＳマトリクスに割り当てる。別の実施形態では、アクターは各ポーズを極端な仕草で演技して、ポーズまたは同様のポーズがビート中に演技されるときの顔マーカ偏位の予測限界を設定する。
【００４２】
図４は、一の実施形態による顔マーカデータをクリーニングする方法２３０を示すフローチャートである。
【００４３】
フレームシーケンスの顔マーカデータをブロック４００で、巨視的に安定させる。顔モーションキャプチャビートが経過している間、アクターの動きには、顔の表情に関連する更に微妙な動きの他に、並進運動及び回転運動を含む頭部の巨視的な非常に大きな運動が伴なう可能性がある。一の実施形態では、頭部の巨視的な運動を除去して、アクターの顔の表情の微妙な動きを一層明瞭に表現することにより、並進運動及び回転運動によって変わることがない顔マーカデータが得られる。例えば、第１フレームの顔マーカデータを特定する。フレームシーケンスにおける他のフレームの顔マーカデータを第１フレームの顔マーカデータと、アクターの顔の２つ以上の所定の剛性ポイントに従って整合させる。このような剛性ポイントは、例えば頭部、耳、及び鼻梁に取り付けられるマーカに対応する顔マーカデータポイントを含む。一般的に、剛性ポイント群は、これらのポイントがアクターの顔の表情に連動して変化することがない上に更に、モーションキャプチャ演技空間におけるアクターの肉体的運動を捕捉するように選択される。空間座標系は、フレームシーケンスに関して剛性ポイントに従って定義される。従って、顔マーカデータの残りの動きは、ほぼ顔の表情にのみ関連付けられ、そしてそれに応じて、当該空間座標系で定義される。
【００４４】
不良顔マーカデータポイントをブロック４１０で、ＦＡＣＳマトリクスの空間において修正する。一の実施形態では、アクターの演技のフレームをＦＡＣＳマトリクスのＦＡＣＳポーズ群（すなわち、活動単位群）の全てから成る空間において分析する。従って、ＦＡＣＳポーズ群は、空間データポイント群によって定義される顔基本ベクトル群と見なすことができる。各顔基本ベクトルに対応する重みを入力フレームに関して計算して、重み付け合成されたＦＡＣＳポーズ（すなわち、顔基本ベクトル）が入力フレームの新規ポーズを近似するようにする。次に、新規ポーズの顔マーカデータポイントを重み付け合成されたＦＡＣＳポーズと比較して、顔マーカデータポイントが喪失しているかどうか、誤ラベル付けされているかどうか、または顔マーカデータポイントのノイズが許容できないほどに大きいかどうかを判断する。このような不良顔マーカデータポイント群を全て、入力フレームにおいて、重み付け合成されたＦＡＣＳポーズから得られる適切なデータポイント群に置き換える。
【００４５】
ブロック４２０では、顔マーカデータポイント群に、これらのポイント自体が独自に動くことがないように制限を加える。この制限は一般的に、単一の特定の顔マーカデータポイントが隣接する顔マーカデータポイントとは大幅に異なる態様で動く確率が低いので加えることができ、従って単一の顔マーカデータポイントによる独自の動きは通常、データポイントが使えないことを示唆する。一旦、判断が行なわれると、データポイントの不正な動きは修正することができる。
【００４６】
ブロック４３０では、顔マーカデータポイント群に制限を加えて、これらのポイントが該当する筋肉グループと一緒に動くようにする。一の実施形態では、顔マーカデータポイント群は、顔マーカデータポイント群が属する筋肉グループに対して不自然になるような態様で動くことが許されない。
【００４７】
ブロック４４０では、顔マーカデータをフレーム群において微視的に安定させる（fine-stabilized）。顔マーカデータポイント群の空間位置を、顔面モデルに対するマーカの動きを求めることにより微視的に安定させる。一の実施形態では、顔マーカデータポイント群の空間位置を、顔マーカデータポイントの動きを調整して、このポイントが所定の顔面モデルを忠実になぞるようにすることにより微視的に安定させる。別の実施形態では、微視的安定化は、ＦＡＣＳマトリクスに保存される顔ポーズを使用して、許容範囲から外れた顔マーカデータポイント群を調整することにより達成される。更に別の実施形態では、顔マーカデータポイント群を、剛性マーカ群を使用して手作業で微視的に安定させる。
【００４８】
要約すると、安定化は２つの方法−巨視的安定化（gross-stabilization）及び微視的安定化（fine-stabilization）−により処理される。巨視的安定化では、ボディに取り付けられる剛性マーカ（例えば、頭部マーカ／顔マーカ）を利用する。これらの剛性マーカは十分に大きいので、変換行列を計算して剛性マーカ群（頭部／顔）の位置を、これらのマーカの空間位置から基準原点に変換することができ、従って顔の表情に対する全ての分析をロックダウン位置（物を動かすことができないように固定したときの位置）で行なうことができる。しかしながら、ノイズ、一貫性の無いラベル、及び他の異常が含まれる（例えば、顔の表情に）状態では、頭部を動かすことができないようにフレーム毎に固定するために計算される巨視的安定化変換には一貫性がなく、これによって、小さな揺れ、捻れ、跳ね、及び他のノイズが生じる。これらのデータをフェイシャルアニメーションのリターゲット（facial re-targeting）に使用する場合、良好な顔の表情の生成は難しい。その結果、微視的安定化が必要になり、微視的安定化によって揺れ、捻れ、跳ね、及び他のノイズを除去する。微視的安定化は、ＦＡＣＳマトリクスを特定のアクターに関して利用することにより行なうことができる。ＦＡＣＳマトリクスを使用してマーカの小さな動きを、これらの動きが所定の表情に一致するものとして分析する。従って、或る表情に関して、マーカグループは、ＦＡＣＳマトリクスから学習される動き、またはＦＡＣＳマトリクスによって生成される動きに一致する動きを示す。しかしながら、動きに一致が見られない、または動きが一致しない場合、動きを顔全体で矯正し、そして「補正して」、顔（及び／又は頭部）全体を更に安定させることができる。
【００４９】
図５は、一の実施形態による顔筋肉活動を顔マーカデータに基づいて生成する方法５００を示すフローチャートである。
【００５０】
重みをブロック５００で決定して、顔マーカデータの入力フレームに表示されるポーズを近似する重み付け合成された活動単位を特徴付ける。所定の顔筋肉グループの活動を表わす活動単位は、上に議論したように顔基本ベクトルと見なすことができる。従って、一つ以上の活動単位−ＦＡＣＳマトリクスの活動単位群の全てを最大限として含む−は入力顔マーカデータのポーズを近似するための重み付け合成の構成要素として使用される。すなわち、顔マーカデータは、ＦＡＣＳマトリクスの所定の活動単位群の或る組み合わせとして特徴付けられる。重みの決定では、各活動単位に関連付けられる重み付け合成された顔ポーズデータを新規の顔ポーズデータにフィッティングする。一の実施形態では、最小自乗フィッティングのような線形最適化を使用して重みの最適な組み合わせを計算する。別の実施形態では、非線形最適化を使用してフィッティングを行なう。
【００５１】
一旦、重みが決定されると、重み付けされた活動をブロック５１０で生成する。一の実施形態では、図２を参照しながら議論したように、重みを、各活動単位に関連付けられる筋肉グループ活動に適用し、そして結果として得られる複数の活動を合成して一つの重み付けされた活動を生成する。次に、重み付けされた活動をデジタル顔形態モデルに適用する。
【００５２】
図６は、本発明の一の実施形態によるデジタル顔形態モデルをアニメートするシステム６００の機能ブロック図である。システム６００はクリーニングモジュール６１０と、顔筋肉活動モジュール６２０と、ＦＡＣＳモジュール６３０と、アニメーションモジュール６４０と、そして皮膚レイヤモジュール６５０と、を含む。
【００５３】
図６に示す実施形態では、クリーニングモジュール６１０は顔マーカデータをクリーニングして、時間軸上のギャップ、顔マーカデータポイントの誤ラベル付け、及びノイズに関するデータを除去する。時間軸上のギャップは、フレーム中の一つ以上の顔マーカデータポイントに対するラベル付けが失敗して、例えばシーケンス内の隣接するフレームの正しくラベル付けされたポイントの間に「ギャップ」が発生すると生じる。一の実施形態では、クリーニングは、図４のフローチャートに示される方法４００に従って行なわれる。
【００５４】
顔筋肉活動モジュール６２０は、顔筋肉活動を顔マーカデータに基づいて生成する。図２を参照しながら上に議論したように、顔筋肉活動を生成するステップは基本的に：顔マーカデータを近似する重み付け合成された活動単位を特徴付ける重みを決定するステップと；そして重み付けされた活動を生成するステップと、を含む。顔筋肉活動を生成するステップについて、図５を参照しながら更に詳細に説明する。
【００５５】
ＦＡＣＳモジュール６３０はＦＡＣＳマトリクスを、ＦＡＣＳマトリクスのＦＡＣＳ活動単位を定義し、そしてアクターに関連付けられるポーズを校正することによりほぼ初期化する。
【００５６】
アニメーションモジュール６４０は、コンピュータグラフィックス（「ＣＧ」）顔形態モデルを、顔筋肉活動モジュール６２０において生成される顔筋肉活動を使用してアニメートする。一の実施形態では、ＣＧ顔形態モデルは、アーティストまたはアニメータが「リギング」した（組み立てた）デジタル顔形態モデルである。デジタル顔形態モデルのリギングでは、種々の筋膜レイヤ（fascia layers:筋膜層）を設定し、これらの筋膜レイヤをブレンドすることにより、最終的な顔の変形をデジタル顔形態モデルに生じさせる。これらの筋膜レイヤは一の実施形態では、顔筋肉変形を可能にする筋肉レイヤ（muscle layer）、顎の動きを可能にする顎レイヤ（jaw layer）、種々の顔領域の皮膚の膨らみを制御するボリュームレイヤ（volume layer）、及び唇の動きを明らかにする開度レイヤ（articulation layer）を含む。
【００５７】
筋肉レイヤは、顔を変形させる筋肉制御を行なう頭蓋縫合部（skull patches）を含む。筋肉制御は、モーションキャプチャデータから生成される重み付けされた活動によって行なわれる。顎レイヤは、デジタル顔形態モデルの顎の動きを制御し易くする。ボリュームレイヤは膨らみを、デジタル顔形態モデルに生じる変形に付加する。従って、ボリュームレイヤは、皺及び他の顔変形のモデル化を容易にし、モデル化は、モーションキャプチャデータから生成される重み付けされた活動によって行なうことができる。開度レイヤは、唇が変形するときの唇の形状に関与する。詳細には、開度レイヤは、唇の起伏及び膨らみを制御し易くし、この処理は、唇を顔の表情の中で薄く広げる、またはすぼめるときに必須となる。顔マーカデータはデジタル顔形態モデルに、種々の筋膜レイヤを起動する重み付けされた活動として、マッピングされる、またはリターゲットされる。すなわち、重みによって、一つ以上の所定のポーズの各ポーズが、筋膜レイヤを起動する際に及ぼす影響を重みに比例する形で定量化する。
【００５８】
しかしながら、或る場合には、筋膜レイヤを上に議論したように、重み付けされた活動で起動することにより、不所望のセグメンテーション効果がＣＧ顔形態モデルの表面に現われる。すなわち、起動される種々の筋肉グループがこれらのグループの隙間で不連続を示す。ＣＧ顔形態モデルに別の皮膚レイヤを重ね合わせることにより、隙間の不連続を滑らかにし、そしてアーティストまたはアニメータが、結果として得られる顔アニメーションの見栄えを制御することができるときに利用する別の手段を提供することができる。
【００５９】
従って、皮膚レイヤモジュール６５０は、ＣＧ顔形態モデルに重ね合わせる皮膚レイヤを生成する。一の実施形態では、この皮膚レイヤは、上に議論した４つの筋膜レイヤとは別の要素として生成される。皮膚レイヤは、ＣＧ顔形態モデルの外側表面を忠実になぞる。皮膚レイヤには種々の視覚的属性を持たせることができ、これらの属性として、例えば色、質感、透明度、毛髪、及び／又は産毛（うぶげ）を挙げることができる。皮膚レイヤには更に種々の肉体的属性を持たせることができ、これらの属性として、例えば弾性、厚み、及びきめの細かさを挙げることができる。別の実施形態では、皮膚レイヤを複数の領域に区切り、各領域が一つの顔マーカデータポイントに対応するようにする。
【００６０】
次に、皮膚レイヤモジュール６５０は、皮膚レイヤを顔マーカデータを使用してアニメートする。一の実施形態では、フレームシーケンス全体の各顔マーカデータポイントの軌跡として表現されるアクターにおける各顔マーカの動きが皮膚レイヤの該当する領域に反映される。すなわち、フレーム毎の空間変位（すなわち、空間位置の変化）を示す各顔マーカデータポイントによって、該当する変位が皮膚レイヤの該当する領域に加えられる。このモジュール６５０について以下に詳細に説明する。
【００６１】
図７は、アニメートされた皮膚レイヤを生成する皮膚レイヤモジュール６５０の機能ブロック図である。皮膚レイヤモジュール６５０は、データポイント関連付けモジュール７００と、皮膚移動モジュール７１０と、変位モジュール７２０と、変位修正モジュール７３０と、そして皮膚弾性モジュール７４０と、を含む。
【００６２】
データポイント関連付けモジュール７００は、マーカ群（すなわち、顔マーカデータポイント群）を、アニメートされたモデルの追加皮膚レイヤの領域群（すなわち、離散「皮膚パッチ群」）に関連付けて、個々の顔マーカデータポイント群と該当する皮膚領域群との関連付けを生成する。皮膚移動モジュール７１０は関連付けを受信し、そしてこれらの関連付けを使用して、顔マーカデータポイント群の変位を、これらのポイントに対応する皮膚領域群に加える。
【００６３】
変位モジュール７２０は、一つのマーカの複数の空間位置の間の変位を計算する。この変位を使用して、追加皮膚レイヤの該当する領域を引っ張る。マーカ及び領域は、アクターの顔の上に物理的に対応する。変位モジュール７２０によって計算されるデータポイント変位を変位修正モジュール７３０が使用することにより、変位を、例えば拡大縮小することにより修正して所望の結果を得る。変位を皮膚レイヤの領域に加える基本操作は一対一対応である。例えば、１インチのマーカ変位は１インチの皮膚変位を意味する。従って、変位を修正することが望ましい。修正では、変位を表わす向き（例えば、ベクトル）を、当該変位が少なくとも空間的に広がっているので変更することができる。
【００６４】
皮膚弾性モジュール７４０は、弾性を計算し、そして／または弾性を皮膚領域に付与して、変位を皮膚領域に加える（皮膚移動モジュール７１０において）と、皮膚が的確に予測可能な態様で動くようにする。
【００６５】
図８Ａは、コンピュータシステム８００及びユーザ８０２を表わす図を示している。ユーザ８０２はコンピュータシステム８００を使用することにより、ＦＡＣＳ解決策を実行する。コンピュータシステム８００はＦＡＣＳ解決システム８９０を収容し、そして実行し、ＦＡＣＳ解決システム８９０は、クリーニングされたモーションキャプチャフレームデータを処理する。
【００６６】
図８Ｂは、ＦＡＣＳ解決システム８９０のホストとなるコンピュータシステム８００を示す機能ブロック図である。コントローラ８１０はプログラマブルプロセッサであり、そしてコンピュータシステム８００及び当該システムのコンポーネントの動作を制御する。コントローラ８１０は命令をメモリ８２０または埋め込みコントローラメモリ（図示せず）から読み込み、そしてこれらの命令を実行してシステムを制御する。コントローラ機能を実行するために、コントローラ８１０はＦＡＣＳ解決システム８９０をソフトウェアシステムとして提供する。別の構成として、このサービスは、コントローラ８１０内の、またはコンピュータシステム８００内の別のコンポーネントとして実装することができる。
【００６７】
メモリ８２０はデータを一時的に保存して、コンピュータシステム８００の他のコンポーネントが使用することができるようにする。一の実施形態では、メモリ８２０はＲＡＭとして実装される。一の実施形態では、メモリ８２０は更に、フラッシュメモリ及び／又はＲＯＭのような長期メモリまたは永久メモリを含む。
【００６８】
ストレージ８３０は、コンピュータシステム８００の他のコンポーネントが使用することができるようにデータを一時的に、または長期間に渡って保存する、例えばＦＡＣＳ解決システム８９０が使用するデータを保存する。一の実施形態では、ストレージ８３０はハードディスクドライブである。
【００６９】
メディア装置８４０は取り外し可能な媒体を受け入れ、そして挿入媒体に対するデータの読み出し、及び／又は書き込みを行なう。一の実施形態では、メディア装置８４０は光ディスクドライブである。
【００７０】
ユーザインターフェース８５０は、ユーザ入力をコンピュータシステム８００のユーザから受け入れ、そして情報をユーザに対して提示するコンポーネントを含む。一の実施形態では、ユーザインターフェース８５０はキーボード、マウス、オーディオスピーカ、及びディスプレイを含む。コントローラ８１０はユーザからの入力を使用してコンピュータシステム８００の動作を調整する。
【００７１】
Ｉ／Ｏインターフェース８６０は、外部ストレージまたは補助装置（例えば、プリンタまたはＰＤＡ）のような該当するＩ／Ｏ装置との接続を行なう一つ以上のＩ／Ｏポートを含む。一の実施形態では、Ｉ／Ｏインターフェース８６０のポートは：ＵＳＢポート、ＰＣＭＣＩＡポート、シリアルポート、及び／又はパラレルポートのようなポートを含む。別の実施形態では、Ｉ／Ｏインターフェース８６０は、外部デバイスと無線通信する無線インターフェースを含む。
【００７２】
ネットワークインターフェース８７０は、イーサネット（登録商標）接続をサポートするＲＪ−４５または「Ｗｉ−Ｆｉ」インターフェース（これに制限されないが、８０２．１１を含む）のような有線及び／又は無線ネットワーク接続を含む。
【００７３】
コンピュータシステム８００は、コンピュータシステムでは普通の更に別のハードウェア及びソフトウェア（例えば、電源システム、冷却システム、オペレーティングシステム）を含むが、これらのコンポーネントは図を簡単にするために、図８Ｂには詳細には示されていない。他の実施形態では、コンピュータシステムの異なる構成を使用することができる（例えば、異なるバスまたはストレージ構成、或いはマルチプロセッサ構成）。
【００７４】
本発明の種々の例示的な実施形態について説明してきた。しかしながら、この技術分野の当業者であれば、更に別の実施形態を用いることもでき、かつ更に別の実施形態が本発明の範囲に含まれることが理解できるであろう。例えば、ＦＡＣＳ解決システムについて顔マーカデータに関連する形で概要を説明してきたが、当該システムは、ボディマーカデータのような他のタイプのモーションキャプチャマーカデータに適用することができる。更に、モジュール内のまたはブロック内のグルーピング機能は説明を分かり易くするために提示されていることを理解されたい。特定の機能は、一つのモジュールまたはブロックから別のモジュールまたはブロックに、本発明から逸脱しない限り移動させることができる。
【００７５】
従って本発明は、上に記載されるこれらの実施形態にのみ限定されることはない。
【図１】
2009545084.tif 000003
【図２】
2009545084.tif 000004
【図３】
2009545084.tif 000005
【図４】
2009545084.tif 000006
【図５】
2009545084.tif 000007
【図６】
2009545084.tif 000008
【図７】
2009545084.tif 000009
【図８Ａ】
2009545084.tif 000010
【図８Ｂ】
2009545084.tif 000011
【国際調査報告】
2009545084.tif 000012