遇见数据集

3DCode

收藏
Hugging Face2026-05-26 更新2026-05-27 收录
官方服务:

资源简介:

3DCode数据集是3DCodeBench学术基准的开源复现版本,专注于通过代码进行程序化3D建模的评估与训练。该数据集包含两个核心部分:3DCodeBench评估集包含212个类别,每个类别一个规范种子实例,每个实例包含参考工厂代码和两个文本提示,用于基准测试复现;3DCodeData训练集则是一个更广泛的集合,包含212个工厂类别×60个种子=12,720个实例,每个实例提供两个标题变体、四个WebP渲染图、实例代码以及烘焙的白色模式GLB网格文件。数据生成流程基于从Infinigen提取的独立Blender脚本,通过每种子随机化参数生成,标题由LLM生成,渲染图通过Blender 5.0运行工厂代码并捕获四个标准相机角度获得。该数据集适用于文本到3D、图像到3D、代码生成、程序化3D建模等任务,可用于模型训练、监督微调、指令调优以及基于规范网格的几何评分(如Chamfer/Uni3D)。

The 3DCode Dataset is an open-source reproduction version of the 3DCodeBench academic benchmark, focusing on the evaluation and training of procedural 3D modeling via code. This dataset consists of two core components: the 3DCodeBench Evaluation Set and the 3DCodeData Training Set. The 3DCodeBench Evaluation Set contains 212 categories, with one standardized seed instance per category. Each instance includes a reference factory code and two text prompts, designed for benchmark reproduction. The 3DCodeData Training Set is a more extensive collection, comprising 212 factory categories × 60 seeds = 12,720 instances in total. Each instance provides two title variants, four WebP renderings, instance-specific code, and a baked white-mode GLB mesh file. The data generation pipeline is based on standalone Blender scripts extracted from Infinigen, with instances generated by randomizing parameters per seed. Titles are generated by LLMs, while renderings are obtained by running factory codes via Blender 5.0 and capturing four standard camera angles. This dataset is applicable to tasks such as text-to-3D, image-to-3D, code generation, and procedural 3D modeling, and can be used for model training, supervised fine-tuning, instruction tuning, and geometry scoring based on standardized meshes (e.g., Chamfer/Uni3D).

创建时间:
2026-05-24
原始信息汇总

数据集概述:3DCode

3DCode 是一个用于程序化 3D 建模的学术基准数据集,旨在通过代码生成 3D 对象。模型需要编写 Blender 5.0 Python 脚本,执行后构建特定的 3D 物体。

  • 许可证:MIT(字幕、渲染、GLB 文件和基准拆分);工厂脚本保留 Infinigen 的 BSD-3-Clause 许可证。
  • 语言:英语(en)
  • 任务类别:文本到 3D、图像到 3D
  • 标签:程序化 3D、Blender、代码生成、基准测试
  • 数据集规模:10,000 < N < 100,000 个样本
  • 配置3DCodeData(训练集,Parquet 格式)

数据集构成

数据集包含两个主要文件夹:

文件夹 内容 用途
3DCodeBench/ 评估集:212 个类别,每个类别一个规范种子。包含参考工厂脚本 + 两个文本提示。 复现基准测试结果;运行基准任务。
3DCodeData/ 大规模训练集:212 个工厂 × 60 个种子 = 12,720 个实例。每个实例包含:2 个标题变体、4 个 WebP 渲染图、实例代码、一个纯白模式 GLB 文件。 训练/SFT/指令微调数据;广泛分析;基于规范 GLB 的 Chamfer/Uni3D 评分。

数据结构

3DCodeBench/ 布局

3DCodeBench/ └── <Category>_seed0/ ├── <Category>_seed0.py ← 参考 Blender 5.0 工厂脚本(真值) ├── prompt_description.txt ← 简短的段落标题 └── prompt_instruction.txt ← 详细的结构化说明

3DCodeData/ 布局

