ControlNetのインストール、使い方、モデルの早見表【Stable Diffusion Web UI】
目次
[ControlNetの設定]
1. ControlNet 1.1のインストール
2. ControlNetの使い方
[ControlNetのモデル(14種類)]
3. Depth(深度マップ)
4. Normal(法線マッピング)
5. Canny(エッジ検出)
6. MLSD(線分検出)
7. Scribble(落書き)
8. Soft Edge(ソフトエッジ)
9. Segmentation(意味的分割)
10. OpenPose(人物姿勢推定)
11. Linearts(線画)
12. Anime Linearts(アニメ線画)
13. Shuffle(コンテンツシャッフル) - 実験的機能
14. Pix2Pix(スタイル変換) - 実験的機能
15. Inpaint(インペイント)
16. Tile(タイル) - 実験的機能
17. Reference(参照)
前提条件
この画像を標準としてControlNet適用後の出力画像と比較します。
次のプロンプト、ネガティブプロンプト、Seedなどの設定をStable Diffusion Web UIで同一にすると同じ画像が生成されます。
// プロンプト detailed face, beautiful landscape,1 girl solo, // ネガティブプロンプト EasyNegativeV2 // その他 Steps: 20, Sampler: Euler a, CFG scale: 7, Seed: 786002949, Size: 512x512, Model hash: cbfba64e66, Model: CounterfeitV30_v30, Version: v1.4.1
Stable Diffusion Web UIのインストールはStable Diffusionのインストール方法(AUTOMATIC1111)【初心者/AIイラスト/画像生成AI/Windows】をご参考にして下さい。
ControlNet 1.1のインストール
先にsd-webui-controlnetをインストールする
1. Web UIの[Extensions]タブを選択。[Install from URL]タブの「URL for extension's git repository」に次のURLを入力します。
2. [Install]ボタンをクリックします。
3. インストール後、[Installed]タブを選択して「Apply and restart UI」ボタンをクリックしてWeb UIを再起動します。
4. [Installed]タブの「Extension」に「sd-webui-controlnet」が表示されていればOK。これでControlNetのモデルがあればWeb UIで利用できるようになります。
ControlNetのモデルをダウンロードする
1. 次のURLから全てのファイルをダウンロードする。小さなダウンロード矢印「↓」アイコンをクリックしてダウンロードしてください。
厳密にはモデル(*.pth)、設定ファイル(*.yaml)の計28ファイルが必要。ファイルサイズの総数は約18.8GBありますので気長に待ちましょう。
ファイル名の一覧 ※拡張子除く ・control_v11f1p_sd15_depth ・control_v11p_sd15_normalbae ・control_v11p_sd15_canny ・control_v11p_sd15_mlsd ・control_v11p_sd15_scribble ・control_v11p_sd15_softedge ・control_v11p_sd15_seg ・control_v11p_sd15_openpose ・control_v11p_sd15_lineart ・control_v11p_sd15s2_lineart_anime ・control_v11e_sd15_shuffle ・control_v11e_sd15_ip2p ・control_v11p_sd15_inpaint ・control_v11f1e_sd15_tile |
ファイル名の命名規則は公式画像(英語)を参照してください。「e」が付与されているのものは実験的モデルとなります。
2. ダウンロードした全てのファイルをsd.webui/webui/models/ControlNetに移動します。公式(英語)は古い情報なのか別のパスを指定していますが、この階層で問題なく動作しています。
3. 最後に[Extensions]タブを選択後、「Apply and restart UI」ボタンをクリックしてWeb UIを再起動します。気になる方は黒いコンソールも再起動!
ControlNetの使い方
Web UIを起動して下の方にあるControlNet v1.1.XXXの右側の▲を選択します。次にEnableのチェックボックスをオンにして、任意のControl Typeを選択するとPreprocessorとModelが自動設定されます。
PreprocessorとModelの詳細設定は手動でも行えますが、最初はデフォルト設定のままにしておきましょう。
※ControlNetのモデルはControl Typeにある14種類となります。
ControlNetは基本的に
・オブジェクト(セグメント)の変更 ・落書きから絵を描く ・棒人間形式の画像から人物のポーズ(姿勢)を指定 ・1枚の絵を参照して、その特徴を出力画像に反映 |
が可能となりますので、画像生成の幅が大きく広がります。
下記からの「モデルの早見表」(一覧表)はあくまでも一例となります。その他の使用方法もありますのでご注意ください。※今回は全てtxt2imgを使用。
Depth(深度マップ)
(例)風景の変更
control_v11f1p_sd15_depth
1. ControlNetの「Single Image」に前提条件で生成した画像を設定する。
2. 次の設定を行う
// プロンプト detailed face, spring landscape ,1 girl solo, // ネガティブプロンプト EasyNegativeV2 // Seed 786002949
※「beautiful landscape」を「spring landscape」に変更しています。
3. Control TypeをDepthにして出力する。
Normal(法線マッピング)
(例)オブジェクトの変更
control_v11p_sd15_normalbae
1. 前提条件のプロンプトなどを設定する。
※プロンプト、ネガティブプロンプト、Seed
2. ControlNetの「Single Image」に前提条件で生成した画像を設定する。
3. Control Typeをタイトルのモデル名にして出力する。
Canny(エッジ検出)
(例)髪色の変更
control_v11p_sd15_canny
※Normalと同様。加えてプロンプトに「pink hair」を追加する。
※(例)detailed face, beautiful landscape,1 girl solo,pink hair
MLSD(線分検出)
(例)髪色の変更
control_v11p_sd15_mlsd
※Normalと同様。加えてプロンプトに「pink hair」を追加する。
Scribble(落書き)
(例)落書きから絵を描く
control_v11p_sd15_scribble
1. ControlNetの「Single Image」に落書き画像を設定する。
2. 次の設定を行う
// プロンプト bright,girl // ネガティブプロンプト EasyNegativeV2 // Seed 786002949
3. Control Typeをタイトルのモデル名にして出力する。
Soft Edge(ソフトエッジ)
(例)髪色の変更
control_v11p_sd15_softedge
※Normalと同様。加えてプロンプトに「pink hair」を追加する。
Segmentation(意味的分割)
(例)性別の変更
control_v11p_sd15_seg
※Normalと同様。加えてプロンプトを「detailed face, beautiful landscape,1 boy solo」に変更する。
OpenPose(人物姿勢推定)
(例)人物の姿勢を指定
control_v11p_sd15_openpose
Openpose Editorの導入
1. [Extensions]タブの「Install from URL」に次のURLを入力して[Install]ボタンをクリックする。
2. 最後に[Extensions][Installed]タブを選択後、「Apply and restart UI」ボタンをクリックしてWeb UIを再起動します。
3. [Openpose Editor]タブで表示されている棒人形の座標をマウスで適当に移動してからSave PNGで保存します。
ControlNetの設定
1. 先程の画像を設定します。
2. 次の設定を行う。
// プロンプト girl,Emphasis on person // ネガティブプロンプト EasyNegativeV2 // Seed 861781896
3. Control Typeをタイトルのモデル名へ、Preprocessorをnoneにする。
Linearts(線画)
(例)髪色の変更
control_v11p_sd15_lineart
※Normalと同様。加えてプロンプトに「pink hair」を追加する。
Anime Linearts(アニメ線画)
(例)髪色の変更
control_v11p_sd15s2_lineart_anime
※Normalと同様。加えてプロンプトに「pink hair」を追加する。
※Control TypeをLinearts(lineart)のモデル名にする。Preprocessorにlineart_animeを選択して、その後に出力する。
Shuffle(コンテンツシャッフル) - 実験的機能
(例)髪色の変更
control_v11e_sd15_shuffle
※Normalと同様。加えてプロンプトに「pink hair」を追加する。
Pix2Pix(スタイル変換) - 実験的機能
(例)髪色の変更
control_v11e_sd15_ip2p
※Normalと同様。加えてプロンプトに「pink hair」を追加する。
※Control TypeはIP2P。
Inpaint(インペイント)
(例)髪色の変更
control_v11p_sd15_inpaint
※Normalと同様。加えてプロンプトに「pink hair」を追加する。
※Preprocessorはnoneを選択する。
Tile(タイル) - 実験的機能
(例)髪色の変更
control_v11f1e_sd15_tile
※Normalと同様。加えてプロンプトに「pink hair」を追加する。
Reference(参照)
(例)1枚の絵を参照して、その特徴を出力画像に反映する
左は原神の宵宮と言うキャラで、右側が出力画像です。※教育/研究用
1. 参照用の画像を設定します。
2. 次の設定を行う。
// プロンプト standing full body,girl,masterpiece // ネガティブプロンプト EasyNegativeV2 // Seed 2397248435
3. Control Typeをタイトルのモデル名にして出力する。
おまけ
作業用の一時ファイルがテンポラリフォルダであるC/Users/ユーザー名/AppData/Local/Temp/gradioに溜まっていきますので、気になる方は手動で削除することも可能です。
これらのファイルはWindowsの標準設定(ストレージセンサーがオン)だと自動で削除されます。ストレージセンサーをオンにする場合は左下のWinアイコンを右クリックで[設定][システム][ストレージ]の「ストレージセンサー」で設定を行います。
※ストレージセンサーは1週間経過後のファイルを削除する模様です。
参考サイト(公式)
https://github.com/lllyasviel/ControlNet-v1-1-nightly
https://github.com/Mikubill/sd-webui-controlnet
関連記事
前の記事: | Stable Diffusionのインストール方法(AUTOMATIC1111)【初心者/AIイラスト/画像生成AI/Windows】 |
次の記事: | Stable Diffusion XL(SDXL)をインストールする【Stable Diffusion Web UI】 |