ComfyUI ControlNet精准控图教程:Canny与OpenPose节点用法

拾光
拾光
发布时间:2026-09-20| 3人浏览过
原创

在AI绘画中,随机性往往是一把双刃剑。虽然它能带来惊喜,但在商业设计或角色一致性创作中,我们更需要“指哪打哪”的确定性。ControlNet正是解决这一痛点的关键工具,它允许你上传参考图,让AI严格遵循原图的线条结构或人物姿态进行重绘。

本教程将基于ComfyUI原生工作流,演示两种最常用的ControlNet模式:Canny用于保留物体的轮廓和细节结构,OpenPose用于固定人物的肢体动作。掌握这两者,你就能从“抽卡”转向“精准制图”。

开始前,请确保你的ComfyUI已安装ComfyUI-ControlNet-Aux节点包,并下载了对应的Canny和OpenPose预处理器及模型文件。我们将使用一张标准的人物照片作为输入源。

包含Load Image、Preprocessor、ControlNet Apply和KSampler的基础连接结构

包含Load Image、Preprocessor、ControlNet Apply和KSampler的基础连接结构

1. 搭建基础ControlNet链路

首先加载一个标准的文生图或图生图工作流。核心在于引入【ControlNet Apply】节点。在空白处双击搜索“ControlNet”,选择【ControlNet Apply】(注意不是Advanced版本,初学先用标准版)。

你需要准备三个关键输入:

  1. Conditioning:来自CLIP Text Encode的正向提示词编码。
  2. ControlNet:加载具体的ControlNet模型。
  3. Image:经过预处理器处理的参考图。

将【Load Image】节点连接到预处理节点,再将预处理后的图像连入【ControlNet Apply】的image端口。最后,将该节点的conditioning输出连接到KSampler的positive输入端。此时,ControlNet的条件约束已介入采样过程。

1. 搭建基础ControlNet链路

1. 搭建基础ControlNet链路

2. Canny模式:精准复刻线条结构

Canny算法擅长提取图像的边缘信息。当你希望生成的图片保留原图的建筑轮廓、产品外形或复杂线稿时,这是首选方案。

在【ControlNet Loader】中选择名为t2iadapter_canny或control_v11p_sd15_canny的模型(根据你的底模版本选择SD1.5或SDXL对应模型)。

接着,添加【Canny Edge Preprocessor】节点。将原图接入该节点,调整low_threshold和high_threshold参数。通常默认值即可,若线条过碎可调高阈值,若线条缺失则调低。你会看到预览窗口中,彩色照片变成了黑白线稿。

左侧为原图,右侧为Canny预处理后的黑白线稿

左侧为原图,右侧为Canny预处理后的黑白线稿

将处理后的线稿图接入【ControlNet Apply】。在采样器中,适当降低Denoise(去噪强度)至0.6-0.8之间,以保证结构不被过度破坏。点击生成,你会发现新图严格遵循了原图的边缘走势,但材质和光影完全由提示词决定。

3. OpenPose模式:锁定人物动态

如果需要改变人物服装或背景,但必须保持原有的跳舞、跑步等特定姿势,Canny会受衣物褶皱干扰,此时应切换为OpenPose。

更换【ControlNet Loader】中的模型为control_openpose系列。同时,将预处理节点替换为【OpenPose Preprocessor】。

OpenPose处理器会自动识别图中的人体关键点,并生成一张只有彩色火柴人的骨架图。这张图忽略了外貌细节,只保留关节角度和肢体位置。

连接方式与Canny一致。值得注意的是,OpenPose对人物完整性要求较高。如果原图中人物被遮挡严重,骨架识别可能会出错。生成时,你可以大幅修改提示词中的服装描述,例如将“T恤”改为“机甲”,但人物的举手投足将与原图保持高度一致。

4. 权重与起止步数调节

ControlNet并非越强越好。在【ControlNet Apply】节点中,有两个关键参数决定控制的力度:

  • Strength(强度):默认为1.0。若发现生成图过于僵硬或缺乏创意,可降至0.7-0.8;若结构跑偏,则维持在1.0或略高。
  • Start% / End%:控制ControlNet生效的时间段。通常设为0.0到1.0。若希望后期更多发挥AI想象力,可将End%设为0.8,让最后20%的采样步骤脱离控制网约束,使画面更自然。

展示Strength、Start%和End%参数的调整位置

展示Strength、Start%和End%参数的调整位置

5. 验证效果与工作流保存

完成设置后,对比原图与生成图。Canny模式下,检查边缘是否对齐;OpenPose模式下,检查手脚关节位置是否偏移。

若效果满意,选中所有相关节点,右键选择“Save as Group”或直接保存整个工作流为JSON文件。建议将Canny和OpenPose分为两个独立的工作流模板,以便后续快速调用。通过这种模块化的方式,你可以轻松应对线稿上色、姿势迁移等多种精准控图需求。

原图结构与AI重绘后的效果并列展示

原图结构与AI重绘后的效果并列展示

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。