【#9】ControlNet『OpenPose』(データ配布有り)【ComfyUI講座】【2025年版】
今回はControlNet『OpenPose』について解説します。
🎯 ControlNet × OpenPose の仕組みを完全解説!

「ComfyUI_IPAdapter_plus」というカスタムノードが必要です。予めインストールしておいてください。
ComfyUIでポーズ制御する仕組みとノードの役割とは?
✅ はじめに:ControlNetとは?
ControlNetは、Stable Diffusion系モデルに「ポーズ」「線画」「深度」などの追加情報を与えて、画像生成を制御するための拡張機能です。
中でも「OpenPose」は人物の骨格を読み取ってキャラクターのポーズを指定できることで、最も有名なControlNetの一つです。
この記事では、ComfyUI上で実際に組まれたノード構成をもとに、「OpenPoseによるポーズ制御の仕組み」を図解しながら解説します。
🧩 全体の流れ:画像からポーズを抽出 → 制御に活用
🛠 使用ノードの役割
① 画像読み込み(LoadImage)
ファイル名:out_ballerina.png
画像サイズ:832×1216px
ComfyUIに画像を読み込む入口となるノード。
② 拡大処理(ImageScale)
解像度:1024×1536
拡大方法:nearest-exact
なぜ拡大する?
→ OpenPoseによる検出精度を高めるため。特に手足や顔など細かい部位の認識率が向上します。
③ OpenPoseによる骨格抽出(OpenPose Preprocessor)
使用ノード:OpenPose Pose(comfyui_controlnet_aux)
設定:
detect_hand = enable
detect_body = enable
detect_face = enable
resolution = 512
ここで重要なのが「resolution」。
これはポーズ検出の内部解像度を示しており、高すぎるとGPU負荷が増えますが、512はバランスの良い設定です。(高品質なら1024、スピード重視なら256)
このノードによって、バレリーナのポーズがスティックフィギュア(棒人間)のように検出され、次のControlNetに渡されます。
④ ControlNetモデル読み込み(ControlNetLoader)
モデルファイル:OpenPoseXL2.safetensors(models>controlNetにopenposeなどわかりやすいフォルダを作成して保存します)
これは SDXLベースで学習されたControlNet用OpenPoseモデルで、ポーズに従ったイラスト生成を可能にします。
SDXLベースとは?
Illustrious、Pony、Animagine、NoobAIなどは元を辿るとSDXLベースなので利用することができます。
SDベースのOpenPoseモデルを使わないようにしてください。互換性がありません。
⑤ ControlNet適用(ControlNetApply)
強度:1.0
開始~終了パーセント:0.0~1.0(生成プロセス全体に適用)
ここで、ポーズ情報(スティック画像)と生成プロンプトの両方が融合され、最終的な構図が制御されます。
⑥ プレビューと保存
PreviewImageで確認
SaveImageでファイルに出力
生成されたOpenPose画像をそのまま保存することで、デバッグや学習データとして活用することも可能です。
🧠 なぜOpenPoseを使うのか?
ControlNetの主な利点
ポーズの統一
顔やキャラクターのLoRA制作時に、複数の画像でも一貫した構図を維持できる
キャラクターの姿勢や表情のバリエーションを作成する際に便利
指示の明確化
テキストプロンプトだけでは伝えにくい細かい動作・アクションを視覚的に指定可能
例えば「手を上げる」「横を向く」などのポーズを正確に再現できる
微調整の効率化
ControlNetの強度(Weight)を調整することで、AIの自由度と制御のバランスを最適化できる
厳密に再現したい場合も、少しだけ反映させたい場合も柔軟に対応可能
🛠 有料パートの内容
✅ OpenPose ControlNet対応ワークフロー(.json)
ここから先は
¥ 500
この記事が気に入ったらチップで応援してみませんか?
