编辑工具
本章节介绍标注工具结果文件的格式说明
结果数据
文件位置:objects/data.json
json
{
"objectId": "3", // 对象标识
"classType": "class2", // 类别名称
"classAttrs": {}, // 类别属性
"seg": 2, // 段号
"pointN": 957144, // 包含的点数量
"objType": "3D_SEGMENT", // 对象类型:3D_BOX / 3D_SEGMENT
"boundingBox": { // 3D_SEGMENT的边框
"min": { "x": 476835.3, "y": 3667821.9, "z": 57.1 },
"max": { "x": 476875.6, "y": 3667868.5, "z": 60.4 }
},
"transform": { // 3D_BOX 的变换参数
"position": { "x": 476740.6824, "y": 3667803.7269, "z": 57.675 },
"rotation": { "x": 0, "y": 0, "z": -1.9374 },
"scale": { "x": 13.0306, "y": 17.0763, "z": 3.796 }
}
}标签数据
文件位置:class.json
json
{
"name": "car", // 名称
"alias": "汽车", // 别名(可选)
"color": "#FF0000", // 颜色
"attrs": [ // 属性列表
{
"name": "direction",
"alias": "朝向",
"value": "",
"type": "SELECTION", // CHECK / SELECTION / TEXT
"options": [
{ "id": "opt1", "name": "向前", "value": "forward" },
{ "id": "opt2", "name": "向后", "value": "backward" }
]
}
]
}属性类型
| 值 | 说明 |
|---|---|
| CHECK | 复选框 |
| SELECTION | 单选/多选 |
| TEXT | 文本输入 |
分割数据
文件位置:segments 目录下pcd文件,pcd文件中seg字段对应结果数据里面的seg字段
文件名

每一个文件名对应一个点云分块的名字
详情参考ept的文档(https://entwine.io/en/latest/entwine-point-tile.html)
根据节点的key转换到节点的名称,
javaScript
function keyToName([d, x, y, z]) {
let name = 'r';
for (let i = 0; i < d; ++i) {
let shift = d - i - 1;
let mask = 1 << shift;
let step = 0;
if (x & mask) step += 4;
if (y & mask) step += 2;
if (z & mask) step += 1;
name += step;
}
return name;
}更多信息可以参考potree中PointCloudEptGeometry的实现(https://github.com/potree/potree/blob/develop/src/PointCloudEptGeometry.js)
文件内容
pcd 内容如下: 