Articraft: An Agentic System for Scalable Articulated 3D Asset Generation
作者Matt Zhou, Ruining Li, Xiaoyang Lyu, Zhaomou Song, Zhening Huang, Chuanxia Zheng, Christian Rupprecht, Andrea Vedaldi, Shangzhe Wu
机构University of Cambridge, University of Oxford, Nanyang Technological University
用 LLM 写 Python 程序来构建关节化 3D 资产,绕过数据稀缺瓶颈,配合专用 SDK 和 harness 实现大规模自动生成。
Articraft 系统生成的 Articraft-10K 数据集,涵盖各类日常物体的关节化 3D 资产。
研究动机
- 问题难在哪:关节化 3D 对象(柜子、台灯、婴儿车、工业工具等)在机器人仿真、游戏、VR 中至关重要,但现有数据集规模小、类别窄。PartNet-Mobility 只有 2300 个资产,涵盖 46 个类别;AKB-48 依赖真实扫描,难以扩展。现有学习方法因此过拟合,无法泛化到新类别。
- 现有方法的问题:已有方法要么依赖 ad-hoc 扩散表示(NAP、CAGE),要么需要复杂的图像反馈(Articulate-Anything 依赖从已有资产库检索 part mesh,ArtiCAD 需要多视角渲染和关节运动 keyframe)。这些方法要么类别受限,要么成本高昂。
- 核心 insight:关节化对象的设计本质上是一个递归组合过程——分解 part、决定连接方式、指定 joint、实例化几何、验证行为、迭代修正——这与程序编写高度同构。
核心方法
1. 问题形式化:生成 = 写程序
Articraft 将"生成关节化 3D 资产"转化为"写一个 Python 程序,执行后输出 URDF 文件"。给定自然语言描述(可选参考图),agent 写程序,执行后产生 articulated asset(含 URDF 中的 3D mesh、语义 part、joint 及运动范围)。这消除了对 Blender 等重型外部软件的依赖。
2. SDK:为 LLM 设计的关节化对象领域语言
SDK 是论文最核心的技术贡献之一,为 LLM 提供既表达力强又接近熟悉代码模式的接口:低层有 Box、Cylinder、Sphere 等基础形状,高层有 Supports、Panels、Hinges、Wheels、Grilles、swept profiles 等抽象,用一行代码表达复杂机构。每个 Part 对象有 visual geometry、惯性属性和语义名称;ArticulationType 支持 revolute/prismatic/continuous/fixed;自验证接口 expect_contact()、expect_within()、allow_overlap() 等让 LLM 可以写针对当前对象的几何约束测试。
Articraft 为台灯写的 model.py 代码片段,展示 SDK 的 part 定义、几何组合和 articulation 声明。
3. Harness:迭代执行-反馈循环
Harness 将 LLM 从单次生成器变成迭代 agent,遵循 SWE-agent 的原则:任务专用界面 + 结构化反馈比通用工具更有效。受限工作空间:只有一个可写文件(model.py),加只读 SDK 文档和精选示例。Action Space 包含 5 类工具:read_file(读取当前程序和文档)、apply_patch / replace / write_file(编辑程序)、find_examples(从示例库检索相关对象示例)、compile_model(执行程序,触发自动 QC)、probe_model(几何量测查询)。迭代循环直到 LLM 停止发出编辑命令且验证通过为止。
Articraft 系统概览,展示 agent 工作空间、action space 和迭代 execution-grounded 修正循环。
4. Articraft-10K 数据集构建
用 Articraft 生成了 10,909 个资产,人工筛选后保留 10,018 个(保留率 91.8%),涵盖 245 个类别(映射到 15 个超类别)。平均每个资产耗费 $1.14,平均 16.8 轮交互(中位数 15 轮)。与已有数据集对比:PartNet-Mobility 有 46 类/2300 个,AKB-48 有 48 类/2000 个——Articraft-10K 在类别数和资产规模上均有显著优势,且完全由 agent 生成而非依赖艺术家。
5. 最关键的一句话
SDK 定义了 LLM 能表达什么,Harness 决定了 LLM 如何迭代修正——两者合力让通用编程模型无需重训练就能生成多样化、可仿真的关节化 3D 资产。
主要实验结果
- User Study:125 名大学生评估了 5000 次 pairwise 比较,涵盖 6 种方法。Articraft(GPT-5.5)大幅优于所有 baseline,包括 Articulate-Anything、PhysX-Anything、URDF-Anything+、Codex 等。关键消融:去掉 SDK 和 harness 后,GPT-5.5 单独运行排名倒数第二,证明 SDK+harness 是核心。
- 下游任务提升:将 Articraft-10K 加入 Particulate(关节化结构估计模型)训练数据后,rest-pose segmentation(mIoU)从 0.576 提升至 0.607,articulated geometry(gIoU)从 0.305 提升至 0.361,在原训练分布之外的类别上提升尤为显著。
- 图像条件生成和应用:给定参考图,Articraft 生成与图像对应的关节化资产;集成到 LiteReality pipeline 中可实现从室内扫描直接生成关节化场景重建;Articraft-10K 资产可直接导入物理仿真器、被机械臂操纵或在 VR 头显中使用。
不同方法生成的关节化资产对比。Articraft 在几何细节和关节完整性上明显优于 baseline。
User study 结果,Articraft 在偏好排名中显著领先。
局限与展望
- 已知局限:部分类别(如 screwcap bottle)产生形状畸变,因为局部结构检测通过但全局形状不对;触发式喷壶等需要 trigger 与瓶体交错的机构超出当前 SDK 表达能力;冰箱、电饭锅等需要内部结构的对象常常缺乏内部 detail;当前验证聚焦高价值结构检查以控制成本,部分错误姿态下的冲突检测缺失。
- 研究意义:Articraft 代表了一种新范式——不从已有数据分布中学习生成,而是用 agent 主动构建训练数据。这对数据稀缺的 3D 理解任务有普遍意义:SDK+Harness 框架可泛化到其他需要结构化输出验证的 3D 生成任务(如场景级布局、物理属性标注)。