在使用 Stable Diffusion 进行图像生成时,我们常常会遇到一个痛点:细节不够清晰、纹理被模糊处理。这通常是由 VAE(变分自编码器)在解码过程中对高频信息的“软化”所导致。

为了解决这一问题,开发者推出了一个新的 WebUI 扩展 —— Frequency Separation(频率分离)。它通过将图像划分为低频、中频和高频三个层次,分别进行扩散处理后再合成,从而显著提升图像的锐度和细节表现力。
本文将带你深入了解这个扩展的工作原理、安装方式以及使用技巧。
为什么需要频率分离?
核心动机
Stable Diffusion 的 VAE 在重建图像时往往会削弱微小纹理,例如皮肤毛孔、布料纹理、微对比度等。这些细节能极大影响视觉真实感。
而频率分离扩展正是针对这一问题设计的。它将图像拆分成:
- 低频层:主要保留整体构图与明暗分布;
- 中频层:包含边缘、形状和主要特征;
- 高频层:专注于纹理和细节。
每个层次都独立进行扩散处理,最后再合并成一张高保真图像。最终输出的 PNG 文件体积通常比原始输出大 80%-100%,因为包含了更多细节信息。
技术原理简述
该扩展基于 傅里叶变换(FFT) 原理,在频域中对图像进行操作:
- 频带划分
- 使用径向掩膜选择特定频率范围:
- 低频:0 – 0.15 fmax(保留构图)
- 中频:0.10 – 0.40(边缘与形状)
- 高频:0.35 – 1.0(纹理)
- 使用径向掩膜选择特定频率范围:
- 信号处理流程
- 对每张图像执行 2D 傅里叶变换(FFT),提取不同频段。
- 每个频段使用独立的噪声、CFG 和步数进行扩散处理。
- 处理完成后再次进行傅里叶变换并合并各频段。
- 最终通过逆变换(iFFT)还原为清晰图像。
- 防振铃设计
- 各频段之间采用 Sigmoid 软重叠(默认 10% 重叠),避免图像边缘出现伪影。
安装方法
安装过程非常简单,只需几步即可完成:
- 克隆仓库
git clone https://github.com/thavocado/sd-webui-frequency-separation.git
放置路径应为你的 WebUI 的 extensions/ 目录。
或者在 WebUI 的 Extensions 页面中点击 “从 URL 安装”,输入如下地址:
https://github.com/thavocado/sd-webui-frequency-separation
- 重启 WebUI
重启后,在 txt2img 或 img2img 界面中就能看到新增的 “Frequency Separation” 面板。

兼容性说明
该扩展已在以下环境中测试通过:
- Forge:f2.0.1v1.10.1-previous-665-gae278f79
- AUTOMATIC1111:v1.9.4
- reForge:f1.7.0-v1.10.1RC-latest-2255-g2b54f24a
虽然其他 WebUI 分支也应兼容,但如遇异常,请前往 GitHub Issues 提交反馈。
内部处理流程详解
| 阶段 | 描述 | 关键细节 |
|---|---|---|
| FFT 分割 | 将图像转换为频域表示,并分割出低频、中频、高频区域 | 使用 2D FFT,支持 fftshift、径向/角掩膜,保留 DC 分量 |
| 每频带扩散 | 每个频段使用独立参数进行扩散处理 | 动态创建 StableDiffusionProcessingImg2Img,继承提示词/种子,支持频段专属设置 |
| 同步模式 | 控制多个频段之间的协同,防止出现重影或不一致 | 支持多种同步策略(详见下文) |
| 图像重建 | 将处理后的频段重新组合成完整图像 | 支持加权频谱合并或 alpha 混合,最终通过 iFFT 还原 |
| 批处理钩子 | 保证在 ADetailer 等插件前运行 | 使用 postprocess_batch 修改批次张量,确保后续脚本接收增强数据 |
同步模式解析
由于图像被拆分为多个频段独立处理,如何保持它们之间的协调至关重要。该扩展提供了以下几种同步策略:
| 模式 | 同步内容 |
|---|---|
| 独立 | 各频段完全独立处理 |
| 共享噪声 | 共享种子与噪声 εt |
| 跨注意力 | 低频层的上下文 c 向量传递给高频层 |
| 渐进 | 低频作为潜在空间的起点 |
| 共享潜在 | 平均潜在空间 + 权重 λ=0.3 |
建议初学者从 “独立” 或 “共享噪声” 开始尝试,根据效果逐步调整。
频率掩膜函数
扩展共提供 12 种掩膜函数,用于定义不同频段的边界形状。尽管大部分是实验性质,但推荐使用默认选项:
- ✅ corner_average:到四个角落的平均距离(推荐)
其他函数包括:
- center_circular(中心圆形)
- corner_min_diamond(最小钻石距离)
- chebyshev(切比雪夫距离)
- wave_interference(波干涉模拟)
- gravitational(角落重力势)
⚠️ 除非有特殊需求,否则建议使用默认掩膜函数。
高级频带配置指南
你可以对每个频段进行个性化设置,以达到最佳效果:
默认频段范围
- 低频:0.00 - 0.15(结构/构图)
- 中频:0.10 - 0.40(主要特征)
- 高频:0.35 - 1.00(细微纹理)
每频段控制参数
- 去噪强度(Denoising Strength)
- 低频:0.3(保留结构)
- 中频:0.6(平衡特征与变化)
- 高频:0.8(强化细节)
- 自定义步数 & CFG
- 可启用“使用自定义步数和 CFG 缩放”来覆盖全局设置
- 否则使用主生成界面中的统一设定
使用建议与注意事项
- ⏱️ 生成时间增加约 3 倍,建议先用普通模式确定构图,再开启频率分离进行精修。
- 🧪 当前仅在 reForge 上充分测试,其他 WebUI 版本可能需自行验证。
- ❌ 暂无 ComfyUI 节点支持,如有需求可关注后续更新。
- 💬 如遇问题,欢迎提交 Issue 到项目页面:GitHub Issues












