メインコンテンツへスキップ
見出し画像

Talking Head Anime from a Single Image 3 で フェイストラッキング

    「Talking Head Anime from a Single Image 3」で フェイストラッキングを試したので、まとめました。

    ・Windows 11
    ・iPhone 12
    (iOS 16.2)
    ・iFacialMocap

    前回

    1. Talking Head Anime from a Single Image 3

    「Talking Head Anime from a Single Image 3」は、1枚の2Dキャラクター画像をアニメーションさせるAIモデルです。バージョン3からは、上半身もアニメーションさせることができるようになりました。

    「Talking Head Anime from a Single Image 3」では、2つのデモプログラムが提供されています。

    ・manual_poser : GUIのスライダーで、キャラクターの顔の表情、頭の向き、体の向きを操作
    ・ifiacialmocap_puppeteer : iPhoneカメラに写った顔と体の動きから、キャラクターの顔の表情、頭と体の向きを操作

    今回は、ローカルのWindowsマシンで、「ifiacialmocap_puppeteer」を試してみます。

    2. ハードウェア要件

    ローカルマシンで「ifiacialmocap_puppeteer」を動かすには、NvidiaのGPU が必要です。Nvidia Titan RTXで動作確認されています。RTX 2080、RTX 3080、それ以上のGPU でも同様に機能すると思われます。

    また、「ifacialmocap_puppeteer」は、iPhone端末からBlendShapeの情報をPCに送って貰う必要があります。TrueDepthカメラを持つiPhoneX以降の端末が必要になります。

    3. インストール

    PCでの「ifacialmocap_puppeteer」のインストール手順は、次のとおりです。

    (1) 「Miniconda」のインストール。
    「Miniconda」は、Anacondaの最小構成版のインストーラーです。

    (2) リポジトリのクローンとカレントフォルダへの移動。

    $ git clone https://github.com/pkhungurn/talking-head-anime-3-demo
    $ cd talking-head-anime-3-demo

    (3) パッケージのインストール。
    Anacondaの仮想環境が生成されます。

    $ conda env create -f environment.yml

    (4) Anacondaの仮想環境にアクティブ化。

    $ conda activate talking-head-anime-3-demo

    (5) ここからモデルをダウンロードし、解凍し、以下のように「data/models」に配置。

    + data
      + images
        - crypko_00.png
        - crypko_01.png
            :
        - crypko_07.png
        - lambda_00.png
        - lambda_01.png
      + models
        + separable_float
          - editor.pt
          - eyebrow_decomposer.pt
          - eyebrow_morphing_combiner.pt
          - face_morpher.pt
          - two_algo_face_body_rotator.pt
        + separable_half
          - editor.pt
              :
          - two_algo_face_body_rotator.pt
        + standard_float
          - editor.pt
              :
          - two_algo_face_body_rotator.pt
        + standard_half
          - editor.pt
              :
          - two_algo_face_body_rotator.pt

    4. iFacialMocapの実行

    iFacialMocapは、iPhoneのカメラで表情をキャプチャし、PC上のソフトウェアに通知するiPhoneアプリです。有料で1000円になります。

    (1) iPhoneにiFacialMocapをインストール。

    (2) iFacialMocapを起動。
    画面上に表示されているIPが、PCからの接続先になります。

    画像

    5. ifacialmocap_puppeteerの実行

    「ifacialmocap_puppeteer」の実行手順は、次のとおりです。

    (1) Anacondaの仮想環境で以下のコマンドを実行。

    $ python tha3/app/ifacialmocap_puppeteer.py

    (2) ウィンドウが起動したら、上のテキストフィールドに「iFacialMocap」(を実行しているiPhone)のIPを入力し、「START CAPTURE!」ボタンを押す。
    成功すると、画面下端のパラメータの数値が動きます。

    画像

    うまく接続されない時は、以下を確認してください。

    ・PCとiPhoneは同じWiFiネットワークに接続。
    ・ファイヤーウォールが通信を邪魔してないか確認。

    自分の場合は、「Windows Defender」を使ってたので、パブリックネットワークではUDP受信できなかったため、プライベートネットワークに切り替える必要がありました。

    (3) 「Load Image」ボタンでイメージを読み込み。
    前回と同じ画像を読み込みます。

    画像

    成功すると、自分の顔と上半身の動きにあわせて、キャラクターが動きます。

    Talking Head Anime from a Single Image 3 で フェイストラッキング。iFacialMocap便利ね。 pic.twitter.com/FRiF7Vgi5k

    — 布留川英一 / Hidekazu Furukawa (@npaka123) November 13, 2022

    6. 関連



     
     

    npaka

     
     
    プログラマー。iPhone / Android / Unity / ROS / AI / AR / VR / RasPi / ロボット / ガジェット。年2冊ペースで技術書を執筆。アニソン / カラオケ / ギター / 猫 twitter : @npaka123

    あなたへのおすすめ