我的专栏《AI绘画与AIGC实践之路!》
最近已经用三篇文章介绍了ControlNet模型,如果你打算长期参与AI绘画,这个功能一定要重视,只有熟悉各个参数的设置,各个模型的适用场景,后期才能把创意想法更好地实现。如果放弃了这个功能的学习,后续会越来越跟不上技术的发展。
《AI绘画最强模型:基于ControlNet实现图像扩散控制!》
《AI绘画:如何在WebUI中安装ControlNet模型》
我们已经看到随着ControlNet功能的推出,AI绘画进入了精确控制阶段,近日ControlNet又升级了多重检测控制的功能,也就是你可以对多张图片使用ControlNet控制,或者对同一张图片使用不同的ControlNet边缘检测控制。这样现在就可以更加精准的控制画面中的不同内容,前景和背景可以分别精确控制生成,主角1和主角2可以分别控制生成,同一个主角可以用不同方式多重控制。由于这次升级新增的功能和参数太多,这篇文章就先介绍一下试用过的几个功能。首先需要进入扩展页,手动升级ControlNet插件,或自动检测升级所有插件,升级完成后重启WebUI界面。重启后进入设置-ControlNet,设定多重控制的数量,暂时先设为2吧,目前最高可以设为10,也就是可以分别控制10个图像,设置完后重启WebUI界面。重启后会看到出现了两个ControlNet面板,并且ControlNet的控制界面也有了较大的改动,新增了多项实验型内容,包括基于 CFG 的 ControlNet、猜测模式、Multi-ControlNet / 联合调节,具体可以看项目页的介绍。注意如果使用的是Automatic1111界面,会发现ControlNet的模型也增加到了11个,这篇文章先介绍一下其中新增的Depth_leres模型,简单说此模型可以快速生成深度图,并且通过调整两个参数还可以实现去背景的效果。
在切换到Depth_leres模型后,下面会出现两个控制条,一个是Remove Near,一个是Remove Background,下面看一下设置不同的参数的效果。默认参数下,直接生成下面这样的深度图,可以看到灰色部分是部分发生改变,白色部分改动较少。
通过改变这两个参数,可以控制深度图起作用的范围,也就是一个控制前景的影响范围,一个控制背景的影响范围。当图像的前景和背景差别较大时,使用这个模型可以快速去掉背景,从而更好的叠加到其他图像上。下面我们来重点体验一下新增的多重控制联合调节功能。特别提示:如果无法生成多个图片混合的效果,记得调整多个模型的权重,权重会极大地影响最终效果。分别设定前景和背景不同初始图的ControlNet模型,下面是我的两个画面的设置参数。前景人物使用OpenPose模型,特别注意权重设的比下面一项背景权重高一些。通过调整不同参数、提示语、权重,更换前景人物,生成不同的效果。除了前面介绍的通过参数控制两张图叠加效果,还可以使用深度模型直接去掉第一张前景人物的背景,再叠加第二张背景图片。同样可以实现类似的结果,而且更方便,也就是说现在没有固定的方法,任何可以实现目的的功能组合都可以尝试。
这里我用两个图像,分别调整不同的权重,看一下最终生成的效果。
上面是两张原始图,作为前景的人像使用Openpose模型,作为背景的建筑使用深度模型。下面不改变人像的权重,只改变建筑的权重,看一下效果。
可以看到随着权重的提高,背景图的影响越来越强,注意建筑物原图中前面有绿植,这个绿植在不同的权重下表现很明显。灵魂画手又上线了,这个例子都采用Scribble模型,左右各画一只宠物。看来我的画技还行,AI能认出来哪只是猫,哪只是狗。希望你的画技也还行,否则画的AI都不认的话,可能最终生成的是两只猫或两只狗,实在不行还是找两张真实宠物的照片生成吧。手绘能力不强也可以老老实实找张照片,这张是手绘猫使用Scribble模型,叠加一张坐姿人像使用Open Pose模型。
四、多角色控制
和上一步基本类似也是分别控制两个角色,但都启用Open Pose模型,控制两个人的位置,通过权重改变不同人的内容。
最终可以分别改变不同人的形象,如果打开更多的ControlNet,还可以尝试同时改变背景和控制更多人物,有没有感觉你仿佛就是导演,正在控制AI世界的不同虚拟演员各就各位。
使用多种ControlNet模型对同一主角进行重绘,可以使结果更加稳定和精确。本例中我同时使用了Openpose和Canny模型生成人像。可以看到结果更加稳定,注意人像的酒窝都完美再现。这一方法如果用在视频生成上,可能将使视频成像更平滑,这个有待实践。
最后的话:这篇文章就先到这里了,由于参数较多,模型组合也多,试验的次数还太少,更多可能的应用有待大家一起发掘和想象。
《2023 AIGC技术学习之路专栏》
欢迎您的加入!
根据你的喜好,推荐阅读以下AI绘画内容:
喜欢请把这篇文章转发到朋友圈支持一下!