当前位置: 首页 > news >正文

爆肝整理!Stable Diffusion的完全使用手册(二)

继续介绍Stable Diffusion的文生图界面功能。

往期文章详见:  爆肝整理!Stable Diffusion的完全使用手册(一)

下面接着对SD的文生图界面的进行详细的介绍。本期介绍文生图界面的截图2,主要包含生成模块下的采用方法、调度类型、迭代步数、高分辨率修复、Refiner、宽度、高度、总批次数、单批数量、提示词引导系数、随机数种子等。

5、采样方法

在讲采样方法前需要先说明下SD的绘图原理。

Stable Diffusion是一种基于扩散模型的文本到图像生成技术。它通过在潜在空间中进行扩散过程,生成与输入文本描述相符的图像。Stable Diffusion的核心思想是利用文本中的信息指导去噪过程,从而生成高质量的图像。扩散模型的训练分为两个过程:正向扩散和逆向扩散。正向扩散过程将高斯噪声逐步添加到输入图像中,而逆向扩散过程则通过训练神经网络去除图像中的噪声

在现实生活中,一个绘画师之所以会画画,是因为他曾经学习过绘画技术。而SD这个“绘画师”也是如此,在SD能给你绘画图像前,它也曾学习过如何绘画。SD学习绘画的方式就是“看”大量的图片(这个过程称为训练)。SD拿到一张图片后需要进行学习,简单来说,SD会先给图片加上噪点,并逐步增加噪点数量,直到图像的整个画面都模糊不清(这一步就是正向扩散)。

原图

加噪声1

加噪声2

加噪声N

SD在生成图片的时候,就是上述过程的一个逆向过程(也就是逆向扩散),即从一个模糊不清的图片中,逐步去除掉噪点,最终得到一张清晰的图片。

原图

去噪声1

去噪声2

去噪声N

说明白了SD的绘图原理后,就不难理解采样方法了。采样方法就是将一张噪点图变成一张清晰的图片的方法。不同的采样方法就像是不同的“绘画策略”,在绘画的速度、细节和稳定性上各有优劣。对于新手来说,推荐如下3个采样方法(euler a、euler、DPM++2M Karras):

特点

速度

生图质量

稳定性

适用场景

参数搭配

Euler a

1. 生成过程不收敛,随机性强。

2. 速度快,低步数下出图快,适合快速迭代。

3.高步数易失控,难以复现结果。

极快(低步数下效率高)

低步数(20-30步)下细节较少,高步数易过噪或扭曲。

低(随机性高,不收敛)

1.快速生成草图或概念设计。

2.二次元插画、简单场景。

3.需要多样性的实验性创作。

CFG:7-10

迭代步数:20-30

Euler

1.生成过程收敛,输出稳定。

2.速度较快,简单但精度较低。

3.细节表现力有限,不适合复杂场景。

中等质量,细节较简单。

高(收敛性好,输出一致)

1.需要稳定输出的基础图像生成。

2.简单图标或低复杂度场景。

CFG:7-12

迭代步数:25-40

DPM++2M Karras

1.自适应调整步长,减少噪点。

2.平衡速度与质量,收敛性好。

3.细节丰富,适应性强,综合性能优秀。

4.计算资源消耗较高,速度中等。

中等(需20-50步达到最佳效果)

高质量,细节丰富且稳定。

极高(收敛性强,可控性高)

1.高精度写实人像、复杂风景。

2.商业设计或艺术创作。

3.需平衡速度与质量的通用场景。

CFG:7-12

迭代步数:30-50

搭配Karras调度器

不同的模型在不同的采用方法上的效果对比图如下:(依次对比了euler a、euler、DPM++2M、DDIM)。提示词为:a chinese woman, slim figure, light blue sweater, white short skirt, light gray long hair, standing on the grass, facing the camera, close_mouth, one hand in your pocket, wooden house, masterpiece, super high picture quality, extreme character details, professional photography, realistic style。

6、调度类型

调度类型就是控制噪点变化的节奏,类似调节绘画时“先画轮廓还是先填色”。不同的调度器会影响图像细节和生成速度。常见的调度类型对比如下:

特点

优缺点

适用场景

搭配

Karras

去噪步幅逐渐减小,中后期步幅显著降低,注重细节优化。

1.生成图像细节丰富、精度高。

2.适合高分辨率图像生成。

