← 返回 2026-04-24

EditCrafter:基于预训练扩散模型的无调参高分辨率图像编辑 EditCrafter: Tuning-free High-Resolution Image Editing via Pretrained Diffusion Model

Kunho Kim, Sumin Seo, Yongjun Cho, Hyungjin Chung 📅 2026-04-11 👍 12 2026-07-13 08:36
分类器自由引导 图像编辑 扩散模型 无调参方法 高分辨率生成

无需微调,借分块反演与NDCFG++让扩散模型实现4K高分辨率文本引导编辑

前置知识

Stable Diffusion 与潜在扩散模型 (LDM)

Stable Diffusion 用 VAE 编码器 $E$ 把图压成潜码 $z_0$,在潜空间做加噪 $q(z_t|z_0)=\mathcal{N}(\sqrt{\bar\alpha_t}z_0,(1-\bar\alpha_t)I)$ 与 U-Net 去噪,只能处理训过的固定分辨率。

EditCrafter 基于 SD 2.1 (512×512) 与 SDXL 1.0 (1024×1024),必须理解 LDM 潜空间机制才能跟住其反演和采样设计。

DDIM 反演 (DDIM Inversion)

DDIM 把反向去噪写成 ODE $z_{t-1}=\sqrt{\bar\alpha_{t-1}}z_c^\omega(z_t)+\sqrt{1-\bar\alpha_{t-1}}\epsilon_c^\omega(z_t)$,由此可从真实图 $x_0$ 推到 $z_T$,反向生成时保留原图身份。

EditCrafter 的 tiled DDIM inversion 正是利用 DDIM 可逆性,对每个分块独立反演后拼回得到可编辑的高分辨率潜码。

分类器自由引导 (CFG) 及其扩展

标准 CFG 用 $\epsilon_\theta^\omega=\epsilon_\varnothing+\omega[\epsilon_c-\epsilon_\varnothing]$ 放大文本;NDCFG 用膨胀核 $\tilde\epsilon_\theta$;CFG++ 防偏离。

NDCFG++ 是 EditCrafter 的核心引导机制,必须先理解 NDCFG 与 CFG++ 才能看懂它对编辑场景的针对性改进。

核膨胀 (Kernel Dilation) 与 ScaleCrafter

ScaleCrafter 把 U-Net 卷积核从训练分辨率 $S$ 膨胀到目标高分辨率 $H$,等效扩大感受野,无需重训即可在 $4\times/8\times/16\times$ 分辨率生成图像。

EditCrafter 用 ScaleCrafter 做高分辨率生成骨架,再叠 NDCFG++ 让它从生成器真正变为编辑器。

研究动机

现有基于扩散模型的文本引导编辑方法(如 MasaCtrl、Prompt-to-Prompt、InfEdit、ProxEdit)几乎都受限于预训练 T2I 模型的固定训练分辨率:Stable Diffusion 1.x/2.1 训在 $512\times512$,SDXL/SD3.5 训在 $1024\times1024$。当用户给出一张 $2048\times2048$ 甚至 $4096\times4096$ 的高分辨率素材时,这些方法既无法直接处理,也无法通过简单下采样—编辑—上采样的 pipeline 恢复细节——上采样器(如 StableSR)会引入人脸、毛发等高频细节失真。一个直觉方案是把高分辨率图切成 $512\times512$ 小块逐个编辑再拼回,但问题立刻显现:每个块可能只含物体的局部(如老虎的头部),单独用同一文本 prompt 引导会导致拼回时出现重复的子结构(论文 Fig. 4 中 CSD 把熊猫放到老虎头上、把考拉放到变色龙身上);块之间还会出现可见的接缝与白边网格。CSD (Kim et al., NeurIPS 2023) 用 SVGD 联合分数蒸馏做高分辨率编辑,但定性定量都不理想。

