赞
踩
炼丹师在AI绘画的过程中,由于Stable Diffusion的原理是水滴式的扩散作图原理,其实在前面也有提到,他的发挥是‘不稳定’的,因为你没有办法做到精确控制,只能说是大致符合你的预期。你不能总依赖抽卡+固定随机数种子的方式来寻找你满意的结果,那样太耗时,所以有必要深入研究下ControlNet 的使用方法,做到精确控图,满足你生产的需求。
如果想对图做精准控制,那就需要使用ControlNet 告诉AI 你想绘制的东西答案有哪些表定量的部分,因为有的东西通过文生图与图生图无法准确表达。简单介绍下 ControlNet。
ControlNet 种类很多,目前我使用过的差不多有20种。而且不同ControlNet彼此可以相互组合,而且不仅限于两两相互组合,如果显存够好,组合3-5个也没有问题。我先说下我用的比较多的几个ControlNet:
就是检测pose 的,我希望检测一个pose 来让AI作图。比如:
描述前后关系,有颈深的概念在里面,其实就是描述 Z 方向的关系,比如手在头的前还是以后面。
Canny是一种硬边缘检测模型,用于提取图片中的边缘信息,生成对应的轮廓线稿图。
它能够很好地识别图像内各对象的边缘轮廓,生成的线稿图较为精细且边缘清晰。
在图像生成过程中,可以通过Canny模型提取参考图片的线稿,再基于该线稿和提示词生成具有相同轮廓结构的新图。常用于需要精确控制图像轮廓的场景,如人物、物体等的轮廓重建。
SoftEdge是一种软边缘检测模型,也是用于提取图片中的边缘信息,但与Canny不同,它生成的边缘更为柔和。
SoftEdge模型提供了多种预处理器选项,如softedge_hed、softedge_hedsafe、softedge_pidinet等,这些预处理器在处理边缘时具有不同的效果和质量。
在图像生成中,SoftEdge模型可以生成更自然的边缘效果,适用于需要保留更多细节且不希望边缘过于生硬的场景。
通过SoftEdge提取的线稿图,可以在后续的图像着色和风格化过程中获得更加自然的视觉效果。
Sketch(或Scribble)模型用于处理涂鸦或草图形式的输入,并基于这些输入生成图像。
它支持从参考图中提取涂鸦信息,也支持在空白画布上直接手绘涂鸦作为输入。
在艺术创作和设计中,Sketch/Scribble模型提供了一种自由度更高的图像生成方式。
用户可以通过手绘草图来表达自己的创意,然后利用Sketch/Scribble模型将这些草图转化为具体的图像。这种方式特别适用于需要快速迭代和试错的场景,如概念设计、草图渲染等。
我们先看看上面的生成效果,注意这里还是要和提示词,图生图等一起结合使用。
one girl,standing near the sea,
(masterpiece:1,2),best quality,masterpiece,highres,original,extremely detailed wallpaper,
下载embeddings 直接填写, 内容: BadDream UnrealisticDream.,easynegative,ng_deepnegative_v1_75t,negative_hand,
找一个类似写真的底膜就行,我这里用了随便选了一个写真底膜。
还是挺不错的,我个人比较偏向第三幅图片。通过 controlnet 的精细化控制,结合promption及对的底膜,及embeddings,还是比较好的还原出了我想要的场景和人物。
下面的sketch 生成的画面:
脸部有点问题,重新矫正下,为了减少出图时间,我直接用图生图生成,promption 加强了下对face 的描述:
(radiant beautiful face:1.22)
手的姿势不太对,再调整下:
raise left hand diagonally upwards towards the sky,
当然对于controlNet的使用,正如上面所说,他只是构图中的一环,其他promption,底膜,图生图原图等都是AI 作画需要考虑的因素,因此,如果你试图在图生图中,使用一个infomation 不太够的图片,而又妄图想从controlnet 中补充时,你要特别注意,通常来讲,图生图的原理还是脱离不开底图。比如,在上面的例子中,你使用上一次我上次使用的一张深渊橘的底膜绘制的AI,保持上面设置不动,出图结果是这样:
看着还是挺舒服的,但是你看到了,你设置的pose 完全没体现出来,为什么?因为图生图,就是要依据你的原图,你通过controlnet 做动作调整这些是没有问题的,但是你最好不要试图通过它去完成一些原图没有的场景,那样的话,你最好还是用文生图比较好。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。