论文:OSOR 方法:one-step diffusion inpainting 对象:effect-aware object removal 资源:图表来自 arXiv PDF v1

OSOR:把“擦掉物体”做成一次前向传播的扩散修复

这篇论文解决的不是普通补洞,而是现实图片里的对象移除:物体本身要消失,阴影、反射、残留光照也要一起消失,同时用户给的 mask 往往还不准。

OSOR 的关键做法是:沿用 SDXL-Inpainting 或 FLUX Fill 的强先验,但只做一步 latent restoration;再用 occupancy-guided discriminator 管边界,用 alpha head 自动扩大实际编辑区域,用 SA VP/CORNE 提供“物体+效果”的训练监督。

< 1s OSOR 在主表多数设置中单图推理低于 1 秒,A100 测量。
4x-30x 论文声称相对强多步扩散基线获得 4 到 30 倍加速。
280K SA VP 筛选得到 CORNE 训练集,包含约 28 万移除样本。
6 benchmarks 覆盖 CORNE-Val、RORD-Val、AnimeEraseBench 等六个评测集。

摘要与领域定位

如果只看一句话:OSOR 是一个针对对象移除任务重新训练的一步扩散模型,重点不是“生成得更花”,而是“快、边界稳、用户 mask 不完美时还能擦掉阴影和反射”。

论文摘要拆成三句话

  • 现实对象移除难在非局部效果:阴影、反光、局部环境交互通常不在用户 mask 内。
  • 多步扩散质量强但太慢;单步模型快,但边界和局部一致性容易崩。
  • OSOR 用任务数据、边界判别器和 alpha mask 学习,把速度和效果-aware 移除一起推进。

它和普通 inpainting 的区别

普通 inpainting 只需补全缺失区域;object removal 必须保留背景并删除“目标存在过的证据”。所以 mask 外的阴影、倒影、局部遮挡痕迹,都是任务的一部分。

现有技术现状 GAN 快但质量弱

早期 GAN inpainting 推理快,但边界连续性和真实感不足,尤其难处理复杂效果。

扩散模型问题 质量强但太慢

SDXL/FLUX 类模型依赖多步 denoising,不适合交互式或端侧对象移除。

方法抓手 一步 latent restoration

弱噪声输入 latent,模型直接预测干净背景 latent,避免几十步采样。

核心贡献 数据、边界、mask 三件套

SA VP/CORNE 提供效果监督;occupancy discriminator 管边界;alpha head 处理不完整 mask。

读前概念

理解这篇论文前,先把三个词拆开:对象移除、一步扩散、软编辑区域。

对象效果

被移除的物体会改变场景:投影、反射、遮挡、局部亮度变化。论文把这些称为 object-associated effects。

一步扩散

传统扩散反复去噪;OSOR 只从一个弱噪声 latent 预测一次,速度快,但训练时必须额外管住边界和局部纹理。

Alpha compositing

不是用硬 mask 决定哪里改,而是预测一个 0 到 1 的 alpha 图,让模型自己估计“有效编辑区域”。

问题定义:为什么“擦掉 mask 内像素”不够?

挑战 1:效果不在 mask 内

用户通常圈住物体轮廓,但阴影、反光、烟雾、倒影可能延伸到外部。只改 mask 内会留下“物体曾经存在”的证据。

挑战 2:一步模型少了修正机会

多步扩散可以逐步修错;一步模型没有迭代余地,边界一旦模糊或错位,最终结果就直接暴露。

OSOR 与其他对象移除方法对比
图 1 是论文动机的压缩版:OSOR 不只擦掉主体,还能去掉阴影等关联效果,同时在延迟图上明显快于多步方法。
读这篇时要抓住一个主线:OSOR 不是单纯蒸馏扩散模型,而是为“对象移除”额外设计训练监督和融合机制。

核心观察:把“生成背景”和“决定改哪里”分开学

OSOR 的结构可以看成两层:主干模型负责生成干净背景;alpha head 负责预测实际应该替换的区域。这样用户 mask 可以很保守,但模型仍有机会扩展到阴影和反射。

