当前位置: 首页 > news >正文

Stable Diffusion进阶之Controlnet插件使用

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

  • 爆肝整理!Stable Diffusion的完全使用手册(一)
  • 爆肝整理!Stable Diffusion的完全使用手册(二)
  • 爆肝整理!Stable Diffusion的完全使用手册(三)
  • 爆肝整理!Stable Diffusion的完全使用手册(四)

一、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生成的内容(或黑边)。可以保证参考图内容不变形,且画面不留黑边。但填补区域可能会风格突兀。

 

相关文章:

  • HTML属性
  • Lambda表达式解读
  • C++进阶--AVL树的实现续
  • MCP:让AI模型更可信的秘密武器
  • VRRP协议-IP地址冗余配置
  • Telnetlib三种异常处理方案
  • 微服务的“迷宫” - 我们为何需要服务网格?
  • 深入详解人工智能数学基础——微积分中的自动微分及其在PyTorch中的实现原理
  • 类加载机制详解:双亲委派模型与打破它的方式
  • MindSpore框架学习项目-ResNet药物分类-模型训练
  • 人脸真假检测:SVM 与 ResNet18 的实战对比
  • Yocto中的${D}解读
  • Android 13 默认打开 使用屏幕键盘
  • 使用FastAPI和Apache Flink构建跨环境数据管道
  • vue3项目中使用CodeMirror更复杂的用法,实现自定义语法模式,手动在指定光标位置插入/获取/替换/绑定文本
  • 达索MODSIM实施成本高吗?哪家服务商靠谱?
  • C++修炼:stack和queue
  • python校园新闻发布管理系统
  • 【Web】使用Vue3开发鸿蒙的HelloWorld!
  • uniapp-商城-51-后台 商家信息(logo处理)
  • 多地再发网约车从业及投资风险提示:避免盲目花费大笔资金“购车”入行
  • 被取消总统候选人资格,金文洙:将采取政治法律措施讨回公道
  • 图集|俄罗斯举行纪念苏联伟大卫国战争胜利80周年阅兵式
  • 越怕出错越会出错,“墨菲定律”的魔咒该怎么破?
  • 成都公积金新政征求意见:购买保障性住房最高贷款额度上浮50%
  • 暴雨及强对流天气黄色预警已发布!南方进入本轮降雨最强时段