初识Stable Diffusion

界面选项解读

这是在趋动云上部署的Stable Diffusion

txt2img

prompt

(1)分割符号:使用逗号 , 用于分割词缀,且有一定权重排序功能,逗号前权重高,逗号后权重低

(2)建议的通用范式:建议用以下归类的三大部分来准备相关提示词:前缀(画质词+画风词+镜头效果+光照效果) + 主体(人物&对象+姿势+服装+道具) + 场景(环境+细节)

(3)更改提示词权重:使用小括号()增加模型对被括住提示词的注意 (提高权重)。用 (xxx: ) 语法形式来提升权重,其中 xxx 是你要强调的词 1.x 代表要提升的比例,如 1.5 就是提升 150% 的权重。权重取值范围 0.4-1.6,权重太小容易被忽视,太大容易拟合图像出错。例:(beautiful:1.3) 。叠加权重:通过叠加小括号方式提高权重,每加一层相当于提高1.1倍权重,例:((((beautiful eyes))))相当于(beautiful eyes: 1.1*1.1*1.1)

  • (PromptA:权重):用于提高或降低该提示词的权重比例,注:数值大于1提高,小于1降低
  • (PromptB):PromptB的权重为1.1=(PromptA:1.1)
  • {PromptC}: PromptC的权重为1.05=(PromptB:1.05)
  • [PromptD]: PromptD的权重减弱0.952=(PromptC:0.952)
  • ((PromptE)=(PromptE:1.1*1.1)
  • {{PromptF}}=(PromptF:1.05*1.05)
  • [[PromptG]]=(PromptG:0.952*0.952)

(4)调取 LoRA & Hypernetworks 模型:使用尖括号 <> 调取LoRA或超网络模型。
按照下述形式输入:<lora:filename:multiplier> 或 <hypernet:filename:multiplier> 可调取相应模型,例:<lora:cuteGirlMix4_v10:0.5> 。
注:要先确保在【...\models\lora】或【...\models\hypernetworks】文件夹已保存好相关模型文件

(5)分布与交替渲染:使用方框号 [] 可应用较为复杂的分布与交替需求。

  • [A:B:step] 代表执行A效果到多少进度,然后开始执行B。例:[blue:red:0.4],渲染蓝色到40%进度渲染红色。注:step > 1 时表示该组合在前多少步时做为 A 渲染,之后作为 B 渲染。step < 1 时表示迭代步数百分比。
  • [A:0.5] 这样写的含义是从50%进度开始渲染A
  • [A::step] 渲染到多少进度的时候去除A
  • [A|B] A和B交替混合渲染

(6)反向提示词:反向提示词(Negative prompt),就是我们不想出现什么的描述。例:NSFW 不适合在工作时看的内容,包括限制级,还有低画质相关和一些容易变形身体部位的描述等。
注:在C站可下载一个叫 Easynegative 的文件,它的作用是把一些常用的反向提示词整合在一起了,让我们只需输入简单的关键词就能得到较好效果。把它放到 xxx/enbeddings 文件夹,需要触发时在 negative prompt 中输入 easynegative 即可生效。

(7)一些注意说明:

  1. AI 会按照 prompt 提示词输入的先后顺序和所分配权重来执行去噪工作;
  2. AI 也会依照概率来选择性执行,如提示词之间有冲突,AI 会根据权重确定的概率来随机选择执行哪个提示词。
  3. 越靠前的 Tag 权重越大;比如景色Tag在前,人物就会小,相反的人物会变大或半身。
  4. 生成图片的大小会影响 Prompt 的效果,图片越大需要的 Prompt 越多,不然 Prompt 会相互污染。
  5. Prompt 支持使用 emoji,且表现力较好,可通过添加 emoji 图来达到效果。如 形容喜欢表情, 可修手。
  6. 连接符号,使用 +, and, |, _ 都可连接描述词,但各自细节效果有所不同。

文章链接:【Stable Diffusion】Prompt 篇 - 知乎 (zhihu.com)

采样器

先放结论:

  1. 如果只是想得到一些较为简单的结果,选用欧拉(Eular)或者Heun,并可适当减少Heun的步骤数以减少时间
  2. 对于侧重于速度、融合、新颖且质量不错的结果,建议选择:
  • DPM++ 2M Karras, Step Range:20-30
  • UniPc, Step Range: 20-30

     3. 期望得到高质量的图像,且不关心图像是否收敛:

  • DPM ++ SDE Karras, Step Range:8-12
  • DDIM, Step Range:10-15

     4. 如果期望得到稳定、可重现的图像,避免采用任何祖先采样器

Sampling steps

增加采样步数,会缩小每一步的降噪幅度,有助于减少采样的截断误差

每一步迭代都是基于前一步的图像进行细化,理论上步数越多,图像越精细。但是,过多的步数会导致资源消耗增加和生成速度变慢,而且在达到一定步数后,图像质量的提升会逐渐减少

Sampling method
经典ODE求解器
  • Euler采样器:欧拉采样方法。
  • Heun采样器:欧拉的一个更准确但是较慢的版本。
  • LMS采样器:线性多步法,与欧拉采样器速度相仿,但是更准确。
祖先采样器

名称中带有a标识的采样器表示这一类采样器是祖先采样器。这一类采样器在每个采样步骤中都会向图像添加噪声,采样结果具有一定的随机性。

  • Euler a
  • DPM2 a
  • DPM++ 2S a
  • DPM++ 2S a Karras

由于这一类采样器的特性,图像不会收敛。因此为了保证重现性,例如在通过多帧组合构建动画时,应当尽量避免采用具有随机性的采样器。需要注意的是,部分采样器的名字中虽然没有明确标识属于祖先采样器,但也属于随机采样器。如果希望生成的图像具有细微的变化,推荐使用variation seed进行调整。

Karras

带有Karras字样的采样器,最大的特色是使用了Karras论文中建议的噪音计划表。主要的表现在于噪点步长在接近尾声时会更小,有助于图像的质量提升。

DDIM与PLMS(已过时,不再使用)

DDIM(去噪扩散隐式模型)和PLMS(伪线性多步方法)是伴随Stable Diffusion v1提出的采样方法,DDIM也是最早被用于扩散模型的采样器。PLMS是DDIM的一种更快的替代方案。当前这两种采样方法都不再广泛使用。

DPM与DPM++

DPM(扩散概率模型求解器)这一系列的采样器于2022年发布,代表了具有类似体系结构的求解器系列。

由于DPM会自适应调整步长,不能保证在约定的采样步骤内完成任务,整体速度可能会比较慢。对Tag的利用率较高,在使用时建议适当放大采样的步骤数以获得较好的效果。

DPM++是对DPM的改进,DPM2采用二阶方法,其结果更准确,但是相应的也会更慢一些。

UniPC

UniPC(统一预测校正器),一种可以在5-10个步骤中实现高质量图像生成的方法。

K-diffusion

用于指代Katherine Crowson's k-diffusion项目中实现的Karras 2022论文中提及的的相关采样器。当前常用的采样器中,除了DDIM、PLMS与UniPC之外的采样器均来自于k-diffusion

DPM++ Family

DPM++ SDE与DPM++ SDE Karras的收敛能力较差,图像的波动情况较为显著。

DPM++ 2M与DPM++ 2M Karras表现较好,当步数足够大时,Karras方法收敛的更快。

文章链接:Stable Diffusion-采样器篇 - 知乎 (zhihu.com)

Hires.fix

提供了一个方便的选项,可以部分地以较低分辨率呈现图像,然后将其放大,最后在高分辨率下添加细节。换句话说,这相当于在txt2img中生成图像,通过自己选择的方法将其放大,然后在img2img中对现在已经放大的图像进行第二次处理,以进一步完善放大效果并创建最终结果。

Width&Height

图像的宽度和高度直接决定了其尺寸和分辨率。更大的图像能够包含更多细节和信息,但同时也要求更高的处理能力和更长的生成时间

Batch count&Batch size

这两个参数控制生成图像的数量和频率。通过调整它们,可以批量生成多个图像,提高效率。适当的批次数和数量设置可以帮助你更快地获取所需的图像,特别是在寻找那“完美一张”时

CFG Scale

CFG Scale参数控制提示词与生成图像之间的相关性。更高的数值意味着模型会更加专注于提示词的内容,生成更加符合描述的图像。这个参数对于调整生成图像的创意程度和精确度非常有用

Seed

种子值控制了图像生成的随机性。通过固定种子值,可以重现特定的图像结果,这对于复现喜欢的图像或进行微调非常有用

文章链接:Stable Diffusion参数设置介绍看这一篇就够了 - 哔哩哔哩 (bilibili.com)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/264614.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Java JMM】编译和优化

1 前端编译 在 Java 技术下, “编译期” 是一个比较含糊的表述, 因为它可能指的是 前端编译器 (“编译器的前端” 更准确一些) 把 *.java 文件转变成 *.class 文件的过程Java 虚拟机的即时编译器 (常称 JIT 编译器, Just In Time Compiler) 运行期把字节码转变成本地机器码的过…

《Python》面试常问:深拷贝、浅拷贝、赋值之间的关系(附可变与不可变)【用图文讲清楚!】

背景 想必大家面试或者平时学习经常遇到问python的深拷贝、浅拷贝和赋值之间的区别了吧&#xff1f;看网上的文章很多写的比较抽象&#xff0c;小白接收的难度有点大&#xff0c;于是乎也想自己整个文章出来供参考 可变与不可变 讲深拷贝和浅拷贝之前想讲讲什么是可变数据类型…

Pytorch常用的函数(五)np.meshgrid()和torch.meshgrid()函数解析

Pytorch常用的函数(五)np.meshgrid()和torch.meshgrid()函数解析 我们知道torch.meshgrid()函数的功能是生成网格&#xff0c;可以用于生成坐标&#xff1b; 在numpy中也有一样的函数np.meshgrid()&#xff0c;但是用法不太一样&#xff0c;我们直接上代码进行解释。 1、两者…

如何在Window系统下搭建Nginx服务器环境并部署前端项目

1.下载并安装Nginx 在nginx官网nginx: download 下载稳定版本至自己想要的目录。 解压后进入目录 2.启动Nginx服务器 启动方式有两种&#xff1a; &#xff08;1&#xff09;直接进入nginx安装目录下&#xff0c;双击nginx.exe运行&#xff0c;此时命令行窗口一闪而过&…

浏览器 cookie 的原理(详)

目录 1&#xff0c;cookie 的出现2&#xff0c;cookie 的组成浏览器自动发送 cookie 的条件 3&#xff0c;设置 cookie3.1&#xff0c;服务端设置3.1&#xff0c;客户端设置3.3&#xff0c;删除 cookie 4&#xff0c;使用流程总结 整理和测试花了很大时间&#xff0c;如果对你有…

python调用GPT API

每次让gpt给我生成一个调用api的程序时&#xff0c;他经常会调用以前的一些api的方法&#xff0c;导致我的程序运行错误&#xff0c;所以这期记录一下使用新的方法区调用api 参考网址 Migration Guide&#xff0c;这里简要地概括了一下新版本做了哪些更改 OpenAI Python API l…

引领汽车营销新趋势,3DCAT实时云渲染助力汽车三维可视化

当前&#xff0c;汽车产业发展正从电动化的上半场&#xff0c;向智能化的下半场迈进。除了车机技术体验的智能化之外&#xff0c;观车体验的智能化也不容忽视。 这是因为&#xff0c;随着数字化、智能化、个性化的趋势&#xff0c;消费者对汽车的需求和期待也越来越高&#xf…

2016年第五届数学建模国际赛小美赛B题直达地铁线路解题全过程文档及程序

2016年第五届数学建模国际赛小美赛 B题 直达地铁线路 原题再现&#xff1a; 在目前的大都市地铁网络中&#xff0c;在两个相距遥远的车站之间运送乘客通常需要很长时间。我们可以建议在两个长途车站之间设置直达班车&#xff0c;以节省长途乘客的时间。   第一部分&#xf…

Qt的简单游戏实现提供完整代码

文章目录 1 项目简介2 项目基本配置2.1 创建项目2.2 添加资源 3 主场景3.1 设置游戏主场景配置3.2 设置背景图片3.3 创建开始按钮3.4 开始按钮跳跃特效实现3.5 创建选择关卡场景3.6 点击开始按钮进入选择关卡场景 4 选择关卡场景4.1场景基本设置4.2 背景设置4.3 创建返回按钮4.…

Java面向对象(初级)

面向对象编程(基础) 面向对象编程&#xff08;OOP&#xff09;是一种编程范式&#xff0c;它强调程序设计是围绕对象、类和方法构建的。在面向对象编程中&#xff0c;程序被组织为一组对象&#xff0c;这些对象可以互相传递消息。面向对象编程的核心概念包括封装、继承和多态。…

2023.12.21 关于 Redis 常用数据结构 和 单线程模型

目录 各数据结构具体编码方式 查看 key 对应 value 的编码方式 Reids 单线程模型 经典面试题 IO 多路复用 Redis 常用数据结构 Redis 中所有的 key 均为 String 类型&#xff0c;而不同的是 value 的数据类型却有很多种以下介绍 5 种 value 常见的数据类型 注意&#xff1…

阿里云 ACK One 新特性:多集群网关,帮您快速构建同城容灾系统

云布道师 近日&#xff0c;阿里云分布式云容器平台 ACK One[1]发布“多集群网关”[2]&#xff08;ACK One Multi-cluster Gateways&#xff09;新特性&#xff0c;这是 ACK One 面向多云、多集群场景提供的云原生网关&#xff0c;用于对多集群南北向流量进行统一管理。 基于 …

虚拟机的下载、安装(模拟出服务器)

下载 vmware workstation&#xff08;收费的虚拟机&#xff09; 下载vbox 网址&#xff1a;Oracle VM VirtualBox&#xff08;免费的虚拟机&#xff09; 以下选择一个下载即可&#xff0c;建议下载vbox&#xff0c;因为是免费的。安装的时候默认下一步即可&#xff08;路径最好…

hiveserver负载均衡配置

一.安装nginx 参数我的另一篇文章&#xff1a;https://mp.csdn.net/mp_blog/creation/editor/135152478 二.配置nginx服务参数 worker_processes 1; events { worker_connections 1024; } stream { upstream hiveserver2 { # least_conn; # 使用最少连接路由…

八大排序算法@直接插入排序(C语言版本)

目录 直接插入排序概念算法思想代码实现核心算法&#xff1a;直接插入排序的算法实现&#xff1a; 特性总结 直接插入排序 概念 算法思想 把待排序的记录按其关键码值的大小逐个插入到一个已经排好序的有序序列中&#xff0c;直到所有的记录插入完为止&#xff0c;得到一个新…

【Spring实战】配置多数据源

文章目录 1. 配置数据源信息2. 创建第一个数据源3. 创建第二个数据源4. 创建启动类及查询方法5. 启动服务6. 创建表及做数据7. 查询验证8. 详细代码总结 通过上一节的介绍&#xff0c;我们已经知道了如何使用 Spring 进行数据源的配置以及应用。在一些复杂的应用中&#xff0c;…

文档 - - - Docsify文档创建

目录 1. Docsify 介绍2. 创建 Docsify 项目2.1 安装 Node.js2.1 安装 docsfiy-cli2.3 初始化项目2.4 运行项目2.5 使用 Python 运行项目&#xff08;扩展&#xff0c;不推荐有bug&#xff09; 3. 配置 Docsify 项目3.1 修改等待加载文字3.2 添加网站 ico 图标3.3 创建新页面写文…

python 用OpenCV 将图片转视频

import os import cv2 import numpy as npcv2.VideoWriter&#xff08;&#xff09;参数 cv2.VideoWriter() 是 OpenCV 中用于创建视频文件的类。它的参数如下&#xff1a; filename&#xff1a;保存视频的文件名。 fourcc&#xff1a;指定视频编解码器的 FourCC 代码&#xf…

SVM —— 代码实现

SMO 算法的实现步骤&#xff1a; 代码如下&#xff1a; import numpy as np import matplotlib.pyplot as plt import seaborn as sns import random# 设置中文字体为宋体&#xff0c;英文字体为 times new roman sns.set(font"SimSun", style"ticks", fo…

webpack学习-7.创建库

webpack学习-7.创建库 1.暴露库1.1概念1.2验证1.2.1 不导出方法1.2.2 导出方法 2.外部化 lodash3.外部化的限制4.最终步骤5.使用自己的库5.1坑 6.总结 1.暴露库 这个模块学习有点坑。看名字就是把自己写的个包传到npm&#xff0c;而且还要在项目中使用到它&#xff0c;支持各种…