SD图像生成及图片处理(二)
Controlnet概念
在StableDiffusion模型中,Controlnet是一个辅助网络,它的作用是提供更高级别的控制能力。StableDiffusion的基础是:Diffusion网络,它可以生成图片。但是生成的图片缺乏细致控制-你可以指定一个文本提示,但无法精确控制图片的构成要素,像姿势、颜色、构图等。这就是Controlnet发挥作用的地方。它提供了额外的输入通道,允许用户指定生成图片的属性、质量和构成。这些额外的输入与 Diffusion网络的正常文本提示一同输入,并融合在一起指导最终的图像生成。
简而言之:Diffusion网络决定“这个图片是什么”,而Controlnet决定“这个图片是什么样子的”。
ControlNet的安装
方法一:打开SD软件点扩展——可下载——-加载扩展列表——–搜索"ControlNet",如果有的话直接安装即可。
方法二:从github官网下载,打开SD软件点扩展——从网址下载;
从网址安装GitHub – lllyasviel/ControlNet: Let us control diffusion models!
方法三:网上下载打包好的,直接放在K:\tools\sd-webui-aki-v4.8\extensions路径下;
打开SD软件点扩展——已安装——勾选controlnet——–应用更改并重启;
ControlNet的UI界面
ControlNet是如何控制的
是通过预处理器control_sd15_canny.yaml, 和模型control_v11p_s15_canny.pth; 所以预处理器和模型一定要对应上。
controlnet模型的命名规则;
线条控制
步骤:
1、添加一个图片到图生图中;让其生成提示词,这种是可以找类似风格的让其生成提示词,也可以手动输入提示词;将生成的提示词拷贝到文生图中【可以通过网上下载图片来获取提示词】;
2、选择ControlNet v1.1.445,选择一幅图片【是根据图片,这个图片相当于控制源来生成线条,再让线条来控生成的输出】;
3、点击运行preprocess,可以看到生成线条的样式式;从而生成新的风格图片;
可以根据CAD图纸生成的双轨小车视图
风格控制
shuffle随机洗牌,可以提取图片的风格;
新增功能 Reference或以控制风格及角色
补充细节以及颜色修复
在图生图时,如果重绘幅度大的话就会跑的没边了,与原图变化特别大,但时如时在controlnet中启用了补充细节以及颜色修复就不会。
通过SD的Controlnet中的Title功能,与脚本SD upscale联合使用,可以使图片放大,而不失真。
不管是在语意分割模式还是openPose的上传的语意分割图或者人体骨架,预处理器选无,再选择模型就可以了。语意分割可以是第三方软件制作好的,然后丢到SD的controlnet中来二次处理;
inpaint图生图
inpaint可以在文生图,图生图,局部重绘…等中使用。
案例步骤
1、选择一幅图片,丢在图生图中,以0.2左右的重绘幅度生成新的图片,重发送到图生图和局部重绘中;
2、在Controlnet中的局部重绘中也发送一份;暂时可以先不启用;
3、在局部重绘中,涂抹需要更换的衣服,蒙板区域内容处理选择原版,重绘幅度不要太大【本例特殊0.9才可以】;
4、重绘是涂抹以后,根据提示词来更换物件和颜色;
5、以同样的方式可以将眼睛、头发、嘴唇、牙齿等都换掉,
6、如果重绘开的很大仍然效果不理想,可以打开Controlnet中的局部重绘,也是需要涂抹相同部位的。相当于两个功能合成;
蒙板工具【segment anything】的下载与安装
将下载的模型放在K:\tools\sd-webui-aki-v4.8\extensions\sd-webui-segment-anything\models\sam路径下;下图是模型的界面;
下图是将下载的模型放在SD的路径界面;
下面是插件的安装地址;只要将这个网址贴到扩展的git仓库网址,点击安装就可以了。安装完毕以后切换到"已安装"界面,点击"应用更改并重启"刷新UI界面就可以了。
操作步骤:对于重绘一些局部的,还是比较有效的。是一个有效的扣图工具。
1、在图生图中添加需要修改的图片
2、在图生图中添加一个需要处理的图片,并选中为局部重绘;
3、segment anything的操作,鼠标左键点击是黑点,表示选中;右键点击表示不想被选中的是红点;而预览分离效果时,白色表示被选中的,黑色是未被选中的。
在提示词中输入"水流,河坝"等字样,再同步一下宽高就可以了。生成效果图;
ADetailer工具的使用,对修复脸部还是不错的。
它是一个可以图片宽高比例不变的情况下进行的一个修复,比如:脸崩它主要原因是因为像素不够,用提示词生成一幅图片,然后再勾选ADetailer对图片进行修复处理;可以输入提示词来处理,可以锁定种子处理;
ControlNet中的MLSD线条
MSLD线条可以将毛坯房产生线条后,再加上合适的模型,加上提示词就可以生成实景模型了。
插画线稿
1、生成插画线稿;2、上色;3、从图片中提取线稿;
插件的安装
1、 github.com/butaixianran/Stable-Diffusion-Webui-Civitai-Helper 这是C站助手;将其克隆下载,它是一个压缩包,解压缩即可。将这个解压后的包剪切到exteensions里即可。
2、open pose 插件的安装;下载过以后是一个sd-webui-3d-open-pose-editer它是一个压缩包,解压缩即可。将这个解压后的包剪切到exteensions里即可。