Stable Diffusion webUIで画像生成していると、すごく気に入った絵ができたけど、顔の表情だけイマイチで残念な思いをすることがよくありますよね。
AI生成画像は一度消してしまうと同じものは二度と手に入りません。
なので、気に入らない部分があれば、その部分だけ描き直したいものです。
そんな希望に応えてくれるのがadetailer です。
使い方は超簡単なので解説します。
adetailer とは
adetailer とは「After Detailer」の略称です。
顔を自動認識して崩れを補正してくれる拡張機能で、ファイルはHugging Faceからダウンロードできます。
adetailer の仕組みは一度描いた絵の一部だけを切り出して、別のプロンプトを使って描き変えるというもの。
画面の一部修正は、Inpaintでもできますが、Inpaintは自動で顔検知できません。
なので、adetailer を使えば気に入った絵になるまで何度でも描き直すことができます。
同じような拡張機能に「ddetailer」がありますが、作者はBingsuさんという同一人物です。
ddetailerとの違いは、ファイルが100MB程度に非常に軽量化されたことです。
さらに
- txt2imgとimg2imgの両方で使用することができる
- アップスケーラーとも併用できる
- Hires.fixが使える
GitHub – Bing-su/adetailer: Auto detecting, masking and inpainting with detection model.
ADetailerのインストール方法
ADetailerはStable Diffusion webUIの拡張機能です。
自分のPCにStable Diffusion webUIを設定する方法は下記の記事を参照ください。
設定できたらStable Diffusion webUIを再起動します。
画面上に並んだメニューの右端にある「Extensions」から「Install from URL」を表示させます。
「URL for extension’s git repository」にADetailerのURLを入力してInstallをクリックするとインストールが完了です。
ADetailerのURLは https://github.com/Bing-su/adetailer/tree/main/adetailer
adetailer の使い方
使い方は簡単です。
Stable Diffusion webUIを起動し画像生成します。
修正したい画像を指定して、Stable Diffusion webUIメニューにあるAfter Detailerの項目を開きます。
- 「Enable ADetailer」をチェックを入れます。
- 「ADetailer model」からモデルを選択します。
face_yolov8n.pt | イラスト系の顔 |
face_yolov8s.pt | イラスト系の顔 |
hand_yolov8n.pt | 手 |
person_yolov8n-seg.pt | 体全体 |
person_yolov8s-seg.pt | 体全体 |
mediapipe_face_full | 実写系の顔 |
mediapipe_face_short | 実写系の顔 |
mediapipe_face_mesh | 実写系の顔 |
モデルは修正したい部位により区分されています。顔の部分を修正したい場合は「face・・」を選択します。
基本はface_yolov8n.ptでOKです。
顔の修正と手の修正を同時に行いたい場合は、1stタブに「face」を2ndタブに「hand」などを選択することでできます。
後は、Generateボタンを押せば自動で補正してくれます。
デメリットは補正時間がかかること。指定した部分にそれぞれ画像生成を施す行うことから通常の画像生成よりも1.5から2倍程度の時間を見込んでください。
補正処理のパラメーター
- ADetailer confidence threshold %
- ADetailer erosion (-) / dilation (+)
- ADetailer x(→) offset
- ADetailer y(↑) offset
- ADetailer mask blur
- ADetailer denoising strength
- ADetailer CFG scale
ADetailer denoising strengthが大きいほど補正による絵柄の変化も大きくなります。
指定した画面を別の設定に書き換える
画面を補正するだけでなく、別の設定に書き換えたい場合は、ADetailerのプロンプト欄にプロンプトを入力することで可能です。
笑った顔にしたい場合は「smile」などを書き加えると、指定エリアにだけプロンプトを反映されます。
ADetailerのプロンプト欄に入力することで、指定エリアにだけプロンプトを反映することも可能です。
なお、有効エリアを確認するには、Save mask previewsにチェックを入れることで選択した部分が枠として表示されます。
修正前の画像を保存したい場合はSave images before ADetailerにチェックを入れます。
設定を変更したらApply settingsをクリックすれば適用が保存されます。
チュートリアル動画
まとめ
Stable Diffusion webUIで画像生成絵の一部分、例えば顔の表情だけイマイチの場合は ADetailer で描き直すことができます。
簡単に使える上、
- txt2imgとimg2imgの両方で使用することができる
- アップスケーラーとも併用できる
- Hires.fixが使える
など機能も充実しているのでぜひお試しください。
画像生成の効率を上げたいならGPUを見直すのが早道です
Stable Diffusionの画像生成スピードや画像サイズは、グラフィックボード(GPU)の性能により左右されます。
さらに大量の計算を行うには12GB以上のVRAMを持つグラフィックボードを選ぶことを強くおすすめします。
コスパのいいモデルを選ぶならRTX 3060 12GBがおすすめです。
こんにちは、フルタニです。放送局で番組作りをしてました。 adetailer を書きます。