该笔记整理了b站up主"AI小王子Jay"的sd系统教学视频,作者个人空间有全套视频,为了方便以后复习我做一下简单的整理。
项目原址https://github.com/AUTOMATIC1111/stable-diffusion-webui
墙内访问有概率进不去,有解决办法请自行百度,但是如果进不去,建议搭梯子
看readme自己搭建,这一页内容几乎包含了搭建需要的所有步骤,看教学视频可以辅助搭建
放在models/stable diffusion文件夹下的.ckpt文件,核心模型,直接决定出图的风格
变分自编码器,增加图片饱和度,降低灰度,放在models/VAE文件夹下,不是特别关键的参数
让tag和图片建立关系,不知道为什么我的ui没有这个选项,不建议调太高,可以不调整.
提示词,使用sd的核心,很好理解,需要注意的是,词条建议用短句而不是短语或者单词来组成prompt
靠前的词条权重高,使用括号调整权重:()增大为1.1倍;{}增大为1.05倍,[]减小为0.9倍;(prompt:float)可以手动规定权重,以1为标准值
[prompt|prompt]和prompt AND prompt两种方式可以混合渲染,有区别但是不详细说了
词条整理:原up主的Discord(虽然我不知道这是他原创的还是搬运了别人的东西):
https://discord.gg/9sJRDU6nbu 需要梯子,需要注册discord
我的度盘链接
链接:https://pan.baidu.com/s/1C9Dh5_dG2aPRiJP0gk0jow?pwd=skmm
提取码:skmm
采样次数,20-40足矣,高了事倍功半,而且显卡吃不消
很多,建议用DPM++SDEkarras
-a噪点不居中,关键词识别度低
-karras去噪快
-DDIM&PLMS过时了
-DPM建议使用
好理解,依据显卡性能量力而行,众所周知分辨率一直是最影响性能的参数之一
Restore face修脸的,画人建议选上, tiling画纹理用的,别选,Hires.fix高分辨率.,
count可以拉高但是size量力而行
prompt和图片相关性,越高,则相关度越高,建议4-9
给生成结果带来随机性,同一个seed+相同参数,出的图相同
就是把prompt保存成模板,以供重复使用
写好prompt以后点击第五个按钮保存,在style里面选择模板后按第四个按钮应用到prompt里面
如需删除预设,在项目根目录中的“style.csv”文件中手动删除
五个按钮,第一个是加载上一次的配置,包括prompt,seed和参数在内的所有配置,第二个是清空,第三个是展开extra network,就是显示models文件夹中的其他模型,下面会说
显示其他的模型,分为以下几个:
Texture inversion:集合参数,这里的一个模型就是一个prompt,这个prompt集合了若干个prompt,以形成特定的效果,有点像prompt模板,在prompt中,直接使用这个inversion对应的提示词,就可以表示它所包含的所有提示词效果
Hypernetworks:超网络是novelai提出和使用的,用来给模型细小的微调,现在已经不怎么用了
Checkpoints:已经详细讲过了
LoRa:改变画面风格和面部的细小模型,下面给出一个lora的使用方法样例,注意,如果使用多个lora,请保证权重之和<=1
ps:如果想要让模型显示图片,可以把png/jpg格式的图片放到模型所在的文件夹里,然后把名字改成和对应文件夹相同的
想要更多模型,推荐网站:
CivitaI,c站,最主流的模型网站,需要梯子:
https://civitai.com/
Liblib AI,不需要梯子,(据说是)全免费:
https://www.liblibai.com/?bd_vid=8307283623378637137
脚本是实现一些特殊效果的功能,具体如下:
同一个描述在不同条件下的效果,出来的结果是一个矩阵图,每种效果之间会两两结合,使用方法样例如下:
其中第一个prompt是描述,后面的几个词是效果,使用"|"链接
两个单选框,第一是把变量(也就是效果)放在prompt前面,不选;第二个是给每一张图片选择不一样的seed,这意味着对同一个描述的每个不同效果,使用的是完全不同的图片,一般不选
Select prompt:在哪个提示词框里面使用prompt matrix,一般选positive
Select joining char:选择连接符,用逗号就可以
Grid margin:每张子图片的之间有多少像素的空隙
工程化的操作方式,不使用ui交互,而是直接填写参数来生成图片,支持上传参数文件也支持手打
输入样例:
实际上,如果我们用记事本格式打开一张ai图片,我们可以看到图片中的生成参数信息
所以如果我们有一张ai图,就相当于获得了它的所有信息,aigc的过程也就是调参的过程
在Png Info功能中,可以查看一张ai图片的信息
两个参数,分别是每张图使用迭代随机seed(就是说每张图的seed值++)和所有图使用相同随机seed,二选一
其实就是构造图表,XYZ分别是图表的三个轴,每个轴的每个值构造出一个(x,y,z)向量,每个向量对应一个值.如果只需要二维图表,那么只用XY两个轴就可以,也推荐这么做,因为三个轴太吃显卡
界面和一个输入样例:
如果轴类型是一个对象,那么轴值框会出现若干个可选项;如果轴类型是一个值,那么轴值框内填写2数值,可以填写数字列表(如1,2,4,6,8,9)也可以是范围+步距的形式(如1-10(+2),如果不写步距,默认+1).
另外几个参数好理解,Draw legend画图例建议选上
和上面重复的部分不再赘述
一个提示词插件,看了下项目地址,是对提示词系统的全面优化,非常好用,我没有
重绘强度,越低,出图和原图越相近
Just resize:纯拉伸,注意,在分辨率界面,点击尺子按钮,出图分辨率会调整为原图分辨率
Cope and resize:裁剪,字面意思
Resize and fill:以最后一个像素为基础填充新尺寸多出来的元素.如果重绘强度够高,这个选项可以让sd绘制填充的部分,但是绘制仍然是基于最后一个像素的
Just resize(latexxx):直接拉伸,采样有随机性,一般不用
就是原图界面上面几个选项卡
这个模式下,原图界面会多一个简易画笔,可以对原图涂鸦,涂鸦后sd根据加工图重绘
绘制优化插件canvas-zoom,优化涂鸦细节部分的体验
这个模式用于局部添加元素,或者是简笔画出图很好用
字面意思,可控性高的局部绘制功能,参数解释:
Mask blur蒙版模糊度:给蒙版增加高斯模糊,值越低 ,蒙版和原部分界线越分明,反之过渡越平滑,但是太高的模糊度会导致蒙版失效,需要合理控制.
Mask mode蒙版模式:masked绘制蒙版部分,not masked绘制蒙版外的部分,相当于反选
注意,蒙版绘制的颜色不会影响到出图颜色
Mask content蒙版蒙住的内容:四个参数,fill表示重绘时完全不考虑原图,original表示必须参考原图,latent noise不考虑原图,比fill更有想象力和细节,这是因为它是从全随机噪声状态开始绘制的,latent nothing,不考虑原图,细节比fill更多一些,用的少
Inpaint area 重绘区域,whole picture像素集中在整张图片,蒙版区域的像素少一些,only masked像素集中在蒙版,所以细节更多
Only masked padding仅蒙版填充半径:指重绘时参考原图在蒙版周围的像素的多少,这个值表示半径,单位pixel,值越高,就越贴近原图,建议32以上
在Inpaint基础上可以涂鸦带颜色的重绘方法,两个方法的结合,看起来很强大,只多了一个参数
Mask transparency蒙版透明度:透明度越高,出图越模糊,一般设置为0
使用其它专业的工具(比如ps)绘制蒙版,可以制作更高质量的模板,自己绘制的时候注意,白色的部分是蒙版.
设置文件夹,让sd处理文件夹里面的图片
input/output directory 输入/输出文件夹目录,必须是全英文路径
Inpaint batch mask directory蒙版文件夹目录,只在使用蒙版的时候需要,为了使图片和蒙版的对应,对应图片和蒙版名称需相同
就是这两个东西,用来反向推到关键词的,上下分别是以句子的形式反推和以单词的形式反推
单张图像和批量处理等,逻辑和之前讲过的相似,不再赘述
resize
scale by按照指定倍数缩放,scale to按照需要的像素值缩放,可以改变原图比例,这个模式下需要勾选裁剪,不然比例变化不好看
upscaler
1和2都是高清化算法,分别是主要/次要算法,前三个是过时的传统算法,只是用推荐的插件算法4x-Ultrasharp就好
ESRGAN很好,但是色彩略差
anime6B对动漫图片效果好
upscaler2目的是为了权衡图片材质,避免过度磨皮,使用一个较低性能的算法可以平衡其他算法,现在很少用了
GFPGAN
面部修复算法,只修复面部时,不使用任何upscaler,然后设置放大倍率,注意,只修复面部而不会修复其他信息
Codeformer
面部修复算法,但是会改变原先细节,可以和GFP同时用,混合比率
Remove Background
一个插件,很强大的抠图功能,一般使用u2net,后面的cloth/human后缀等是专精的算法,isnet-anime对动漫的抠图效果好.直接在webui的扩展插件界面通过项目地址添加即可,项目地址:
https://github.com/AUTOMATIC1111/stable-diffusion-webui-rembg.git
Return mask 出图的时候是蒙版图
Alpha matting可以去掉抠图的黑边,具体参数:erode size主体边缘像素预留区域,类似边缘模糊,数值低一点好;foreground/Background threshold 前景/背景阈值,越高,去除前景/背景的元素就越多,建议值为:erodesize=6,fore=143,back=187
一个好用的图片修复和高清化插件,据说效果非常好,暂不详细描述了(因为还没有实操)