見出し画像

WSL2でAniPortraitを試してみる

「音声と参照ポートレート画像によって駆動される高品質のアニメーションを生成するための新しいフレームワーク」らしいAniPortraitを試してみます。

使用するPCはドスパラさんの「GALLERIA UL9C-R49」。スペックは
・CPU: Intel® Core™ i9-13900HX Processor
・Mem: 64 GB
・GPU: NVIDIA® GeForce RTX™ 4090 Laptop GPU(16GB)
・GPU: NVIDIA® GeForce RTX™ 4090 (24GB)
・OS: Ubuntu22.04 on WSL2(Windows 11)
です。


1. 準備

環境構築

python3 -m venv aniportrait
cd $_
source bin/activate

リポジトリをクローン

git clone https://github.com/Zejun-Yang/AniPortrait
cd AniPortrait

パッケージのインストール

pip install -r requirements.txt

モデルのダウンロード

pythonコマンドを起動して流し込みます。保存先のディレクトリ(local_dir)は./configs/prompts/animation.yaml 記載のパスに合わせています。

from huggingface_hub import snapshot_download

# AniPortrait
REPO_ID="ZJYang/AniPortrait"
snapshot_download(
	repo_id=REPO_ID,
	revision="main",
	local_dir="./pretrained_model",
	local_dir_use_symlinks=True	
)

# sd-vae-ft-ema
REPO_ID="stabilityai/sd-voe-ft-ema"
snapshot_download(
	repo_id=REPO_ID,
	revision="main",
	local_dir="./pretrained_model/sd-vae-ft-mse",
	local_dir_use_symlinks=True	
)

# SD v1.5
REPO_ID="runwayml/stable-diffusion-v1-5"
snapshot_download(
	repo_id=REPO_ID,
	revision="main",
	local_dir="./pretrained_model/stable-diffusion-v1-5",
	local_dir_use_symlinks=True	
)

# image_encoder
from huggingface_hub import snapshot_download

REPO_ID="lambdalabs/sd-image-variations-diffusers"
snapshot_download(
	repo_id=REPO_ID,
	revision="main",
	local_dir="./pretrained_model/image_encoder",
	local_dir_use_symlinks=True	
)

2. 試してみる

ポーズを動画へ

python -m scripts.pose2vid --config ./configs/prompts/animation.yaml -W 512 -H 512

OSメモリが32GBだとOOM Killerが発動したため、49GBに変更してじっしています。以下のように、44.2GBぐらい使用しています。

top - 15:44:36 up 52 min,  1 user,  load average: 2.28, 1.27, 1.09
Tasks:  47 total,   2 running,  45 sleeping,   0 stopped,   0 zombie
%Cpu(s):  4.2 us, 44.3 sy,  0.0 ni, 50.9 id,  0.5 wa,  0.0 hi,  0.1 si,  0.0 st
MiB Mem :  49181.9 total,    270.9 free,  45443.7 used,   3467.4 buff/cache
MiB Swap:  13312.0 total,  13159.2 free,    152.8 used.   3111.3 avail Mem

    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
   1789 shoji_n+  20   0  142.9g  44.2g 673540 R  1483  92.0  59:38.11 python
    490 root      20   0 2171960  79876  23928 S   0.0   0.2   0:02.92 python3.10

vramは、13.1GB程度。ですので16GBあれば動きますね。

とおもいきや、18.4GB消費でした。

そして、コマンド実行から48分後。生成された動画がこちら。

4. まとめ

リソース
vramは13.1GB消費なので、16GBは必要
vramは18.3GB消費なので、24GBは必要
・OSメモリは32GBだと足りず、45GB以上ないと厳しそう
 (49GB割当では落ちませんでした)

所要時間
・RTX 4090(24GB)で、48分かかりました。

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