Stable Diffusion WebUI 中调度器(Schedule type)简单研究

2024-05-03 04:52

本文主要是介绍Stable Diffusion WebUI 中调度器(Schedule type)简单研究,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

💎内容概要

在近期,stable diffusion webui更新了1.9版本,其中包含的一项变化就是,把采样器和调度器(Schedule type)分开了,之前是合并在一起来选择的,所以这篇文章主要分两个部分,第一个部分是作者为什么把他们给分开了,第二个是采样器和调度器的概念对于设计师来说,是否需要重点理解。

✨作者怎么说

了解原作者的思路,还是得从官方更新说明上看,主要是这几个相关的帖子:

1.9.0 · AUTOMATIC1111/stable-diffusion-webui · Discussion #15498 · GitHub

这里分为两块,一块是在UI界面上增加了调度器的设置的说明:

emm,简单来说,就是没有太多说明,如果是选择了Automatic,那么会根据采样器自动调取最合适的调度器。

所以,对于使用来说,大家默认选择“Automatic”就好了。

另外还有一个相关的帖子,是关于SDXL-Lightning模型的。

原帖地址在:Sgm uniform scheduler for SDXL-Lightning models by KohakuBlueleaf · Pull Request #15325 · AUTOMATIC1111/stable-diffusion-webui · GitHub

(马赛克部分请忽略,虽然是比较正常的图片,但是csdn的图片屏蔽尺度比较神奇,我就先马赛克为净了)

SDXL-Lightning模型,大家应该之前也都了解过,可以更少的步数,更快的速度,生成质量还不错的图片,所以现在在各个模型网站上还是有一席之地的,貌似感觉比turbo模型更受欢迎一些?

在这位朋友的测试下,SGM Uniform的调度器会比其他调度器更适合lightning类型的模型,并且做了一些尝试,在Euler采样器下,4步采样,分别使用不同的调度器,生成结果如上图,的确SGM Uniform在这里看起来更好一些。

我也做了一点尝试。

模型使用的是,TAILANG XL-Lightning-2.5D 闪电_2.0.safetensors

(大家如果感兴趣也可以自行下载,不需要魔法:LiblibAI·哩布哩布AI -TAILANG XL-Lightning-2.5D 闪电_2.0.safetensors)

SGM Uniform
SGM Uniform + Euler + 4Steps
Automatic + Euler + 4Steps

SGM Uniform + Euler + 4Steps
Automatic + Euler + 4Steps

emm,从效果上看,如果都是4steps,固定种子,SGM Uniform调度器的确会好一丢丢,所以如果追求极致的话,大家还是需要记得在使用lightning模型时,记得手动更改下这个调度器。

🤿概念研究

在Stable Diffusion模型中,采样器(Sampler)和调度器(Scheduler)是生成图像过程中的关键组件,它们共同决定了生成图像的质量和速度,那么这俩概念到底意味着什么呢?

  1. 采样器(Sampler):在Stable Diffusion的上下文中,采样器是指用于从噪声图像生成清晰图像的算法。这个过程被称为采样,因为它在每一步中生成一张新的图像样本。采样器通过在一系列步骤中逐渐减少噪声来生成图像,每一步都会根据预定的噪声计划(Noise Schedule)来减少噪声,并生成新的图像样本。不同的采样器有不同的算法和特性,影响着图像生成的速度和质量。
  2. 调度器(Scheduler):调度器通常与采样器的概念紧密相关,它负责控制采样过程中每一步的噪声水平,也就是所谓的噪声计划(Noise Schedule)。调度器决定了在生成图像的每一步中减少多少噪声,从而影响采样过程的速度和最终图像的清晰度。在某些文献中,调度器和采样器这两个术语有时被交替使用,因为它们都涉及到控制生成过程中的噪声减少。

就算是概念解释部分,这两个词也的确很难分开,或者可以简单的理解为:采样器是图像生成过程中的降噪算法,而调度器则控制这个过程中每一步的噪声水平,两者共同作用,决定了生成图像的质量和所需时间。当然了,这两者本来就是搭配使用的,所以强行分开解释貌似也意义不大。

对于只是想生成一张图片来说的朋友,记住以下结论就好了:

📌调度器选择Automaitc就好了,除非使用了lightning类型的模型,那就手动改一下为SGM Uniform, 当然,就算是忘记修改了,问题也不大。

