Stable Diffusion では、生成されたイラストがほぼ完璧であるにも関わらず、一部の細かい部分(特に手や指)が崩れてしまうことがあります。このような場合、手や指だけ修正を行いたいと考える方も多いでしょう。そこで、今回はStable Diffusion WebUI の Inpaint 機能を活用し、生成済みのAIイラストの細かい部分を後から修正する方法を解説します。
※アイキャッチ画像は Stable Diffusion で生成しました。
Inpaint機能の使い方
- img2img タブを開き、Inpaint をクリックします。
- 修正したい画像をドラッグアンドドロップでアップロードします。
- アップロードした画像の修正したい部分(例えば、手)をブラシツールで黒く塗りつぶします。
- 画像下部の設定を調整します。元画像と同じ画像サイズや sampling method 、ステップ数を選択します。特に Denoising strength は0.75程度がオススメです。
その他の設定は初期設定のままで良いです。アップスケールした画像を素材とする場合、width とheight を画像と同じサイズに設定しましょう。 - プロンプトを設定します。元画像の生成に使ったプロンプトを元に、直したい部分に合わせてプロンプトを変えましょう。手を修正したい場合「bad fingers,bad hands,missing fingers」をネガティブプロンプトに追加したり、試行錯誤で変更します。
- Generate ボタンをクリックして修正を実行します。
これで修正したい箇所だけが再生成され、イラスト全体が改善されます。
ただし、これも一回で確実に修正されると言う事はありません。塗りつぶした所だけを生成するのですから、何回もやり直しても満足のいく結果が得られないこともあります。その都度プロンプトや Denoising strength や Sampling steps などを調整し、繰り返し試す必要があります。
検証
検証用の画像
以下の手がおかしい画像を使用します。
inpaint
PNGinfo で img2img に情報を送ります。
inpaintで手をマスクして、Denoising strength 8 で Sampling steps 30 、ネガティブプロンプトに「bad fingers,bad hands,missing fingers」を追加します。
実際に生成した画像
手が綺麗に再生成されました。
まとめ
Inpaint機能は、より理想的なイラストを生成するための有用なツールです。もし、あなたがAIイラストの生成において細部に問題を抱えているなら、ぜひこの機能を試してみてください。