(57)【要約】【課題】複数の教師動作から汎用的に入力動作のスタイルを変形させることが可能な変形データを抽出する変形データ抽出方法を提供する。【解決手段】基準動作と教師動作から差分となる変形データを抽出する抽出手段２１と、ユーザーから教師動作の動作スタイルの入力を受け付ける手段と、抽出手段で抽出した変形データとユーザーから入力された教師動作の動作スタイルを関連付けて記録する手段２２と、ユーザーから入力動作に対して適用する動作スタイルの入力を受け付ける手段と、記録している教師動作の動作スタイル及び変形データからユーザーから入力された動作スタイルに基づき変形データを検索する検索手段３１と、検索手段で検索した変形データを入力動作に適用する適用手段３２と、適用して生成された出力データを出力する出力手段とを含む。【選択図】図９
2008015713.tif 000002
【特許請求の範囲】
【請求項１】
基準動作と教師動作から差分となる変形データを抽出する抽出手段と、
ユーザーから教師動作の動作スタイルの入力を受け付ける手段と、
抽出手段で抽出した変形データとユーザーから入力された教師動作の動作スタイルを関連付けて記録する手段と、
ユーザーから入力動作に対して適用する動作スタイルの入力を受け付ける手段と、
記録している教師動作の動作スタイル及び変形データからユーザーから入力された動作スタイルに基づき変形データを検索する検索手段と、
検索手段で検索した変形データを入力動作に適用する適用手段と、
適用して生成された出力データを出力する出力手段とを含む動作変形システム。
【請求項２】
前記変形データは時間変形データと姿勢変形データとからなり、
時間変形データは基準動作と教師動作の時間的対応関係を示し、
姿勢変形データは基準動作と教師動作の対応する時間での姿勢及び／又は動作の差分を示す
前記請求項１に記載の動作変形システム。
【請求項３】
ユーザーから基準動作に対する動作の節目を表すキー時刻の組を受け付ける手段と、
ユーザーから教師動作に対する動作の節目を表すキー時刻の組を受け付ける手段を新たに含み、
基準動作及び教師動作に対して設定したキー時刻の組が対応しており、
ユーザーから受け付けた相互に対応するキー時刻の組に基づいて抽出部が変形データを抽出する
前記請求項１または２に記載の動作変形システム。
【請求項４】
動作データから動作の節目を表すキー時刻を探索する手段を新たに含み、
基準動作及び教師動作から検索されたキー時刻の組が対応しており、
設定された相互に対応するキー時刻の組に基づいて抽出手段が変形データを抽出する
前記請求項１ないし３のいずれかに記載の動作変形システム。
【請求項５】
前記適用手段は入力動作に適用度に応じた変形データを適用する
前記請求項１ないし４のいずれかに記載の動作変形システム。
【請求項６】
前記変形データはキャラクタの身体の各主要部位の、それぞれ特定の身体部位を基準とした相対的な位置及び／又は向きを含む
前記請求項１ないし５のいずれかに記載の動作変形システム。
【請求項７】
基準動作と教師動作から差分となる変形データを抽出する抽出手段と、抽出した変形データを入力動作に適用する適用手段とを備え、
抽出手段が基準動作の対象姿勢の手先及び足先の位置と前回姿勢の手先及び足先の位置の差分に基づく相対座標系によって、手先及び足先の位置及び／又は向きが表された変形データを抽出し、
適用手段が抽出手段により抽出された変形データを入力動作の対象姿勢の手先及び足先の位置と前回姿勢の手先及び足先の位置の差分に基づく相対座標系によって、変形データを入力動作に適用する動作変形システム。
【請求項８】
キー時刻の組が設定されている基準動作とキー時刻の組が設定されている教師動作から、基準動作と教師動作の各キー時刻間の区間における速度変化を示す時間変形データを各区間毎に求めるステップと、
基準動作の各キー時刻の姿勢と教師動作の各キー時刻の姿勢から姿勢の差分を求めて各キー時刻での姿勢変形データを取得するステップと、
基準動作の各時刻の姿勢と前記抽出した時間変形データから求まる当該基準動作の時刻に対応する教師動作の時刻の姿勢とから姿勢の差分を求めて各時刻での姿勢変形データを取得するステップと、
求めた時間変形データ、キー時刻での姿勢変形データ及び各時刻での姿勢変形データを変形データとして記録するステップとを含む変形データ生成方法。
【請求項９】
ユーザーから教師動作の動作スタイルを受け付けるステップとを新たに含み、
ユーザーから受け付けた動作スタイルを取得した変形データと関連付けて記録する
前記請求項８に記載の変形データ生成方法。
【請求項１０】
前記請求項８または９の変形データの時間変形データからキー時刻の組が設定されている入力動作を時間変形するステップと、
変形データのキー時刻での姿勢変形データを入力動作のキー時刻の姿勢に適用するステップと、
変形データの各時刻での姿勢変形データを時間変形した入力動作の各時刻の姿勢に適用するステップとを含む変形データ適用方法。
【請求項１１】
前記変形データはキャラクタの身体の各主要部位の、それぞれ特定の身体部位を基準とした相対的な位置及び／又は向きを含む
前記請求項８ないし１０のいずれかに記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力動作に適用することでスタイルを変形した出力動作にするための変形データを生成する変形データ生成方法及びその方法に関する。
【背景技術】
【０００２】
人間の動作データの変形には大きな需要がある。状況と合致するように動作データを修正することができれば、既存の動作データを効果的に再利用することができる。
【０００３】
現在一般的に用いられているアニメーションシステムは、直接的な方法で動作データを変更するための動作編集インターフェースを備えている。このようなインターフェースを用いることで、アニメーターは、例えば、キーフレームにおける関節角度を変更したり、手先や足先の位置を変更したり、動作の速度を調節したりといった、直接的な変形を行うことができる。
【非特許文献１】Rose C, Cohen M F, Bodenheimer B. Verbs and Adverbs: Multidimensional motion interpolation. IEEE Computer Graphics and Applications. 18(5), 32-40, 1998.
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、アニメーターが動作データを変形しようとするときは、一般に、動作のスタイルを変更したい、という場合が多い。例えば、ある歩行動作があったときに、その動作を楽しそうな歩行動作、疲れたような歩行動作、興奮したような歩行動作に見せたい、といった場合がある。このような動作スタイルの変形を、背景技術で述べたような既存のシステムで実現することは困難である。というのは、既存のシステムを用いて動作スタイルの変形を実現するためには、アニメーターは、関節角度・手足の位置・動作速度の修正などの細かい直接的な修正を繰り返し行う必要がある。さらに、このような変形を実現するためには、動作が楽しそうに、疲れたように、興奮したように見せるためには動作をどのように変形させるべきかという、人間の動作に関する知識が必要となる。故に、このような動作スタイルの変形は極めて困難であり、且つ、時間を要する作業である。
【０００５】
そこで、動作データのスタイルを変更するためには動作データをどのように変形するべきかという動作変形に関する知識を既存の動作データから抽出することができれば、動作変形を容易に実現することが可能になると考えられる。しかし、既存の技術では、このような動作変形は困難である。
【０００６】
既存の動作データをもとに新しい動作を生成するための代表的な手法として、動作ブレンディング［Rose C, Cohen M F, Bodenheimer B. Verbs and Adverbs: Multidimensional motion interpolation. IEEE Computer Graphics and Applications. 18(5), 32-40, 1998.］がある。しかし、この動作ブレンディングは、単純に動作データの関節角度を混合することで新しい動作を生成するため、動作データ間で運動の方向や姿勢の向きが異なる場合を取り扱うことができないため、前記課題を解決することはできない。例えば、殴る動作、強く殴る動作及びアッパーカット動作を混合して、強くアッパーカットを行う動作を生成することはできない。なぜならば、殴る動作とアッパーカットでは手の動作の方向が異なるからである。この場合、殴る動作と強く殴る動作の主な相違は、強く殴る動作では手の水平方向の動きが大きくなっている点にある。しかし、動作ブレンディング手法を用いて、このような変化をアッパーカット動作に適用することはできない。アーパーカット動作では手は垂直方向に移動するため、強くアッパーカットを行う動作に見せるためには、手の垂直方向の動きを大きくする必要がある。仮に、強く殴る動作とアッパーカット動作をブレンドした場合、手の水平方向の動きが大きくなってしまい、不自然な出力動作となる。また、別の例としては、歩行動作、幸せな歩行動作、走る動作をブレンドすることによって、楽しそうに走る動作を生成することはできない。楽しそうな歩行動作を走る動作にブレンディングすることによって、出力動作は走る動作ではなく歩行動作に近いものになってしまう。これは、姿勢に関する変形だけではなく、大域的な移動も同時にブレンディングされるからである。
【０００７】
本発明は前記課題を解決するためになされたものであり、複数の動作データから広い範囲の入力動作のスタイルを変形させることが可能な変形データを抽出する変形データ抽出方法を提供することを目的とする。また、抽出した変形データを入力動作に適用する変形データ適用方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
（本発明の概要）
本発明は、これらの課題を、２つの動作データ間の変化を表す情報を、抽象的な変形データとして表現することで解決する。変形データを抽象的な形式で表現することにより、もとの動作データと動作の方向や大域的な移動が異なる幅広い入力動作に対して、変形データを適用することができる。変形データは、動作データ間の姿勢に関する姿勢変形データと時間に関する時間変形データからなる。姿勢変形データを表現するために、一般的な関節角度による表現ではなく、基準となる身体部位の相対位置による表現を使用する。また、腰の動きを相対的、絶対的位置及び方向に分割して表現する。また、手先や足先の位置や向きの変化は、動作の方向から計算されるローカル座標で表現される。
【０００９】
本発明により、例えば、歩行動作と疲れた歩行動作の２つの動作データから、「疲れ」に関する変形データを抽出することができる（図１）。ここで、抽出した変形データを別の動作に適用することで新しい動作を生成することができる。一例として、「疲れ」に関する変形データを、走る動作に適用することで、疲れた走る動作を生成することができる。このとき、変形データの適用度を調整することで、どの程度「疲れ」動作に見せるかを変化させることができる。つまり、本発明の動作変形手法では、３つの動作データから、一つの新しい動作を生成する。また、あらかじめ抽出した多数の変形データをデータベースに蓄積しておき、入力動作や利用者の指定したスタイルに応じてデータベースから適切な変形データを選択し、入力動作に適用することで、任意の入力動作の動作スタイルを変形することができる。
【００１０】
以下、より詳細に項毎に解決するための手段を示す。
（１）
本発明に係る動作変形システムは、基準動作と教師動作から差分となる変形データを抽出する抽出手段と、ユーザーから教師動作の動作スタイルの入力を受け付ける手段と、抽出手段で抽出した変形データとユーザーから入力された教師動作の動作スタイルを関連付けて記録する手段と、ユーザーから入力動作に対して適用する動作スタイルの入力を受け付ける手段と、記録している教師動作の動作スタイル及び変形データからユーザーから入力された動作スタイルに基づき変形データを検索する検索手段と、検索手段で検索した変形データを入力動作に適用する適用手段と、適用して生成された出力データを出力する出力手段とを含むものである。
【００１１】
前記「抽出手段で抽出した変形データとユーザーから入力された教師動作の動作スタイルを関連付けて記録する手段」により、データベースを構築することが望ましい。このとき、ユーザーから基準動作又は教師動作の動作種類の入力又は選択を受け付け、この受け付けた基準動作又は教師動作の動作種類を、変形データ及び教師動作の動作スタイルとともに関連付けて記録することが望ましい。そして、検索時にも動作スタイルだけでなく入力動作の動作種類も受け付けることで、動作スタイル及び入力動作の動作種類に合致する変形データを検索することができ、合致する変形データを入力動作に適用することができ、所望の自然な動作を生成することができる。
【００１２】
検索手段は、入力される検索キーに完全一致した動作スタイル及び／又は動作種類に係る変形データを検索するのではなく、類似する動作スタイル及び／又は動作種類に係る変形データも検索することができる。シソーラスを用いて意味的に検索キーに近いものの変形データも検索する構成にすることもできる。
【００１３】
検索手段は、入力動作に類似する基準動作又は教師動作の変形データを検索することもできる。動作の類似については既に公知技術があるためここでは詳細に言及しない（例えば、動作動作(周期的であるか、周期的でない)のタイプ、動作に主に用いられる身体部位、および動作の方向などをパラメータにして類似性を求めることができる）。入力動作に類似する基準動作・教師動作から抽出した変形データであれば、変形データを適用した場合に自然な動作を生成することができる。この場合においては、変形データを記録するときに基準動作又は教師動作も記録する必要がある。ここで、基準動作又は教師動作ではなく少なくとも入力動作との類似処理に必要なデータを記録していてもよい。このデータは基準動作又は教師動作の一部又は変換したものであってもよい。
【００１４】
（２）
本発明に係る動作変形システムは必要に応じて、前記変形データは時間変形データと姿勢変形データとからなり、時間変形データは基準動作と教師動作の時間的対応関係を示し、姿勢変形データは基準動作と教師動作の対応する各時刻における姿勢及び／又は動作の差分を示すものである。
【００１５】
（３）
本発明に係る動作変形システムは必要に応じて、ユーザーから基準動作に対する動作の節目を表すキー時刻の組を受け付ける手段と、ユーザーから教師動作に対する動作の節目を表すキー時刻の組を受け付ける手段を新たに含み、基準動作及び教師動作に対して設定したキー時刻の組が対応しており、ユーザーから受け付けた相互に対応するキー時刻の組に基づいて抽出部が変形データを抽出するものである。
【００１６】
このように本発明によれば、変形データの元になる基準動作及び教師動作それぞれに対応するようにキー時刻の組を設定し、この設定したキー時刻の組に基づいて変形データが生成されるので、基準動作と教師動作を適時に対応付け、教師動作の動作スタイルを良く示す精度の高い変形データを生成することができるという効果を有する。
【００１７】
（４）
本発明に係る動作変形システムは必要に応じて、動作データから動作の節目を表すキー時刻を探索する手段を新たに含み、基準動作及び教師動作から検索された キー時刻の組が対応しており、設定された相互に対応するキー時刻の組に基づいて抽出手段が変形データを抽出するものである。
【００１８】
動作データから動作の節目を表すキー時刻を自動で探索する手段により、ユーザーが手動でキー時刻の組を設定する必要がなくなる。例えば、既知技術を用い、例えば、各関節の位置、角度、速度、角速度の軌道を含む高次元の軌道を次元の低いユークリッド距離空間に当てはめることで、キー時刻を探索することができる。この場合において、キー時刻が必要数以上に検索されるときがあり、この場合にはユーザーに選択を促すか、キー時刻間の時間的距離も考慮しながら（キーフレームとキーフレームの間には最低限必要な時間がある）特徴の程度の高いキーフレームを上からとる。
【００１９】
基準動作又は教師動作のどちらかのみに対して自動又は手動でキー時刻が設定された場合には、既に周知技術となっている類似動作検索又は類似姿勢検索を用いて既に設定されているキー時刻に対応するキー時刻をキー時刻が設定されていない動作を対象として自動的に検出して設定していく。なお、検出されたキー時刻をユーザーに提示して複数あるキー時刻から選択する構成をとることもできる。
【００２０】
（５）
本発明に係る動作変形システムは必要に応じて、前記適用手段は入力動作に適用度に応じた変形データを適用するものである。
【００２１】
このように本発明によれば、入力動作に可変に変形データを適用するので、適用度を小さくした場合には入力動作に与える変形データの動作スタイルの影響度を制御することができ、不自然な動作の生成を防止し、適度な動作を生成することができ、逆に、適用度を大きくした場合にはよりその動作スタイルを強調した動作を生成することができるという効果を有する。
【００２２】
（６）
本発明に係る動作変形システムは必要に応じて、前記変形データはキャラクタの身体の各主要部位の、それぞれ特定の身体部位を基準とした相対的な位置及び／又は向きを含むものである。
【００２３】
このように本発明によれば、変形データは相対的な姿勢表現で示されるので、絶対的な位置、向きが基準動作と異なる入力動作に対しても相対的な姿勢表現である変形データを適用することができ、幅広い入力動作に対応することができるという効果を有する。
【００２４】
後説する実施形態では手先、足先、腰を身体の各主要部位として説示している。また、手先、足先の相対的な位置及び／又は向きを表すための基準部位として、それぞれ、肩、股関節、を説示している。また、腰の相対的な位置及び／又は向きを表すための基準座標系として、両足先の位置から求める標準的な腰の位置及び／向きを説示している。これら以外の主要部位の位置及び／又は向きを変形データに含むこともできるし、これら以外の基準部位の座標系、あるいは別の方法により求めた座標系を基準として主要部位の相対的な位置及び／又は向きを表すこともできる。
【００２５】
また、複数の基準座標系をもとに計算した主要部位の位置及び／又は向きを変形データに含めておくことで、入力動作に応じて最も適切な変形を適用することもできる。
【００２６】
具体的には、仮想空間の絶対座標系を使用するのではなく、基準部位毎に相対座標系を設けてこの相対座標系を使用して、主要部位の位置及び／又は向きの差分を表す。基準動作の基準部位のあるキー時刻の姿勢での位置と前のキー時刻の姿勢での位置の差分ベクトルを基準として相対座標系を設け、基準動作及び教師データの姿勢の間の主要部位の位置及び／又は向きの差分をこの相対座標系上で表す。変形データの適用時においては、入力動作の基準部位の当該キー時刻の姿勢での位置と前のキー時刻の姿勢での位置の差分ベクトルを基準として相対座標系を設け、前記基準動作の相対座標系上の変形データを入力動作の相対座標系上の変形データとした後に、入力動作にこの入力動作の相対座標系上の変形データを加えることで出力動作を生成する。そうすることで、仮想空間の絶対座標系では方向が相反する教師動作、入力動作であっても、変形データを適用して自然な動作を生成することができる。また、必要に応じて変形データを左右反転するなどの処理を加える、同じ身体部位の変形データだけでなく他の身体部位の変形データであっても適用し、自然な動作を生成することができる。
【００２７】
（７）
本発明に係る動作変形システムは、基準動作と教師動作から差分となる変形データを抽出する抽出手段と、抽出した変形データを入力動作に適用する適用手段とを備え、抽出手段が基準動作の対象姿勢の手先及び足先の位置と前回姿勢の手先及び足先の位置の差分に基づく相対座標系によって、手先及び足先の位置及び／又は向きの差分が表された変形データを抽出し、適用手段が抽出手段により抽出された変形データを入力動作の対象姿勢の手先及び足先の位置と前回姿勢の手先及び足先の位置の差分に基づく相対座標系よって、入力動作の手先及び足先の位置及び／又は向きに適用するものである。
【００２８】
（８）
本発明に係る変形データ生成方法は、キー時刻の組が設定されている基準動作とキー時刻の組が設定されている教師動作から、基準動作と教師動作の各キー時刻間の区間における速度変化を示す時間変形データを各区間毎に求めるステップと、基準動作の各キー時刻の姿勢と教師動作の各キー時刻の姿勢から姿勢の差分を求めて各キー時刻での姿勢変形データを取得するステップと、基準動作の各時刻の姿勢と前記抽出した時間変形データから求まる当該基準動作の時刻に対応する教師動作の時刻の姿勢とから姿勢の差分を求めて各時刻での姿勢の変形データを取得するステップと、求めた時間変形データ、キー時刻での姿勢変形データ及び各時刻での姿勢変形データを変形データとして記録するステップとを含むものである。
【００２９】
このように本発明においては、まず、基準動作と教師動作の時間変形データを求め、求めた時間変形データを用いて相互に対応する姿勢から各時刻での姿勢変形データを求めているので、各キー時刻での姿勢変形データとも合わせて基準動作のある時刻の姿勢と教師動作の対応する時刻の姿勢を適切に合致させて差分データを求めており、教師動作の動作スタイルを精度高く示す変形データを取得することができるという効果を有する。
【００３０】
各ステップは、当業者で明らかであるように、プロセッサ及びメモリを備えるコンピュータが実行する。
【００３１】
（９）
本発明に係る変形データ生成方法は必要に応じて、ユーザーから教師動作の動作スタイルを受け付けるステップとを新たに含み、ユーザーから受け付けた動作スタイルを取得した変形データと関連付けて記録するものである。
【００３２】
このように本発明によれば、変形データ及び動作スタイルを関連付けて蓄積するので、一つの変形データを生成直後に一回のみ使用するのではなく、ユーザーの所望する動作スタイルの変形データを必要に応じて読み出して適用し、有効に活用することができるという効果を有する。
【００３３】
（１０）
本発明に係る変形データ適用方法は、前記変形データの時間変形データからキー時刻の組が設定されている入力動作を時間変形するステップと、変形データのキー時刻での姿勢変形データを入力動作のキー時刻の姿勢に適用するステップと、変形データの各時刻での姿勢変形データを時間変形した入力動作の各時刻の姿勢に適用するステップとを含むものである。
【００３４】
（１１）
本発明に係る方法は必要に応じて、前記変形データはキャラクタの身体の各主要部位の特定の身体部位を基準とした相対的な位置及び／又は向きを含むものである。
【００３５】
これら前記の発明の概要は、本発明に必須となる特徴を列挙したものではなく、これら複数の特徴のサブコンビネーションも発明となり得る。
【発明を実施するための最良の形態】
【００３６】
（本発明の第１の実施形態）
［１．変形データ］
図１に示すように、基準動作と教師動作から変形データを抽出する。ここで、基準動作は特別なスタイルを持たないものであり、一方、教師動作は基準動作と同じ動作で何らかのスタイルを持つものである。適用度を用いて変形データをある動作に適用することで、スタイル化された動作を生成することができる。ここで、入力動作は単純な動作であり、基準動作と同じ種類の動作であることが望ましい。長く複雑な動作を変形する場合には、複数の単純な動作に分割して対応することができる。
【００３７】
本発明では、予め全ての動作データに、動作のタイミングを表すキー時間を設定する必要がある。一般に、動作は３つの区間に分けられる。図２に示す初期区間、メイン区間、終期区間である。前後の区間の遷移点に、キー時刻を設定する。また、メイン区間中の動作の有効点にも、キー時間を追加的に設定することができる。有効点とは、例えば、跳躍動作で一番高い位置にきたとき、殴る動作でちょうど相手と接触したときなどが該当する。変形に使用する動作データと対応する限り、任意の追加的なキー時間を設定することができる。原則として、キー時間の設定は、ユーザーが手動で行う必要がある。しかし、通常、キー時間を設定すべき時刻は、動作データを見れば明らかであるため、この設定作業はそれほど困難ではなく、数分で設定することができる。もし、動作の中に該当するキー時間が存在しなければ、そのキー時間は設定する必要はない。キー時間が設定された区間のみが、動作変形処理で使用される。
【００３８】
図３に示す通り、変形データＳＦは、次式のような、時間に関する時間変形データ、姿勢に関する姿勢変形データからなる。
【００３９】
【数１】
2008015713.tif 000003
ここで、Ｔi（ｔ）はｉ番目の区間に関する時間変形データ、ΔＰjはｊ番目のキー時間の姿勢に関する姿勢変形データ、ΔＱiはｉ番目の区間の姿勢に関する姿勢変形データである。Ｔi（ｔ）は各区間における基準動作の時間と教師動作の時間の対応関係を表すタイムワープ関数である。ΔＰjは３９次元のベクトルで、各キー時刻における基準動作と教師動作の姿勢の差分を抽象的な形式で表現している。ΔＱiは３９次元ベクトルの時間関数で、各区間における基準動作と教師動作の姿勢の差分の変化を示す。
【００４０】
［１．１  時間変形データ］
時間変形データは基準動作、教師動作の各区間の時間ワープ関数である。
【数２】
2008015713.tif 000004
ここで、ｔbは基準動作のｉ番目の区間における正規化時刻、ｔrは教師動作のｉ番目の区間における正規化時刻である。なお、正規化時刻とは、区間の開始時に０、終了時に１となるように、動作時刻を線形に変換したものである。タイムワープ関数は、２つの動作の同じ区間における対応する時刻同士の組によって表現することができる。
【００４１】
タイムワープ関数を求めるために、２つの動作の同じ区間における対応する姿勢同士を検索し、対応するフレームの組を特定する必要がある。従前から、類似する姿勢を検索するための手法は使用されている（Lee J, Chai J, Reistma P, Hodgins J, Pollard N. Interactive Control of Avatars Animated with Human Motion Data. ACM Transactions of Graphics (Proc. of SIGGRAPH 2002), 22(3), 491-500, 2002.）（Kovar L, Gleicher M. Automated Extraction and Parameterization of Motions in Large Data Sets. ACM Transactions on Graphics (Proc. of SIGGRAPH 2004), 23(3), 559-568, 2004.）。しかしながら、この従前の方法では、２つの動作のスタイルが非常に近い場合にだけ機能する。そこで、本発明では、現在の姿勢が区間の開始姿勢と終了姿勢の間のどの程度の地点にあるかを示す正規化姿勢変化量を使用する。本発明では、前提条件としてあらかじめ各区間を表すキー時間が与えられていることから、このようなアプローチを用いる。あらかじめ各区間が明らかであるため、対応する区間における対応する姿勢を求めるだけで良い。なお、既存の動作ブレンディング手法でも同様のアプローチを用いているが、本発明のように対応する姿勢の検索は行わず、単純に区間同士の時間を線形補間（Rose C, Cohen M F, Bodenheimer B. Verbs and Adverbs: Multidimensional motion interpolation. IEEE Computer Graphics and Applications. 18(5), 32-40, 1998.）（Park S L, Shin H J, Kim T H, Shin S Y. On-Line Motion Blending for Real-time Locomotion Generation. Computer Animation and Virtual Worlds, 15(4), 125-128, 2004.）(Ashraf G, Wong KC. Dynamic Time Warp Based Framespace Interpolation for Motion Editing, Proc. of Graphics Interface 2000. 45-52, 2000.)、パラメータ曲線による補間（Menardais S, Kulpa R, Multon F, Arnaldi B. Synchronization for Dynamic Blending of Motions. In Proceedings of the 2004 ACM Siggraph/Eurographics Symposium on Computer Animation 2004, 2004.）を単純に使用している。そのため、従来の手法では、２つの動作間の細かい速度変化を抽出することはできない。
【００４２】
次式のように、それぞれの動作区間の姿勢に関する正規化姿勢変化量を算出する。
【数３】
2008015713.tif 000005
ここで、ｘj（ｔ）はｊ番目の関節の位置、Ｍはその区間でのフレーム数を示す。姿勢に関する進度を得るために関節位置の差分の累積を計算する。Ｓ（ｔ）は動作区間での正規化時間ｔにおける正規化姿勢変化量を示す。Ｓ（ｔ）はｔが０から１に変化するのに従って、０から１まで単調に増加する。２つの動作の対応する区間の各フレームにおけるＳ（ｔ）を用いることで、その区間のタイム時間ワープ関数を表すことができる。
【００４３】
［１．２  姿勢変形データ］
以降、抽象的な形式で姿勢変形データを獲得するのに用いる姿勢表現をまず説明する。また、エンドエフェクター（例えば、手先、足先）及び腰の位置及び方向の表現方法についても詳細に説明する。
【００４４】
［１．２．１  姿勢表現］
姿勢に関する情報を３９次元ベクトルＰにより表現する（図４参照）。姿勢変形データΔＰi、ΔＱi（ｔ）（前記式（１））は２つの動作の対応する姿勢間の相違を算出してこの形式で表現される。本表現では、一般的に用いられる関節角度による姿勢表現ではなく、主要な身体部位の位置及び方向を使用する。
【００４５】
各手足の姿勢を表現するために、手先及び足先の位置及び方向ｅi、ｒiを使用する。ここで、ｅi、ｒiは、足先の場合は股関節、手先の場合は肩といった、各手先足先の基準となる身体部位のローカル座標系で表現される。ｅglobal,i、ｒglobal,iがｉ番目の手先及び足先のグローバルな位置及び方向であり、Ｒiがｉ番目の手先足先の基準身体部位のローカル座標系を示すとすると、グローバルな位置、方向であるｅglobal,i、ｒglobal,iを、次式のように基準身体部位のローカル座標系に変換することで、ローカルな位置、方向ｅi、ｒiを求める。
【数４】
2008015713.tif 000006
【数５】
2008015713.tif 000007
ローカルな方向ｒiを表現するために四元数(quaternions)を用いる。変形データの抽出処理過程及び適用処理過程において動作の方向的相違を取り扱うため、動作データの動作方向から求まるローカル座標を用いて、手先及び足先の空間的及び方向的変形量を表現する（後説１．２．３を参照）。
【００４６】
腰の絶対的な動き、相対的な動きを分離するために、絶対的位置、相対的位置及び相対的方向、それぞれ、ｐabs、ｐrel、ｑrelを独立に表現する（後説１．２．４を参照）。
【００４７】
背中、首の回転Ｊback、Ｊneckも四元数によって表され、それぞれ、背中、首における複数の関節での平均的な回転を示す。
【００４８】
［１．２．２  姿勢変形データの抽出］
姿勢変形データとして、各キーフレームでの姿勢変化ΔＰｉ、並びに、各動作区間の姿勢変化関数ΔＱｉ（ｔ）を用いる。
【００４９】
入力動作の各区間において、姿勢変形データは次式のように動作に適用される。
【数６】
2008015713.tif 000008
ｔはｉ番目の区間における正規化された時間、ｓは適用度、Ｐi（ｔ）、Ｐi（ｔ）´はそれぞれ入力動作、出力動作の姿勢を示す。入力動作の各フレームは抽象的な表現Ｐi（ｔ）で示され、ΔＰi、ΔＱi（ｔ）はＰi（ｔ）と共にスケールパラメータｓを用いて出力動作Ｐi（ｔ）´を求める。
【００５０】
基準動作及び教師動作の全てのフレームの姿勢は前記した姿勢表現Ｐbase、Ｐreferenceに変換される。キー時間での相違は次式の通り算出される。
【数７】
2008015713.tif 000009
ここで、Ｐreference,j、Ｐbase,jはｊ番目のキー時刻の基準動作、教師動作の姿勢である。
【００５１】
各区間の全てのフレームの姿勢に関する相違ΔＱi（ｔ）は、キー時間の姿勢変形データΔＰ１、…、ΔＰｎ、並びに、教師動作と基準動作との相違から次式のように求まる。
【数８】
2008015713.tif 000010
以上により、全てのキー時刻におけるΔＰiと全ての区間におけるΔＱi（ｔ）が算出され、姿勢変形データとして記録される。
【００５２】
［１．２．３  手先及び足先の変化量の表現］
図５に示すように、手先及び足先の動きから算出されるローカル座標系を用いて、手先及び足先の方向及び位置の変化量を表す。例えば、基準動作「ストレートパンチ」と教師動作「強くストレートパンチ」の間で、手の動きが前方方向に大きくなる場合、その変化量は、運動方向から計算されたローカル座標系のＺ軸方向の変化量として表現される（図５上）。この変化量を入力動作「アッパーカット」に適用すると、アッパーカットにおける手の運動方向から計算されたＺ軸方向の動きが大きくなるため、結果的に、アッパーカットの垂直方向の動きが大きくなる（図５下）。
【００５３】
始めに、キー時刻の手先又は足先の位置ｅbase,iと次のキー時刻の手先又は足先の位置ｅbase,i+1から、次式の通り、各区間の手先及び足先毎の動作方向を算出する。
【数９】
2008015713.tif 000011
【００５４】
手先又は足先の運動方向に基づいて計算される３×３行列のローカル座標系をＭbaseとしたとき、方向ｄbase,iはＭbaseのＺ軸成分として用いられる。次に、Ｚ軸成分と真上方向のベクトルの外積からＸ軸成分を計算する。最後に、Ｘ軸成分とＺ軸成分の外積からＹ軸成分が算出される。ローカル座標を設定した後、基準動作と教師動作の間の手先又は足先の位置、方向の変化量をローカル座標系に変換する。
【数１０】
2008015713.tif 000012
【数１１】
2008015713.tif 000013
ｅはＰの一部であることから、式（１０）は式（７）（８）に含まれる。そして、式（１１）はΔＰj、ΔＱiに適用される。
【００５５】
これらの変形データは入力動作に適用するときには、同様に入力動作の手先及び足先のローカル座標Ｍinputが算出され、変形データはそのローカル座標系で適用される。
【数１２】
2008015713.tif 000014
【数１３】
2008015713.tif 000015
その結果、手先及び足先の運動方向が基準動作と入力動作の間で異なってても、適切な変形を実現できる。
【００５６】
［１．２．４  腰の絶対位置・相対位置・絶対向き・相対向き］
変形を適用するために、各フレームにおける腰の絶対位置・相対位置・絶対向き・相対向きを分離して扱う。
【００５７】
絶対位置ｐabs、絶対向きｑabsは、人体モデルが腰の姿勢を変えることなく直立していると仮定したときの、ニュートラルな位置、向きであるとする（図６参照）。相対位置ｐrel、相対向きｑrelはそれぞれ実際の腰の位置ｐ、方向ｑと絶対位置ｐabs、絶対向きｑabsとの差分である。
【００５８】
始めに、腰の相対的な移動や回転がない状態で人体モデルが直立していると仮定して、両足の位置から各キー時刻における絶対位置ｐabsを算出する。両足が地面に接触しているキー時刻においては、両足の真中の位置を絶対位置の水平方向の座標（ｐabs.X、ｐabs.Z）とする。また、直立した姿勢での腰の高さを垂直方向の座標pabs.Vとする。両足が地面に接触していないキー時刻においては、両脚が地面に接触している前のキー時刻及び後のキー時刻における腰の絶対位置を線形補間することで、そのキー時刻における腰の絶対位置を求める。
【００５９】
次に、各キーフ時刻の絶対向きｑabsはキー時刻の絶対位置ｐabs、j+1と前のキー時刻の絶対位置ｐabs、jから求める。ここでは、ｑabsは水平方向の回転のみを取り扱うので、ｑabsは（ｐabs、j+1、ｐabs、j）の水平要素から求めることができる。動作区間の絶対向きを計算するために、前のキー時刻の向きと次のキー時刻の向きを大円補間(spherical liner interpolation (SLERP))(Pletinckx D. Quaternion calculus as a basic tool in computer graphics. The Visual Computer, 5(2), 1989.)を用いる。
【００６０】
絶対位置ｐabs、絶対向きｑabsが求まれば、手先及び足先のローカル座標系の計算と同様の方法で、腰の絶対向きｑabsから腰のローカル座標系Ｍbaseを求める。
相対位置及び向きｐrel、ｑrelはそれぞれ次式で求まる。
【数１４】
2008015713.tif 000016
【００６１】
【数１５】
2008015713.tif 000017
以上の結果、各キー時刻において、腰の状態を表す（ｐabs、ｐrel、ｑrel）が記録され、姿勢変形データの計算に用いられる。ｑabsは、ローカル座標系Ｍbaseを計算するために使用されるだけであるため、記録する必要はない。
【００６２】
［２．変形データの抽出及び適用］
変形データを抽出時には、本システムでは、まず時間変形データＴi（ｔ）を求め、次にキー時間での姿勢変形データΔＰjを求め、最後に区間の姿勢変形データΔＱi（ｔ）を求める。このような手順で行う理由は、基準動作と教師動作の間の対応するフレームから姿勢変形データを計算するために、教師動作に対して時間変形データを適用する必要があるからである。また、キー時刻における姿勢変形データを先に基準動作に適用し、その後式（８）を用いて動作区間中の姿勢変形データを求める。
【００６３】
変形データの適用も同じ順序でなされる。ユーザーにより適用度が指定されている場合には、全ての姿勢変形データにその適用度を乗算してから適用する。変形時には、入力動作の各フレームの姿勢は抽象的な姿勢表現Ｐ（ｔ）に変換される。そして、姿勢変形データΔＰj、ΔＱi（ｔ）は式（６）を使用して適用される。変形された姿勢表現Ｐ´（ｔ）に基づき、出力動作の姿勢が計算される。
【００６４】
しかし、単純に変形データを入力動作に適用した場合、不自然な姿勢が生成される可能性がある。例えば、もともと腰の位置が低い入力動作に対して、腰の位置を下げるような変形が適用された場合、腰の位置が低くなり過ぎてしまうかもしれない。このような不自然な姿勢を避けるために、腰の相対位置や相対向き、手先及び足先の位置や向きを、人間の姿勢として実現可能な範囲内に制限する。入力動作のにおける手足の各関節の回転は、手先及び足先の位置と向きから、分析的な逆運動手法(an analytical inverse kinematics method)（Lee J, Shin S Y. A Hierarchical Approach to Interactive Motion Editing for Human-like Characters. Proc. of SIGGRAPH 99, 39-48, 1999.）を用いることで計算される。
【００６５】
［３．システム構成］
システム構成図を図７に示す。本システムは、変化の特徴量を表す変形データの抽出処理、適用処理の２つの処理に分けられる。抽出処理では、ある基準動作と教師動作の、２つの動作データを入力して受け取り、それらの動作の差分より、特徴の変化を変形データとして抽出する。適用処理では、入力動作に、変形データに適用度をかけて適用することで、出力動作を生成する。
【００６６】
本システムでは、抽出した変形データを、基準動作の種類と合わせて、「楽しそうに」「疲れ」といった動作スタイルとしてデータベースに格納することで、変形データを再利用する。利用者が入力動作となる動作データを入力し、「楽しい」「疲れ」といった動作スタイルを入力又は選択すると、データベースから最適な変形データを検索して、入力動作に適用する。本システムを利用することで、動作データの動作スタイルをさまざまに変化させることが可能となる。
【００６７】
［４．ハードウェア構成］
本実施形態に係る動作変形システムは、次の構成の一のコンピュータに構築する。ただし、複数のコンピュータを用いてシステム構築することもできる。たとえば、変形データを生成してデータベースに格納するまでの処理を１台目のコンピュータで処理するように構築し、それ以降の検索処理と適用処理を２台目のコンピュータで処理するように構築し、データベース自体を３台目のコンピュータで構築することもできる。
【００６８】
図８は本実施形態に係る動作変形システムを構築するコンピュータのハードウェア構成図である。
【００６９】
コンピュータは、ＣＰＵ(Central Processing Unit)１１、ＤＲＡＭ(Dynamic Random Access Memory)１２等のメインメモリ、外部記憶装置であるＨＤ(hard disk)１３、入力装置であるキーボード１４及びマウス１５、ディスプレイ１６ａの表示動作を制御するビデオカード１６、スピーカー１７ａの音動作を制御するサウンドカード１７、ネットワークに接続するための拡張カードであるＬＡＮカード１８、ＣＤ−ＲＯＭドライブ１９等からなる。なお、本実施形態ではＬＡＮカード１８を使用しないが、当業者であれば明らかな通り、システム構成によってはＬＡＮを構築して本発明を実現することができる。たとえば、動作作成システムが構築されている他のコンピュータとＬＡＮで接続し、そのコンピュータへデザイナーが作成した動作データを、基準動作、教師動作、入力動作としてＬＡＮを介して入力し、逆に出力動作を動作作成システムが構築されている他のコンピュータからデザイナーの使用するコンピュータに返すこともできる。
【００７０】
例えば、ＣＤ−ＲＯＭに格納されている動作変形プログラムがＨＤ１３上に複製（インストール）され、必要に応じて動作変形プログラムがメインメモリ１２に読み出され、ＣＰＵ１１がかかるプログラムを実行することで動作変形システムを構成する。
【００７１】
［５．システムブロック構成］
図９は本実施形態に係る動作変形システムのシステム構成ブロック図である。
【００７２】
本実施形態に係る動作変形システムは、通常の動作スタイルである基準動作と、何らかの動作スタイルを持った教師動作との間から、２つの動作の間のスタイルの違いを表する変形データを生成する抽出部２１と、この抽出部２１が生成した変形データをデータベース２３に格納する格納部２２と、入力動作に適用する変形データをデータベース２３から検索する検索部３１と、この検索部３１で検索され読み出された変形データを入力動作に適用して出力動作を作成する適用部３２とからなる。
【００７３】
抽出部２１は、基準動作及び教師動作から[１．変形データ]で前説した変形データを［２  変形データの抽出及び適用］で説示した方法で抽出する。
【００７４】
格納部２２は、抽出部２１から生成された変形データを順次データベース２３に格納するのではなく、教師動作の動作スタイル（「疲れ」「楽しい」等）と関連付けてデータベース２３に生成された変形データを格納する。
【００７５】
教師動作の動作スタイルは、ユーザーからの入力をテキストボックスで受けてもよいし、複数の動作スタイルを一覧表示してユーザーからの選択を受けてもよい。勿論、この組合せでもよく、始めはテキスト入力し、既に入力された動作スタイルを一覧表示することもできる。さらに、一覧表示はシソーラスのように動作スタイルを意味によって分類、配列して一覧表示することが望ましい。
【００７６】
なお、変形データ及び教師動作の動作スタイルとさらに基準動作の動作種類（「歩く」「走る」等）も関連付けてデータベース２３に格納することもできる。このとき、基準動作の動作種類は、教師動作の動作スタイルと同様にユーザーからの指定を受ける。変形データはすべてどのような入力動作に対しても適用しても出力動作を生成することはできるものの、教師動作の動作スタイルを指定しただけでは、動作を作成するデザイナーが意図しない出力動作、または、不自然な出力動作が生成されることがある。この主な理由の一つとして、基準動作の動作種類と入力動作の動作種類が大きく異なる場合があるからである。そこで、教師動作の動作スタイルに加え、変形データ作成時の基準動作の動作種類も関連付けてデータベース２３に格納し、変形データの検索時に参照、指定できるようにする。これにより、想定外の出力動作の生成を防止し、所望の出力動作を生成することができる。なお、動作種類は、動作スタイルと同様にユーザーがテキスト入力又は選択した情報を使用することもできるし、基準動作を解析して動作種類を表す特徴量を計算することもできる。
【００７７】
検索部３１は、ユーザーから受けた動作スタイルを検索キー（キーワード）を用いてデータベース２３から入力動作に適用する変形データを検索する。ユーザーからの入力は変形データ格納時の教師動作の動作スタイルと同様である。
【００７８】
適用部３２は、検索部３１で検索された変形データを［２  変形データの抽出及び適用］で説示した方法で入力動作に適用して出力動作を生成する。適用部３２は、ユーザーから受けた適用度に応じて入力動作に与える変形データの程度を変えることができる。また、この適用度は部位毎に適用することもでき、例えば、変形データを適用する場合に足はあまり適用しないが、腕はそのまま適用するといった設定を行うことができ、より柔軟にユーザーが想定する出力動作を生成することができる。このように部位毎の適用度を変更できることも、直接的に関節角度を変更する従来の方法と比べ、本動作システムの利点のひとつである。
【００７９】
［６．動作］
［６．１  変形データ生成格納］
図１０は第１の実施形態に係る動作変形システムの変形データ抽出動作及び格納動作のフローチャートである。
【００８０】
動作変形システムはまず基準動作の入力を行う（ステップ１０１）。動作はモーションキャプチャ装置、動作設計装置を用いて作成することができ、作成した動作を基準動作として動作変形システムに取り込ませる。
【００８１】
動作変形システムは教師動作の入力を行う（ステップ１１１）。
抽出部２１は入力された基準動作及び教師動作から変形データを生成する（ステップ２００）。
ユーザーから動作スタイルの入力又は選択を受け付ける。
格納部２２は受け付けた動作スタイルと生成した変形データを関連付けて格納する（ステップ３０１）。データベースに格納する場合には、データベースには動作スタイル、変形データの属性を有するテーブルが設定されている。このデータベースには必要に応じて、基準動作、教師動作の属性を加えたテーブルを設定することもできる。
【００８２】
図１１は第１の実施形態に係る動作変形システムの変形データの抽出詳細動作のフローチャートである。
抽出部２１は各区間での基準動作、教師動作のそれぞれの正規化姿勢変化量に基づいて対応付けを行う（ステップ２１０）。
抽出部２１は基準動作のキー時刻での姿勢と教師動作のキー時刻での姿勢からキー時刻での姿勢変形データを算出する（ステップ２２０）。
抽出部２１はステップ２１０で求めた時間変形データとステップ２２０で求めた変形データを用いて、各区間内の対応するフレーム同士の姿勢の差分から、動作変形データを算出する（ステップ２３０）。
【００８３】
［６．２  変形データ生成格納］
図１２は第１の実施形態に係る動作変形システムの変形データ適用動作のフローチャートである。
動作変形システムはまず動作に所望の変更を加える入力動作の入力を行う（ステップ４０１）。
ユーザーから入力動作に適用したい動作スタイルの入力又は選択を受け付ける。
ユーザーから入力動作に適用する変形の程度を示す適用度の入力又は選択を受け付ける。
検索部３１は動作スタイルを検索キーとして変形データを検索する（ステップ５００）。
適用部３２は検索した変形データを、入力した入力動作にユーザーが指定した適用度で適用して、出力動作を生成する（ステップ６００）。
【００８４】
図１３は第１の実施形態に係る動作変形システムの変形データ適用詳細動作のフローチャートである。
適用部３２は変形データの時間変形データを用いて入力動作の速度を変形する（ステップ６１０）。
適用部３２はキー時刻での姿勢変形データに適用度を乗算して、入力動作の対応するキー時刻の姿勢に加えることで、キー時刻の姿勢を変形する（ステップ６２０）。
適用部３２は各区間の姿勢変形データに適用度を乗算して、入力動作の対応するフレーム姿勢に加えることで、各フレームの姿勢を変形する（ステップ６３０）。
【００８５】
（その他の実施形態）
［動作スタイルの類似検索］
変形データの検索時に、ユーザーが入力、選択した動作スタイルだけでなく、入力、選択した動作スタイルに類似する動作スタイルをユーザーに対して提示することもできる。特に、提示する類似する動作スタイルは、既にデータベース２３に格納されている変形データの動作スタイルであることが望ましい。また、類似する動作スタイルが複数ある場合に類似性の順序に動作スタイルをユーザーに提示することが好ましい。提示した類似する動作スタイルもユーザーが選択することができ、さらに、選択した類似する動作スタイルに対して類似する動作スタイルをユーザーに提示することもでき、以降同様に再帰処理してもよい。具体的に、類似する動作スタイルはシソーラスを用いてユーザーが入力、選択した動作スタイルに類似する動作スタイルを検出することができる。類似する動作スタイルとは、同義語、関連語、広義語、狭義語等が該当する。
【００８６】
この場合において、既にデータベース２３に格納している動作スタイルをユーザーに提示する場合には、動作スタイルだけでなく関連付けて格納されている基準動作の動作種類も提示することが望ましい。
【００８７】
［動作スタイルの選択］
変形データの検索時のユーザーによる動作スタイルの選択においては、例えば、既に登録している動作スタイルを選択可能に表示できるとしたが、この表示と共に各動作スタイルと関連付いている変形データを生成するために使用した基準動作及び／又は教師動作を表示することもできる。そうすることで、動作スタイルだけではユーザーが理解し難いが、実際の動作を参照することでその動作スタイルを把握することができる。
【００８８】
［入力動作に基づく適用可能な動作スタイルの表示］
入力動作に適用できる動作スタイルはデータベース２３に格納されている全ての変形データの動作スタイルであるとは限らない。基準動作と入力動作の動作種類が全く異なる場合、変形データが適用できないこともある。そこで、入力動作に適用できない動作スタイルを外して一覧表示することが望ましい。入力動作に適用できない変形データは、基準動作と入力動作の差異により判定することができる。具体的には、動作類似性評価を用いて一定の類似性がない場合には適用が困難であると判断することができる。また、予め適用できない動作種類の組み合せを記録し、基準動作の動作種類と入力動作の動作種類から適用できない動作スタイルを求めてもよい。さらに、ユーザーが適用できないとした情報（基準動作の動作種類、入力動作の動作種類）を履歴情報として記録し、履歴情報の組み合せに該当する場合には、出力動作を生成する前に自然な出力動作が生成することができない可能性が高い旨等の注意メッセージを出力し、または、ユーザーが提示されている動作スタイルの中でその履歴情報の組み合せに該当するものを表示しないか、選択できないようにすることができる。
【００８９】
［出力動作の複数表示］
ユーザーにより動作スタイルが複数選択された場合に、入力動作にそれぞれの動作スタイルに対応する変形データを適用して各出力動作を出力し、複数の出力動作を同時にディスプレイに表示することもできる。比較表示の結果、ユーザーは所望の出力動作を用いることができる。このとき、時間変形データは適用せずに、姿勢変形データのみを適用することで、入力動作と出力動作の姿勢の差異をより詳細に比較することができる。また、適用する変形データにおいて変形量が大きい部位については、出力動作におけるその部位の色を変えて表示することで、入力動作と出力動作の姿勢の差異をユーザーがより良く認識できるようにすることができる。
【００９０】
また、複数の動作スタイルの適用結果の出力動作を同時に表示するだけではなく、さまざまな適用度での適用結果の出力動作を同時に表示することで、ユーザーが適切な適用度を決定できるようにすることもできる。
【００９１】
［複数の動作からなる複合動作］
３段跳び、ダンスといった複数の動作が複合された複合動作についても、キー時刻を適切にユーザーが設定することができる場合には、変形データを作成することは可能である。しかしながら、作成した変形データを適用する際に、自然な動作となる入力動作が限られてくる。そこで、複合動作の場合には構成する動作の切れ目を自動又は手動で設定する。歩く動作などの繰り返し動作であれば、動作の周期性（一つの動作は初期姿勢から終期姿勢からなり、それ以降の動作の初期姿勢又は終期姿勢を検出することで切れ目を検出することができる）に注目して解析を行うことで自動的に設定することができる。そして、動作の切れ目が指定されれば、それぞれの切れ目の間の動作を単一の動作として認識して、変形データを作成することができる。複合動作となる基準動作を構成する動作数と、同じく複合動作となる入力動作を構成する動作数が同じ場合には、対応する変形データを適用することで出力動作を得ることができる。構成する動作数が異なる場合で入力動作の動作数が少ない場合には、入力動作の動作数よりも多い基準動作の動作数の変形データを使用しないことで対応でき、逆に、入力動作の動作数が多い場合には、足りない動作数分基準動作の変形データを繰り返し使用することで対応することができる。
【００９２】
［各部位の変化量による不自然な動作の出力抑制］
入力動作中で変化量が所定閾値以下であった身体部位に対しては、その部位に関して変形データを適用しない構成とすることもでき、入力動作中で大きく変化しない部位の動きを変形データにより変化させることで不自然な動作が出力されることを防止することができる。
【００９３】
［変形データの変換処理］
例えば、右手で殴る動作から変形データを生成した場合に、左手で殴る動作に変形データを適用したい場合が生じる。変形データを単純に適用すると、右手で殴る動作の右手の変形データが左手で殴る動作の右手に適用されるため、不自然な動作となる。この場合には変形データの右手の変形量を左手の変形量に変換する必要があり、変形データ内の左右の身体部位のデータを取り替える必要がある。ただし、単純に各部位の変形量を入れ替えるだけでは、右手の位置が外側に変化していたときに、左手の位置が内側に変化してしまうため、変形データの変化量を左右に反転するような変換が必要となる。
【００９４】
［異なるキャラクタでの使用］
前記実施形態においては、同じキャラクタから生成された変形データは異なる体格のキャラクタに適用することもできる。このとき、手足の長さなどに応じて、変形データにおける変形量を適切にスケーリングすることが望ましい。
【００９５】
以上の前記各実施形態により本発明を説明したが、本発明の技術的範囲は実施形態に記載の範囲には限定されず、これら各実施形態に多様な変更又は改良を加えることが可能である。そして、かような変更又は改良を加えた実施の形態も本発明の技術的範囲に含まれる。このことは、特許請求の範囲及び課題を解決する手段からも明らかなことである。
【図面の簡単な説明】
【００９６】
【図１】本発明の概念説明図である。
【図２】本発明の第１の実施形態に係る動作の区間とキー時刻の設定の説明図である。
【図３】本発明の第１の実施形態に係る変形データの説明図である。
【図４】本発明の第１の実施形態に係る姿勢表現の説明図である。
【図５】本発明の第１の実施形態に係る動作方向に基づくローカル座標系での手先及び足先の変形量の表現の説明図である。
【図６】本発明の第１の実施形態に係る腰の絶対位置・相対位置・絶対向き・相対向きの説明図である。
【図７】本発明の第１の実施形態に係るシステム構成図である。
【図８】本発明の第１の実施形態に係る動作変形システムを構築するコンピュータのハードウェア構成図である。
【図９】本発明の第１の実施形態に係る動作変形システムのシステム構成ブロック図である。
【図１０】本発明の第１の実施形態に係る動作変形システムの変形データ抽出格納動作のフローチャートである。
【図１１】本発明の第１の実施形態に係る動作変形システムの変形データ抽出詳細動作のフローチャートである。
【図１２】本発明の第１の実施形態に係る動作変形システムの変形データ適用動作のフローチャートである。
【図１３】本発明の第１の実施形態に係る動作変形システムの変形データ適用詳細動作のフローチャートである。
【符号の説明】
【００９７】
１１  ＣＰＵ
１２  ＲＡＭ
１３  ハードディスク
１４  キーボード
１５  マウス
１６  ビデオカード
１６ａ  ディスプレイ
１７  サウンドカード
１７ａ  スピーカー
１８  ＬＡＮカード
１９  ＣＤ−ＲＯＭドライブ
２１  抽出部
２２  格納部
２３  データベース
３１  検索部
３２  適用部
【図１】
2008015713.tif 000018
【図２】
2008015713.tif 000019
【図３】
2008015713.tif 000020
【図４】
2008015713.tif 000021
【図５】
2008015713.tif 000022
【図６】
2008015713.tif 000023
【図７】
2008015713.tif 000024
【図８】
2008015713.tif 000025
【図９】
2008015713.tif 000026
【図１０】
2008015713.tif 000027
【図１１】
2008015713.tif 000028
【図１２】
2008015713.tif 000029
【図１３】
2008015713.tif 000030