AI活用

ComfyUIでControlNetを使う方法|OpenPose・Canny・Depthの基本

ComfyUIで参照画像をOpenPose・Canny・Depthの条件へ変換し、ControlNetのstrengthと適用範囲を調整する基本手順を解説します。

この記事の目次
  1. 結論:前処理画像をpreviewし、1種類ずつ弱めから適用する
  2. ControlNetで固定できる要素
  3. 必要なmodelとnodeを準備する
  4. base modelとの互換性を確認する
  5. preprocessorとControlNet modelを分ける
  6. 参照画像をworkflowへ接続する
  7. positive conditioningへ適用する
  8. strengthと適用範囲を調整する
  9. start・end percentの意味
  10. OpenPose・Canny・Depthを同条件で比較する
  11. ポーズや輪郭が崩れるときの確認順
  12. 参照画像を使う際の注意
  13. よくある質問
  14. OpenPose・Canny・Depthを同時に使えますか?
  15. 参照画像と完全に同じ構図になりますか?
  16. 人物写真を使ってもよいですか?
  17. まとめ

ControlNetは、テキストpromptに加えて、参照画像から得たポーズ、輪郭、奥行きなどの条件を画像生成へ加える仕組みです。ComfyUIでは、参照画像、前処理結果、対応ControlNet modelをconditioningへ接続し、strengthと適用開始・終了範囲を調整します。

この記事では、OpenPose・Canny・Depthの使い分け、必要modelとnode、workflow接続、同条件比較、崩れた場合の見直し方を解説します。

情報確認日:2026年7月18日(日本時間)

結論:前処理画像をpreviewし、1種類ずつ弱めから適用する

  1. 固定したい要素からOpenPose・Canny・Depthを選ぶ
  2. baseに対応するControlNet modelを用意する
  3. 参照画像を前処理し、検出結果をpreviewする
  4. conditioningへ適用し、strengthを弱めから上げる
  5. 同じseedでpromptのみの画像と比較する
スポンサーリンク

ControlNetで固定できる要素

方式 主に使う情報 向く用途 失いやすい情報
OpenPose 関節・骨格 人物の姿勢 服・背景・細部
Canny edge・輪郭 構図、物体の形 色・材質・奥行き
Depth 奥行き推定 空間配置、立体感 細い輪郭・正確なpose

どれが最良かではなく、固定したい情報で選びます。人物の腕の位置ならOpenPose、建物の外形ならCanny、前景と背景の距離ならDepthが比較候補です。

必要なmodelとnodeを準備する

base modelとの互換性を確認する

ControlNet modelには対応するbase model系統があります。file名だけで判断せず、Model Cardでbase、用途、license、推奨preprocessorを確認します。

control_type:
source_url:
author:
base_model:
controlnet_file:
sha256:
license:
preprocessor:
comfyui_version:
checked_at:

preprocessorとControlNet modelを分ける

preprocessorは参照画像からpose、edge、depth mapなどを作る処理です。ControlNet modelはその条件を生成へ反映します。前処理nodeは利用環境によりcustom nodeが必要な場合があるため、公式tutorialとrepositoryを確認してください。

安全確認:custom nodeはcodeを実行します。自動で一括installせず、repository、maintainer、依存、権限、versionを確認します。

参照画像をworkflowへ接続する

Load Image
  ↓
Preprocessor(OpenPose / Canny / Depth)
  ├─ Preview Image
  └─ Apply ControlNet ← Load ControlNet Model
          ↑
Positive Conditioning
          ↓
KSampler

まず前処理結果をPreview Imageで見ます。元画像が正しくても、骨格の未検出、不要なedge、奥行きの逆転があれば、生成結果も不安定になります。

positive conditioningへ適用する

公式workflowと利用nodeのport名を確認し、Text Encodeのconditioning、ControlNet model、前処理画像をApply ControlNet系nodeへ接続します。negative側の扱いはnodeとworkflowの公式例に従います。

strengthと適用範囲を調整する

最初は同じseed・promptで、ControlNetなし、弱、中、強を比較します。

設定 目的 確認点
なし promptだけの基準 元の構図と自由度
自然さを残す 条件が見えるか
構図と自然さのbalance 主要部分の一致
固定力の上限確認 歪み・硬さ・artifact

start・end percentの意味

対応nodeにstart・end percentがある場合、denoisingのどの範囲で条件を効かせるかを指定します。早い段階は全体構図へ、遅い段階までの適用は細部へ影響しやすい傾向がありますが、model・sampler・nodeで結果が異なるため実画像で比較します。

case,type,strength,start,end,pose_or_shape,naturalness,artifact,decision
A,none,0,0,0,1,5,5,base
B,OpenPose,0.5,0,0.8,4,5,5,candidate
C,OpenPose,0.8,0,1.0,5,3,3,too_strong

OpenPose・Canny・Depthを同条件で比較する

  • 同じ参照画像を使う
  • checkpoint、prompt、seed、size、stepsを固定する
  • preprocessorのresolutionを記録する
  • 各control typeは1つずつ適用する
  • 構図一致、自然さ、artifactを5段階で採点する

前処理map自体も保存すると、生成の失敗が検出ミスかControlNet設定かを切り分けられます。

ポーズや輪郭が崩れるときの確認順

  1. 参照画像が暗すぎる・小さすぎる・遮蔽されていないか
  2. 前処理previewで必要な情報を検出できているか
  3. ControlNet modelとbase modelが対応しているか
  4. strengthが強すぎないか
  5. start・endの範囲が長すぎないか
  6. promptが参照条件と矛盾していないか
  7. LoRAや他ControlNetを外しても再現するか

複数ControlNetやLoRAを追加する前に、1つのcontrolだけで成功させます。ComfyUIのnode接続が初めてならComfyUIの使い方を参照してください。

参照画像を使う際の注意

  • 自分が利用できる画像か確認する
  • 実在人物では本人の同意と用途を確認する
  • なりすまし、誤認、嫌がらせへ使わない
  • 参照画像、model、生成結果の保存先を管理する
  • 公開前に人物・logo・character・類似性を確認する

よくある質問

OpenPose・Canny・Depthを同時に使えますか?

対応workflowはありますが、まず個別に効果を確認します。同時適用では条件の矛盾と強度配分が増え、原因を切り分けにくくなります。

参照画像と完全に同じ構図になりますか?

保証されません。preprocessorの検出、ControlNet model、strength、prompt、seedなどが影響します。必要な要素を採点して許容範囲を決めます。

人物写真を使ってもよいですか?

権利、プライバシー、本人同意、利用目的を確認します。技術的に可能でも利用可能とは限りません。安全な利用はAIを安全に使う方法を参照してください。

まとめ

ComfyUIでControlNetを使うときは、固定したい情報からOpenPose、Canny、Depthを選び、対応modelとpreprocessorを用意します。生成前に前処理mapをpreviewしてください。

同じseedでControlNetなし・弱・中・強を比較し、構図一致だけでなく自然さとartifactも採点します。手軽な画像生成手段との比較は画像生成AIツール比較も参考になります。

スポンサーリンク