ControlNetのOpenPoseとは
ControlNet
ControlNetは、通常の画像生成に、追加の「条件」を指定して、通常のtext-to-imageよりも厳格な制御をすることができます。
OpenPose
ControlNetの中にあるOpenPoseは、ディープラーニングを使用して人物のポーズを抽出する手法です。OpenPoseを Stable Diffusionと組み合わせることで、AI を使用して人物のポーズから画像を生成することができます。
具体的には、OpenPoseを使用して人物のポーズを抽出し、Stable Diffusionを使用してそのポーズから画像を生成します。Stable Diffusionは、画像を生成する際に、ノイズを徐々に取り除き、画像を安定化させます。これにより、OpenPoseで抽出したポーズから、鮮明で高品質な画像を生成することができます。
元イラストと同じポーズにするopenposeの使い方
Openposeは、元画像を骨格画像に変換するので、元画像と似るのは骨格とポーズだけになります。
※同じような機能で「ControlNetの中にあるCanny」というものもがありますが、こちらは線画に変換するので、生成画像は、元画像の色違いのような、元画像により似たものが生成されます。
こちらを作成します
Before(同じポーズにしたい画像)
After(仕上がり)
※生成する画像と同じ縦横比にしましょう!
作成手順
StableDiffusionを立ち上げる>適当なモデルを選んで簡単なプロンプトを打つ
(例)
プロンプト:best quality,1 girl,japanese clothes
ネガティブプロンプト:lowquality,
コントロールネットを開く>
ControlNetの設定がまだで項目が表示されていない方は、こちらの記事で初期設定をしてください▼
※Google Colab版をお使いの方は、デフォルトでControlNetが組み込まれているはずなので、インストール作業は不要です。
ControlNetを開くと、この様になっています>
参考ポーズの画像を入れる
imageのところに画像をドラックで入れる>
※生成する画像と同じ縦横比の画像を使用してください。縦横比が違うと上手くできないこともあります。
Enableにチェック
Enableにチェックを入れる>
ControlNetのオンオフスイッチです。
Openpose(オープンポーズ)を選択
画像のポーズを再現するなら「プリプロセッサもモデルもオープンポーズに」する。
Preprocessor(プリプロセッサ)
Preprocessor(プリプロセッサ)の項目「openpose」を選ぶ>
Model(モデル)
Model(モデル)「control_v11p_sd15_openpose_fp16」(バージョンが違うと少し名前が違うかもしれません「openpose」がはいっているものを)選ぶ>
パラメータ設定
Low VRAM
グラボのVRAMが少ない方はチェック入れる。
※お好みでチェックを入れる。速度は遅くなります。
Weight(ウェイト)
コントロールネットの効果の強さ(優先度)設定。 デフォルトは1。
※最初はいじらなくてもOKです。
完成
右上の「generate」ボタンを押す>
元画像
同じポーズにしたい画像
仕上がり
かわいい!狙い通りです。
ポーズの保存
Openposeを使うと生成結果に棒人間のポーズ画像も一緒に出力されます。
気に入ったポーズの場合、このポーズ画像も保存しておきましょう。
自分で描画して指示をするより、AIが書いた画像指示のほうが、反映が簡単になります。
下記のように表示されますので保存してね。
棒人間を使用しての生成は、画像からの生成と指示が違うのでこちらも確認しましょう。
他のポーズも
ポーズ以外の目線や表情や服の丈感も似てきます。
同じポーズにしたい画像
仕上がり
他のモデルでも作成してみました。
同じポーズにしたい画像
仕上がり
メモ:何かわからないときはこちらをたぶんコントロールネット制作者さんのgitページ
ポーズ指定に使えるサイト
ポーズを悩んだらこちらのサイトを参考にしてみて
次のページで失敗例を紹介します。
コメント