Ai绘画工具,Stable Diffusion ControlNet使用攻略(三)

文摘   科技   2024-04-28 23:19   广东  

哈喽,大家好,我是布丁仔。

今天继续给大家分享Stable Diffusion ControlNet模型的使用方法,今天分享的是Depth模型,NormalMap模型和OpenPose模型,还没读过前文的可以看历史文章。

Ai绘画工具,Stable Diffusion ControlNet使用攻略(一)

Ai绘画工具,Stable Diffusion ControlNet使用攻略(二)

一、Depth模型介绍

1、模型功能

  • Depth模型的主要功能是捕捉画面深度,获取图片前后景关系。
  • 图像当中只有黑白二色,图片颜色越浅的区域,代表距离镜头越近;图片越是偏黑色,则代表这部分区域距离镜头越远。

2、模型界面

我们按上图勾选和点击相关按钮,就“生成”上图的预览处理结果了。

3、使用方法

与Canny类似,Depth的正确用法是保持ControlNet的参数不变的情况下,修改提示词,Lora,大模型或者各种其它参数。

原图

Depth

引导生成

更换Lora引导生成

  • 与Canny相比之下,Canny提取线稿之后,线稿将会根据线条结构进行绘制,背景将会更改。
  • 那么Depth的作用到底是什么?其实就是前后景关系会与原图完全一致,Depth将会严格根据生成的深度图去生成图像。
  • 无论是室内还是室外,都将会在与原图前后景位置信息差不多的地方生成相关物体。我们看到原图人物与背景的距离差不多是两三米左右,那么提取出深度图之后引导生成,距离也会依照该距离去生成

4、其它算法效果

我们上面使用的深度模型里的Midas深度图估算算法,此外还有Anything,Hand_refiner,Leres,Leres++,Zoe等算法

不同的算法生成的深度图会有所差别,常用的四种算法具体效果如下:

原图

depth_leres

depth_leres++

depth_midas

depth_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

我们可以看到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引导生成

normal_midas引导生成

  • 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算法中最基础的预处理器,能够识别图像中人物的整体骨架(眼睛、鼻子、眼睛、脖子、肩膀、肘部、腕部、膝盖和脚踝等),效果如下图所示: 

原图

OpenPose

引导生成

更换Lora引导生成

(2)OpenPose_face预处理器效果

OpenPose_face预处理器是在OpenPose预处理器的基础上增加脸部关键点的检测与识别,效果如下所示: 

原图

OpenPose_face

引导生成

更换Lora引导生成

(3)OpenPose_faceonly预处理器效果

OpenPose_faceonly预处理器仅检测脸部的关键点信息,如果我们想要固定脸部,改变其他部位的特征的话,可以使用此预处理器,效果如下图所示:

原图

OpenPose_faceonly

引导生成

更换Lora引导生成

(4)OpenPose_full预处理器效果

openpose_full预处理器能够识别图像中人物的整体骨架+脸部关键点+手部关键点,是一个非常全面的预处理器,其效果如下所示:

原图

openpose_full

引导生成

更换Lora引导生成

(5)openpose_hand预处理器效果

注:为方便手部的呈现,我们换一张清晰的人手部照片。openpose_hand预处理器能够识别图像中人物的整体骨架+手部关键点,效果如下所示:

原图

openpose_hand

引导生成

更换Lora引导生成

(6)dw_openpose_full预处理器效果

dw_openpose_full预处理器是目前OpenPose算法中最强的预处理器,是OpenPose_full预处理器的增强版,使用了传统深度学习中的王牌检测模型yolox_l作为人体关键点的检测base模型,其不但能够人物的整体骨架+脸部关键点+手部关键点,而且精细程度也比openpose_full预处理器更好,其效果如下图所示:

原图

dw_openpose_full

引导生成

更换Lora引导生成


我建立一个AI交流群,如果对AI感兴趣的可以在公众号后台回复:Ai获取进群方式。


我会在群里不定期分享AI方面的前言信息和使用教程。目前已整理发布的资料如下:

欢迎你的加入

布丁AIGC
原布丁Ai绘画,分享AI绘画壁纸,AI绘画工具Stable Diffusion相关教程,Sora相关资讯,Stable Video内容,ChatGPT教程,Kimi使用教程等,后台回复数字「1」获取AI绘画工具,私信获取AI绘画原图~
 最新文章