見出し画像

Stable Diffusion Web UI環境構築メモ

PC吹き飛んだとかで1から再構築する時の為の覚え書き
(兼それが誰かのお役に立てば。。。)

単にWebUIインストールしてゴール…ではなく、最低限コレ入れといた方がが良いよねって拡張・設定のまとめがメイン

なのでそれぞれの詳細なやり方は記載しないので必要に応じてググる



Stable Diffusion Web UIのインストール

正式名称はAUTOMATIC1111 web UI
Stable Diffusionをwebブラウザをインターフェースにして動作させる

大抵コイツ前提で話が進められるのでこれが無くては始まらない
適宜ググってPythonとGit含めインストール

起動オプションの追加

テキストエディタでwebui-user.batを開く
『set COMMANDLINE_ARGS=』の行を以下へ編集

set COMMANDLINE_ARGS=--autolaunch --xformers

autolaunch : 起動すると自動でブラウザが開くようになる
xformers : 画像生成の高速化&負荷軽減。グラボが対応している必要あり。(生成結果に僅かに影響があるらしいが高速化・負荷軽減の恩恵の方が大きいはず)

各種拡張機能の導入

基本はextensionタブの拡張機能リストでhttps://raw.githubusercontent.com/AUTOMATIC1111/stable-diffusion-webui-extensions/master/index.json(初期入力されているはず)を読み込んでその中から探す
あるいはgitリポジトリのURLからインストール

日本語化(ja_JP Localization)

初期設定だと拡張機能一覧からLocalizationが除外されているため注意
インストール出来たらSetting-> User interface-> Localizationで日本語を選択してApply Setting

プロンプト自動補完

プロンプト入力時に候補を表示してくれる

生成画像ブラウザ

生成した画像をwebUI上で閲覧・管理できる
デフォルトだと直前に生成した画像以外はoutputフォルダから見るしかないので入れた方がよい

Cutoff

色の指定箇所以外への波及(red hair, blue eyes で目まで赤くなってしまう等)を抑制する拡張

Styles-Editor


Controllnet

拡張のInstallに加えて以下から必要なControllnet用モデルをDL

主に使いそうなもの
・canny(輪郭線から画像生成):control_canny-fp16.safetensors
・openpose(棒人間から画像生成):control_openpose-fp16.safetensors
・depth (深度情報から画像生成・主に手で使用):control_depth-fp16.safetensors
DLしたモデルはmodels/ControlNetへ配置

Openpose Editor

openpose用の棒人間を作成するための拡張

Depth map library and poser

手の深度図のライブラリ
基本的にはOpenpose Editorと組み合わせて使う

以下大まかな使い方
(事前準備:設定タブ > ControlNet > Multi ControlNet:最大モデル数 を2に設定して再起動しておく)

  1. Openpose Editorで棒人間を作成

  2. 作成した棒人間をpng保存し、Depth map library and poser の Background imageとして読み込む

  3. 棒人間に合わせて手の深度図を配置してpng保存(手の画像のみが保存される)

  4. txt2imgのControlNetの各Unitへ、上記で作成した棒人間画像と手画像をそれぞれ投入

    1. 棒人間側:ControlTypeをOpenPoseに設定

    2. 手側:ControlTypeをDepth(深度)へ設定

    3. 両方:Enable(有効化)に☑を入れ、プリプロセッサをnone(なし)にする

    4. プロンプトを入力して生成

RemBg(背景削除拡張)

あれば何かと便利
インストール後「その他」タブの最下部に背景削除が追加される
適宜モデルを選んで生成(主な用途が二次イラストの人物切り抜きなのでisnet-animeで大抵問題ないはず)

Civitai Helper

CivitaiのLoRAモデルを使用するなら入れた方が便利
・サムネイルが表示される
・トリガーワードを呼び出せる
・etc…
使用方法は日本語ReadMe参照


!After Detailer

引き構図での顔の崩れを何とかしてくれる拡張
生成画面にADetailerが追加されるのでEnable ADetailerで有効化
色々設定値は有るけどデフォルト設定で十分効果あり
プロンプト指定で表情差分を作ったりもできるらしい

EazyNegativeの導入

https://huggingface.co/datasets/gsdf/EasyNegative/tree/main からEasyNegative.safetensorsをダウンロードし、WebUIのembeddingsフォルダに配置する
ネガティブプロンプトに『EasyNegative』と入力すると汎用的なネガティブプロンプトが自動反映される(モデルによってはそんなに効果ないかも)

VAEの導入

生成結果の色味を良い感じにしてくれるもの?らしい?
入れないと色味がおかしかったり緑色のハイライトが入ったりするので何かしらは入れた方がよい
色々種類あるので適宜ググって良さげなのを導入する
(モデルによっては専用VAEがあったりするのでそれを使用する)
VAEファイルをDLしたらWebUIのmodels/vaeフォルダへ配置
設定タブ -> Stable Diffusion の SD VAE でVAEモデルを選択して設定を適用


記事執筆時のコーヒー代などなります。