こんばんは、スタジオ真榊です。今日は前回紹介したChatGPT4oやGeminiといったLLM系画像生成の超進化を受けて、副次的にControlnetの「Openpose」が非常に使いやすくなったことについて特集したいと思います。

Openposeは、棒人間のようなカラフルな「ボーン」(下図)をお手本画像から取り出して、人物の輪郭にとらわれず姿勢だけを制御できるControlnetです。プリプロセッサを使ってこのように四肢や顔の位置を抜きだすことで――

LLM生成で生きる「Openpose」 #2025年のControlnet:図版1

このように、おおむね同じ姿勢の画像を生成できます。AnytestやLineartのように線画を継承するCNだと、髪型や体形、服装まで引き継がれてしまいますが、Openposeは姿勢情報だけを継承できるのがポイント。プロンプトによって描かれる内容を大きく変更することができます。

LLM生成で生きる「Openpose」 #2025年のControlnet:図版2

ただ、思ったような姿勢のボーンを作るにはそれなりに手間が掛かりますし、たいていのコントロールは月須和・那々さんのAnytest v3&v4(※輪郭・線画は保持しつつ塗りをプロンプトで変化させられるCN)を応用することでなんとかなってしまうこともあり、個人的にOpenposeを使う場面は激減していました。ところが今回、ChatGPT4oなどLLMでの画像生成がかなり思い通りにできるようになったことにより、テキスト指示では難しいポーズや構図をOpenposeで出せることに気づきましたので、どれくらいのことができるかいろいろと検証してみました。

※Controlnetの基本的な使い方や種類などについてはこちらの記事にまとめてありますので、初めて触る方は併せてご参照ください。

1.Openposeの基本

おさらいになりますが、Openposeはプリプロセッサに読み込ませた画像から、表情やポーズ、手の位置や形といった位置情報だけをボーンとして抽出し、同じポーズをした全く別の画像を生成できるControlnetです。このように、Controlnet画面でボーンを抜き出したい画像を読み込ませた後、プリプロセッサを選び、「💥」ボタンを押すことでボーン抽出することができます。

1.Openposeの基本:図版1

プリプロセッサは「openpose」とついたものを選べばOKです(上段に並んでいるメニューから"Openpose"を選択すると自動抽出されます)。handやfaceとあるのは、手や顔だけのボーンを抜くもので、fullが全身用。この中ではdw_openpose_fullが一番高性能かなと思います。

1.Openposeの基本:図版2

・Openposeはライセンスにご注意

従来のOpenpose技術のソースコードはカーネギーメロン大(CMU)のGitHubリポジトリで公開されており、非商用利用は無料ですが、商用利用には年間$25,000のライセンス契約が必要と明記されています。これをベースにしたツールやモデルを使って画像生成を行った場合、その成果物が商用利用(販売・広告収益・マネタイズ投稿など)に該当すると、法的にグレーまたはNGになる可能性が指摘されてきました。

年間$25,000のライセンス料というのは、例えばスポーツの分析に使うとか、映画制作に使うようなレベルの商用用途を想定していると思いますが、AIイラストユーザーも対象にならないとは誰にも言えません。

その点、プリプロセッサ「DW openpose full」に使われているDWpose技術はApache 2.0ライセンスなので、そうした心配をせず活用することができます。

少し古い記事ですが、DW openposeについてはこちらの特集で紹介しています。

ただ、便利な「DW」であっても、イラストからはなかなか正確にボーンを抜き出せないことが多いです。こちらの例のように、下半身がどこにあるのか見失ったり、パースの利いた手が奇形化してしまったりして、そのまま使えないことが多発します。もちろんうまくいくこともそれなりにありますが、「イラストより写真向け」の技術であることは押さえておきましょう。

・Openposeはライセンスにご注意:図版1

・「Openpose editor」でポーズ編集

抽出したボーンはそのままトレースするだけでなく、拡張機能によってあとから自由に調整することができます。プリプロセッサでボーンを抽出したら、画面右側の「Edit」(※緑色のPマークがついていない方)をクリックすると、このようにSDwebUI openpose editorが起動します。reForge等にはデフォルトでインストールされているはずですが、該当部分にボタンがない場合は個別にインストールしておきましょう。

・「Openpose editor」でポーズ編集:図版1

上の図のように、画像から自動的に四肢や顔の位置が抜き出され、画面右側にボーンとして表示されています。各ドット(点)を左クリックしてドラッグすれば位置を動かせますし、何もないところでドラッグすると複数のドットを範囲選択もできるので、地道な作業にはなりますが、好みのポーズを自分で作ることが可能です。SPACEかFキーを押しながらドラッグするとキャンバス移動、マウスホイールでズームイン/アウトができます。

キャンバス上に2人目以降の人物が検出された場合、左下にPerson1、2、3…と並びます。不要な場合や誤検出の場合は目のボタンを押して人物ごと非表示にしましょう。上の例では、背景のモンスターの部位が一部検出されてしまっています。このままにしておくと生成結果に悪影響があるので、点の上で右クリックして消しましょう。

「人物を追加」をクリックすると、このように雑な感じで棒人間が出てくるので、適宜ドラッグ操作して人物を増やすこともできます。ボーン配置が完成したら、左上の「Controlnetにポーズを送信」で、さきほどの検出結果に上書きされます。

・「Openpose editor」でポーズ編集:図版2

2.2025年現在の人気Openposeモデル

次は、プリプロセッサで読み込んだボーンを読み込ませるOpenposeモデルについて。これまでさまざまなものが出ていますが、現在流行しているIllustriousXL用なら、Noobai向けのopenposeモデル「noob_openpose」が比較的強いかなと思います。こちらでDLでき、model/controlnetフォルダに保存することで使用できるようになります。DL時はファイル名がopenpose_preとなりますので、わかりやすいよう「noob_openpose」などとリネームして保存しておくとよいでしょう。

こちらもIllustrious向けOpenposeモデル。こちらもDL時「IllustriousXL_openpose」とリネームしておかないと、パッと見で分かりにくいです。

もちろん、ponyやAnimagineといった非Illustrious系のSDXLモデルで使えるモデルもいろいろと揃っています。代表的なものはこのあたり。

・thibaud / Openpose

・xinxir / Openpose

それぞれ、files and versionsから該当モデルをmodels/controlnetにDLすればOKです。(数ギガあるのですぐわかるはず)