Stable Diffusion Web UI (AUTOMATIC1111) でおすすめの拡張機能

Stable Diffusion Web UI (AUTOMATIC1111) 拡張機能 AIツール

Stable Diffusion Web UI (AUTOMATIC1111) での拡張機能のインストールとアップデート方法、厳選したおすすめ拡張機能を紹介します。

拡張機能のインストール方法

拡張機能のインストールには2つの方法があります。

Availableからインストール

拡張機能がリストに登録されている場合は、検索してインストールできます。

Stable Diffusion Web UI (AUTOMATIC1111) 拡張機能検索
  1. Extensionsタブを開く
  2. Availableタブを開く
  3. Load from:をクリック
  4. ボックスにキーワードを入れて絞り込み拡張機能をInstall
Stable Diffusion Web UI (AUTOMATIC1111) 適用して再起動
  1. Installedタブを開く
  2. Apply and restart UIをクリック

URLからインストール

GitHubのリポジトリをクローンしてインストールします。

GitHubのURLをコピー

拡張機能のGitHubページへアクセスしてCodeをクリックします。タブが開くのでLocalタブHTTPSであることを確認してコピーします。

Stable Diffusion Web UI (AUTOMATIC1111) URLからインストール
  1. Extensionsタブを開く
  2. Install from URLタブを開く
  3. 先ほどコピーしたURLをペーストしてInstall
Stable Diffusion Web UI (AUTOMATIC1111) 適用して再起動
  1. Installedタブを開く
  2. Apply and restart UIをクリック

拡張機能のアップデート方法

拡張機能のアップデート方法も紹介します。

Stable Diffusion Web UI (AUTOMATIC1111) アップデートをチェック
  1. Extensionsタブを開く
  2. Installedタブを開く
  3. Check for updatesをクリック
Stable Diffusion Web UI (AUTOMATIC1111) アップデートをチェック後に適用と再起動

アップデートがあった場合は、拡張機能の右側にnew commiteと表示されます。Apply and restart UIをクリックしてください。

Booru tag autocompletion

プロンプトを記述するのに便利な拡張機能です。

a1111-sd-webui-tagcomplete

タグの表示や補完ができます。スペル間違いを防いだり新たなワードを知ることができます。

Dynamic Prompts

プロンプトをランダムに適用することができます。

まずはWildcardsファイルを用意します。これにはプロンプトがたくさん記述されており、この中からランダムで適用します。自分でも作成できますがCivitaiやHugging Faceにあるのでお好みのものを探してください。

用意したファイルをwebui\extensions\sd-dynamic-prompts\wildcardsに保存します。

Wildcards Manager

Wildcards Managerタブを開きます。ファイルを選んだらコピーしてプロンプトに貼り付けることでランダムで適用されます。ここでは、テキストを修正することもできます。

Generate オプション

永遠に画像を生成したい場合は、Generateボタンを右クリックしてGenerate foreverを選択すればGenerateをひたすら繰り返してくれます。止める場合はCancel generate foreverを選択してください。

ControlNet for Stable Diffusion WebUI

構図をうまくコントロールすることができる便利で定番の拡張機能です。たくさんの機能があるので以下をご覧ください。

Depth map library and poser

Depthのディテクトマップを使って手を描き直します。この拡張機能を使うにはControlNetが必要になります。

Depth Library
  1. Depth Libraryタブを開く
  2. Add background imageをクリックして修正したい画像をアップロードする
  3. 好みのDepth Mapsを選択してAddをクリック
  4. 修正したい手とDepth Mapsを合わせる(Depth Mapsは片手分しかないので左右が逆の場合は反転してください)
  5. Save PNGでディテクトマップを保存する
Depth Library ControlNet 設定
  1. 修正したい画像をimg2imgに送る
  2. ControlNetに先ほど保存したディテクトマップをアップロードする
  3. 入力画像はディテクトマップなのでPreprocessorはnone、Modelを選択して生成する
Depth Library 修正前 Depth Library 修正後

うまく修正できない場合は、ディテクトマップの位置や大きさを調整してください。大きく構図が変わる場合は、Denoising strengthを少し下げるといいかもしれません。また、アップスケーリングを行いたい場合は組み合わせずに修正後がいいかと思います。

Image browser