Phase I 学会准 mask 下的一步移除

先假设 mask 覆盖完整 object-effect 区域,用硬 latent blending 保证非编辑区域不变。

Phase II 学会不准 mask 下的软融合

再给模型不完整 mask,但仍用完整 effect-aware mask 监督,让 alpha head 学会补全有效编辑范围。

SA VP 与 CORNE 数据集构建流程
图 2 解释数据来源:SA VP 从 noisy instruction-edit triplets 中验证语义一致且局部化的变化,再结合 SAM2 得到 object mask 和 object-effect mask。

方法拆解

整套流程可以按执行顺序理解:先造可靠训练数据,再做一步 latent restoration,最后用两阶段训练解决边界和 mask 不完整问题。

OSOR 两阶段训练流程
图 3 是方法总览:Phase I 使用硬混合与 occupancy-guided discriminator;Phase II 加入 alpha head 和 incomplete-mask conditioning。
1
筛数据

SA VP 验证编辑前后差异是否局部且语义匹配。

2
合成 mask

SAM2 给 object-core,差异区域补充 effects。

3
一步恢复

从弱噪声 latent 直接预测 clean latent。

4
管住边界

用 occupancy patch target 监督判别器。

5
软融合

alpha head 学会扩大有效编辑区域。

1. SA VP:从 noisy triplets 得到效果-aware 监督

Object-core 与效果区域融合

m_fuse = m_obj union m_diff^val

这里的约束是:训练目标不能只看物体轮廓,还要覆盖经过验证的图像差异区域。它用于数据构建阶段,减少“模型学会只擦物体、不擦阴影”的错误。

2. 一步 latent restoration

弱噪声输入

z_t = alpha_t z + sigma_t epsilon, epsilon ~ N(0, I)

这一步控制训练难度:不是从纯噪声生成,而是从接近原图的 latent 恢复干净背景,降低一步预测的负担。

一步预测 clean latent

u_theta = f_theta(z_t, c, t) z_hat_0 = (z_t - sigma_t u_theta) / alpha_t

这是推理效率的来源:主干只前向一次,直接得到背景估计,避免多步 denoising。

3. Phase I:硬混合保护非编辑区域

Hard latent blending

z_out = m_z * z_hat_0 + (1 - m_z) * z

这个公式约束“mask 外保持原样”。它用于 Phase I,防止模型为了修复局部而意外改动背景;代价是边界附近更需要精细监督。

4. Occupancy-guided discriminator:让边界 patch 不再只有硬标签

occupancy-guided patch targets
图 4 是论文最关键的边界设计:边界 patch 可能只有 30% 在 mask 内,不应该被当作 100% fake 或 0% fake;area pooling 给它精确的 fractional target。

按占用面积归一化的生成器对抗损失

L_adv(w) = sum_k E[ sum_p w_k(p)(-log D_k(x_hat)_p) / (sum_p w_k(p) + eps) ]

它约束判别器关注真正被编辑的区域,且不同 mask 大小的样本 loss 尺度更稳定。主要减少一步修复常见的边界模糊、接缝和 patch 标签过度自信。

5. Phase II:alpha head 处理保守或错位 mask

同时输出去噪与 alpha

(u_theta, ell_alpha) = f_theta(z_t, c, t) alpha_hat = sigmoid(ell_alpha)

alpha 约束模型估计“有效编辑区域”。它复用主干语义知识,只给输出头增加少量开销。

软融合替代硬融合

z_out = alpha_hat * z_hat_0 + (1 - alpha_hat) * z

这一步用于 Phase II 推理和训练,让模型能修改用户 mask 外的阴影或反射,同时不必把整张图交给生成器随意改。

实验结果

论文把 OSOR 和 SDXL-Inpainting、FLUX Fill、OmniEraser、CLIPAway、AttentiveEraser、ObjectClear、OmniPaint 比较;延迟统一在 NVIDIA A100 上测量。

