转换后数据格式
Octopus平台支持将上传的Rosbag格式转换为OpenData格式。
数据类型
Octopus平台对数据有以下要求:
- 数据类型:包括各传感器数据、车辆数据、目标推理数据、自车坐标姿态以及标签记录数据等。
- 数据格式:Octopus OpenData格式。其中相机采集数据文件后缀为“.jpg”,激光雷达采集数据文件后缀为“.pcd”,其他采集数据文件后缀为“.pb”(谷歌定义的protobuf格式文件)。
详情请参考表1 数据类型和消息topic对应关系。
- 消息topic具体格式要求请参考“消息topic格式规范”。
- 接收到的消息topic示例请参考“消息topic格式示例”。
除上述数据外,数据包中必须含有“Octopus_data_collection.yaml”配置文件。
- 自车相关或每个传感器设备,都对应一个消息topic。
- 采集数据的topic名称支持自定义,包含中英文、数字、“_”“-”,不得超过64个字符。
分类 |
数据类型 |
消息topic(示例) |
文件后缀 |
备注 |
---|---|---|---|---|
传感器 |
相机(camera) |
camera_front |
.jpg |
录制车辆路况图像数据。 |
激光雷达(lidar) |
lidar_roof_0 |
.pcd |
以发射激光束探测目标的位置、速度等特征量的雷达系统,探测车辆周围的目标位置,监测移动速度。 |
|
位置数据(gnss) |
gnss_raw |
.pb |
通过卫星导航系统,定位车辆位置。 |
|
毫米波雷达(radar) |
RADAR_FRONT |
.pcd |
工作在毫米波波段探测的雷达,探测车辆周围的目标位置,监测移动速度。 |
|
车辆数据 |
自车坐标和姿态数据(ego_tf) |
ego_tf |
.pb |
定位自车所处位置以及当前车辆姿态。 |
车辆数据(vehicle) |
vehicle |
.pb |
车辆底盘信息。 |
|
规划推理数据 |
目标推理数据(object_array_vision) |
object_array_vision |
.pb |
感知数据信息。 |
标签数据 |
标签记录数据(tag_record) |
tag_record |
.pb |
在车端标记驾驶过程中人工和自动驾驶路段以及其他重要信息。 |
控制数据 |
控制指令(control) |
control |
.pb |
自车的方向盘转角、加速度值等控制数据。 |
规划路径 |
规划轨迹(planning_trajectory) |
planning_trajectory |
.pb |
自车规划行驶路径。 |
预测路径 |
预测跟踪(predicted_objects) |
predicted_objects |
.pb |
感知目标的预测路径。 |
全局规划 |
全局路径(routing_path) |
routing_path |
.pb |
自车全局规划路径。 |
交通灯 |
交通灯信息(traffic_light_info) |
traffic_light_info |
.pb |
红绿灯。 |
使用场景
Octopus平台接收到原始数据(Rosbag包)后,将对数据进行解包、轨迹和接管分析等操作,用于数据总览、数据场景、数据回放、标注服务等模块,请用户结合实际需求,准备好相应模块所需数据。
Octopus平台转换后的OpenData数据服务模块所需数据请见下表:
类型 |
消息 |
数据总览 |
数据场景 |
数据回放 |
标注服务 |
---|---|---|---|---|---|
相机 |
camera |
- |
- |
√ |
√ |
激光雷达 |
lidar |
- |
- |
√ |
√ |
位置数据 |
gnss |
√ |
- |
√ |
- |
自车坐标姿态 |
ego_tf |
- |
√ |
√ |
- |
车辆数据 |
vehicle |
- |
√ |
√ |
- |
感知推理 |
object_array_vision |
- |
√ |
√ |
- |
接管及打标签信息 |
tag_record |
- |
- |
√ |
- |
控制指令 |
control |
- |
- |
√ |
- |
规划轨迹 |
planning_trajectory |
- |
- |
√ |
- |
预测跟踪 |
predicted_objects |
- |
- |
√ |
- |
全局规划 |
routing_path |
- |
- |
√ |
- |
交通灯 |
traffic_light_info |
- |
- |
√ |
- |
毫米波雷达 |
radar |
- |
- |
√ |
- |
采集数据命名规范
用户可将多个数据包存放在同个一级目录下,作为同一批次采集数据上传至Octopus平台。
一级目录的结构可根据业务情况自定义数据包名称,示例参考如下:
. ├─ raw-data ├─ package01 ├─ OpenData ├─ 2020-04-28-08-00 └─ ...
Octopus OpenData格式数据说明
Octopus OpenData格式数据目录结构可根据实际采集节点种类及数量进行修改,示例参考如下:
. ├─ OpenData ├─ camera_0 ├─xxx.jpg ├─xxx.jpg ├─timestamp.jpg ├─... ├─ lidar_roof_0 ├─xxx.pcd ├─xxx.pcd ├─timestamp.pcd ├─... ├─ gnss ├─episode-1.pb ├─other sensor ├─episode-1.pb ... ├─ Octopus_data_collection.yaml
- Octopus平台对Octopus OpenData数据包内文件大小限制如下:
- “.yaml”文件小于10kb。
- “.jpg”文件小于2MB。
- “.pcd”文件小于10MB。
- “.pb”文件小于50MB。
- MP4命名大小不可超过128位,不可有特殊字符。MP4的时间需要和Rosbag包中的时间匹配。
- 数据名称仅包含中文、大小写英文、数字、“-”“_”,不超过64位。
- 数据包名称仅包含中文、大小写英文、数字、“-”“_”,不得出现其他字符,且长度不超过64个字符。
“Octopus_data_collection.yaml”配置文件说明
数据包中必须含有“Octopus_data_collection.yaml”配置文件,且配置文件中采集时间、车辆名称、ego_tf关键字为必填项,各类型传感器的名字必须和文件夹名称一致,格式也必须与规范相匹配,否则会导致数据上传失败。
配置文件,主要包括车辆名称、传感器信息和标定ID等信息,详情参考如下:
# 华为八爪鱼自动驾驶云服务数据采集说明 cardrive: collect_time: 2020-11-01T08:00:00+08:00 #数据包采集日期,精确到小时即可 station: '腾飞' #选填 数据采集地点名称,站点名称 car: vehicle_name: 'test0805' #车辆名称,仅支持在八爪鱼平台创建的车辆 route: 'shuttlebus_30km' #选填 车辆行驶路线 mode: 'auto' #选填 路线驾驶意图, auto代表自动驾驶, manual代表人工驾驶采集 tags: #选填 数据包对应标签ID description: '' #选填 数据包描述 data_type: OpenData #必填 数据包类型,转换后的OpenData数据中包含ocotopus_data_collection.yaml文件 map_id:'' #选填,高精地图ID,字符串类型,配备后才可在回放数据界面展示高精地图信息。 folders: #必填,传感器信息(硬盘递送选填,obs导入和本地直传必填) camera: #camera类型传感器 数量不超过20个 - name: camera_03encode format: jpg lidar: #lidar类型传感器 数量不超过10个 - name: pandar format: pcd gnss: #gnss类型传感器 数量不超过1个 - name: inspvax format: proto3 radar: #radar类型传感器 数量不超过10个 - name: pandar format: pcd vehicle: #vehicle类型传感器 数量不超过1个 - name: holo_VehicleInfoMagotan format: proto3 ego_tf: #ego_tf类型传感器 数量不超过1个 - name: localization_info format: proto3 object_array_vision: - #object_array_vision类型传感器 数量不超过5个 - name: tracked_objects format: proto3 tag_record: #tag_record类型传感器 数量不超过1个 - name: tag_record format: proto3 planning_trajectory: #planning_trajectory类型传感器 数量不超过1个 - name: planning_trajectory format: proto3 predicted_objects: #predicted_objects类型传感器 数量不超过1个 - name: prediction_prediction_obstacles format: proto3 control: #control类型传感器 数量不超过1个 - name: holo_ControlCommand format: proto3 routing_path: # routing_path类型传感器 数量不超过1个 - name: routing_routing_response_viz format: proto3 traffic_light_info: # traffic_light_info类型传感器 数量不超过1个 - name: traffic_light format: proto3