SceneAssistant: A Visual Feedback Agent for Open-Vocabulary 3D Scene Generation

原文链接:https://arxiv.org/pdf/2603.12238

源码链接:https://github.com/ROUJINN/SceneAssistant

一、研究动机

论文针对当前文本到3D场景生成领域的核心痛点展开研究,主要动机源于现有方法的三类关键局限:

  1. 领域受限,开放词汇泛化能力不足

    现有基于检索与VLM的场景生成方法,依赖预定义的空间关系原语(如onface toin front of),且大多针对室内等特定领域设计。当用户描述涉及超出固定词汇表的复杂、精细空间配置时,优化过程会出现约束缺失,无法准确捕捉语义,难以泛化到任意领域的开放词汇场景,常生成次优甚至错误的布局。

  2. 表示缺陷与编辑性不足

    数据驱动的生成方法(如NeRF、3D高斯表示)生成的场景缺乏可编辑性,限制了下游应用拓展;同时其生成能力受限于现有数据集的多样性,难以支撑长尾物体与非常规场景的合成。

  3. 开环生成,缺乏迭代修正机制

    现有基于LLM/VLM的场景规划方法大多采用开环模式:生成布局或代码后,不会基于渲染结果进行后续优化,无法弥补3D资产生成的固有不稳定性,也难以自主修正空间错位、物体碰撞、比例失调等问题。

基于上述背景,论文提出利用现代VLM的潜在空间推理能力,通过视觉反馈闭环和标准化操作接口,实现开放词汇、高可编辑性、高空间一致性的3D场景生成。


二、论文方法概括

SceneAssistant是一套视觉反馈驱动的代理式(Agentic)开放词汇3D场景生成框架。它以视觉语言模型(VLM)为核心控制器,遵循ReAct范式构建闭环迭代流程:VLM通过一套原子化的Action API对3D场景进行操作,每一步操作后接收场景渲染图像作为视觉反馈,结合场景数据、操作历史与系统消息进行推理,持续调整物体的位置、朝向、尺寸与相机视角,逐步优化场景布局与语义匹配度,最终生成符合文本描述的高质量3D场景。框架同时支持人机协同编辑,用户可通过自然语言介入调整生成结果。


三、论文方法详细描述

1. 整体迭代闭环流程(对应框架图核心结构)

框架整体为多步迭代的生成流程,从Step 1到Step T逐步构建最终场景,核心是"感知-推理-行动-反馈"的闭环机制,与图中左下角的闭环逻辑完全对应:

  • 输入上下文(Agent's Context):每一步迭代中,VLM接收五类信息作为决策依据:当前场景的渲染图像、用户的原始文本指令、所有历史操作记录、当前场景所有物体的结构化数据、系统反馈消息(如碰撞警告、操作错误提示)。
  • 推理与行动输出(Agent's output):VLM基于上下文输出两部分内容:先输出推理过程(Reasoning),说明当前调整的原因与目标;再输出动作列表(Action List),通过标准化API调用执行场景操作。
  • 系统执行与反馈更新(System production):系统执行VLM输出的动作,生成新的场景数据与渲染图像,同时检测碰撞等异常并生成系统消息,替换旧的上下文信息,进入下一轮迭代。
  • 终止条件 :当VLM自主判断场景满足要求时,调用Finish动作结束流程;若达到预设的最大步数 T M T_M TM(论文中设置为20)也会强制终止。

框架图右侧的Step 8-Step 9是典型的纠错示例:Step 8中VLM调整物体位置后,系统检测到物体碰撞并发出红色警告;Step 9中VLM根据警告反馈再次调整位置,成功解决碰撞问题。

2. 完整Action API体系

论文设计了三大类、共13个原子化API,将底层Blender引擎的复杂操作抽象为语义化指令,让VLM专注于高层空间规划而非底层代码实现,具体分为:

  • 对象增删类Create(生成新物体)、Duplicate(复制物体)、Delete(删除不合格物体)
  • 对象操作类(6自由度空间控制)Translate(相对平移)、Place(绝对定位)、Rotate(绝对旋转)、Scale(缩放尺寸),可实现任意空间位姿调整
  • 相机控制类ViewScene(全局预设视角)、FocusOn(聚焦指定物体)、RotateCamera(相对旋转)、MoveCamera(相对移动),保障视觉反馈的信息量与质量
  • 辅助功能GenerateFloorTexture(生成地面纹理)、Finish(结束生成)
3. 纯视觉反馈的代理运行机制
  • ReAct推理范式:每一步要求VLM先推理再行动,且仅基于当前状态与目标进行优化,不传递历史推理内容,避免错误累积。
  • 系统消息机制:内置BVH树碰撞检测,自动向VLM推送碰撞警告;设定操作约束(创建/复制物体必须单独成批执行,不可与操作类动作混合),确保VLM先观察生成结果再调整位置;自动将低于地面的物体抬升至地面,避免穿模。
  • 视觉提示增强:渲染图像中叠加物体名称标签与全局坐标轴HUD,帮助VLM建立2D视觉与3D空间的映射,提升物体定位与空间操作的精准度。
4. 人机协同编辑能力

利用VLM强大的指令跟随能力,用户可在任意迭代步骤通过系统消息注入自然语言编辑指令,对场景进行修正或扩展(如调整布局、增加物体)。通常在代理生成接近完成的布局后,一轮人工反馈即可修正细节问题,大幅提升生成结果的质量上限。


相关推荐
ShallWeL15 分钟前
RAG 文档切分长度与检索召回
agent·知识库·rag·智能体
DeepAgent10 小时前
AI Agent 工程实践(35):我的 AI Engineering OS 最终架构
大数据·人工智能·agent
rockingdingo11 小时前
Codex Claude 智能体做3D/潮玩/IP设计——装上Craftsman Agent工匠智能体Skills 游泳男孩IP案例分享
网络协议·tcp/ip·3d
粥里有勺糖12 小时前
视野修炼-技术周刊第131期 | Bun 与 pnpm Rust 化
前端·github·agent
像云~14 小时前
DeepSeek Harness Cordis理解
agent·harness·crodis
3D可视化大侠15 小时前
数字孪生时空数据可视化:CIMPro 孪大师中的轨迹与粒子实现
3d·信息可视化
魔术师Grace16 小时前
调用一次大模型,就算 Agent 吗?
aigc·agent·ai编程
桃西西呀16 小时前
GPT-5.6 的 ultra 模式凭什么开 4 个 Agent 并行跑?——多智能体协作,是把"一个聪明人"换成"一个团队"
人工智能·llm·agent
LONGZETECH16 小时前
新能源汽车动力电池实训教学痛点与虚拟仿真技术解决方案
c语言·3d·unity·架构·汽车·汽车教学软件