generated at
Stable Diffusion web UIでControlNetを使う

0 Stable Diffusion web UIをアップデート
フォルダを右クリック
git bash して git pull
bush?基素
bash!!nomadoor
画像つきのページで作ってしまおう

1 拡張機能(sd-webui-controlnet)を入れる

2 ControlNetモデルをダウンロードする
yamlファイルも必要
ダウンロードしたモデルは以下に置く
stable-diffusion-web-ui/extensions/sd-webui-controlnet/models
$ ~~/stable-diffusion-webui/models/ControlNet

3 とりあえず使う
txt2imgタブ or img2imgタブ
この設定が増えているはず
Q. 増えていません
A. web UIを再起動
Enableに✅
RuntimeError: CUDA out of memory.が出た場合Low VRAMにも✅
image
ベースとなる画像
Preprocessor
下準備としてimageをopenposeの棒人間や深度マップへ変換する
最初からopenposeの棒人間やcannyで使えるエッジ抽出画像をimageに入れる場合は none にする
Model
Preprocessorに合わせて2でダウンロードしたモデルの中から選ぶ
ほかは通常通り設定して Generate
作者いわく、Negative promptに
$ longbody, lowres, bad anatomy, bad hands, missing fingers, extra digit, fewer digits, cropped, worst quality, low quality
を入れたほうが良いらしい

4 各種設定
プロンプトを入れずに形だけを与えて、ControlNetに中身を考えさせるモード
プロンプトは(Negativeも含めて)なにも書かない
CFGは3~5と低い値にする
Guidance Start(End)
ControlNetで制御をかけるタイミングを調整できる
img2imgで使った例(ちょっとわかりにくい)
手だけをControlNetに従わせて書きたい
Guidance Startが0だと最初からcontrol mapに従ってしまうため、他の部分が崩れてしまう
潜在空間である程度形ができた後に制御をかけることで、特定部位だけ編集できる
inpainting的な使い方よりもMulti ControlNetでレイヤー分けのようなことをするで力を発揮できる気がするnomadoor


やってみたnomadoor
OpenPose

5歳でもわかるControlNetの使い方