Inpainting
Inpaintingは、画像の一部をマスクで指定し、その範囲だけをAIに描き直させる処理。
単なる「削除」ではなく、マスクされた部分を周囲の画像情報とプロンプトをもとに再生成して補完する。
たとえば、髪飾りを消したい場合は「髪飾りを消す」と考えるより、髪飾りがあった部分を「自然な髪として描き直す」と考えた方が成功しやすい。
Inpaintingで使われる情報
元画像
絵柄
線の太さ
色味
光の方向
周囲の形状
髪・服・肌などの質感
マスク
どこを描き直すか
どこを維持するか
プロンプト
描き直す内容の指定
ネガティブプロンプト
描いてほしくないものの指定
denoise strength
元画像をどれくらい残すか
どれくらい自由に描き直すか
基本的な考え方
「消す」より「置き換える」意識が重要
マスク部分には、AIが何かを描いて埋める
そのため、削除したいものではなく、そこに本来あるべきものを指定する
周囲の情報に強く影響されるため、プロンプトだけでは決まらない
マスク範囲とdenoiseの調整がかなり重要
髪飾りを消す例
目的:
髪飾りを消して、自然な髪に置き換える。
考え方:
髪飾りだけを消すのではなく、その周辺の髪ごと自然に描き直す
髪飾りの形が残っていると、AIが別のアクセサリーとして再生成することがある
髪飾り本体より少し広めにマスクする
境界は少しぼかした方がなじみやすい
ポジティブプロンプト例:
code:txt
1girl, solo, hair, hair strands, natural hair, continuous hair, simple hairstyle, smooth hair flow
ネガティブプロンプト例:
code:txt
hair ornament, hair accessory, hairclip, hair bow, bow, ribbon, hair ribbon, flower, hair flower, pin, brooch, jewelry, accessory, extra object, floating object, bald spot, missing hair, hole, gap
設定目安:
code:txt
denoise: 0.5〜0.6
mask blur: 16〜24px
マスク範囲: 髪飾り本体より少し広め
denoise strengthの目安
0.25〜0.35
元画像の影響が強い
小さな修正向き
髪飾りの形が残りやすい
0.45〜0.6
インペイントで描き直しやすい範囲
髪飾り除去ではこのあたりが使いやすい
0.65以上
大きく描き直せる
ただし髪型や顔まわりまで変わりやすい
マスクのコツ
消したい部分だけを厳密に囲いすぎない
周囲の髪や背景を少し含める
境界をぼかす
残したい顔・目・輪郭はできるだけマスクに含めない
大きく消す場合は一度で完璧にしようとせず、複数回に分ける
よくある失敗
髪飾りが別の飾りに変わる
原因:
マスク範囲が狭い
元画像に髪飾りの輪郭が残っている
ネガティブプロンプトが弱い
元のプロンプトにhair ornamentやribbonなどが残っている
対策:
マスクを少し広げる
ネガティブにhair ornament, ribbon, bow, flowerなどを入れる
ポジティブではhair strands, natural hair, smooth hair flowなどを指定する
髪が不自然に盛り上がる
対策:
code:txt
smooth hair, natural hair flow, simple hairstyle
頭部に穴が空く・髪が欠ける
対策:
code:txt
complete head, hair covering scalp, intact hair
ネガティブ:
code:txt
bald spot, missing hair, hole, gap
まとめ
Inpaintingは、マスク部分を周囲の画像情報とプロンプトをもとに再生成する処理。
「不要物を消す」作業に見えるが、実際には「不要物があった場所を別の内容で描き直す」処理。
そのため、髪飾りを消す場合は、
code:txt
remove hair ornament
よりも、
code:txt
hair strands, natural hair, continuous hair, smooth hair flow
のように、置き換え先を明確にした方がうまくいきやすい。
重要なのは、
何を消すか
ではなく
そこに何を描かせるか
という考え方。