Disentangled Textual Priors for Diffusion-based Image Super-Resolution¶
会议: CVPR 2026
arXiv: 2603.07430
代码: GitHub
领域: 图像超分辨率
关键词: 扩散模型超分, 文本引导, 解耦先验, 频率感知, 语义控制
一句话总结¶
提出 DTPSR,通过将文本先验沿空间层级(全局/局部)和频率语义(低频/高频)两个维度解耦,构建解耦的跨注意力注入管线和多分支 CFG 策略,实现感知质量优越的扩散超分辨率。
研究背景与动机¶
扩散模型(如 Stable Diffusion)在图像超分中展现了强大的生成能力,但其性能严重依赖语义先验的构造与注入方式。现有方法存在两类局限:
语义粒度不足:局部标签方法(SeeSR)关注细节但缺乏全局一致性;全局描述方法(SUPIR、PASD)关注全局但忽略细粒度细节
频率信息纠缠:现有方法将结构信息(低频:形状、布局)与纹理信息(高频:边缘、材质)混在同一嵌入中,导致语义可控性和解释性不足
退化严重时的幻觉问题:缺乏解耦语义引导时,扩散模型容易产生幻觉,如将墙壁误解为海洋纹理
核心洞察:将文本先验沿 空间层级 和 频率语义 两个正交维度解耦,让模型可以同时捕捉场景级结构和对象级细节。
方法详解¶
整体框架¶
DTPSR 想解决的是「文本先验到底该怎么喂给扩散超分模型」这个问题:它不再把一句笼统描述塞进 cross-attention 了事,而是把文本先验拆成「全局结构 / 局部低频 / 局部高频 / 输入锚定」四股,按语义层级分阶段依次注入去噪过程。
具体地,低分图像 \(x_{lr}\) 先经 VAE 编码进隐空间得到 \(z_0\),前向加噪到 \(z_t\);反向去噪的每一步里,隐变量像过流水线一样依次穿过四个专用跨注意力模块——先由 GTCA 注入全局结构、再由 LFCA 补上对象级低频形状、接着 HFCA 叠加高频纹理、最后 LRCA 用原图特征锚住身份一致性:
这条「从粗到细、从结构到纹理」的注入顺序是刻意安排的:先定全局骨架,再逐层往上加细节,避免不同语义源互相打架。
%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
A["低分图像 x_lr<br/>VAE 编码 z_0 → 加噪 z_t"] --> B["GTCA 全局文本跨注意力<br/>注入全局描述,立场景骨架"]
B --> C["LFCA 低频跨注意力<br/>低频局部描述,锚对象形状与排布"]
C --> D["HFCA 高频跨注意力<br/>高频描述,叠真实纹理"]
D --> E["LRCA 低分特征跨注意力<br/>DAPE 特征锚身份一致性"]
E -->|循环 T 步去噪| B
E --> F["输出 z_t−1 → VAE 解码高分图"]
G["Multi-branch CFG<br/>三路独立负提示抑制幻觉"] -.->|作用于三语义分支| B
G -.-> C
G -.-> D
关键设计¶
1. 全局文本跨注意力 GTCA:先把场景骨架立起来
全局描述方法抓得住大局却落不到细节,细节方法又缺乏全局一致性,GTCA 的活就是先打地基。它把一句全局描述 \(c_g\)(如"室内场景有 3 个物体")经 CLIP 编码成 \(e_g\),再通过跨注意力注入隐变量 \(z_t\),确立场景级的结构和布局。后面三个模块都在这个全局骨架上做增量细化,就不会一上来纠结纹理却把整体一致性丢了。
2. 低频跨注意力 LFCA:把对象的形状和排布锚清楚
低频信息(形状、大小、空间排列)决定结构保真度,一旦和高频纹理混在同一个嵌入里就会互相干扰,所以 DTPSR 给它单开一路。LFCA 把一组低频局部描述 \(\{c_{lf}^{(i)}\}\) 各自经 CLIP 编码后拼成矩阵
注入 GTCA 的输出 \(z_t^g\),做对象级的结构增强。因为只管低频,它能专注把"沙发是 L 形、靠墙摆"这类布局钉牢,不被纹理细节带偏。
3. 高频跨注意力 HFCA:在结构之上叠真实纹理
高频信息(纹理、边缘、表面材质)控制画面的视觉真实感,DTPSR 把它独立成第三路注入,正是为了精修纹理却不动已经定好的结构。HFCA 把高频描述 \(\{c_{hf}^{(j)}\}\) 编码后,在 LFCA 输出基础上进一步注入:
低频先定形、高频后铺质感的分工,让"形状对不对"和"质感真不真"两件事各管各的,这正是避免把墙壁脑补成海洋纹理这类幻觉的关键。
4. 低分辨率特征跨注意力 LRCA:把生成结果拴回原图
文本先验再丰富,也可能让生成跑偏、偏离输入图像本身的内容。LRCA 用一个冻结的 DAPE 编码器从 \(x_{lr}\) 抽出视觉特征 \(f_{lr}\),通过跨注意力把它作为身份锚点注入,约束去噪结果别漂移出原图该有的样子。它放在注入链的最后一环,相当于三层语义都加完后再做一次"对齐校正"。
5. 多分支无分类器引导 Multi-branch CFG:给每个语义源单独的"刹车"
普通 CFG 只有一条负提示,但 DTPSR 同时有全局、低频、高频三个语义源,单一负提示压不住多源的幻觉。于是它给三个分支各配一条独立负提示 \(c_g^{\text{neg}}, c_{lf}^{\text{neg}}, c_{hf}^{\text{neg}}\),按
分别做语义抑制。好处是无需额外训练,就能针对"哪一层语义出了幻觉"做频率感知的精准压制。
一个完整示例¶
拿一张退化严重的室内照片走一遍,看四个模块怎么接力把它修出来:
- GTCA:读到全局描述"一间客厅,含沙发、茶几、墙面",先在隐空间把三件家具的大致位置和场景骨架定下来,此时画面只是模糊的结构团块。
- LFCA:拿到低频局部描述"L 形沙发靠左墙、矩形茶几居中",把每件物体的形状、大小、排布锚实,结构从"团块"变成"轮廓清楚的物件"。
- HFCA:再叠上高频描述"沙发是亚麻布纹、茶几是木纹、墙面是哑光涂料",给已成形的物件铺上对的质感——关键是它不碰沙发的形状只动纹理,所以墙面不会被脑补成海浪。
- LRCA:最后用原图特征校一遍,确保修出来的还是这张输入图里的客厅,而不是另一间凭空生成的房间。
- Multi-branch CFG:去噪的每一步都用三条负提示分别压制全局/低频/高频可能跑出的幻觉,三路各刹各的。
损失函数 / 训练策略¶
- 训练损失:标准噪声预测 MSE 损失 $\(\mathcal{L} = \mathbb{E}[\|\epsilon - \epsilon_\theta(z_t, z_{lr}, t, c_g, c_{lf}, c_{hf})\|_2^2]\)$
- 数据集 DisText-SR:约 95K 图像-文本对,基于 LSDIR + FFHQ 前 10K 张,通过 Mask2Former 分割 + LLaVA 生成解耦描述
- 基座模型:SD-2-base;DAPE 编码器提取 LR 嵌入
- 训练配置:AdamW 优化器,lr \(5 \times 10^{-5}\),batch 32,110K iterations,4× A800
- 推理:DDPM 50 步,引导尺度 \(\lambda_s = 7.0\)
实验关键数据¶
主实验¶
| 数据集 | 指标 | DTPSR | FaithDiff | SUPIR | 提升 |
|---|---|---|---|---|---|
| DIV2K-Val | MUSIQ↑ | 71.24 | 69.18 | 62.59 | +2.06 |
| DIV2K-Val | MANIQA↑ | 0.5866 | 0.4309 | 0.5224 | +0.0642 |
| DIV2K-Val | CLIPIQA↑ | 0.7549 | 0.6463 | 0.7040 | +0.0509 |
| RealSR | MUSIQ↑ | 71.84 | 68.86 | 58.51 | +2.98 |
| RealSR | MANIQA↑ | 0.6021 | 0.4644 | 0.4429 | +0.0432 |
| DRealSR | CLIPIQA↑ | 0.7640 | 0.6335 | 0.6307 | +0.0729 |
注:DTPSR 在所有无参考感知指标上均为 SOTA,但 PSNR/SSIM 低于 GAN 方法(感知-失真权衡)。
消融实验¶
| 配置 | MANIQA↑ | CLIPIQA↑ | MUSIQ↑ | 说明 |
|---|---|---|---|---|
| 无先验 | 0.5271 | 0.7064 | 67.48 | 基线 |
| 仅局部 | 0.5851 | 0.7471 | 68.86 | 局部先验贡献更大 |
| 仅全局 | 0.5394 | 0.7211 | 67.80 | 全局提升较温和 |
| 全局+局部 | 0.6011 | 0.7640 | 69.24 | 互补效果最佳 |
| 频率混合 | 0.5947 | 0.7527 | 69.05 | 解耦优于混合 |
| 频率解耦 | 0.6011 | 0.7640 | 69.24 | 分离注入更有效 |
关键发现¶
- 局部先验的贡献远大于全局先验(MANIQA 提升 0.0580 vs 0.0123)
- 频率解耦比频率混合在所有指标上一致更优
- 多分支 CFG 比单一/无 CFG 显著提升感知质量(MUSIQ 66.73→69.24)
- 即使文本描述被随机损坏(替换为"None"),DTPSR 仍优于其他方法,展现鲁棒性
- 参数量 10.5B,推理 14.94s/张,与 SUPIR (17.8B) 和 FaithDiff (15.6B) 相比效率更优
亮点与洞察¶
- 解耦设计优雅:沿空间层级 × 频率语义两个正交维度解耦文本先验,概念清晰且有效
- DisText-SR 数据集:首个结合全局-局部 + 低频-高频文本标注的大规模 SR 数据集,为可控超分研究提供基础
- 多分支 CFG 策略:无需额外训练即可抑制幻觉,用频率感知的负提示实现细粒度控制
- 鲁棒性实验:即使上游模块(分割、描述)输出不完美,系统仍能正常工作
局限与展望¶
- PSNR/SSIM 等全参考指标不如 GAN 方法,存在感知-失真权衡
- 依赖上游分割(Mask2Former)和描述(LLaVA)模型的质量
- 推理时需要运行分割和描述生成流程,增加了端到端延迟
- 仅处理 top-3 最大分割区域,可能遗漏小但重要的细节区域
- 未来方向:自适应提示校正、与上游模块更紧密集成、更高效的扩散骨干
相关工作与启发¶
- SeeSR:使用局部语义标签,但仅关注细节而缺乏全局一致性
- SUPIR/PASD/FaithDiff:使用全局描述,但忽略频率分离
- StableSR/DiffBIR:未利用文本语义,错过了扩散先验的全部潜力
- 启发:解耦文本先验的思路可推广到其他条件生成任务(如编辑、修复)
评分¶
- 新颖性: ⭐⭐⭐⭐ 空间-频率双重解耦的文本先验设计新颖,多分支 CFG 策略有创意
- 实验充分度: ⭐⭐⭐⭐ 多数据集、多指标、丰富消融(全局/局部、频率、CFG、鲁棒性)
- 写作质量: ⭐⭐⭐⭐ 动机清晰、框架图清楚、实验组织合理
- 价值: ⭐⭐⭐⭐ 为文本引导扩散超分提供了新范式,DisText-SR 数据集有实用价值