👈👈👈 欢迎点赞收藏关注哟
首先分享之前的所有文章 >>>> 😜😜😜
文章合集 : 🎁 juejin.cn/post/694164…
Github : 👉 github.com/black-ant
CASE 备份 : 👉 gitee.com/antblack/ca…
一. 前言
一年不到,AI对生活和工作的影响已经逐步体现。所以千万别掉队了,也许 AI 不能成为我们的主要工作,但是如何借助 AI 实现副业的扩展同样值得思考。
这一篇就来讲一个 AI 绘画工具,这个工具我也是才上手不久,所以我把这其中的一些笔记分享出来,希望大家都能融入到这个新的时代。
Stable Diffusion
stable diffusion 本质上是一个 AI 绘图生成工具,我想大家肯定听说过它的竞品 : Midjourney 。
之所以选择 Stable Diffusion 的主要原因就是它免费,本地就可以搭建,开源资源丰富 , 适合我们这些业务人员去折腾。
实测 4060 笔记本显卡一张图 1024 大小的图大概在 10S 左右 , 如果嫌慢不要紧, 阿里云买一个抢占式的 GPU 服务器再部署一套到云环境上面,一小时也只要3块钱。
关于其中出现的一些名词 :@ 参考文档
- 欠拟合 :指模型不能在训练集上取得好的结果。学了又好像没有完全学会
- 过拟合 :指在训练集上表现很好,但是测试集上表现很差
- 不收敛 : 训练失败,根本没学会
- 泛化能力 :指的AI对未知样本的推理、适应能力
二. 安装和使用
基础安装太简单了,果然玩图的大佬都是热心肠,这里推荐直接使用 sd-webui-aki Bilibili 地址。
启动的效果就是这样,入门使用只需要关注2个点 :
- 模型管理 : 在各模型网站下载对应模型后添加进去即可
- 一键启动 : 直接启动运行
几个好用的模型网站 :
- 土司 : tusiart.com/
- civitai : civitai.com/
- liblib : www.liblib.ai/
三. 使用方式
整个主界面大致如下 ,来简单说一下其中这些关键的信息 :
👉 001 : 基础模型是什么?
模型就是我们在上述模型网站中找到的喜欢的模型,模型很多,我们只需要找到自己想要生成的去下载即可 :
下载完模型后,将模型添加到工具的模型管理中,然后在主界面模型旁边点击刷新就能应用上去。
模型也有对应的类型,这里简单概述下 :
- LoRA :通常用于人物和概念,体积小且控图效果好,常用于固定角色特征
- Checkpoint : 体积较大,用于控制画风
- Embedding : 适用于控制画风和人物,相对速度中等
- Dreambooth : 可以用于人物,概念和画风,对配置要求较高
对我这种新手来说基本上不关注这个,模型训练可能是后续的实践中才需要使用到。
👉 002 : VAE 模型是什么 ?
Variational autoenconder,中文叫变分子编码器 ,主要的作用就是滤镜。在出图的时候会影响颜色和线条
一般大模型里面都会自带 VAE , 出图如果有问题才可能需要用到它。
尝试了一下,左边的为原厂模型,右边加了其他 VAE. 虽然不明显,但是在颜色上还是有一些色差。
👉 003 / 004 : 提示词怎么写 ?
提示词分为正向提示词和反向提示词 ,
- 正向提示词 :
- 通过提示词 来指定生成的图像
- 提示词的顺序会影响到图像的生成 ,前面的提示词权重更大
- 排除词 :
- 用于指定图像中
不期望
出现的东西 (低质量,小图,五官不全)
- 用于指定图像中
- 权总 :
- stable diffusion 支持对提示词进行权重设置,点击提示词按
Ctrl + 上下方向键
- stable diffusion 支持对提示词进行权重设置,点击提示词按
那么提示词该怎么去找,去哪里找呢?
方案一 : 通过 Stable Diffusion 的工具反推提示词
直接把图片拖进去,就能得到对应的提示词,后续直接使用即可。
方案二 : 去模型网站或者图站查找提示词
一般下载的模型下面都能找到一些效果图,点进去就能看到对应的提示词
方案三 : 找 GPT 问或直接写
👉 005 :步数的作用是什么 ?
- 迭代每一步都是在前一步的基础上进行处理
- 低的采样步数会导致画面计算不完整,高的采样步数仅在细节处进行优化,对比输出速度得不偿失
👉 006 :采样方式有什么用 ?
采样方式指的是模型生成图像时所采用的策略,决定了如何从模型的输出分布中选择样本。
@ 具体介绍 post.smzdm.com/p/aev65x7z/
@ 详细原理 zhuanlan.zhihu.com/p/612572004
@ (推荐对比看看)👉关于不同出图效果 zhuanlan.zhihu.com/p/625556566
不是很了解,帮不了太多,但是文档我给你们找好了呀!!!
上文界面里面的采样方式主要有以下区别 :(PS 这一块网上资料也不多,只能做到这个地步了
)
算法 | 速度 | 步数 | 优 / 缺点 | 场景 |
---|---|---|---|---|
Euler a | 20-30 | 1. 适当的步长出图更快 2. 步长过大会过度拟合,图像变形 3. 富有创造力 |
ICON , 二次元,小场景 | |
Euler | 20-30 | – 基于Karras论文 | ||
LMS | 30+ | 1. 效果一般,比较抽象 , 质感OA,饱和度与对比度偏低,更倾向于动画的风格 2. 线性多步调度器(Linear multistep scheduler) |
||
Heun | 20-30 | – 基于Karras论文 | ||
DPM2 | 20-30 | 该采样方法对tag的利用率最高,几乎占80%+ | ||
DPM2 a | 25-30 | 几乎与DPM2相同,对人物可能会有特写 | ||
DPM++ 2S a | 20-30 | |||
DPM++ 2M | 20-30 | |||
DPM++SDE | 慢 | |||
DPM++2S a Karras | 慢 | – 在每个时间步长中执行多次操作 – 同等分辨率下细节更多 – 步长越多细节越明显 |
写实人物,复杂场景 | |
DPM++ 2M Karras | 20-30 | 1. 是二阶扩展概率模型求解的算法 2. 可以在速度和质量之间平衡 | ||
DPM ++ SDE Karras | 慢 | 8-12 | ||
DDIM | 慢 | 10-15 | 1. 步数越多细节越丰富 2. 收敛快,可以快速生成高质量图像 | 写实人像,复杂场景刻画 |
UniPc | 20-30 | |||
DPM adaptive | 10 | |||
LMS Karras | 20 | 会大改成油画的风格,写实不佳 | ||
DPM2 Karras | 20-30 | |||
DPM2 a Karras | 20-30 |
👉 007 :关于图像大小 ?
- 图像越大,从而需要往图片中加入更多的元素,越容易出现低质量的信息
- 如果图像大小一样,相同的提示词可能会出现类似的结果,但是大小一旦变化,图像的变化就极大
- 图像越大,花的时间必然就会越长
- 总结 : 图像不是越大越好,过大的图像反而影响整体质量。
关于宽度 :
- 推荐 512 x 512 ,一般模型都是在这个基础上进行计算的
- 宽带必须是 8 的倍数
- 宽度不适合太大,容易出现图像崩溃
- 高度同理
👉 008 :CFG Scale (提示词引导系数 )
- 控制图像与提示词之间的契合度,这个值越高,生成的图像也越接近你的提示词
- 这个值一定程度上会降低图像质量,因为相当于限制了范围
- 建议 7- 15
其他功能补充 :
随机种子的作用
- 随机种子可以帮助我们锁定图像范围 ,使用相同种子的时候可以生成类似的图像
- 相同的随机种子可以提高图像的可重复度和相似性,用于调优和优化模型
- 当使用 -1 随机种子时图像完全随机,完全无规律
总结
首篇完成,算是对这段时间学习的一个总结,期望能对大家有所帮助。
学无止境, 这个系列也是一直会保持更新。