(57)【要約】  活性化−駆動筋肉変形を伴ってキャラクターを動かすシステム及び方法である。外部荷重は、関節トルク反復推定プロセスを経て推定可能であり、外部荷重は、身体モデルに反映される。運動学的動作及び外部荷重を反映する身体モデルは、関節トルクを推定するために使用可能である。筋肉活性化は、関節トルクから決定可能であり、キャラクターは、筋肉活性化に応じた筋肉変形を伴って動かされる。【選択図】図２
2008546453.tif 000002
【特許請求の範囲】
【請求項１】
運動学的動作及び身体モデルに応じた筋肉変形を伴ってキャラクターを動かす方法であって、
前記運動学的動作及び前記身体モデルから推定される、模擬荷重を含む関節トルクの第一のセットを推定するステップと、
前記模擬荷重に応じて外部荷重を決定するステップと、
前記外部荷重を前記身体モデルに付与することによって、荷重が付与された身体モデルを生成するステップと、
前記運動学的動作及び前記荷重が付与された身体モデルから推定された関節トルクの第二のセットを推定するステップと、
前記推定された関節トルクの第二のセットから筋肉活性化を決定するステップと、
前記筋肉活性化に応じた筋肉変形を伴って前記キャラクターを動かすステップと、
を含むことを特徴とする方法。
【請求項２】
前記身体モデルは、複数の関節を備え、
前記運動学的動作は、前記複数の関節の少なくとも一つの位置を記述する関節角度のセットと、前記複数の関節の少なくとも一つの位置の導関数を記述する関節角度導関数のセットと、を備える
ことを特徴とする請求項１に記載の方法。
【請求項３】
動作を捕獲することによって、前記運動学的動作を決定するステップ
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項４】
前記運動学的動作は、動作ライブラリから取得される
ことを特徴とする請求項１に記載の方法。
【請求項５】
複数のキーフレームから前記運動学的動作を決定するステップ
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項６】
プロシージャアニメーションを用いて前記運動学的動作を決定するステップ
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項７】
前記運動学的動作をフィルタリングするステップ
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項８】
前記外部荷重を決定するステップは、床反荷重を推定するステップを含む
ことを特徴とする請求項１に記載の方法。
【請求項９】
前記床反荷重を推定するステップは、
前記床反荷重の正味圧力中心を決定するステップと、
前記正味圧力中心での前記床反荷重のトルクを決定するステップと、
前記正味圧力中心での前記床反荷重の力を決定するステップと、
前記床反荷重の力を、前記身体モデル上の一以上の個別圧力中心に分配するステップと、
を含むことを特徴とする請求項８に記載の方法。
【請求項１０】
前記外部荷重を前記身体モデルに付与するステップは、分配された前記力を、前記身体モデル上の一以上の個別圧力中心に付与するステップを含む
ことを特徴とする請求項９に記載の方法。
【請求項１１】
前記正味圧力中心が支持多角形の外側にあることを決定するステップと、
前記正味圧力中心が前記支持多角形の外側にあるという決定に応じて、前記正味圧力中心を移動させるステップと、
をさらに含むことを特徴とする請求項９に記載の方法。
【請求項１２】
前記筋肉活性化は、最低限の活性化条件に従って決定される
ことを特徴とする請求項１に記載の方法。
【請求項１３】
決定された前記筋肉活性化をフィルタリングするステップ
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項１４】
運動学的動作及び身体モデルに応じた筋肉変形を伴ってキャラクターを動かすシステムであって、
前記運動学的動作及び前記身体モデルから推定される、模擬荷重を含む関節トルクの第一のセットを推定するように構成された第一の関節トルク推定部と、
前記模擬荷重に応じて外部荷重を決定するように構成された外部荷重決定部と、
前記外部荷重を前記身体モデルに付与することによって、荷重が付与された身体モデルを生成するように構成された荷重付与部と、
前記運動学的動作及び前記荷重が付与された身体モデルから、推定された関節トルクの第二のセットを推定するように構成された第二の関節トルク推定部と、
前記推定された関節トルクの第二のセットから筋肉活性化を決定するように構成された筋肉活性化決定部と、
前記筋肉活性化に応じた筋肉変形を伴って前記キャラクターを動かすキャラクター作動部と、
を備えることを特徴とするシステム。
【請求項１５】
前記身体モデルは、複数の関節を備え、
前記運動学的動作は、前記複数の関節の少なくとも一つの位置を記述する関節角度のセットと、前記複数の関節の少なくとも一つの位置の導関数を記述する関節角度導関数のセットと、を備える
ことを特徴とする請求項１４に記載のシステム。
【請求項１６】
動作を捕獲して前記運動学的動作を決定するように構成されたモーションキャプチャー装置
をさらに備えることを特徴とする請求項１４に記載のシステム。
【請求項１７】
前記運動学的動作は、動作ライブラリから取得される
ことを特徴とする請求項１４に記載のシステム。
【請求項１８】
複数のキーフレームから前記運動学的動作を決定するように構成された動作生成部
をさらに備えることを特徴とする請求項１４に記載のシステム。
【請求項１９】
プロシージャアニメーションを用いて前記運動学的動作を決定するように構成された動作生成部
をさらに備えることを特徴とする請求項１４に記載のシステム。
【請求項２０】
前記運動学的動作をフィルタリングするように構成されたフィルタ部
をさらに備えることを特徴とする請求項１４に記載のシステム。
【請求項２１】
前記外部荷重決定部は、床反荷重の正味圧力中心を決定し、前記正味圧力中心での前記床反荷重のトルクを決定し、前記正味圧力中心での前記床反荷重の力を決定し、前記床反荷重の力を、前記身体モデル上の一以上の個別圧力中心に分配するように構成された床反荷重推定部を備える
ことを特徴とする請求項１４に記載のシステム。
【請求項２２】
前記荷重付与部は、分配された前記力を、前記身体モデル上の一以上の個別圧力中心に付与することによって、前記外部荷重を前記身体モデルに付与するように構成されている
ことを特徴とする請求項２１に記載のシステム。
【請求項２３】
前記正味圧力中心が支持多角形の外側にあるかを決定するように構成された多角形決定部と、
前記多角形決定部に応じて、前記正味圧力中心を移動させるように構成された正味圧力中心移動部と、
をさらに備えることを特徴とする請求項２１に記載のシステム。
【請求項２４】
前記筋肉活性化部は、最低限の活性化条件に従って筋肉活性化を決定するように構成されている
ことを特徴とする請求項１４に記載のシステム。
【請求項２５】
決定された前記筋肉活性化をフィルタリングするフィルタ部
をさらに備えることを特徴とする請求項１４に記載のシステム。
【請求項２６】
運動学的動作及び身体モデルに応じた筋肉変形を伴ってキャラクターを動かすシステムであって、
前記運動学的動作及び前記身体モデルから推定される、模擬荷重を含む関節トルクの第一のセットを推定する手段と、
前記模擬荷重に応じて外部荷重を決定する手段と、
前記外部荷重を前記身体モデルに付与することによって、荷重が付与された身体モデルを生成する手段と、
前記運動学的動作及び前記荷重が付与された身体モデルから、推定された関節トルクの第二のセットを推定する手段と、
前記推定された関節トルクの第二のセットから筋肉活性化を決定する手段と、
前記筋肉活性化に応じた筋肉変形を伴って前記キャラクターを動かす手段と、
を備えることを特徴とするシステム。
【請求項２７】
前記身体モデルは、複数の関節を備え、
前記運動学的動作は、前記複数の関節の少なくとも一つの位置を記述する関節角度のセットと、前記複数の関節の少なくとも一つの位置の導関数を記述する関節角度導関数のセットと、を備える
ことを特徴とする請求項２６に記載のシステム。
【請求項２８】
動作を捕獲することによって前記運動学的動作を決定する手段
をさらに備えることを特徴とする請求項２６に記載のシステム。
【請求項２９】
複数のキーフレームから前記運動学的動作を決定する手段
をさらに備えることを特徴とする請求項２６に記載のシステム。
【請求項３０】
プロシージャアニメーションを用いて前記運動学的動作を決定する手段
をさらに備えることを特徴とする請求項２６に記載のシステム。
【請求項３１】
前記運動学的動作をフィルタリングする手段
をさらに備えることを特徴とする請求項２６に記載のシステム。
【請求項３２】
前記模擬荷重に応じて外部荷重を決定する手段は、床反荷重を推定する手段を備える
ことを特徴とする請求項２６に記載のシステム。
【請求項３３】
前記床反荷重を推定する手段は、
前記床反荷重の正味圧力中心を決定する手段と、
前記正味圧力中心での前記床反荷重のトルクを決定する手段と、
前記正味圧力中心での前記床反荷重の力を決定する手段と、
前記床反荷重の力を、前記身体モデル上の一以上の個別圧力中心に分配する手段と、
を備えることを特徴とする請求項３２に記載のシステム。
【請求項３４】
前記外部荷重を前記身体モデルに付与する手段は、分配された前記力を、前記身体モデル上の一以上の個別圧力中心に付与する手段を備える
ことを特徴とする請求項３３に記載のシステム。
【請求項３５】
前記正味圧力中心が支持多角形の外側にあると決定する手段と、
前記正味圧力中心が支持多角形の外側にあると決定する手段に応じて、前記正味圧力中心を移動させる手段と、
をさらに備えることを特徴とする請求項３３に記載のシステム。
【請求項３６】
前記筋肉活性化は、最低限の活性化条件に従って決定される
ことを特徴とする請求項２６に記載のシステム。
【請求項３７】
決定された前記筋肉活性化をフィルタリングする手段
をさらに備えることを特徴とする請求項２６に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、エヌジー−ソウ−ヒング、ビクター等によって２００５年６月１７日に出願された米国仮特許出願第６０／６９１，５３６号、及び、エヌジー−ソウ−ヒング、ビクター等によって２００６年６月１５日に出願された米国特許出願（番号未知）に基づいて優先権を主張するものであり、これらの文献は、参照により本明細書に一体的に組み込まれるものとする。
【０００２】
本出願は、キャラクターアニメーションに関し、詳細には、アニメーションキャラクターの筋肉変形に関する。
【０００３】
コンピュータ生成グラフィックスは、驚くほどにリアルで写真のような描写の静止キャラクターを生成する能力を実現した。しかし、これらのキャラクターが動かされる場合には、一般的には、リアル感が損なわれてしまう。コンピュータによって動かされるキャラクターが時として堅く、不自然に動き、生命としての説得力がないことに対して視聴者が批判することがよくある。
【０００４】
実物そっくりのキャラクターのアニメーションの重要な一態様として、リアルな筋肉変形が挙げられる。結局、ほとんどのキャラクターは、単に骨及び関節だけのモノにとどまっていないため、筋肉の変形を無視すると、生命感がなく見せかけだけの動作を生成することになりがちである。
【０００５】
筋肉変形のアプローチの一つとして、キャラクターの様々なポーズ標本に関する筋肉又は筋肉によって変形された皮膚メッシュ（筋肉に基づくメッシュ）を定義することが挙げられる。他のポーズに関する筋肉に基づくメッシュは、ポーズ標本の筋肉メッシュから補間可能である。しかし、このアプローチは、生命感のあるキャラクターを生成する能力において深刻な限界を有している。ポーズの標本は一般的に関節角度のみから生成されているので、補間された筋肉変形は、ポーズの移行速度又はキャラクターに作用する外部荷重の変化に対応することができない。筋肉は変形するが、かかる変形は、リアルなキャラクターに作用するのと同じ身体的な力に応答するものではない。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
筋肉変形に関する既存の技術は、外部荷重、重力、加速度及びキャラクターの非ゼロ速度を適切に考慮することができない。それゆえ、外部荷重、重力、加速度及びキャラクターの非ゼロ速度を反映することが可能な筋肉変形のためのシステム及び方法が必要とされている。
【課題を解決するための手段】
【０００７】
本発明は、活性化−駆動筋肉変形のためのシステム及び方法である。運動学的動作及び身体モデルが、外部荷重を含む関節トルクを推定するために使用される。筋肉活性化は、推定された関節トルクから決定され、キャラクターは、筋肉活性化に応じた筋肉変形を伴って動かされる。
【０００８】
外部荷重及び筋肉活性化は、二段階の関節トルク決定プロセスを経て推定される。推定された関節トルクの第一のセットが、運動学的動作及び身体モデルから推定される。推定された関節トルクの第一のセットは、模擬的な外部荷重（「模擬荷重」とも呼ばれる）を備える。模擬的な外部荷重は、オブジェクトに作用する力及び／又はトルクによって生じる見かけ上の荷重であり、環境には自然発生源はない。非ゼロ模擬荷重は、一般的には、外部荷重を考慮しない存在を示す。推定された関節トルクの第一のセットからのこの模擬的な外部荷重は、身体上の様々な点に再分配されることによって、身体的に実現可能な外部荷重を推定し、この身体的に実現可能な外部荷重は、（床との接触力のように、）環境との身体的な相互作用として説明可能である。外部荷重は、身体モデルに付与されることによって、荷重が付与された身体モデルを生成し、推定された関節トルクの第二のセットは、運動学的動作及び荷重が付与された身体モデルから推定される。推定された関節トルクの第二のセットは、身体システムに作用する外部荷重の影響を含み、身体的なリアル感をもたらす。筋肉活性化は、推定された関節トルクの第二のセットから決定され、キャラクターは、筋肉活性化に応じた筋肉変形を伴って動かされる。筋肉活性化における外部荷重及び加速度の影響を含むことによって、生命感のある筋肉変形を伴う説得力のあるキャラクターの動作が可能となる。
【発明を実施するための最良の形態】
【０００９】
以下、本発明の好ましい実施形態について、図面を参照して記述する。同一の参照符号は、同一又は機能的に同等な要素を示す。また、図面において、各参照符号の左端の数字は、当該参照符号が最初に用いられた図面に対応している。
【００１０】
本明細書における「一実施形態」又は「実施形態」という用語は、実施形態に関連して記述された特定の特徴、構造又は性質が本発明の実施形態の少なくとも一つに含まれることを意味する。本明細書の様々な場所における「一実施形態において」というフレーズの表現は、すべてが同一の実施形態に言及しているとは限らない。
【００１１】
以下の詳細な説明のいくつかの部分は、コンピュータメモリ内におけるデータビットの演算のアルゴリズム表現及び記号表現の用語で表現されている。これらのアルゴリズム記述及び表現は、データ処理分野の当業者によって他の当業者に作品の内容を最も効率的に伝えるために用いられる手段である。ここで、そして一般的にも、アルゴリズムは、所望の結果を導き出すステップ（指令）の自己無撞着なシーケンスであると考えられている。
ステップは、物理量の物理的操作を必要とする。大抵の場合、これらの量は、記録、伝送、結合、比較及びその他の操作が可能な電気信号、磁気信号又は光学信号の形態をとるが、これらに限定されない。主に共通利用のため、時として、これらの信号を、ビット、値、要素、記号、文字、用語、数字等として扱うと便利である。さらに、時として、物理量の物理的操作を必要とするステップの任意の配列を、一般性を損失することなく、モジュール又は符号化装置として扱うと便利である。
【００１２】
しかし、これらの全ての用語及び同様の用語は、好適な物理量に関連付けられるべきであり、これらの量に適用される単に便利なラベルであると思うべきである。特に他に述べられない限り、以下の論考から明らかなように、記述を通して、「処理」、「算出」、「計算」、「決定」、「表示」等のような用語を用いた論考は、コンピュータシステムの記憶装置、レジスタ、他の情報記憶装置、伝送装置又は表示装置内の物理（電子）量として表されるデータを操作及び伝送するコンピュータシステム又は同様の電子計算装置の動作及び処理に関して言及するものである。
【００１３】
本発明の任意の態様は、アルゴリズムの形態で本明細書に記述された処理ステップ及び指令を含む。本発明の処理ステップ及び指令は、ソフトウェア、ファームウェア又はハードウェアにおいて具現化可能であり、ソフトウェアにおいて具現化された場合には、様々なオペレーティングシステムによって用いられる異なるプラットフォームからダウンロードされて常駐及び動作可能であることに留意されたい。
【００１４】
また、本発明は、本明細書の動作を実行するための装置に関する。この装置は、特に所望の目的のために構成されていてもよく、コンピュータ内に記憶されたコンピュータプログラムにより選択的に作動又は再構成される汎用コンピュータを備えていてもよい。かかるコンピュータプログラムは、限定されないが、フロッピー（登録商標）ディスク、光学ディスク、ＣＤ−ＲＯＭ及び光磁気ディスクを含む各種ディスク、ＲＯＭ、ＲＡＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、磁気カード又は光カード、特定用途向け集積回路（ＡＳＩＣｓ）、電子的指令を記憶するのに適し、コンピュータシステムバスにより互いに結合される各種メディア等のコンピュータ読み取り可能な記憶媒体に記憶されている。さらに、本明細書で言及されたコンピュータは、単一のプロセッサを備えるものであってもよく、計算能力を高めるように設計された、複数のプロセッサを使用するアークテクチャであってもよい。
【００１５】
本明細書で提示されるアルゴリズム及び表示は、特定のコンピュータ又は他の装置に本質的に関連するものではない。様々な汎用システムが本明細書の教示に従うプログラムとともに用いられてもよく、より特化した装置を所望の方法ステップを実行するために構成すると便利であることもわかっている。これらの多様なシステムに必要な構造は、以下の記述から明らかになるであろう。さらに、本発明は、特定のプログラム言語に関して記述されているわけではない。多様なプログラム言語が本明細書で記述された本発明の教示を実行するために使用可能であり、以下の特定の言語に対する言及は、本発明の実施可能性及びベストモードの開示のために提供されていることは明らかである。
【００１６】
さらに、本明細書で用いられる言語は、主として読みやすさ及び説明を目的として選択されたものであり、本発明の構成要件を線引きし限定するために選択されたわけではない。したがって、本発明の開示は、添付の特許請求の範囲に記載された本発明の範囲を説明することを意図したものであり、限定することを意図したものではない。
【００１７】
物理的な世界において、筋肉活性化は、床反荷重、負荷、外部抵抗等といった外部荷重による影響を受ける。説得力のあるアニメのキャラクターに関して、その筋肉変形は、キャラクターが動いている環境の外部荷重を反映すべきである。本発明の一実施形態によると、外部荷重は、筋肉活性化を決定し、その結果としてリアルな筋肉変形を有する説得力のあるキャラクターを生じるために、キャラクターの身体モデルに付与される。キャラクターの環境の外部荷重は、物理的な世界において遭遇する現象（摩擦、環境との接触、重力等）に基づくことができ、変化する重力場のように、模擬的な力場又は時変力場等といった、開発された空想的な現象に基づくこともできる。
【００１８】
荷重は、アニメのキャラクター等といったオブジェクトに作用する力及び／又はトルク成分を含むベクトルである。非ゼロ荷重は、非ゼロ力成分、非ゼロトルク成分又は両方の任意の組み合わせを有する。外部荷重は、オブジェクトの外部で生成されるか外部から付与される力又はトルクによって生じる。アニメのキャラクターの例において、外部荷重は、キャラクターの筋肉活性化によって生じるものではない任意の荷重である。床反荷重（「床反力」としても公知である）は、上にあるオブジェクトを支持する表面によって付与される。
【００１９】
外部荷重は、推定又は直接測定可能である。外部荷重は、例えば、床によって身体的な動作主体に付与される力及びトルクを測定するフォースプレートによって直接測定可能である。フォースプレートは、正確な力データ及びトルクデータを提供可能であるが、高価であり、身体的な動作主体が動作可能な領域の範囲を制限してしまう。さらに、二以上の足が床にある場合には、単一のフォースプレートは、各足に作用する個別の荷重を分離することができない。外部荷重の推定は、測定装置を必要とせず、フォースプレートを使用した場合と比較して動作の自由度をより多く提供する。さらに、外部荷重の推定は、直接的な測定が困難な場合にも筋肉活性化の決定を可能とする。例えば、動作ライブラリが、多様な既存の動作を提供するために利用可能である。しかし、動作ライブラリのほとんどは、以前に決定された外部荷重データを備えていない。外部荷重を推定することによって、既存の動作ライブラリから取得される運動学的動作が、キャラクターにおける活性化駆動筋肉変形のアニメーションのために利用可能である。
【００２０】
本発明の一実施形態によると、外部荷重は、関節トルクを推定し、結果として得られた模擬荷重（artificial load）を解析することによって決定される。模擬荷重は、オブジェクトに作用する実在しない、すなわち、ありそうもない力によって生じる見かけ上の荷重である。「体積力」として知られていることもあるように、非ゼロ模擬荷重は、外部荷重はモデル内のどこに作用しているかわからないことを示す。モデルがオブジェクトに作用する床反力を説明することができない場合に、ある共通の非ゼロ模擬荷重の発生が生じる。関節トルクが床反力を考慮せずに推定される場合には、「体積力」は、オブジェクトを同じ場所に固定しているように見える。床反力を考慮せずに推定された関節トルクに基づく筋肉活性化は、下半身の筋肉群の活性化を低く見積もる傾向がある。
【００２１】
本発明の一実施形態によると、模擬荷重は、外部荷重の考慮を決定するために使用される。関節トルクは、外部荷重を考慮して推定可能であり、推定された関節トルクは、筋肉活性化を決定するために使用可能である。外部荷重を考慮することによって、キャラクターの筋肉群の活性化は、キャラクターの様々なポーズ及び動作に関するリアルな変形を伴って描写可能である。
【００２２】
図１は、本発明の一実施形態に係る、キャラクターを視覚的に動かすシステムを説明する図である。アニメーション装置１０６は、リアルな動作主体又はバーチャルな動作主体の運動学的動作を受信し、筋肉活性化を決定し、筋肉活性化に応じた筋肉変形を伴ってキャラクターを動かすように構成されている。
【００２３】
アニメーション装置１０６は、汎用コンピュータシステム及び／又は特別に設計されたアニメーションハードウェアを用いて具現化可能である。アニメーション装置１０６は、コンピュータ読み取り可能な媒体１０５に記憶された指令を実行することが可能な一以上のプロセッサ１０７を備えている。コンピュータ読み取り可能な媒体１０５は、筋肉活性化決定部１０９と、キャラクター作動部１１１と、を備えている。筋肉活性化決定部１０９によって用いられる様々な手法は、図２〜図４を参照して本明細書に記述されている。
【００２４】
キャラクター作動部１１１は、変形可能な筋肉を有するキャラクターを動かすために知られている、利用可能な任意の技術を具現化することができる。キャラクター作動部１１１によって生成されたキャラクターの筋肉変形は、筋肉活性化決定部１０９によって決定された筋肉活性化に応答している。
【００２５】
アニメーション装置１０６は、オプションとして、モーションキャプチャー装置１０２に接続可能である。モーションキャプチャー装置１０２は、リアルな動作主体の動作を捕獲することができる。例えば、モーションキャプチャー装置１０２は、分類済みマーカー若しくは未分類マーカー、運動センサ、又は、動作を捕獲するための他の公知の技術を使用することができる。当業者にとっては、本発明の精神を逸脱しない範囲での他の例が明らかであろう。
【００２６】
また、アニメーション装置１０６は、オプションとして、動作入力装置１０４に接続可能である。動作入力装置１０４は、動作入力を受信することができる。例えば、動作入力装置１０４は、ヒトであるアニメータによって操作されることによって、アバターを一連の位置に置くことができる。他の例として、動作入力装置１０４は、例えば、ジョイスティック又はタッチパッドから動作入力を直接受信することができる。さらに他の例として、動作入力装置１０４は、動作が電子的に記録されたコンピュータ読み取り可能な媒体とすることができる。当業者にとっては、本発明の精神を逸脱しない範囲での他の例が明らかであろう。
【００２７】
キャラクター作動部１１１によって生成されたアニメのキャラクターは、様々な装置に出力可能である。例えば、アニメーション装置１０６は、表示装置１１０に接続可能であり、アニメのキャラクターは、表示装置１１０上に表示される。他の例として、アニメーション装置１０６は、出力装置１０８に接続可能であり、出力装置１０８は、アニメのキャラクターを記憶したり、伝送したり、作動させたりする。出力又は表示のための装置のこれらの例は、説明を目的として提供されたものであり、限定するものではない。当業者にとっては、本発明の精神を逸脱しない範囲での他の例が明らかであろう。
【００２８】
ここで図２を参照すると、本発明の一実施形態に係る、筋肉活性化を決定する方法が説明されている。一実施形態によると、本方法は、筋肉活性化決定部１０９によって実行される。
【００２９】
本方法は、運動学的動作（２０２）で始まる。運動学的動作は、（例えば、並進関節すなわちスライダー関節の場合には、）アニメのキャラクターの一以上の角度又は位置の時間ごとの値の集合である。例えば、運動学的データは、単一の関節角度及びその時間導関数として提供可能である。他の例として、運動学的動作は、複数の関節角度及び様々な時間標本でのそれらの値として提供可能である。運動学的動作は、関節のある任意のオブジェクトのポーズの経時変化を記述することができる。
【００３０】
運動学的動作（２０２）は、様々な手法で取得可能である。例えば、運動学的動作（２０２）は、モーションキャプチャー、動的シミュレーション、（運動学的データがキーフレームの集合から取得される）キーフレームアニメーション、（ユーザによって特定されたパラメータが運動学的動作にマッピングされる）プロシージャアニメーションによって、又は、動作ライブラリから取得可能である。本発明の一実施形態によると、関節角度軌道を取得するためのモーションキャプチャーデータに対する運動学的骨格の適合は、２００２年１０月３０日に出願された米国特許出願第１０／２８４，７９８号「人体測定に基づく骨格適合」に記述されたマーカーに基づく人体測定骨格動作適合等といった手法を用いて具現化可能であり、当該文献は、参照により本明細書に一体的に組み込まれるものとする。当業者にとっては、本発明の精神を逸脱しない範囲での他の例が明らかであろう。
【００３１】
いくつかの具現化において、運動学的動作は、アニメのキャラクターとは異なる関節特性及びセグメント特性を有する動作主体から取得可能である。モーションキャプチャーから取得された運動学的動作は、例えば、動作が捕獲された動作主体の関節角度を記述することができる。これらの場合において、取得された運動学的動作が再捕獲されることによって、運動学的動作（２０２）が、アニメのキャラクターの関節角度を記述することができるようになる。
【００３２】
本発明の一実施形態によると、運動学的動作（２０２）は、フィルタリングされる。運動学的動作（２０２）は、利用可能な任意の無限インパルス応答（ＩＩＲ）フィルタ又は有限インパルス応答（ＦＩＲ）フィルタを用いてフィルタリング可能である。運動学的動作（２０２）は、一般的には、ローパスフィルタを用いてフィルタリングされる。例えば、運動学的動作（２０２）は、四次ＦＩＲローパスバターワースフィルタを用いてフィルタリング可能である。
【００３３】
関節トルク（２０６）運動学的動作（２０２）から推定される（２０４）。関節トルクを推定する（２０４）手法が、図３を参照して本明細書に記述されている。推定された関節トルク（２０６）は、アニメのキャラクターの関節のトルクを記述する。本発明の一実施形態によると、推定された関節トルク（２０６）は、キャラクターの外部荷重に加え、運動学的動作の加速度、速度及び位置を反映している。
【００３４】
本発明の一実施形態によると、推定された関節トルク（２０６）は、フィルタリングされる。推定された関節トルク（２０６）は、利用可能な任意の無限インパルス応答（ＩＩＲ）フィルタ又は有限インパルス応答（ＦＩＲ）フィルタを用いてフィルタリング可能である。推定された関節トルク（２０６）は、一般的には、ローパスフィルタを用いてフィルタリングされる。例えば、推定された関節トルク（２０６）は、四次ＦＩＲローパスバターワースフィルタを用いてフィルタリング可能である。
【００３５】
推定された関節トルク（２０６）から、筋肉活性化（２１０）が決定される（２０８）。筋肉活性化（２１０）は、モデルの特定の筋肉の活性度を示す値である。本発明の一実施形態によると、筋肉活性化（２１０）は、筋力分布法（muscle force distribution method）を用いて、関節に関して決定可能である。筋肉活性化（２１０）は、関節に作用する正味筋力の結果生じるトルクが好適な関節トルクを生成するという制約を受けて最適化される。関節に作用する正味筋力の結果生じるトルクは、例えば、各筋肉に関する筋力及びモーメントアームの積と、関節に作用する全ての筋肉に関する残留トルクの和と、の合計として与えられる。
【００３６】
【数１】
2008546453.tif 000003
【００３７】
ここで、ｒｍ，ｊは、関節ｊに作用する筋肉ｍに関するモーメントアームであり、ｆｍは、筋肉ｍの力であり、Ｍは、関節ｊに作用する全ての筋肉の集合である。
【００３８】
各筋肉に関するモーメントアームは、「線分モデル（line segment model）」としても知られている線分筋肉配列構造（line segment muscle geometry configuration）（２０７）から決定可能である。線分筋肉配列構造（２０７）は、例えば、一般的な運動学的モデル又は特別な運動学的モデルに基づくことができる。線分モデルは、ここでは説明を目的として示されており、当業者にとっては、本発明の精神を逸脱しない範囲での筋肉に関するモーメントアームを決定する他の手法が明らかであろう。
【００３９】
筋力は、筋肉活性化の関数であり、例えば、筋力モデル又は区分的線分モデル（piecewise line segment model）を用いて決定可能である。筋力モデルの例としては、線形最大力モデル（linear maximum force model）及びヒル筋肉モデルが挙げられるが、これらに限定されない。筋力モデルは、活性化に関して力を表現する任意の関数とすることができる。また、筋力モデルのいくつかは、筋肉の長さ、収縮速度等といったパラメータを含む。他の筋力モデルが、キャラクターによって付与される非筋力の活性化に適用される。例えば、筋力モデルは、電流（「活性化」）に関して駆動力（「筋力」）を与えるものであってもよい。これらの例は、ここでは説明を目的として提供されており、当業者にとっては、本発明の精神を逸脱しない範囲での筋力モデルの他の例が明らかであろう。
【００４０】
本発明の一実施形態によると、筋肉活性化は、最低限の活性化条件に従うことができる。筋肉活性化は、結果として得られる正味筋力が好適な関節トルクを生成し、任意の筋肉活性化が所与の活性化の値を超えているという条件に従って最適化される。例えば、最低限の活性化は、キャラクターの大腿四頭筋が少なくとも５０％は活性化されなければならないと特定してもよい。最低限の筋肉促進に従った筋肉活性化の決定（２０８）によって、アニメのキャラクターが、先行した筋緊張、等尺性屈曲、けいれん及び他の筋腱の現象をもっともらしく描写することが可能である。
【００４１】
本発明の一実施形態によると、筋肉活性化（２１０）は、フィルタリングされる（２１２）。筋肉活性化（２１０）は、利用可能な任意の無限インパルス応答（ＩＩＲ）フィルタ又は有限インパルス応答（ＦＩＲ）フィルタを用いてフィルタリング可能である。筋肉活性化（２１０）は、一般的には、ローパスフィルタを用いてフィルタリングされる。例えば、筋肉活性化（２１０）は、四次ＦＩＲローパスバターワースフィルタを用いてフィルタリング可能である。
【００４２】
キャラクターは、筋肉活性化（２１０）に応じた筋肉変形を伴って動かされる（２１４）。例えば、筋肉活性化（２１０）は、キャラクターの筋肉が変形されるべきかを決定するために使用可能である。キャラクターは、好適に変形された筋肉を伴って動かされ、その結果、活性化駆動筋肉変形を有するアニメのキャラクターを生じる。アニメのキャラクターは、リアリティ又はファンタジーに基づく多数の特性を有する、物理的な実施形態又は仮想的な実施形態を伴う任意のキャラクターとすることができる。
【００４３】
筋肉の変形は、一以上の筋肉の外観における変化である。筋肉活性化に対する変化が筋肉の形状の外観における変化又は周囲の皮膚モデルの外観における変化を生じる場合には、筋肉の変形は、筋肉活性化に応答する。例えば、ほとんど活性化されていない二頭筋と比較すると、活性化された二頭筋は、一般的には、大きくなったように見え、おそらくは異なる形状となる。キャラクターの筋肉は、例えば、変形可能な皮膚モデル、有限要素シミュレーション、色モデル及び／又はパラメータ化された筋肉モデルを用いて変形可能である。当業者にとっては、本発明の精神を逸脱しない範囲での筋肉活性化に応じて筋肉を変形する他の手法が明らかであろう。
【００４４】
活性化駆動筋肉活性化に伴ってキャラクターを動かすことは、異なる種類の荷重及び移動に関する異なる筋肉変形を可能とし、キャラクターの動作をよりリアルにする。例えば、腕が何も運んでいない場合と比べて、腕が重量物を運んでいる場合には、腕の筋肉は異なるように収縮しているであろう。他の例として、すばやく動いている腕の筋肉は、ゆっくり動いている腕とは異なるように収縮しているであろう。様々な荷重及び移動に関して異なるように筋肉の移動を変形することによって、キャラクターの環境の力及び張力は、完成したアニメーションにおいてもっともらしく描写可能である。
【００４５】
ここで図３を参照すると、本発明の一実施形態に係る、外部荷重の推定を用いて関節トルクを決定する方法が説明されている。逆動力学（３０４）によって、運動学的動作（２０２）及び身体モデル（３０３）から、推定された関節トルク（３０５）が決定される。身体モデル（３０３）は、セグメント質量特性を有する（関節及び四肢からなる）運動学的関節モデルである。身体モデル（３０３）は、四肢の長さと、四肢の質量分布と、を記述し、オプションとして、四肢間の関節の種類を記述する。身体モデル（３０３）は、例えば、一般的な運動学的関節モデル、特別な運動学的関節モデル、Ｂ−スプライン固体に適合した質量集合、身体測定による質量データ、及び／又は、（例えば、「身体測定に基づく外骨格適合」用途に記述された）身体測定による骨格適合から取得又は修正可能である。四肢の質量分布は、例えば、筋肉のサイズ及び形状、体脂肪率、骨密度、及び／又は、キャラクターが運ぶ任意の追加質量又は衣服を反映するように構成される。また、オブジェクトの質量分布を推定する本発明に適用可能な他の手法が、２００４年６月２４日に出願された米国特許出願番号第１０／８７７，７１３「様々な幾何形状を用いたオブジェクトの質量集合の推定」に記述されており、当該文献は、参照により本明細書に一体的に組み込まれるものとする。運動学的動作（２０２）が床に対して向けられていれば、運動学的動作（２０２）及び身体モデル（３０３）は、重力による外部荷重を決定するために使用可能である。
【００４６】
逆動力学（３０４）は、推定された関節トルク（３０５）を決定するために使用される。一般的に、関節の集合のトルクは、集合内の他の関節を参照して求められる。第一の関節のトルクは、共通に接続するセグメントを有する他の関節（親と呼ばれることが多い）を参照して求められる。親関節のトルクは、順次その親関節を参照して求められ、トルクは、階層が上位の関節を参照して記述される。
【００４７】
例えば、人型のキャラクターの場合には、拇指関節は、足首関節を参照して提供されており、足首関節のトルクは、膝関節を参照して提供されており、膝関節のトルクは、股関節を参照して提供されている等とすることができる。外部荷重を与え、支持する身体に関して、これらの関節の少なくとも一つは、外部オブジェクト又は基準座標系を参照して提供されるであろう。例えば、人モデルの多くにおいて、各関節のトルクは、階層的に親を参照して提供される。階層の頂点となる関節（多くの場合、骨盤）のトルクは、基準座標系を参照して提供される。環境を参照して提供されるトルクを有する階層の頂点の関節の場合には、実際には、荷重を環境に付与しないことがある。これらの場合には、環境を参照して関節に付与されるトルクは物理的にありえそうもなく、すなわちリアルではないので、トルクは模擬的である。
【００４８】
推定された関節トルク（３０５）は、アニメのキャラクターの関節に作用するトルクを記述するが、一般的には、重力以外の外部荷重を考慮しない。他の外部荷重が考慮されないので、推定された関節トルク（３０５）は、実際にはトルクを与えない関節に作用する外部トルクの形態で非ゼロ模擬荷重を含む。一例として、人モデルにおいて、外部荷重は、骨盤に存在するように見える。骨盤が環境にトルクを与えない場合には、この外部荷重は、全てが模擬荷重である。このように、模擬荷重は、推定された関節トルク（３０５）に含まれるものと理解可能である。模擬荷重は、物理的には存在しないものとして知られている、環境に与えられるこれらの推定された関節トルク（３０５）からなる。
【００４９】
推定された関節トルク（３０５）の模擬荷重は、自然発生現象によって説明可能な外部荷重を決定するために使用される。例えば、床反荷重（３０９）は、推定された関節トルク（３０５）から推定可能である（３０８）。床反荷重を推定する（３０８）手法は、図４を参照して本明細書に記述されている。
【００５０】
外部荷重が身体モデル（３０３）に付与されることによって、荷重が付与された身体モデル（３１２）が生成される。例えば、床反荷重（３０９）が、身体モデル（３０３）の個別圧力中心に付与される（３１０）。荷重が付与された身体モデル（３１２）は、身体モデル（３０３）に作用している外部荷重を備えている。
【００５１】
逆動力学（３１４）が、推定された関節トルク（２０６）を決定するために使用される。逆動力学は推定された外部荷重を有する荷重が付与された身体モデル３１２に基づいているので、推定された関節荷重（２０６）は、関節に作用する実際のトルクを、アニメのキャラクターによって経験されたものとして、より厳密に反映するであろう。外部荷重が決定されて身体モデルに付与されるので、推定された関節トルク（２０６）は、ありえない、すなわち非物理的な力に依存せずにキャラクターの筋肉の実際の活動を反映することによって、キャラクターの動作が説明されるであろう。それゆえ、推定された関節トルク（２０６）は、キャラクターアニメーションを説得力のあるものとするために使用される筋肉活性化の決定に好適である。
【００５２】
図４は、本発明の一実施形態に係る、床反荷重を推定する方法を説明する図である。本方法は、一般的には、非ゼロ模擬荷重から実際にありえる外部荷重を決定するために使用される。床反荷重は、本明細書では実際にありえる外部荷重の例として提供されるが、環境及びアニメのキャラクターの活性化に依存するので、多種の外部荷重を決定することが望ましい。
【００５３】
正味圧力中心での床反荷重のトルク及び力に加えて、床反荷重の正味圧力中心が決定される（４０２）。正味圧力中心は、模擬荷重が床反荷重に変換される床上の点である。例えば、模擬荷重が骨盤に付与されるいくつかの非ゼロトルク及び非ゼロ力を有する場合には、正味圧力中心は、床反荷重が身体モデルに作用する見かけ上の模擬荷重を低減又は消すために付与されるべき床上の点である。
【００５４】
複数の身体的特性が、正味圧力中心と、正味圧力中心における床反荷重のトルク及び力と、を推定するのに有効である。模擬荷重を床反荷重に変換するため、床反荷重の力成分は、模擬荷重の力成分と同じ大きさ及び向きを有するべきである。それゆえ、正味圧力中心における力は、模擬荷重の力から決定可能である。
【００５５】
【数２】
2008546453.tif 000004
【００５６】
模擬荷重を床反荷重に変換するため、床反荷重のトルクは、正味圧力中心の位置に依存するであろう。模擬荷重のトルクは、正味圧力中心と、正味圧力中心での床反荷重のトルク及び力と、に関して記述可能である。
【００５７】
【数３】
2008546453.tif 000005
【００５８】
ここで、ｒは模擬荷重が付与される位置と正味圧力中心との間のベクトルである。床平面内の正味圧力中心でのトルク成分は、ゼロであると仮定可能である。床平面に垂直な軸まわりのトルク成分は、床反荷重トルクの唯一の未知の成分である。さらに、正味圧力中心が床平面上に位置しているので、床平面における二次元の正味圧力中心の位置座標は、正味圧力中心の唯一の未知の成分である。
【００５９】
このように、床反荷重の正味圧力中心、並びに、正味圧力中心における床反荷重の力及びトルクは、床平面における正味圧力中心の位置と、床平面に垂直な軸まわりの正味圧力中心におけるトルクと、を算出することによって決定可能である（４０２）。
【００６０】
床反荷重を決定するために本明細書に記述された仮定、観測及び手法は、説明を目的として提供されたものであり、限定するものではない。当業者にとっては、本発明の精神を逸脱しない範囲での他の手法が明らかであろう。
【００６１】
続いて、正味圧力中心が支持多角形の外側にあるか否かが決定される（４０４）。支持多角形は、アニメのキャラクターが接触する床で、全ての点及びこれらの点を接続する全ての線分を含む、凸で閉じた形状である。例えば、床上に二本の足を有するキャラクターは、二本の足と、二本の足間の領域と、を含む支持多角形を有するであろう。
【００６２】
推定された正味圧力中心が支持の角形の外側にあると決定される（４０４）場合には、正味圧力中心は、支持多角形の内側に移動される（４０６）。例えば、正味圧力中心は、元の位置から、支持多角形の内側の最近点に移動可能である（４０６）。実際の正味圧力中心が支持多角形の外側にあることは、物理的にありえない。例えば、アニメータがキャラクターの質量分布が与えられた物理的に受け入れがたい位置においてキャラクターをモデル化しようとしている場合には、推定された正味圧力中心（４０２）は、支持多角形の外側となることがある。正味圧力中心を支持多角形の内側に移動させること（４０６）によって、物理的にありえる床反力が提供される。
【００６３】
トルク及び力は、個別圧力中心に分配される（４０８）。個別圧力中心は、環境と接触する点に対応している。例えば、個別圧力中心は、特定の身体部分に関連する接触点の圧力中心とすることができる。本発明の一実施形態によると、床反荷重は、キャラクターが床と接触する点にわたって分散される。接触点（例えば、肢）に分散された荷重の成分は、単一の個別圧力中心で発生したものとして近似可能である。例えば、床上に二本の足を有するキャラクターは、各足に関して一つずつ、二つの個別圧力中心を有する。床反荷重は、個別圧力中心のそれぞれと、支持多角形内の床反荷重の推定された正味圧力中心と、の間の相対距離に基づいて、各足の個別圧力中心に分散可能である（４０８）。床反荷重の正味圧力中心から遠い圧力中心と比較して、床反荷重の正味圧力中心に近い圧力中心は、より多くの床反荷重を支えるであろう。床反荷重を分散するこれらの手法は、説明を目的として提供されたものであり、本発明の精神を逸脱しない範囲での複数の点にわたって荷重を分散する任意の公知の手法が使用可能である。
【００６４】
個別圧力中心は、必ずしもキャラクターの足に限定されるわけではない。例えば、逆立ちしているキャラクターは、手のみに床反力が付与されることになる。他の例として、九本の足を有するファンタジーキャラクターは、九本の足全てに（又は、例えば、キャラクターの移動、歩行、上昇等に応じた九本の足の部分集合に）床反力が付与されることになる。さらに、キャラクターの移動の過程において、床に接触する点が経時的に変化することがよくある。力が分散された圧力中心は、キャラクターの歩行、跳躍、側転等に応じて変化可能である。キャラクターをその移動に応じて支持する圧力中心の変化は、体重移動及びポーズ変化に応じた筋肉変形のリアルな記述を容易にする。キャラクターの移動に応じて重量負担が増す筋肉群は、変形することによってその負荷を記述することができ、キャラクターの移動に応じて重量負担が減る筋肉群は、変形することによって弛緩状態を記述することができる。
【００６５】
以上、好ましい実施形態及びいくつかの他の実施形態を参照して本発明を詳細に図示及び記述したが、本発明の精神及び範囲を逸脱しない範囲で、形態及び詳細における様々な変形が当業者によって実行可能であることが理解されるであろう。
【図面の簡単な説明】
【００６６】
【図１】本発明の一実施形態に係る、ビジュアルキャラクターを動かすシステムを説明する図である。
【図２】本発明の一実施形態に係る、筋肉活性化を決定する方法を説明する図である。
【図３】本発明の一実施形態に係る、外部荷重の推定を用いて関節トルクを決定する方法を説明する図である。
【図４】本発明の一実施形態に係る、床反荷重を推定する方法を説明する図である。
【図１】
2008546453.tif 000006
【図２】
2008546453.tif 000007
【図３】
2008546453.tif 000008
【図４】
2008546453.tif 000009