Appearance
标签与分类
标签
标签是检测目标的框的标签,标签里可以设置多种属性。
分类
分类只包含一个属性,但属性可以嵌套在多个层级中,即,选项中还可以包含属性。
导出结果说明
格式支持
图片支持:
点云支持:
- 不论是数据流还是任务流都能在数据集中导出结果;
- 任务流的作业结果需要全部验收通过后才能导出;
- 目前平台支持导出不支持自定义格式,如果您有特殊的需求,请联系我们,我们会为您线下处理。
在数据集中点击导出
,并创建导出。
在设置中,对该结果进行命名,并且选择想要导出的结果来源(可多选,但是不同的结果来源会在同一个文档里);
任务流的结果在验收完成后会在此处显示任务名称;
打开
云存储
按钮,可以将结果导出到指定的云存储中。
图片结果说明
- 坐标原点为图片左上角
json
[
{
"version": "1.0",
"dataId": 8171960,
"sourceId": 384,
"sourceType": "DATA_FLOW",----------------------------------------标注途径
"sourceName": "Without Task",
"validity": "VALID",
"classificationValues": [-----------------------------------------分类
{
"id": "321628",
"values": [
{
"alias": "day",
"id": 321628,
"isLeaf": true,
"name": "day",
"value": "raining"
}
]
},
{
"id": "321629",
"values": []
}
],
"instances": [
{
"id": "4b9e7a69-21df-4d54-8e82-2fe60ca3ecd7",
"type": "BOUNDING_BOX",----------------------------------框类型
"trackId": "mfNF5NoTMoQlzIpK",
"trackName": "1",
"classValues": [
{
"alias": "",
"id": "e26b9b9d-ce02-405c-972a-60508e5767c4",
"isLeaf": true,
"name": "color",---------------------------------属性
"value": "red"
},
{
"alias": "",
"id": "8b991d9b-43a4-4bbd-9e64-62dcfadd723b",
"isLeaf": true,
"name": "condition",
"value": "static"
}
],
"contour": {
"points": [-------------------------------------矩形框坐标信息(左上+右下)
{
"x": 896.5871559633028,
"y": 501.2477064220182
},
{
"x": 1041.0275229357799,
"y": 650.9724770642201
}
]
},
"modelConfidence": null,
"modelClass": null,
"className": "car"----------------------------------标签
}
],
"segments": null,-------------------------------------------分割结果信息
"segmentPointsFileUrls": null
}
]
点云融合结果说明
由于单个数据集的数据量可能非常大,因此无法直接导出数据文件,只能导出包含数据下载地址的数据信息。
json
[
{
"version": "1.0",
"dataId": 35869636,
"sourceId": 91059,
"sourceType": "DATA_FLOW",-------------------------标注途径
"sourceName": "Without Task",----------------------结果来源
"validity": "VALID",
"classifications": [-------------------------------分类
{
"classificationId": "621209",--------------分类ID
"classificationVersion": 1,
"id": "c12c052f-cd99-4b24-8137-05aef200ff87",---结果ID(随机生成)
"values": [
{
"attributeVersion": 1,
"id": "a1f07c4a-ff16-4fd5-91b6-b2206e01c5a9",---分类属性ID
"isLeaf": true,
"name": "raining", ---------------分类标签
"type": "RADIO",
"value": "day"--------------------分类属性
}
]
}
],
"instances": [------------------------------------实例标注(区分于分割)
{
"id": "7670abeb-3c41-4390-9567-a5d650403575",---------物体ID(跨帧不同)
"type": "3D_BOX",-------------------------框类型(立体框)
"trackId": "4ce2c677-f5a0-46f0-8575-c1fe6ede65ca",----追踪ID(跨帧保持一致)
"trackName": "49",------------------------物体追踪编号(跨帧保持一致)
"classValues": [
{
"attributeVersion": 1,
"id": "fde80399-1b16-421c-b2bb-5a66a2fc2e8e",--属性ID
"isLeaf": true,
"name": "open door",--------------属性名称
"type": "RADIO",
"value": "0"----------------------属性选项
}
],
"group": null,
"contour": {
"center3D": {-------------------------立体框框中心点坐标
"x": 3.9880322978682683,
"y": -5.996876235789843,
"z": 0.35219400823116304
},
"pointN": 3081,-----------------------立体框内点的数量
"points": [],
"rotation3D": {-----------------------欧拉角: XYZ
"x": 0,
"y": 0,
"z": 0.06981317007977318
},
"size3D": {---------------------------立体框的尺寸:长宽高
"x": 5.126545718348625,
"y": 1.8128929502360815,
"z": 1.4596501648426057
}
},
"modelConfidence": null,
"modelClass": "",-------------------------模型标签
"classId": 1252268,-----------------------标签ID
"className": "Car",-----------------------标签名称
"classVersion": 1
},
{
"id": "f0aec806-ec1c-415b-bdad-cebe601dca6a",----结果ID(随机生成)
"type": "2D_BOX",--------------------------------框类型
:伪3D框(映射而来)
"trackId": "4ce2c677-f5a0-46f0-8575-c1fe6ede65ca",--追踪ID(跨帧保持一致)
"trackName": "49",-------------------------------物体追踪编号(跨帧保持一致)
"classValues": [
{
"attributeVersion": 1,
"id": "fde80399-1b16-421c-b2bb-5a66a2fc2e8e",--属性ID
"isLeaf": true,
"name": "open door",---------------------------属性名称
"type": "RADIO",
"value": "0"-----------------------------------属性选项
}
],
"group": null,
"contour": {
"pointN": 0,
"points": [----------------------------------------伪3D框坐标信息(逆时针)
{
"x": 1744.5459470504645,
"y": 472.31358578182557
},
{
"x": 1746.6245888007977,
"y": 671.2005848865007
},
{
"x": 1557.3971698902615,
"y": 701.0062303110309
},
{
"x": 1553.7375047602116,
"y": 485.16868058480185
},
{
"x": 2961.89465416532,
"y": 503.7316045566707
},
{
"x": 2961.8946541653195,
"y": 928.0175602305421
},
{
"x": 2961.8946541653195,
"y": 1108.8819894869562
},
{
"x": 2961.8946541653195,
"y": 549.9974504027113
}
],
"viewIndex": 3--------------------------------------相机视角
},
"modelConfidence": null,
"modelClass": "",
"classId": 1252268,
"className": "Car",
"classVersion": 1
},
{
"id": "22c03e38-4375-4b5c-bd97-1a68a6363008",
"type": "2D_RECT",--------------------------------框类型:矩形框(映射而来)
"trackId": "4ce2c677-f5a0-46f0-8575-c1fe6ede65ca",
"trackName": "49",
"classValues": [
{
"attributeVersion": 1,
"id": "fde80399-1b16-421c-b2bb-5a66a2fc2e8e",
"isLeaf": true,
"name": "open door",
"type": "RADIO",
"value": "0"
}
],
"group": null,
"contour": {
"pointN": 0,
"points": [
{
"x": 1553.7375047602113,
"y": 472.3135857818256
},
{
"x": 2961.89465416532,
"y": 1108.8819894869562
}
],
"viewIndex": 3
},
"modelConfidence": null,
"modelClass": "",
"classId": 1252268,
"className": "Car",
"classVersion": 1
},
{
"id": "dd3a3b58-8993-4693-9e2a-d734b9f501db",
"type": "3D_LANE_POLYGON",------------------------框类型:多边形
"trackId": "d5a83475-bc90-478b-8a87-f25391f7fb4b",
"trackName": "51",
"classValues": [],
"group": null,
"contour": {
"pointN": 5,----------------------------------多边形的点数
"points": [-----------------------------------多边形的点在3D的坐标
{
"x": -18.720951326972315,
"y": -18.59911111914009,
"z": -0.20000000000000284
},
{
"x": -11.935214069570153,
"y": -13.145060616902308,
"z": -0.20000000000000284
},
{
"x": -10.55263638463313,
"y": -16.95008573120929,
"z": -0.20000000000000284
},
{
"x": -17.060084296629984,
"y": -20.370810755467737,
"z": -0.20000000000000284
},
{
"x": -22.05581207329483,
"y": -21.312213729176687,
"z": -0.20000000000000284
}
]
},
"modelConfidence": null,
"modelClass": "",
"classId": 1341821,
"className": "Ground",
"classVersion": 1
},
{
"id": "7a7a5007-a7f8-4b81-a42d-63c8c6fe2017",
"type": "2D_LANE_POLYGON",------------------------框类型:多边形(图片视角,映射而来)
"trackId": "d5a83475-bc90-478b-8a87-f25391f7fb4b",
"trackName": "51",
"classValues": [],
"group": null,
"contour": {
"pointN": 5,
"points": [-----------------------------------多边形的点在2D图片的坐标
{
"x": 920.0916769251269,
"y": 581.6779466579364
},
{
"x": 869.6278693367778,
"y": 614.5330873223376
},
{
"x": 689.4237371571355,
"y": 595.2718421807066
},
{
"x": 831.2827376952331,
"y": 576.7954825144936
},
{
"x": 933.3636404524892,
"y": 572.4691692264727
}
],
"viewIndex": 0---------------------------------相机视角
},
"modelConfidence": null,
"modelClass": "",
"classId": 1341821,
"className": "Ground",
"classVersion": 1
},
{
"id": "13f46ed4-719d-4f03-90b1-8fed320cb302",
"type": "3D_LANE_POLYLINE",------------------------框类型:线段
"trackId": "7a2de127-0c36-4842-bcae-91d749834a8e",
"trackName": "52",
"classValues": [],
"group": null,
"contour": {
"pointN": 3,-----------------------------------线段的点数
"points": [------------------------------------线段的点在3D的坐标
{
"x": -19.887205626498055,
"y": -7.938415824985878,
"z": -0.20000000000000284
},
{
"x": -24.00308780658412,
"y": -12.149946780153943,
"z": -0.20000000000000284
},
{
"x": -28.629236165028722,
"y": -16.690587552111438,
"z": -0.20000000000000284
}
]
},
"modelConfidence": null,
"modelClass": "",
"classId": 1311771,
"className": "lane line",
"classVersion": 1
},
{
"id": "00a106a4-9b43-4131-9c86-2172ceffeb95",
"type": "2D_LANE_POLYLINE",-------------------------框类型:线段(图片视角,映射而来)
"trackId": "7a2de127-0c36-4842-bcae-91d749834a8e",
"trackName": "52",
"classValues": [],
"group": null,
"contour": {
"pointN": 0,
"points": [-------------------------------------线段的点在2D图片的坐标
{
"x": 1343.7695870893576,
"y": 628.9108666740658
},
{
"x": 1237.8099476872885,
"y": 600.7154338342145
},
{
"x": 1172.0587778761806,
"y": 582.3421396964417
}
],
"viewIndex": 0
},
"modelConfidence": null,
"modelClass": "",
"classId": 1311771,
"className": "lane line",
"classVersion": 1
}
],
"segments": []
}
]
点云分割结果说明
点云分割融合结果文档结构示例(连续帧)
步骤一: 结果文档中的pcd文件需要解析后才能查看
解析方法,运行(python):
json
import numpy as np
import struct
def read_seg_data(file_path):
with open(file_path, 'rb') as f:
# Read header
line = f.readline().decode('ascii').strip()
while line != 'DATA binary':
if line.startswith('WIDTH'):
width = int(line.split()[1])
elif line.startswith('HEIGHT'):
height = int(line.split()[1])
elif line.startswith('FIELDS'):
fields = line.split()[1:]
elif line.startswith('SIZE'):
sizes = [int(s) for s in line.split()[1:]]
elif line.startswith('COUNT'):
counts = [int(c) for c in line.split()[1:]]
line = f.readline().decode('ascii').strip()
# Read binary data, only has seg field
nd = {"1": np.dtype('uint8'),
"2":np.dtype('uint16'),
"3":np.dtype('uint32')}
data = np.fromfile(f, dtype=nd[str(sizes[0])])
points = []
offset = 0
for i in range(width * height):
point = []
for field, size, count in zip(fields, sizes, counts):
fmt = '<' + {1: 'b', 2: 'h', 4: 'f'}[size] * count
values = struct.unpack_from(fmt, data, offset)
offset += size * count
if field == 'seg':
point.append(values[0])
points.append(point)
return np.array(points)
步骤二:pcd解析出来的点是按照区块分类的,此时需要根据区块编号去json文件的"no"
字段寻找对应的标签信息。
json
[
{
"version": "1.0",
"dataId": 35869636,
"sourceId": 91059,
"sourceType": "DATA_FLOW",--------------------------作业方式
"sourceName": "Without Task",-----------------------结果来源
"validity": "VALID",
"classificationValues": [
{
"id": "621209",-----------------------------分类的ID
"values": [
{
"id": "a1f07c4a-ff16-4fd5-91b6-b2206e01c5a9",
"isLeaf": true,
"name": "raining",------------------分类名称
"type": "RADIO",
"value": "night"--------------------属性
}
]
},
{
"id": "591244",
"values": [
{
"id": "5fc1701f-280b-4d4a-b415-cfd7f0077ffb",
"isLeaf": true,
"name": "snowing",
"type": "RADIO",
"value": "day"
}
]
}
],
"objects": [--------------------------------------------相机结果
{
"id": "7d303042-81e2-4986-ab99-a04110083c1f",---物体ID(每一帧不同且唯一)
"type": "POLYGON",------------------------------框类型
"trackId": "-aCxRyAWlYYwnM7U",------------------追踪ID(同一物体保持一致)
"trackName": "48",------------------------------追踪编号(同一物体保持一致)
"classValues": [],------------------------------物体属性
"group": null,
"contour": {
"pointN": 8,--------------------------------点的数量
"points": [---------------------------------点坐标
{
"x": 532.6027397260274,
"y": 535.6164383561644
},
{
"x": 429.5890410958905,
"y": 601.3698630136987
},
{
"x": 475.61643835616445,
"y": 781.095890410959
},
{
"x": 620.2739726027397,
"y": 756.986301369863
},
{
"x": 705.7534246575342,
"y": 719.7260273972603
},
{
"x": 795.6164383561645,
"y": 656.1643835616438
},
{
"x": 784.6575342465753,
"y": 555.3424657534247
},
{
"x": 734.2465753424657,
"y": 496.16438356164394
}
],
"viewIndex": 0-----------------------------相机角度
},
"modelConfidence": null,
"modelClass": "",
"classId": 1258096,----------------------------标签ID
"className": "vehicle"-------------------------标签名称
}
],
"segments": [------------------------------------------点云分割结果
{
"id": "0c4a2ca0-7b7c-4b80-8dab-187b45641e67",--物体ID物体ID(每一帧不同且唯一)
"type": "SEGMENTATION",------------------------框类型
"trackId": "-aCxRyAWlYYwnM7U",-----------------追踪ID(同一物体保持一致)
"trackName": "48",-----------------------------追踪编号(同一物体保持一致)
"classValues": [],-----------------------------物体属性
"contour": {
"pointN": 2232,----------------------------点的数量
"points": []
},
"no": 1,---------------------------------------点在pcd文件里对应的区块编号
"classId": 1258096,----------------------------标签ID
"className": "vehicle"-------------------------标签名称
}
],
"segmentPointsFileUrls": null
}
]