【Stable Diffusion Web UI】拡張機能の使い方
この記事では、Stable Diffusion WebUI(AUTOMATIC1111版・Forge版)で、拡張機能を使う方法を紹介しています。
目次[非表示]
- 1.Stable Diffusionとは
- 2.Stable Diffusion Web UI(AUTOMATIC1111版・Forge版)とは
- 3.拡張機能とは
- 4.拡張機能のインストール方法
- 5.Windows・Mac・GPUSOROBANにインストールする場合
- 6.Google Colabにインストールする場合
- 7.ContorlNet専用モデルの設定
- 8.拡張機能アップデート方法
- 9.拡張機能の無効化
- 10.拡張機能のアンインストール方法
- 10.1.Windows・Mac・GPUSROBANの場合
- 10.2.Google Colabの場合
- 11.拡張機能がインストールできない場合
- 12.もっと自由な画像生成を
- 13.まとめ
Stable Diffusionとは
Stable Diffusionは、無料で使える画像生成AIです。テキストを打ち込むと、それに応じた画像が生成されるしくみです。人物や動物、風景など、さまざまな画像を生成できます。
例えば、「サングラスをかけた猫」と入力するとそのような画像が生成されます。生成する画像のスタイルも多様でイラストや写真、水彩画やアニメ調など、自分の好きなテーマでAIに生成してもらうことができます。
Stable Diffusion Web UI(AUTOMATIC1111版・Forge版)とは
Stable Diffusion Web UI(AUTOMATIC1111)ブラウザを通じて手軽に画像生成を行える無料のWEBアプリケーションで、Google Chromeなどの主要なブラウザで利用できます。
プログラミングを一切必要とせず、WEB UIによる簡単なグラフィカルな操作が可能です。Stable Diffusion Web UIをローカルPCにインストールして使用する、もしくはクラウドサーバーにインストールして使用します。
Stable Diffusion Web UI(AUTOMATIC1111版・Forge版)に関する全般的な使い方については、以下の記事でまとめていますので、あわせてご覧ください。
拡張機能とは
拡張機能(Extension)とは、Stable Diffusion WebUIに追加する機能のことです。
拡張機能を使って便利な機能を追加していくことで、画像生成を効率化したり、クオリティを向上することができます。
拡張機能のインストール方法
この記事では、ControlNetという拡張機能を例に挙げてインストールします。
Stable DiffusionとControlNetのバージョンが合わないと動作しませんので、ご注意ください。
これから設定するControlNetのバージョンはv1.1ですが、Stable Diffusionのバージョンv1.5~v1.6に対応しています。
Stable Diffusionのバージョンは、Stable Diffusion Web UIのフッターに記載があります。この記事ではStable Diffusionのバージョンv1.6を扱います。
Windows・Mac・GPUSOROBANにインストールする場合
ローカルPC・GPUSOROBANに拡張機能をインストールする場合の手順は以下のとおりです。
- Stable Diffusion Web UIの[Extensions]タブを開きます。
- [Install from URL]タブを開きます。
- [URL for extension’s git repository]にインストールする拡張機能のURLを入力します。(例 CntrolNetの拡張機能URL:https://github.com/Mikubill/sd-webui-controlnet.git)
- [Install]をクリックし、インストールを開始します。
[Installed]タブを開き、拡張機能がインストールされたことを確認し、[Apply and restart UI]ボタンをクリックし、Web UIに変更を反映させます。
更新が完了したら、[txt2img]タブから[ControlNetv1.410]が表示されていることを確認します。
Google Colabにインストールする場合
コードセルを実行後し、Stable Diffusion WebUIのリポジトリをコピーします。
拡張機能をダウンロードします。
ダウンロードが完了したらStable Diffusionを起動し、[txt2img]タブ>[Generation]タブに[ControlNet v1.1.410]が表示されていることを確認します。
※Google Colabでは、ランタイムが接続解除されると、Colabにインストールした拡張機能も削除されます。そのためStable Diffusion Web UIを起動する度に、拡張機能をインストールする必要があります。
ContorlNet専用モデルの設定
この記事で一例として挙げているContorlNetは、キャラクターのポーズや構図を自由に調整ができる拡張機能です。
プロンプトによる指定では、思っていたポーズと違う画像が生成されることもあります。ControlNetの拡張機能を使うことで、参考画像のポーズと類似した画像を生成することができます。
写真やイラスト、手書きの絵からポーズや輪郭を型取りして、指定できるため、かなり厳密に参考画像のポーズを再現することが可能です。
ControlNetの詳細は以下の記事で解説しています。
ControlNetを利用するためには、前述のControlNetのインストールに加えて、ControlNet専用のモデルをダウンロードする必要がありますので、手順を解説していきます。
こちらのHugging Faceのページにアクセスしてください。
図に表示されている拡張子.pthの複数のファイルがControlNet専用のモデルになります
ControlNetには14種類以上のモデルがあり、モデルによって機能が異なります。
モデルファイルのサイズが大きいため、使いたいモデルだけダウンロードをすることを推奨します。
この記事では、代表的なCannyというモデルを使います。
[control_v11p_sd15_canny.pth]の[ダウンロード]アイコンをクリックして、モデルファイルをダウンロードします。
ローカルPCもしくはGPUSOROBANをお使いの場合
ダウンロードしたモデルファイルを[stable-diffusion-webui] > [models] > [ControlNet]のディレクトリに格納します。
ディレクトリに格納後、Stable Diffusion Web UIを起動します。
Google Colabをお使いの場合
コードセルで次のコマンドを実行し、Stable Diffusion WebUIのリポジトリをコピーします。
次のコマンドを実行し、Cannyをダウンロード・格納します。
その後Stable Diffusion Web UIを起動します。
[txt2image]の[ControlNetv1.1410]の[▼]アイコンをクリックします。
[ここに画像をドロップまたはクリックしてアップロード]に画像をドラッグ&ドロップでアップロードします。
ここでアップロードする画像は、ポーズや輪郭を型取りをする元画像になります。この記事ではクマのぬいぐるみの写真を用意しました。写真でなくても、イラストや手書きの絵でも構いません。
- [Enable]にチェックを入れます。
- [Control Type]で[Canny]を選択します。
- [Preprocessor]のプルダウンメニューから[Canny]を選択します。
- [Model]の[更新]アイコンをクリックし、プルダウンメニューから[control_v11p_sd15_canny[d14c016b]を選択します。
- [Prompt]のテキストを入力し、[Generate]をクリックします。この記事では”forest”と入力しました。
元画像のクマのぬいぐるみの形はそのままで、森のような色合いになりました。
左が「元画像」、真ん中が「形状を抽出した画像」、右が「抽出した形状にプロンプトの要素を加えた画像」になります。
拡張機能アップデート方法
拡張機能をアップデートする方法は以下のとおりです。
- Stable Diffusion Web UIの[Extensions]タブ、 [Installed]タブを開きます。
- [Check for updates]ボタンをクリックします。
- [Update]に[latest(最新版)]または[new commits(更新可能)]、[unkown(不明)]が表示されます。
- [Apply and restart UI]ボタンをクリックすると拡張機能が一括で更新されます。
拡張機能の無効化
[Extensions]タブを開き、[Installed]タブの[Extention]にインストール済みの拡張機能が表示されているので、無効化したい拡張機能からチェックを外します。
[Apply and restart UI]ボタンをクリックします。
拡張機能のアンインストール方法
Windows・Mac・GPUSROBANの場合
[stable-diffusion-webui]>[extentions]にある[sd-webui-controlnet]フォルダを削除します。
Google Colabの場合
Colabの場合は、一時的しかデータを保持できないので、ランタイムをリセットした後に、消したい拡張機能のインストールコマンドを削除して、Web UIを実行するだけでOKです。
ランタイムを消すには、メニューバーの[ランタイム]から[ランタイムを接続解除して削除]を選択し、表示されるダイアログの[はい]をクリックすると、ランタイムがリセットされます。
拡張機能に関連するコードセルを削除します。
この記事では、例としてControlNetを扱いましたので、以下のControlNetの拡張機能と専用モデルをインストールするコードセルを削除します。
拡張機能がインストールできない場合
インストールする拡張機能とStable Diffusion web UIのバージョンの組み合わせが一致していない場合、インストールできない場合があります。
正しい組み合わせのStable Diffusion Web UIのバージョンに変更してお試しください。
Stable Diffusion Web UIのバージョンをアップデート・ダウングレードする方法は以下の記事で解説しています。
もっと自由な画像生成を
Stable Diffusionを実行する環境で、次のような悩みをお持ちではないでしょうか?
- 画像生成が遅い
- 使いたいGPUが使えない
- GPUメモリ(VRAM)が足りない
- ランタイムがリセットされる度にデータが消えるため、設定のやり直しが大変
- 画像データのバックアップが面倒
- Web UIの起動に時間がかかる
- コンピューティングユニットの制限がストレス
- 動作が不安定
制限を気にせず、高速かつ格安に画像生成がしたいなら、GPUクラウドサービス「GPUSOROBAN」がおすすめです。
まとめ
この記事では、Stable Diffusion Web UIに拡張機能をインストールする方法を紹介しました。
拡張機能を使うことで、画像生成を効率化したり、画像生成のクオリティを向上させることができます。
Stable DiffusionやControlNetに関する記事を以下のページでまとめていますので、あわせてご覧ください。