最終更新日:2023年3月13日
元画像
元画像はぱくたそから使わせて頂きました。
こちらの画像です。
Counterfeit-V2.5
結果
canny2image 1024x1024
手をきれいに出力するために1024x1024で作成しています。以下を記入した「prompt.txt」というテキストファイルを用意してスクリプトから読み込んでいます。a beautiful girl wearing high neck sweater
python canny2image.py ^ --model model\Counterfeit-V2.5 ^ --vae vae\counterfeit_vae ^ --prompt prompt.txt ^ --image canny_results\50_50.png ^ --from_canny ^ --n_samples 10
詳細は後述します。
scribble2image 768x768
Healy's Anime Blend
結果
canny2image 1024x1024
手をきれいに出力するために1024x1024で作成しています。以下を記入した「prompt.txt」というテキストファイルを用意してスクリプトから読み込んでいます。a beautiful girl wearing high neck sweater
python canny2image.py ^ --model model\anime-blend ^ --vae vae\anime2_vae ^ --prompt prompt.txt ^ --image canny_results\50_50.png ^ --from_canny ^ --n_samples 10
詳細は後述します。
scribble2image 768x768
VAEはこちらからダウンロードした「kl-f8-anime2.ckpt」を使用しました。
Anything-V4
結果
canny2image 1024x1024
手をきれいに出力するために1024x1024で作成しています。以下を記入した「prompt.txt」というテキストファイルを用意してスクリプトから読み込んでいます。a beautiful girl wearing high neck sweater
python canny2image.py ^ --model model\anything-v4.0 ^ --vae vae\any4_vae ^ --prompt prompt.txt ^ --image canny_results\50_50.png ^ --from_canny ^ --n_samples 10
詳細は後述します。
scribble2image 768x768
VAEはこちらからダウンロードした「anything-v4.0.vae.pt」を使用しました。
方法の詳細
Diffusersの「StableDiffusionControlNetPipeline」を使わせて頂きました。github.com
Pythonスクリプト
canny2image
canny2imageのために自分が書いたPythonスクリプトはこちらです。→「cv2_canny.py」と「canny2image」
あらかじめAnything-v4.0などのモデルをローカルにダウンロードしています。
vaeも変換済みです。
こちらから「sd-controlnet-canny」をダウンロードして「controlnet」フォルダに保存済みです。
以下の方法で複数枚のcanny画像と結果が作成されます。
python canny2image.py ^ --model model\anything-v4.0 ^ --vae vae\any4_vae ^ --prompt prompt.txt ^ --image sample.jpg
良さそうな結果を選択して、次にそれの元画像(canny画像)を指定して再度「canny2image.py」を実行します。
その際に「--from_canny」を付けます。
python canny2image.py ^ --model model\Counterfeit-V2.5 ^ --vae vae\counterfeit_vae ^ --prompt prompt.txt ^ --image canny_results\50_50.png ^ --from_canny ^ --n_samples 10
これでいっきに10枚の画像が作成されます。
VAEは前回紹介した方法で作成(変換)しました。
touch-sp.hatenablog.com
scribble2image
scribble2imageのために自分が書いたPythonスクリプトはこちらです。→「scribble2image」
その他
様々なサイトを見るとOpenPoseを使ったpose2imageの方が今回使ったcanny2imageやscribble2imageよりよく使われている印象です。しかし、pose2imageでは手の再現はできません。一長一短といったところでしょうか。関連記事
touch-sp.hatenablog.comtouch-sp.hatenablog.com
追記
Multi-ControlNetを使った記事を新たに書きました。touch-sp.hatenablog.com