🎉写在最后~

去年的时候写了两门比较基础的Stable Diffuison WebUI的基础文字课程,大家如果喜欢的话,可以按需购买,在这里首先感谢各位老板的支持和厚爱~

✨StableDiffusion系统基础课(适合啥也不会的朋友,但是得有块Nvidia显卡):

https://blog.csdn.net/jumengxiaoketang/category_12477471.html

​​​​🎆综合案例课程(适合有一点基础的朋友):

https://blog.csdn.net/jumengxiaoketang/category_12526584.html

​​​​

这里是聚梦小课堂,就算不买课也没关系,点个关注,交个朋友😄

这篇关于Stable Diffusion WebUI 中调度器(Schedule type)简单研究的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/955866

相关文章

Python实现简单封装网络请求的示例详解

《Python实现简单封装网络请求的示例详解》这篇文章主要为大家详细介绍了Python实现简单封装网络请求的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录安装依赖核心功能说明1. 类与方法概览2.NetHelper类初始化参数3.ApiResponse类属性与方法使用实

Python 基于http.server模块实现简单http服务的代码举例

《Python基于http.server模块实现简单http服务的代码举例》Pythonhttp.server模块通过继承BaseHTTPRequestHandler处理HTTP请求,使用Threa... 目录测试环境代码实现相关介绍模块简介类及相关函数简介参考链接测试环境win11专业版python

python连接sqlite3简单用法完整例子

《python连接sqlite3简单用法完整例子》SQLite3是一个内置的Python模块,可以通过Python的标准库轻松地使用,无需进行额外安装和配置,:本文主要介绍python连接sqli... 目录1. 连接到数据库2. 创建游标对象3. 创建表4. 插入数据5. 查询数据6. 更新数据7. 删除

Jenkins的安装与简单配置过程

《Jenkins的安装与简单配置过程》本文简述Jenkins在CentOS7.3上安装流程,包括Java环境配置、RPM包安装、修改JENKINS_HOME路径及权限、启动服务、插件安装与系统管理设置... 目录www.chinasem.cnJenkins安装访问并配置JenkinsJenkins配置邮件通知

Python yield与yield from的简单使用方式

《Pythonyield与yieldfrom的简单使用方式》生成器通过yield定义,可在处理I/O时暂停执行并返回部分结果,待其他任务完成后继续,yieldfrom用于将一个生成器的值传递给另一... 目录python yield与yield from的使用代码结构总结Python yield与yield

Java中使用 @Builder 注解的简单示例

《Java中使用@Builder注解的简单示例》@Builder简化构建但存在复杂性,需配合其他注解,导致可变性、抽象类型处理难题,链式编程非最佳实践,适合长期对象,避免与@Data混用,改用@G... 目录一、案例二、不足之处大多数同学使用 @Builder 无非就是为了链式编程,然而 @Builder

Java中的xxl-job调度器线程池工作机制

《Java中的xxl-job调度器线程池工作机制》xxl-job通过快慢线程池分离短时与长时任务,动态降级超时任务至慢池,结合异步触发和资源隔离机制,提升高频调度的性能与稳定性,支撑高并发场景下的可靠... 目录⚙️ 一、调度器线程池的核心设计 二、线程池的工作流程 三、线程池配置参数与优化 四、总结:线程

基于Python实现一个简单的题库与在线考试系统

《基于Python实现一个简单的题库与在线考试系统》在当今信息化教育时代,在线学习与考试系统已成为教育技术领域的重要组成部分,本文就来介绍一下如何使用Python和PyQt5框架开发一个名为白泽题库系... 目录概述功能特点界面展示系统架构设计类结构图Excel题库填写格式模板题库题目填写格式表核心数据结构

C/C++ chrono简单使用场景示例详解

《C/C++chrono简单使用场景示例详解》:本文主要介绍C/C++chrono简单使用场景示例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友... 目录chrono使用场景举例1 输出格式化字符串chrono使用场景China编程举例1 输出格式化字符串示

windows和Linux安装Jmeter与简单使用方式

《windows和Linux安装Jmeter与简单使用方式》:本文主要介绍windows和Linux安装Jmeter与简单使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录Windows和linux安装Jmeter与简单使用一、下载安装包二、JDK安装1.windows设