3.需要更多迭代步数(30-50步)达到最佳效果。

4.计算资源消耗较高

1.高质量写实人像、复杂风景。

2.需要精细纹理和光影细节的项目。

与 DPM++ 2M、Euler 等采样器搭配,适合高精度需求

Uniform

去噪步幅均匀分布,每一步噪声减少量一致。

1.生成过程稳定可靠。

2.适合风格化创作和一致性输出。

3.细节表现力相对较弱。

4.高步数下提升有限。

1.平铺图案、壁纸设计。

2.稳定输出需求的批量生成

适合 Euler、DDIM 等基础采样器,保证生成稳定性

Exponential

步幅按指数递减,前期去噪快,后期平缓。

1.前期快速去噪,适合草图生成。

2.低步数下即可生成较清晰结果。

3.后期细节调整能力较弱。

4.高步数可能因步幅过小导致优化停滞。

1.快速生成草图或初步效果。

2.时间敏感的低步数生成(如实时预览)。

配合 Euler a 等快速采样器,提升生成效率

7、迭代步数

前面说过SD的绘图原理是对噪声图进行逐步降噪,从而得到结果图的过程。迭代步数代表了SD对噪声图的降噪次数,决定了降噪过程的精细程度。步数越多,细节越丰富,但生成时间越长。迭代步数并非越多越好,需根据场景平衡效果与效率。一般情况下推荐将迭代步数设置在30~40步以内。

上图展示了majicMIX-realistic-v7模型的1~50迭代步数上的生图效果,可以看出大约在30步左右的时候,画面开始逐渐趋于稳定。

8、高分辨率修复

在某些场景下,比如生成一张512*768像素的人物全身图像时,会出现人物脸部崩溃的情况。原因就是像素太低了,SD在绘图时,由于分配到脸部的像素过低,导致无法精细的刻画人物脸部特征。高分辨率修复就是针对这类情况进行局部修复。下图展示了高分辨率修复前后的效果对比,可以看出修复后人物的面部更加清晰正确了。

高清修复前

高清修复后(放大2倍)

高清修复后(自定义尺寸)

高分辨率修复模块下又包含了放大算法、高分迭代步数、重绘幅度、放大倍数、宽度高度调整,其基本原理是先对图片进行放大,再对图片根据重绘幅度进行重新绘制。主要用来:对人脸进行修复、添加环境细节等。

  • 放大算法:由于需要先对原图进行放大,图片放大后新增的像素应该如何设置颜色,这就需要放大算法来进行计算了。常见的方法是拿相邻的两个像素除以2得到新的像素。一般推荐使用如下2种放大算法:

    • R-ESRGAN 4x+:兼容性强,适合多种图片类型,计算速度较快,但是针对二次元图片可能产生锯齿或怪异纹理。适用于写实风格、混合风格图片(三次元真实风格)。

    • R-ESRGAN 4x+ Anime6B:二次元细节还原度高,纹理清晰自然,但是写实图片效果一般,依赖模型适配。适用于动漫、插画、二次元风格图片。

  • 高分迭代步数:与前面所说的迭代步数有点类似,SD在进行高清修复时,会对图片进行二次加噪和去噪,该参数就是用来控制二次去噪的次数。数值越大则会导致图片生成时间过长,当数值设置为0时代表和迭代步数保持一致。高分迭代步数一般设置为15~20步即可。

  • 重绘幅度:用来决定SD在二次加噪点时,增加多少噪点。

    • 0.1 ~ 0.4:基本可以保持画面结构不变,画面细节会逐步增加。

    • 0.4 ~ 0.8:画面会出现大修,但还会参照之前的构图。

    • 0.8 ~ 0.9:与原画几乎没关系了,基本属于重画了。

    • 1.0:等于重新画了。

  • 放大倍数:将图片放大到原来的多少倍。比如原来是512*768像素,放大2倍之后会变成1024*1536像素。注意这里只是对图片进行放大而已。

  • 宽度&高度调整:当全部设置为0时,这个时候SD会按照放大倍数进行放大(也仅当这两个值为0时才能设置放大倍数)。当需要自定义放大时,可以调整宽度和高度,设置成自己想要的放大结果。一旦设置了那么放大倍数参数就失效了。

9、Refiner

(后面介绍插件的时候在详细介绍。)简单来说,Refiner 插件就是SD的“细节打磨小助手”。它的工作流程类似于:

