Stable Diffusion进阶之Controlnet插件使用

前面已经对Stable Diffusion的文生图和图生图的操作界面做了详细的介绍,接下来会介绍Stable Diffusion的进阶部分Controlnet插件的使用。往期文章详见:

一、Controlnet简介

原本Stable Diffusion对图片的约束维度、种类太少,比较宽泛。比如文字描述存在不够准确等问题,像素描述存在将过多维度的信息杂糅到一起,无法提取单一维度的信息等问题。Controlnet的出现是为了解决图像生成随机性过强的问题,它可以从多个角度增加对生成图片的约束,可以从已有的图片中提取出图片特征。

Controlnet是Stable Diffusion区别于其他AI绘画软件的里程碑似得插件,随着时间的推移,Controlnet插件的功能边界会越来越宽广,这也使得Stable Diffusion更加具有不可替代性。

Controlnet的工作流程:

  • 输入要参考(提取特征)的图片。

  • 提取出图片中需要参考的特征。

  • 使用Controlnet模型对提取出来的图片特征进行理解。

  • 根据图片特征生成结果。

二、Controlnet操作界面

本节先简单讲解下Controlnet的操作界面及按钮功能,详细的使用后续会专门介绍。以下2张截图就是Controlnet的使用界面。

1、控制单元

方便Stable Diffusion从多个维度控制生成的图片特征。比如可以使用OpenPose姿态提取,来对控制单元中上传的图片提取出姿势。

对于提取出来的姿势骨架图,可以自行对骨架图进行调整,Stable Diffusion会根据调整后的骨架图来生成新的图片(效果详见下图)。

|----------------------------------------------------------------------------|----------------------------------------------------------------------------|----------------------------------------------------------------------------|----------------------------------------------------------------------------|
| 原图 | 原图骨架图 | 调整后的骨架图 | 生成的新图 |
| | | | |

控制单元的个数可以在设置中进行调整。

2、单张图片、批量处理、多张上传

用来给控制单元上传需要处理的参考图。单张图片和多张上传不用多说,分别是上传一张图片以及上传多张图片。批量处理中需要填写文件夹的地址,这样Stable Diffusion在生成图片时会参考文件夹下的所有图片进行图片生成,比如下图中,文件夹中有4张图,设置Stable Diffusion生成1批,每批1张图的情况下,Stable Diffusion会参照文件夹中的每一张图进行生成,最终生成4张图。

|----------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------|
| 单张图片 | 批量处理 | 多张上传 |
| | | |

上传图片的右下角有4个小按钮,其功能分别是:

  • 画布:可以新建一个画布,然后使用画笔进行涂鸦绘画。

  • 开启摄像头:可以拍摄一张照片,然后读取照片上的信息特征。

  • 镜像摄像头:开启镜像。

  • 将当前图片尺寸信息发送到生成设置:可以读取到上传的图片的分辨率大小,宽度和高度。

3、启用、低显存模式、完美像素模式、允许预览、高效子区蒙版
  • 启用:

    • 如果要使用Controlnet控制单元,则需要勾选该按钮。启用后Controlnet的控制单元才会起作用。

    • 如果需要使用多个控制单元,则需要使用的每一个控制单元都需要勾选上该按钮。

  • 低显存模式:Controlnet在使用时会额外消耗显存资源,当电脑配置不足时,会存在爆显存问题。勾选后可以降低显存的使用,但是会增加生成图片的时间。(当显存不够8GB的时候可以考虑打开)

  • 完美像素模式:提取的特征参考图,也会有分辨率,特征图的分辨率也会影响生图效果。在该模式出来之前可以通过"预处理器分辨率"来调整特征图的分辨率,值越大提取的特征越详细。完美像素模式会自动计算生成特征图的最佳分辨率。

  • 允许预览:勾选后会展示出提取的特征图。

  • 高效子区蒙版:就是让你像"分块涂色"一样控制生成的图片。可以把画布分成几块,每块单独写提示词。举个栗子🌰:画"左边沙漠+右边雪山+中间站只熊猫",用蒙版分三块分别写提示词,AI就不会把熊猫画到天上,或者沙漠和雪山糊在一起了。

4、预处理器、模型

Controlnet可以提取图片特征,而预处理器就是用来提取图片特征的。

模型是为了让Stable Diffusion知道如何去识别和理解特征图。

特征图和模型需要对应上才能发挥效果。

5、控制类型

Controlnet的预处理器和模型需要匹配才能正常生成图片。然而Controlnet的预处理器和模型种类非常的多,如何才能正确选择预处理器及其相应的模型是个难题。控制类型的出现就是将预处理器进行分类,并且为每个分类下匹配正确的模型。当选择好预处理器后会自动匹配模型。

有关控制类型的详细功能及使用后续再介绍。

6、控制权重&引导介入时机&引导终止时机
  • 控制权重:决定Controlnet对图片生成结果的影响程度。值越大则Controlnet对SD的生图效果影响越大。

  • 引导介入时机:与迭代步数有关。假设数值为x,则表示Controlnet在迭代步数*x的时候开始介入,再此之前Controlnet对生图无影响。从迭代步数多少步时Controlnet开始起作用。

  • 引导终止时机:代表Controlnet在多少步之后结束介入。从迭代步数多少步时Controlnet停止起作用。

7、控制模式

当绘画提示词与Controlnet产生冲突时,控制模式可以用来调节冲突。

  • 均衡:提示词与Controlnet并重。实际上更偏Controlnet一点。

  • 更偏向提示词:生成的图片受到提示词的影响更大。

  • 更偏向Controlnet:生成的图片受到Controlnet的影响更大。

8、缩放模式

上传的图片分辨率与生成的图片的分辨率不一样时,可以使用缩放模式来解决Controlnet图片分辨率与基础设置中分辨率不同的情况。

  • 仅调整大小:把参考图强行拉成你设定的尺寸,不管比例是否变形。可以快速填满整个画面不留空白,但是会造成生成的图片严重扭曲。

  • 裁剪后缩放:先一刀切掉参考图多余的部分,再缩放到目标尺寸。可以保证生成图内容不变形,但可能丢失重要信息(如砍掉人脸、关键物体)。

  • 缩放后填充空白:先按比例缩放参考图,再在空白处补上AI生成的内容(或黑边)。可以保证参考图内容不变形,且画面不留黑边。但填补区域可能会风格突兀。

相关推荐
高效匠人4 分钟前
强化学习-深度学习和强化学习领域
人工智能·深度学习
聚客AI5 分钟前
AI大模型应用实战之GPU加速实战:手把手教你配置TensorFlow/PyTorch深度学习环境
人工智能·python·掘金·日新计划
机器之心7 分钟前
冲击自回归,扩散模型正在改写下一代通用模型范式
人工智能
Cloud Traveler15 分钟前
智能测试新范式:GenAI 与 Playwright MCP 如何重塑 QA 流程
人工智能
别烦姐在搞大模型19 分钟前
一文带你 "看见" MCP 的过程,彻底理解 MCP 的概念
人工智能
用户7112839284726 分钟前
LangChain(三) LCEL
人工智能·langchain
GeGarron29 分钟前
AI N8N 技术文档
前端·aigc
愚农搬码38 分钟前
SpringBoot集成Milvus向量库实现CRUD
数据库·人工智能
AI大模型知识41 分钟前
如何微调推理大模型?以Qwen3/DeepSeek-R1为例
人工智能·llm
于齐龙43 分钟前
什么是AI芯片?
人工智能