哈喽,大家好,我是强哥。
今天继续给大家分享Stable Diffusion ControlNet模型的使用方法,今天分享的是Depth模型,NormalMap模型和OpenPose模型,还没读过前文的可以看历史文章。
Ai绘画工具,Stable Diffusion ControlNet使用攻略(一)
Ai绘画工具,Stable Diffusion ControlNet使用攻略(二)
一、Depth模型介绍
1、模型功能
-
Depth模型的主要功能是捕捉画面深度,获取图片前后景关系。
-
图像当中只有黑白二色,图片颜色越浅的区域,代表距离镜头越近;图片越是偏黑色,则代表这部分区域距离镜头越远。
2、使用方法
与Canny类似,Depth的正确用法是保持ControlNet的参数不变的情况下,修改提示词,Lora,大模型或者各种其它参数。
-
与Canny相比之下,Canny提取线稿之后,线稿将会根据线条结构进行绘制,背景将会更改。
-
那么Depth的作用到底是什么?其实就是前后景关系会与原图完全一致,Depth将会严格根据生成的深度图去生成图像。
-
无论是室内还是室外,都将会在与原图前后景位置信息差不多的地方生成相关物体。我们看到原图人物与背景的距离差不多是两三米左右,那么提取出深度图之后引导生成,距离也会依照该距离去生成
3、其它算法效果
我们上面使用的深度模型里的Midas深度图估算算法,此外还有Anything,Hand_refiner,Leres,Leres++,Zoe等算法
不同的算法生成的深度图会有所差别,常用的四种算法具体效果如下:
-
depth_leres预处理器的成像焦点在中间景深层,这样的好处是能有更远的景深,且中距离物品边缘成像会更清晰,但近景图像的边缘会比较模糊。
-
depth_leres++预处理器在depth_leres预处理器的基础上做了优化,能够有更多的细节,包括近景也会更清晰点。
-
depth_midas预处理器是经典的深度估计器,也是最常用的深度估计器,背景很远,几乎没有提取到什么细节,近景也比较模糊,但这样可以给ControlNet更多的发挥空间。
-
depth_zoe预处理的深度预估与depth_midas类似。
二、NormalMap模型介绍
1、模型功能
NormalMap 算法根据输入图片生成一张记录凹凸纹理信息的法线贴图,通过提取输入图片中的3D法线向量,并以法线为参考重新生成一张新图,同时给图片内容进行更好的光影处理。法线向量图指定了一个表面的方向。在ControlNet中,它是一张指定每个像素所在表面方向的图像,法线向量图像素代表的不是颜色值,而是表面的朝向。
NormalMap算法的用法与Depth算法类似,都是用于传递参考图像的三维结构特征。NormalMap算法与Depth算法相比在保持几何形状方面有更好的效果,在深度图中很多细微细节并不突出,但在法线图中则比较明显。
法线贴图在游戏制作领域用的较多,常用于贴在低模上模拟高模的复杂光影效果,非常适合CG建模师。
2、模型界面
我们勾选上面红色框中的按钮,点击“生成”即可获得右侧的引导图片
3、使用方法
与上面的模型使用方法类似,我们只需要选择想要的预处理器和模型,就可以引导ControlNet生成图片了。预处理器的算法分为:normal_bas和normal_midas
在不改变任何其它参数的前提下,我们对比一下这两个预处理器的效果。我们先看他们生成的预处理器结果:
我们可以看到normal_bae的表现效果相对好点,预览图整体比较柔和,景深也表现出来了。
normal_midas则表现的颜色更加鲜艳,线条有棱有角,景深直接抹去了。
4、生成效果对比
接下来我们再看下两种算法引导生成的效果图,为看出不同效果,我们换一个人物Lora,除了算法其它参数保持不变。
(extremely detailed CG unity 8k wallpaper),(masterpiece),(best quality),(ultra-detailed),(best illustration),(best shadow),(photorealistic:1.4),1girl on street,beautiful face,big eyes,Kpop idol,((knitwear)),(grey hair:1.1),collarbone,(medium breasts),(looking at viewer,parted lips,smile),upper body,lora:zny\_10:0.7
-
normal_bae预处理器用于估计法线贴图,重点是解决了aleatoric不确定性问题,对图像的背景和前景都进行细节的渲染,这样能够较好完善法线贴图中的细节内容,建议默认使用这个预处理器。
-
normal_midas预处理方法是经典的预处理方法,在NormalMap算法中指的是从Midas方法获得的深度贴图估计法线贴图的过程。法线贴图详细说明了表面的方向,对于ControlNet来说,它决定了图像中每个像素所代表的表面的方向。虽然Midas主要用于深度估计,在ControlNet中,它被用来推导法线贴图,Midas法线图擅长将主体从背景中分离出来。
三、OpenPose模型介绍
1、模型功能
OpenPose算法模型包含了实时的人体关键点检测模型,通过姿势识别,能够提取人体姿态,如人脸、手、腿和身体等位置关键点信息,从而达到精准控制人体动作。除了生成单人的姿势,它还可以生成多人的姿势,此外还有手部骨骼模型,解决手部绘图不精准问题。
2、模型界面
我们勾选上面红色框中的按钮,点击“生成”即可获得右侧的引导图片
3、使用方法
OpenPose算法一共有六种预处理器,分别是OpenPose,OpenPose_face,OpenPose_faceonly,OpenPose_full,openpose_hand,dw_openpose_full。
每种OpenPose预处理器的具体效果如下:
注:为方便演示人物骨架,我们换一张全身图
(1)OpenPose预处理器效果
OpenPose预处理器是OpenPose算法中最基础的预处理器,能够识别图像中人物的整体骨架(眼睛、鼻子、眼睛、脖子、肩膀、肘部、腕部、膝盖和脚踝等),效果如下图所示:
(2)OpenPose_face预处理器效果
OpenPose_face预处理器是在OpenPose预处理器的基础上增加脸部关键点的检测与识别,效果如下所示:
(3)OpenPose_faceonly预处理器效果
OpenPose_faceonly预处理器仅检测脸部的关键点信息,如果我们想要固定脸部,改变其他部位的特征的话,可以使用此预处理器,效果如下图所示:
(4)OpenPose_full预处理器效果
openpose_full预处理器能够识别图像中人物的整体骨架+脸部关键点+手部关键点,是一个非常全面的预处理器,其效果如下所示:
(5)openpose_hand预处理器效果
注:为方便手部的呈现,我们换一张清晰的人手部照片。openpose_hand预处理器能够识别图像中人物的整体骨架+手部关键点,效果如下所示:
(6)dw_openpose_full预处理器效果
dw_openpose_full预处理器是目前OpenPose算法中最强的预处理器,是OpenPose_full预处理器的增强版,使用了传统深度学习中的王牌检测模型yolox_l作为人体关键点的检测base模型,其不但能够人物的整体骨架+脸部关键点+手部关键点,而且精细程度也比openpose_full预处理器更好,其效果如下图所示:
写在最后
AIGC技术的未来发展前景广阔,随着人工智能技术的不断发展,AIGC技术也将不断提高。未来,AIGC技术将在游戏和计算领域得到更广泛的应用,使游戏和计算系统具有更高效、更智能、更灵活的特性。同时,AIGC技术也将与人工智能技术紧密结合,在更多的领域得到广泛应用,对程序员来说影响至关重要。未来,AIGC技术将继续得到提高,同时也将与人工智能技术紧密结合,在更多的领域得到广泛应用。
感兴趣的小伙伴,赠送全套AIGC学习资料和安装工具,包含AI绘画、AI人工智能等前沿科技教程,模型插件,具体看下方。
一、AIGC所有方向的学习路线
AIGC所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。
二、AIGC必备工具
工具都帮大家整理好了,安装就可直接上手!
三、最新AIGC学习笔记
当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
四、AIGC视频教程合集
观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
五、实战案例
纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
![](https://img-blog.csdnimg.cn/img_convert/671f981898cbc6c4e2977e391f5c4464.png)