見出し画像

【ローカルAI生成】FacePokeで表情を作る【リアルタイム】

はじめに

AI画像生成界隈では、日々さまざまな技術が発表されています。この記事では、その中のひとつのローカルで実行可能なFacePokeというものを試してみます。

FacePokeとは

公式リポジトリはこちら、

任意の画像に対して、マウスで簡単に表情を変える事ができます。

AIで生成した画像に適用

huggingface上のライブ・デモもあります。

仕組みはLivePortraitを利用しているとの事。動画ではなく、マウスでグリグリできるようになっています。

導入方法

【注意】2024年10月9日現在FacePokeのリポジトリ・ソースにはバグがあり修正しないと動作しません。リポジトリのIssuesに報告されています。
記事作成中に修正済みとなったので、たぶん問題ないと思いますが。

公式リポジトリのREADMEにはLinuxしか確認していないとありますが、Windows 11で動作しました。

Anacondaを利用した導入方法

Anacondaの詳細は下記事で紹介しています。

① 作業フォルダ(インストール先)を作ります

c:
mkdir C:\facepoke.d
cd C:\facepoke.d

② Anacondaで仮想環境を作ります
Pythonバージョンは3.10指定とあります

conda create -n face-poke python=3.10
conda activate face-poke

③ gitをインストール

conda install git

④ リポジトリをクローン

git clone https://github.com/jbilcke-hf/FacePoke.git
cd FacePoke

⑤ (face-poke)仮想環境である事を確認した後、pipコマンドで必要なパッケージをインストール

pip3 install --upgrade -r requirements.txt

⑥ Windows版 bunコマンドを導入
(Pythonパッケージ管理のフレームワークから外れる)余計なインストールを避けたい場合は、Dockerファイルも用意されているので、自分でビルドする必要がありますが、Docker版の方が良いかもしれません。

powershell -c "irm bun.sh/install.ps1 | iex"

変更された環境変数を適用するため、Anaconda Promptを一度閉じます。再度Anaconda Promptを起動して仮想環境に入り、同じフォルダへ移動します。

c:
cd C:\facepoke.d\FacePoke
conda activate face-poke

⑦ フロントエンドの設定

cd client
bun install

bun build ./src/index.tsx --outdir ../public/

⑧ サーバーの起動

cd ..
python app.py

⑨ ブラウザから「http://localhost:8080」で動作確認
ポート番号を変えたい場合は、app.pyを編集すれば変更できます。

FacePoke ①

【追記:2024年10月9日】
バグはまだ修正されていないようなので、記載しておきます。
「client\src\lib\facePoke.ts」のファイル53行目、

 this.ws = new WebSocket(`wss://${window.location.host}/ws`);

のwssをwsに変更してください。

this.ws = new WebSocket(`ws://${window.location.host}/ws`);

その後、⑦を再度実行します。

bun build ./src/index.tsx --outdir ../public/


動作確認

Show face landmarks on hoverをチェックすると、変更する場所がわかりやすくなります。マウスでグリグリするとカクカクしますが(RTX3060)、リアルタイムで扱えます。

FacePoke ②

まとめ

やはりマウスで直感的に表情を変更できるのは便利だと思います。


以下、関連する記事の【PR】です。


この記事が気に入ったらサポートをしてみませんか?