本文主要是介绍Stable Diffusion - 采样器 DPM++ 3M SDE Karras 与 SDXL Refiner 测试,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
欢迎关注我的CSDN:https://spike.blog.csdn.net/
本文地址:https://spike.blog.csdn.net/article/details/132978866
Paper: DPM-Solver++: Fast Solver for Guided Sampling of Diffusion Probabilistic Models
扩散概率模型(DPMs)在高分辨率图像合成方面,取得了令人印象深刻的成功,尤其是在最近的大规模文本到图像生成应用中。提高 DPMs 样本质量的一个重要技术是引导采样,通常需要一个较大的引导尺度来获得最佳的样本质量。引导采样常用的快速采样器是 DDIM,即一阶扩散 ODE 求解器,通常需要 100 到 250 步才能生成高质量的样本。
尽管最近的工作提出了专用的高阶求解器,并且在无引导采样方面实现了进一步的加速,但是对于引导采样的有效性还没有经过充分的测试。在这项工作中,证明之前的高阶快速采样器存在不稳定性问题,当引导尺度变大时,甚至比 DDIM 还要慢。
为了进一步加速引导采样,本文提出了 DPM-Solver++ ,用于 DPMs 引导采样的高阶求解器。DPM-Solver++ 使用数据预测模型来求解扩散 ODE,并且采用阈值方法来保证解与训练数据分布相匹配。因而,进一步提出多步变体的 DPM-Solver++,通过减小有效步长来解决不稳定性问题。实验表明,DPM-Solver++ 可以在只有15到20步的情况下,为像素空间和潜在空间的DPMs生成高质量的引导采样。
采样器 DPM++ 3M SDE Karras 是一种用于稳定扩散(Stable Diffusion)的采样方法,基于 DPM++ 2M Karras 的改进版本,具有以下特点:
- DPM++ 是一种动态采样器,可以根据每一步的梯度信息自适应地调整采样步长和方向。
- 3M 表示采样器使用了三种不同的扩散模式(Diffusion Modes),分别是标准扩散(Standard Diffusion)、反向扩散(Reverse Diffusion)和交替扩散(Alternating Diffusion)。
- SDE 表示采样器使用了随机微分方程(Stochastic Differential Equation)来模拟扩散过程。
- Karras 表示采样器使用 Karras 等人提出的一种高效的随机数生成方法,可以减少计算量和内存消耗。
采样器 DPM++ 3M SDE Karras 的优点是可以在较低的步数和CFG值下生成高质量的图像,并且可以适应不同的模型和VAE。缺点是可能会出现一些噪声和伪影,并且需要较高的显卡性能。
测试参数:
- 模型:
DreamShaper_XL1.0_alpha2.safetensors
- Sampling steps:30
- CFG:7
测试效果(左侧是 DPM++ 2M SDE Karras,右侧是 DPM++ 3M SDE Karras):
整体差别较小,建议使用 DPM++ 2M SDE Karras 即可。
SDXL 的 Refiner 的作用就是,使用精修模型(Refiner)对于基础模型(Base)的输出进行细化和优化,从而生成更接近真实的图像,与基础模型(Base)串联使用,也可以单独用于图像到图像的转换。
注意:对于现有的混合模型,如 DreamShaper 等,已包括精修,不需要额外使用 Refiner 操作,同时,两者的细节没有差别。
测试效果(左侧是 未使用 Refiner,右侧是 使用 Refiner):
DreamShaper 使用 Refiner 导致部分细节颜色异常,注意右侧图像(Refiner),即:
Stable Diffusion WebUI 已支持 Refiner 功能,不需要额外插件,同时配置 切换时机
,即:
测试:
cinematic photo full body shot,(head-to-toe shot:1.2),1girl,a beatiful woman in a dress and jacket standing,(office lady high heels),
pantyhose,black leggings,outdoors,
people in the center,soft light,natural and comfortable pose,face to camera,
<lora:neg4all_xl_v6:1>
,<lora:pantyhose_widget_xl_v10:1.2>
, . 35mm photograph, film, bokeh, professional, 4k, highly detailed
Negative prompt: nsfw,breast,(ng_deepnegative_v1_75t:1.2),badhandv4, drawing, painting, crayon, sketch, graphite, impressionist, noisy, blurry, soft, deformed, ugly
Steps: 30, Sampler: DPM++ 3M SDE Exponential, CFG scale: 7, Seed: 3098710835, Size: 768x1152, Model hash: 0f1b80cfe8, Model: DreamShaper_XL1.0_alpha2, Denoising strength: 0.3, Clip skip: 2, ADetailer model: face_yolov8n.pt, ADetailer confidence: 0.3, ADetailer dilate/erode: 4, ADetailer mask blur: 4, ADetailer denoising strength: 0.4, ADetailer inpaint only masked: True, ADetailer inpaint padding: 32, ADetailer version: 23.9.2, Hires upscale: 2, Hires steps: 10, Hires upscaler: 4x-UltraSharp, Lora hashes: “neg4all_xl_v6: 9a735be26f5e, pantyhose_widget_xl_v10: 90b94c2a1974”, Version: v1.6.0
参考:Stable Diffusion - SDXL 模型测试与全身图像参数配置
这篇关于Stable Diffusion - 采样器 DPM++ 3M SDE Karras 与 SDXL Refiner 测试的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!