「ポーズの呪文を入れても思ったようなポーズで生成できない…」
「イメージしているポーズで画像生成したいけど、ポーズの呪文が分からない…」
と困っていませんか?
プロンプトにイメージしているポーズの呪文を入れても
なかなかイメージしているポーズの画像生成をすることができず
試行錯誤している内に多くの時間がかかってしまうことってよくありますよね。
すぐに理想的なポーズを生成したい時におすすめなのが「OpenPose」です。
拡張機能である「OpenPose」を使用することで
アップロードした参照画像のポーズを元にして、似たポーズで画像生成をすることができます。
何度も理想的なポーズが出るまで画像生成する必要がないので、時間短縮につながります。
是非記事を参考にして「OpenPose」を利用してみてください。
この記事では、「OpenPose」を使ってイメージしているポーズの画像生成をさせる方法について解説します。
「OpenPose」を使う場合は、予めControlNetとOpenPoseのモデルを導入する必要があります。
「ControlNet」と「OpenPose」の導入方法が分からない人は
以下の記事で解説していますので合わせて読んでみてください。
OpenPoseの使い方

Stable Diffusion Web UIを起動したら
下にスクロールして、「ControlNet」の右側にある逆三角形の部分をクリックして開いてください。
「Single Image」内をクリックしてから、参照するポーズ画像をアップロードしてください。

「ControlNet」を使用するために、「Enable」にチェックマークを入れてください。
「Preprocessor」の項目で、「openpose」を選択してください。
「Model」項目でも同じように、「openpose」のモデルに合わせてください。
右上にある「Generate」ボタンをクリックして画像生成してください。

以下の画像は生成した結果になります。
真ん中の画像は、左側にある元画像のポーズを抽出して棒人間のような画像になっています。
抽出された画像を「Preprocessor」と呼ばれています。
この例では、棒人間の画像になります。
右側では、真ん中の棒人間(preprocessor)を元にして新しく画像生成しています。
このように、元画像から似たポーズで生成することが出来ています。
「preprocessor」項目にある「openpose」では、手首の関節部分まで抽出して似せて生成しているので、手の指の形までは似ないで画像生成されます。
OpenPose使用後は人物のクオリティが低く生成されていますね。

というのも、プロンプトとネガティブプロンプトに品質の呪文を何も入れていないため
クオリティの低い画像生成がされています。

次は、プロンプトとネガティブプロンプトに品質・表情・服装などの呪文を入れます。
ultra-detailed , masterpiece , best quality , girl , smile , open-mouth , t-shirt
プロンプト内には「masterpiece , best quality」の呪文を入れると、
高品質の画像生成ができるのでおすすめです!
worst quality , low quality , normal quality , Easy Negative
ネガティブプロンプトでは、「worst quality , low quality , normal quality」の呪文を入れると、
低品質の画像を省いて高品質で画像生成できるのでおすすめです!
入力したら再度「Generate」ボタンをクリックして画像生成します。

以下の画像では、品質の呪文無しと有りを比較した結果になります。
プロンプトとネガティブプロンプトに品質の呪文を入れることによって
クオリティを高くして画像生成することができています。

Preprocessor項目内では、「openpose」以外にも
「openpose_face」「openpose_faceonly」「openpose_full」「openpose_hand」もあるので比較してみます。

以下の動画では「元画像」以外に、5つ全てのopenposeで比較した結果になります。
元画像から一番似たポーズをした「Preprocessor」は「openpose_full」になります。
「openpose_full」では、顔の形状と手の指までも似せるようになっているため、一番近い結果となっています。
ポーズの影響度を調整できる「Control Weight」

ポーズを維持する影響度を調整できるのが、「Control Weight」になります。
数値を大きくするほど、参照画像のポーズに沿った画像生成がされやすいです。

以下の画像では、「Control Weight」の数値を「0」「1」「2」にして画像生成した比較画像になります。
「0」の数値では、元画像に沿ったポーズをしていません。
「1」の数値では、元画像のポーズに沿った画像生成がされています。
「2」の数値では、下半身部分は元画像と離れたものの、上半身は似たポーズで画像生成しています。
推奨値としては「0.5」以上の設定値にすると良い結果になりやすいです。

Preprocessor Resolutionについて

画像生成した後に微調整したい時には
Seed値を固定して「Preprocessor Resolution」を使うといいでしょう。

以下の画像では、「Preprocessor Resolution」を「64」「512」「1024」「2048」で画像生成した結果になります。
少し変わった特徴になるので、惜しい画像生成がされた場合は「Preprocessor Resolution」の数値で調整してみてください。

Control Modeについて

「Control Mode」にある「My prompt is more important」では
プロンプト内に記載した情報を重視して画像生成させます。
「ControlNet is more important」では、コントロールネットの情報を重視して画像生成させます。

以下の画像では、「Control Mode」の「Balanced」「My prompt is more important」「ControlNet is more important」で生成した比較結果になります。
画像生成結果が変わっているので、全て試してみて良い方を選択しましょう。

まとめ

以上で、「OpenPose」の使い方について解説しました。
「OpenPose」を使うには「ControlNet」を導入する必要があります。
理想のポーズをしている画像をアップロードすることで
似たポーズで別の画像生成をすることができます。
是非記事を参考にして「OpenPose」を利用してみてください。
「OpenPose」と似たように「OpenPose Editor」もイメージしたポーズを作成することができます。
「OpenPose Editor」では、棒人間を使用してポーズを作成することができる機能となっています。
ポーズの参照画像を用意する必要がなくなるので、こちらもおすすめです。
以下の記事では、「Openpose Editor」の使い方について解説しているので良ければ読んでみてください。