Model
.ai
オープン AI モデルを追跡

ComfyUI の Apply ControlNet ノード

Apply ControlNetは、ガイド画像と読み込んだControlNetを正負のCONDITIONINGに強さや開始・終了の割合で付け加えて、サンプラーがガイドのエッジや深度、ポーズに従うようにします。
ノードパック:ComfyUI core
カテゴリ:ControlNet とガイダンス
Author: comfyanonymous

Apply ControlNet の役割

Apply ControlNet(新しいControlNetApplyAdvancedで、表示はApply ControlNet)は、正負のconditioning、CONTROL_NET、前処理済みのガイドIMAGE、最近のバージョンではVAEも受け取ります。これにより、制御信号をサンプラーに渡す新しいconditioningが返されます。strengthは影響の強さを調整(1.0がフル)、start_percentとend_percentは制御をサンプリングの一部に限定します。例えば0.0-0.6なら構図は早めに決まり、モデルは後で自由に細部を仕上げます。
ガイド画像はControlNetが期待する形式である必要があります。Canny ControlNetは黒背景に白いエッジ、Depth ControlNetはグレーの深度マップ、OpenPoseは色付きのスケルトンです。ControlNet Auxパックの前処理ノードが写真からこれらを作ります。Tile ControlNetの場合はガイドが元の画像で、ぼかしたり縮小したりすることが多いです。

入力

名前
型
意味
positive / negative
CONDITIONING
CLIP Text Encodeノードからのもの。
control_net
CONTROL_NET
Load ControlNet Modelから。
image
IMAGE
前処理済みのガイド(エッジ、深度、ポーズ、またはTile用の画像)。
vae
VAE
最近のバージョンでオプション。FluxやUnion ControlNetの一部で必要。
strength
FLOAT
0-2の範囲で、ガイドにどれだけ従うか。通常は0.6-1.0。
start_percent / end_percent
FLOAT
制御が有効なサンプリングの割合。

出力

名前
型
意味
positive
CONDITIONING
KSampler用の制御された正のconditioning。
negative
CONDITIONING
KSampler用の制御された負のconditioning。

Apply ControlNet の使い方

  1. Load Imageで写真を読み込み、前処理ノード(Canny Edge、Depth Anything、DWPoseなど)に通す。
  2. Load ControlNet Modelで対応するControlNetを読み込む。
  3. Apply ControlNetを追加し、positive、negative、control_net、ガイド画像を接続する。
  4. strengthを0.8、end_percentを0.8に設定して始める。
  5. 2つの出力をKSamplerのpositiveとnegativeに接続し、latentサイズはガイドの比率に合わせる。

設定とコツ

  • 複数のApply ControlNetノード(ポーズ+深度など)を連結して、1つの出力を次の入力に繋げる。
  • end_percentを低め(0.5-0.7)にすると、モデルが細部を自由に加えられて、硬くなったりトレースしたような見た目を避けられる。
  • ガイド画像はlatentと同じアスペクト比にする。サイズは合わせてリサイズされる。
  • Tileアップスケールではstrengthを0.5-0.8にして、細部が変わる余地を残す。
  • 前処理の出力をプレビューしよう。黒かったりノイズっぽいガイドは「効果なし」の原因が多い。

Apply ControlNet のトラブルシューティング

結果がガイドを無視している

原因
strengthがほぼ0、end_percentが低すぎる、黒いガイド画像、またはタイプ指定のないUnion ControlNet。

対処法
ガイドをプレビューし、strengthを0.8-1.0、end_percentを1.0にしてテスト。その後調整。UnionモデルにはSetUnionControlNetTypeを追加。

エラー:mat1とmat2の形状が掛けられない/ControlNetの不一致

原因
ControlNetの種類がチェックポイントと合っていない(SD 1.5とSDXLやFluxの違い)。

対処法
チェックポイントと同じファミリーのControlNetを使う。

焼けたような高コントラストでポスタライズされた画像

原因
強いControlNet(CannyやLineart)でstrengthが1以上、高いcfg設定。

対処法
strengthは0.6-0.9、end_percentは0.7、cfgはモデルの通常範囲内に。

古いワークフローで「Apply ControlNet (OLD)」が表示される

原因
単一conditioningノードが名前変更されている。まだ動くがstart/end制御や負のパスがない。

対処法
Apply ControlNetに置き換え、正負両方を接続する。

Flux ControlNetでvaeがないエラー

原因
一部のFluxやUnion ControlNetはガイドのエンコードにVAEが必要。

対処法
Load VAEのVAE出力をApply ControlNetのvae入力に接続する。

Apply ControlNet に関する質問

画像は前処理しないとダメ?

TileやInpaint ControlNet以外は前処理が必要。各ControlNetは特定のマップ用に訓練されている。

ControlNetはimg2imgでも使える?

使えるよ。latentはVAE Encodeから、制御はこのノードからで、両方は独立している。

ControlNetはいくつまで重ねられる?

VRAMが許す限り。2~3個がよくある。増やすとメモリと時間が増える。

その他の ComfyUI ノード

ComfyUI Manager
ComfyUI-Manager
ComfyUI Managerは、インターフェース内からカスタムノードパックやモデルのインストール、更新、修正を行い、インポートしたワークフローの不足ノードを解決し、設定のスナップショットを作成する拡張機能です。
Load Checkpoint
ComfyUI core
Load Checkpoint(CheckpointLoaderSimple)は、.safetensorsまたは.ckptのモデルファイルを開いて、ワークフローで必要な3つのパーツ、つまりdiffusion MODEL、CLIPテキストエンコーダー、VAEを出力します。
Save Image
ComfyUI core
Save ImageはIMAGEテンソルをPNGとしてComfyUI/outputに保存します。ファイルのメタデータにワークフロー全体が埋め込まれているので、その画像をComfyUIにドラッグするとグラフを復元できます。
VAE Decode
ComfyUI core
VAE DecodeはサンプリングされたLATENTをVAEを使ってピクセルのIMAGEに変換します。VAE Decode (Tiled)はとても大きな画像をタイル単位で同じ処理をします。
Empty Latent Image
ComfyUI core
Empty Latent Imageは、テキストから画像を生成するときのスタート地点となる空の潜在キャンバス(幅、高さ、バッチサイズ)を作ります。サイズは8の倍数で、モデルファミリーに合っている必要があります。
Load LoRA
ComfyUI core
Load LoRA(LoraLoader)は、LoRAファイルをMODELとCLIPに別々の強さで適用します。これにより、スタイルやキャラクター、コンセプトを任意のチェックポイントにマージせずに追加できます。