3D-Layout-R1: Structured Reasoning for Language-Instructed Spatial Editing¶
会议: ECCV 2026
论文: https://eccv.ecva.net/virtual/2026/poster/4525
PDF: https://media.eventhosts.cc/Conferences/ECCV2026/pdfs/6330.pdf
领域: 视觉语言推理 / 三维布局编辑
关键词: 结构化推理、场景图编辑、三维排序、几何奖励、GRPO
一句话总结¶
3D-Layout-R1 让模型边推理边更新 JSON 三维场景图,再用 IoU、碰撞和格式奖励进行 GRPO 优化,使 Qwen3-8B 在理想输入排序任务上的 mean IoU 从 Vanilla GRPO 的 0.850 提升至 0.924,但改善幅度与指标表现明显依赖具体任务。
研究背景与动机¶
理解“椅子在桌子右边”与执行“把椅子移到桌子右边,同时与沙发对齐”不是同一个问题。SpatialRGPT、SpatialLLM 和 3D-R1 等方法主要增强空间问答;真正编辑布局时,模型还要识别哪些物体需要改变、维持未编辑物体的属性,并把自然语言关系落实成数值位置和朝向。多步指令会进一步放大错误:前一步挪动了参考物体,后一步就必须使用更新后的场景状态。
已有布局系统常让语言模型提出高层约束,再由外部求解器或可微优化器确定物体位姿。这能利用明确的几何规则,却把“理解指令”和“计算布局”分在不同环节。反过来,直接让模型自由写长推理也未必可靠:排序中的“间隔”究竟指物体边缘还是中心,组宽是否包含内部空隙,这些歧义如果只停留在自然语言中,很容易直到最终坐标输出时才暴露。
本文因此把场景图既当输入,也当推理过程中不断更新的工作状态。中间结果不只是一段解释,而是带有物体标识和坐标的 JSON 修改,可以检查模型是否真的把约束变成了布局。核心 idea:先用包含显式场景图更新的监督轨迹教会模型如何执行编辑,再以目标几何重叠、内部碰撞和输出格式作为奖励,让推理过程服务于可检查的三维状态变化。
方法详解¶
整体框架¶
输入包括自然语言指令、初始三维场景图,以及视觉模型可使用的场景图像;输出是更新后的完整场景图和包含中间图编辑的结构化推理轨迹。方法不把最终坐标交给外部布局优化器求解,而是由模型直接生成;仿真器或视觉定位模块负责提供初始场景表示,机器人执行则仍属于下游模块。
训练分为数据构建、结构化 CoT-SFT 冷启动和几何奖励 GRPO 三个环节。教师只在构建监督轨迹时获得目标图;推理阶段不能把目标图当输入。下面的奖励分支也仅用于训练,并非部署时调用真值来修正结果。
%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
Input["图像、初始场景图<br/>与语言指令"] --> Data["可控布局与教师轨迹"]
Target["目标场景图<br/>仅训练使用"] --> Data
Data --> Trace["结构化图编辑冷启动"]
Trace --> Reward["几何与格式奖励优化"]
Target --> Reward
Reward --> Model["训练后模型"]
Model --> Output["推理时逐步图编辑<br/>及最终场景图"]
Input -->|推理输入| Model
关键设计¶
1. 可控布局与教师轨迹:先让编辑目标足够明确,再监督如何到达目标
场景表示是有向图:节点为物体及支撑区域,边编码接触或包含关系。序列化后是以整数节点 ID 为键的 JSON 字典,节点保存类型、三维中心、轴对齐长宽高、roll/pitch/yaw 和可选文字描述。数值属性承担精确计算,语义描述帮助指代消歧,稳定的 ID 则让多步修改能够持续指向同一物体。它不是重新生成任意房间,而是在既有场景状态上执行有对象归属的修改。
作者报告的数据集总规模为 15k 场景,明确描述了 10k 合成排序场景和 1k 用于训练的 Blender 空间对齐场景;缓存没有完整列出其他任务规模与训练测试划分,因此不能把余数直接认定为房间编辑训练集。排序指令同时规定分组属性、组内排序属性、组间顺序、总跨度和间距,目标布局由这些规则约束。对齐任务则从整齐的类别网格出发,只随机平移、旋转部分物体,让模型恢复错位对象并保持正确对象不变。
房间编辑来自 InstructScene 的指令语料,但仅凭“放在沙发旁”会对应许多合法答案,拿某个真值坐标监督可能惩罚同样合理的结果。作者给每个待加入物体额外提供其到两到三个已有参考物体的距离,以缩小可行位置集合,并将其描述为接近唯一的目标。这里仍需区分“减少歧义”与“数学上保证唯一”:距离约束本身在三维空间可能保留多解,还需要语义、支撑面等条件共同限制。
初始图由利用 Blender 标注的规则式自动标注框架获得。DeepSeek-R1 同时读取指令、初始图和目标图,生成从初态到终态的逐步解释,把分组、排序、相对位置和距离要求改写为对象级操作。这些轨迹是训练材料,不是经独立证明的正确程序;目标条件化教师可能给出事后解释,论文缓存也未提供完整的轨迹过滤和逐步验证协议。
2. 结构化图编辑冷启动:让中间状态承载计算结果,而非只承载解释
普通答案 SFT 只教模型从输入跳到最终坐标,难以暴露排序关系、组宽计算和逐物体放置之间的依赖。本文的 CoT-SFT 让推理轨迹显式包含 JSON 更新,例如先确定物体分组和顺序,再计算各组占据的区间,最后写回每个对象中心。这样,“球体组已经放完”不只是语言判断,而有对应的数值状态可供后续圆柱组继续使用,减少自由文本中重复猜测间距含义的问题。
空间对齐沿用同一状态更新方式,但操作内容不同:先推断类别网格,比较物体中心找出偏离,再通过网格线上的插值或端点延伸恢复位置。房间编辑则以关系和距离约束逐个修改位姿。这里的统一性来自表示与训练接口,而不是把三个任务强行简化成同一排序算法。训练后的模型生成这些操作;笔记中的流程不意味着另有一个硬编码执行器代替模型做数值推理。
格式要求把解释和结果绑定在一起:响应需包含成对的 <think> 标签,标签内部至少有一个合法 JSON 块,最终答案段还要有第二个合法 JSON 块。格式奖励检查是否满足这一结构,对标签或括号等偏差降低得分。不过,可解析 JSON 只能证明接口合规,不能证明每个中间步骤正确,更不能证明自然语言解释忠实反映模型内部计算。
3. 几何与格式奖励优化:让可解析的编辑进一步靠近正确布局
CoT-SFT 提供能产出粗略正确布局的起点,随后 GRPO 对同一输入采样多个候选,通过组内相对奖励更新策略。奖励由三部分相加:与目标的 IoU、预测内部的无碰撞得分、输出格式得分。以下按第 3.3 节文字整理奖励关系,权重具体数值在缓存正文中未给出:
计算 IoU 前先建立预测和真值节点对应:有描述时尝试语义匹配,不能得到唯一语义匹配时选取 IoU 最大的真值节点。每对轴对齐三维框的 IoU 是交集体积除以并集体积,奖励对匹配结果求平均,原文公式以预测节点数归一化。相较于要求坐标完全正确的二元奖励,它能区分部分重叠与高度重叠;相较于仅看中心距离,它也关心框的几何范围。不过,完全不相交的框仍可能一起得到零分,因此“连续几何奖励”并不表示任意远处候选都能得到细粒度反馈。缓存没有明确交代一对一匹配或漏检、多余节点的完整处理。
碰撞项对非容器物体的无序对计算轴对齐相交体积,超过小容差才计为碰撞,避免微小数值误差触发惩罚。按原文定义,无碰撞得分为:
其中 \(\mathcal{C}\) 是碰撞物体对集合,\(N\) 是非容器物体数。没有碰撞时得分为 1;它不是“无碰撞物体占比”,也不是按物体对总数归一化,碰撞对多于物体数时按此式可以为负。排除容器避免把合法包含直接当成穿透,但这种框级检查仍不覆盖真实网格几何、支撑稳定性或运动轨迹碰撞。
一个完整示例¶
原文图 2 的排序指令要求按形状分组,各组按高度递增排列,组顺序为盒子、球、圆柱、圆锥;总宽 12.506 米,组间空隙 0.200 米,组内空隙 0.05 米,所有物体的 y 坐标为 0,z 为自身高度的一半。这个例子说明了为什么“先规划区间,再计算中心”比直接猜一串坐标更清楚。
首先,模型识别盒子组中节点 4、5、7 的高度为 0.799、1.108、1.293 米,据此确定顺序。接着,它计算组区间,例如盒子占据 x 方向的 [-6.253, -3.783] 米,球体组从 -3.583 米开始,正好在前一组右边缘之后留出 0.200 米。
然后,模型为球体逐个写回中心:图中节点 3 的 x 为 -3.179,节点 8 为 -1.992,节点 6 为 -0.320。这里中心间距由相邻物体的半宽与 0.05 米空隙共同决定,不能把“间隙”当成中心之间固定差值。后续组接着使用已计算的区间完成放置,最终输出完整图,而中间 JSON 保留了顺序和坐标计算的依据。上述数值来自图 2,不是额外构造的实验结果。
损失函数 / 训练策略¶
监督阶段学习教师提供的结构化推理与终态输出,RL 阶段采用 GRPO 的组内奖励归一化、裁剪策略更新以及相对参考策略的 KL 正则。这里不重抄缓存中排版损坏的 GRPO 公式,避免把提取错误当成算法定义。
训练评测使用 Qwen2.5-7B、Qwen2.5-VL-7B、Qwen3-8B 和 Cosmos-Reason1-7B 等骨干,比较 Ans-SFT、CoT-SFT、Vanilla GRPO 与完整方案。缓存正文未给出学习率、batch size、采样组大小、训练步数、碰撞容差或各奖励权重,不能据此形成可直接复现的训练配置。
实验关键数据¶
主实验¶
mean IoU 越高越好;Ctr. Dist. 是匹配框中心的平均欧氏距离,越低越好,原表未在列头注明单位;[email protected] 是 IoU 至少为 0.5 的节点比例;Col. Free 按上述碰撞公式定义;Edit Dist. 是预测物体顺序到真值顺序的平均 Levenshtein 编辑距离。下表只摘取有辨识力的对照,数值来自原表 2、3、4,不把零样本大模型与领域内后训练小模型视为等数据预算比较。
| 任务 | 模型与设置 | Mean IoU | Ctr. Dist. | 补充指标 |
|---|---|---|---|---|
| 排序,理想输入 | LayoutGPT (Gemini-2.5) | 0.781 | 0.471 | Col. Free 0.982 |
| 排序,理想输入 | Qwen3-8B CoT-SFT | 0.635 | 0.513 | Edit Dist. 1.610 |
| 排序,理想输入 | Qwen3-8B Vanilla GRPO | 0.850 | 0.274 | Edit Dist. 0.684 |
| 排序,理想输入 | Qwen3-8B Ours | 0.924 | 0.145 | Col. Free 1.000;Edit Dist. 0.510 |
| 空间对齐 | Qwen3-VL-235B-Instruct,零样本 | 0.786 | 0.177 | [email protected] 0.787 |
| 空间对齐 | Qwen2.5-7B CoT-SFT | 0.764 | 0.189 | [email protected] 0.758 |
| 空间对齐 | Qwen2.5-7B Ours | 0.809 | 0.176 | [email protected] 0.803 |
| 房间编辑 | Gemini 2.5 Pro,零样本 | 0.591 | 0.621 | [email protected] 0.587 |
| 房间编辑 | Qwen3-8B CoT-SFT | 0.972 | 0.026 | [email protected] 0.972 |
| 房间编辑 | Qwen3-8B Ours | 0.983 | 0.031 | [email protected] 0.983 |
排序任务完整方案相对同骨干 Vanilla GRPO 的 mean IoU 增加 0.074,即 7.4 个百分点;不能写成相对提高 7.4%。空间对齐上 Qwen2.5-7B 相对自身 CoT-SFT 增加 0.045。房间编辑虽然 IoU 增加 0.011,但中心误差从 0.026 增至 0.031,因此不能概括为所有指标均改善。
消融实验¶
缓存可核验的是训练策略对照和输入鲁棒性分析,没有单独移除 IoU、碰撞、格式奖励的完整数值表。下面的“消融”因此限定为训练阶段对照,不虚构奖励项消融。
| 分析设置 | 模型 / 策略 | Mean IoU | Col. Free |
|---|---|---|---|
| 排序,理想输入 | Qwen3-8B Ans-SFT | 0.552 | 0.700 |
| 排序,理想输入 | Qwen3-8B CoT-SFT | 0.635 | 0.854 |
| 排序,理想输入 | Qwen3-8B Vanilla GRPO | 0.850 | 0.954 |
| 排序,理想输入 | Qwen3-8B Ours | 0.924 | 1.000 |
| 排序,无描述 | Qwen3-8B Ours,参考项 | 0.209 | 0.984 |
| 排序,无描述 | Qwen2.5-VL-7B CoT-SFT | 0.641 | 0.829 |
| 排序,无描述 | Qwen2.5-VL-7B Ours | 0.787 | 0.979 |
| 排序,噪声输入 | Qwen2.5-VL-7B CoT-SFT | 0.773 | 0.844 |
| 排序,噪声输入 | Qwen2.5-VL-7B Ours | 0.822 | 0.980 |
无描述条件移除节点 caption;噪声条件加入 5% 包围框扰动并施加部分可见性。数值分别来自原表 1、2,不能把理想输入和感知受损输入的成绩直接混为同一个榜单。
关键发现¶
- 结构化冷启动与 RL 在排序中互补:完整方案高于直接答案监督、CoT-SFT 和 Vanilla GRPO,但这些对照不能单独分离每个奖励项的贡献。
- 准确场景图本身提供大量信息,纯语言 Qwen3-8B 在理想排序中取得 0.924;移除描述后则只有 0.209,说明不能把理想输入成绩直接解释成强视觉感知能力。
- 无描述条件下 Qwen2.5-VL-7B 完整方案达到 0.787,支持视觉定位在信息缺失时的价值,但跨骨干对照并非严格的单变量视觉消融。
- 房间编辑的 CoT-SFT 已达到 0.972 IoU,作者认为每例只修改场景的小部分,给 RL 留下的空间较小;这也提醒读者全场景平均分可能稀释编辑对象的错误。
亮点与洞察¶
- 中间状态同时是推理材料与可检查输出。相较仅增加解释长度,写回物体 ID、组区间和坐标更直接地暴露算错位置、用错参考物体等问题。
- 数据可评测性与训练目标一起设计。给房间指令补距离约束解决了真值不唯一带来的监督歧义,但也使任务比开放式室内设计更受约束。
- 鲁棒性实验澄清了语言与视觉能力的分工。完整图上的数值推理优势,不足以推出缺失语义或感知噪声下也能保持同样性能。
局限与展望¶
- 作者明确把真实机器人演示定位为高层目标状态生成:Qwen3-VL 提取包围框,已知抓取技能和规则式目标控制完成执行。模型不显式处理连续动力学或运动过程碰撞,不能据此宣称端到端安全操作。
- 主体证据来自合成布局和受距离约束的房间编辑。仓库、多轮编辑和真实桌面任务主要是定性展示,缓存没有规模化成功率、置信区间或长时错误累积统计。
- IoU 与碰撞检测使用轴对齐框,而图中还存有旋转参数;缓存未说明如何全面评价朝向恢复。高 IoU 或 Col. Free 不等于网格级无穿透、稳定支撑或所有语言关系都满足。
- 正文缺少训练超参、完整划分和单项奖励消融;匹配算法也未明确一对一约束。复现与解释高分时需补充这些细节,不能把摘要中的平均提升当成各任务一致收益。
- 缓存图 4 中椅子的指令为“右侧”,展示轨迹却写“后方”;图 5 的指令空隙为 0.05 米,示例计算使用 0.03 米。无法仅凭文本缓存断定是原图问题还是提取问题,故不把这两幅图当作逐约束正确性的证据。
相关工作与启发¶
- 对比 SpatialRGPT / SpatialLLM / 3D-R1:这些工作的主要目标是空间理解或问答;本文进一步预测可执行的场景状态变化,但并未因此解决底层感知与控制的全部问题。
- 对比 LayoutGPT / LayoutVLM / Holodeck:相关布局路线使用语言规划以及外部约束或优化模块;本文强调模型内部直接生成逐步图编辑。减少外部布局求解不意味着自动获得其硬约束保证。
- 对比 InstructScene:本文复用其指令语料并添加参考距离,目标转为既有场景上的受约束编辑。应注意数据来源、任务改造与评测目标之间的区别,而不是将高 IoU 等同于通用场景生成能力。
评分¶
- 新颖性: 4/5。把显式三维图编辑轨迹与几何奖励后训练结合,贡献集中于任务、表示和训练接口的协同设计。
- 实验充分度: 3/5。覆盖三任务、多骨干与受损输入,但独立奖励消融、复现细节和真实部署量化仍不足。
- 写作质量: 3/5。主线清楚,图示有助理解;部分示例约束不一致和缓存公式损坏增加核验负担。
- 价值: 4/5。为语言驱动的三维目标状态生成提供具体方案,但离开放环境中的可靠机器人执行仍有明显边界。