3DCodeData/ ├── data/ │ └── train.parquet ← 主数据表,包含预览图、代码、标题 └── <FactoryName><NNN>/ ← 例如 BeetleFactory_000 ├── <FactoryName><NNN>.py ← Blender 5.0 实例脚本 ├── <FactoryName>_<NNN>.glb ← 纯白模式网格(无纹理) ├── captions/ │ ├── caption_object.txt ← 视觉描述 │ └── caption_create_3D_object.txt ← 重建该实例的指令 └── renders/ ├── Image_005.webp ├── Image_015.webp ├── Image_025.webp └── Image_035.webp


数据来源与构建

  • 工厂脚本:每个 <Factory>_<NNN>.py 是从 Infinigen 提取的独立 Blender 脚本,每个种子随机化参数。
  • 标题生成:两个标题变体来自 LLM(Gemini 3.5 Flash),输入包括多视角图像和代码。
  • 渲染:在 Blender 5.0 中执行工厂脚本,从四个规范相机角度捕获 WebP 图像。
  • 网格:纯白模式 GLB 文件,作为 Chamfer/Uni3D 评分的真值网格。

数据加载示例

使用 datasets 库加载训练集:

python from datasets import load_dataset ds = load_dataset("YipengGao/3DCode", "3DCodeData", split="train") print(ds.column_names)

[factory, preview, caption_object, caption_create_3D_object, code]

按工厂家族过滤:

python beetles = ds.filter(lambda x: x[factory].startswith(BeetleFactory))

下载指定实例的 GLB 网格:

python from huggingface_hub import hf_hub_download fac = ds[0][factory] mesh_path = hf_hub_download(repo_id=YipengGao/3DCode, repo_type=dataset, filename=f3DCodeData/{fac}/{fac}.glb)


引用