本文的目标是本文提出 EDITCRAFTER,目标是给一张任意分辨率的真实高分辨率图 $x_0 \in \mathbb{R}^{H\times W\times 3}$(实验中从 $1024\times1024$ 到 $4096\times4096$),配合单条文本指令 $P$,在不微调、不优化的前提下输出与 prompt 高对齐且保留原图身份与高频细节的编辑结果。具体包含三个量化目标:(1) 在 SD 2.1 上支持 $4\times/8\times/16\times$ 倍率编辑(最高 $2048\times2048$),SDXL 1.0 上支持到 $4096\times4096$;(2) 在 ImageReward、HPSv2、CLIPScore 三个指标上同时超过 CSD;(3) 用户研究偏好率超过 70%。

与已有工作不同的是,EditCrafter 的独特切入角度是把高分辨率编辑拆成两个独立子问题并各自给出针对性方案,而 CSD 试图用一个联合分数蒸馏同时解决生成与编辑。第一个子问题是'如何把高分辨率图正确反演到潜空间'——本文提出 tiled DDIM inversion,按训练分辨率切块、独立反演后拼接,绕开 U-Net 对分辨率的硬约束。第二个子问题是'如何用一个 prompt 引导整张高分辨率潜码'——本文提出 NDCFG++,用原始 $\epsilon_\theta$ 提供稳定的无条件预测锚点,用膨胀核 $\tilde\epsilon_\theta$ 提供细节感知的有条件预测,再以小引导尺度 $\lambda \in [0,1]$ 在数据流形内插值,区别于 NDCFG 的大尺度 $\omega$。这套设计灵感来自 CFG++ 的流形约束思想,但把它首次应用到高分辨率编辑场景。

核心方法

方法直觉可类比'局部处理、全局协调':把一张 4K 图按 SD 训练分辨率切成 1024 张 512×512 小块,每块单独做 DDIM 反演得到潜码,再按原位置拼回成一张大潜码 $z_T^*$;反向生成时,对 $z_T^*$ 跑扩散采样,但 U-Net 内的卷积层全部用 ScaleCrafter 的 re-dilation 替换以扩大感受野;引导信号不是标准 CFG,而是新提出的 NDCFG++,在初始 $t\leq\tau$ 步内用 $\tilde\epsilon_c^\lambda(z_t)=\epsilon_\varnothing(z_t)+\lambda[\tilde\epsilon_c(z_t)-\tilde\epsilon_\varnothing(z_t)]$(小尺度引导、无条件项由 vanilla 估计器提供),之后切到标准 CFG++。整套流程无需任何梯度、任何额外训练数据、任何超参微调。

核心创新是 NDCFG++(manifold-constrained noise-damped classifier-free guidance)。它与已有引导方法有本质区别:标准 CFG 用同一个 U-Net 估计有条件/无条件,在低分辨率生成上 OK,但扩到高分辨率后感受野不够;NDCFG (ScaleCrafter) 引入膨胀核 $\tilde\epsilon_\theta$ 来扩展感受野并用大 $\omega$ 引导,但它仍用膨胀核做无条件项,导致反向轨迹在编辑时容易偏离流形;NDCFG++ 关键差别是分两步——前期 $t\leq\tau$ 用 vanilla $\epsilon_\theta$ 提供无条件预测 + 膨胀 $\tilde\epsilon_\theta$ 提供条件预测 + 小尺度 $\lambda=0.5$ 引导 + 用 vanilla 无条件噪声做重噪声化(Eq. 13)——保证前期轨迹稳定在数据流形附近;后期切到标准 CFG++,让条件生成器接管以提升 prompt 对齐。这一'分阶段、跨估计器'的引导设计是 NDCFG++ 与 NDCFG/CFG++ 的本质区别。配合 tiled DDIM inversion,整个 pipeline 才真正支持任意分辨率的真实图编辑。

方法步骤详情

