Stable Diffusionで画像生成をしていると、こんな悩みにぶつかりませんか?
- 頭の中ではイメージできているのに、プロンプトでポーズを表現できない
- 両手を上げて腕を組ませたいのに、全然違うポーズが出てくる
- 寝そべりポーズを作りたいのに、体が崩壊してしまう
- 顔は綺麗なのに、体だけ破綻する
実はこれ、初心者だけでなく中級者でもよくある悩みです。

僕も最初、腕上げポーズや寝そべり構図が全然作れなくて苦労しました…!
でも安心してください。
その悩み、OpenPoseを使えば一気に解決できます。
この記事では、ローカル環境での Stable Diffusion WebUI をもとに解説を行います。
- 思い通りのポーズを安定して再現できるようになる
→ 腕上げ・寝そべりなど、プロンプトだけでは難しい構図も作りやすくなる。
- ポーズ崩れや体の不自然さを大きく減らせる
→ 手足が変な方向に曲がる、体がねじれる…といった悩みを解消。 - あなたのイメージをもとに、狙った構図の画像を作れるようになる
→ “こうしたい”を最短ルートで形にできる。
OpenPoseとは?
OpenPoseは、画像の「骨格(スケルトン)」を抽出して、そのままStable Diffusionに渡せる機能です。

▼ OpenPoseでできること
- 元画像のポーズをそのまま再現できる
- 手足の位置が安定し、アナトミー崩壊(=体の形が不自然に崩れてしまうこと)が激減
- プロンプトで表現しにくい複雑なポーズも簡単
- 寝そべり・座り・動きのある構図に強い

プロンプトで頑張らなくても、画像を使えばポーズが作れるんですね!
そう、OpenPoseは “ポーズの悩みを一発で解決する最強ツール” なんです。
なぜプロンプトだけではポーズが崩れるのか?

つまずく理由はシンプルです。
3つ紹介します。
AIはポーズ理解が苦手
Stable Diffusionは「顔」や「質感」は得意ですが、
人体の角度・関節の位置・重心などは苦手です。
特に難しいポーズは破綻しやすい
- 寝そべり
- ひねりのあるポーズ
- 片足立ち
- 手を顔の近くに持ってくる構図
こういったポーズは、プロンプトだけでの再現は難しいです。
言語化の限界
「両手を上げて腕を組む」
「横向きで寝そべる」
などを正確に言語化するのは難しい。
こんなときに、OpenPoseが活躍します。
OpenPoseの導入手順(Stable Diffusion WebUI Forge Classic)
そんな課題を解決してくれるのが、OpenPose!
Stable Diffusion WebUI では、
ControlNet(コントロールネット)という機能の中に OpenPose を追加して使います。
ここでは、初心者でも迷わないように、
ローカル環境の Stable Diffusion WebUI Forge – Classic をもとに、
1ステップずつ丁寧に解説を行います。
【ステップ①】Stable Diffusion WebUI Forge – Classic を開く

まずはいつも通り、Stable Diffusion WebUI Forge – Classic を起動します。
- 起動バッチ(webui-user.bat など)をダブルクリック
- Stable Diffusion WebUI Forge – Classic の Launch をクリック
- ブラウザが自動で開く
- WebUI の画面が表示される
【ステップ②】ControlNetが使える状態か確認する

画面上部のタブメニューから 「txt2img」 をクリックします。
少し下にスクロールすると、
「ControlNet Integrated」 というエリアがあります。
ここが表示されていれば、ControlNet の“枠”はすでに入っています。
▼ Model を開いてみる

ControlNet Integrated の中にある 「Model」 のプルダウン(「None」と書かれている枠)をクリックします。
- None しか表示されない
- 他の選択肢がない
これは正常です。

「あれ?None しかない…」 と焦っちゃいけないね
これは、
ControlNet の本体は入っているけど、OpenPose の“中身(モデルファイル)”がまだ入っていない状態
という意味です。
【ステップ③】OpenPoseモデルをダウンロードする
OpenPoseを使うには、専用のファイル(モデル)を追加する必要があります。
以下の「Hugging Face」というサイトに、OpenPoseのモデルが公開されています。
▼ ダウンロードするファイルはこの2つ
- control_v11p_sd15_openpose.pth(本体)
- control_v11p_sd15_openpose.yaml(設定ファイル)
▼ OpenPoseモデルのダウンロードページ

【ステップ④】OpenPoseモデルを正しい場所に入れる

ダウンロードしたファイルを、Stable Diffusion のフォルダに入れます。
▼ フォルダの場所
StabilityMatrix-win-x64/Data/Packages/
Stable Diffusion WebUI Forge – Classic/models/controlnet

“ControlNetPreprocessor” という似たフォルダが隣にあるので、間違えて入れないよう注意してね
【ステップ⑤】Stable Diffusion WebUIを再起動する
モデルを入れたら、一度 Stable Diffusion WebUI を閉じて再起動します。
ブラウザだけでなく、Stable Diffusion WebUI 本体(黒い画面)も一度閉じてください。
→ 「ストップ」 を押してから「×」で閉じられます。

再び
Stable Diffusion WebUIを起動して、
txt2img → ControlNet Integrated → Model
を開くと…
control_v11p_sd15_openpose
が表示されていれば導入成功です。


やっと出てきた!これで使えるんですね!
これができたら、次のステップ「OpenPoseの使い方」に進みましょう!
OpenPoseの使い方(最初に使うときの基本的な方法)
【ステップ①】ポーズの元画像を用意する

