見出し画像

ポーズを固定できる拡張機能:ControlNet(コントロールネット)をStableDiffusion 初心者が試した


ControlNet(コントロールネット)とは何か

StableDiffusionの拡張機能。
参考写真と同じポーズを取らせることが可能になります。
デッサン用の人形とか写真撮って、同じポーズにすることが可能!

ControlNet(コントロールネット)を導入

Stable Diffusion web UIの「Extensions」(拡張機能)をクリック。
installed(インストール済み)の箇所にControlNetがはいっていなければ導入します。
「Install from URL」(URLからインストール)タブを開いて、下図の赤枠の部分にURLを入れてインストールします。`

https://github.com/Mikubill/sd-webui-controlnet.git

最後に install のボタンを押すと、インストールボタンの下にパスが出てくるので「sd-webui-controlnet」があることを確認できたらインストール完了です。が、まだコントロールネットで使うモデルをいれなければならないので専用のモデルをDLします。

DLするのは下記の8ファイルがcontrolNet専用のモデルです。

「control」で始まってるファイルを選んでDLして、フォルダに格納します。格納場所は
「stable-diffusion-webui」→「extensions」→「sd-webui-controlnet」→「models」
ここまでやったらStableDiffusionWebUIを再起動します。

実際にControlNetを使う

ControlNetを使う時は、必ず Enable(有効化) にチェックを入れて使います。(忘れそう…)

Canny (キャニー法)を覚える


まずはCanny(キャニー法)を試します。
Preprocessor(プリプロセッサ)の項目で「Canny」を選択して生成!
プロンプトも入れます。
今回入れたプロンプトはこちら

Pronpt

masterpiece, best quality, highly detailed beautiful face and eyes, 1 girl, black hair,white shirt, skirt, from behind, sandy beach, sea

Negative Pronpt

nsfw, flat color, flat shading, retro style, poor quality, bad face, bad fingers, bad anatomy, missing fingers, low res, cropped, signature, watermark, username, artist name, text
プリプロセッサとモデル部分の設定

今回使った素材はフリー素材でこちらを使いました。

元になった写真

1度目に生成された画像がこちら。

txt2img 1枚目

何か頭についてますが、同じポーズのものが生成できました。シャツの色を変えてもう1度生成してみます。いつもなら2度目の生成でポーズが変わってしまっていました。

txt2img 2枚目

シャツを黒にしましたが2枚目も同じポーズです!
今度はシャツをピンクにして生成します。

txt2img 3枚目

同じポーズでシャツがピンクになりました!
夕日が見えてたり見えてなかったり、ポーズ以外は変わってますがポーズはちゃんと保たれたままです。
これで、何回生成しても同じポーズを取らせることが可能になりました!

コントロールネット、キャニー法成功

キャニー法とは、元の写真から輪郭抽出をして次の画像生成に適用する手法とのことです。

Canny 画像の輪郭を取っている

モデルを変えてもちゃんと反映されていました。

model : anylora 使用

Openposeを覚える

同じポーズで画像生成がでいて、ポーズを固定したまま細かい部分を変更していくことができる機能です。
表情や髪型も変えられるとのこと。
Preprocessor を openpose 、model を control_openpose にします。

Openpose

元画像は txt2img で生成したこちらの画像です。

Openpose 元画像

この画像をControlNetにいれ、プロンプトだけ金髪に変えます。

openpose 1枚目

ちゃんとポーズは保ったままブロンドになりました。次はボブヘアにして茶髪にします。

openpose 2枚目 

ポーズは保たれたまま茶髪になりました!

openpose 3枚目 

このようにポーズを固定して細かい部分をプロンプトだけで変更することができます。

まとめ

気に入ったポーズや生成した画像が惜しい!!とか少しだけ変化を加えたいという時はとても役に立ちそうです。
プロンプトで変更を加えやすいので使い勝手もよさそう。
個人的には openpose の方が使いそうだなと思いました。

この記事が気に入ったらサポートをしてみませんか?