見出し画像

Google Colab で Stable Video 3D を試す

「Google Colab で「Stable Video 3D」を試したので、まとめました。

【注意】Google Colab Pro/Pro+のA100で動作確認しています。


1. Stable Video 3D

Stable Video 3D」は、マルチビュー合成のためのImage-to-Videoモデルです。同じサイズの1つのコンテキストフレーム (理想的には1つのオブジェクトを含む白い背景の画像) を与えて、解像度576x57621フレームを生成するように学習しています。

Stable Zero123 」と比較して、品質とマルチビューが大幅に改善され、「Zero123-XL」などの他のオープンソースの代替製品よりも優れています。

このモデルには2つのバリアントが提供されています。

・SV3D_u : カメラ軌道なしで単一画像から軌道動画を生成
・SV3D_p : 単一画像とカメラ軌道から3D動画を生成

2. 利用許諾の確認

HuggingFaceのモデルカード「stabilityai/sv3d」を開き、「Agree and access repository」ボタンを押してください。

3. Colabでの実行

Colabでの実行手順は、次のとおりです。

3-1. SV3D_u

(1) Colabのノートブックを開き、メニュー「編集 → ノートブックの設定」で「GPU」の「A100」を選択。

(2) パッケージのインストール。

# パッケージのインストール
!git clone https://github.com/Stability-AI/generative-models
%cd generative-models
!pip install -r requirements/pt2.txt
!pip install .

(3) 「HuggingFace」からAPIキー (Access Token) を取得し、Colabのシークレットマネージャーに登録。
キーは「HF_KEY」とします。

(4) モデルを「generative-models/checkpoints」に配置。
sv3d_u.safetensors」と「sv3d_p.safetensors」を「checkpoints」にダウンロードします。

from huggingface_hub import hf_hub_download
hf_hub_download(repo_id="stabilityai/sv3d", filename="sv3d_u.safetensors", local_dir="checkpoints")
hf_hub_download(repo_id="stabilityai/sv3d", filename="sv3d_p.safetensors", local_dir="checkpoints")

(5) 画像を「generative-models」に配置。

・girl.png

(6) 「simple_video_sample.py」で推論実行。

# 推論の実行
!python scripts/sampling/simple_video_sample.py --input_path girl.png --version sv3d_u

パラメータは、次の通りです。

--input_path : 入力画像
--version : sv3d_u

outputs/simple_video_sample/sv3d_u」に動画が出力されます。

3-2. SV3D_p

(1) 「simple_video_sample.py」で推論を実行。

# 推論の実行
!python scripts/sampling/simple_video_sample.py --input_path girl.png --version sv3d_p --elevations_deg [0,5,10,15,20,25,30,25,20,15,10,5,0,-5,-10,-15,-20,-15,-10,-5,0] --azimuths_deg [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]

パラメータは、次の通りです。

--input_path : 入力画像
--elevations_deg : 21個の仰角 ([-90, 90]度)
--azimuths_deg : 21個の方位角 ([0,360]度)
--version : sv3d_p

outputs/simple_video_sample/sv3d_p」に動画が出力されます。

GPUのメモリは最大33.1GB消費しました。



いいなと思ったら応援しよう!