リアルタイムWebカメラからVRMへのリターゲティング

ブラウザだけで、Webカメラのみを使って3Dアバターを動かせるのか?

MediaPipe Holisticを使用して、身体、顔、手の動きを推定し、VRM 1.0アバターをリアルタイムで制御できるかどうかをテストしました。このテストは、Apple M1 Max上でCPUとWASMを使用して実行しました。

その結果、高価なモーションキャプチャ機器を使わなくても、標準的なWebカメラで3Dアバターを動かせることが示されました。

テスト結果: • ハードウェア: Apple M1 Max • 入力: 1280x720 Webカメラストリーム • 実効速度: 17.3 FPS • 平均推論時間: 49.17 ms • 成功: 検出された全141ポーズフレームにおいてVRMスケルトンが更新されました

仕組み: このシステムは、マルチステージのパイプラインを使用して553個のポイントを追跡します:

  • 身体のポーズ用:33ポイント
  • フェイスメッシュ用:478ポイント(虹彩を含む)
  • 各手用:21ポイント

プロセスは以下のステップに従います:

  • MediaPipeがWebカメラからランドマークを検出
  • 座標をThree.jsの空間に変換
  • データを34個のVRMボーンと表情にマッピング
  • 平滑化アルゴリズムが動きを補間することでジッターを軽減

リターゲティングは、2つのランドマーク間の方向をVRMボーンの方向と一致させることで機能します。例えば、肩から肘へのマッピングを行うことで、腕の回転を設定します。顔の係数(facial coefficients)は、まばたきや顎の開閉といったアバターの表情に直接マッピングされます。

制限事項:

  • 速度: 17.3 FPSはデモとしては十分ですが、プロフェッショナルな60 FPSのモーションキャプチャとしては滑らかさが足りません。
  • 回転: これは方向の近似です。前腕や足首の正確なひねり(twist)までは解決できません。
  • 複雑性: テスト時間が短かったため、顔と両手を同時に安定して追跡できることは証明されませんでした。

このセットアップは、ブラウザ上で動作するアバターのデモやジェスチャーインターフェースを作成するための軽量な手法を提供します。

出典: https://dev.to/kiarina/real-time-webcam-to-vrm-retargeting-with-mediapipe-holistic-173-fps-on-m1-max-4be3