本次视频的主要内容是在stable delusion中如何巧妙的使用多个control net,也就是multi controller,实现对画面的精准控制。本期视频以以景观效果图为例,经过不断的研究试错,对control net进行排列组合,调节了很多参数,整理出了目前比较简单高效的傻瓜流程,实现你想得到的图片效果。话不多说,我们直接进入正题。呃,首先我们需要从c站获取景观建筑相关的s d模型,也就是顶模型以及我们的laura模型。进入到c站的主界面,我们可以看到在上方有一个包含不同类别以及不同领域模型的分类。
在这里面我们需要寻找景观以及建筑的s d模型,以及风格化的laura。然后如果大家感兴趣的话,呃,可以寻找一些自己喜欢的风格的模型。我就随便用前面下载量比较扣钱的模型给大家做演示。然后我们点进去可以看到呃模型的相关的剪辑信息、饭图及下载链接。然后包括它是基于那个s d版本训练出来的其他的一些触发词等等。然后我们回到上一页。
寻找一下风格化的laura模型。然后这里我们点进去可以看到它的相关的信息,也是下载链接啊。然后通过饭图我们也可以看得出这种laura它的画风具体是怎么样的。然后下载好后,我们来到stable diffusion的文件夹中,给下载好的模型拖入到对应的文件夹。我们来到这个有启动器目录的文件夹下,然后找到models文件夹,点开,然后找到对应的laura文件夹以及stable diffusion文件夹,存放刚才下载好的模型文件。然后这里面已经是我之前下载好的。
嗯,这里大家记得千万不要弄混模型的类别。一般stable diffusion的模型文件都比较大,可能要两个g到七个g左右。然后拉尔模型一般就比较小,可能几十兆、几百兆。然后我们开始运行stable diffusion找到这个启动器。双击进入,然后检验一下我们刚才导入的模型是否导入成功。这里有个模型管理,我们点开可以看到不同类别的模型都在这里。
然后找到我们刚才下载好模型的名字,可以确定我们的stable diffusion模型和lower模型都已经成功导入。然后确定没有问题了之后,我们使用一键启动。呃,然后在启动的过程中,简单跟大家说一下这个安装包的问题。这个东西不需要你去呃通过一些渠道去购买,很多大佬都是免费分享最新的安装包以及整合包及相关的资源。嗯,然后这里加载完了就会自动跳转到stable diffusion web u i的网页界面。然后在这里简单的跟大家做一下页面的介绍。
左上方的这个是stable diffusion模型的下拉菜单,然后这两个文本框是正面和负面的tag,也就是提示词。然后是采样的迭代步数以及各种各样的采样方法。嗯,在视频后面我会跟大家简单的说一下。如果想深入的了解原理的话,可以去搜索这些相关的视频。根据大家的反馈,我也可以专门出一期视频讲解。然后是图的宽高c f g提示词相关性种子以及一些其他的脚本和插件。
然后我们使用文胸图做演示,打开下拉菜单,选择刚才下载好的stable diffusion模型,这边的v a e暂时选择无。然后是输入正面和负面的提示词,这里我就随意的粘贴了几个比较常用的提示词。然后我们复制进去。大家可以看到这个里面lord的提示词也附加进去了。这个东西是怎么来的呢?我们先把它删掉,然后在右边这里中间的这个按钮点开之后,我们可以看到有lower的选项。然后在里面找到我们刚才下载画风的laura模型,然后点击这个law,就会应用在正面的提示词中。
啊,默认的权重是一,这里我们改动一下,调成零点六。然后是迭代步数啊,这里的迭代步数呢一般人物绘制的话二十到三十就可以了。然后景观以及建筑这些可以适当的调高,这里我就使用了四十。然后是采样方法,前面的这几种采样方法一般偏向绘制平面的内容使用较多。然后这里我们选择后面的这种d p m加加s d carrots的采样方法。然后这个宽度和高度选择我们想要出图的高,这里我就用之前的图片给大家做一下演示。
然后打开图片,右键图片的详细属性,就可以看到图片的宽度和高度了。这里简单的跟大家说一下。图片的宽度和高度呃和种子是一样的道理,它也会在很大的程度上影响图片内的内容。然后提示词相关性我们一般用默认的就好。这里我使用了八,然后开启随机种子。我们可以简单的看一下不使用任何插件的情况下,仅仅依靠描述词跑出来的图是什么样子。
在这里我加速一下。图跑出来了。然后这时候小伙伴们可能说了,这图也不是我想要的。嗯,如果我想精确控制图中的元素,包括它的构图、轮廓、形状、透视等等等等这些要素,总不能一张一张的通过随机抽卡这种方式来获取吧。所以今天的重点来了,就是我们想实现精确控制,强大的control net插件。话不多说,我们直接进入今天的实操环节。
首先我们打开想要获取场景效果图的模型,在这里我使用的是一个民宿的sketch up模型。看到这儿可能很多学设计的小伙伴觉得这东西我熟啊。没错,今天我们要用到的就是s u中的一键通道图。导出我们想要的图,然后在stable diffusion中的controller插件里面进行控制。然后我选择了一个我比较满意的视角,导出当前视角下的图层颜色、材质颜色、线框及轮廓等图层。在这个过程我就给大家加速跳过了。
接下来我们将刚才s u导出的通道图进入到p s中,嗯,获取当前场景的一个线框轮廓图以及一个语义分割的图。这张语义分割图来源于b站up主大江户战士分享的,由他自己整理翻译的stable diffusion的语义分割中每种颜色所对应的物体的名称。呃,在这里我根据我自己图中的当前场景的内容进行了一个简单的绘制。接下来我们将绘制好的图片进行导出,这里需要注意的是,导出之前应该调一下图像大小。因为如果图像的分辨率过大的话,在stable diffusion中跑图会特别特别的慢,这里可以适当的缩小一下。接着我们进入到stable diffusion下面的control net插件里面,将我们刚才导出的轮廓图拖入进来,点击启用。
此时若是白色背景的图片,我们需要勾选反色模式。然后勾选低显存优化。这里我们预处理器选择canny,模型也选择对应的kenny。然后我们把它的权重可以适当适当的调整一下,在这里我们权重设置为一点三。我们可以适当的调高一下分辨率,看一看识别出来的预处理结果是什么样的。我们可以看到呃,图片已经的边缘轮廓被识别出来了,我们可以再调高一下分辨率。
好,我觉得这张图就差不多可以用了。接下来我们开始生成图片,这个过程就给大家快速跳过了。我们可以看到生成出来的图片在control net插件中的kenny模型,也就是基于轮廓的精准控制之下,已经较好的还原了我们模型的场景。如果你是刚刚安装controller的插件后,这个位置默认只能应用一个模型。这时候我们来到右上角的设置中,打开control net扩散控制网络设置。然后我们把多网络联合扩散控制multi control net的最大网络数量调至三。
这样我们就可以同时使用三个control net模型来更为精确的控制我们图片中的内容。大家做完这一步时,记得要保存设置之后重启web u i。然后我们回到control net插件处这里的第二个模型,我们选用深度识别导入一张还算比较立体的图片作为参考,依然是勾选启用和低显存优化。预处理器中我们选择深度信息估算对应的模型,我们选择depth。选择之后,我们可以看一下深度信息估算的预处理结果。效果还是不错的。
我们在适当的调节一下深度信息估算的control net控制权重。control night的第三个模型,我们选择使用语义分割图像进行控制。我们将刚才在p s中制作的鱼分割图像导入进control net中。这里同时选择启用和低显存优化。预处理器我们选择无。模型我们选择使用sag也就是语义分割模型。
最后我们预览一下预处理的结果。在这里我们可以看到预处理器选择无的情况下出现的预处理结果和我们导入的图片是一模一样的。这里的预处理器之所以选择无而不使用语义分割,是因为这张语义分割的图像是我们根据stable diffusion内置的语义分割对应的颜色精准绘制出来的模式图。不需要再使用预处理器让stable diffusion进行语义分割的分析了。比如我此时导入一张其他的图片,预处理器勾选语义分割,我们看一下效果。我们可以看出stable diffusion对图片中的内容进行了语义分割,但是由于不够精确,所以无法实现我们想达到的效果。
这也就是我们之前在p s中绘制一张精确的鱼分割图像的原因。我们继续之前的步骤,将我们绘制的语义分割图像导入进来。预处理器选择五。我们可以调节一下control net中语义分割的权重。在确定三个control net模型都已经正常应用的情况下。我们可以继续生成图片。
此时我发现之前图片的效果不错,所以我打算继续沿用上一次生成图片的种子。接着我们开始生成图片。此时应用了三个control net的模型控制,所以生成图片的时间比较长,在这里给大家快进一下。我们可以看出,在三种不同的control net模型的共同控制之下,使我们的图面得到了更加精细的人为控制,更贴近我们所预想的场景。nice. 接下来为大家演示一下利用图生图模式下control night同样的控制流程。这里我们将刚才的正面和负面的tag都复制到图生图的模式下。
然后导入较为立体的一张场景图,作为图生图的底图。在实际应用的过程中,如果我们已经得到了这样的一张图片,那么我们可以直接使用图生图,也就是我们常说的电图的模式来进行图片的生成。这里的采样迭代步数,我们仍然采用四十度。然后和之前同样的采样方法,宽度和高度也调整好。然后这里的重绘幅度我们可以先试验一下。我们可以看到生成的图片很大程度的偏离了我们的底图,这是因为我们的重绘幅度过高导致的。
这里我们调低再试验一下。我们可以看出,将重绘幅度调低之后,虽然与我们之前的底图极为相似,但是也基本上没有什么重绘的痕迹。所以重绘幅度的这个值,我们不太容易去调整到一个很好的数值,生成我们满意的效果。这时我们就可以继续在图中图的模式下,利用我们的control net控制插件来进行控制。这里的操作和之前在文生图剩下三个control net的共同控制是一样的。在这里我就给大家快进。