Table 1 主结果
表 1 是最核心结果:OSOR-FLUX 在 CORNE-Val 和 AnimeEraseBench 上多数指标第一,且 object-only mask 与 object-effect mask 之间结果变化较小,说明 Phase II 的 mask 鲁棒性确实发挥作用。
数据集模型延迟亮点解读
CORNE-ValOSOR-FLUX0.80sFID/CMMD/LPIPS/PSNR/SSIM 多数最佳最贴近其训练数据分布,表现最强。
RORD-ValOSOR-FLUX0.62sCFD 最好,其他指标有竞争力真实捕获数据上不是全面碾压,但速度优势明显。
AnimeEraseBenchOSOR-FLUX0.89s对象 mask 与对象+效果 mask 下均表现强说明方法不只适用于自然图像。
CORNE-Val 和 AnimeEraseBench 定性对比
图 5 展示 CORNE-Val 与 AnimeEraseBench:对比方法常见问题包括 hallucination、残留影子或边界不自然。
RORD-Val、RemovalBench、TextEraseBench 定性对比
图 7 扩展到 RORD-Val、RemovalBench、TextEraseBench,证明论文不只在自建 CORNE 上展示效果。
Table 4 更多 benchmark 结果
表 4 评估 object-only mask 下的 TextEraseBench、OmniPaint-Bench 和 RemovalBench。OSOR-FLUX 在文本移除和 OmniPaint-Bench 上多数指标领先;RemovalBench 上则更混合。

消融实验

消融实验回答三个问题:一步去噪该选什么噪声强度?occupancy target 是否真的有用?alpha head 是否真的解决不完整 mask?

噪声水平与 patch target 消融
表 2/3:t=400 是较好折中;occupancy target 在 PSNR、SSIM、FID、LPIPS、CFD 上优于 hard mask 与 Gaussian soft target。
alpha compositing 消融
图 8/表 5:Phase II 的 alpha compositing 在 object-only 和 effect-aware mask 下都提升结果,在保守 mask 场景收益更明显。
组件它在验证什么关键数值/结论为什么重要
噪声水平 t一步恢复从多强的噪声开始t=400 整体最好太低没有足够编辑能力,太高一步恢复难度上升。
Occupancy target边界 patch 是否需要 fractional labelFID 50.0639 优于 hard/gaussian直接支撑论文的边界监督设计。
Alpha head不完整 mask 下能否扩展编辑区域object-only FID 59.8017 -> 35.5989说明 Phase II 不是装饰,而是 mask 鲁棒性的核心。

局限与批判

端侧速度仍未证明

论文强调交互与移动场景,但主要延迟是在 A100 上测的;端侧 GPU/NPU 的真实体验还需要额外验证。

强依赖数据筛选质量

SA VP 如果漏掉细微阴影或接受错误编辑对,CORNE 的监督会带来偏差。论文展示了流程,但数据噪声上界仍难完全判断。

复杂物理效果未充分展开

透明物体、镜面反射、全局光照变化、强遮挡等场景可能超出“局部 object-effect mask”的建模能力。

RemovalBench 不是全面领先

表 4 中 RemovalBench 表现更混合,说明 OSOR 的优势不是所有数据集和指标上都无条件成立。

推荐阅读路线

如果时间有限,不建议从 Related Work 开始啃。按下面顺序读,会更快抓住论文贡献。

1
图 1 + 引言

先理解三目标:effect-aware、mask-robust、efficient。

2
图 2

看懂 SA VP 如何把普通编辑数据变成 object removal 监督。

3
图 3/4

理解两阶段训练和 occupancy discriminator。

4
公式 12/13

重点看 alpha head 如何从硬 mask 变成软编辑区域。

5
表 1-5

区分主结果、速度优势、消融证据和不完全领先的场景。

最终 takeaway:OSOR 的价值在于把扩散模型的质量先验压缩进一次推理,同时用对象移除专用的数据与损失补上“一步模型”的边界和 mask 鲁棒性短板。