1️⃣ 先画草稿:用基础模型(Base Model)快速生成一张图的大致模样,比如画个人像的轮廓、姿势和背景布局。这一步可能有点粗糙,比如手指画歪了,头发糊成一团。

2️⃣ 再精修细节:轮到 Refiner 上场,专门处理细节:把模糊的头发丝一根根理清楚,把歪掉的手指掰正,给皮肤加质感,给背景加光影层次。相当于给图片做“美颜+精修”。

使用Refiner的好处如下:

  • 解决「糊图」问题:直接生成高分辨率图容易崩坏(比如长出三只手),Refiner 分两步走更稳定。

  • 省事:以前要手动切换两个模型操作,现在自动帮你衔接。

  • 省内存:只在最后阶段用 Refiner 模型,比全程用大模型更节省电脑资源。

和高分辨率修复的区别:

  • Refiner:边画边修(优化内容细节,比如把方块房子改成圆顶教堂)。

  • 高清修复:画完放大(单纯提高分辨率,比如把 512x512 拉到 4K)。 👉 两者可以叠加使用,效果更佳!

10、宽度&高度

这两个参数很简单,是用来控制生成图片的尺寸的。SD模型在训练时使用的图片尺寸为512*512像素,如果使用SD来生成超大图的话,则会出现画面崩坏。宽高最好控制在512~768像素之间,这样画面比例较为协调。过小或者过大的分辨率都会导致图片质量低。

宽度、高度越高,对显存的占用就越大,绘图时间也会越长。图片尺寸设置与构图有关系,具体关系如下:

  • 512*512像素:适合人物、物件的特写。

  • 512*768像素:适合人物素材,全身更合适。

  • 768*512像素:适合风景题材,大广角视角。

11、总批次数&单批数量

总批次决定了SD要分几批来画图,而单批数量决定了SD每一批需要画出多少张图。

总4批单批1张

总2批单批3张

12、提示词引导系数

提示词引导系数,即Classifier-free guidance (CFG) scale(CGF指数),主要用来调节文本提示对扩散过程的引导程度,说人话就是控制生成的图片与提示词的关联程度。该参数的数值越高,生成的图片受到提示词的影响就越大。通常将CFG值设置在5~9之间最佳(一般不要超过12)。如果生成画面有用力过猛的情况,则需要适当调低CFG的值。

不同的提示词引导系数对生图的效果影响对比如下:

13、随机数种子

随机种子决定了初始噪声图的噪声分布,当SD的其他生成参数不变(硬件也不变)的情况下,相同的随机数种子会生成相同的图像。一般通过固定随机种子,来对图片进行参数微调或者研究不同参数对图片生成的影响。随机数种子设置为-1表示每次都会随机生成图片。

(未完!待续... ...)

相关文章:

  • 相控阵列天线:原理、优势和类型
  • strings.ToLower 使用详解
  • 健身房管理系统设计与实现(springboot+ssm+vue+mysql)含万字详细文档
  • 【AI论文】CLIMB:基于聚类的迭代数据混合自举语言模型预训练
  • LACP协议解析
  • pandoc实战教程(一):安装latex工具
  • 使用 Visual Studio 2022 中的 .http 文件
  • AI与思维模型【67】——元认知
  • Vue3 打印网页内容
  • JavaScript解密实战指南:从基础到进阶技巧
  • Python多任务编程:进程全面详解与实战指南
  • Linux教程-Shell编程系列二
  • 集合框架拓展--stream流的使用
  • 生成式AI对话中提示词策略:明确问题、明确目标和提供背景信息是最有效的策略
  • 一招解决所以Maven找不到依赖包的问题
  • Java优雅实现判空方法
  • 在 QCustomPlot中自定义绘图元素
  • 【CentOs】构建云服务器部署环境
  • ClickHouse核心架构设计
  • day47——平方数之和(LeetCode-633)
  • 周继红连任中国跳水协会主席
  • ESG领跑者|每一步都向前,李宁要让可持续发展成为可持续之事
  • 泽连斯基:乌英法美将在伦敦讨论停火事宜
  • 被指违反代理协议遭南航暂停售票资格, 去哪儿网:今起恢复
  • 讲座|在数字化时代,“记住”到底意味着什么
  • 观察|雀巢咖啡加码中国布局,如何借势云南咖啡打造新增长极?