回到笔记教程AI工具ComfyUI ControlNet 控图排错记录 OpenPose 预处理失效、ControlNet 权重读取和节点参数配置中的几个高频问题。 2024年7月26日 1 分钟阅读收听本文 Microsoft Edge 神经语音ControlNet“不听话”时,问题通常不在提示词,而在预处理器、模型与工作流参数没有对应上。下面保留的是 2024 年工作流中的排错经验;节点实现更新很快,修改插件源码前应先核对当前版本的 issue 和说明。 先检查这一条链路 预处理器是否真的输出了骨架、深度或边缘图; ControlNet 模型是否与控制类型匹配; 模型体系是否一致,例如 SD 1.5、SDXL 不要混用; 控制图尺寸和生成尺寸的长宽比是否接近; strength、开始步和结束步是否给了模型足够的作用区间; 节点是否正确接入正向和负向条件。 先单独预览预处理器输出,再接入采样流程。这样可以快速区分“控制图没有生成”和“控制权重没有生效”。 OpenPose 线条过细或近似空白 旧版 comfyui_controlnet_aux 曾在高分辨率画布上出现骨架线条过细的问题。相关讨论: ControlNetPlus issue #35 ControlNetPlus inference scripts 当时的解决思路是根据画布尺寸放大骨架圆点和肢体线宽。它属于特定版本的兼容补丁,不适合长期直接改写插件源码。更稳妥的顺序是: 更新 ComfyUI、辅助预处理插件和 ControlNet 节点; 确认预处理器分辨率; 对比插件仓库中当前的绘制实现; 仍能稳定复现时,再用最小补丁验证并向上游反馈。 [!WARNING] 直接修改 custom_nodes 中的源码会在插件升级时被覆盖。请记录修改位置,或把补丁维护在自己的分支中。 权重与作用区间 控制过弱时,不要只提高权重。先确认: 控制图本身清晰且与目标构图一致; start_percent 没有太晚; end_percent 没有太早; 多个 ControlNet 没有互相冲突; 采样器和去噪强度没有让原始结构被完全重写。 控制过强、画面僵硬时,则可以逐步降低权重,缩短结束区间,或只让结构控制参与前半段采样。每次只改一个变量,保存对照图,比同时调整整套工作流更容易找到原因。 交流留下你的想法评论由 GitHub Issues 托管,中英文页面共享同一段讨论。正在载入评论…
ControlNet“不听话”时,问题通常不在提示词,而在预处理器、模型与工作流参数没有对应上。下面保留的是 2024 年工作流中的排错经验;节点实现更新很快,修改插件源码前应先核对当前版本的 issue 和说明。
先检查这一条链路
strength、开始步和结束步是否给了模型足够的作用区间;先单独预览预处理器输出,再接入采样流程。这样可以快速区分“控制图没有生成”和“控制权重没有生效”。
OpenPose 线条过细或近似空白
旧版
comfyui_controlnet_aux曾在高分辨率画布上出现骨架线条过细的问题。相关讨论:当时的解决思路是根据画布尺寸放大骨架圆点和肢体线宽。它属于特定版本的兼容补丁,不适合长期直接改写插件源码。更稳妥的顺序是:
权重与作用区间
控制过弱时,不要只提高权重。先确认:
start_percent没有太晚;end_percent没有太早;控制过强、画面僵硬时,则可以逐步降低权重,缩短结束区间,或只让结构控制参与前半段采样。每次只改一个变量,保存对照图,比同时调整整套工作流更容易找到原因。