Skip to content
成为赞助者 帮助构建更好的 ComfyUI 知识库
节点详解ConditioningApply ControlNet - 应用ControlNet节点

Apply ControlNet 应用ControlNet节点

💡

目前文档是原来 Apply ControlNet(Advanced)节点的说明,最早的 Apply ControlNet 节点已被重命名为 Apply ControlNet(Old),但 comfyui.org 为了保证兼容性,在你下载到的许多工作流文件夹里应该还可以看到 Apply ControlNet(Old) 节点,但是目前你已经无法通过搜索或者节点列表看到 Apply ControlNet(Old) 节点,所以请使用 Apply ControlNet 节点。

Apply ControlNet

此节点将 ControlNet 应用于给定的图像和条件,根据控制网络的参数和指定的强度调整图像的属性,比如 Depth、OpenPose、Canny、HED等等。

Apply ControlNet 文档说明

  • 类名:ControlNet应用
  • 类别:条件
  • 输出节点:False

使用 controlNet 要求对输入图像进行预处理,由于ComfyUI 初始节点不带处理器和 controlNet 模型,所以请先安装ContrlNet预处理器这里下载与处理器和contrlNet 对应的模型。

Apply ControlNet 输入类型

参数名称数据类型作用
positiveCONDITIONING正向条件数据,来自CLIP文本编码器或者其它条件输入
negativeCONDITIONING负向条件数据,来自CLIP文本编码器或者其它条件输入
control_netCONTROL_NET要应用的controlNet模型,通常输入来自 controlNt加载器
imageIMAGE用于 controlNet 应用的图片,需要经过预处理器处理
vaeVAEVae模型输入
strengthFLOAT用来控制网络调整的强度,取值0~10。建议取值在0.5~1.5之间比较合理,越小则模型会发挥越高的自由度,越大则会被限制得越严格,过高会出现很诡异的画面。你也可以通过自己测试来调整这个值,用来微调控制网络对图像产生的影响。
start_percentFLOAT取值 0.000~1.000,确定开始应用controlNet的百分比,比如取值0.2,意味着ControlNet的引导将在扩散过程完成20%时开始影响图像生成
end_percentFLOAT取值 0.000~1.000,确定结束应用controlNet的百分比,比如取值0.8,意味着ControlNet的引导将在扩散过程完成80%时停止影响图像生成

Apply ControlNet 输出类型

参数名称数据类型作用
positiveCONDITIONING经过ControlNet 处理后的正向条件数据,可以输出到下一个ControlNet 或者 K采样器等节点
negativeCONDITIONING经过ControlNet 处理后的负向条件数据,可以输出到下一个ControlNet 或者 K采样器等节点
💡

如果要使用T2IAdaptor样式模型,请改用Apply Style Model节点

ComfyUI ControlNet 使用示例

访问下面的页面查看示例

ControlNet 阶段控制设置说明

在节点的设置中你可以看到有 start_percentend_percent两个参数,这两个参数可以用来控制 ControlNet 在生成过程中的应用阶段,在使用 ControlNet 时

  • 你可以先设置start_percentend_percent为默认的 0.000 和 1.000,然后根据需要调整这两个参数的值,来查看应用的效果

下面是对于阶段控制的一些图例说明

1. 各类型ControlNet阶段控制参数配置参考

类型推荐权重阶段范围关键预处理参数最佳应用场景特别技巧
Canny0.8-1.20.0-0.4阈值:100/200, 锐化15%建筑/产品设计透明材质开启Invert,复杂结构分段处理
HED0.6-0.90.2-0.7高斯模糊σ=1.5, 平滑20%人像/服装设计Anime模式适合二次元,Realism模式保留真实细节
MLSD0.7-1.00.3-0.8最小线长15px, 角度容差15度工程制图墙面倾斜时权重+0.2,玻璃幕墙降权0.3
Depth0.7-1.00.2-0.9MiDaS大模型, 3D映射VR/医学可视化近景增强模式提升主体细节,ZoeDepth适合微距场景
Normal0.5-0.80.4-1.0分辨率2048px, 环境光遮蔽0.3产品渲染金属材质开启Specular,多光源合成增强立体感
Scribble0.4-0.70.5-1.0SoftEdge模糊3px, 色相容差15%概念设计渐变区域使用50%透明度蒙版,Pantone色库保持品牌一致性
Lineart0.6-0.90.3-1.0抗锯齿开启, 线宽±2px角色原画Anime模式线稿简化,Realism模式保留复杂褶皱
OpenPose0.9-1.10.0-0.325点骨骼, 手部细节增强动态捕捉运动模糊补偿防止残影,武术动作提升权重至1.2
Segmentation0.8-1.00.0-0.7ADEPT 2.0, 蒙版羽化10px广告合成天空区域降权0.2,建筑边缘锐化+20%
Tile0.3-0.60.4-0.9256x256分块, 重复率30%材质生成Variation随机化增加自然感,砖墙纹理开启无缝拼接

