RoPEMover: Depth-Aware Object Relocation via Positional Embeddings¶
会议: NeurIPS 2026
arXiv: 2606.27332
代码: https://ipekoztas.github.io/RoPEMover/
领域: 其他
关键词: 图像编辑, 物体迁移, 旋转位置编码, 深度感知, 扩散Transformer
一句话总结¶
本文提出 RoPEMover,直接操纵 Diffusion Transformer 的 2D 旋转位置编码(RoPE)并将其扩展为融入度量深度的 3D RoPE,仅需极少合成与真实配对数据即可实现几何自洽、遮挡正确且阴影联动的单图物体移动。
研究背景与动机¶
在单张图像内对指定物体进行移动与重定位,是图像编辑、内容创作和交互式设计中最基础也最具挑战性的任务之一。理想的物体迁移不仅要求将物体在空间中平移或缩放,更必须维持整体场景的几何自洽性:移动过程中物体需匹配透视规律,被移走后裸露出的背景空缺必须得到合理补全,进入新位置时需正确处理与其他物体的空间前后遮挡关系,同时投射阴影、高光反射和环境间接光照等场景依赖效应也必须同步物理级联动更新。
现有的解决方案在处理这些复杂交互时普遍存在严峻的瓶颈。早期的两阶段方案先将源物体擦除再在目标位置重新生成或黏贴,但擦除往往残留阴影伪影,重新插入又极易改变物体自身的身份细节;基于复制粘贴并辅以边缘图像协调(harmonization)的方法由于缺乏三维空间感知,处理透视和遮挡时显得生硬,常出现物体漂浮或比例失调的“贴纸”感;最新的视频扩散先验或大规模专用合成数据方案虽然能捕捉动态轨迹,但依赖庞大且复杂的训练管线,且在单图推理时仍频繁引发物体复制、消失或背景扭曲。与此同时,基于文本指令微调的现代 Diffusion Transformer(如 FLUX Kontext、Qwen-Image)虽然具备强大的图像编辑潜力,却只能接受粗粒度的自然语言描述,无法提供精确的像素级几何位移控制。
本文的切入点在于反思扩散模型的内部表征机制:与其借助外部三维重建或沉重的时序模型,不如直接撬动模型固有的空间注意力坐标系。核心 idea:将 Diffusion Transformer 内部的旋转位置编码(RoPE)视作可操控的连续空间坐标场,通过对物体 Token 的 2D RoPE 进行几何形变并将单目估计的度量深度注入未使用的虚拟时间轴,构建出端到端深度感知的 3D RoPE,在无需视频先验与大规模训练的前提下实现高度物理自洽的单图物体迁移。
方法详解¶
整体框架¶
RoPEMover 的输入包括单张原始图像、标记待移动物体的二值掩码 \(\mathbf{M}_{\text{src}}\) 以及用户指定的拖拽交互信号 \((d_x, d_y, s)\),其中 \((d_x, d_y)\) 表示像素位移,\(s\) 为目标缩放比例。整个编辑过程由三大核心步骤协同构成:首先,根据拖拽信号将源物体掩码内的 Token 旋转位置编码(RoPE)进行几何形变映射;其次,通过单目几何估计器获取场景度量深度,结合拉普拉斯方程补全背景深度并执行 Z-buffer 遮挡测试,合成出精确的目标深度图;接着,将该深度图注入到 Qwen-Image 架构中原本闲置的虚拟时间 RoPE 轴中,构建出兼顾平面位置与纵深关系的 3D RoPE;最后,送入经过轻量 LoRA 微调的 Diffusion Transformer,在去噪的前 20 步中施加该空间引导,生成几何透视精确、遮挡正确且伴随阴影联动的最终图像。
%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
A["输入图像 + 源掩码 M_src + 拖拽信号 (dx, dy, s)"] --> B["RoPE 空间形变映射<br/>坐标网格重定向与缩放变换"]
A --> C["深度感知 3D RoPE 构建<br/>背景拉普拉斯补全 + Z-buffer 深度合成"]
B --> D["两阶段轻量 LoRA 微调<br/>前 20 步去噪施加空间形变引导"]
C --> D
D --> E["输出图像:几何自洽、遮挡正确、阴影与光照物理联动"]
关键设计¶
1. RoPE 空间形变映射:通过重定向注意力相位直接引导物体空间位移 传统扩散编辑通常通过跨注意力注入或潜在特征替换来改变物体位置,这常常破坏模型底层的空间先验。RoPEMover 利用旋转位置编码(RoPE)将相对空间距离编码到注意力 Query/Key 复数相位的固有机制,将物体掩码内的 Token 映射至目标坐标。对于分辨率缩放至 \(W \times H\) 的图像,在 patch 尺寸为 \(p=16\) 的 Token 网格上,像素偏移转换为网格步长 \(\delta_x = \lfloor \frac{d_x}{p} \cdot \frac{W}{W_0} \rceil, \delta_y = \lfloor \frac{d_y}{p} \cdot \frac{H}{H_0} \rceil\)。对源掩码质心为 \((c_h, c_w)\) 的任意 Token \((r, c)\),其位置编码被直接替换为形变后的坐标: $\(r' = (r - c_h) \cdot s + c_h + \delta_y, \quad c' = (c - c_w) \cdot s + c_w + \delta_x\)$ 这使得处于源位置的特征 Token 在注意力计算时“表现得仿佛”已经身处目标位置并完成了缩放,从而在反向扩散初期高效锁定物体的目标几何轮廓。
2. 深度感知 3D RoPE 构建:复用虚拟时间轴并结合物理遮挡合成纵深场 仅靠 2D 坐标的形变无法解决三维空间的前后遮挡问题(例如将物体移到透明花瓶后方或桌腿内侧)。Qwen-Image 等先进 DiT 采用了解耦的 3D RoPE 架构 \((t, h, w)\),在单图任务中时间轴 \(t=0\) 完全闲置。本文将度量深度估计器 MoGe-2 预测的深度归一化至 \([1, 2]\) 区间,直接注入时间轴的第一维复数频率分量 \(\mathbf{f}_{\text{img}}[\ell, 0] \leftarrow \hat{D}_{r,c}\)。在推理阶段,系统仅有单图输入,算法首先通过求解狄利克雷边界条件下的拉普拉斯方程 \(\nabla^2 D = 0\) 填补源物体挖空后的背景深度 \(D_{\text{bg}}\)(在掩码边界预留 3 像素边缘缓冲以杜绝边界深度污染);随后将源物体内部的相对起伏深度平移到目标位置 \(D_{\text{obj}}\),并通过标准 Z-buffer 深度测试处理前后遮挡: $\(D_{\text{out}}(i,j) = \begin{cases} D_{\text{obj}}(i,j) & \text{若 } D_{\text{obj}}(i,j) < D_{\text{bg}}(i,j) \\ D_{\text{bg}}(i,j) & \text{其他情况} \end{cases}\)$ 最终在边界狭窄过渡带应用基于欧氏距离变换(EDT)的平滑混合,生成连续自洽的三维深度图,使注意力机制天然感知物体的纵深排序。
3. 两阶段轻量 LoRA 微调:合成数据学定位与真实数据保质感的课程迁移 为了避免收集昂贵且繁复的单图运动视频或三维数据集,本文设计了两阶段训练范式。第一阶段在基于 Blender Cycles 渲染的合成 CLEVR 配对场景(仅移动单一几何体,保持光照、相机和材质完全冻结)上训练秩为 16 的 LoRA 适配器,重点强化模型对 RoPE 坐标扰动的响应灵敏度与背景补全能力;第二阶段在精心采集的 166 组真实世界固定机位物体位移配对图像上进行微调,通过 30 倍的数据重采样消除合成与真实域间的质感鸿沟。实验证实,第一阶段赋予了模型精确的空间重定位能力,而极小规模的第二阶段则成功激活了模型内部对真实反射(如水壶上苹果的高光镜像移动)和接触阴影的精细建模能力。
损失函数 / 训练策略¶
模型冻结 Qwen-Image 的文本编码器与 VAE,仅在其注意力投影层(to_q, to_k, to_v, add_q_proj, add_k_proj, add_v_proj, to_out.0)、MLP 层以及调制层注入 rank=16 的 LoRA 模块。训练采用 BF16 混合精度与 DeepSpeed ZeRO-2,在 4 张 NVIDIA A100 GPU 上进行,分辨率为 \(512 \times 512\)。优化器选用 AdamW,恒定学习率设为 \(1 \times 10^{-4}\)。第一阶段在合成数据集上训练 2 个 epoch(共 10,000 步优化),耗时约 40 小时;第二阶段在真实配对数据集上继续微调 2 个 epoch,耗时约 8 小时。在推理采样期间,RoPE 空间形变仅在扩散的前 \(t=20\) 步激活,后续去噪步骤关闭形变,以便扩散主干专注于高频纹理修复与光照阴影的自然融合。
实验关键数据¶
主实验¶
在真实捕获基准 ObjMove-A(包含 200 组带基准真值的成对图像集合)上,针对目标区域保留度(Tgt)、背景保留度(BG)、源区域擦除完整度(Src)以及全图保真度(PSNR)开展评估。
| 方法 | CLIP Tgt ↑ | CLIP BG ↑ | CLIP Src ↑ | DINO Tgt ↑ | DINO BG ↑ | DINO Src ↑ | DreamSim Tgt ↓ | DreamSim BG ↓ | DreamSim Src ↓ | PSNR (dB) ↑ |
|---|---|---|---|---|---|---|---|---|---|---|
| ChronoEdit | 73.27 | 92.93 | 77.65 | 45.27 | 91.17 | 44.28 | 0.6261 | 0.1026 | 0.5896 | 20.49 |
| 3DiT | 75.74 | 91.08 | 83.24 | 48.78 | 86.81 | 48.21 | 0.5723 | 0.1711 | 0.4934 | 18.59 |
| DragAnything | 76.51 | 82.26 | 84.28 | 48.85 | 66.69 | 36.21 | 0.4460 | 0.3681 | 0.5233 | 11.21 |
| DragDiffusion | 74.40 | 91.35 | 80.00 | 46.51 | 86.97 | 46.93 | 0.6237 | 0.1369 | 0.5741 | 19.56 |
| Inpaint4Drag | 92.08 | 96.49 | 83.46 | 85.09 | 95.10 | 55.54 | 0.1379 | 0.0632 | 0.4798 | 22.85 |
| MagicFixup | 89.62 | 96.06 | 92.60 | 80.90 | 95.29 | 78.49 | 0.1755 | 0.0552 | 0.1853 | 23.32 |
| GeoDiffuser | 76.13 | 93.76 | 86.64 | 53.18 | 91.88 | 59.73 | 0.5430 | 0.0987 | 0.4109 | 19.65 |
| Qwen Image | 81.23 | 94.01 | 81.23 | 64.14 | 92.12 | 56.78 | 0.4132 | 0.1003 | 0.4719 | 19.04 |
| Flux Kontext | 76.26 | 94.80 | 78.86 | 51.26 | 92.58 | 50.05 | 0.5719 | 0.1068 | 0.5402 | 19.21 |
| FreeFine | 90.26 | 96.09 | 91.33 | 82.11 | 94.91 | 71.30 | 0.1611 | 0.0564 | 0.2421 | 22.81 |
| ObjectMover | 85.32 | 96.61 | 88.61 | 80.08 | 96.21 | 77.46 | 0.1849 | 0.0449 | 0.1895 | 24.06 |
| Ours | 91.74 | 97.59 | 94.67 | 87.40 | 97.57 | 87.37 | 0.1180 | 0.0292 | 0.1012 | 24.97 |
消融实验¶
基于 5k 合成场景规模及真实数据微调下的架构组件消融结果如下表所示:
| 配置 | CLIP Tgt ↑ | CLIP BG ↑ | CLIP Src ↑ | DINO Tgt ↑ | DINO BG ↑ | DINO Src ↑ | DreamSim Tgt ↓ | DreamSim Src ↓ | PSNR (dB) ↑ | 说明 |
|---|---|---|---|---|---|---|---|---|---|---|
| w/o Warping (Stage 1) | 83.35 | 94.92 | 89.03 | 71.85 | 94.54 | 71.14 | 0.32 | 0.26 | 20.26 | 仅 LoRA 微调,无 RoPE 坐标形变,空间控制严重漂移 |
| w/o Depth (Stage 1) | 88.84 | 96.13 | 92.17 | 79.66 | 96.37 | 80.55 | 0.18 | 0.18 | 24.54 | 具备 2D 坐标形变但无深度注入,无法正确处理深度轴遮挡 |
| Ours (Stage 1) | 88.23 | 96.49 | 93.62 | 80.49 | 95.81 | 83.49 | 0.20 | 0.13 | 22.45 | 完整架构,仅在 5k 合成数据上训练,缺乏精细外观与真实质感 |
| Ours (Stage 2) | 91.74 | 97.59 | 94.67 | 87.40 | 97.57 | 87.37 | 0.12 | 0.10 | 24.97 | 完整模型:深度感知 3D RoPE + 两阶段课程微调 |
关键发现¶
- RoPE 空间形变的决定性作用:去除 RoPE 形变(w/o Warping)导致 DINO Tgt 从 87.40 暴跌至 71.85,PSNR 从 24.97 dB 跌落至 20.26 dB,表明单纯使用文本 Prompt 与常规 LoRA 微调完全无法建立准确的像素级位移约束。
- 深度感知对纵深与遮挡的解歧义能力:引入深度感知 3D RoPE 后,模型成功消除了在 \(z\) 轴方向上的空间歧义,使物体移至半透明物体后方或前景遮挡物后方时的前后关系完全自洽。
- 两阶段微调的高性价比:仅用 166 组真实世界照片在 Stage 2 微调,就将 DreamSim Tgt 从 0.20 显著压低至 0.12,源区域清除度从 0.13 优化至 0.10,同时完美激活了接触阴影更新与物体次级反射重投影。
- 去噪时间表敏感性:形变控制只在前 20 步去噪阶段施加最为理想;少于 20 步会导致位移不彻底,超过 20 步则会干扰后期高频细节的扩散生成。
亮点与洞察¶
- 极度巧妙的表征复用机制:无需对底层架构增加任何繁重参数,巧妙利用单图任务中闲置的虚拟时间 RoPE 轴来承载单目度量深度,将 2D 注意力机制升级为具有三维感知能力的连续空间几何场。
- 数据饥渴的破局点:避免了采集动辄数万条昂贵配对视频的重型路线,利用简单三维几何体渲染结合 166 张真实图像,便彻底激活了预训练扩散 Transformer 本身蕴藏的深厚三维几何与物理光照先验。
- 强泛化性与多任务扩展:该机制不仅能在 Qwen-Image 上生效,还成功无缝迁移至 FLUX.1 Kontext 等基于流匹配的 Diffusion Transformer,并能自然扩展到高质量物体添加与复杂场景协调等下游任务。
局限与展望¶
- 推理耗时受限于多步扩散:方法依赖标准多步迭代扩散去噪(约 20-50 步),尽管深度预处理耗时可以忽略,但整体推理时延较高,难以达到实时交互编辑。
- 对单目深度估计与分割质量的依赖:合成深度图高度依赖 MoGe-2 初始估计精度与 SAM 物体分割精度;在透明物体、极端反光或复杂细小镂空结构(如自行车辐条)场景下可能产生深度分层误差。
- 潜在的预训练先验偏差:作为构建在预训练扩散大模型之上的编辑方法,当物体经历大角度视角自旋或非刚性形变时,仍会偶发性地继承基础模型的结构形变失真。
相关工作与启发¶
- vs ObjectMover:ObjectMover 依赖沉重的视频扩散模型与时序注意力来推断物体运动,经常导致目标物体意外消失或复制错误;RoPEMover 直接在单图注意力坐标层进行形变与深度注入,不仅数据效率极高,且在所有指标上均显著领先。
- vs Inpaint4Drag / FreeFine / MagicFixup:此类方法多采用“擦除+移动+局部修补”的几何变形管线,虽然表面上能将物体移动到对应位置,但物体往往丧失与周围环境的接触阴影、投射阴影与次级反光,呈现明显的悬浮感与“贴纸”感;RoPEMover 则借助全局注意力与深度编码实现了全场景光影的协同物理重合成。
- vs GeoDiffuser:GeoDiffuser 基于去噪反演(Inversion)与显式几何变换,计算开销巨大且极难保持精细的物体身份特征;RoPEMover 则通过两阶段 LoRA 微调实现免反演前向推导,身份保真度极高。
评分¶
- 新颖性: ⭐⭐⭐⭐⭐ 首次提出将 2D RoPE 形变与度量深度时间轴复用相结合,直接通过坐标场操纵 Diffusion Transformer 实现几何自洽的物体迁移。
- 实验充分度: ⭐⭐⭐⭐⭐ 在 ObjMove-A 基准上与十余种主流 baseline 全面对比,消融深入详实,包含用户主观测试与跨模型架构泛化验证。
- 写作质量: ⭐⭐⭐⭐⭐ 逻辑严密,数学公式表述严谨,问题动机、技术剖析与实验证据呈现清晰连贯。
- 价值: ⭐⭐⭐⭐⭐ 为单图可控图像生成与几何级可控编辑开辟了全新的低成本表征操纵路径,极具工程落地与学术启发价值。