outputsフォルダ内の画像を読み込んでWeb UI上で閲覧や管理ができます。

Image Browser 1

インストールするとImage Browserのタブが増えるのでそこから閲覧できます。画像が表示されない場合は左回り矢印のアイコンでリフレッシュしてください。

また閲覧だけでなく、いろいろな条件での並び替えやメタデータ(プロンプトやモデルなど)での検索ができます。ランキング機能もあり画像の分類もしやすいです。

Image Browser 2

PNG Infoのような機能もありプロンプトや設定の確認、生成タブへの送信もできます。

Aspect Ratio Helper

Aspect Ratio Helper

サイズ設定の横にアスペクト比を固定できるボックスが増えています。シンプルな機能ですが便利です。

After Detailer

画像生成後に顔の部分を検知してそれぞれ描き直してくれます。複数人や情報量の多い画像で顔のディテールが悪くなる場合に使用するといいでしょう。

ADetailer Settings

ADetailerのSettings

  • Save mask previews(検出画像を保存)
  • Save Images before ADetailer(ADetailer修復前の画像を保存)
ADetailer

基本的にはEnable ADetailerにチェックを入れるだけで使えます。ADetailer modelで手や体の検出もできますが修復はいまいちです。顔の修復メインで利用になるかと思います。

プロンプト欄を利用すれば表情差分の画像も簡単に作成できます。

ADetailer Detection

Detection model confidence thresholdの値以下は検出、修復しません。調整してください。

ADetailer 検知

Save mask previewsにチェックを入れた場合の検出画像になります。

ADetailer before ADetailer after

Inpaint Anything

インペイントの機能ですがマスクの作成にSegment Anything Model (SAM) を使ってオブジェクトごとのマスクを簡単に生成できます。

Inpaint Anything segmentation
  1. Segment Anything Modelを選択してDownload modelをクリック(Base, Large, Hugeの3つのサイズがあり大きいほどVRAMを消費する)
  2. 画像をアップロードする
  3. Run Segment Anythingをクリックすると画像のセグメンテーションを行う
Inpaint Anything マスクの作成
  1. マスクしたい部分を点や線などで選択し、Create Maskをクリックするとマスク領域が白くなります。(Invert maskにチェックを入れるとマスク領域を反転できます。)
  2. マスク領域をします。Expand mask region(マスクの縁を広げる)Trim mask by sketch(ブラシで塗りつぶした部分をマスクから取り除く)Add mask by sketch(ブラシで塗りつぶした部分をマスクに加える)
Inpaint Anything ControlNet Inpaint
  1. マスクが完成したらインペイントを行いたいのでタブを開きます。(InpaintingよりControlNet Inpaintのモデルを使った方がよい生成結果が得られそう)
  2. プロンプトを記入する
  3. PreprocessorとModelを選択してRun ControlNet Inpaintをクリック
Inpaint Anything ControlNet Inpaint オプション

ControlNet optionsタブを開けば、IP-AdapterやReference-Onlyも使用できます。

Inpaint Anything Mask only

Mask onlyではマスク以外を透過にして保存することもできます。

AnimateDiff for Stable Diffusion WebUI

アニメーション画像を生成することができます。動きのある動画を破綻なく生成したり、プロンプトでの誘導はまだまだ難しいですが以下のようなアニメーションは簡単に作成できます。

AnimateDiff
img2img Number of frames16 FPS8

ダウンロード

WebUIをv1.6.0に更新して拡張機能をインストールしてください。

WebUIの更新はパッケージならupdate.batを実行するだけです。

モーションモジュールが必要になります。以下からダウンロードして保存してください。

webui/extensions/sd-webui-animatediff/model

使い方

txt2imgとimg2imgどちらでも利用できます。

AnimateDiff parameter
  • Motion moduleを選択
  • Enable AnimateDiffにチェック
  • Number of framesは総フレーム数
  • FPSは1秒間のフレーム数(画像ではNumber of framesを32にしているため4秒間のアニメーションになる)

各パラメーターの詳しい説明はthis linkから

xformersを有効にしていてエラーが出た場合

AnimateDiff Setting

SettingsタブからAnimateDiffを選択
When you have –xformers in your command line args, you want AnimateDiff toでOptimize attention layers with sdp (torch >= 2.0.0 required)に変更

タイトルとURLをコピーしました