• 最新版本 Stable Diffusion 开源 AI 绘画工具之使用篇


    🎈 界面参数#

    • 在使用 Stable Diffusion 开源 AI 绘画之前,需要了解一下绘画的界面和一些参数的意义
    • 目前 AI 绘画对中文提示词的效果不好,尽量使用英文提示词
    • 最主要一些参数如下:
    • Prompt: 正向提示词,也就是 tag,提示词越多,AI 绘图结果会更加精准
    • Negative prompt: 反向提示词,也就是反向 tag
    • Width / Height:要生成的图片尺寸。尺寸越大,越耗性能,耗时越久。
    • CFG scale: AI 对描述参数 Prompt 的倾向程度。值越小生成的图片越偏离你的描述,但越符合逻辑;值越大则生成的图片越符合你的描述,但可能不符合逻辑。
    • Sampling method: 采样方法。有很多种,但只是采样算法上有差别,没有好坏之分,选用适合的即可。
    • Sampling steps: 采样步长。太小的话采样的随机性会很高,太大的话采样的效率会很低,拒绝概率高
    • Seed: 随机数种子。生成每张图片时的随机种子,这个种子是用来作为确定扩散初始状态的基础。不懂的话,用随机的即可
    • Restore faces: 面部修复,优化面部的,原理是调用一个神经网络模型对面部进行修复,影响面部。修复画面中人物的面部,但是非写实风格的人物开启面部修复可能导致面部崩坏
    • Tiling: 无缝贴图,是一种老牌优化技术,即 CUDA 的矩阵乘法优化,影响出图速度和降低显存消耗,不过实际选上之后可能连正常的图都不出来了。打死不开
    • Highres.fix: 高分辨率修复,默认情况下,文生图在高分辨率下会生成非常混沌的图像。如果使用高清修复,会型首先按照指定的尺寸生成一张图片,然后通过放大算法将图片分辨率扩大,以实现高清大图效果
    AI 绘画

    🎈 采样器#

    • Euler a: 是个插画,tag 利用率仅次于 DPM2DPM2 a,环境光效菜,构图有时奇葩
    • Euler: 柔和,也适合插画,环境细节与渲染好,背景模糊较深
    • Heun: 单次出土平均质量比 EulerEuler a 高,但速度最慢,高 step 表现好
    • DDIM: 适合宽画,速度偏低,高 step 表现较好,负面 tag 不够时发挥随意,环境光线与水汽效果好,写实不佳
    • DPM2: 该采样方式对 tag 的利用率最高,几乎占用 80% 以上
    • DPM2 a: 几乎与 DPM2 相同,只是在人物的时候可能有特写
    • PLMS: 单次出图质量仅次于 Heun
    • LMS: 质感 OA,饱和度与对比度偏低,更倾向于动画风格
    • LMS Karras: 会大改成优化的风格,写实不佳
    • DPM fast: 此为上界开发者所遗留的测试工具,不适合魔术师使用
    采样器列表

    🎈 文生图(txt2img)#

    • 文生图(text2img): 根据提示词 Prompt 的描述生成相应的图片
    • 选择 绘画模型(Stable Diffusion checkpoint)文生图(txt2img)填写正向提示词(Prompt)填写反向提示词(Negative prompt)选择采样器(一般选择DPM++ 2M Karras)设置采样步骤(一般设置30)设置长宽(Width / Height,推荐 1024 * 1536)点击生成(Generate)
    • 根据上面的步骤,即可通过文字生成图片了,一般我们只要编写 Prompt 即可, Negative prompt 一般都是固定的,限制一下水印,低质量以及其他可能出现的逻辑错误即可
    文生图

    🎈 图生图(img2img)#

    • 图生图(img2img): 将一张图片根据提示词 Prompt 描述的特点生成另一张新的图片
    • 选择 绘画模型(Stable Diffusion checkpoint)图生图(img2img)填写正向提示词(Prompt)填写反向提示词(Negative prompt)选择采样器(一般选择DPM++ 2M Karras)设置采样步骤(一般设置30)设置长宽(Width / Height,推荐 1024 * 1536)点击生成(Generate)
    • 将上传一张图片到图生图中,进行测试一下,这里使用的是刚刚文生图的照片,根据上面的步骤,点击生成,看看效果
    • 可以看出:AI 图生图,其实就是根据你上传的图片和你的 Prompt 生成一张跟上传差不多的照片
    图生图

    🎈 标签权重#

    • 在输入 Prompt 标签的时候,有时候想到啥就会写啥,默认写在前面的权重会最高
    • stable Diffusion 中也可以通过特定符号提升关键词的权重
    • 其中 () 是加强权重,[] 是降低权重,{}NAI() 的“实现”,<> 用于嵌入
    • 例如:(eye) > [eye](eye:1.4) 会比正常情况多增加约 40%(eye:0.6) 会减少约 40 %
    # 默认关键词是1.1倍
    (eye) = (eye:1.1)
    ((eye)) = (eye:1.21)
    (((eye))) = (eye:1.331)
    ((((eye)))) = (eye:1.4641)
    (((((eye)))) = (eye:1.61051)
    ((((((eye)))))) = (eye:1.771561)
    [eye] = (eye:0.9090909090909091)
    [[eye]] = (eye:0.8264462809917355)
    [[[eye]]] = (eye:0.7513148009015778)
    [[[[eye]]]] = (eye:0.6830134553650707)
    [[[[[eye]]]]] = (eye:0.6209213230591552)
    [[[[[[eye]]]]]] = (eye:0.5644739300537775)
    

    🎈 模型下载#

    • 模型网站推荐:https://civitai.com/
    • 左上角的下拉框可以用来选择模型,其中 v1-5-pruned-emaonly.safetensors 是默认模型
    • 默认的模型画出来的图片比较丑,所以我们需要下载更好更适合的模型来绘画
    • 每个模型侧重绘画的风格不一样,有些适合画人,有些适合画动漫,有些适合画风景,根据自己的需求选择适合自己的绘画风格模型进行下载
    • 下载好模型,将模型文件放入到 models/Stable-diffusion 文件夹下,重载 UI,即可看到
    模型下载
  • 相关阅读:
    代码随想录 | Day 56 - LeetCode 583. 两个字符串的删除操作、LeetCode 72. 编辑距离
    设计模式-相关内容
    制作麒麟V10-server-sp2镜像
    渗透测试流程是什么?7个步骤给你讲清楚!
    日用百货小程序商城的效果有哪些
    Python爬虫遇上动态加载
    Python人工智能学习路线(万字长文)
    试编写算法(用C语言)打印值为x的结点的所有祖先,假设值为x的结点不多于一个。(递归实现和非递归实现)
    DIY USB3.0 SM2246XT+双贴闪迪15131颗粒256G固态U盘
    基于SSM的社区疫情居民信息登记系统
  • 原文地址:https://www.cnblogs.com/tinygeeker/p/17293025.html