完整 EDITCRAFTER 流水线(Fig. 2 + Alg. 1 + Alg. 2)分两阶段。阶段 A:tiled DDIM inversion。Step 1:用裁剪函数 $T_{x\to i}(S):\mathbb{R}^{H\times W\times3}\to\mathbb{R}^{H'\times W'\times3}$ 把高分辨率图 $x_0$ 切成 $n$ 个非重叠 $S\times S$ 小块 $\{x^{(0)},\dots,x^{(n)}\}$;Step 2:对每块 $x^{(i)}$ 经 VAE 编码器得到 $z_0^{(i)}=E(x^{(i)})$;Step 3:设 CFG 尺度 $\omega=0$(即 $\epsilon_c^\omega=\epsilon_\varnothing$),逐时间步按 $z_{t+1}=\sqrt{\bar\alpha_{t+1}}z_c^\omega(z_t)+\sqrt{1-\bar\alpha_{t+1}}\epsilon_\varnothing(z_t)$ 反演到 $z_T^{(i)}$;Step 4:用逆映射 $T_{i\to z}(S/8)$ 把所有 $z_T^{(i)}$ 拼回高分辨率潜码 $z_T^*$。阶段 B:反向生成(Alg. 2)。Step 5:U-Net 所有卷积层替换为 ScaleCrafter 的 re-dilated 卷积以适配 $H\times W$ 输入;Step 6:循环 $t=T,\dots,1$,若 $t\leq\tau$($\tau=10$ for $4\times$,$37$ for $8\times/16\times$)执行 NDCFG++:先算 $\tilde\epsilon_c^\lambda(z_t^*)=\epsilon_\varnothing(z_t^*)+\lambda[\tilde\epsilon_c(z_t^*)-\tilde\epsilon_\varnothing(z_t^*)]$,再用 vanilla 无条件噪声 $\epsilon_\varnothing(z_t^*)$ 做重噪声化得 $z_{t-1}^*$;Step 7:若 $t>\tau$ 切回标准 CFG++;Step 8:用 VAE 解码器 $D$ 把 $z_0^*$ 还原成像素图。

技术新颖性

技术新颖性体现在四方面:(1) 首次把 tiled inversion + kernel re-dilation 联合起来做高分辨率真实图编辑,避开'切块后子结构与文本不对齐'和'全图感受野不足'两个痛点;(2) NDCFG++ 公式 $\tilde\epsilon_c^\lambda(z_t)=\epsilon_\varnothing(z_t)+\lambda[\tilde\epsilon_c(z_t)-\tilde\epsilon_\varnothing(z_t)]$ 用 vanilla 与 dilated 两个估计器显式分工,并通过分阶段调度 $\tau$ 实现'编辑前期稳定身份、后期跟随 prompt',这一点是 ScaleCrafter/CFG++ 都没做到的;(3) Fig. 3 通过可视化引导残差 $\epsilon_c(z_t)-\epsilon_\varnothing(z_t)$ 证明 NDCFG++ 比直接套 ScaleCrafter 在去噪过程中保留更多语义信号、压制背景噪声;(4) 配套的 tiled inversion 在反演阶段就强制 $\omega=0$ 抑制文本影响,确保切块拼接不引入拼接错位。整篇工作是无调参流派在'超高分辨率'维度的一次系统化推进。

The overview of EDITCRAFTER pipeline
Figure 2: The overview of EDITCRAFTER pipeline
The first and third rows visualize the decoded latents over successive denoising steps; the second and fourth rows show the guidance residual
Figure 3: The first and third rows visualize the decoded latents over successive denoising steps; the second and fourth rows show the guidance residual

实验结果

实验使用 UltraPixel [44] 生成的 30 张高分辨率图,叠加手工 prompt 后组成 150 对 prompt-image 数据集,覆盖方形与宽幅。Table 1 报告 SD 2.1 三档分辨率:$4\times 1:1$($1024\times1024$)ImageReward 1.4831 vs CSD 0.5538;$8\times 1:2$($2048\times1024$)1.4238 vs 0.7165;$16\times 1:1$($2048\times2048$)1.6689 vs 0.6304。SDXL 1.0 三档同样领先:$4\times$ 1.6242 vs 0.2939;$8\times$ 1.4133 vs 0.2767;$16\times$ 1.4919 vs 0.3699。HPSv2 与 CLIPScore 也全面超越 CSD(Table 1)。Table 2 的消融显示在 $16\times$ SD 2.1 上:'Tiled Inv. + ScaleCrafter'(即无 NDCFG++)ImageReward 1.2595、'Ours w/o NDCFG++' 1.6273、完整方法 1.6689,三档单调上升。Table A4 显示与 InfEdit+StableSR、ProxEdit+StableSR 对比时 ImageReward 与 CLIPScore 仍最高,但 HPSv2 上 InfEdit+StableSR 在 $16\times$ 略高(0.3021 vs 0.3017)。Table A3 用户研究:112 人评估,EDITCRAFTER vs CSD 72.61%、vs InfEdit+StableSR 61.12%、vs ProxEdit+StableSR 92.38%。Fig. 4 定性显示 CSD 在高分辨率下会出现物体重复与白边网格,EditCrafter 能精准修改目标。Fig. 5 显示低分辨率编辑 + 超分重建会丢失面部与毛发细节,EditCrafter 保留更好。Fig. 6 消融可视化展示 NDCFG++ 能正确放置目标头部位置与纹理。硬件:单卡 RTX 4090,$1024\times1024$ 仅 3.8GB VRAM,$4096\times4096$ 18.2GB。