2. 经典场景配置模板

2.1、建筑可视化设计

控制类型权重阶段范围预处理参数调整技巧
Canny1.00.0-0.4阈值100/200玻璃幕墙开启Invert
Depth0.80.2-0.7MiDaS大模型中景区域增强20%
MLSD0.60.5-0.9最小线长20px倾斜墙体权重提升至0.8

2.2、游戏角色设计

控制类型权重阶段范围预处理参数动态调节
OpenPose1.00.0-0.3完整骨骼第20步后降权至0.7
Lineart0.70.4-1.0Anime模式装备区域权重+0.1
Scribble0.50.5-1.0SoftEdge模糊2px色块边界强度设为0.3

2.3、产品概念设计

控制类型权重阶段范围预处理参数材质优化
HED0.90.0-0.3高斯模糊σ=1.5金属表面开启Specular
Normal0.70.2-0.6分辨率2048x2048塑料材质降权至0.5
Depth0.60.5-0.9近景增强背景虚化强度1.2

2.4、医学可视化

控制类型权重阶段范围预处理参数精度控制
Scribble0.80.0-0.5红色标注线器官边界容差±2px
Depth0.70.4-0.8CT扫描模式分层间距0.1mm
Lineart0.90.7-1.0Ultra Detail血管路径精度1px

2.5、电影场景合成

控制类型权重阶段范围预处理参数氛围营造
Seg0.90.0-0.6ADEPT模型天空区域降权0.2
Shuffle0.60.3-0.8色温5500K霓虹灯区权重0.8
Depth0.70.5-1.0动态范围压缩前景锐化强度1.5

2.6、电商广告设计

控制类型权重阶段范围预处理参数商业优化
Canny1.20.0-0.4边缘锐化+15%反光材质增强模式
Scribble0.70.3-0.7Pantone色库品牌色容差±5%
Inpaint0.50.6-1.0羽化半径15px文字区域保护蒙版

复制说明:完整选中从第一个#到本行内容,确保包含所有表格与流程图

3. 专家级调整策略

3.1 阶段权重衰减模型

生成进度控制类型衰减曲线公式示例
0-30%结构控制恒定强度strength = 1.0
30-70%空间控制线性衰减strength = 1.0 - (step-30)/40*0.5
70-100%细节控制逆向增强strength = 0.5 + (step-70)/30*0.5

3.2 多ControlNet冲突解决方案

冲突类型可视化表现解决策略
结构-空间冲突物体漂浮/透视错误设置阶段间隔≥0.15
空间-细节冲突材质扭曲/反光异常添加区域遮罩隔离控制范围
结构-细节冲突关键特征丢失提升结构控制强度20%

4. 常见问题速查

Q1:控制效果突然消失?
✅ 检查end_percent是否过早结束(建议≥0.8)
✅ 确认没有其他ControlNet覆盖该区域

Q2:生成结果出现重影?
✅ 降低阶段重叠度(建议≤20%)
✅ 为冲突ControlNet设置排除遮罩

Q3:显存不足如何优化?
✅ 采用阶梯式阶段配置(示例:0.0-0.3 → 0.4-0.6 → 0.7-1.0)
✅ 降低非关键ControlNet的分辨率至512px

相关资源

Apply ControlNet (OLD) 旧版本节点说明

Apply ControlNet 这个节点为早期版本的 Apply ControlNet 节点,目前节点相关选项已更新,为了保证兼容性在 ComfyUI 中如果你下载了使用旧版本节点的工作流则会显示为此节点,你可以更换为新的 Apply ControlNet 节点。

Apply ControlNet (OLD) 输入类型

参数名称数据类型作用
条件CONDITIONING条件数据,来自CLIP文本编码器或者其它条件输入(如另一个条件节点的输入)
control_netCONTROL_NET要应用的controlNet模型,通常输入来自 controlNt加载器
imageIMAGE用于 controlNet 应用的图片,需要经过预处理器处理
强度FLOAT用来控制网络调整的强度,取值0~10。建议取值在0.5~1.5之间比较合理,越小则模型会发挥越高的自由度,越大则会被限制得越严格,过高会出现很诡异的画面。你也可以通过自己测试来调整这个值,用来微调控制网络对图像产生的影响。

Apply ControlNet (OLD) 输出类型

参数名称数据类型作用
条件CONDITIONING经过ControlNet 处理后的条件数据,可以输出到下一个ControlNet 或者 K采样器等节点