ControlNet posetest を利用して、ドラフト画像やシルエット画像からキャラクターポーズ画像を生成する手順を紹介します。
ControlNet posetestを利用すると、ドラフト画像やシルエット画像からキャラクターのポーズ画像を生成できます。
この記事では、ControlNet posetest を利用して画像を生成する手順を紹介します。
入力画像を準備します。今回以下の画像を準備します。
両腕を上げて伸びをしているポーズを想定しています。Stable Diffusionでは全身画像でない場合に、
頭から遠くに手がある場合、ほとんどのケースで手の先端まで描画されない傾向にあり、通常のtxt2imgでは出しにくい構図です。
Stable Diffusio WebUIを起動します。
txt2imgの画面で下にスクロールし、ControlNetのパネルを開きます。
ControlNetの入力画像を設定します。[Enable]チェックボックスをクリックしてチェックをつけ、ControlNetを有効にします。
[Pixel Perfect]のチェックボックスもチェックします。
[Preprocessor]の設定は[none]とし、[Model]に "CN-posertest_v2 [554a4ca9]" を選択します。
[Control Weight]はデフォルトの"1.0"とし、[Starting Control Step]は"0"、Ending Control Stepは"1"とします。
ページ上部に戻り、プロンプトと生成画像のサイズを設定します。以下のプロンプトを設定します。
[Generate]ボタンをクリックして、画像を生成します。画像は大きく崩れてしまい、意図した画像は生成できませんでした。
続いて2つ目の画像を入力画像に設定します。
[Generate]ボタンをクリックして、画像を生成します。こちらも生成画像は大きく崩れてしまい、意図した画像は生成できませんでした。
3つ目の画像を入力画像に設定します。こちらはシルエットを黒塗りにした画像です。
画像を生成します。今回は入力画像と同じポーズが生成できました。シルエットを黒塗りにしたほうが、成功率が高そうです。
複数回生成した結果が下図です。うまくいかないケースもありますが、おおむね入力画像の意図通りのポーズが生成できています。
なお、ControlNetを無効にした場合の生成結果は下図になります。手の先端が画面外になってしまい、描かれない構図で画像が生成されています。
別の例の紹介です。
下図の入力画像を用意します。片膝を立てて座っているポーズの想定です。
同じパラメーターで画像生成します。成功率はやや低めですが、意図したポーズが生成できています。
意図したとおりになる率は、25%程度の印象ですが、狙い通りの画像が生成できました。
ControlNet posetest を利用して、ドラフト画像やシルエット画像からキャラクターポーズ画像を生成できました。