人間の顔はどうVTuberに変換される?顔トラッキングの内部を解説
この動画では、その裏側で行われている計算を、目・口・顔の向き・表情・Live2Dメッシュ・スムージングの順に整理します。
カメラで顔を見ているだけでなく、目や口の位置を点として取り出し、距離や位置関係を数値に変え、顔の向きや表情の値へ変換し、最後にキャラクターのメッシュを動かしています。
【この動画で扱う内容】
- まばたきから目の開きを数値にする方法
- 口の横幅と縦開きを別々に測る考え方
- 2D画像から顔の向きを推定する流れ
- 10°・11°・12°の候補から角度を選ぶ考え方
- 表情の数値をLive2Dのメッシュへ渡す方法
- スムージングで小さなブレを抑える仕組み
- ARKitが公開する表情係数と、内部推定方法の区別
【参考資料】
- OpenSeeFace tracker.py: https://github.com/emilianavt/OpenSeeFace/blob/master/tracker.py
- OpenCV solvePnP: https://docs.opencv.org/4.x/d5/d1f/calib3d_solvePnP.html
- VTube Studio Model Settings: https://github.com/DenchiSoft/VTubeStudio/wiki/VTS-Model-Settings
- Live2D Cubism Manual: https://docs.live2d.com/cubism-editor-manual/standard-parameter-list/
- Apple ARKit BlendShapeLocation: https://developer.apple.com/documentation/arkit/arfaceanchor/blendshapes
【チャプター】
00:00 導入
00:46 目や口は、どう数字になる?
02:22 「笑顔」は、一つの数字じゃない
03:29 2D画像から、顔の向きを逆算する
05:52 一瞬の表情を、数字に分解する
06:54 数字を、キャラクターの動きに変える
08:21 Live2Dは、どう顔を動かす?
10:18 なぜ動きは、プルプルしない?
━━━━━━━━━━━━━━━━━━
【使用音声・キャラクター】
雨衣(うい)
音声合成:VoiSona Talk 雨衣
※本動画は「雨衣」の二次創作コンテンツであり、公式コンテンツではありません。
━━━━━━━━━━━━━━━━━━
#VTuber #Live2D #顔トラッキング












