見出し画像

写真が簡単に動かせる!Stable Video Diffusionを試してみよう

追記:2024年2月6日、Stable Video Diffusion 1.1がリリースされました




Stable Video Diffusionとは

2023年11月22日、StabilityAI社から「Stable Video Diffusion」が発表されました。

これは画像生成モデルである Stable Diffusion に基づく動画生成用のモデルで、現在は研究プレビューとして公開されています。
Stable Video Diffusion のコードはGitHubで公開されており、ローカルでモデルを実行するために必要なウェイトは Hugging Face のページで確認することができます。
Hugging Face では2種類のモデルが公開されています。
14フレームの動画を生成するモデルと、

24フレームの動画を生成するモデルです。

どちらも学習している画像のサイズは576×1024です。

Stability AIの中の人、mkshingさんのツイートより

Stable Video Diffusionも早く触りたいでも、リソースやどうやって試せば良いのか分からないという方!
Colabのフリープランで試せるようにハックしました。どうぞお試しください〜。
Colab: http://colab.research.google.com/github/mkshing/notebooks/blob/main/stable_video_diffusion_img2vid.ipynb
#StableVideo
初期画像は #JSDXL から生成。

https://twitter.com/mk1stats/status/1727207950434083017

Colabで動かしてみる

それではさっそく、mkshingさんの作成したColab notebookでstable-video-diffusion-img2vidのデモを試していきます!

ColabのURLを開き、セルを実行します。

https://j.aicu.ai/SVDcolab

しらいはかせが日本語解説版を作ってくれたのでこちらもどうぞ
https://j.aicu.ai/SVDcolabJ20231122

「Open in Colab」というボタンを押して…

https://github.com/aicuai/GenAI-Steam/blob/main/20231122_stable_video_diffusion_img2vid.ipynb

その後「ドライブにコピー」

見た目何も変わらないかもですが、左上を見るとColabで開いていることがわかります

続いて「ランタイム」から「すべてのセルを実行」してしばらく待てばいいのですが、その前に、右上の「接続」設定から「ランタイムのタイプ」を見ておきましょう。

もし、「T4 GPU」以上のGPUが選択されていない(CPU)の場合は、ここで選択し直して「ランタイム」→「ランタイムを接続解除して削除」を実施しましょう。

セッションを作り直すごとにすべてのファイルのダウンロードを行います。初回の実行時間はだいたい10分ぐらい見ておくといいと思います。これが後で気づくとつらい!

無料版Google Colabで利用できるGPU「T4」だけですが、Pro版の「V100」だと約3分で生成できたので、もし月額1,179円が払えるようでしたらV100での実行をおすすめします!

さてGPUのランタイムが取得できたら「すべてのセルを実行」します。

ファイル名が「~のコピー」となっているので、ここから先はこのノートブックに自由に書き足していって勉強できます。

すべてのファイルのダウンロードを行いますので、初回の実行時間はだいたい10分ぐらい見ておくといいと思います。

最後のセルまで実行できたら、「Running on public URL」のURL(Gradio)をクリックし、新しいタブで開きます。

https://xxxxxxxxxxxxx.gradio.live という形式になっているURLです。

gradioの画面

それでは実際に写真をアップロードして画像を生成してみましょう。今回はフリー写真サイトの「pexels」から何枚かダウンロードして使ってみます。
まずはこの写真です。

いきなり登場人物が2人いますが、どうなるでしょうか

アップロードする前に、そのままではサイズが大きすぎるので、photoshopなどを使い576×1024を目安に画像サイズを小さくします。画像がjpegの場合は、PNGに変換しておきましょう。
また今回の画像サイズは576×1024にぴったり収まる比では無かったので、「resize to optimal size」のチェックを外しておきます。

それでは「Run」で生成してみましょう。

結果

とても自然に動きました!温かみのある写真の意図を汲んでいるような気がしますね。

さらに生成してみる

他のテイストの画像でもチャレンジしてみましょう。

結果

これも自然な動きですね!

縦長の動画も試してみようと思います。

これは人物があまり動かず、カメラが回っているような雰囲気になりました。ですが立体感などは自然に出ていますね。

また「Run」の下にある「Advanced options」のメニューを開くと、フレーム数やフレームレートを変更することができます。ぜひ試してみてください。

失敗例

何度か生成してみたところ、時折、被写体があまり動かずに画面がスクロールするだけの動画になってしまう時がありました。
また、アニメ調や平面的なイラストは苦手なようで、人物が崩壊してしまうことがわかりました。

しらいはかせCEOが成功例/失敗例をまとめているので、参考にしてみてください!

https://note.com/o_ob/n/nd9488bc7ea37



応援してくださる皆様へ!💖 いただいたサポートは、より良いコンテンツ制作、ライターさんの謝礼に役立てさせていただきます!