見出し画像

【Stable Diffusion】あなただけのAI画像を動かす方法@Google Colab

画像生成AIで美女を愛でている(@Toshimaruちゃん)です。
今回は、Stable Diffusion web UI(Google Colab)で“mov2mov”(動画から動画生成)の方法をお伝えします。

まだ日本語で解説しているサイトが少ないので、この記事が参考になったら「スキ」や「保存」をよろしくお願いいたします。
※コメントも励みになります!

★この記事は、Google Colab上でStable Diffusion WebUIが起動できることを前提とした記事となっています。よくわからん!という方は、下記の記事をご覧になってからチャレンジしてみてください。

【重要追記事項】
昨今の画像生成ブームの影響を受け、Google ColabでのStable Diffusionの利用が制限を受ける可能性があると発表がありました。ただし、有料版は、これに該当しないとのことです。無料で利用することは現状できますが、リスクがあることをご認識ください。

■【Stable Diffusion】あなただけのAI美女の作り方@Google Colab

1.Stable Diffusion web UIで【mov2mov】 を導入する

まず初めに、Stable Diffusion web UIの拡張機能である【mov2mov】を導入していきます。

今回は、Scholar01氏の学習データを使用します。
下記ページ(GitHub)にアクセス
■sd-webui-mov2mov

Google Claboでノートブックを開き、下記の用にコードを追記します。

 #AUTOMATIC1111 
!git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui

このコードの下に下記のコードを追加

 #controlnet 
!git clone https://github.com/Mikubill/sd-webui-controlnet.git  /content/stable-diffusion-webui/extensions/sd-webui-controlnet
!git clone https://github.com/Scholar01/sd-webui-mov2mov.git  /content/stable-diffusion-webui/extensions/sd-webui-mov2mov


ControlNetも一緒に導入しましょう。

※今回はControlNetも合わせて使用しますので、下記のコードとControlNet用のモデルデータの【hed】も合わせてダウンロードしておきましょう。

コードは下記のような感じで
!cp /content/drive/MyDrive/StableDiffusion/controlnet/control_openpose-fp16.safetensors  /content/stable-diffusion-webui/extensions/sd-webui-controlnet/models/
!cp /content/drive/MyDrive/StableDiffusion/controlnet/control_canny-fp16.safetensors  /content/stable-diffusion-webui/extensions/sd-webui-controlnet/models/
!cp /content/drive/MyDrive/StableDiffusion/controlnet/control_hed-fp16.safetensors  /content/stable-diffusion-webui/extensions/sd-webui-controlnet/models/

※ControlNet用のモデルデータは、Googleドライブの所定のフォルダにアップロードしておきましょう。

ここにアップロードしておいてください。

よくわからないという方は、こちらの3項目目をチェック!
■【Stable Diffusion】あなただけのAI美女の作り方@Google Colab

ここまで準備できたら、上から順にセルを実行して、Stable Diffusion WebUIを起動してください。

◆追記◆
セルの実行時に、下記のようなエラーが出ることがあります。
※私だけかも・・・、そしたらスルーで大丈夫です。

Error running install.py for extension /content/stable-diffusion-webui/extensions/sd-webui-mov2mov.
Command: "/usr/bin/python3" "/content/stable-diffusion-webui/extensions/sd-webui-mov2mov/install.py"
Error code: 1
stdout: <empty>
stderr: Traceback (most recent call last):
  File "/content/stable-diffusion-webui/extensions/sd-webui-mov2mov/install.py", line 4, in <module>
    plat = platform.system().lower()
NameError: name 'platform' is not defined

このエラーが出た場合は、下記の用に対応をして、セルの再実行をしてください。

stable-diffusion-webui/extensions/sd-webui-mov2mov
を開く
「install.py」 を開く
import platform
import launch


plat = platform.system().lower()


if not launch.is_installed("cv2"):
    print('Installing requirements for Mov2mov')
    launch.run_pip("install opencv-python", "requirements for opencv")
    launch.run_pip("install imageio", "requirements for imageio")


if not launch.is_installed('ffmpeg'):
    print('Installing requirements for Mov2mov')
    launch.run_pip("install ffmpeg", "requirements for ffmpeg")
    launch.run_pip("install install imageio-ffmpeg", "requirements for imageio-ffmpeg")

開いたら上のように、
“import platform” を
“import launch” の上に追加してください。

上記が完了したら、再度セルを実行してください。
問題なく起動できるようになるはず!!

2.Stable Diffusion WebUIでの設定について

次に、起動後の設定について紹介します。

まず、Stable Diffusion web UIが起動したら【Settings】タブを開きます。
そして、下記の画像のように“ControlNet”の『Allow other script to control this extension』部分にチェックを入れます。
最後に“Apply Settings”をクリックします。

番号の順に!

次に【mov2mov】タブ”を開きます。

img2imgと同じ感じです。

通常のプロンプト入力エリアや、動画インプットエリアがありますので、こちらに任意の動画をドロップしてください。

実際に動画をアップロードしたのがこちら

今回はフリーの動画を使用しています。

各種設定は、以下の画像を参考にしてください。

赤四角枠の中は、自分に合った感じで設定してください!
数値を高くすればよいわけではない項目もあるので注意。

ここまでの設定が終わったら、Seed値の入力欄の下部にあるControlNetの設定をします。

【hed】が一番元の動画を忠実に再現できます。
任意のキャラクターに寄せたい場合は、[canny]の方が良いかもですが結構ちらつきます。

◆追記◆
ControlNetのモデルについては、Multi ControlNetで複数のモデルを合わせることで安定することがわかりました。

★ModNetについて
私もまだ実際に使っていないので何とも言えませんが、背景を合成・透過・グリーンバッグなどにできる機能みたいです。モデルデータも必要っぽい。
後程、まだ記事にします!

https://github.com/ZHKKKe/MODNet
このページからモデルデータをDLできそう。

全ての設定が終わったら、生成ボタンを押して動画が生成されるのをお待ちください。

生成された動画は
/outputs/mov2mov-videos
に保存されます。

◆実際に生成してみた動画はこちら


是非、みなさんもAI動画生成にチャレンジしてみてくださいね♪
新しい情報がありましたら随時更新します。

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