(57)【要約】  顔メッシュを使用して顔アニメーションを作成するための技術を提供する。この技術は、顔メッシュシーケンスを決定するステップを含む。次に、顔メッシュシーケンスの一部が顔の画像にはめ込まれる。例えば、顔メッシュシーケンスの第１のフレームが画像にはめ込まれる。次に、上記はめ込みに基づいて、顔画像が顔メッシュの一部の上へ投影される。また、毛髪モデルを作成して、顔メッシュシーケンス上へはめ込むこともできる。加えて、顔メッシュのシーケンス間の色差の変化を計算することもできる。その後、顔メッシュシーケンスが再生されて、顔画像の顔アニメーションシーケンスが作成される。上記顔メッシュシーケンスの再生中に、作り出した色差をこのシーケンスに加えることもできる。この結果、顔メッシュシーケンスを再生することにより、顔の画像のリアルな顔アニメーションが作成されることになる。【選択図】図１
2009523288.tif 000002
【特許請求の範囲】
【請求項１】
顔アニメーションを作成する方法であって、
顔メッシュシーケンスを決定するステップと、
前記顔メッシュシーケンスの顔メッシュを顔の画像にはめ込み、該はめ込みにおいて前記顔メッシュの頂点の変位値が決定されるステップと、
前記はめ込みに基づいて、前記顔画像をテクスチャとして前記顔メッシュ上へ投影するステップと、
前記顔メッシュシーケンスにおける後続する顔メッシュの頂点に前記変位値を加えるステップと、
前記顔メッシュシーケンスを再生して、前記顔画像の顔アニメーションを作成するステップと、
を含むことを特徴とする方法。
【請求項２】
前記顔メッシュと前記顔メッシュシーケンスの後続する個々の顔メッシュとの頂点における色差を計算するステップと、
前記顔メッシュシーケンスの再生時に、後続する個々の顔メッシュに示される色差を、該後続する個々の顔メッシュの前記頂点に加えるステップと、
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項３】
あらゆる正の色差を無視するステップをさらに含む、
ことを特徴とする請求項２に記載の方法。
【請求項４】
前記顔メッシュから毛髪モデルを作成するステップと、
前記顔メッシュシーケンスにおける個々の顔メッシュに前記毛髪モデルをはめ込むステップと、
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記顔画像を投影するステップは、前記顔画像の毛髪を前記顔メッシュの前記毛髪モデル上へ投影するステップを含むことを特徴とする請求項４に記載の方法。
【請求項６】
前記顔メッシュをはめ込むステップは、前記顔メッシュの第１の特徴点と、前記顔画像の第２の特徴点との間の距離を最小化することにより、スケーリング、回転及び／又は平行移動の値を決定するステップを含む、
ことを特徴とする請求項１に記載の方法。
【請求項７】
前記スケーリング、回転、及び／又は平行移動の値は、前記後続する顔メッシュの前記頂点に適用される、
ことを特徴とする請求項６に記載の方法。
【請求項８】
前記顔メッシュシーケンスは人間のユーザの顔メッシュの記録である、
ことを特徴とする請求項１に記載の方法。
【請求項９】
前記顔メッシュシーケンスの前記一部は前記顔画像に対応する静止画像である、
ことを特徴とする請求項１に記載の方法。
【請求項１０】
顔アニメーションを作成するための装置であって、
顔メッシュシーケンスを決定するように構成された論理回路と、
前記顔メッシュシーケンスの顔メッシュを顔の画像にはめ込み、前記はめ込みにおいて前記顔メッシュの頂点の変位値が決定されるように構成された論理回路と、
前記はめ込みに基づいて、前記顔画像をテクスチャとして前記顔メッシュ上へ投影するように構成された論理回路と、
前記顔メッシュシーケンスにおける後続する顔メッシュの頂点に前記変位値を加えるように構成された論理回路と、
前記顔メッシュシーケンスを再生して、前記顔画像の顔アニメーションを作成するように構成された論理回路と、
を備えることを特徴とする装置。
【請求項１１】
前記顔メッシュと前記顔メッシュシーケンスの後続する個々の顔メッシュとの頂点における色差を計算するように構成された論理回路と、
前記顔メッシュシーケンスの再生時に、後続する個々の顔メッシュに示される色差を、該後続する個々の顔メッシュの前記頂点に加えるように構成された論理回路と、
をさらに備えることを特徴とする請求項１０に記載の装置。
【請求項１２】
あらゆる正の色差を無視するように構成された論理回路をさらに備える、
ことを特徴とする請求項１１に記載の装置。
【請求項１３】
前記顔メッシュから毛髪モデルを作成するように構成された論理回路と、
前記顔メッシュシーケンスにおける個々の顔メッシュに前記毛髪モデルをはめ込むように構成された論理回路と、
をさらに備えることを特徴とする請求項１０に記載の装置。
【請求項１４】
前記顔画像を投影するステップは、前記顔画像の毛髪を前記顔メッシュの前記毛髪モデル上へ投影するように構成された論理回路を備えることを特徴とする請求項１３に記載の装置。
【請求項１５】
前記顔メッシュをはめ込むように構成された論理回路は、前記顔メッシュの第１の特徴点と、前記顔画像の第２の特徴点との間の距離を最小化することにより、スケーリング、回転及び／又は平行移動の値を決定するように構成された論理回路を含む、
ことを特徴とする請求項１０に記載の装置。
【請求項１６】
前記スケーリング、回転、及び／又は平行移動の値は、前記後続する顔メッシュの前記頂点に適用される、
ことを特徴とする請求項１５に記載の装置。
【請求項１７】
前記顔メッシュシーケンスは人間のユーザの顔メッシュの記録である、
ことを特徴とする請求項１０に記載の装置。
【請求項１８】
前記顔メッシュシーケンスの前記一部は前記顔画像に対応する静止画像である、
ことを特徴とする請求項１０に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願との相互参照）
本願は、２００６年１月１０日に出願された「顔アニメーションを作成する方法及び装置」という名称の米国仮出願特許第６０／７５８,１２２号、及び２００６年３月３１日に出願された「顔メッシュを使用して顔アニメーションを作成する技術」という名称の米国特許出願番号第１１／３９６,１５９号からの優先権を主張するものであり、これらの特許はすべての目的のために全体が引用により組み入れられる。
本発明の実施形態は、一般にコンピュータグラフィックに関し、より具体的には顔メッシュを使用して顔アニメーションを作成する技術に関する。
【背景技術】
【０００２】
リアルな顔アニメーションの自動作成は、コンピュータグラフィック分野において最も難しい問題の１つである。例えば、笑っている（又は他の任意の活動を行っている）人のリアルで自然な表情の変化を作成するのは非常に困難なことである。これは、ほとんどの人々は表情の微妙な変化によって大きく異なるという理由によるものである。コンピュータ作成したグラフィックを人々が見ても、微妙な変化が正確にアニメーションされておらず、そのアニメーションはリアルに見えない。
【０００３】
【特許文献１】米国仮出願特許第６０／７５８,１２２号
【特許文献２】米国特許出願番号第１１／３９６,１５９号
【発明の開示】
【発明が解決しようとする課題】
【０００４】
顔アニメーションを作成するために、表情の変化を手で入力してそのアニメーションを作成することができる。例えば、個々の部分の動き、及び顔の形の変化に伴う肌の明るさと暗さの変化を正確な形で、正確なタイミングで入力するという条件が必要となる。これには熟練と多くの時間とが必要とされる。変化を手で入力することにより、リアルな顔アニメーションを作成したとしても、これらの変化を入力する時間量によって、このアニメーションは価値のあるものにはならない可能性がある。さらに、入力用としてユーザの単一画像のみを使用する場合、アニメーションを作成するのはさらに困難となる。変化を手で入力したとしても、結果として生じる表情はリアルではない可能性がある。
【課題を解決するための手段】
【０００５】
本発明の実施形態は、一般に顔メッシュを使用して顔アニメーションを作成する技術に関する。１つの実施形態では、この技術は、顔メッシュシーケンスを決定するステップを含む。次に、この顔メッシュシーケンスの一部が顔の画像にはめ込まれる。例えば、顔メッシュシーケンスの第１のフレームがその画像にはめ込まれる。次に、このはめ込みに基づいて、顔画像が顔メッシュの一部の上へ投影される。また、毛髪モデルを作成して、顔メッシュシーケンスの上へはめ込むこともできる。さらに、顔メッシュシーケンス間の色差を計算することができる。その後、顔メッシュシーケンスが再生されて、顔画像の顔アニメーションシーケンスが作成される。シーケンスが再生されている時に、作成された色差をこのシーケンスに追加することもできる。この結果、顔メッシュシーケンスを再生することにより、顔の画像のリアルな顔アニメーションが作成されることになる。
【０００６】
１つの実施形態では、顔アニメーションを作成する方法を提供する。この方法は、顔メッシュシーケンスを決定するステップと、顔メッシュシーケンスの顔メッシュを顔の画像にはめ込み、その際に顔メッシュの頂点の変位値を決定するステップと、上記はめ込みに基づいて、顔画像をテクスチャとして顔メッシュ上へ投影するステップと、顔メッシュシーケンスにおける後続の顔メッシュの頂点に上記変位値を加算するステップと、顔メッシュシーケンスを再生して顔画像の顔アニメーションを作成するステップとを含む。
【０００７】
１つの実施形態では、顔アニメーションを作成するための装置を提供する。この装置は、顔メッシュシーケンスを決定するように構成された論理回路と、顔メッシュシーケンスの顔メッシュを顔の画像にはめ込み、その際に顔メッシュの頂点の変位値を決定するように構成された論理回路と、上記はめ込みに基づいて、顔画像をテクスチャとして顔メッシュ上へ投影するように構成された論理回路と、顔メッシュシーケンスにおける後続の顔メッシュの頂点に上記変位値を加算するように構成された論理回路と、顔メッシュシーケンスを再生して顔画像の顔アニメーションを作成するように構成された論理回路とを備える。
【０００８】
明細書の残り部分と添付図面とを参照することにより、本明細書で開示する本発明の性質及び利点のさらなる理解を実現することができる。
【発明を実施するための最良の形態】
【０００９】
概観
顔メッシュシーケンスを使用して顔アニメーションを作成することができる。顔メッシュシーケンスは、表情が変化したり、或いは発話が行われる毎の間に取得される顔形メッシュの集合体であると考えてよい。この顔メッシュシーケンスは、毎秒２０フレームより多い数などの、再生時にスムーズに見える品質等級のものである。シーケンスの個々の顔メッシュは、約２０,０００個の頂点など、顔の形を詳細に表現することができる。顔メッシュシーケンスの個々のフレームに対して、個々の頂点の位置、動きの量、及び色データを取得することができる。
【００１０】
１つの実施形態では、（人間などの）ユーザの顔メッシュシーケンスは、公知のシステムを用いて取得される。顔メッシュシーケンスは、顔アニメーションを作成するために画像を使用するユーザのものであってよい。しかし、ユーザの顔メッシュを手に入れることができなければ、別のユーザの顔メッシュを使用してもよい。その後、この別のユーザの顔メッシュを修正して、ユーザの画像にはめ込むことができる。
【００１１】
図１は、本発明の１つの実施形態による顔アニメーションを作成する方法についてについての単純化したフロー図１００を示している。ステップ１０２で顔メッシュシーケンスを決定する。この顔メッシュシーケンスはユーザから取り込むことができる。
【００１２】
ステップ１０４で顔メッシュシーケンスの顔メッシュを顔画像にはめ込む。この顔画像は、顔メッシュシーケンスを取り込んだユーザと同じユーザの（写真などの）画像であってよい。しかしながら、別の実施形態では、この顔メッシュシーケンスと顔画像とを異なるユーザから取り込んでもよい。この顔メッシュを、顔メッシュシーケンスの第１のフレームとすることができる。この第１のフレームは顔画像に対応できるものである。
【００１３】
はめ込み処理によって顔メッシュを変形することができる。顔メッシュとこの変形した顔メッシュとに基づいて変位値を決定することができる。これらの値はセーブされ、後程、顔メッシュシーケンスを再生する際に、顔メッシュシーケンスにおけるすべての顔メッシュを変形するために使用されることになる。
【００１４】
ステップ１０６で顔メッシュから毛髪モデルを作成する。この毛髪モデルで毛髪用の顔メッシュの範囲を作成する。この処理については以下でさらに詳細に説明する。
【００１５】
ステップ１０８で、顔メッシュシーケンスにおける顔メッシュに対して色の違いを計算する。シーケンスにおける異なる顔メッシュの頂点に対して、この色の違いを計算することができる。色の違いを含むことに関する効果については以下でさらに詳細に説明するが、結果として、形の変化に伴う明るさと暗さの変化が顔アニメーションにおいて表示されることになる。
【００１６】
ステップ１１０で、顔メッシュと毛髪メッシュの上に顔画像を投影する。この結果、含まれる顔メッシュは、毛髪に加えて顔画像も示すことになる。
【００１７】
ステップ１１２で、変位値と計算された色の違いとを使用して、毛髪モデルを含む顔メッシュシーケンスを再生する。顔メッシュシーケンスにおけるすべての顔メッシュにこの変位値を加えることができる。同時に色差も加えられる。その後、顔メッシュシーケンスが再生される。この顔メッシュシーケンスの再生時に、顔画像のアニメーションが提供される。計算された色の違いを加えることにより、明るさと暗さが示される。
【００１８】
顔メッシュのはめ込み処理
図２は、顔メッシュシーケンスの顔メッシュを顔画像にはめ込む方法についての単純化したフロー図２００を示している。この方法について説明を行うが、この方法の変形例も認められることを認識されたい。
【００１９】
ステップ２０２で、顔画像と該顔画像の特徴点をロードする。この特徴点は、顔画像上のいずれのポイントであってもよい。例えば、目、口、鼻などの、顔画像の際立った特徴が見られる個所において特徴点を選択することができる。この特徴点は公知の方法を用いて入手することができる。
【００２０】
図３は、本発明の１つの実施形態よる顔画像及び特徴点の例を示す図である。図示のように、顔画像３００内に特徴点３０２が白い点線で示されている。１つの実施形態では、目、口、耳及び顎の近くに特徴点が置かれている。これらの特徴点３０２を示しているが、別の特徴点３０２も使用できることを認識されたい。
【００２１】
ステップ２０４でＸＹ平面上に顔画像３００を配置する。このＸＹ平面は任意のコンピュータ装置上に表示することができる。
【００２２】
ステップ２０６で、顔メッシュシーケンスの顔メッシュと、顔メッシュの特徴点とをロードする。ロードされた顔メッシュは、顔メッシュシーケンスのフレームなどの、顔メッシュシーケンスの一部であってもよい。１つの実施形態では、顔画像３００に見い出されるユーザから顔メッシュシーケンスの第１のフレームを手に入れる。この顔メッシュは、顔メッシュシーケンスから３次元メッシュを取り込んだものであってもよい。顔画像３００の特徴点を見い出す際に使用したアルゴリズムと同じアルゴリズムを使用して、顔メッシュ上に見られる特徴点を決定することができる。
【００２３】
図４は、本発明の１つの実施形態による特徴点４０２を含む顔メッシュ４００を示している。特徴点４０２は、顔メッシュ４００おける（３次元空間における、特定位置を含むポイントなどの）頂点であってもよい。ユーザによって、或いは処理によって特徴点４０２を決定することができる。１つの実施形態では、目、口、耳及び顎の近くに特徴点が置かれている。
【００２４】
ステップ２０８で、顔メッシュ４００を顔画像３００に大まかに位置合わせする。この位置合わせは自動又は手動で行うことができる。図５は、本発明の１つの実施形態による最初のはめ込みを示す図である。図示のように、顔メッシュ４００は顔画像３００の顔の上に大まかにはめ込まれている。図示のように、顔メッシュ４００は顔を完全にはカバーしていない。従って、さらなる調整が必要となる。
【００２５】
ステップ２１０で、画像平面に投影された顔メッシュの特徴点４０２と、画像の特徴点３０２との間の距離の合計値をスケーリングによって最小化する。公知の方程式を使用して、この顔メッシュの特徴点４０２と画像の特徴点３０２との間の距離を最小化することができる。例えば、スケーリングにより顔メッシュ４００のサイズを増減して、顔画像３００にはめ込むことができる。
【００２６】
ステップ２１２で、平行移動と回転とを用いて、画像平面に投影された顔メッシュの特徴点４０２と、顔画像の特徴点３０２との間の距離の合計値を最小化する。公知の方程式を使用して、この顔メッシュの特徴点４０２と画像の特徴点３０２との間の距離を最小化することができる。平行移動により顔メッシュ４００を移動させて、顔画像３００に一致させることができる。同様に、顔メッシュ４００を回転させて、顔画像３００に一致させることができる。
【００２７】
ステップ２１４で、最小化が収束したかどうかを判定する。すなわち、特徴点３０２と、対応する特徴点４０２の画像平面に投影されたポイントとの間の距離の合計値が最小化されたかどうかの判定が行われる。特徴点３０２と特徴点４０２とが収束していないと判定された場合、ステップ２１０及びステップ２１２が繰り返される。
【００２８】
これらが収束すれば、ステップ２１６で、ステップ２１０及びステップ２１２で決定されたスケーリング、平行移動、及び回転のパラメータをセーブする。これらのパラメータは、顔メッシュ４００をスケーリングし、平行移動し、及び回転させるために使用したパラメータである。
【００２９】
ステップ２１８で、ＸＹ平面上の顔メッシュ４００の特徴点４０２を移動させて、顔画像３００の特徴点３０２に一致させる。顔メッシュの特徴点４０２と顔画像の特徴点３０２との間の合計値を最小化しても、上記の特徴点４０２と特徴点３０２とが正確に一致しない場合がある。従って、これらを一致させるためにこの調整ステップが行われることになる。
【００３０】
ステップ２２０で、顔メッシュの特徴点４０２と顔画像の特徴点４０２との変位に従って、すべての頂点を移動させる。ステップ２２２で得た特徴点の変位に基づく放射基底関数を使用して、これらの変位を計算することができる。放射基底関数とは、コンピュータグラフィックにおいてオブジェクトの変形に使用できる内挿法のことである。他の関数を認めることもできる。
【００３１】
図６は、スケーリング、平行移動、及び回転によりはめ込まれた顔メッシュ４００を示す図である。図示のように、顔メッシュ４００はユーザの顔とほぼ一致している。顔メッシュ４００は、拡大されることによりスケーリングされ、また、回転され、平行移動されて顔画像３００と一致するようになる。しかしながら、顔メッシュの特徴点４０２は、画像の特徴点３０２と正確には一致していない可能性がある。例えば、目の周辺では、特徴点４０２は特徴点３０２と正確には一致していない。この場合、特徴点４０２が特徴点３０２と一致するように動かされる。また次に、顔メッシュの特徴点４０２の動きに基づいて、顔メッシュ４００のその他の頂点も動かされる。
【００３２】
図７は、本発明の１つの実施形態による特徴点４０２の顔画像３００の特徴点３０２上への一致を示す図である。図示のように、顔メッシュの特徴点４０２と画像の特徴点３０２とが相互に一致している。
【００３３】
ステップ２２２で、オリジナルの顔メッシュ４００と変形した顔メッシュ４００との間の頂点の変位値をセーブする。この変位値は、後程、顔メッシュシーケンスが再生されるときに使用されることになる。この変位値は、顔メッシュ４００を顔画像３００に位置合わせするために使用される。
【００３４】
ステップ２２４で、顔画像３００をテクスチャとして顔メッシュ４００上へ投影する。この結果、ユーザの顔画像が顔メッシュ上へ投影されることになる。図８は、テクスチャとして顔メッシュ３００上へ投影された顔画像３００を示す図である。図示のように、顔メッシュ４００の上にテクスチャとして顔が示されている。
【００３５】
毛髪モデル処理
顔メッシュ４００を顔画像３００にはめ込んだ後、毛髪モデルも作成される。顔メッシュが毛髪をモデル化していない可能性があるため、この毛髪モデルが作成される。従って、毛髪モデルを作成して顔メッシュに含めることにより、顔画像３００から得られる毛髪をテクスチャとして顔メッシュ上に投影できるようになる。図９は、本発明の１つの実施形態による毛髪モデルを作成する方法についての単純化したフロー図９００を示している。
【００３６】
ステップ９０２で、ＸＹ平面上の正方格子の上へ顔メッシュ４００をロードする。このＸＹ平面は、例えば１００×１００の格子であってもよい。顔メッシュ４００は３次元画像であり、ＸＹ平面は２次元である。従って、Ｚ空間内の何らかの位置に顔メッシュ４００を配置する必要がある。例えば、ディスプレイ画面を見た場合、顔メッシュ４００のＺ値が正軸方向へ向かうように（すなわち、ＸＹ平面を顔メッシュの後方に置くか、或いは顔の前方部がＸＹ平面から前方を向くように）顔メッシュ４００をロードすることができる。正方格子について説明したが、正方格子ではなく３次元ポリゴンを使用して毛髪モデルを作成することもできる。
【００３７】
顔メッシュ４００は３次元モデルであるため、ＸＹ平面の格子点をＺ方向に動かして、顔メッシュ４００上のポイントと合致するようにする。これにより、格子の３次元モデルが作成される。従って、顔メッシュ７０２によって格子点が塞がれた（すなわち妨害された）場合、ステップ９０４で個々の格子点が決定されることになる。格子点が顔メッシュ７０２によって塞がれた場合、ステップ９０６で、この格子点は顔メッシュ４００と交わるポイントへ動かされる。例えば、この格子点は、対応する顔メッシュ４００の値のＺ値と交わるまで、正の方向へ（すなわち前方へ）動かされることになる。
【００３８】
次に、ステップ９０８で、すべての格子点が処理されたかどうかを判定する。処理されていなければ、ステップ９０４までの処理を繰り返して別の格子点の処理を行う。
【００３９】
格子点が顔メッシュ７０２によって塞がれていなければ、顔メッシュは動かされない。この格子点は顔メッシュ４００の外側の範囲にあることになる。
【００４０】
すべての格子点が処理されると、ステップ９１０で毛髪部位のマスク画像１００２がロードされる。公知の方法を用いて、この毛髪部位をモデル化することができる。
【００４１】
図１０は、本発明の１つの実施形態による毛髪部位のマスク画像１００２を示す図である。図示のように、毛髪部位のマスク画像１００２は、取り込むことができた毛髪部位をモデル化したものである。例えば、顔画像３００における毛髪の輪郭を引き出すことができる。その後、このマスク画像１００２を顔メッシュ４００上にセットすることができる。
【００４２】
毛髪範囲を含むいくつかの顔メッシュ４００の範囲が存在する可能性がある。これらの範囲は、顔メッシュ４００上のポイントに対して正のＺ方向に若干盛り上がっている。これは、アニメーションにおいて、実物そっくりのアニメーションのために毛髪が皮膚から盛り上がっていてもよいという理由によるものである。実施形態によっては、毛髪を盛り上げる必要はないということを認識されたい。
【００４３】
格子点が顔メッシュ４００によって塞がれていれば、ステップ９１２で個々の格子点が決定される。格子点が顔メッシュによって塞がれていなければ、ステップ９１８まで処理が続く。さらに、ステップ９１４におけるマスク値が、毛髪であることを示すポイントに存在しなければ、この処理はステップ９１８へ進み、すべての格子点が処理されたかどうかを判定する。処理されていなければ、ステップ９１２までの処理を繰り返す。
【００４４】
格子点が顔メッシュ４００によって塞がれている場合、ステップ９１４で、上記ポイントにおけるマスク値が毛髪であることを示すかどうかを判定する。例えば、格子の画素に対応する位置における毛髪の顔メッシュ４００上で値が計算される。ステップ９１６において、この値が１である場合、上記ポイントのＺ値が若干増加される。顔メッシュ４００上の頂点が１の値を有することを判定するために、この頂点がマスク画像１００２に投影され、そこでマスク値がチェックされる。この値が１である場合、この頂点は毛髪の一部であることになる。これは、上記ポイントがマスク画像１００２の一部であり、そこは毛髪部位であるという理由によるものである。
【００４５】
ステップ９１８で、すべての格子点が処理されたかどうかを判定する。処理されていなければ、ステップ９１２までの処理を繰り返す 。
【００４６】
すべての格子点が処理されていた場合、マスク画像１００２によって塞がれたポイントを処理することができる。ステップ９２０で、個々の格子点Ｐについて、そこが「毛髪」のマスク値を示すマスク画像１００２の一部であり、かつ顔メッシュ４００によって塞がれていないかどうかを判定する。すなわち、マスク画像１００２の格子点部分ではあるが、顔メッシュ４００の一部ではない部分かどうかを判定する。もしそうでなければ、何も行われず、この処理は以下で説明するステップ９２８へ進む。
【００４７】
マスク値が毛髪であることを示す場合、人の毛髪をモデル化する方法で格子点が盛り上げられる。例えば、人の毛髪をＺ方向において若干後方へスケーリングすることができる。以下のステップを用いてこれをモデル化することができる。ステップ９２２で、最も近くの塞がれたポイント（Ｏ）を計算する。次に、ステップ９２４で、ラインＯＰに沿って（ただし線分ＯＰの中ではない）、毛髪とそれ以外との間の境界ポイントＱを決定する。
【００４８】
ステップ９２６で、方程式Ｐｚ＝Ｑｚ＋ｗ×（Ｏｚ−Ｑｚ）などの方程式を使用してＰのＺ値を計算する。Ｐｚ、Ｏｚ、及びＱｚは、それぞれＰ、Ｏ、及びＱのＺ値である。また、ｗ＝１−ＯＰ／ＯＱ＾２となる。これにより、格子点ＰにＺ値が内挿される。Ｚ値を格子点Ｐに内挿するための別の方法も認められることを認識されたい。
【００４９】
ステップ９２８で、すべての格子点が処理されたかどうかを判定する。処理されていなければ、ステップ９２０までの処理を繰り返す。
【００５０】
すべての格子点が処理されていれば、毛髪モデルが作成される。この毛髪モデルは、格子点である頂点を有するメッシュである。図１１は毛髪モデル１１００を示す図である。
【００５１】
色差
顔メッシュシーケンスにおける頂点の色の違いを計算することもできる。この計算は異なる表情から色の違いを取り込むものである。例えば、顔が１つの表情から別の表情へと動くとき、ある範囲の色が明るくなったり、又は暗くなったりする場合がある。これらの色差が計算され、後程、顔アニメーションに加えられる。図１２は、本発明の１つの実施形態による色差を計算する方法についての単純化したフロー図１２００を示している。
【００５２】
ステップ１２０２で顔メッシュシーケンスをロードする。ステップ１２０４で、（顔メッシュシーケンスの第１の顔メッシュなどの）顔メッシュ４００を基本顔メッシュとしてセットする。この基本顔メッシュは、顔メッシュシーケンスの第１のフレームであってもよい。この基本顔メッシュは、顔画像３００において見られる表情に近い表情であってもよい。また、別の実施形態では、この基本顔メッシュは、すべての顔メッシュを平均した形状であってもよい。
【００５３】
ステップ１２０６で、シーケンスにおける基本メッシュとその他の顔メッシュとの間の個々の頂点について色差を計算する。公知の方法を用いてこの色差を計算することができる。この差は、基本顔メッシュから別の顔メッシュへと色を増減すべき値であってもよい。この色差はＲＧＢ（赤、緑、青）モデルに基づいて計算することができる。この色差は、ある頂点において基本顔メッシュの色値から後続する顔メッシュの色値を減算した色値であってもよい。正の色差はより明るい色であり、負の色差はより暗い色であってもよい。
【００５４】
１つの実施形態では、いずれの正の色差も無視することができる。これらの差は、画像上にホワイトスポットを作り出す可能性がある。従って、負の色差のみを使用することができる。また、この色差によって生じた（口周り又は目の端などの）テクスチャが良好に見えなければ、それらの領域における色差を無視することができる。
【００５５】
別の実施形態では、ＲＧＢカラー方式などの個々の色チャネルの違いではなく、グレースケールとして色差を表現することができる。あるしきい値を超え、（白黒などの）異なる色として基本テクスチャに適用される色差を検出することにより、（色に関して）誇張された顔を作成することができる。表情率画像の３次元バージョンを使用して、色差を表現することができる。
【００５６】
また、頂点毎の処理ではなくテクスチャの混合として、色差の追加オプションを表現することができる。この場合、最初に色差がレンダされる。その後、この結果生じる画像が顔メッシュをレンダした画像に加えられる。これは画像混合のようなものである。（前述した）個々の頂点に対してこの色差を加えることができる。或いは、「差を加えていない」メッシュと、色差で色付けした同じメッシュとに別個に色差をレンダし、その後画素毎に両方のレンダ済み画像を加えることもできる。いずれかの方法で色差を加えることができる。
【００５７】
図１３は、本発明の１つの実施形態による色の違いを示す図である。上の行１３０２は色の無い顔メッシュを示している。行１３０４は色を含む画像を示している。行１３０４は、取り込んだオリジナルのシーケンスがどのように見えるかを参考までに示している。
【００５８】
個々の顔メッシュ１３０６及び対応する顔画像１３０８を示している。顔メッシュ１３０６間の色の違いを計算することができる。例えば、顔メッシュ１３０６−１と顔メッシュ１３０６−２との間の色差、顔メッシュ１３０６−１と顔メッシュ１３０６−３との間の差などを計算することができる。
【００５９】
次に、ステップ１２０８で、個々の頂点についての色差をセーブする。この色差は、後程、顔メッシュシーケンスが再生される時に使用されることになる。
【００６０】
図１４は、オリジナルの顔メッシュにおいて顔が目を細めた時の色の違いを示す図である。図示のように、画像１４０４は、画像１４０２から表情が変化した時の表情において生じる色の変化を示している。図示のように、円１４０８は、円１４０６における画像からの形の変化に関連して生じる暗さを示している。
【００６１】
図１５は、本発明の１つの実施形態による顔アニメーションを作成するためについての単純化したフロー図１５００を示している。ステップ１５０２で、顔メッシュシーケンス及び毛髪モデルをロードする。
【００６２】
ステップ１５０４で、顔メッシュシーケンスにおける個々の顔メッシュに、スケーリング、平行移動、及び回転を適用する。図２のステップ２１６においてこれらの値がセーブされる。これにより、この顔メッシュが顔メッシュシーケンスにおける顔画像３００に位置合わせされる。
【００６３】
ステップ１５０６で、顔画像３０２をテクスチャとしてベースメッシュ及び毛髪モデル上に投影する。この結果、顔メッシュ上に顔画像が示されることになる。
【００６４】
ステップ１５０８で、すべてのメッシュに頂点の変位を加える。これは、図２のステップ２２２においてセーブした変位値である。これにより、顔画像３００に特徴点及び頂点が一致する。また、すべてのメッシュについて頂点の位置及び変位値を有する代わりに、ベースメッシュからその他のメッシュまでの変位差を使用してもよい。例えば、ベースメッシュは頂点に対して第１の変位値を有することができる。新しい値の代わりに次の顔メッシュとの値の差を保存することができる。
【００６５】
ステップ１５１０で、図１２のステップ１２０６においてセーブした色差がすべての顔メッシュに加えられる。また、すべてのメッシュについて頂点の位置及び色差を有する代わりに、ベースメッシュからその他のメッシュまでの色差を使用してもよい。例えば、ベースメッシュは頂点に対して第１の色差を有することができる。新しい値の代わりに次の顔メッシュとの値の差を保存することができる。
【００６６】
その後、ステップ１５１２で、顔メッシュシーケンスが再生される。顔メッシュシーケンスを再生することにより、単純で、自然で、そして非常にリアルな顔アニメーションが作成される。このアニメーションは、（フレーム又は画像などの）たった１枚の紙の基本画像と顔メッシュシーケンスとを用いて提供される。
【００６７】
図１６は、１つの実施形態による作成されたアニメーションの結果を示す図である。図示のように、この顔のアニメーションは非常にリアルに見える。顔メッシュシーケンスを用いて、顔画像３００上に異なる表情が作り出される。
【００６８】
図１７は、１つの実施形態による色差を加えた画像と加えない画像とを示す図である。画像１７０２は色差が加えられた時の画像を示し、画像１７０４は色差を加えていない画像を示している。図示のように、画像１７０２における表情は、顔の表情の形の変化から作り出される明るさと暗さの変化を示している。図示のように、画像１７０２において盛り上がりとしわとがより明確になっている。
【００６９】
別の実施形態では、上記の方法を用いて音声アニメーションを作成することができる。例えば、音素の顔メッシュ（ｖｉｓｉｍと呼ばれる）と音声オーディオとを同期させることにより、唇の同期アニメーションを作成することができる。従って、本発明の実施形態により、その他のアニメーションが認められることになる。
【００７０】
本発明の特定の実施形態を参照しながら本発明について説明してきたが、これらの実施形態は例示的なものであるにすぎず、本発明を限定するものではない。
【００７１】
Ｃ、Ｃ＋＋、Ｊａｖａ（登録商標）、アセンブリ言語等を含む任意の適切なプログラム言語を用いて、本発明の実施形態のルーチンを実現することができる。手続き指向又はオブジェクト指向などの異なるプログラミング技術を使用することができる。単一の処理装置又は複数のプロセッサ上でこのルーチンを実行することができる。ステップ、処理、又は計算を特定の順序で示したが、異なる実施形態においてはこの順序を変更することができる。本明細書では順次的なものとして示した複数のステップを、いくつかの実施形態では同時に実行することができる。本明細書において説明した一連の処理を、オペレーティングシステム、カーネルなどの別の処理によって中断したり、一時停止したり、又は制御したりすることができる。オペレーティングシステム環境において、或いはシステム処理のすべて又は重要部分を占有するスタンドアロン型ルーチンとして、ルーチンを処理することができる。ハードウェア、ソフトウェア、又はこの両方の組み合わせにおいて機能を実行することができる。特に明記しない限り、全体的に又は部分的に機能を手動で実行することもできる。
【００７２】
本明細書における説明では、本発明の実施形態を完全に理解するために、構成要素及び／又は方法の例などの非常に多くの具体的な詳細事項を記載している。しかしながら、当業者であれば、１又はそれ以上のこれらの具体的な詳細事項なしで、或いは別の装置、システム、アセンブリ、方法、材料、部品、及び／又は同種のものを用いて本発明の実施形態を実施できることが解るであろう。他の例においては、本発明の実施形態の態様を曖昧にしないために、周知の構造、材料、又は処理については具体的に示さず、或いは詳細に説明していない。
【００７３】
本発明の実施形態に示す「コンピュータ可読媒体」は、命令実行システム、装置、システム又は機器によって、或いはこれらと一緒に使用するためのプログラムを収容し、記憶し、通信し、伝播し、又は転送できる任意の媒体であってよい。このコンピュータ可読媒体は、以下に限定されるわけではないが、単に例示として、電子的、磁気的、光学的、電磁的、赤外線の、又は半導体のシステム、装置、システム、機器、伝送媒体、若しくはコンピュータメモリであってもよい。
【００７４】
本発明の実施形態は、ソフトウェア又はハードウェア、或いはこの両方の組み合わせにおける制御論理の形で実行することができる。情報処理装置に対して、本発明の実施形態において開示するステップの組を実行するための指示を行うように適合された複数の命令として、この制御論理をコンピュータ可読媒体などの情報記憶媒体に記憶することができる。一般の当業者であれば、本明細書に示す開示及び教示に基づいて、本発明を実現する別の手段及び／又は方法について理解するであろう。
【００７５】
「プロセッサ」又は「処理」には、データ、信号又はその他の情報を処理する任意の人間、ハードウェアシステム及び／又はソフトウェアシステム、メカニズム又は構成要素が含まれる。プロセッサは、汎用中央演算処理装置、複数の処理ユニット、機能を実現するための専用回路、又はその他のシステムを備えたシステムを含むことができる。処理は、地理上の位置に限定されたり、或いは時間的制限を有する必要はない。例えば、プロセッサは、その機能を「リアルタイム」、「オフライン」、「バッチモード」等で実行することができる。処理の一部は、異なる時刻に及び異なるロケーションで、異なる（又は同じ）処理システムによって実行することができる。
【００７６】
本明細書を通じて、「１つの実施形態」「ある実施形態」又は「特定の実施形態」への言及は、その実施形態に関連して説明される特定の機能、構造、又は特性が、少なくとも１つの本発明の実施形態に含まれ、そして必ずしもすべての実施形態に含まれる必要があるとはかぎらないことを意味するものである。従って、「１つの実施形態では」、「ある実施形態では」又は「特定の実施形態では」というフレーズが、本明細書を通じて様々な場所でそれぞれ出現した場合でも、必ずしも同じ実施形態について言及する必要があるとはかぎらないことになる。さらに、本発明の任意の特定の実施形態の特定の機能、構造、又は特性を、１又はそれ以上の別の実施形態と任意の好適な態様で組み合わせることができる。本明細書における教示に照らして、本明細書で説明し、図示した本発明の実施形態に別の変更及び修正を加えることも可能であり、それらを本発明の思想と範囲の一部として見なすべきであることを理解されたい。
【００７７】
本発明の実施形態は、プログラムされた汎用デジタルコンピュータを用いて実現することができ、特定用途向け集積回路、プログラマブルロジック装置、フィールドプログラマブルゲートアレイ、光学、化学、生物、量子又はナノ加工システム、構成要素及びメカニズムを用いて実現することもできる。一般に、本発明の実施形態の機能は、当業で公知である任意の手段により実現することができる。分散型の、又はネットワーク化されたシステム、構成要素及び回路を使用することもできる。データの通信、又は転送は、有線、無線、又はその他の任意の手段によるものであってもよい。
【００７８】
図面／図に示した１又はそれ以上の要素は、さらに分離した又は一体化した態様で実現でき、或いは、特定のアプリケーションに従って有益なものとなるような場合、動作できないようにすることさえもできると理解されたい。コンピュータ読み取り可能媒体に記憶することができるプログラム又はコードを実行して、コンピュータが上述の方法のうちの任意の方法を実行できるようにすることもまた、本発明の思想と範囲内にある。
【００７９】
加えて、図面／図中の任意の信号矢印は例示的なものにすぎず、特に明記しない限り、本発明を限定するものではないと見なすべきである。さらに、本明細書で用いられる「又は」という用語は、特に明記しない限り、一般に「及び／又は」を意味するように意図されている。構成要素又はステップの組み合わせは、分離又は結合できることを明言していない場合であっても、これらは任意に分離又は結合できると解釈される。
【００８０】
本明細書の説明において、及びそれに続く特許請求の範囲を通じて使用される「１つの（英文不定冠詞）」及び「その（英文定冠詞）」という用語は、文脈において単数であることがはっきりと示されない限り複数の意味を含む。また、本明細書の説明において、及びそれに続く特許請求の範囲を通じて使用される「〜内（ｉｎ）」という用語は、文脈においてはっきりと示されない限り「〜内（ｉｎ）」と「〜上（ｏｎ）」という意味を含む。
【００８１】
要約に記載した内容を含む、例示した本発明の実施形態についての上述の説明は、本発明を網羅しようとしたり、或いは、本明細書で開示した詳細な形式に限定することを意図するものではない。本発明の特定の実施形態及び具体例については、例示を目的として本明細書で説明しているにすぎず、当業者であれば認識し、理解できるように、本発明の思想及び範囲内で様々な同等の変更を加えることができる。上述のように、例示した本発明の実施形態の上述の説明に照らして、本発明に対してこれらの変更を行うことができ、これらの変更は本発明の思想及び範囲内にまれることになる。
【００８２】
このように、本明細書では、本発明の特定の実施形態を参照しながら本発明について説明してきたが、上述の開示にはある程度の修正、様々な変更及び代替が意図されており、いくつかの例では、本発明の実施形態のいくつかの特徴を、記載した本発明の範囲と精神から逸脱することなく、他の特徴と対応して使用せずに使用できることが理解できよう。従って、特定の状況又は材料を本発明の本質的な範囲及び思想に適応させるために多くの変更を行うことができる。本発明は、以下の請求項で用いられる特定の用語、及び／又は本発明を実施するのに想定される最良の形態として開示する特定の実施形態に限定されるものではなく、本発明は、添付の特許請求の範囲内に属するあらゆる実施形態及びその同等物を含むということが意図される。
【図面の簡単な説明】
【００８３】
【図１】本発明の１つの実施形態による顔アニメーションを作成するための方法についてについての単純化したフロー図を示す。
【図２】顔メッシュシーケンスの顔メッシュを顔画像にはめ込むための方法についてについての単純化したフロー図を示す。
【図３】本発明の１つの実施形態による顔画像及び特徴点の例を示す図である。
【図４】本発明の１つの実施形態による特徴点を含む顔メッシュを示す図である。
【図５】本発明の１つの実施形態による最初のはめ込みを示す図である。
【図６】スケーリング、平行移動、及び回転によりはめ込まれた顔メッシュを示す図である。
【図７】本発明の１つの実施形態による顔メッシュの特徴点の顔画像の特徴点上への一致を示す図である。
【図８】テクスチャとして顔メッシュ上へ投影された画像を示す図である。
【図９】本発明の１つの実施形態による毛髪モデルを作成する方法についての単純化したフロー図を示す。
【図１０】本発明の１つの実施形態による毛髪領域のマスク画像を示す図である。
【図１１】顔メッシュ上へ投影された毛髪モデルを示す図である。
【図１２】本発明の１つの実施形態による色差を計算するための方法についての単純化したフロー図を示す。
【図１３】本発明の１つの実施形態による色の違いを示す図である。
【図１４】頂点に色の違いを使用しない場合と、色の違いを使用した場合との差を示す図である。
【図１５】本発明の１つの実施形態による顔アニメーションを作成するための単純化したフロー図を示す。
【図１６】１つの実施形態による作成されたアニメーションの結果を示す図である。
【図１７】１つの実施形態による色差を加えた画像と加えない画像とを示す図である。
【符号の説明】
【００８４】
１００  フロー図
１０２  顔メッシュシーケンスを決定
１０４  顔メッシュシーケンスの顔メッシュを顔画像にはめ込む
１０６  顔メッシュから毛髪モデルを作成
１０８  顔メッシュシーケンスにおける顔メッシュについて色差を計算
１１０  顔画像を顔メッシュ上に投影
１１２  変位値と色差とを用いて顔メッシュシーケンスを再生
【図１】
2009523288.tif 000003
【図２】
2009523288.tif 000004
【図３】
2009523288.tif 000005
【図４】
2009523288.tif 000006
【図５】
2009523288.tif 000007
【図６】
2009523288.tif 000008
【図７】
2009523288.tif 000009
【図８】
2009523288.tif 000010
【図９】
2009523288.tif 000011
【図１０】
2009523288.tif 000012
【図１１】
2009523288.tif 000013
【図１２】
2009523288.tif 000014
【図１３】
2009523288.tif 000015
【図１４】
2009523288.tif 000016
【図１５】
2009523288.tif 000017
【図１６】
2009523288.tif 000018
【図１７】
2009523288.tif 000019
【国際調査報告】
2009523288.tif 000020
2009523288.tif 000021