Quantitative comparisons
Table 1: Quantitative comparisons
Ablation study quantitative results on the 16× SD 2.1
Table 2: Ablation study quantitative results on the 16× SD 2.1
User study results
Table A3: User study results
Quantitative comparisons on SD2.1
Table A4: Quantitative comparisons on SD2.1
Qualitative comparisons: (1) Original image, (2) Ours, and (3) CSD
Figure 4: Qualitative comparisons: (1) Original image, (2) Ours, and (3) CSD
Comparison of 16× super-resolution upsampler [51] with InfEdit [55] with our approach based on the 16× SD 2.1
Figure 5: Comparison of 16× super-resolution upsampler [51] with InfEdit [55] with our approach based on the 16× SD 2.1
Ablation study qualitative results on the 16× SD 2.1
Figure 6: Ablation study qualitative results on the 16× SD 2.1
查看结构化数据
任务指标本文基线提升
SD 2.1 4× 高分辨率编辑 (1024×1024) ImageReward / HPSv2 / CLIPScore 1.4831 / 0.2935 / 34.8039 CSD 0.5538 / 0.2883 / 32.8353 ImageReward +0.93、HPSv2 +0.005、CLIPScore +1.97
SD 2.1 8× 宽幅编辑 (2048×1024) ImageReward / HPSv2 / CLIPScore 1.4238 / 0.2824 / 34.5303 CSD 0.7165 / 0.2782 / 32.2794 ImageReward +0.71、CLIPScore +2.25
SD 2.1 16× 超高分辨率编辑 (2048×2048) ImageReward / HPSv2 / CLIPScore 1.6689 / 0.3017 / 35.3194 CSD 0.6304 / 0.2934 / 32.7795 ImageReward +1.04、CLIPScore +2.54(最优分辨率档)
SDXL 1.0 16× 编辑 (4096×4096) ImageReward / HPSv2 / CLIPScore 1.4919 / 0.2949 / 34.4959 CSD 0.3699 / 0.2877 / 32.8440 ImageReward +1.12、CLIPScore +1.65
16× SD 2.1 消融 (NDCFG++ 贡献) ImageReward Ours 1.6689;Ours w/o NDCFG++ 1.6273 Tiled Inv. + ScaleCrafter 1.2595 完整 NDCFG++ 比无 NDCFG++ 再 +0.04,比纯 ScaleCrafter +0.41
用户研究:与 CSD 主观对比 用户偏好率 72.61% CSD 27.39% 绝对提升 45.22 个百分点
用户研究:与 ProxEdit+StableSR 对比 用户偏好率 92.38% ProxEdit+StableSR 6.62% 绝对提升 85.76 个百分点(最大优势对手)

局限与改进