まずは「真似したいポーズ」の画像を用意します。
- 写真(フリー素材サイトの写真など)
- イラスト(自分で描いたラフでもOK)
- 自分で撮ったポーズ写真(スマホで撮影でもOK)
【ポイント】
顔は誰でも大丈夫です。
OpenPoseは「体のポーズ」だけを読み取るので、
生成されるキャラの顔は別物になります。
【ステップ②】ControlNetの場所を確認する

- Stable Diffusion WebUI Forge – Classic を開きます。
- 画面上部の「txt2img」というタブをクリックします。
- 少し下にスクロールすると、
「ControlNet Integrated」 というエリアがあります。 - クリックするといろいろな設定ができるようになります。

OpenPoseは、この「ControlNet Integrated」の中から使います。
【ステップ③】ポーズの元画像をControlNetに読み込む


- ControlNetのエリアの中にある
「ここに画像をドロップ または クリックしてアップロード」
エリアを探します。 - そこに、さきほど用意した「真似したいポーズの画像」をドラッグアンドドロップで入れます。
【ステップ④】ControlNetの各種設定をする
必要なチェックボックスにチェックをつける

アップロードした画像の下のエリアに以下のチェックボックスがあり、
チェックを入れていきます。
- 「Enable(有効化)」にチェックを入れる
→ これで、「ControlNetを使うよ」というスイッチが入ります。 - 「Pixel Perfect」にチェックを入れる
→ これで、正確さを維持するためのスイッチが入ります。 - 「Show Preview」にチェックを入れる
→ これで、読み込んだ骨格を表示できるスイッチが入ります。 - 「OpenPose」にチェックを入れる
→ これで、「OpenPoseを使うよ」というスイッチが入ります。

チェックが入っていないと、いくら設定しても反映されないから注意してね
【ステップ⑤】OpenPoseのモデルを設定する

「どんな情報を使って画像を扱うか」を選んでいきます。
1. Preprocessor(プリプロセッサ)
- ここは「元画像から何を読み取るか」を決める場所です。
- プルダウンを開いて、
「dw_openpose_full」 を選びます。
→ これで「元画像からポーズ(骨格)を読み取る」設定になります。
2.Model(モデル)
- ここは「どのControlNetモデルを使うか」を選ぶ場所です。
- プルダウンを開いて、
「control_v11p_sd15_openpose」を選びます。
→ これで「OpenPose用のモデルを使う」設定になります。
ポーズの読み取り


Preprocessor(プリプロセッサ)と Model(モデル)の間のマークを押すと、
アップロードした画像の横に、棒人間のような線の絵(骨格)が表示されます。
→これがOpenPoseが読み取ったポーズです。
このポーズをもとに画像生成されていきます。
【ステップ⑥】プロンプト(文章)もちゃんと入れる

ここが大事なポイント。
OpenPoseは「ポーズ」だけを決める機能です。
服装・髪型・雰囲気・背景などは、
いつも通り「プロンプト(文章)」で指定する必要があります。
ポーズはOpenPoseに任せて、プロンプトでは見た目を指定する
▼ 例:
- ポジティブプロンプト(例):
beautiful girl, white dress, detailed eyes - ネガティブプロンプト(例):
low quality, blurry, extra fingers, deformed hands

ポーズは画像から、見た目はプロンプトから。
役割を分けて考えるとわかりやすいよ
【ステップ⑦】「生成」ボタンを押す

ここまで設定できたら、
あとはいつも通り 「Generate(生成)」ボタン を押すだけです。
- OpenPoseが「元画像のポーズ」を読み取り
- Stable Diffusionが「プロンプトの内容」で見た目を決めて
- “元画像と同じポーズのキャラ” が生成されます。

1回でうまくいかない場合もあります
その場合は:
- プロンプトを少しシンプルにする
- サンプル数(steps)を少し増やす
などを試してみてください。
OpenPose で実際にどんな悩みが解決できるのか?

● 説明が難しいポーズが作れない問題
プロンプトでは難しい細かい腕の角度も、
OpenPoseなら元画像を使うだけで再現できます。
● 寝そべりポーズの崩壊
寝そべりはAIが苦手な構図のひとつ。
でもOpenPoseなら、骨格を正確に抽出できるため破綻しにくい。
● 顔は良いのに体が崩壊する問題
Stable Diffusionは顔が得意なので、
「顔だけ良いのに体が破綻する」
という現象がよく起きます。
OpenPoseで体の骨格を固定すれば、
体の崩壊を大幅に防げるようになります。
よくある失敗と改善策(初心者がつまずくポイント)
参考までに、うまくいかない例と対策をいくつか紹介します。
| つまづきポイント | 原因 | 対策 |
|---|---|---|
| 骨格がうまく抽出されない | 元画像が暗い・複雑 | 画像のコントラストを上げる |
| 手が崩れる | OpenPoseだけでは限界 | 手専用のControlNet併用を検討 |
| 元画像と違うポーズになる | Weight が弱い | Weight を 1.0 に近づける |
| 体がねじれる | 元画像が複雑 | まずはシンプルな画像で |
まとめ:ポーズで悩む時間を、OpenPoseが一気に短縮してくれる
画像生成AIでポーズを思い通りに作るのはとても難しい。
特に全身・寝そべり・複雑な構図は、プロンプトだけでは破綻しやすい。
OpenPoseを使えば、
元画像のポーズをそのまま再現できて、体の不自然さも大きく減らせる。
OpenPoseを導入して、
ポーズで悩む時間を減らして、
あなたの思い描く世界をもっと自由に作っていきましょう。


コメント