前言
随着深度学习技术的蓬勃发展,生成对抗网络(GANs)特别是Stable Diffusion(简称SD)在图像生成领域取得了令人瞩目的成果。本教程旨在为广大对SDAI文生图技术感兴趣的学习者提供一个入门级的指南,帮助大家快速上手并掌握这一前沿技术。
#01
/模型选择
AI绘画最重要的是需要清楚自己的创作需求,即自己希望出来的图片是什么风格、什么场景、什么人物等等。
那么我根据需求将模型分为五种类型:
-
官方模型:由Stable Diffusion团队官方出的大模型,也叫底模;
-
二次元模型:模型训练的数据以二次元的素材为主,对于二次元的场景和人物有着针对性的优化,出图效果好;
-
真实系模型:模型训练的数据以实际照片素材为主,对于真实感和人物细节的还原会比其他模型好非常多;
-
2.5D模型:多为混合模型,出来的效果图在二次元的基础上带有真实效果,类似于3D建模;
-
其他模型:其他一些垂直领域的模型,如平面设计、魔幻场景、建筑风格等等;
选择需要使用的模型(底模),这是对生成结果影响最大的因素,主要体现在画面风格上。
所有的AI设计工具,模型和插件,都已经整理好了,👇获取~![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/cdc06e30dc694ef08022458985b80bc4.png#pic_center)
#02
/写关键词
在中,关键词(或称为提示词)可以分为正向(Prompt)和反向(Negative prompt)两种,它们分别用于指导和限制模型生成图像的方向。
1、SD关键词基本规则:
A:关键词之间必须用英文状态下的逗号分割;
B:关键词是可以分行写的,特别是不同性质的关键词:
C:每个关键词的默认权重都是一样的为1,但越靠前的关键词,系统会自动分配更高一级的权重。所以我们在写关键词的时候,应当尽可能将需要突出的特征关键词放在前面位置;
D:关键词的数量并非越多越好。我们在SD中可以看到,关键词框后面有个75的数字,即表明系统默认为最多写75个单词,多出的关键词并不能对系统生成的结果起到明显的作用。
2、关键词中符号的用法:
A:在SD关键词中我们经常用()、[]、<>来设置某个关键词在整体中的权重。
( ):将关键词放在小括号中,表示这个关键词的权重要提升10%即为1.1,小括号最多可以叠加三层((( ))),即表示这个关键词权重提升到1.331。当然更多的时候我们是只用一层小括号,然后在关键词后面加:和权重数字。比如(blue eyes:1.4)这样。
[ ] :将关键词放在中括号内,表示这个关键词的权重要降低10%即为0.9,中括号同样最多叠加三层[[[ ]]]表示这个关键词权重降低到0.729.
{ }:将关键词放在大括号中,也是表示这个关键词的权重会增加,但它的提升幅度要比小括号( )小。一层{ }只能提升5%。
B:< >尖括号的作用主要是在关键词中引入Lora。格式为<Lora名称:Lora文件的触发词:Lora权重>
C:_ 英文状态下的下划线。它通常用在两个关键词之间,表示这两个关键词是紧密联系的。比如 milk,cake两个关键词分开写SD系统会认为是表示牛奶、蛋糕两个品种,而 milk_cake表示牛奶蛋糕,一个品种。
3、控制关键词的生效时间:
在SD的关键词中,有时我们会需要控制某个关键词的生效时间,以控制该关键词特征在整体图片中的比例或权重,这时我们可以将此关键词放入中括号[ ],加:生效时间段比例。比如:forest,tree,stone,bird,[flowers:0.8]
在第上面的框中填入提示词(Prompt),对想要生成的东西进行文字描述在第下面框中填入负面提示词(Negative prompt),你不想要生成的东西进行文字描述。
#03
/参数调整
选择采样方法、采样次数、图片尺寸等参数。
1、采样方法:
•Sampler(采样器/采样方法) 选择使用哪种采样器。Euler a(Eular ancestral)可以以较少的步数产生很大的多样性,不同的步数可能有不同的结果。而非 ancestral 采样器都会产生基本相同的图像。DPM 相关的采样器通常具有不错的效果,但耗时也会相应增加。
◦Euler 是最简单、最快的
◦Euler a 更多样,不同步数可以生产出不同的图片。但是太高步数 (>30) 效果不会更好。
◦DDIM 收敛快,但效率相对较低,因为需要很多 step 才能获得好的结果,适合在重绘时候使用。
◦LMS 是 Euler 的衍生,它们使用一种相关但稍有不同的方法(平均过去的几个步骤以提高准确性)。大概 30 step 可以得到稳定结果
◦PLMS 是 Euler 的衍生,可以更好地处理神经网络结构中的奇异性。
◦DPM2 是一种神奇的方法,它旨在改进 DDIM,减少步骤以获得良好的结果。它需要每一步运行两次去噪,它的速度大约是 DDIM 的两倍,生图效果也非常好。但是如果你在进行调试提示词的实验,这个采样器可能会有点慢了。
◦UniPC 效果较好且速度非常快,对平面、卡通的表现较好,推荐使用。
2、迭代步数:
•Sampling Steps(迭代步数) Stable Diffusion 的工作方式是从以随机高斯噪声起步,向符合提示的图像一步步降噪接近。随着步数增多,可以得到对目标更小、更精确的图像。但增加步数也会增加生成图像所需的时间。增加步数的边际收益递减,取决于采样器。一般开到 20~30。
•不同采样步数与采样器之间的关系:
3、CFG:
•CFG Scale(提示词相关性) 图像与你的提示的匹配程度。增加这个值将导致图像更接近你的提示,但它也在一定程度上降低了图像质量。可以用更多的采样步骤来抵消。过高的 CFG Scale 体现为粗犷的线条和过锐化的图像。一般开到 7~11。CFG Scale 与采样器之间的关系:
4、批次:
•总批次数 每次生成图像的组数。一次运行生成图像的数量为“批次* 批次数量”。
•单批数量 同时生成多少个图像。增加这个值可以提高性能,但也需要更多的显存。大的 Batch Size 需要消耗巨量显存。若没有超过 12G 的显存,请保持为 1。
5、尺寸:
•尺寸 指定图像的长宽。出图尺寸太宽时,图中可能会出现多个主体。1024 之上的尺寸可能会出现不理想的结果,推荐使用小尺寸分辨率+高清修复(Hires fix)。
6、种子:
•种子 种子决定模型在生成图片时涉及的所有随机性,它初始化了 Diffusion 算法起点的初始值。理论上,在应用完全相同参数(如 Step、CFG、Seed、prompts)的情况下,生产的图片应当完全相同。
7、高清修复:
•高清修复
通过勾选 “Hires. fix” 来启用。默认情况下,文生图在高分辨率下会生成非常混沌的图像。如果使用高清修复,会型首先按照指定的尺寸生成一张图片,然后通过放大算法将图片分辨率扩大,以实现高清大图效果。最终尺寸为(原分辨率*缩放系数 Upscale by)。
•放大算法中,Latent 在许多情况下效果不错,但重绘幅度小于 0.5 后就不甚理想。ESRGAN_4x、SwinR 4x 对 0.5 以下的重绘幅度有较好支持。
•高分迭代步数 表示在进行这一步时计算的步数。
•重绘幅度,表现为最后生成图片对原始输入图像内容的变化程度。该值越高,放大后图像就比放大前图像差别越大。低,意味着修正原图,高 , 就和原图就没有大的相关性了。一般来讲阈值是 0.7 左右,超过 0.7 和原图基本上无关,0.3 以下就是稍微改一些。
8、面部修复:
•面部修复 修复画面中人物的面部,但是非写实风格的人物开启面部修复可能导致面部崩坏。
9、生成:
•点击“生成”
这里分享给大家一份Adobe大神整理的《AIGC全家桶学习笔记》,相信大家会对AIGC有着更深入、更系统的理解。
有需要的朋友,可以点击下方免费领取!
AIGC所有方向的学习路线思维导图
这里为大家提供了总的路线图。它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。如果下面这个学习路线能帮助大家将AI利用到自身工作上去,那么我的使命也就完成了:
AIGC工具库
AIGC工具库是一个利用人工智能技术来生成应用程序的代码和内容的工具集合,通过使用AIGC工具库,能更加快速,准确的辅助我们学习AIGC
有需要的朋友,可以点击下方卡片免费领取!
精品AIGC学习书籍手册
书籍阅读永不过时,阅读AIGC经典书籍可以帮助读者提高技术水平,开拓视野,掌握核心技术,提高解决问题的能力,同时也可以借鉴他人的经验,结合自身案例融会贯通。
AI绘画视频合集
我们在学习的时候,往往书籍源码难以理解,阅读困难,这时候视频教程教程是就很适合了,生动形象加上案例实战,科学有趣才能更方便的学习下去。