作者在 Sec. 4.2 与 Appendix B 中讨论了几个边界情况:(1) 引导尺度 $\lambda$ 固定为 0.5,并非所有 prompt 类型都最优,附录 Fig. A7/A8 表明 $\lambda$ 越大 prompt 对齐越强但身份保持越弱;(2) tiled inversion 在切块处可能留下微弱接缝(Fig. 4 中'palm tree → umbrella'等例的方块边界);(3) 对原图分辨率接近训练分辨率(如 $1024\times1024$)的情形,CSD 与 EditCrafter 差距没有 16× 档那么明显;(4) 时间步 $\tau$ 需要按分辨率手动设置($4\times$ 取 10、$8\times/16\times$ 取 37),属于额外超参;(5) 完全依赖 SD/SDXL 的生成能力,对训练数据分布外的领域(医学、遥感)编辑效果未知。从我观察看:(a) 当前评估数据集只有 30 张图,由 UltraPixel 合成而非真实摄影,覆盖面有限;(b) 用户研究 vigilance task 5 道、参与者 112 人,样本量在定量层面尚可但置信区间仍偏宽;(c) NDCFG++ 的'前期 vanilla + 后期 dilated'分工在长 prompt、否定词 prompt 上的鲁棒性未单独验证。

独立分析的弱点

独立看几个可改进点:(1) Tiled DDIM inversion 切块独立反演后直接拼接,块与块之间共享语义但潜码边界存在相位差,Fig. 4 中'cat → goat'等例在物体边缘能看到轻微拼接痕迹;改进方向是引入块重叠 + 重叠区潜码混合,类似 latent merging 的设计。(2) 反演阶段强制 $\omega=0$ 虽避免文本干扰,但完全弃用文本条件也意味着块与块间无法语义协同,对跨块的连续结构(如山脉、水流)效果受限。(3) NDCFG++ 的 $\tau$ 是分辨率相关离散阈值,缺少自适应判定;可考虑基于潜码残差能量 $\|\epsilon_c-\epsilon_\varnothing\|$ 自动切换阶段。(4) 用户研究的 prompt-image 数据集仅 30 张且全来自 UltraPixel 合成,在真实摄影、自然场景上的泛化未充分覆盖。(5) 论文未给完整的失败案例集,比如当 prompt 要求添加新物体而非替换时(如'add a bird to the sky'),系统是把它当作 $\text{sky}\to\text{sky with bird}$ 还是直接整体重画?行为未澄清。

未来方向

作者在 Conclusion 与 Sec. 5 明确表示预期'EDITCRAFTER 能被集成到真实编辑应用'。可延伸方向包括:(1) 把 tiled inversion 推广到视频编辑,利用相邻帧重叠块的时间一致性做隐式约束;(2) NDCFG++ 的分阶段调度可与 ControlNet、IP-Adapter 等条件控制结合,实现可同时编辑姿态、风格、语义的统一框架;(3) 把 NDCFG++ 应用到 inpainting / outpainting 场景,用流形约束引导保留未编辑区域;(4) 把 $\lambda$ 与 $\tau$ 做成可学习的元参数,让模型自己决定何时切换引导阶段;(5) 与最新 FLUX.1 Kontext 等流匹配模型结合,研究 NDCFG++ 在 MMDiT 架构上的等价物。基于本文的'无调参、可任意分辨率'定位,下一步明显是把它做成商业级高分辨率编辑产品或 Photoshop 插件。

复现评估

复现友好度较高:(1) 论文给完整算法伪代码(Alg. 1 tiled DDIM inversion、Alg. 2 reverse diffusion with ours、Alg. 3/4 对照版本),公式全部显式写出(Eq. 1-13)。(2) Appendix A 提供实现细节:DDIM 步数 $T=50$,$4\times$ 时 $\tau=10$,$8\times/16\times$ 时 $\tau=37$;CLIP 用 ViT-B/32;ScaleCrafter 的 re-dilation 配置直接复用官方设置。(3) 硬件门槛低:单卡 RTX 4090 即可跑全部实验,VRAM 占用 3.8GB($1024\times1024$)至 18.2GB($4096\times4096$)。(4) 依赖模型仅 SD 2.1 与 SDXL 1.0,均可公开下载。(5) 主要未知项:作者未明确说明项目代码是否开源(arXiv 预印本,文末未给 GitHub 链接),且 30 张图 + 150 对 prompt 的私有评估数据集未公开,因此独立复现的'评估'环节需要研究者自行构造。建议复现时优先对齐 Fig. 4 中 16× 'cat → goat'、SDXL 'mountain → sand dune' 等案例。