bibtex @misc{gao2026threedcodebench, title = {3DCodeBench: Benchmarking Agentic Procedural 3D Modeling Via Code}, author = {Gao, Yipeng and Shu, Lei and Ye, Genzhi and Xiong, Xi and Makadia, Ameesh and Guo, Meiqi and Itti, Laurent and Chen, Jindong}, year = {2026}, howpublished = {url{https://www.3dcodebench.com}} }

搜集汇总
数据集介绍
3DCode 数据集图片
构建方式
3DCode数据集由12,720个实例构成,每个实例均源自Infinigen中的Blender脚本,通过参数随机化生成60个种子变体。每个工厂脚本独立封装,经由Gemini 3.5 Flash模型基于多视角图像与代码输入生成两种文本描述变体。渲染过程在Blender 5.0中执行,捕捉四个标准相机视角以生成WebP格式图像,同时导出无材质的白色模式GLB网格,作为评估时计算Chamfer距离与Uni3D分数的地面真值参考。
特点
该数据集涵盖212个类别,每个类别包含一个标准种子作为评估基准,并提供两个文本提示(简短描述与结构化指令)。训练集则包含60个种子实例,每个实例配备代码、两种文本描述、四视图渲染图像以及标准化几何网格。数据采用Parquet格式组织,便于快速加载,并支持按工厂家族进行过滤,如提取所有甲虫类实例。整体设计兼顾了基准测试的权威性与训练数据的多样性。
使用方法
用户可通过HuggingFace datasets库快速加载3DCodeData子集,使用load_dataset函数指定配置为'3DCodeData'并选择训练分割。数据列包括工厂名称、预览图像、两种文本描述及对应代码。利用huggingface_hub可下载单个实例的GLB网格以进行几何分析。评估集3DCodeBench则通过CLI工具下载,包含每个类别的参考工厂脚本与文本提示,适用于复现基准结果或执行特定任务。
背景与挑战
背景概述
3DCode数据集由Yipeng Gao、Lei Shu、Genzhi Ye等研究人员于2026年创建,源自普林斯顿视觉实验室(Princeton-VL)的Infinigen项目,旨在推动基于代码的程序化三维建模研究。该数据集聚焦于一个核心研究问题:如何让机器学习模型通过编写Blender Python代码来自动生成精确的三维物体。通过提供12,720个实例,每个实例包含参考代码、多视角渲染图、文字描述及标准三维网格,3DCode为文本到三维、图像到三维等任务提供了标准化评估基准。作为首个专注于程序化三维建模的学术基准,它在计算机视觉与图形学交叉领域具有重要影响力,为评估生成式AI的三维建模能力开辟了新方向。
当前挑战
3DCode数据集所应对的领域挑战在于三维建模的自动化与可编程性——传统方法依赖手工建模或单一形式生成,缺乏对复杂、结构化三维物体生成过程的精细控制。构建过程中面临的关键挑战包括:1)从Infinigen中提取并标准化212类工厂脚本,确保每个脚本在参数随机化后仍能生成语义正确的物体;2)使用大语言模型(Gemini 3.5 Flash)生成准确且风格统一的双语描述变体,需融合多视角图像与代码信息;3)在Blender环境中实现大规模自动化渲染与几何导出,保证数据一致性及格式兼容性;4)设计公平且可复现的评估任务,涵盖Chamfer距离与Uni3D评分等指标,为研究者提供可靠的性能比较平台。
常用场景
经典使用场景
在三维内容生成领域,3DCode数据集为程序化三维建模的代码生成任务提供了标准化的评估基准与训练资源。该数据集包含了从植物、生物到各类人造物等212个类别的Blender脚本工厂,每个类别又通过随机种子生成了60个不同实例,总计超过一万两千个高质量的程序化建模样本。研究者可以利用该数据集训练或微调大语言模型,使其能够根据文本描述生成可执行的Blender Python代码,进而自动构建指定的三维模型。数据集中每个实例都配备了两种不同风格的文本描述,既包括简洁的物体概括性描述,也包含详细的指令性说明,为从文本到三维修复这一前沿研究方向提供了丰富且结构化的学习素材。
衍生相关工作
3DCode数据集的发布催生了一系列富有影响力的后续研究工作。该数据集被直接用于构建3DCodeBench基准平台,成为评估大语言模型程序化三维建模能力的权威参考标准,多篇学术论文基于此数据集提出了创新的代码生成框架,例如通过多模态融合策略提升文本到代码的语义对齐精度,或采用强化学习范式优化模型在复杂几何推理任务上的表现。此外,该数据集中的工厂脚本被进一步解耦和扩展,衍生出面向特定三维图元类型如树枝、波纹、螺旋结构等的专项数据集,推动了模块化三维程序生成技术的发展。在更广泛的维度上,3DCode数据集的开源模式及其与Infinigen生态的衔接,启发了研究者探索从程序化规则到自然语言的逆向建模问题,形成了三维场景理解与生成的双向研究环路。
数据集最近研究
最新研究方向
3DCode数据集聚焦于程序化三维建模与代码生成的交叉前沿,提出了一个新颖的基准测试任务——通过Blender Python脚本自动生成三维物体。该数据集包含超过1.2万个实例,每个实例均包含可执行的Blender代码、多视角渲染图、文本描述及标准化网格模型,为文本到三维、图像到三维的代码生成研究提供了高质量的训练与评估资源。当前研究热点集中在利用大语言模型结合程序化建模模板,实现从自然语言描述到三维几何的自动化管线,这一方向有望显著降低三维内容创作门槛,推动游戏开发、虚拟现实和数字孪生等领域的智能化进程。3DCode的出现标志着三维生成领域从隐式表征向可解释、可编辑的代码化建模的重要转变,其结构化数据形式也为后续的指令微调、多模态对齐等研究奠定了坚实基础。
以上内容由遇见数据集搜集并总结生成
二维码
社区交流群
二维码
科研交流群
商业服务