![見出し画像](https://assets.st-note.com/production/uploads/images/146391956/rectangle_large_type_2_59f2a4b17b0c0d40f185e2c9a329b015.png?width=1200)
ControlNeXt-SVDで遊ぶメモ
このメモを読むと
・ControlNeXt-SVDを試せる
・img2videoをお手軽に試せる
検証環境
・OS : Windows11
・Mem : 64GB
・GPU : GeForce RTX™ 4090
・ローカル(pyenv+venv)
・python 3.10.11
・2024/7/B時点
ControlNeXt-SVD
一枚絵とopenposeのモーション動画を入力することで、
画像へ動きを付与することができます。
試してみましょう!
事前準備
下記モデルを用いるため、hugging faceへログインし利用認証を得ましょう。
環境構築
とても簡単です!
1. リポジトリをインストールし、ディレクトリ移動
https://github.com/dvlab-research/ControlNeXt.git
cd ControlNeXt/ControlNeXt-SVD
2. 仮想環境を作成し、環境切替
python -m venv .venv
.venv\scripts\activate
3. 追加パッケージのインストール
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
pip install pip install einops decord
pip install -r ../requirements.txt
4. 重み格納用ディレクトリを作成
mkdir pretrained
5. こちらから重みをDLし、./pretrained直下へ格納
![](https://assets.st-note.com/img/1720248937654-tqrEA2LxQ7.png)
6. プロンプト上でhugging-faceへログイン
トークンを入力
huggingface-cli login
_| _| _| _| _|_|_| _|_|_| _|_|_| _| _| _|_|_| _|_|_|_| _|_| _|_|_| _|_|_|_|
_| _| _| _| _| _| _| _|_| _| _| _| _| _| _| _|
_|_|_|_| _| _| _| _|_| _| _|_| _| _| _| _| _| _|_| _|_|_| _|_|_|_| _| _|_|_|
_| _| _| _| _| _| _| _| _| _| _|_| _| _| _| _| _| _| _|
_| _| _|_| _|_|_| _|_|_| _|_|_| _| _| _|_|_| _| _| _| _|_|_| _|_|_|_|
To login, `huggingface_hub` requires a token generated from https://huggingface.co/settings/tokens .
Token can be pasted using 'Right-Click'.
Enter your token (input will not be visible): [ ここにトークンを入力 ]
完了です!
ControlNeXt-SVDを試してみる
一枚絵を動かしてみましょう。
入力データをそろえる
./examples/pose へ モーション動画を、
./examples/ref_imgs へ 一枚絵を格納
今回、モーション動画は元から用意されているものを使い
一枚絵は以下を oji.jpg として用意しました。
![](https://assets.st-note.com/img/1720252306714-joVgnw7tL3.jpg?width=1200)
実行
プロンプトから下記コマンドを実行します。
python run_controlnext.py \
--pretrained_model_name_or_path stabilityai/stable-video-diffusion-img2vid-xt-1-1 \
--validation_control_video_path examples/pose/pose.mp4 \
--output_dir outputs/dance \
--controlnext_path pretrained/controlnet.bin \
--unet_path pretrained/unet_fp16.bin \
--ref_image_path examples/ref_imgs/oji.jpg
結果
./outputs/dance へ成果物が格納されます。
おじダンス pic.twitter.com/mwJcGiwlkX
— おれっち (@__olender) July 6, 2024
![](https://assets.st-note.com/img/1720252586092-y7b5Z4kTMh.png?width=1200)
おわり
img2videoで絵を動かせた。
VRAM使用量が少ないため、手軽に試しやすいのも良いですね。
どうやらLoraも利用可能なようです。
デモくらいキレイに変換できなかったで、もう少し模索してみます。
おしょうしな
【新しい画像制御モデル】
— 田中義弘 | taziku CEO / AI × Creative (@taziku_co) July 6, 2024
ControlNeXtは、写真とビデオの同時制御をサポートし、ControlNetと比較して、パラメータを最大90%削減し、より素早い処理が可能。
Loraなども利用可能でかなり柔軟性が高い。
続く>>#生成AI #AIpic.twitter.com/bPidsz0KDX
参考にさせていただきました。ありがとうございました。