かなりいい感じの画像ができたけれど、手や指が溶けちゃった...(´・ω・)

Stable Diffusionの生成画像

それ、Depth Libraryを使えば簡単に修正できます。



導入

ControlNetの追加

ControlNetを入れていない場合、まずインストールしてください。

ExtensionsのInstall from URLに、https://github.com/Mikubill/sd-webui-controlnet.gitを入れて、インストールボタンを押します。

Stable DiffusionのExtensions

それから、depthモデルを追加します。

https://huggingface.co/webui/ControlNet-modules-safetensors/tree/main にアクセスして、モデルをダウンロードしてきます。

今回は、control_depth-fp16.safetensorsという名前のファイルを落としてきましょう。

落としたモデルファイルは、ご自身のPCの
stable-diffusion-webui/extensions/sd-webui-controlnet/models
というパスのフォルダの中に置いてください。



Depth libraryの追加

ExtensionsのInstall from URLに、https://github.com/Mikubill/sd-webui-controlnet.gitを入れて、インストールボタンを押します。

Stable DiffusionのExtensions



ここまでできたら、再起動(コマンドで立ち上げ直す)をしてください。



Depth Libraryで手を修正する

手の画像生成

うまく導入できていたら、Depth Libraryが上部タブに追加されているはずです。

Add background imageから、修正したい画像を追加しましょう。

Depth Library


そのすぐ下のhandのタブを開いて、修正したい形の手を選択します。
ちなみに、手の種類カタログには2ページ目もあるので、お見逃しなきよう。

Depth Libraryの手のリスト


入れたい形の手を決めたら、Addを押します。

Stable DiffusionのDepth Library


追加後は、こうなります。でか。
サイズを調整していきましょう。

Stable DiffusionのDepth Library


回転させたい時は、レバーみたいに飛び出している部分を引っ張ります。

Stable DiffusionのDepth Library


画像の辺を反対にググッと引っ張ることで、左右反転させることも可能です(動画参照)。



Remove selectedを選択すると、選択中の手の画像を消せます。
Resetを選択すると、修正したい画像ごと全部リセットできます。

Stable DiffusionのDepth Libraryのリセット


このような感じで、画像に手のサイズを合わせましょう。

Stable DiffusionのDepth Libraryのリセット

できたら、画像すぐ下のSave Pngボタンを押して、保存します。



作った手のdepth画像を用いた修正作業

img2imgのInpaintタブを開いて、修正したい画像を追加します。

この時、この修正元画像のプロンプトを入れておくことをおすすめします。
プロンプトを忘れてしまった場合は、こちらを参考にプロンプトを復元してください。

修正したい部分をざっくり塗りつぶします。

Stable Diffusionのinpaint

Masked contentがoriginal、Inpaint areaがWhole pictureになっていることを確認します。

Inpaint areaは、Only maskedを選択しても構わないのですが、Whole pictureを選択すると、全体のバランスをとって修正してくれるようです。

両方試してみて、いい感じになる方を選択してください。


Denoising strength0.75くらいがおすすめです。

Stable Diffusionのinpaint設定




下にスクロールして、ControlNetのタブを開き、先ほど落とした画像をアップします。

Enableにチェックを入れるのをお忘れなく。

Stable DiffusionのControlNet

Preprocessorをnone、Modelにcontrol_v11f1p_sd15_depth_fp16を選択します。

Stable DiffusionのControlNetの設定値

Control Weightを0.85くらい、Starting Control Stepを0.2-0.3くらいにするといいようです。
Stable DiffusionのControlNetの設定値



設定できたらGenerateしましょう。

Stable DiffusionでDepth Libraryを用いた画像
こんな感じになりました。



まとめ

崩れやすい手や指も、Depth Libraryを使えば簡単に修正できるのでおすすめです。