分享
5. Stable Diffusion 调研文档
输入“/”快速插入内容
5. Stable Diffusion 调研文档
用户6100
用户6100
2023年9月23日修改
http://www.gnomic.cn
本文由来自提示工程师之家的群友 @Scarlett🌙 投稿,版权归
提示工程师之家
所有,欢迎转发。
1.
简介
a.
开源图片生成式人工智能
b.
目前有AUTOMATIC-1111的网页端图形界面,可以部署在本地或者服务器,操作直观
c.
可以定制自己的模型,也可以在开源社区下载别人生成好的模型
d.
可以安装插件,实现更多功能
2.
基本原理
a.
Diffusion是Stable Diffusion的前身。后者比前者的资源使用优化要更好,可以部署在个人电脑上运行。Dall-E和Midjourney均采用Diffusion。
b.
Stable Diffusion是将图片进行噪点化后,再用
U-Net
预测噪点、用不同的方法去除噪点,从而达到生成图像的目的。
c.
通常情况下,我们会通过输入提示词、ControlNet、图生图以及加载
LoRA
等方式,对去除噪点的过程进行干预,从而达到生成想要的图像的目的。
d.
Stable Diffusion会将图片从
RGB
色彩空间
压缩到更低维度进行处理,从而达到节省运算资源的目的。这一过程采用
VAE
(
Variational Auto-Encoder
)生成式模型。因此,在生成图像的时候如果颜色有问题,那么就需要考虑是否为VAE的问题。
3.
启动命令
a.
在启动Stable Diffusion WebUI时候可以键入的命令。较为常用的有:
i.
--device-id 0(启用0号
CUDA
设备)
ii.
--
api
(开启SD的API后台)
iii.
--xformers(开启xformers,优化迭代速度)
b.
https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Command-Line-Arguments-and-Settings
4.
经典问题汇总
4.1
生成高清大图
i.
使用Highres.fix。不要直接生成大图,因为那样会很消耗资源。
ii.
使用Tiled Diffusion。这个比Highres.fix更节省资源。但推荐先用Highres.fix进行修复
iii.
使用txt2img时,采用ControlNet
Tile
+ Tiled Diffusion。ControlNet Tile用来上传原图,固定需要高清化的内容,Tiled Diffusion用来放大图片和增加细节。
iv.
注意:
这里的高清大图指的是同时具备高分辨率且拥有足量细节的图片,并非单纯地放大图片而已。
4.2
控制人物姿势或者画面内容
i.
建议最高同时使用2个ControlNet,常见的组合有:
1.
OpenPose + Depth:控制人物姿势和场景深度
2.
Canny + Depth:控制人物或者主体形象和场景深度
3.
Scribble + Canny:增加对画面细节的控制
ii.
不建议叠加过多的ControlNet,因为会严重加剧资源的消耗
iii.
这里的思路是:通过2个ControlNet结合使用,来互补每个ControlNet的特色。
4.3
提示词编写
i.
civitai.com
上面集成了很多对应模型的提示词和预览效果。可以直接照抄。
ii.
提示词格式:
iii.
相关插件:All in one prompt
iv.
截止至SDXL 0.9, 位置相关的提示词暂时起不了作用。
4.4
提示词自动且变换地插入
i.
使用Dynamic Prompts插件
插件设置
ii.
提示词书写示范:
✏️
A girl with
{long straight hair|short hair|curvy hair|sing tail|twin tail}
hair in
{pink|black|gold|silver|purple|
cyan
}
color