(57)【特許請求の範囲】
【請求項１】
１または複数のプロセッサと、
ユーザの顔データを受信し、前記ユーザの感情の状態および前記感情の状態の強度を判断すべく、前記顔データを解析し、且つ前記ユーザの前記感情の状態および前記強度の前記判断の結果に少なくとも部分的に基づいて、アバターのアニメーションを補完する追加のアニメーションを操縦すべく、前記プロセッサによって動作されるべきアニメーション拡張エンジンと、
を備える、アバターをアニメートするための装置であって、
追加のアニメーションを操縦すべく、前記アニメーション拡張エンジンは、前記感情の状態に基づいて追加のアニメーションを選択し、前記顔データの解析によって取得した前記強度に基づいて追加のアニメーションの追加量を変化させる、装置。
【請求項２】
前記追加量は、前記アバターにおける前記追加のアニメーションの量、数および速度の少なくとも１つである、請求項１に記載の装置。
【請求項３】
顔データを受信すべく、前記アニメーション拡張エンジンは、前記ユーザの顔メッシュの顔ランドマークデータを受信する、請求項１または２に記載の装置。
【請求項４】
前記顔データを解析すべく、前記アニメーション拡張エンジンは、複数の感情の分類子を含み、前記複数の感情の分類子はそれぞれ、前記顔データを処理し、前記複数の感情の分類子の対応する感情の状態に対する複数の信頼度値を生成する、請求項１から３のいずれか一項に記載の装置。
【請求項５】
前記複数の感情の分類子は、怒りの状態の分類子、嫌悪の状態の分類子、恐れの状態の分類子、幸せな状態の分類子、悲しい状態の分類子、または驚いた状態の分類子のうちの少なくとも１つを含む、請求項４に記載の装置。
【請求項６】
追加のアニメーションを操縦すべく、前記アニメーション拡張エンジンは、前記追加のアニメーションのためのエミッタを作成し、前記エミッタから放出されるべき粒子の集まりを生成する、請求項１から５のいずれか一項に記載の装置。
【請求項７】
前記アニメーション拡張エンジンは、さらに、動きの軌道を取得し、前記エミッタから放出されるべき前記粒子のための前記動きの軌道における速度を計算する、請求項６に記載の装置。
【請求項８】
前記ユーザの１または複数のイメージフレームを受信し、前記ユーザの顔の表情を検出および追跡すべく、前記１または複数のイメージフレームを解析し、且つ前記１または複数のイメージフレームの前記解析の結果に少なくとも部分的に基づいて、前記顔データを前記アニメーション拡張エンジンに提供すべく、前記１または複数のプロセッサによって動作されるべき顔の表情トラッカをさらに備える、請求項１から７のいずれか一項に記載の装置。
【請求項９】
前記１または複数のプロセッサによって動作されるべきアバターアニメーションエンジンをさらに備え、
前記顔の表情トラッカは、検出および追跡された前記ユーザの顔の表情に基づいて、前記アバターをアニメートすべく、前記アバターアニメーションエンジンを操縦し、
追加のアニメーションを操縦すべく、前記アニメーション拡張エンジンは、検出および追跡された前記ユーザの顔の表情に基づいて、前記感情の状態ベースの追加のアニメーションを用いて、前記アバターの前記アニメーションを補完するように前記アバターアニメーションエンジンを操縦する、請求項８に記載の装置。
【請求項１０】
前記顔の表情トラッカは、検出および追跡された前記ユーザの顔の表情に基づいてプライマリアニメーションメッセージを生成し、前記ユーザの顔の表情に基づいて前記アバターをアニメートするように、前記アバターアニメーションエンジンを操縦すべく、前記プライマリアニメーションメッセージを前記アバターアニメーションエンジンに送信する、プライマリアニメーションメッセージ生成機能を含み、
前記アニメーション拡張エンジンは、検出された前記ユーザの前記感情の状態に基づいて補完アニメーションメッセージを生成し、前記ユーザの顔の表情に基づいて、前記感情の状態ベースの追加のアニメーションを用いて、前記アバターの前記アニメーションを補完するように前記アバターアニメーションエンジンを操縦すべく、前記補完アニメーションメッセージを前記アバターアニメーションエンジンに送信する、補完アニメーションメッセージ生成機能を含む、請求項９に記載の装置。
【請求項１１】
前記装置は、スマートフォン、コンピューティングタブレット、ウルトラブック（登録商標）、ｅブック、またはラップトップコンピュータから選択された１つである、請求項８から１０のいずれか一項に記載の装置。
【請求項１２】
コンピューティングデバイスによって、ユーザの顔データを受信する段階と、
前記コンピューティングデバイスによって、前記ユーザの感情の状態および前記感情の状態の強度を判断すべく、前記顔データを解析する段階と、
前記コンピューティングデバイスによって、前記ユーザの前記感情の状態および前記強度の前記判断の結果に少なくとも部分的に基づいて、アバターのアニメーションを補完する追加のアニメーションを操縦する段階と、を備える、アバターをアニメートするための方法であって、
追加のアニメーションを操縦する段階は、前記感情の状態に基づいて追加のアニメーションを選択し、前記顔データの解析によって取得した前記強度に基づいて追加のアニメーションの追加量を変化させる段階を含む、方法。
【請求項１３】
前記追加量は、前記アバターにおける前記追加のアニメーションの量、数および速度の少なくとも１つである、請求項１２に記載の方法。
【請求項１４】
受信する段階は、前記ユーザの顔メッシュの顔ランドマークデータを受信する段階を含む、請求項１２または１３に記載の方法。
【請求項１５】
解析する段階は、複数の感情の分類子の対応する感情の状態に対する複数の信頼度値を生成すべく、前記複数の感情の分類子で前記顔データをそれぞれ処理する段階を含む、請求項１２から１４のいずれか一項に記載の方法。
【請求項１６】
前記感情の状態は、怒りの状態、嫌悪の状態、恐れの状態、幸せな状態、悲しい状態、または驚いた状態のうちの少なくとも１つを含む、請求項１５に記載の方法。
【請求項１７】
追加のアニメーションを操縦する段階は、前記追加のアニメーションのためのエミッタを作成する段階と、前記エミッタから放出されるべき粒子の集まりを生成する段階と、を含む、請求項１２から１６のいずれか一項に記載の方法。
【請求項１８】
追加のアニメーションを操縦する段階は、さらに、動きの軌道を取得する段階と、前記エミッタから放出されるべき前記粒子のための前記動きの軌道における速度を計算する段階と、を含む、請求項１７に記載の方法。
【請求項１９】
前記ユーザの１または複数のイメージフレームを受信する段階と、
前記ユーザの顔の表情を検出および追跡すべく、前記１または複数のイメージフレームを解析する段階と、
前記１または複数のイメージフレームの前記解析の結果に少なくとも部分的に基づいて、前記顔データを提供する段階と、
をさらに備える、請求項１２から１８のいずれか一項に記載の方法。
【請求項２０】
さらに、検出および追跡された前記ユーザの顔の表情に基づいて、前記アバターのアニメーションを操縦する段階を備え、
追加のアニメーションを操縦する段階は、検出および追跡された前記ユーザの顔の表情に基づいて、前記感情の状態ベースの追加のアニメーションを用いて前記アバターの前記アニメーションを補完する段階を含む、請求項１９に記載の方法。
【請求項２１】
アニメーションを操縦する段階は、検出および追跡された前記ユーザの顔の表情に基づいて、プライマリアニメーションメッセージを生成する段階と、前記ユーザの顔の表情に基づいて、前記アバターのアニメーションを操縦すべく、前記プライマリアニメーションメッセージを送信する段階と、を含み、
追加のアニメーションを操縦する段階は、検出された前記ユーザの前記感情の状態に基づいて、補完アニメーションメッセージを生成する段階と、前記ユーザの顔の表情に基づいて、前記感情の状態ベースの追加のアニメーションを用いて前記アバターの前記アニメーションを補完するように、アバターのアニメーションを操縦すべく、前記補完アニメーションメッセージを送信する段階と、を含む、請求項２０に記載の方法。
【請求項２２】
コンピューティングデバイスに、請求項１２から２１のいずれか一項に記載の方法を実行させるためのコンピュータプログラム。
【請求項２３】
ユーザの顔データを受信するための手段と、
前記ユーザの感情の状態および前記感情の状態の強度を判断すべく、前記顔データを解析するための手段と、
前記ユーザの前記感情の状態および前記強度の前記判断の結果に少なくとも部分的に基づいて、アバターのアニメーションを補完する追加のアニメーションを操縦するための手段と、を備える、アバターを生成またはアニメートするための装置であって、
追加のアニメーションを操縦するための手段は、前記感情の状態に基づいて追加のアニメーションを選択し、前記顔データの解析によって取得した前記強度に基づいて追加のアニメーションの追加量を変化させる手段を含む、装置。
【請求項２４】
前記追加量は、前記アバターにおける前記追加のアニメーションの量、数および速度の少なくとも１つである、請求項２３に記載の装置。
【請求項２５】
受信するための手段は、前記ユーザの顔メッシュの顔ランドマークデータを受信するための手段を含む、請求項２３または２４に記載の装置。
【請求項２６】
解析するための手段は、複数の感情の分類子の対応する感情の状態に対する複数の信頼度値を生成すべく、前記顔データをそれぞれ処理するための手段を含み、
前記感情の状態は、怒りの状態、嫌悪の状態、恐れの状態、幸せな状態、悲しい状態または驚いた状態のうちの少なくとも１つを含む、請求項２３から２５のいずれか一項に記載の装置。
【請求項２７】
追加のアニメーションを操縦するための手段は、前記追加のアニメーションのためのエミッタを作成するための手段と、前記エミッタから放出されるべき粒子の集まりを生成するための手段と、を含み、
追加のアニメーションを操縦するための手段は、さらに、動きの軌道を取得するための手段と、前記エミッタから放出されるべき前記粒子のための前記動きの軌道における速度を計算するための手段と、を含む、請求項２３から２６のいずれか一項に記載の装置。
【請求項２８】
前記ユーザの１または複数のイメージフレームを受信するための手段と、
前記ユーザの顔の表情を検出および追跡すべく、前記１または複数のイメージフレームを解析するための手段と、前記１または複数のイメージフレームの前記解析の結果に少なくとも部分的に基づいて、前記顔データを提供するための手段と、をさらに備える、請求項２３から２７のいずれか一項に記載の装置。
【請求項２９】
請求項２２に記載のコンピュータプログラムを記録した１または複数のコンピュータ可読記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、データ処理の分野に関する。より具体的には、本開示は、アバターの生成およびアニメーションに関する。
【背景技術】
【０００２】
ここに記載された背景技術の記載は、本開示の内容を一般的に示す目的のものである。本明細書に別途の記載がない限り、この箇所に記載された資料は、本願の特許請求の範囲に対する先行技術ではなく、それらがこの箇所に含まれていることにより、先行技術であると認められることはない。
【０００３】
ユーザのグラフィック表現としてのアバターが、仮想世界において非常にポピュラーである。しかしながら、多くの既存アバターシステムは静的なものであり、テキスト、スクリプトまたは音声によって操縦されるものは、それらのうちほとんどない。他のアバターシステムの中には、グラフィックインターチェンジ形式（ＧＩＦ）のアニメーションを使用するものがあり、それは、順々に再生される、一連の予め定義された静的なアバターイメージである。近年、コンピュータビジョン、カメラ、イメージ処理等の進歩に伴い、アバターの中には、顔の表情によって操縦されるものがある。しかしながら、既存システムは、計算集中的になる傾向があり、高性能な汎用のグラフィックプロセッサが必要となり、スマートフォンまたはコンピューティングタブレット等のモバイルデバイス上では一般的に十分に動作しない。さらに、ユーザは、彼らの感情を電子通信またはソーシャルネットワークで表現できる一方、既存アバターシステムは、このような利便性を提供していない。
【図面の簡単な説明】
【０００４】
アバターの生成およびアニメーションに係る実施形態は、以下の詳細な説明を添付図面と組み合わせることで容易に理解できる。詳細な説明を簡素化すべく、同様の参照符号は、同様の構造的要素を示す。添付図面中、実施形態は、限定ではなく、例示として示されている。
【図１】様々な実施形態による、感情拡張アニメーションを備えたアバターシステムのブロック図を示す。
【図２】様々な実施形態による、感情拡張アバターアニメーションの例を示す。
【図３】様々な実施形態による、感情の状態を判断するために好適なランドマークを備えた例示的な顔メッシュを示す。
【図４】様々な実施形態による、図１の顔の表情追跡機能をさらに詳細に示す。
【図５】様々な実施形態による、図１のアニメーション拡張エンジンの処理フローの態様を示す。
【図６】様々な実施形態による、図１のアニメーション拡張エンジンの処理フローのさらなる態様を示す。
【図７】様々な実施形態による、アバターの感情拡張アニメーションの例示的な処理の態様を示す。
【図８】様々な実施形態による、例示的な粒子の軌道を示す。
【図９】開示された実施形態による、本開示の様々な態様を実施するために好適に用いられる例示的なコンピュータシステムを示す。
【図１０】開示された実施形態による、図１〜８を参照して説明される方法を実施するための命令を有する記録媒体を示す。
【発明を実施するための形態】
【０００５】
本明細書において、アバターの感情拡張アニメーションに関連する装置、方法および記録媒体が開示される。実施形態において、装置は、ユーザの顔データを受信し、上記ユーザの感情の状態を判断すべく、上記顔データを解析し、且つ上記ユーザの上記感情の状態の上記判断の結果に少なくとも部分的に基づいて、上記アバターのアニメーションを補完する追加のアニメーションを操縦するためのアニメーション拡張エンジンを備えてよい。
【０００６】
実施形態において、上記装置は、さらに、上記ユーザの１または複数のイメージフレームを受信し、上記ユーザの顔の表情を検出および追跡すべく、上記１または複数のイメージフレームを解析し、且つ上記１または複数のイメージフレームの上記解析の結果に少なくとも部分的に基づいて、上記顔データを上記アニメーション拡張エンジンに提供するための顔の表情トラッカを備えてよい。
【０００７】
実施形態において、上記装置は、さらに、アバターアニメーションエンジンを備えてよく、上記顔の表情トラッカは、検出および追跡された上記ユーザの顔の表情に基づいて、上記アバターをアニメートすべく、上記アバターアニメーションエンジンを操縦し、追加のアニメーションを操縦すべく、上記アニメーション拡張エンジンは、検出および追跡された上記ユーザの顔の表情に基づいて、上記追加のアニメーションを用いて、上記アバターの上記アニメーションを補完すべく、上記アバターアニメーションエンジンを操縦する。
【０００８】
以下の詳細な説明においては、本願の一部を成す添付図面に対し参照がなされる。添付図面全体にわたり、同様の参照番号は同様の部材を指し、添付図面には、実施されてよい実施形態が例示として図示されている。他の実施形態が用いられてよいこと、および本開示の範囲から逸脱することなく、構造的または論理的変更を成し得ることを理解されたい。従って、以下の詳細な説明は、限定的な意味に解釈されるべきではなく、実施形態の範囲は、添付の特許請求の範囲およびその均等内容によって規定される。
【０００９】
本開示に係る複数の態様が、以下の説明に開示されている。本開示の代替的な実施形態およびそれらの均等内容が、本開示の精神または範囲から離れることなく、考案されてよい。以下に開示される同様の構成要素は、図面中、同様の参照符号で示されることに留意されたい。
【００１０】
特許請求された主題の理解に最も寄与する態様で、様々な処理が複数の別個の動作または処理として順番に記載されてよい。しかしながら、記載の順序は、これらの処理が必然的に順序に依存するものであることを示唆するものとして解釈されるべきではない。特に、これらの処理は、提示の順序で実行されなくてよい。記載された処理は、記載された実施形態と異なる順序で実行されてよい。様々な追加の処理が実行されてよく、および／または、記載された処理は、追加的な実施形態において省略されてよい。
【００１１】
本開示の目的において、「Ａおよび／またはＢ」という文言は、（Ａ）、（Ｂ）または（ＡおよびＢ）を意味する。本開示の目的において、「Ａ、Ｂおよび／またはＣ」という文言は、（Ａ）、（Ｂ）、（Ｃ）、（ＡおよびＢ）、（ＡおよびＣ）、（ＢおよびＣ）または（Ａ、ＢおよびＣ）を意味する。 
【００１２】
本詳細な説明は、「一実施形態において（ｉｎ  ａｎ  ｅｍｂｏｄｉｍｅｎｔ）、」または「実施形態において（ｉｎ  ｅｍｂｏｄｉｍｅｎｔｓ）、」という文言を使用することがあるが、これらはそれぞれ、同一または異なる実施形態のうちの１または複数を指してよい。さらに、本開示の実施形態に関し使用される「備える（ｃｏｍｐｒｉｓｉｎｇ）」、「含む（ｉｎｃｌｕｄｉｎｇ）」、「有する（ｈａｖｉｎｇ）」等といった用語は、同義語である。
【００１３】
本明細書で使用される「モジュール」という用語は、１または複数のソフトウェアまたはファームウェアプログラムを実行する特定用途向け集積回路（ＡＳＩＣ）、電子回路、プロセッサ（共有、専用、またはグループ）、および／またはメモリ（共有、専用、またはグループ）、組み合わせロジック回路、並びに／または記載された機能を提供する他の好適なコンポーネントを指してよく、それらの一部であってよく、またはそれらを含んでよい。
【００１４】
ここで図１を参照すると、開示された実施形態による、感情拡張アバターアニメーションを備えたアバターシステムが示されている。図示の通り、実施形態において、アバターシステム１００は、互いに連結され且つユーザの感情の状態に基づいてアニメーションを拡張することを含め、ユーザの顔の表情および／または頭部姿勢に少なくとも部分的に基づいて、アバターをアニメートするように構成された、顔の表情および頭部姿勢トラッカ１０２、アニメーション拡張エンジン１０３、アバターアニメーションエンジン１０４、およびアバターレンダリングエンジン１０６を含んでよい。
【００１５】
実施形態において、顔の表情および頭部姿勢トラッカ１０２は、カメラ等のイメージキャプチャリングデバイス１１４から、ユーザの１または複数のイメージフレーム１１８を受信するように構成されてよい。顔の表情および頭部姿勢トラッカ１０２は、ユーザの頭部姿勢を含め、ユーザの顔の表情のために、イメージフレーム１１８を解析してよい。さらに、顔の表情および頭部姿勢トラッカ１０２は、アニメーション拡張エンジン１０３のための顔の表情データ１１９、および判断されたユーザの顔の表情および／または頭部姿勢に基づいて、アバターのプライマリアニメーションを操縦するための複数のプライマリアニメーションメッセージを出力するように構成されてよい。
【００１６】
実施形態において、アニメーション拡張エンジン１０３は、顔の表情データ１１９を受信し且つ顔の表情データ１１９を解析して、ユーザの感情の状態を判断するように構成されてよい。さらに、アニメーション拡張エンジン１０３は、判断されたユーザの感情の状態に基づいて、アバターのアニメーションを拡張すべく、複数の補完アニメーションメッセージを出力するように構成されてよい。実施形態において、判断された感情の状態は、サブ状態および／または感情の状態／サブ状態の強度を含んでよい。
【００１７】
ここで図２も参照すると、様々な実施形態による、複数の例示的なアバターの感情拡張アニメーションが示されている。スナップショット１４２は、ユーザが、例えば、悲しい状態にあると判断された場合に、涙を用いて、アバターアニメーションを拡張してよい方法を示す。スナップショット１４４は、ユーザが、例えば、驚いた状態にあると判断された場合に、感嘆符を用いて、アバターアニメーションを拡張してよい方法を示す。スナップショット１４６は、ユーザが、例えば、幸せでロマンチックな状態にあると判断された場合に、複数のハートを用いて、アバターアニメーションを拡張してよい方法を示す（全般的な幸せな状態に対し、ここでは、任意の数の幸せな顔のうちの１または複数が代わりにレンダリングされてよい）。実施形態において、拡張の量、例えば、スナップショット１４２における涙の量および／または速度、スナップショット１４４における感嘆符の数、およびハートの数および／または動きの速度は、感情の状態／サブ状態の判断された強度により変わってよい。
【００１８】
ここで図３を参照すると、様々な実施形態による、感情の状態を判断するために好適なランドマークを備えた例示的な顔メッシュが示されている。顔メッシュ１５２は、ニュートラルな無感情の状態を示す一方、顔メッシュ１５４は、キスを伝えるために口を突き出した状態の幸せでロマンチックな状態を示す。実施形態において、各顔メッシュ１５２／１５４は、示される実施形態に対し、複数の予め定義されたランドマーク６５を含んでよい。さらに、各顔メッシュ１５２／１５４により描写される顔の表情は、例えば、複数のブレンドシェイプ１８（以下により詳しく説明する）で形成されてよい。顔の表情データ１１９は、ランドマークを記述するデータを含む、顔メッシュを記述するデータを含んでよい。ランドマークを記述するデータと共に、顔メッシュ１５２／１５４は、例えば、顔の表情および頭部姿勢トラッカ１０２によって、イメージフレーム１１８から導かれてよい。
【００１９】
図１の参照に戻ると、実施形態において、処理の効率性のため、アバターシステム１００は、複数の予め定義されたブレンドシェイプを用いて、アバターをアニメートするように構成されてよく、アバターシステム１００を様々なモバイルデバイスのために特に好適にする。ニュートラルな表情、並びに開いた口、微笑んだ口、上がった眉および下がった眉、瞬き等のいくつかの典型的な表情を持つモデルがまず、前もって事前構築されてよい。ブレンドシェイプは、顔の表情および頭部姿勢トラッカ１０２の様々な機能および対象のモバイルデバイスのシステム要件のために、決定または選択されてよい。処理中、顔の表情および頭部姿勢トラッカ１０２は、様々なブレンドシェイプを選択し、判断された顔の表情および／または頭部姿勢に基づいて、当該ブレンドシェイプに重みを割り当ててよい。選択されたブレンドシェイプおよびそれらの割り当てられた重みは、プライマリアニメーションメッセージ１２０の一部として出力されてよい。
【００２０】
ブレンドシェイプの選択およびブレンドシェイプの重み（αｉ）を受信すると、アバターアニメーションエンジン１０４は、以下の式（式１）を用いて表現された顔の結果を生成してよい。
【００２１】
【数１】
0006798707.tif 000002
式中、Ｂ＊は、ターゲットの表情のある顔、Ｂ０はニュートラルな表情を持つベースモデル、およびΔＢｉは、特定の表情のためのベースモデルに基づく頂点位置オフセットを格納するｉ番目のブレンドシェイプである。
【００２２】
より具体的には、実施形態において、顔の表情および頭部姿勢トラッカ１０２は、顔の表情追跡機能１２２およびプライマリアニメーションメッセージ生成機能１２４で構成されてよい。実施形態において、顔の表情追跡機能１２２は、複数のイメージフレーム内の、ユーザの顔の顔アクションの動きおよび／またはユーザの頭部の頭部姿勢ジェスチャを検出し、且つ判断された顔の表情および／または頭部姿勢をリアルタイムに描写する複数の顔パラメータを出力するように構成されてよい。例えば、複数の顔の動きパラメータは、目および／または口の動き等の検出された顔アクションの動きを描写してよく、および／または、頭部姿勢ジェスチャパラメータは、頭部回転、動き、および／またはカメラに近づく若しくはカメラから遠ざかる等の検出された頭部姿勢ジェスチャを描写する。さらに、実施形態において、顔の表情追跡機能１２２は、例えば、顔メッシュの文脈においては、様々な顔ランドマークに関連付けられたデータ等の顔データ１１９を出力するよう構成されてよい。
【００２３】
実施形態において、顔アクションの動きおよび頭部姿勢ジェスチャは、例えば、イメージフレームのピクセルサンプリングに基づいて、顔にある口および目並びに頭部についてのフレーム間の差異を通して、検出されてよい。機能ブロックのうちの様々なものが、ピッチ、ヨーおよび／またはロール、水平方向および鉛直方向沿いの並進距離、並びにカメラに近づくまたはカメラから遠ざかることを含む、ユーザの頭部の回転角度を計算し、且つ最終的に頭部姿勢ジェスチャパラメータの一部として出力するように構成されてよい。計算は、複数のイメージフレームのサブサンプリングされたピクセルのサブセットに基づいてよく、例えば、ダイナミックテンプレートマッチング、再登録等を適用することが挙げられる。これらの機能ブロックは、十分に正確であろうが、必要とされるそれらの処理能力において拡張可能であり、アバターシステム１００を、スマートフォンおよび／またはコンピューティングタブレット等の様々なモバイルコンピューティングデバイスによってホストされるため、特に好適にしてよい。
【００２４】
例示的な顔の表情追跡機能１２２について、図４を参照してさらに詳しく後述することにする。
【００２５】
実施形態において、プライマリアニメーションメッセージ生成機能１２４は、ユーザの顔の表情および頭部姿勢を描写する顔の表情および頭部姿勢パラメータに基づいて、アバターのアニメーションを操縦すべく、プライマリアニメーションメッセージ１２０を選択的に出力するように構成されてよい。実施形態において、プライマリアニメーションメッセージ生成機能１２４は、顔アクション単位を、アバターのアニメーションのためのブレンドシェイプおよびそれらの割り当てられた重みに変換するように構成されてよい。顔追跡は、アバターレンダリング側と共に、異なるメッシュジオメトリおよびアニメーション構造を使用してよいので、プライマリアニメーションメッセージ生成機能１２４はまた、アニメーション係数変換および顔モデル再ターゲット化を実行するように構成されてもよい。実施形態において、プライマリアニメーションメッセージ生成機能１２４は、ブレンドシェイプおよびそれらの重みを、プライマリアニメーションメッセージ１２０の一部として出力してよい。プライマリアニメーションメッセージ１２０は、「下唇を下げる」（ＬＬＩＰＤ）、「両唇を広げる」（ＢＬＩＰＷ）、「両唇を上げる」（ＢＬＩＰＵ）、「鼻に皺を寄せる」（ＮＯＳＥＷ）、「眉を下げる」（ＢＲＯＷＤ）等の複数のアニメーションを指定してよい。
【００２６】
引き続き図１を参照すると、実施形態において、アニメーション拡張エンジン１０３は、複数の感情の分類子１２６および補完アニメーションメッセージ生成機能１２８で構成されてよい。実施形態において、感情の分類子１２６は、顔の表情データ１１９を解析し、解析の結果に基づいて、ユーザの感情の状態を判断および分類するように予めトレーニングされてよい。実施形態において、感情の分類子１２６は、例えば、サポートベクターマシン等の複数の特徴的な分類技術のうちの任意のものを使用するように構成されてよい。
【００２７】
実施形態において、アニメーション拡張エンジン１０３は、怒りの状態の分類子、嫌悪の状態の分類子、恐れの状態の分類子、幸せな状態の分類子、悲しい状態の分類子および驚いた状態の分類子という、少なくとも６個の予めトレーニングされた感情の分類子１２６で構成されてよい。実施形態において、各分類子は、顔メッシュ内の顔ランドマークに関連付けられた顔データに基づき、感情の状態を解析、判断および分類するように構成されてよい。例えば、これらの分類子は、眉の位置および形状（例えば、眉が上がっている）、口の位置および形状（例えば、口が開いているかどうか、および開き具合、または口がキスをするように突き出ているかどうか）等に基づいて、感情の状態を判断および分類してよい。実施形態において、既に述べた通り、分類子は、感情の状態の中の感情のサブ状態、例えば、ユーザが幸せな状態の中でロマンチックな状態にある等を判断してよい。
【００２８】
実施形態において、各分類子はまた、判断された対応する各感情の状態に対し、例えば、０から７の範囲の値等の強度値を出力してよく、０は強くない、および７は非常に強い（例えば、感情の状態が悲しい状態であると判断された場合、０は少しの悲しさ、および７はとても悲しい）といった具合である。実施形態において、各分類子はまた、判断された対応する各感情の状態（および強度）に対し、例えば、０から７の範囲の値等の信頼度値を出力してよく、０は信頼性がない、および７は最も信頼性が高いといった具合である。
【００２９】
実施形態において、補完アニメーションメッセージ生成機能１２８は、ユーザの（最も信頼性の高い）判断された感情の状態（および強度）に基づいて、アバターのアニメーションを拡張すべく、補完アニメーションメッセージ１２１を選択的に出力するように構成されてよい。実施形態において、補完アニメーションメッセージ生成機能１２８は、アバターのアニメーションを拡張するための拡張を提供するように構成されてよいが、そのようなものとしては、限定はされないが、涙、感嘆符、幸せな顔、ハート等が挙げられる。実施形態において、補完アニメーションメッセージ１２１は、プライマリアニメーションメッセージ１２０とフォーマットおよび構造において類似してよい。
【００３０】
引き続き図１を参照すると、アバターアニメーションエンジン１０４は、顔の表情および頭部姿勢トラッカ１０２によって出力されたプライマリアニメーションメッセージ１２０およびアニメーション拡張エンジン１０３によって出力された補完アニメーションメッセージ１２１を受信するように構成され、感情ベースの拡張を用いて、アバターをアニメートし、ユーザの顔の表情および／またはスピーチをアバターに複製すべく、アバターモデルを操縦するように構成されてよい。
【００３１】
アバターレンダリングエンジン１０６は、アバターアニメーションエンジン１０４によってアニメートおよび補完される通り、拡張を含め、アバターを描画するように構成されてよい。実施形態において、アニメートされるアバターの描画およびその拡張は、ホストコンピューティングシステム（アバターシステム１００をホストする）のグラフィックプロセッサを通して、促進されてよい。
【００３２】
顔の表情および頭部姿勢トラッカ１０２、アニメーション拡張エンジン１０３、アバターアニメーションエンジン１０４およびアバターレンダリングエンジン１０６はそれぞれ、特定用途向け集積回路（ＡＳＩＣ）または適切なロジックでプログラムされたフィールドプログラマブルゲートアレイ（ＦＰＧＡ）等のプログラム可能なデバイス等のハードウェア、汎用プロセッサおよび／またはグラフィックプロセッサ、またはこれら両方の組み合わせによって実行されるべきソフトウェアで実装されてよい。
【００３３】
モーション転送およびメッシュ変形等の他の顔のアニメーション技術と比較して、顔のアニメーションのためのブレンドシェイプを使用することは、いくつかの利点を有してよい。すなわち、１）表情のカスタマイズ：表情は、アバターモデルの作成時に、アバターの概念および特性に従いカスタマイズされてよい。アバターモデルは、ユーザにとってより面白く、より魅力的にされてよい。２）低計算コスト：計算機能は、モデルサイズに比例して構成されてよく、並列処理のために、より好適にされてよい。３）優れた拡張性：より多くの表情をフレームワークに追加することで、より容易化されてよい。
【００３４】
これらの特徴が、個別におよび組み合わせにおいて、アバターシステム１００を、様々なモバイルコンピューティングデバイスによってホストされるために特に好適にすることは、当業者に自明なところである。しかしながら、アバターシステム１００は、スマートフォン、ファブレット、コンピューティングタブレット、ラップトップコンピュータまたはｅリーダ等のモバイルデバイス上で処理されるために特に好適に設計される一方、本開示は、このように限定はされない。また、アバターシステム１００は、通常のモバイルデバイスよりコンピュータ処理能力が高いコンピューティングデバイス、例えば、デスクトップコンピュータ、ゲームコンソール、セットトップボックス、またはコンピュータサーバ上で処理されてよいことが想定されている。以下、ポケットアバターシステム１００の上記の態様および他の態様について、さらに詳しく説明する。
【００３５】
ここで図４を参照すると、様々な実施形態による、図１の顔の表情追跡機能１２２の一例示的実装がさらに詳しく示されている。図示の通り、実施形態において、顔の表情追跡機能１２２は、示されるように互いに連結された顔検出機能ブロック２０２、ランドマーク検出機能ブロック２０４、初期の顔メッシュフィッティング機能ブロック２０６、顔の表情推定機能ブロック２０８、頭部姿勢追跡機能ブロック２１０、口の開き推定機能ブロック２１２、顔メッシュ追跡機能ブロック２１４、追跡検証機能ブロック２１６、瞬きの検出および口の補正機能ブロック２１８、および顔メッシュ適合ブロック２２０を含んでよい。
【００３６】
実施形態において、顔検出機能ブロック２０２は、受信される複数のイメージフレームのうちの１または複数のウィンドウスキャンを通して、顔を検出するように構成されてよい。各ウィンドウ位置において、修正されたセンサス変換（ＭＣＴ）機能が抽出されてよく、カスケード分類子が、顔を探すために適用されてよい。ランドマーク検出機能ブロック２０４は、例えば、目の中心、鼻尖、口角および顔の輪郭ポイント等の、顔におけるランドマークポイントを検出するように構成されてよい。顔が長方形であるとして、初期のランドマーク位置は、平均的な顔の形状に従い、付与されてよい。以降、正確なランドマーク位置は、明示の形状回帰（ＥＳＲ）方法を通して、反復的に検出されてよい。
【００３７】
実施形態において、初期の顔メッシュフィッティング機能ブロック２０６は、顔上で検出された複数のランドマークポイントに少なくとも部分的に基づいて、顔メッシュの３Ｄ姿勢を初期化するように構成されてよい。Ｃａｎｄｉｄｅ３ワイヤフレーム頭部モデルが、使用されてよい。頭部モデルの回転角度、並進ベクトルおよびスケーリング係数は、ＰＯＳＩＴアルゴリズムを用いて推定されてよい。結果的に、イメージプレーンへの３Ｄメッシュの投影は、２Ｄランドマークとマッチングしてよい。顔の表情推定機能ブロック２０８は、顔上で検出された複数のランドマークポイントに少なくとも部分的に基づいて、複数の顔の動きパラメータを初期化するように構成されてよい。Ｃａｎｄｉｄｅ３頭部モデルは、口の幅、口の高さ、鼻のしわ、目の開き等の顔アクションパラメータ（ＦＡＵ）によって制御されてよい。これらのＦＡＵパラメータは、最小二乗法を通して推定されてよい。
【００３８】
頭部姿勢追跡機能ブロック２１０は、ピッチ、ヨーおよび／またはロール、水平方向および鉛直方向沿いの並進距離、並びにカメラに近づくまたはカメラから遠ざかることを含む、ユーザの頭部の回転角度を計算するように構成されてよい。計算は、複数のイメージフレームのサブサンプリングされたピクセルのサブセットに基づいてよく、ダイナミックテンプレートマッチングおよび再登録を適用することが挙げられる。口の開き推定機能ブロック２１２は、口の上唇と下唇との開きの距離を計算するように構成されてよい。口のジオメトリの相関関係（開／閉）および外観は、サンプルデータベースを用いてトレーニングされてよい。さらに、口の開きの距離は、複数のイメージフレームのうちの現在のイメージフレームのサブサンプリングされたピクセルのサブセットに基づいて推定されてよく、ＦＥＲＮ回帰を適用する。
【００３９】
顔メッシュ追跡機能ブロック２１４は、複数のイメージフレームのサブサンプリングされたピクセルのサブセットに基づいて、顔の範囲の連続性および顔メッシュによる顔の動きの反映を維持すべく、顔メッシュの位置、向きまたは変形を調整するように構成されてよい。調整は、Ｃａｎｄｉｄｅ３モデルにおける予め定義されたＦＡＵパラメータが適用され、連続的なイメージフレームのイメージ整列を通して実行されてよい。頭部姿勢追跡機能ブロック２１０および口の開きの結果は、パラメータの最適化に対するソフト制約として機能してよい。追跡検証機能ブロック２１６は、顔メッシュ追跡状態をモニタリングし、顔の再位置特定が必要かどうかを判断するように構成されてよい。追跡検証機能ブロック２１６は、当該判断をするために、１または複数の顔の領域分類子または目の領域分類子を適用してよい。追跡機能が、円滑に実行されている場合、処理は、続いて次のフレームの追跡を実行してよく、さもなければ、処理は、現在のフレームに対し、顔が再位置特定されるように、顔検出機能ブロック２０２に戻ってよい。
【００４０】
瞬きの検出および口の補正機能ブロック２１８は、目の瞬きの状態および口の形状を検出するように構成されてよい。目の瞬きは、オプティカルフロー解析を通して検出されてよい一方、口の形状／動きは、口のフレーム間ヒストグラム差分の検出を通して推定されてよい。顔メッシュ追跡全体の仕上げとして、瞬きの検出および口の補正機能ブロック２１８は、より正確な瞬きの推定を生成してよく、口の動きの感度を向上させてよい。
【００４１】
顔メッシュ適合機能ブロック２２０は、導き出された顔アクション単位に従い、顔メッシュを再構築し、当該顔メッシュ下で現在のイメージフレームの再サンプリングを行い、次のイメージフレームの処理を設定するように構成されてよい。
【００４２】
例示的な顔の表情追跡機能１２２は、発明の名称「顔の表情および／またはインタラクションドリブンのアバター装置および方法（ＦＡＣＩＡＬ  ＥＸＰＲＥＳＳＩＯＮ  ＡＮＤ／ＯＲ  ＩＮＴＥＲＡＣＴＩＯＮ  ＤＲＩＶＥＮ  ＡＶＡＴＡＲ  ＡＰＰＡＲＡＴＵＳ  ＡＮＤ  ＭＥＴＨＯＤ）」である、２０１４年３月１９日に出願された、同時係属中の特許出願であるＰＣＴ特許出願第ＰＣＴ／ＣＮ２０１４／０７３６９５号に係る主題である。上記の通り、アーキテクチャ、機能ブロック間のワークロード分散は、顔の表情追跡機能１２２を、ラップトップ若しくはデスクトップコンピュータ、またはサーバと比較して、比較的より限定されたコンピューティングリソースを備えたポータブルデバイスに対し、特に好適にする。さらなる詳細については、ＰＣＴ特許出願第ＰＣＴ／ＣＮ２０１４／０７３６９５号を参照されたい。
【００４３】
代替の実施形態において、顔の表情追跡機能１２２は、当該技術分野で既知の複数の他の顔トラッカのうちの任意のものであってよい。
【００４４】
ここで図５を参照すると、様々な実施形態による、図１のアニメーション拡張エンジンの処理フローの態様が示されている。より具体的には、処理２５０と示された、図１の感情の分類子１２６の処理フローの態様が示されている。図示の通り、ユーザの感情の状態を判断および分類するための処理２５０は、ブロック２５２および２５４における処理を備えてよい。ブロック２５２において、例えば、顔メッシュの顔ランドマークに関連付けられた顔データのような顔データが受信されてよい。ブロック２５４において、各分類子は、顔データを処理および解析し、それに従って、感情の状態を分類してよい。先に言及／記載した通り、実施形態において、２５４における処理は、例えば６個等の複数の分類子によって、並列に実行されてよい。これらの分類子は、怒りの状態の分類子、嫌悪の状態の分類子、恐れの状態の分類子、幸せな状態の分類子、悲しい状態の分類子および驚いた状態の分類子を含んでよい。代替の実施形態において、より多いまたは少ない分類子が使用されてよい。さらに、先に言及／記載した通り、実施形態において、ブロック２５４において分類された感情の状態は、サブ状態の指定、感情の強度値、および／または分類の信頼度値を含んでよい。
【００４５】
ここで図６を参照すると、様々な実施形態による、図１のアニメーション拡張エンジンの処理フローの態様が示されている。より具体的には、処理２６０と示された、図１の補完アニメーションメッセージ生成機能１２８の処理フローの態様が示されている。図示の通り、処理２６０は、ブロック２６２および２６４における処理を備えてよい。ブロック２６２において、感情データ、例えば、感情の状態／サブ状態、強度値および／または信頼度値が受信されてよい。ブロック２６４において、補完アニメーションメッセージが、例えば、判断された最も信頼性の高い感情の状態および強度に少なくとも部分的に基づいて、生成されてよい。上記の通り、補完アニメーションメッセージは、もたらされるべき拡張を記述する点を除いては、先に説明したプライマリアニメーションメッセージと同様であってよい。先に言及／記載した通り、これらの拡張としては、限定はされないが、例えば、悲しい状態のための涙、驚いた状態のための感嘆符、幸せな状態のための幸せな顔、幸せでロマンチックな状態のためのハート、怒りの状態のための火、嫌悪の状態のための「ガルルル」という音を出す歯若しくは周囲を飛ぶハエ、恐れの状態のためのゴースト若しくは爆発する爆弾等が含まれてよい。さらに、その量、例えば、拡張の量および／または速度は、判断された感情の強度により変わってよい。
【００４６】
図２の参照に戻ると、上記の通り、スナップショット１４２は、ユーザが悲しい状態にあると判断された場合、涙が追加され、アバターのアニメーションを拡張してよい、例示的な感情ベースの拡張を示す。図示の通り、涙が、アバターの目から流れるようにレンダリングされる。計算的には、実施形態において、涙を放出するためのエミッタが、目の箇所に作成されてよい。涙は、エミッタから放出される粒子に対応してよい。粒子の移動方向（涙の流れ等）は、複数の予め定義された軌道から選択された軌道をたどってよい。粒子（例えば、涙）の量および速度は、判断された感情の強度に基づいてよい。
【００４７】
図７を参照すると、様々な実施形態による、アバターの感情拡張アニメーションのための例示的な処理の態様が示されている。図示の通り、エミッタの作成および放出された粒子の移動方向および速度の計算に関わったアバターのアニメーションの感情ベースの拡張のための処理２８０は、ブロック２８６〜２９４における処理を備えてよい。処理は、例えば、図１の上記したアニメーション拡張エンジン１０３（より具体的には、補完アニメーションメッセージ生成機能１２８）によって実行されてよい。
【００４８】
図示の通り、処理２８０は、ブロック２８６で開始してよい。ブロック２８６において、例えば、顔メッシュに関連付けられたランドマーク等の顔ランドマーク２８２に関連付けられたデータが使用され、選択された拡張のためのエミッタを生成および作成してよい。例えば、涙エミッタは、追跡された目ランドマークの箇所に置かれてよい。
【００４９】
ブロック２８８において、初期セットの粒子アニメーションメッセージが生成されてよく、もたらされるべき拡張の初期の記述を提供する。
【００５０】
ブロック２９０において、粒子がエミッタから放出されるために、動きの軌道が、例えば、上記の通り、予め定義されたセットの軌道から取得／選択されてよい。
【００５１】
ブロック２９２において、粒子の方向および速度が計算されてよい。
【００５２】
ブロック２９４において、粒子の計算された方向および速度を反映すべく、粒子のアニメーションメッセージが、更新されてよい。
【００５３】
ここで図８を参照すると、様々な実施形態による、粒子の例示的な軌道が示されている。中央の粒子２９２が、粒子（例えば、涙）の現在位置を表わす。Ｖｐは、粒子の合成移動ベクトルを表わし、すなわち、ベクトルＶｐの向きは、粒子の合成移動方向を提供するのに対し、ベクトルＶｐの大きさは、粒子の移動速度を提供する。合成ベクトルＶｐは、粒子２９２の方向および速度に影響する成分力の重み付けの和であってよい。成分力の例としては、限定はされないが、向きおよび大きさを持つ重力等の外力、および剪断力等の内力が含まれてよい。成分力の他の例としては、方向および速度の両方を含む、粒子の放出力等の衝撃力が含まれてよい。
【００５４】
図８中、２つの影響を及ぼす力が示されており、ベクトルＶｐ１およびＶｐ２は、それぞれ成分力１および２の向きおよび大きさを表わす。量ｄｐ，ｐ１およびｄｐ，ｐ２はそれぞれ、成分力１および２の相対的重みを表わす。理解しやすいように、図８中、２つの成分力が示されている。しかしながら、実施形態において、３個以上の成分力が検討されてよい。
【００５５】
故に、一般に、ベクトルＶｐは、以下の式（２）の通り、計算されてよい。
【数２】
0006798707.tif 000003
Ｐｍは、Ｐ１，Ｐ２，Ｐ３，Ｐ４...等であってよい。Ｖｐ，ＶＰＭ，ｄｐ，ｐ１およびｄｐ，ｐ２は、上記の通り、定義されている。
【００５６】
図９は、本開示の選択された態様を実施するためのクライアントデバイスまたはサーバとして好適に用いられてよい例示的なコンピュータシステムを示す。図示の通り、コンピュータ５００は、１または複数のプロセッサまたはプロセッサコア５０２およびシステムメモリ５０４を含んでよい。特許請求の範囲を含め、本願の目的として、「プロセッサ」という用語は、物理プロセッサを指し、文脈が明らかに別のものを要求していない限り、「プロセッサ」および「プロセッサコア」という用語は、同義語と考えられてよい。また、コンピュータ５００は、大容量ストレージデバイス５０６（例えば、ディスケット、ハードドライブ、コンパクトディスクリードオンリメモリ（ＣＤ‐ＲＯＭ）等）、入／出力デバイス５０８（ディスプレイ、キーボード、カーソルコントロール等）および通信インタフェース５１０（ネットワークインタフェースカード、モデム等）を含んでよい。当該複数の構成要素は、システムバス５１２を介して、互いに連結されてよく、システムバス５１２は、１または複数のバスを表わしてよい。複数のバスの場合、それらは、１または複数のバスブリッジ（不図示）によってブリッジされてよい。
【００５７】
これらの要素のうちの各々は、当技術分野において既知のその従来の機能を実行してよい。特に、システムメモリ５０４および大容量ストレージデバイス５０６は、上記の顔の表情および頭部姿勢トラッカ１０２、アニメーション拡張エンジン１０３、アバターアニメーションエンジン１０４、および／またはアバターレンダリングエンジン１０６に関連付けられた処理を実装するプログラミング命令の作業コピーおよび永久コピーを格納するために使用されてよく、これらは、まとめて計算ロジック５２２と称される。様々な要素は、プロセッサ５０２によってサポートされるアセンブラ命令、または、例えばこのような命令にコンパイル可能なＣ等の高水準言語によって実装されてよい。 
【００５８】
これらの要素５１０〜５１２の数、機能および／または容量は、コンピュータ５００が、クライアントデバイスまたはサーバとして使用されるかどうかに依り、変わってよい。クライアントデバイスとして用いられる場合、これらの要素５１０〜５１２の機能および／または容量は、クライアントデバイスが据え置きのデバイスであるか、またはスマートフォン、コンピューティングタブレット、ウルトラブック若しくはラップトップ等のモバイルデバイスであるかに依り、変わってよい。さもなければ、要素５１０〜５１２の構成は、既知であり、従って、さらなる説明はしないことにする。
【００５９】
当業者が理解するように、本開示は、方法またはコンピュータプログラム製品として具現化されてよい。従って、上記の通り、本開示は、ハードウェアに具現化されることに加え、全体的にソフトウェアの実施形態（ファームウェア、常駐ソフトウェア、マイクロコード等を含む）またはすべて全般に「回路」、「モジュール」若しくは「システム」として称されてよいソフトウェア態様およびハードウェア態様を組み合わせた実施形態の形を取ってもよい。さらに、本開示は、媒体内に具現化されたコンピュータで使用可能なプログラムコードを有する表現に係る任意の有形のまたは非一時的な媒体に具現化されたコンピュータプログラム製品の形態を取ってよい。図１０は、装置による命令の実行に応答して、装置に対し、本開示の選択された態様を実施させる命令を格納するために好適に用いられてよい例示的なコンピュータ可読非一時的記録媒体を示す。図示の通り、非一時的コンピュータ可読記録媒体６０２は、複数のプログラミング命令６０４を含んでよい。プログラミング命令６０４は、デバイス、例えば、コンピュータ５００が、プログラミング命令の実行に応答して、例えば、顔の表情および頭部姿勢トラッカ１０２、アニメーション拡張エンジン１０３、アバターアニメーションエンジン１０４および／またはアバターレンダリングエンジン１０６に関連付けられた様々な処理を実行することを可能にするように構成されてよい。代替の実施形態において、プログラミング命令６０４は、代わりに、複数のコンピュータ可読非一時的記録媒体６０２上に配置されてよい。代替の実施形態において、プログラミング命令６０４は、信号等のコンピュータ可読一時的記録媒体６０２上に配置されてよい。
【００６０】
１または複数のコンピュータで使用可能なまたはコンピュータ可読媒体の任意の組み合わせが、利用されてよい。コンピュータで使用可能な媒体またはコンピュータ可読媒体としては、例えば、限定はされないが、電子、磁気、光、電磁、赤外線、または半導体のシステム、装置、デバイス、または伝搬媒体であってよい。コンピュータ可読媒体に係るより具体的な例（非網羅的列挙）としては、以下のもの、すなわち、１または複数のワイヤを有する電気的接続、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ（ＲＡＭ）、リードオンリメモリ（ＲＯＭ）、消去可能なプログラマブルリードオンリメモリ（ＥＰＲＯＭまたはフラッシュメモリ）、光ファイバ、ポータブルコンパクトディスクリードオンリメモリ（ＣＤ‐ＲＯＭ）、光ストレージデバイス、インターネット若しくはイントラネットをサポートするもの等の送信媒体、または磁気ストレージデバイスが含まれる。コンピュータで使用可能な媒体またはコンピュータ可読媒体は、プログラムが印刷される紙若しくは別の好適な媒体ですらあってよいことに留意されたい。というのは、プログラムは、例えば、当該紙若しくは別の媒体の光学スキャンを介して電子的にキャプチャ可能であり、その後、必要であればコンパイルされ、解釈され、あるいは好適な方法でそれ以外の処理がされた後、コンピュータメモリ内に格納されてよいからである。本明細書の文脈において、コンピュータで使用可能な媒体またはコンピュータ可読媒体は、命令実行システム、装置またはデバイスにより用いられるための、またはそれらと接続して用いられるためのプログラムを包含、格納、通信、伝搬またはトランスポートできる任意の媒体であってよい。コンピュータで使用可能な媒体は、データ信号により具現化されたコンピュータで使用可能なプログラムコードを含む、伝搬されたデータ信号をベースバンドにおいて、または搬送波の一部として含んでよい。コンピュータで使用可能なプログラムコードは、任意の適切な媒体を用いて送信されてよく、このようなものとしては、限定はされないが、無線、有線、光ファイバケーブル、ケーブル、ＲＦ等が含まれる。
【００６１】
本開示の処理を実行するためのコンピュータプログラムコードは、１または複数のプログラミング言語の任意の組み合わせにおいて記述されてよく、このようなものとしては、Ｊａｖａ（登録商標）、Ｓｍａｌｌｔａｌｋ、Ｃ＋＋等のオブジェクト指向型プログラミング言語、および"Ｃ"プログラミング言語若しくは同様のプログラミング言語等の従来の手続型プログラミング言語が含まれる。プログラムコードは、ユーザのコンピュータ上で全体的に、スタンドアロンのソフトウェアパッケージとしてユーザのコンピュータ上で部分的に、ユーザのコンピュータ上で部分的におよびリモートコンピュータ上で部分的に、またはリモートコンピュータ若しくはサーバ上で全体的に実行されてよい。後者のシナリオの場合、リモートコンピュータは、ローカルエリアネットワーク（ＬＡＮ）若しくはワイドエリアネットワーク（ＷＡＮ）を含む任意のタイプのネットワークを通してユーザコンピュータに接続されてよく、あるいは、接続は外部コンピュータ（例えば、インターネットサービスプロバイダを用いたインターネットを通して）に対してなされてよい。
【００６２】
本開示は、本開示の実施形態による、方法、装置（システム）およびコンピュータプログラム製品のフローチャート図および／またはブロック図を参照して説明されている。フローチャート図および／またはブロック図の各ブロック、並びにフローチャート図および／またはブロック図におけるブロックの組み合わせが、コンピュータプログラム命令によって実装されてよいことを理解されたい。これらのコンピュータプログラム命令は、汎用コンピュータ、専用コンピュータのプロセッサ、または機械を製造するための他のプログラム可能なデータ処理装置に供給されてよく、その結果、当該命令が当該コンピュータのプロセッサ若しくは当該他のプログラム可能なデータ処理装置を介して実行されると、フローチャート図および／またはブロック図の各ブロックまたは複数のブロックで指定された機能／動作を実装するための手段を生成する。
【００６３】
これらのコンピュータプログラム命令はまた、コンピュータまたは他のプログラム可能なデータ処理装置に対し、特定の態様で機能するように命令可能なコンピュータ可読媒体内に格納可能であってよく、その結果、当該コンピュータ可読媒体内に格納された命令が、当該フローチャート図および／またはブロック図の各ブロックまたは複数のブロックで指定された機能／動作を実装する命令手段を含む製品を生成する。
【００６４】
コンピュータプログラム命令はまた、コンピュータまたは他のプログラム可能なデータ処理装置に読み込み可能であってよく、当該コンピュータまたは他のプログラム可能なデータ処理装置上で一連の処理ステップが実行され、コンピュータ実装処理を生成し、その結果、当該コンピュータまたは他のプログラム可能な装置上で実行される当該命令が、フローチャート図および／またはブロック図の各ブロックまたは複数のブロックで指定された機能／動作を実装するためのプロセスをもたらす。
【００６５】
図面中のフローチャート図およびブロック図は、本開示の様々な実施形態による、システム、方法およびコンピュータプログラム製品の考え得る実装に関するアーキテクチャ、機能および処理を示す。この点において、フローチャート図またはブロック図の各ブロックは、モジュール、セグメントまたはコードの一部を表わしてよく、それらは、示された論理的機能を実装するための１または複数の実行可能な命令を含む。また、いくつかの代替的な実装において、ブロック図に示される諸機能は、図中に示された順序とは異なって行われてよいことにも留意されたい。例えば、連続して図示されている２つのブロックが実際には、実質的に同時に実行されてもよく、あるいは、当該ブロックは、関与する機能に応じて、逆順に実行される場合もあってよい。また、ブロック図および／またはフローチャート図の各ブロック、並びにブロック図および／またはフローチャート図のブロックの組み合わせが、示された機能または動作を実行する専用ハードウェアベースのシステム、または専用ハードウェアおよびコンピュータ命令の組み合わせによって実装可能であることにも留意されたい。
【００６６】
本明細書で使用される用語は、特定の実施形態の説明目的のためだけに使用されており、本開示を限定する意図はない。本明細書で使用される、単数形の「ａ」、「ａｎ」および「ｔｈｅ」は、文脈が明示に別途の指定をしない限り、複数形も含む意図である。さらに、「備える（ｃｏｍｐｒｉｓｅｓ）」および／または「備え（ｃｏｍｐｒｉｓｉｎｇ）」という用語が本明細書で使用されるとき、記載された特徴、整数、ステップ、処理、要素および／またはコンポーネントの存在を指定するものの、１または複数の他の特徴、整数、ステップ、処理、要素、コンポーネントおよび／またはそれらのグループの存在または追加を排除しないことを理解されたい。
【００６７】
実施形態は、コンピュータ処理、コンピューティングシステムとして、またはコンピュータ可読媒体に係るコンピュータプログラム製品等の製品として実装されてよい。コンピュータプログラム製品は、コンピュータシステムによって読み取り可能であり、コンピュータ処理を実行するためのコンピュータプログラム命令をエンコーディングするコンピュータ記録媒体であってよい。
【００６８】
以下の請求項における対応する構造、材料、動作、およびすべてのミーンズプラスファンクション若しくはステッププラスファンクション要素の均等内容は、具体的に特許請求された他の請求項の要素と組み合わされて機能を実行するための任意の構造、材料または動作を含む意図である。本開示の説明は、例示および説明の目的で示されているが、網羅的であること、または開示された形態の開示内容に限定するという意図はない。本開示の範囲および精神から逸脱しない多くの修正例および変形例が当業者にとって自明であろう。本開示の原理および実際の用途を最善に説明するために、並びに当業者が実施形態の開示内容を理解できるようにするために、想起される特定の使用に好適な様々な修正例と共に、実施形態は選択され、記載された。
【００６９】
図９の参照に戻ると、一実施形態に関し、複数のプロセッサ５０２のうちの少なくとも１つが、計算ロジック５２２を有するメモリと共にパッケージ（メモリ５０４およびストレージ５０６上に格納されることに代えて）されてよい。一実施形態に関し、複数のプロセッサ５０２のうちの少なくとも１つは、計算ロジック５２２を有するメモリと共にパッケージされ、システムインパッケージ（ＳｉＰ）を形成してよい。一実施形態に関し、複数のプロセッサ５０２のうちの少なくとも１つは、計算ロジック５２２を有するメモリと共に、同一ダイ上に統合されてよい。一実施形態に関し、複数のプロセッサ５０２うちの少なくとも１つは、計算ロジック５２２を有するメモリと共にパッケージされ、システムオンチップ（ＳｏＣ）を形成してよい。少なくとも一実施形態に関し、ＳｏＣは、例えば、限定はされないが、スマートフォンまたはコンピューティングタブレットで利用されてよい。
【００７０】
故に、本開示に係る様々な例示的実施形態は、限定ではないが、以下を含むものとして記載された。
【００７１】
例１は、１または複数のプロセッサと、ユーザの顔データを受信し、上記ユーザの感情の状態を判断すべく、上記顔データを解析し、且つ上記ユーザの上記感情の状態の上記判断の結果に少なくとも部分的に基づいて、上記アバターのアニメーションを補完する追加のアニメーションを操縦すべく、上記プロセッサによって動作されるべきアニメーション拡張エンジンと、を備える、アバターをアニメートするための装置であってよい。
【００７２】
例２は、例１であってよく、顔データを受信すべく、上記アニメーション拡張エンジンは、上記ユーザの顔メッシュの顔ランドマークデータを受信してよい。
【００７３】
例３は、例１であってよく、上記顔データを解析すべく、上記アニメーション拡張エンジンは、複数の感情の分類子を含んでよく、上記複数の感情の分類子はそれぞれ、上記顔データを処理し、上記複数の感情の分類子の対応する感情の状態に対する複数の信頼度値を生成する。
【００７４】
例４は、例３であってよく、上記複数の感情の分類子は、怒りの状態の分類子、嫌悪の状態の分類子、恐れの状態の分類子、幸せな状態の分類子、悲しい状態の分類子、または驚いた状態の分類子のうちの少なくとも１つを含んでよい。
【００７５】
例５は、例１であってよく、追加のアニメーションを操縦すべく、上記アニメーション拡張エンジンは、上記追加のアニメーションのためのエミッタを作成し、上記エミッタから放出されるべき粒子の集まりを生成してよい。
【００７６】
例６は、例５であってよく、上記アニメーション拡張エンジンはさらに、動きの軌道を取得し、上記エミッタから放出されるべき上記粒子のための上記動きの軌道における速度を計算してよい。
【００７７】
例７は、例１〜６のいずれかであってよく、上記ユーザの１または複数のイメージフレームを受信し、上記ユーザの顔の表情を検出および追跡すべく、上記１または複数のイメージフレームを解析し、且つ上記１または複数のイメージフレームの上記解析の結果に少なくとも部分的に基づいて、上記顔データを上記アニメーション拡張エンジンに提供すべく、上記１または複数のプロセッサによって動作されるべき顔の表情トラッカをさらに備えてよい。
【００７８】
例８は、例７であってよく、上記１または複数のプロセッサによって動作されるべきアバターアニメーションエンジンをさらに備え、上記顔の表情トラッカは、検出および追跡された上記ユーザの顔の表情に基づいて、上記アバターをアニメートすべく、上記アバターアニメーションエンジンを操縦してよく、追加のアニメーションを操縦すべく、上記アニメーション拡張エンジンは、検出および追跡された上記ユーザの顔の表情に基づいて、上記感情の状態ベースの追加のアニメーションを用いて、上記アバターの上記アニメーションを補完するように上記アバターアニメーションエンジンを操縦してよい。
【００７９】
例９は、例８であってよく、上記顔の表情トラッカは、検出および追跡された上記ユーザの顔の表情に基づいてプライマリアニメーションメッセージを生成し、上記ユーザの顔の表情に基づいて上記アバターをアニメートするように、上記アバターアニメーションエンジンを操縦すべく、上記プライマリアニメーションメッセージを上記アバターアニメーションエンジンに送信する、プライマリアニメーションメッセージ生成機能を含んでよく、上記アニメーション拡張エンジンは、検出された上記ユーザの上記感情の状態に基づいて補完アニメーションメッセージを生成し、上記ユーザの顔の表情に基づいて、上記感情の状態ベースの追加のアニメーションを用いて、上記アバターの上記アニメーションを補完するように上記アバターアニメーションエンジンを操縦すべく、上記補完アニメーションメッセージを上記アバターアニメーションエンジンに送信する、補完アニメーションメッセージ生成機能を含んでよい。
【００８０】
例１０は、例７であってよく、上記装置は、スマートフォン、コンピューティングタブレット、ウルトラブック、ｅブック、またはラップトップコンピュータから選択された１つであってよい。
【００８１】
例１１は、コンピューティングデバイスによって、ユーザの顔データを受信する段階と、上記コンピューティングデバイスによって、上記ユーザの感情の状態を判断すべく、上記顔データを解析する段階と、上記コンピューティングデバイスによって、上記ユーザの上記感情の状態の上記判断の結果に少なくとも部分的に基づいて、上記アバターのアニメーションを補完する追加のアニメーションを操縦する段階と、を備える、アバターをアニメートするための方法であってよい。
【００８２】
例１２は、例１１であってよく、受信する段階は、上記ユーザの顔メッシュの顔ランドマークデータを受信する段階を含んでよい。
【００８３】
例１３は、例１１であってよく、解析する段階はそれぞれ、複数の感情の分類子の対応する感情の状態に対する複数の信頼度値を生成すべく、前記複数の感情の分類子で上記顔データを処理する段階を含んでよい。
【００８４】
例１４は、例１３であってよく、上記感情の状態は、怒りの状態、嫌悪の状態、恐れの状態、幸せな状態、悲しい状態、または驚いた状態のうちの少なくとも１つを含む。
【００８５】
例１５は、例１１であってよく、追加のアニメーションを操縦する段階は、上記追加のアニメーションのためのエミッタを作成する段階と、上記エミッタから放出されるべき粒子の集まりを生成する段階と、を含んでよい。
【００８６】
例１６は、例１５であってよく、追加のアニメーションを操縦する段階は、さらに、動きの軌道を取得する段階と、上記エミッタから放出されるべき上記粒子のための上記動きの軌道における速度を計算する段階と、を含んでよい。
【００８７】
例１７は、例１１〜１６のいずれかであってよく、上記ユーザの１または複数のイメージフレームを受信する段階と、上記ユーザの顔の表情を検出および追跡すべく、上記１または複数のイメージフレームを解析する段階と、上記１または複数のイメージフレームの上記解析の結果に少なくとも部分的に基づいて、上記顔データを提供する段階と、をさらに備える。
【００８８】
例１８は、例１７であってよく、さらに、検出および追跡された上記ユーザの顔の表情に基づいて、上記アバターのアニメーションを操縦する段階を備え、追加のアニメーションを操縦する段階は、検出および追跡された上記ユーザの顔の表情に基づいて、上記感情の状態ベースの追加のアニメーションを用いて上記アバターの上記アニメーションを補完する段階を含んでよい。
【００８９】
例１９は、例１８であってよく、アニメーションを操縦する段階は、検出および追跡された上記ユーザの顔の表情に基づいて、プライマリアニメーションメッセージを生成する段階と、上記ユーザの顔の表情に基づいて、上記アバターのアニメーションを操縦すべく、上記プライマリアニメーションメッセージを送信する段階と、を含んでよく、追加のアニメーションを操縦する段階は、検出された上記ユーザの上記感情の状態に基づいて、補完アニメーションメッセージを生成する段階と、上記ユーザの顔の表情に基づいて、上記感情の状態ベースの追加のアニメーションを用いて上記アバターの上記アニメーションを補完するように、アバターのアニメーションを操縦すべく、上記補完アニメーションメッセージを送信する段階と、を含んでよい。
【００９０】
コンピューティングデバイスによる命令の実行に応答して、上記コンピューティングデバイスに、アニメーション拡張エンジンを動作させる命令を備えた１または複数のコンピュータ可読媒体であって、上記アニメーション拡張エンジンは、ユーザの顔データを受信し、上記ユーザの感情の状態を判断すべく、上記顔データを解析し、上記ユーザの上記感情の状態の上記判断の結果に少なくとも部分的に基づいて、上記アバターのアニメーションを補完する追加のアニメーションを操縦する。
【００９１】
例２１は、例２０であってよく、顔データを受信することは、上記ユーザの顔メッシュの顔ランドマークデータを受信することを含んでよい。
【００９２】
例２２は、例２０であってよく、顔データを解析することはそれぞれ、複数の感情の分類子の対応する感情の状態に対する複数の信頼度値を生成すべく、上記複数の感情の分類子で上記顔データを処理することを含んでよい。
【００９３】
例２３は、例２２であってよく、上記複数の感情の分類子は、怒りの状態の分類子、嫌悪の状態の分類子、恐れの状態の分類子、幸せな状態の分類子、悲しい状態の分類子、または驚いた状態の分類子のうちの少なくとも１つを含む。
【００９４】
例２４は、例２０であってよく、追加のアニメーションを操縦することは、上記追加のアニメーションのためのエミッタを作成すること、上記エミッタから放出されるべき粒子の集まりを生成することと、を含んでよい。
【００９５】
例２５は、例２４であってよく、追加のアニメーションを操縦することは、さらに、動きの軌道を取得する段階と、上記エミッタから放出されるべき上記粒子のための上記動きの軌道における速度を計算する段階と、を含んでよい。
【００９６】
例２６は、例２０〜２５のいずれかであってよく、上記コンピューティングデバイスは、さらに、上記ユーザの１または複数のイメージフレームを受信することと、上記ユーザの顔の表情を検出および追跡すべく、上記１または複数のイメージフレームを解析することと、上記１または複数のイメージフレームの上記解析の結果に少なくとも部分的に基づいて、上記顔データを提供することと、を実行させられる。
【００９７】
例２７は、例２６であってよく、上記コンピューティングデバイスは、さらに、検出および追跡された上記ユーザの顔の表情に基づいて、上記アバターをアニメートすべく、アバターアニメーションエンジンを操縦することを実行させられ、追加のアニメーションの操縦することは、検出および追跡された上記ユーザの顔の表情に基づいて、上記感情の状態ベースの追加のアニメーションを用いて上記アバターの上記アニメーションを補完することを含んでよい。
【００９８】
例２８は、例２７であってよく、アニメーションを操縦することは、検出および追跡された上記ユーザの顔の表情に基づいて、プライマリアニメーションメッセージを生成することと、上記ユーザの顔の表情に基づいて、上記アバターをアニメートするように上記アバターアニメーションエンジンを操縦すべく、上記プライマリアニメーションメッセージを上記アバターアニメーションエンジンに送信することと、を含んでよく、追加のアニメーションを操縦することは、検出された上記ユーザの上記感情の状態に基づいて、補完アニメーションメッセージを生成することと、上記ユーザの顔の表情に基づいて、上記感情の状態ベースの追加のアニメーションを用いて上記アバターの上記アニメーションを補完するように、上記アバターアニメーションエンジンを操縦すべく、上記補完アニメーションメッセージを上記アバターアニメーションエンジンに送信することと、を含んでよい。
【００９９】
例２９は、ユーザの顔データを受信するための手段と、上記ユーザの感情の状態を判断すべく、上記顔データを解析するための手段と、上記ユーザの上記感情の状態の上記判断の結果に少なくとも部分的に基づいて、上記アバターのアニメーションを補完する追加のアニメーションを操縦するための手段と、を備える、アバターを生成またはアニメートするための装置であってよい。
【０１００】
例３０は、例２９であってよく、受信するための手段は、上記ユーザの顔メッシュの顔ランドマークデータを受信するための手段を含んでよい。
【０１０１】
例３１は、例２９であってよく、解析するための手段は、上記感情の分類子の対応する感情の状態に対する複数の信頼度値を生成すべく、上記顔データをそれぞれ処理するための手段を含んでよい。
【０１０２】
例３２は、例３１であってよく、上記感情の状態は、怒りの状態、嫌悪の状態、恐れの状態、幸せな状態、悲しい状態または驚いた状態のうちの少なくとも１つを含む。
【０１０３】
例３３は、例２９であってよく、追加のアニメーションを操縦するための手段は、上記追加のアニメーションのためのエミッタを作成するための手段と、上記エミッタから放出されるべき粒子の集まりを生成するための手段と、を含んでよい。
【０１０４】
例３４は、例３３であってよく、追加のアニメーションを操縦するための手段は、さらに、動きの軌道を取得するための手段と、上記エミッタから放出されるべき上記粒子のための上記動きの軌道における速度を計算するための手段と、を含んでよい。
【０１０５】
例３５は、例２９〜３４のいずれかであってよく、上記ユーザの１または複数のイメージフレームを受信するための手段と、上記ユーザの顔の表情を検出および追跡すべく、上記１または複数のイメージフレームを解析するための手段と、上記１または複数のイメージフレームの上記解析の結果に少なくとも部分的に基づいて、上記顔データを提供するための手段と、をさらに備えてよい。
【０１０６】
例３６は、例３５であってよく、検出および追跡された上記ユーザの顔の表情に基づいて、上記アバターのアニメーションを操縦するための手段をさらに備え、追加のアニメーションを操縦するための手段は、検出および追跡された上記ユーザの顔の表情に基づいて、上記感情の状態ベースの追加のアニメーションを用いて上記アバターの上記アニメーションを補完するための手段を含んでよい。
【０１０７】
例３７は、例３６であってよく、アニメーションを操縦するための手段は、検出および追跡された上記ユーザの顔の表情に基づいて、プライマリアニメーションメッセージを生成するための手段と、上記ユーザの顔の表情に基づいて、上記アバターのアニメーションを操縦すべく、上記プライマリアニメーションメッセージを送信するための手段と、を含んでよく、追加のアニメーションを操縦するための手段は、検出された上記ユーザの上記感情の状態に基づいて、補完アニメーションメッセージを生成するための手段と、上記ユーザの顔の表情に基づいて、上記感情の状態ベースの追加のアニメーションを用いて上記アバターの上記アニメーションを補完するように、アバターのアニメーションを操縦すべく、上記補完アニメーションメッセージを送信するための手段と、を含んでよい。
【０１０８】
本開示の精神または範囲から逸脱することなく、様々な修正および変形が、開示されたデバイスおよび関連方法に係る開示の実施形態においてなされ得ることは、当業者にとって自明なところである。故に、当該修正および変形がいずれかの請求項並びにその均等内容の範囲に属する場合、本開示は、上記開示の実施形態に係る当該修正および変形を包含する意図である。
（項目１）
１または複数のプロセッサと、
ユーザの顔データを受信し、上記ユーザの感情の状態を判断すべく、上記顔データを解析し、且つ上記ユーザの上記感情の状態の上記判断の結果に少なくとも部分的に基づいて、アバターのアニメーションを補完する追加のアニメーションを操縦すべく、上記プロセッサによって動作されるべきアニメーション拡張エンジンと、
を備える、アバターをアニメートするための装置。
（項目２）
顔データを受信すべく、上記アニメーション拡張エンジンは、上記ユーザの顔メッシュの顔ランドマークデータを受信する、項目１に記載の装置。
（項目３）
上記顔データを解析すべく、上記アニメーション拡張エンジンは、複数の感情の分類子を含み、上記複数の感情の分類子はそれぞれ、上記顔データを処理し、上記複数の感情の分類子の対応する感情の状態に対する複数の信頼度値を生成する、項目１に記載の装置。
（項目４）
上記複数の感情の分類子は、怒りの状態の分類子、嫌悪の状態の分類子、恐れの状態の分類子、幸せな状態の分類子、悲しい状態の分類子、または驚いた状態の分類子のうちの少なくとも１つを含む、項目３に記載の装置。
（項目５）
追加のアニメーションを操縦すべく、上記アニメーション拡張エンジンは、上記追加のアニメーションのためのエミッタを作成し、上記エミッタから放出されるべき粒子の集まりを生成する、項目１に記載の装置。
（項目６）
上記アニメーション拡張エンジンは、さらに、動きの軌道を取得し、上記エミッタから放出されるべき上記粒子のための上記動きの軌道における速度を計算する、項目５に記載の装置。
（項目７）
上記ユーザの１または複数のイメージフレームを受信し、上記ユーザの顔の表情を検出および追跡すべく、上記１または複数のイメージフレームを解析し、且つ上記１または複数のイメージフレームの上記解析の結果に少なくとも部分的に基づいて、上記顔データを上記アニメーション拡張エンジンに提供すべく、上記１または複数のプロセッサによって動作されるべき顔の表情トラッカをさらに備える、項目１から６のいずれか一項に記載の装置。
（項目８）
上記１または複数のプロセッサによって動作されるべきアバターアニメーションエンジンをさらに備え、
上記顔の表情トラッカは、検出および追跡された上記ユーザの顔の表情に基づいて、上記アバターをアニメートすべく、上記アバターアニメーションエンジンを操縦し、
追加のアニメーションを操縦すべく、上記アニメーション拡張エンジンは、検出および追跡された上記ユーザの顔の表情に基づいて、上記感情の状態ベースの追加のアニメーションを用いて、上記アバターの上記アニメーションを補完するように上記アバターアニメーションエンジンを操縦する、項目７に記載の装置。
（項目９）
上記顔の表情トラッカは、検出および追跡された上記ユーザの顔の表情に基づいてプライマリアニメーションメッセージを生成し、上記ユーザの顔の表情に基づいて上記アバターをアニメートするように、上記アバターアニメーションエンジンを操縦すべく、上記プライマリアニメーションメッセージを上記アバターアニメーションエンジンに送信する、プライマリアニメーションメッセージ生成機能を含み、
上記アニメーション拡張エンジンは、検出された上記ユーザの上記感情の状態に基づいて補完アニメーションメッセージを生成し、上記ユーザの顔の表情に基づいて、上記感情の状態ベースの追加のアニメーションを用いて、上記アバターの上記アニメーションを補完するように上記アバターアニメーションエンジンを操縦すべく、上記補完アニメーションメッセージを上記アバターアニメーションエンジンに送信する、補完アニメーションメッセージ生成機能を含む、項目８に記載の装置。
（項目１０）
上記装置は、スマートフォン、コンピューティングタブレット、ウルトラブック、ｅブック、またはラップトップコンピュータから選択された１つである、項目７に記載の装置。
（項目１１）
コンピューティングデバイスによって、ユーザの顔データを受信する段階と、
上記コンピューティングデバイスによって、上記ユーザの感情の状態を判断すべく、上記顔データを解析する段階と、
上記コンピューティングデバイスによって、上記ユーザの上記感情の状態の上記判断の結果に少なくとも部分的に基づいて、アバターのアニメーションを補完する追加のアニメーションを操縦する段階と、を備える、アバターをアニメートするための方法。
（項目１２）
受信する段階は、上記ユーザの顔メッシュの顔ランドマークデータを受信する段階を含む、項目１１に記載の方法。
（項目１３）
解析する段階は、複数の感情の分類子の対応する感情の状態に対する複数の信頼度値を生成すべく、上記複数の感情の分類子で上記顔データをそれぞれ処理する段階を含む、項目１１に記載の方法。
（項目１４）
上記感情の状態は、怒りの状態、嫌悪の状態、恐れの状態、幸せな状態、悲しい状態、または驚いた状態のうちの少なくとも１つを含む、項目１３に記載の方法。
（項目１５）
追加のアニメーションを操縦する段階は、上記追加のアニメーションのためのエミッタを作成する段階と、上記エミッタから放出されるべき粒子の集まりを生成する段階と、を含む、項目１１に記載の方法。
（項目１６）
追加のアニメーションを操縦する段階は、さらに、動きの軌道を取得する段階と、上記エミッタから放出されるべき上記粒子のための上記動きの軌道における速度を計算する段階と、を含む、項目１５に記載の方法。
（項目１７）
上記ユーザの１または複数のイメージフレームを受信する段階と、
上記ユーザの顔の表情を検出および追跡すべく、上記１または複数のイメージフレームを解析する段階と、
上記１または複数のイメージフレームの上記解析の結果に少なくとも部分的に基づいて、上記顔データを提供する段階と、
をさらに備える、項目１１から１６のいずれか一項に記載の方法。
（項目１８）
さらに、検出および追跡された上記ユーザの顔の表情に基づいて、上記アバターのアニメーションを操縦する段階を備え、
追加のアニメーションを操縦する段階は、検出および追跡された上記ユーザの顔の表情に基づいて、上記感情の状態ベースの追加のアニメーションを用いて上記アバターの上記アニメーションを補完する段階を含む、項目１７に記載の方法。
（項目１９）
アニメーションを操縦する段階は、検出および追跡された上記ユーザの顔の表情に基づいて、プライマリアニメーションメッセージを生成する段階と、上記ユーザの顔の表情に基づいて、上記アバターのアニメーションを操縦すべく、上記プライマリアニメーションメッセージを送信する段階と、を含み、
追加のアニメーションを操縦する段階は、検出された上記ユーザの上記感情の状態に基づいて、補完アニメーションメッセージを生成する段階と、上記ユーザの顔の表情に基づいて、上記感情の状態ベースの追加のアニメーションを用いて上記アバターの上記アニメーションを補完するように、アバターのアニメーションを操縦すべく、上記補完アニメーションメッセージを送信する段階と、を含む、項目１８に記載の方法。
（項目２０）
コンピューティングデバイスによる命令の実行に応答して、上記コンピューティングデバイスに、項目１１から１９のいずれか一項に記載の方法を実行させる命令を備える、１または複数のコンピュータ可読媒体。
（項目２１）
ユーザの顔データを受信するための手段と、
上記ユーザの感情の状態を判断すべく、上記顔データを解析するための手段と、
上記ユーザの上記感情の状態の上記判断の結果に少なくとも部分的に基づいて、アバターのアニメーションを補完する追加のアニメーションを操縦するための手段と、を備える、アバターを生成またはアニメートするための装置。
（項目２２）
受信するための手段は、上記ユーザの顔メッシュの顔ランドマークデータを受信するための手段を含む、項目２１に記載の装置。
（項目２３）
解析するための手段は、複数の感情の分類子の対応する感情の状態に対する複数の信頼度値を生成すべく、上記顔データをそれぞれ処理するための手段を含み、
上記感情の状態は、怒りの状態、嫌悪の状態、恐れの状態、幸せな状態、悲しい状態または驚いた状態のうちの少なくとも１つを含む、項目２１に記載の装置。
（項目２４）
追加のアニメーションを操縦するための手段は、上記追加のアニメーションのためのエミッタを作成するための手段と、上記エミッタから放出されるべき粒子の集まりを生成するための手段と、を含み、
追加のアニメーションを操縦するための手段は、さらに、動きの軌道を取得するための手段と、上記エミッタから放出されるべき上記粒子のための上記動きの軌道における速度を計算するための手段と、を含む、項目２１に記載の装置。
（項目２５）
上記ユーザの１または複数のイメージフレームを受信するための手段と、
上記ユーザの顔の表情を検出および追跡すべく、上記１または複数のイメージフレームを解析するための手段と、上記１または複数のイメージフレームの上記解析の結果に少なくとも部分的に基づいて、上記顔データを提供するための手段と、をさらに備える、項目２１から２４のいずれか一項に記載の装置。
【図１】
0006798707.tif 000004
【図２】
0006798707.tif 000005
【図３】
0006798707.tif 000006
【図４】
0006798707.tif 000007
【図５】
0006798707.tif 000008
【図６】
0006798707.tif 000009
【図７】
0006798707.tif 000010
【図８】
0006798707.tif 000011
【図９】
0006798707.tif 000012
【図１０】
0006798707.tif 000013