🍉什么是 ControlNet?

ControlNet 是 AI 绘画领域里一个非常重要的工具,它能让 Stable Diffusion 生成的画面变得更加可控。

简单来说,它是一种特殊的神经网络结构。它的核心作用是给 Stable Diffusion 模型添加额外的 “控制条件”,从而精准地干预图像生成过程,让结果更符合你的预期。

你可以给它输入各种不同类型的参考图来引导生成,比如:

  • 手绘的涂鸦线稿
  • 图像的边缘轮廓图
  • 人物的姿势关键点
  • 深度图、分割图、法线图等

这些输入都会作为 “指令”,指导模型生成带有特定构图、姿势或结构的图像。

总的来说,ControlNet 就像是给 Stable Diffusion 装上了一个 “方向盘”,让你可以通过各种条件输入,灵活地控制图像生成的结果。

🍉ControlNet 对设计工作有什么用?

如果只是想随便生成一张好看的图片,ControlNet 确实没什么必要,用 Midjourney 这类工具反而更简单。

但在专业设计场景里,我们需要的不是 “好看”,而是 “可控”。

做过设计的人都有体会,在项目中经常会收到各种具体的要求:比如人物必须摆某个特定姿势、画面某个位置要放特定元素、或者把一张写实风格的图改成平面风格。这些需求本质上都是 “参考意见”,而 ControlNet 的作用就是帮你把这些要求精准地传达给 AI 模型,让生成的内容完全符合设计预期。

举个例子:你想让 AI 画一个站在特定背景前的人物,只需要给 ControlNet 提供人物的姿势关键点或者草图,它就像一个 “翻译官”,把这些信息传递给 Stable Diffusion,告诉它:“这里有个人物,姿势是这样的,背景是那样的。” 这样 AI 就能生成精准符合你要求的图像了。

🍉ControlNet 的分类

和 LoRA 一样,ControlNet 也需要和大模型的版本对应,主要分为 SD 1.5SDXL 两个系列。

从目前的生态来看,SD 1.5 对应的 ControlNet 模型更多,能实现的控制效果也更丰富,所以我们接下来的讲解会以它为重点。如果之后你要使用 SDXL 版本,只需要把大模型和对应的 ControlNet 模型一起换成 SDXL 版本即可。

接下来我们就快速了解一下,SD 1.5 的 ControlNet 都有哪些具体的控制能力(不用死记硬背,有个大致印象就好)。

1.Depth(深度图)

根据图像深度生成新的图像,效果:

2. Normal(法线图)

这种控制方式的核心是保留原图的光影和表面朝向信息

3. Canny(边缘检测)

这种控制方式的核心是抓住图像的边缘轮廓

4. MLSD(直线检测)

MLSD 是一种专门提取画面中直线结构的控制方式。它的特点是会自动忽略复杂的曲线和细节轮廓,只识别和保留画面中的直线线条,尤其适合用来提取建筑的框架结构,比如墙体、门窗、梁柱等。

5. Scribble(涂鸦)

用于通过简单的涂鸦手绘来生成你想要的大概画面效果。

6. Soft Edge(软边缘)

用于通过参考图的整体轮廓边缘来控制生成的图像。

7. Segmentation(图像语义分割)

使用语义分割来控制Stable Diffuision生成的图像。

8. Openpose(姿势控制)

用于通过参考图中人物的姿势来控制生成图像的人物姿势。

9. Lineart(线条艺术)

和单纯的轮廓线不同,它更像是用速写或素描的方式,捕捉人物的动态线条和身体特征,然后让 AI 基于这些动态线条,生成姿势完全一致但风格不同的新图像。

10. Anime Lineart(动画线条艺术)

这是一个专门针对动漫风格的 ControlNet 模型。

它和普通的 Lineart 模型不同,强烈建议输入动漫风格的图片作为参考。如果用写实类图片,生成效果会非常差。它的作用是精准提取动漫线稿的笔触和轮廓,让 AI 生成的新图像保留原汁原味的动画线条感。

11. Shuffle(随机洗牌)

这是 ControlNet 官方指定的唯一一种图像风格化方法。

它的工作原理是打乱原图的色彩和纹理信息,然后重新组合,在保留原图基本构图和元素的同时,生成全新的风格化图像。简单来说,它就像给图像做一次 “风格洗牌”,输出结果会带有很强的随机性和艺术感。

12. Instruct Pix2Pix(指令修改)

这是一种可以通过文字指令来修改图像的 ControlNet 模型。

你只需要输入一张原始图片,再配上一句简单的指令(比如示例里的 “make it winter”),它就能让 Stable Diffusion 直接在原图基础上,按照指令的描述进行修改,生成符合要求的新图像。

这种方式特别适合在保留原图主体和构图的前提下,快速改变画面的季节、风格或细节。

13. Inpaint(局部重绘)

这是一种可以精准修改图像局部的 ControlNet 模型。

你只需要先在原图上用蒙版框选出想要修改的区域,再配合提示词描述你想要的效果,它就能只对这个被框选的局部进行重绘,而画面的其他部分保持不变。

这种方式非常适合用来修复画面瑕疵、替换局部元素,或是在不改动整体的前提下优化细节。

14. Tile(分块重采样)

这个模型的核心能力是重新生成图像细节,它会忽略原图现有的细节,然后在保持整体构图不变的前提下,为画面添加全新的精细细节。

一个非常实用的场景是修复因放大或缩小而产生的模糊问题。它能把模糊的区域重新处理成清晰的细节,让图像在放大后依然保持锐利的质感。除此之外,它也可以用来消除画面里的瑕疵,或是给平淡的区域增加丰富的纹理。

15. Reference(参考图)

这个模型可以让你通过输入一张参考图,来控制生成图像的主要元素和整体风格。

你可以把它简单理解为:用一张图片实现一个 “轻量化的 LoRA” 效果。不过它的控制强度比 LoRA 要弱一些,更适合用来借鉴参考图的色调、构图或氛围,而不是完全复刻。

🍉 ControlNet 模型的下载与安装

ControlNet 包含了非常多不同功能的模型,所以第一步就是要把它们下载到本地。

1. 下载步骤

在 ComfyUI 中使用 ControlNet,第一步就是下载所需的模型文件并放到指定路径。这样后续使用时就无需再临时寻找下载地址了。

  • 模型体量:即使剔除了极少使用的模型,剩余常用模型的总大小也超过 55GB。
  • 下载建议
    • 如果硬盘空间充足,建议一次性下载全部模型,这样后续使用时无需重复操作。
    • 如果空间紧张,可以先下载当前需要的模型,等后续用到其他模型时再补充下载。

下载地址: https://pan.baidu.com/s/1dzWXXFsbCbu-QSk7dVyUhw 提取码: hc7k 

2.安装步骤

下载好所有模型文件后,就可以进行安装了:

  1. 找到目标路径:将所有下载好的模型文件,放到 ComfyUI 根目录下的 models/Controlnet 文件夹中。
  2. 二级目录管理:这个文件夹支持创建二级子目录,建议按模型版本(如 SD 1.5、SDXL)或功能类型(如 Depth、Canny)来分类存放,这样后续查找和管理会更清晰。

                                                   

模型都下载安装好了,接下来一节我们就通过一个具体的案例来看看怎么实际操作。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