3D-Front数据集 json说明

主要组成以mesh为一个组成单元

bash 复制代码
  "mesh": [
    {
      "aid": [],
      "jid": "",
      "uid": "12131533353694159/0",
      "xyz": [
        -2.1253,
        0,
        1.3118,
        -4.1093,
        0,
        3.1478,
        -4.1093,
        0,
        1.3118,
        -4.1093,
        0,
        3.1478,
        -2.1253,
        0,
        1.3118,
        -2.1253,
        0,
        3.1478
      ],
      "normal": [
        -4.1093,
        1,
        1.3118,
        -4.1093,
        1,
        1.3118,
        -4.1093,
        1,
        1.3118,
        -4.1093,
        1,
        1.3118,
        -4.1093,
        1,
        1.3118,
        -4.1093,
        1,
        1.3118
      ],
      "uv": [
        0.01131,
        0.01667,
        0.29205,
        -0.43018,
        0.01131,
        -0.43018,
        0.29205,
        -0.43018,
        0.01131,
        0.01667,
        0.29205,
        0.01667
      ],
      "faces": [
        0,
        2,
        1,
        3,
        5,
        4
      ],
      "material": "sge/23ce4eae-862c-4e22-b703-9f566d400e44/220",
      "type": "Floor"
    },

核心几何字段

bash 复制代码
xyz - 顶点坐标
	含义:存储所有顶点的3D坐标
	格式:[x1, y1, z1, x2, y2, z2, ...]
	作用:定义mesh的几何形状,用于生成点云
faces - 面索引
	含义:定义如何连接顶点形成三角面片
	格式:[v1, v2, v3, v4, v5, v6, ...](每3个索引一个三角形)
	作用:与xyz配合定义完整的3D网格,用于点云采样
normal - 法线向量
	含义:每个顶点的法线方向
	作用:用于光照计算和渲染
uv - UV纹理坐标
	含义:纹理映射坐标
	作用:定义纹理如何贴到mesh表面,与material配合使用

标识和引用字段

bash 复制代码
uid - 唯一标识符
	含义:在整个场景中唯一标识这个mesh
	作用:被scene.room[].children[].ref引用,用于查找和存储
material - 材质引用
	含义:指向material数组中某个材质的uid
	作用:关联mesh与材质信息(纹理、UV变换等)
	对应关系:mesh.material → material[].uid
jid - 资源ID
	含义:资源标识符
	作用:在mesh中较少使用;在furniture中用于查找3D-FUTURE模型文件
	对应关系:furniture.jid → model_info.json中的model_id → OBJ文件路径
aid - 附件ID
	含义:附件ID数组
	作用:当前代码中较少使用,主要用于数据完整性

分类和组织字段

bash 复制代码
type - 网格类型
	含义:标识mesh的类别
	可能值:"Wall", "Floor", "Ceil", "Others"
	作用:用于语义分类和点云标签分配
	语义映射:wall→1, floor→2, ceil→3, others→4
constructid - 构造ID
	含义:标识属于同一构造单元的mesh
	作用:将相关mesh分组(如同一面墙的不同部分)
instanceid - 实例ID
	含义:标识mesh在场景中的具体实例
	作用:区分同一构造单元中的不同实例

字段关系

bash 复制代码
mesh.material → material.uid → 获取材质信息(texture, UVTransform)
mesh.uid ← scene.room[].children[].ref → 房间引用mesh
mesh.type → 语义标签 → 点云生成时的标签分配
mesh.xyz + mesh.faces → 构建3D网格 → 采样点云

与其他文件的对应

bash 复制代码
与Material的关系:
	mesh.material(字符串)→ material[].uid → 获取material.texture和material.UVTransform
与Room的关系:
	scene.room[].children[].ref → mesh.uid → 将mesh关联到房间
与3D-FUTURE的关系:
	注意:mesh的jid通常不直接对应3D-FUTURE模型
	只有furniture.jid才对应3D-FUTURE模型文件
相关推荐
云飞云共享云桌面1 小时前
非标自动化设备工厂如何2台服务器带动20个SolidWorks设计
运维·服务器·人工智能·3d·自动化·制造
Yyq130208696822 小时前
KTH5701 系列低功耗、高精度 3D 霍尔传感器,农业灌溉,旋钮 & 摇杆,线性位置检测,3D位置角度检测, 非接触磁场测量,低功耗磁编
3d·小杨杨13020869682
向量引擎小橙2 小时前
万字硬核:从 3D VAE 到 DiT,深度解构 AI 视频生成的“时空建模”之殇与工程化突围
人工智能·3d·音视频
数研小生12 小时前
构建命令行单词记忆工具:JSON 词库与艾宾浩斯复习算法的完美结合
算法·json
feasibility.14 小时前
混元3D-dit-v2-mv-turbo生成3D模型初体验(ComfyUI)
人工智能·3d·aigc·三维建模·comfyui
编码者卢布18 小时前
【Azure Stream Analytic】用 JavaScript UDF 解决 JSON 字段被转成 Record 的关键点
javascript·json·azure
电商API&Tina21 小时前
电商数据采集 API 接口 全维度解析(技术 + 商业 + 合规)
java·大数据·开发语言·数据库·人工智能·json
liwulin050621 小时前
【JSON】使用com.fasterxml.jackson解析json字符串
java·数据库·json
地球资源数据云1 天前
从 DEM 到 3D 渲染:R 语言 rayshader 地形可视化全指南
3d·数据分析·r语言
换日线°1 天前
前端3D炫酷展开效果
前端·3d