【レポート】機械学習によるリップシンクアニメーション自動生成技術とFINAL FANTASY VII REMAKEのアセットを訓練データとした実装実例 #CEDEC2022 #classmethod_game

機械学習と既存データを活用して、台詞と口の動きをより同期したデータを機械学習により生成させる方法やプロジェクトでの運用についてのセッションです。
2022.08.30

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは。ここではCEDEC 2022で講演された「 機械学習によるリップシンクアニメーション自動生成技術とFINAL FANTASY VII REMAKEのアセットを訓練データとした実装実例」について重要と思った解説を中心にまとめてみました。

セッションの概要

機械学習によるリップシンクアニメーション自動生成技術とFINAL FANTASY VII REMAKEのアセットを訓練データとした実装実例

本セッションでは、音声データの入力のみから機械学習を用いて、音声に合わせたキャラクタのリップシンクアニメーションを自動生成する技術Lip-Sync MLについて説明します。本技術では音声学習モデルとリグ学習モデルという2つの学習モデルを組み合わせた機械学習により、リップシンクアニメーションの自動生成を実現しております。
本技術で自動生成されるリップシンクアニメーションや、システムの構成、用いられている機械学習技術を具体的に説明します。また、FINAL FANTASY VII REMAKEのアセットを訓練データに使用し、プロジェクトに導入できる形にするために必要だった準備や実装についても説明します。

内容について

今回のセッションの発表について、印象深いところを中心に取り上げてみました。私の理解が追いついてない所もある点は、ご了承ください。

HappySadFaceとLip-Sync ML

すべての音声(最大数十時間分)に対してリップシンクアニメーションを手作業で作成するのは大変な作業です。

FF7 RemakeではHappySadFaceを利用してリップシンク(口パク)を設定していました。しかし、HappySadFaceではうまくいかない箇所もあり、主な原因としては台詞テキストと音声の不一致が原因でした。特にアドリブボイスには弱かったです。

そういった問題を解決するため、音声のみの入力から直接アニメーションを生成するLip-Sync MLを開発しました。音声を元に、ボーンアニメーションなどアニメーションに必要なデータを出力する仕組みです。

機械学習モデル

機械学習モデルについての説明がありました。本セッションでのメインの話では、ここでは概要だけ取り上げます。 詳細はCEDiLスライドを参照してください。

機械学習モデルは「音声モデル」と「リグモデル」を対象に行いました。

学習方法としては、教師あり学習を用いて、いくつかの試行錯誤をした結果、エンド・ツー・エンド学習で進めていきました。

HappySadFaceを利用した際のプロジェクトでの課題

HappySadFaceでは必ずテキストを用意しないといけません。そのため特殊な読み方をする単語に関しては辞書を用意する、呼吸音やアドリブボイスなどテキストがないボイスは、それにあわせてテキストを用意する必要があるといった具合にHappySadFaceを継続して利用していく上での限界がみえていました。

そこでLip-Sync MLの開発を進めてもらうことになりました。

Lip-Sync MLでの課題

従来のHappySadFaceはもう二度と利用することがないかというと、そういう訳ではありません。

HappySadFaceの方が手動調整しやすいというメリットがありました。そのため、データによってLpi-Sync MLとHappySadFaceが切り替えて利用できるようになっています。

まとめ

Lip-Sync MLという機械学習を用いたリップシンクアニメーションをつける方法を開発しました。 しかし、これまで利用していたHappySadFaceにもメリットがあります。そのため、どちらにも対応できるようになっています。

雑感

FFVII Remakeは最後までプレイしましたが台詞やモーションが、それはもう大量にあります。 このようなモーションのデータ作成は地味で大変ですが、そのような業務をAIが行ってくれるのはグラフィック担当の方にとっては非常に助かる事ですね。