3Dアバターに適用可能な音声駆動型リアルタイム表情生成システム

3Dアバターを用いた配信や大規模言語モデルに基づく対話エージェントの普及により，近年，人と人（もしくは人とAI）が仮想的なキャラクターを通してコミュニケーションする機会が増えている．本研究で扱う3Dアバターとは，人の姿や顔を3次元CGで表現したキャラクターであり，画面上でユーザやエージェントの「見た目」として振る舞うものである．人と3Dアバターとのコミュニケーションでは，発話内容だけでなく，うなずきや口の動き，表情といった非言語情報が，対話の自然さや相手の理解のしやすさに大きく関わることが知られている[1,2].そのため，アバターに対して人間らしい表情を付与する技術は，コミュニケーションの質を左右する重要な要素である．ここで，アバターの表情を適切に制御するためには，口の開閉や眉の上げ下げといった動きを数値として表した「表情動作の制御値」を，各時刻において逐次推定し，アバターに与える必要がある．しかし，これらの制御値を人手で逐次入力することは現実的ではなく，音声などの入力から自動的に推定する仕組みが求められる．studystudystudystudytudysdystuystudmastermastermastermastermasterastermastㅤmasermatermsterこの課題に対して，例えばNVIDIAは，音声から表情制御に用いる値を推定してアバターを駆動する手法（Audio2Face）を提案しており，高品質な表情生成を実現している[3]．Audio2Faceは，入力音声から口元や眉などの動きを表す表情制御値を推定し，その時系列に基づいて3Dアバターの表情を自動的に生成するシステムである．Audio2Faceを用いてアバターを構築する方法も考えられるが，Audio2Faceの一部はAPI経由で動作する構成であるため，通信に起因する遅延が生じる可能性がある．対話のように入力に追従した表情更新が求められる用途では，同期ずれが生じやすく，表情表現の自然さを損ねる恐れがある．また，システムがオープンではない実装に依存する場合，ローカル環境における再現性や改良，運用が困難といった課題も残る．そこで本研究では，音声入力のみから表情動作の制御値を軽量に推定し，ローカル環境でリアルタイムに動作する音声駆動型表情生成手法FacialMotionGeneratorを提案する．図1に，FacialMotionGeneratorによって3Dアバターの表情を生成した出力例を示す1）．図1は，「stusy」，「master」と発音した場合の顔表情を時系列で表示している．本研究の貢献は以下の2点である1）本研究で使用した3Dアバターは右記から利用できる：https://github.com/mmdagent-ex/geneThisworkispublishedwithoutpeerreviewandislicensedbytheauthor(s)underCCBY4.0(https://creativecommons.org/licenses/by/4.0/).org/licenses/by/4.0/).量を手がかりとして，音声特徴量のどの部分に注目するべきかをCross-Attentionで計算し，得られた音声特徴量から各BlendShapeの値を推定する.短期Log-Melと長期eGeMAPSを統合し，BlendShapeをQueryとする構造により，口元の高速な動きと感情表情の緩やかな変化を単一ネットワークで扱えるようにした．この仕組みにより，音声特徴量の成分が口元，眉，目など，どの表情要素の動きに対応するかをモデルが学習する.学習・評価用データと教師係数列の生成学習と評価には，NVIDIAが公開するAudio2Face-3D-Dataset-v1.0.0-claireを用いる3）．本データセットは単一話者Claireの音声と，各時刻の3D顔形状からなる顔メッシュ列で構成される．一方で，BlendShape係数はデータセットに含まれない．そこで，本データセットに付属しているBlendShape基底ファイルを用いて，各フレームの顔メッシュ系列をBlendShape52次元空間へ変換し，30fpsにリサンプリングした係数列を教師データとして生成した．最終的に約12分に相当する41クリップから成るデータセットを構成し，Train/Val/Testのデータをそれぞれ32/2/7クリップ用意した.以上により，提案モデルは音声からBlendShape係数（52次元）を推定し，3Dアバターを表情駆動するシステムを構成する．4実験本節では提案手法が音声からBlendShape係数をどの程度正確に推定できたか，および，リアルタイム運用に十分な計算効率を持つかを評価する.4.1BlendShapeの精度テストクリップ（7クリップ．合計約106秒の音声）における全BlendShape・全フレームのMSE/MAEを表1に示す．MSE（MeanSquaredError;平均二乗誤差）は予測値と実際の値との差の二乗平均で誤差の大きさを表す指標であり，値が小さいほど誤差が少ないことを表す．また，MAE（MeanAbsoluteError;平均絶対誤差）は予測値と実際の値との差の絶対値を平均した指標で，MSEと比べて外れ値の影響を受けにくく，平均的な誤差量を表す．いずれの指標も値が小さいほど推定精度が高い．表1より，提案手法はAudio2Face-3Dと比較してMSEが0.0743）本研究におけるモデルの学習と評価に利用したデータセットは右記からダウンロードできる：https://huggingface.co/datasets/nvidia/Audio2Face-3D-Dataset-v1.0.0-claireモデルMSE↓MAE↓A2F-3D0.0740.147FacialMotionGenerator0.0350.111A2F-3D:Audio2Face-3D．FacialMotionGenerator:提案手法．モデルパラメータ数MACs時間[ms/frame]A2F-3D181M