Jensen的个人学习小站

🏷️难度:高级 ⏱️预计阅读:25 分钟 📅更新时间:2026-02-28

ControlNet:从随机生成到"指哪打哪"的绝对控制

目录
  1. ControlNet 究竟是什么?
  2. WebUI 中的安装方法
  3. 核心模型解析与实战
  4. 多路 ControlNet 的叠加魔法
  5. 控制权重与介入时机 (Tip)

在 ControlNet 诞生之前,AI 画师们只能通过疯狂堆砌提示词来"祈求" AI 画出想要的姿势或构图,如同隔山打牛。而 ControlNet 的出现彻底终结了这个瞎猜的时代,让你能够通过线稿、深度图、人体骨架等视觉条件,直接"锁死"画面的布局。

1. ControlNet 究竟是什么?

ControlNet 是一个神经网络架构扩展,它的作用是"拷贝"一份原有大模型的结构,并在上面添加额外的空间调节条件。简单来说,它就像是给 AI 画家套上了一个"拓写板"或"人体模型",要求它必须在这个框架内进行创作。

2. WebUI 中的安装方法

3. 核心模型解析与实战

ControlNet 有十几种不同的控制模型,这里介绍最常用的三大金刚:

👑 Canny (边缘检测)

这是最严格的控制方式。预处理器提取原图的硬边缘线稿(就像简笔画)。

👑 Depth (深度检测)

它通过计算画面中物体的前后距离,生成一张灰度的"深度图"(越亮代表越近,越暗越远)。它只保留了画面的立体关系,忽略了表面细节。

👑 OpenPose (人体骨架检测)

最被大众熟知的功能。它会自动识别原图中人物的关节(如肩膀、肘部、膝盖甚至手指和面部表情),并生成彩色火柴人骨架图。

4. 多路 ControlNet 的叠加魔法

在 WebUI 的设置界面 (Settings -> ControlNet),你可以找到 Multi ControlNet: Max models amount (requires restart) 选项,将其设为 2 或 3。

实战组合:OpenPose + Canny

比如你想画一个特定姿势,并且手里拿着一把特定形状的剑的任务。你可以:

  1. 在 Unit 0 启用 OpenPose,锁死人物挥手的姿势。
  2. 在 Unit 1 启用 Canny,放入一张你画好的剑的草图,锁死武器外部轮廓。
  3. 输入提示词生成,AI 将同时满足这两个苛刻的物理条件。
⚠️ 注意显存

每多开一路 ControlNet,就会多加载一个 1.4GB 的模型进显卡。如果显存不足(如 8G),多路控制极易爆显存失败。建议勾选 LowVRAM 选项尝试。

5. 控制权重与介入时机 (Tip)

在 ControlNet 界面最下方有几个关键滑块调节: