【SD】ControlNet基础讲解

本文简介

在学习和使用『Stable
Diffusion』的过程中,『ControlNet』是一个不可忽视的关键组件。『ControlNet』是一个用于增强图像生成过程可控性的强大工具,允许用户通过提供特定的控制图像来精确指导生成结果。本文将讲解
『ControlNet』的基本概念。

安装 ControlNet

ControlNet插件仓库地址:文末领取!

首先,在 SD WebUI 的『扩展』里,选择“从网址安装”,然后输入 https://github.com/Mikubill/sd-webui- controlnet.git 这个地址,点击安装。

01.png

等待一阵,安装成功后重启 SD WebUI,在里就能看到『ControlNet』的身影了。

02.png

ControlNet

界面功能讲解

文生图和图生图的应用

在『文生图』模式下,你可以手动加载一张图片来启动『ControlNet』功能。而在『图生图』模式下,由于该模式本身就需要加载图片,因此加载的图片会自动应用到『ControlNet』,无需额外操作。

03.png

如果你希望使用一张独立的图片作为『ControlNet』的控制图像,可以选择『上传独立的控制图像』选项,然后在图生图界面中单独上传。

04.png

控制单元配置

回到『文生图』面板,可以看到我有5个『ControlNet控制单元』,即最多可以同时激活5个控制单元。如果需要使用更多的控制单元,可以在『设置』中调整『多重
ControlNet: ControlNet 单元数量』,调整后保存并重启
UI 界面即可。

05.png

启用 ControlNet

使用『ControlNet』时,务必勾选要启用的控制单元,否则它们将不会生效。启用的控制单元标题会变成绿色,并且『ControlNet』标题后面会显示已启用的数量。

06.png

显存管理

开启『ControlNet』会增加显存的负担。如果出现显存不足的提示,可以尝试启用“低显存模式”。可以降低爆显存的概率,但这会降低处理速度。

07.png

完美像素模式

启用『完美像素』让『ControlNet』自适应匹配设置的输出图像的宽度,高度根据输入原图像自动计算。开启后会隐藏 Resolution 滑动条(分辨率)。

08.png

比如,『控制类型』选择『Canny(硬边缘)』时,会看到一个默认分辨率为512的预处理器分辨率。当启用“完美像素模式”后,系统会自动设置预处理分辨率,通常为最低可用分辨率。如果需要更高精度的结果(如高清线稿图),则需要手动设置分辨率。

预览功能

一般情况下不需要手动开启『允许预览』,直接点击下方的爆炸图标就会自动开启“允许预览”功能并显示结果。

拿『Depth(深度)』举例。

09.png

控制类型和预处理器

『ControlNet』有很多不同的『控制类型』,每种『控制类型』都有自己专属的『预处理器』。每种『控制类型』必须搭配相应的『模型』才能生效。需要为『ControlNet』安装相应的『模型』,所有『模型』都可以从文末下载。

链接放这:文末领取!

10.png

新版模型增加了对 SDXL 的支持。可选『模型』非常多,但不必全部下载。例如,『Canny』模型有 full、mid、small 三个版本,full
版本效果最好但资源占用最大。如果计算机性能足够,推荐使用 full 版本。

这些模型是由不同的团队开发的,比如 kohya、sai 等,而 t2i 开头的模型是腾讯开发的。

下载后,把模型放在 extensions/sd-webui-controlnet/models 文件夹里就行了。

控制权重

控制权重决定『ControlNet』对生成结果的影响程度。数值越高,生成结果越严格按照 『ControlNet』的处理结果生成;数值越低,AI
有更多自由发挥的空间,也会偏向于按照提示词的内容去生成图片。

11.png

『引导介入时机』和『引导终止时机』也用于调整『ControlNet』的控制强度。『引导介入时机』设为 0.2 表示图像生成 20%
时『ControlNet』开始介入;『引导终止时机』设为 0.8 表示图像生成 80% 时『ControlNet』停止影响。

控制模式和缩放模式

『控制模式』提供均衡、更偏向提示词、更偏向『ControlNet』三种选项,字面意思即可理解。

『缩放模式』与『图生图』模式中的缩放功能一致,也是根据字面意思操作。

12.png


关于AI绘画技术储备

学好 AI绘画 不论是就业还是做副业赚钱都不错,但要学会 AI绘画 还是要有一个学习规划。最后大家分享一份全套的 AI绘画 学习资料,给那些想学习 AI绘画 的小伙伴们一点帮助!

对于0基础小白入门:

如果你是零基础小白,想快速入门AI绘画是可以考虑的。

一方面是学习时间相对较短,学习内容更全面更集中。
二方面是可以找到适合自己的学习方案

包括:stable diffusion安装包、stable diffusion0基础入门全套PDF,视频学习教程。带你从零基础系统性的学好AI绘画!

零基础AI绘画学习资源介绍

👉stable diffusion新手0基础入门PDF👈

(全套教程文末领取哈)
在这里插入图片描述

👉AI绘画必备工具👈

在这里插入图片描述

温馨提示:篇幅有限,已打包文件夹,获取方式在:文末

👉AI绘画基础+速成+进阶使用教程👈

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

在这里插入图片描述

温馨提示:篇幅有限,已打包文件夹,获取方式在:文末

👉12000+AI关键词大合集👈

在这里插入图片描述

这份完整版的AI绘画全套学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费

在这里插入图片描述

<think>嗯,用户让我详细讲解一下ComfyUI的ControlNet和使用方法。首先,我需要确定用户对ComfyUI和ControlNet的了解程度。可能他们已经有基本的Stable Diffusion使用经验,但对ComfyUI的节点式界面不太熟悉。用户可能想通过ControlNet更精确地控制图像生成,比如姿势、线条或色彩等。 接下来,我应该先解释ComfyUI是什么,强调其节点式工作流的灵活性。然后介绍ControlNet的基本概念,说明它在图像生成中的作用,比如通过边缘检测、深度图等条件控制生成结果。 在讲解使用方法时,需要分步骤说明如何在ComfyUI中安装ControlNet,可能用户会遇到安装问题,需要提醒他们检查插件是否兼容。然后详细说明如何添加ControlNet节点,选择预处理器和模型,连接输入输出节点。这里可能需要用具体的例子,比如使用Canny边缘检测,演示从加载图像到生成最终结果的过程。 还要注意常见问题,比如模型加载失败、预处理效果不佳等,给出解决方案。用户可能对不同的ControlNet模型不太清楚用途,需要简要介绍几个常用模型,如OpenPose、Depth、Scribble等,帮助用户根据需求选择。 最后,总结使用ControlNet的好处,并鼓励用户实践。同时确保使用正确的LaTeX格式,虽然在这个主题中数学公式可能不多,但如果有涉及参数或方程的地方,要正确应用格式。整个回答要结构清晰,步骤明确,语言口语化,避免技术术语堆砌,让用户容易理解。</think>好的!我将以分步讲解的形式为你介绍 **ComfyUI 的 ControlNet 使用方法**,帮助你在节点式工作流中实现更精准的图像控制。 --- ### **1. ComfyUI 是什么?** ComfyUI 是一个基于 **节点式操作界面** 的 Stable Diffusion 工具,通过可视化连接不同功能模块(节点)构建生成流程。它的优势在于: - **灵活性**:自由组合模型、条件控制、后处理等模块 - **可定制性**:支持插件扩展(如 ControlNet) - **低显存占用**:通过优化节点执行顺序节省资源 --- ### **2. ControlNet 的核心作用** ControlNet 是一种通过 **额外条件控制图像生成** 的技术,常见应用场景包括: - 姿势控制(如 OpenPose) - 边缘/线稿保留(如 Canny、MLSD) - 深度图引导(如 Depth) - 色彩分布约束(如 Color) --- ### **3. ComfyUI 中 ControlNet 的使用步骤** 以下以 **Canny 边缘检测** 为例,演示完整流程: #### **步骤 1:安装 ControlNet 插件** - 在 ComfyUI 的 `custom_nodes` 文件夹中,安装官方或第三方 ControlNet 插件(如 [ComfyUI-Advanced-ControlNet](https://github.com/Kosinkadink/ComfyUI-Advanced-ControlNet)) - 确保下载对应的 **ControlNet 模型**(`.safetensors` 文件),放置到 `models/controlnet` 目录 #### **步骤 2:构建基础生成流程** ```plaintext [加载模型] → [正向提示词] → [KSampler] → [VAE 解码] → [保存图像] ``` #### **步骤 3:添加 ControlNet 节点** 1. **加载 ControlNet 模型** - 添加 `Load ControlNet Model` 节点,选择对应的模型(如 `control_v11p_sd15_canny.pth`) 2. **预处理输入图像** - 添加 `Canny Edge Preprocessor` 节点,上传参考图并调整阈值(低阈值=保留更多细节) 3. **连接条件到采样器** - 将 ControlNet 输出连接到 `KSampler` 的 `positive` 和 `negative` 条件端口 #### **步骤 4:完整节点连接示例** ```plaintext [加载模型] → [正向提示词] → [KSampler] ↑ ↓ [ControlNet] ← [Canny预处理] [VAE 解码] → [保存图像] ``` #### **步骤 5:调整参数** - **ControlNet 权重**:通常 0.5~1.0(过高会导致图像僵硬) - **起始/终止步数**:控制介入时机(例如 0.0~1.0 表示全程生效) - **预处理参数**:如 Canny 的 low_threshold 和 high_threshold --- ### **4. 常用 ControlNet 模型与用途** | 模型类型 | 预处理器 | 适用场景 | |---------------|----------------|----------------------------| | Canny | Canny | 保留边缘细节(线稿→上色) | | Depth | Midas | 3D 空间层次控制 | | OpenPose | OpenPose | 人物姿势复刻 | | Scribble | None | 手绘涂鸦引导 | | Segmentation | Uniformer | 区域色彩/内容控制 | --- ### **5. 常见问题解决** - **模型加载失败** 检查模型文件是否完整,路径是否匹配 `models/controlnet` - **预处理无效果** 确认预处理器节点正确连接,且输入图像已加载 - **生成结果僵硬** 降低 ControlNet 权重或调整介入步数范围 --- ### **6. 进阶技巧** - **多 ControlNet 叠加**:串联多个 ControlNet 实现复杂控制(如 Pose+Depth) - **条件遮罩**:配合 `Conditioning Mask` 节点局部控制生效区域 - **动态参数**:使用 `Reroute` 节点在流程中实时调整权重 --- 通过以上步骤,你可以在 ComfyUI 中灵活运用 ControlNet 实现精准的图像生成控制。实际使用时,建议从单一条件开始测试,逐步叠加复杂度。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值