Stable/Diffusion采样方法全解析

Stable Diffusion现有的采样方法多达30种。 让人眼花缭乱,不知该如何选择,特别是新手小白连搞懂它们之间的区别都困难。 而且在这些采样方法里,有很多都是已经过时、被淘汰的,或者是效果不好、极少使用的 那么我们到底应该选择什么采样方法呢?本期图文将对这些采样方法进行分类以及全解析,最后会列出我个人比较推荐的采样器。

全脑图

Stable Diffusion 30种采样方法全解析 - 图1

前言

stable Diffusion现有的采样方法多达30种
让人眼花缭乱,不知该如何选择,特别是新手小白连搞懂它们之间的区别都困难。
而且在这些采样方法里,有很多都是已经过时、被淘汰的,或者是效果不好、极少使用的
那么我们到底应该选择什么采样方法呢?
本期图文将对这些采样方法进行分类以及全解析最后会列出我个人比较推荐的采样器
本期图文信息量极大,最好图文结合,搭配第二张的思维导图使用。

stable Diffusion现有的30种采样方法可以分为三大类。分别是:

  • 老派采样器
  • DPM采样器
  • 新派采样器

1.老派采样器

Stable Diffusion 30种采样方法全解析 - 图2

首先说老牌采样器,这些都是早期的老派算法。其中DDIM和PLMS是伴随Stable Diffusion发布的最老的两个算法,目前已经淘汰。

  • LMS、Heun、Euler这三个的效果都差不多,但是
  • Euler最中规中矩,简单直接,不易出错,推荐.
  • Heun的画质更好,但速度慢一倍
  • LMS是线性多步法,性能和Euler差不多,但容易出色块,没有Euler稳定。

2.DPM采样器

Stable Diffusion 30种采样方法全解析 - 图3

然后讲第二种DPM采样器,stable Diffusion绝大多数采样方法都是DPM算法,也是我们最常用的但是这么多DPM采样器如何选择呢?

首先不推荐所有“DPM2”开头的算法,即DPM2代算法,因为2代虽然比1代质量好一些,但速度慢一倍,完全可以用1代算法增加一些步数来代替

其次是DPM fastDPM adaptive,前者基本上没法用,后者完全无视迭代步数,虽然质量不错但生成时间极长。

那剩下的其他算法如何抉择呢

接上页,即使排除了几个不推荐的之后,剩余的DPM算法还是有十几个,其中的后缀更是看的人眼花缭乱,那这些后缀都是什么意思呢?

Stable Diffusion 30种采样方法全解析 - 图4

Karras的相比于原算法来说,相当于是优化算法效果更好,因为在8步之后,噪点更少,推荐

Huen的代表的是Euler的改进算法,质量更好但是速度慢一倍,不推荐

名字里带2S和2M的有什么区别呢,S代表单步算法2M代表二阶多步采样算法,2M相当于是2S的升级版,更推荐2M

Exponential的是1.6新增的算法,画面更柔和背景更干净,但是细节少一些

a的表示这是祖先采样器,生成的画面不收敛,也就是每一步都会添加随即噪声,生成的可能性更多
不带a的就是画面会收敛,从初始的随即噪声逐步收敛,收不收敛这个没有谁更好,看个人喜好

3.新派采样器

Stable Diffusion 30种采样方法全解析 - 图5

最后讲RestartUniPC这两个新派采样器

UniPC是2023年发布的新算法,只需要10步左右就可以生成可用画面,兼容性很好,收敛。

Restart是SD Web UI1.6新增的采样器,个人认为这个采样器的潜力非常大,各方面都很不错,甚至可以用比UniPC更少的步数,也能生成可用画面,推荐

4综合指数

排除了这么多,又推荐了这么多最后我宣布,挺进决赛圈的有: (仅代表个人观点

Euler a、 Euler

最中规中矩的采样器,选它俩肯定不会错

DPM++ 2M Karras

最推荐的算法,速度快,质量好,收敛

DPM++ SDE Karras

不收敛,质量很好,速度慢

DPM++ 2M SDE Karras

2M和SDE的折中算法,不收敛,速度有所提升

DPM++ 2M SDE Exponential

画面更柔和,背景更干净,但是细节少一些

DPM++ 3M SDE Karras
DPM++ 3M SDE Exponential

这两个是新的3M算法,速度和2M一样,但是30步以上,调低CFG的话效果更好

Restart

全新推出的采样器,潜力很大,各方面都很优秀

UniPC

2023年的新算法,兼容性很好,10步左右就能用