华为云用户手册

  • lane_change_side 用于动作change_lane。 lane_change_side list ENUM_LANE_CHANGE_SIDE = ("left", "right", "inside", "outside", "same") left:参考实体左侧的车道 right:参考实体右侧的车道 inside:参考实体内侧的车道 outside:参考实体外侧的车道 same:与参考实体相同的车道
  • dynamics_shape 表示给定变量随时间或距离的变化,用于动作change_speed,change_lane。 dynamics_shape list ENUM_DYNAMI CS _SHAPE = ("linear", "cubic", "sinusoidal", "step") linear:变化曲线是一个线性linear函数f(x) = f_0 +变化速率*x。 cubic:变化曲线是一个三次变迁Cubical transition函数f(x)=Ax3+B*x2+Cx+D,约束梯度在开始和结束时必须为零。 sinusoidal:变化曲线是一个正弦变迁Sinusoidal transition函数f(x)=A*正弦(x)+B,约束梯度在开始和结束时必须为零。 step:变化曲线是一个阶段变迁Step transition函数。
  • catalog 目录catalog可使一些元素得以重复使用,在目录catalog中参数化类型是可维护的。 catalog list ENUM_CATA LOG = ("vehicle_catalog", "controller_catalog", "pedestrian_catalog", "misc_object_catalog") vehicle_catalog:场景中可复用的车辆类型列表。 controller_catalog:场景中可复用的控制器类型列表。 pedestrian_catalog:场景中可复用的行人类型列表。 misc_object_catalog:场景中可复用的杂项对象类型列表。
  • distance_direction 用于触发条件object_distance和point_distance。 distance_direction list ENUM_DISTANCE_DIRECTION = ("longitudinal", "lateral", "euclidianDistance") longitudinal:在x坐标中测量距离。正表示引用位于参考实体的前面。 lateral:在y坐标中测量距离,正表示引用位于参考实体的左侧。 euclidianDistance:欧氏距离。
  • 与数据包同名的yaml配置文件说明 数据包中必须含有与数据包同名的yaml配置文件主要包括车辆名称、传感器信息和标定ID等信息,详情参考如下: # 华为八爪鱼自动驾驶云服务数据采集说明 project: '项目名称' module: '感知' cardrive: collect_time: 2020-11-01T08:00:00+08:00 #数据包采集日期,精确到小时即可 station: '腾飞' #选填 数据采集地点名称,站点名称 car: vehicle_name: 'test' #车辆名称,仅支持在八爪鱼平台创建的车辆 route: 'shuttlebus_30km' #选填 车辆行驶路线 speed:10km/h #选填 车速 mode: 'auto' #选填 路线驾驶意图, auto代表自动驾驶, manual代表人工驾驶采集 tags: ['主车直行','主车倒车'] #选填 标签,标签个数不超过50个 例:沙尘天,正向设计,驾驶模式 description: '强风沙天,车辆空载在排土区自动驾驶到接土区前等待长坡道' #选填 车载情况 segments: #选填 数据包场景片段 - tags: ['晴天','直行'] time: 2021-08-27T11:43:07~2021-08-27T11:43:47 data_type: Rosbag #必填 数据类型 map_id: MAP1134 #选填,高精地图ID,字符串类型,配备后才可在回放数据界面展示高精地图信息。 preprocessor: #转OpenData算子信息 id: 10105 # 算子id resource_spec: X86_4Core_8GiB # 资源规格
  • 并行仿真 Octopus平台的并行仿真模块分为任务配置和仿真任务两部分。用户在任务配置模块,可使用自研仿真算法,根据Octopus自研仿真评测体系,从行车安全、驾驶行为、乘员舒适性等多维度测评在多种条件下的仿真场景中控制算法控制质量。在仿真任务模块,可将仿真任务运行中关键指标变化绘制成图表,直观形象。 基础版服务不包含并行仿真,在使用并行仿真之前需要提前购买扩展资源包。 任务配置 仿真任务 3D回放 排队任务管理 信号查看器 场景回放 父主题: 仿真服务
  • 资源占用情况 在任务运行中,资源占用情况模块显示任务占用的CPU、内存、GPU/显存利用率、占用率百分比的折线图。默认显示CPU占用情况折线图。 双击任一图例:显示全部资源占用折线图。 单击指定图例:只显示该图例折线图。 此模块也可显示多个计算节点运行任务时,资源占用的情况。 如果选择2个计算节点运行任务,则可选择查看单个节点资源占用情况。 如果1个计算节点上存在多张GPU,则会显示所有GPU占用情况。 资源占用情况功能模块,需要用户在制作自定义镜像时安装psutil与pynvml,参考命令如下: pip install psutil pynvml 如果未安装psutil与pynvml,则页面无法显示资源使用状况。
  • 训练任务日志查看和下载 训练任务运行的过程中生成日志,训练任务模块提供了日志的查看以及下载功能,支持用户查看训练任务的运行情况。CCE平台训练任务生成的日志文件有以下四种: train-{id}-{index}.log:用户实际训练任务的训练日志。 train-{id}-{index}-init.log:Octopus平台提供的前置数据的准备日志。 train-{id}-{index}-sidecar.log:Octopus平台提供的任务流程控制日志,包括日志同步、结果上传。 octopus-train-{id}-{index}-supplemental.logs: Octopus平台任务异常退出或停止产生的错误信息输出日志,运行正常时不产生该日志。 {id}为该训练任务ID,{index}为节点编号,例如单节点single-0,多节点distributed-0 distributed-1。 详情页,单击“任务日志”,可查看该训练任务日志详情。支持在线浏览或下载至本地。如果日志较多,用户可在搜索框中输入关键字,查找指定日志内容。 在日志服务页面中的日志列表部分详细展示了该训练任务包含的日志文件的大小以及最新写入时间。单击文件后的“查看”,算法训练的详细执行过程会在日志详情部分展示。用户也可在日志文件后的“操作”栏中,单击“下载”,即可将该日志文件下载到本地查看。
  • 训练任务相关操作 在“训练任务”列表,可对训练任务进行以下操作: 表1 训练任务相关操作 任务 操作步骤 查找任务 在搜索输入框中输入搜索条件,按回车键即可查询。 查看任务详情 单击任务名称,可在任务详情页查看该任务详情、资源挂载、参数信息、任务日志和资源占用情况。 任务详情:任务ID、名称、描述、状态、资源规格等信息。 资源挂载:显示任务挂载的资源类型,名称和挂载位置。 参数详情:训练算法参数以及环境变量信息。 任务日志:任务运行过程中生成的日志信息,详情请查看训练任务日志查看和下载。 资源占用情况:显示任务占用的CPU、内存、GPU(显存)利用率、占用率等指标百分比折线图,详情请查看资源占用情况。 删除任务 单击操作栏的“删除”,删除单个任务。 勾选多个任务,单击列表上方的“删除”,可批量删除任务。 重建任务 单击操作栏内的“重建”,输入新任务名称(“任务组名-自定义名称”)和“删除原任务”选项,重建任务时可调整除算法外的所有信息。 停止任务 对于运行中、等待中的任务,用户可以单击操作栏的“停止”终止任务。 训练任务相关操作与任务所处状态约束关系请见下表: 表2 训练任务相关操作与任务所处状态约束 作业状态 作业状态描述 是否占用GPU资源 重建 删除 停止 排队中 训练任务已创建成功,进入任务队列等待系统调度。 - - √ √ 提交中 训练任务已被系统调度,正在向平台提交。 √ - - - 提交失败 训练任务向平台提交失败。 - √ √ - 等待中 训练任务向平台提交成功,暂未运行。 √ - √ √ 运行中 训练任务向平台提交成功,处于运行中。 √ - - √ 运行异常 训练任务运行失败。 - √ √ - 已完成 训练任务运行成功。 - √ √ - 停止中 单击“停止”后尚未停止。 √ - - - 停止失败 单击“停止”后停止失败。 √ - √ - 已停止 训练任务已停止。 - √ √ - 删除中 单击“删除”后尚未删除。 √ - - - 删除失败 单击“删除”后删除失败。 仅等待中的任务单击“删除”且删除失败的任务可能会占用 - √ -
  • 内置评测指标简介 评测算法从驾驶安全性,合规性,智能性,舒适性维度对自动驾驶系统进行全面评价。评测指标的pass/fail标准比较复杂,需要对一些评测函数的细节进行介绍。 point_type:是一个PointType的枚举类型,表示该子类指标发生特殊状态(一般是指发生异常)时的时刻点用哪种形式存储起来。目前Octopus使用的PointType共有以下4种类型: 表1 PointType类型 类型 说明 POINT_TYPE_POINT 表示该子类指标的异常时间点是离散的时间点形式,在任何时刻都可能发生异常。 POINT_TYPE_REGION 表示该子类指标的异常时间点是区间形式,一旦在某个时刻开始发生异常,则在随后一段时间内都会处于异常状态。 POINT_TYPE_ALL 表示该类指标的异常时间点是布尔形式的,从仿真开始到当前时刻的状态要么是完全通过,要么全过程都是异常的,统计类型的指标需要以这种形式表示。 POINT_TYPE_NORMAL 该类型与其他类型相反,如果该类型的点存在,则表示对应的子类指标是通过的,Octopus用该类型保存主车到达终点的时间值。 父主题: 内置评测指标说明
  • 绘制对象 单击车道线标注任务,选择一张图片进入人工标注。 绘制对象。 单击左侧工具栏实线(快捷键2,非小键盘),进入绘制折线模式。 选择标注名称。 标注下拉列表页选择一标注名,进入标注状态。 绘制折线。 通过鼠标左键单击添加线段上的点,鼠标左键双击闭合该线段。未闭合状态可通过alt+z撤销上一个绘制的点。闭合状态下选中线段上的某点可通过“alt+鼠标左键”或“alt+v”删除该点。绘制过程中可通过鼠标左键拖动图片。 修改折线。 鼠标左键选中线段上某点可拖动修改点的位置。Ctrl+Z可撤销上一步操作。 修改类别。 左键单击目标图形,可进入选择类别的跳出框,即可修改类别。 修改额外属性。 左键单击目标图形,如果目标含有额外属性,如果其默认属性错误,单击即可选择属性。 修改对象ID。 左键单击目标图形,可以在对象ID栏手动输入数值来修改ID。
  • OCTPS_DATASET_DIR OCTPS_DATASET_DIR为数据集源数据的数据路径,根据不同的数据来源,所挂路径不同, 示例: 本地:/tmp/dataset-temp/local_import/6f91947c-cd47-434b-b654-8332da961d7a/f7c9a054-3c9e-49c7-8934-a1e1d668eb12/ 标注:/tmp/label-data/ 数据仓库 :/tmp/warehouse/ 生成子集,视图:/tmp/dataset-new/6f91947c-cd47-434b-b654-8332da961d7a/dataset/ OBS需通过用户桶的ak,sk依据OBS相关的sdk获取到用户所需筛选的源数据,示例: 图1 示例图1 图2 示例图2
  • SOURCE_DATASET_FILE_DIR SOURCE_DATASET_FILE_DIR为标注或通用存储生成数据集时的源数据索引json文件,示例: 标注: /tmp/dataset-temp/{versionId}/f7c9a054-3c9e-49c7-8934-a1e1d668eb12/result_frame.json Json文件内容示例: 通用存储: /tmp/data-warehouse/warehouse-dataset/ 注:通用存储可能存在多个索引json文件,需遍历。(file_attributes_1.json, file_attributes_2.json……) Json文件内容示例:
  • TARGET_RESULT_DIR TARGET_RESULT_DIR为存放筛选或者格式转换后数据的路径,本地路径示例: /tmp/temp-data/dataset/c8a73760-b5df-4f61-81d7-17e144fa6d69/result/data/ 对应OBS中raw桶路径为: temp-data/dataset/c8a73760-b5df-4f61-81d7-17e144fa6d69/result/data/
  • straight 简述:地图场景为直道。lead_vehicle和主车Ego在主道上分别以40kph和Ego_InitSpeed_Ve0的初始速度一前一后行驶,Ego设定了目标在主道右2车道上的目标点Target_position,同时激活Ego控制器(控制器会影响Ego去往Target_position的寻路算法,但目前仿真器B尚不支持寻路动作acquire_position),控制器有时会根据lead_vehicle的位置更改主车Ego的速度。 地图文件(odr) scenario Straight: m_scene: scenery lane_width: length = [3m..4m] right_lane_num: int = [2, 3] bikeway: bool = [true, false] sidewalk: bool = [true, false] main_speed: speed = 60kph road_length: length = [550m, 600m] straight_1: straight with: keep(it.lane_width == lane_width) keep(it.left_lane_num == 0) keep(it.right_lane_num == right_lane_num) keep(it.bikeway == bikeway) keep(it.sidewalk == sidewalk) keep(it.main_speed == main_speed) keep(it.road_length == road_length) 场景文件(osc) import standard scenario Straight: # map map: map map.set_map_file("./straight.odr") # parameter Ego_InitSpeed_Ve0: speed = [55kph..60kph] Ego_InitPosition_LaneId: string = ['-1', '-2'] Ego_InitPosition_s: length = [0m..30m] Ego_Odr: odr_point = map.create_odr_point(road_id: '1', lane_id: Ego_InitPosition_LaneId, s: Ego_InitPosition_s, t: 0.0m) Ego_InitPosition: pose_3d with: keep(it.odr_point == Ego_Odr) m_distance: length = [50m..80m] LeadVehicle_Odr: odr_point = map.create_odr_point(road_id: '1', lane_id: '-1', s: m_distance, t: 0.0m) LeadVehicle_InitPosition: pose_3d with: keep(it.odr_point == LeadVehicle_Odr) Target_xyz: xyz_point = map.create_xyz_point(x: 450m, y: -4.5m ,z: 0.0m) Target_position: pose_3d with: keep(it.xyz_point == Target_xyz) Duration: time = 100s # entity Ego: vehicle with: keep(it.name == "Saimo") keep(it.initial_bm == "默认驾驶员") lead_vehicle: vehicle with: keep(it.name == "Saimo") keep(it.initial_bm == "默认驾驶员") # storyboard do parallel(duration: Duration): # init Ego.assign_init_position(position: Ego_InitPosition) Ego.assign_init_speed(Ego_InitSpeed_Ve0) lead_vehicle.assign_init_position(position: LeadVehicle_InitPosition) lead_vehicle.assign_init_speed(40kph) Ego.activate_controller(true, true) Ego.acquire_position(target: Target_position) 父主题: 种子地图的逻辑场景样例(仿真器B)
  • 关联题库 每个标注项目均可关联题库以及考试,课程或考试需在培训考试系统中创建完成,具体可参考培训考试。 进入项目详情页,单击“关联题库”页签。 单击“关联培训”或“关联考试”,选择“课程名称”或“考试名称”以及“职能”。 单击“确认”,课程或考试添加成功。 编辑题库。 可单击操作栏的“编辑”,编辑职能。 解绑题库或考试。 可单击操作栏的“解绑”,解绑题库或考试。 查看题库或考试详情。 单击题库或考试名称,可查看题库或考试详情。
  • 人员详情 标注平台统计承包标注项目的标注团队中所有标注员和审核员的累计工作量情况,如累计工作时长、提交任务数量等。管理员可单击箭头升序或降序排列,查看标注员和审核员的完成情况排序,也可以筛选时间,展示特定时间段内标注员、审核员(初审员/终审员)的任务累计完成情况。标注平台从帧数、标注框或对象三个维度统计累计提交任务数、累计工作时长、累计确认数、平均耗时五个指标,衡量标注员、审核员(初审员/终审员)的任务完成情况。 人员详情模块的展示根据项目任务流程有所裁剪。(标注员统计、初审员统计、终审员统计) 累计确认框数:标注员、初审员、终审员提交任务中确认有效框数的数量以及返修环节中新增的有效框数之和。 返修后有效框数变更会在重新提交任务时刷新。 累计提交任务数:标注员、初审员、终审员认领并提交的任务数量。 如果提交的任务,被下一步流程操作员退回时,则此任务不计入累计提交任务数。 累计重标注任务数:标注员重标注的任务次数。如果某任务返修多次,则累计重标注任务数叠加,累计提交任务数不变(只有标注员统计重标注任务)。 累计工作时长:标注员累计标注总时长、初审员累计初审总时长、终审员累计终审总时长,包含各自返修时长。 返修后有效帧变更为无效帧,累计时长会减去无效帧时间。无效帧变更为有效帧,累计时长会加上有效帧时间。 平均单框耗时:平均单帧标注/初审/终审的时间,计算方式为:累计工作时长/累计确认有效数。
  • 项目概览 项目概览包括项目信息、项目今日状态以及项目相关数据图表统计,管理员可以快速掌握项目当前进度。 项目信息:项目名称、项目标注团队、项目预计结束时间、累计交付通过任务数、累计交付通过帧数以及总时长等信息。 今日状态统计:与昨日相比,今日项目中标注任务数量、审核、验收、交付任务数量及变化。绿色箭头表示上升,红色箭头表示下降。 审核/验收任务:待审核任务数包含待预初审及待预终审,审核中包含预初审,预终审。不统计重预(初终)审任务。 统计数值只显示项目任务流程包含的流程数值,如果流程中不包含,则用“--”代替数值。 项目任务流程:展示当前项目的流程。 项目相关数据图表统计:为便于管理员快速掌握项目进展情况,平台实时统计标注项目中相关重要数据量变化并将其制作成图表。管理者可通过图表中图形的变化了解当前项目进程。可设置时间范围,查询指定时间段内项目重要指标变化情况。目前为以下五种图表,图标的展示根据项目任务流程有所裁剪: 标注帧数统计:平台统计标注任务从任务下发、任务标注提交、重标注数这几个标注任务常见环节中数量变化,并以帧为单位绘制成图表。 项目参与人数:标注员认领任务后,进行标注并保存任务进度,被平台视为参与该项目。同样,审核员认领审核任务进行审核并保存任务进度,被平台视为参与该项目。平台统计参与项目的标注员和审核员人数,并绘制成图表。 平均标注效率:标注平台实时统计项目标注速度变化情况,支持按帧数、框数或对象数查看。 标注工作时长为标注工作花费的总时长(实时统计)。 按帧查看时 :标注速度=累计已提交任务的标注工作时长/总帧数。 按对象查看:标注速度=累计已提交任务的标注工作时长/总对象数。 按框查看:标注速度=累计已提交任务的标注工作时长/总框数。 鼠标静止时间大于等于5分钟,静止时间不计入标注工作时长内。 单日标注修改帧数:统计当日项目中所有标注员提交的标注任务总帧数。 单日重标注任务数:根据项目流程,如果已提交的标注任务不满足下一步流程操作员的通过标准,操作员将其打回给标注员进行重标注,图表统计每天处于重标注状态的任务,同一任务单日多次被退回至重标注,不重复统计。
  • 资源占用情况 在任务运行中,资源占用情况模块显示任务占用的CPU、内存、GPU显存利用率、占用率百分比的折线图。默认显示CPU占用情况折线图。 双击任一图例:显示全部资源占用折线图。 单击指定图例:只显示该图例折线图。 资源占用情况功能模块,需要用户在制作自定义镜像时安装psutil与pynvml,参考命令如下: pip install psutil pynvml 如果未安装psutil与pynvml,则页面无法显示资源使用状况。
  • 评测任务日志查看与下载 评测任务运行的过程中生成日志,训练服务提供日志的查看以及下载功能,支持查看评测任务的运行情况。 生成的日志文件共有四种形式: evaluate-xx-{id}.log:用户实际评测任务的训练日志。 evaluate-xx-{id}-init.log:Octopus平台提供的前置数据的准备日志。 evaluate-xx-{id}-sidecar.log:Octopus平台提供的任务流程控制日志,包括日志同步、结果上传。 octopus-evaluate-xx-{id}-supplemental.logs: Octopus平台任务异常退出或停止产生的错误信息输出日志,运行正常时不产生该日志。 {id}为该训练任务ID,{index}为节点编号,例如单节点single-0,多节点distributed-0 distributed-1。 在评测任务的详情页面,可单击“任务日志”查看任务在运行过程中生成的所有日志。如果日志较多,可在搜索框中输入关键字,查找指定日志内容。 在日志服务页面中的日志列表部分详细展示了该评测任务包含的所有文件的大小以及最新写入时间。单击文件后的“查看”,该文件的详细执行过程则在日志详情部分展示。也可在日志文件后的“操作”栏中,单击“下载”,即可将该日志文件下载到本地查看。
  • 坏例判别 仅当用户选择“BadCase”判别后展示,展示badcase的基本信息。运行过程中、坏例判别失败(未获取到坏例结果)时,该视图各项指标显示为"--"。 图1 坏例判别 坏例判别详情:单击“坏例判别”可查看badcase详情。左侧显示统计信息,右侧支持标注数据和预测数据在图像上的对比可视化显示。 保存数据集:单击右上角“保存为数据集”,可将存在坏例判别的数据保存到新数据集中。数据集各属性沿用原始评测数据集,例如“数据类型”、“标注状态”、“数据格式”等。
  • Ego_tf 对于自车角度位置数据录制的消息格式,需遵循一定规范,其中部分字段为必选,其他请根据实际需要自由选取。 表3 ego_tf消息格式规范 格式名称 说明 LocalizationInfo 主车信息 消息格式中部分字段为必选,如使用该数据类型,则不可缺少该参数字段,否则会导致数据上传Octopus平台失败。 /*********************************** content: Octopus 输入数据格式 version: 1.0 ************************************/ syntax = "proto3"; package Octopusdata; message LocalizationInfoFrame { uint64 timestamp = 1; #必选。时间戳。 uint64 stamp_secs = 2; #必选。时间戳,单位:秒 uint64 stamp_nsecs = 3; #必选。时间戳,单位:纳秒 float pose_position_x = 4; #必选。自车x轴坐标 float pose_position_y = 5; #必选。自车y轴坐标 float pose_position_z = 6; #必选。自车z轴坐标 float pose_orientation_x = 7; #必选。自车四元数x值 float pose_orientation_y = 8; #必选。自车四元数y值 float pose_orientation_z = 9; #必选。自车四元数z值 float pose_orientation_w = 10; #必选。自车四元数w值 float pose_orientation_yaw=11; #必选。朝向角,单位:rad float velocity_linear=12; #必选。速度,单位:m/s float velocity_angular=13; #必选。角速度,单位:rad/s float acceleration_linear=14; #必选。加速度,单位:m^2/s float acceleration_angular=15; #必选。角加速度,单位:rad^2/s } message LocalizationInfo { repeated LocalizationInfoFrame localization_info = 1; }
  • Tag_record 对于标签记录数据录制的消息格式,需遵循一定规范,其中部分字段为必选,其他请根据实际需要自由选取。 表5 tag_record消息格式规范 格式名称 说明 ScenarioSegments 场景片段 /*********************************** content: Octopus 输入数据格式 version: 1.0 ************************************/ syntax = "proto3"; package Octopusdata; message ScenarioSegment { uint32 scenario_id = 1; #必选。场景id string source = 2; #必选。片段的来源 uint64 start = 3; #必选。片段的开始时间(时间戳) uint64 end = 4; #必选。片段的结束时间(时间戳) } message ScenarioSegments { repeated ScenarioSegment segments = 1; }
  • Control 对于控制数据的消息格式,需遵循一定规范,其中部分字段为必选,其他请根据实际需要自由选取。 表6 control消息格式规范 格式名称 说明 ControlCommand 控制命令 /*********************************** content: Octopus 输入数据格式 version: 1.0 ************************************/ syntax = "proto3"; package Octopusdata; message CommandFrame { uint64 stamp_secs = 1; uint64 stamp_nsecs = 2; uint64 timestamp = 3; #必选,时间戳 float acceleration=4; #必选,加速度值 float front_wheel_angle=5; #必选,方向盘转角 int32 gear=6; } message ControlCommand { repeated CommandFrame command_frame = 1; }
  • Predicted_objects 对于预测路径数据的消息格式,需遵循一定规范,其中部分字段为必选,其他请根据实际需要自由选取。 表7 predicted_objects消息格式规范 格式名称 说明 PredictionObstacles 预测障碍物 /*********************************** content: Octopus 输入数据格式 version: 1.0 ************************************/ syntax = "proto3"; package Octopusdata; message PathPoint { float x = 1; #必选,预测轨迹点x坐标 float y = 2; #必选,预测轨迹点y坐标 float z = 3; #必选,预测轨迹点z坐标 float theta = 4; float kappa = 5; int32 lane_id= 6; float v=7; float a=8; float relative_time=9; } message PredictionTrajectory { repeated PathPoint path_point = 1; #必选,预测轨迹多个点 } message Obstacle { uint64 obstacle_timestamp = 1; int32 id=2; #必选,预测目标的id float x = 3; #非必选,预测目标的x坐标 float y = 4; #非必选,预测目标的y坐标 float z = 5; #非必选,预测目标的z坐标 repeated PredictionTrajectory prediction_trajectory = 6; #必选,预测目标的多条轨迹 } message PerceptionObstacle { uint64 stamp_secs = 1; uint64 stamp_nsecs = 2; uint64 timestamp = 3; #必选,预测目标的时间戳 repeated Obstacle obstacle_info= 4; #必选,多个目标的预测信息 } message PredictionObstacles { repeated PerceptionObstacle perception_obstacle= 4; #必选,多条帧数据 }
  • Object_array_vision 对于目标推理数据录制的消息格式,需遵循一定规范,其中部分字段为必选,其他请根据实际需要自由选取。 表4 object_array_vision消息格式规范 格式名称 说明 TrackedObject 感知目标 消息格式中部分字段为必选,如使用该数据类型,则不可缺少该参数字段,否则会导致数据上传Octopus平台失败。 /*********************************** content: Octopus 输入数据格式 version: 1.0 ************************************/ syntax = "proto3"; package Octopusdata; message Object { uint64 id = 1; #必选。目标推理数据object数组id string label = 2; #必选。标记物体类型 float pose_position_x = 3; #必选。目标物x轴坐标 float pose_position_y = 4; #必选。目标物y轴坐标 float pose_position_z = 5; #必选。目标物z轴坐标 float pose_orientation_x = 6; #必选。目标物四元数x值 float pose_orientation_y = 7; #必选。目标物四元数y值 float pose_orientation_z = 8; #必选。目标物四元数z值 float pose_orientation_w = 9; #必选。目标物四元数w值 float pose_orientation_yaw = 10; #必选。朝向角,单位:rad float dimensions_x = 11; #必选。目标物x方向尺寸(长) float dimensions_y = 12; #必选。目标物y方向尺寸(宽) float dimensions_z = 13; #必选。目标物z方向尺寸(高) float speed_vector_linear_x = 14; #必选。目标物x方向速度 float speed_vector_linear_y = 15; #必选。目标物y方向速度 float speed_vector_linear_z = 16; #必选。目标物z方向速度 float relative_position_x = 17; #必选。目标物相对于主车x方向位置 float relative_position_y = 18; #必选。目标物相对于主车y方向位置 float relative_position_z = 19; #必选。目标物相对于主车z方向位置 } message TrackedObjectFrame { uint64 timestamp = 1; #必选。时间戳 uint64 stamp_secs = 2; #必选。时间戳,单位:秒 uint64 stamp_nsecs = 3; #必选。时间戳,单位:纳秒 repeated Object objects = 4; #必选。object数组 } message TrackedObject { repeated TrackedObjectFrame tracked_object = 1; }
  • Planning_trajectory 对于规划路径数据的消息格式,需遵循一定规范,其中部分字段为必选,其他请根据实际需要自由选取。 表8 planning_trajectory消息格式规范 格式名称 说明 PlanTrajectory 规划路径 /*********************************** content: Octopus 输入数据格式 version: 1.0 ************************************/ syntax = "proto3"; package Octopusdata; message TrajectoryPoint { float x = 1; #必选,轨迹点x坐标 float y = 2; #必选,轨迹点y坐标 float z = 3; #必选,轨迹点z坐标 float theta = 4; float kappa = 5; int32 lane_id=6; float v=7; #必选,速度 float a=8; #必选,加速度 float relative_time=9; #必选,相对时间 } message Trajectory { uint64 stamp_secs = 1; uint64 stamp_nsecs = 2; uint64 timestamp = 3; #必选,时间戳 float total_path_length = 4; float total_path_time=5; int32 gear=6; #非必选,档位 int32 trajectory_type=7; int32 vehicle_signal=8; repeated TrajectoryPoint trajectory_points = 9; #必选,轨迹 } message PlanTrajectory { repeated Trajectory trajectory_info= 1; }
  • Routing_path 对于全局规划路径数据的消息格式,需遵循一定规范,其中部分字段为必选,其他请根据实际需要自由选取。 表9 routing_path消息格式规范 格式名称 说明 RoutingFrames 规划路径 /*********************************** content: Octopus 输入数据格式 version: 1.0 ************************************/ syntax = "proto3"; message Point{ float x = 1; float y = 2; float z = 3; } message Path{ uint64 id = 1; repeated Point path_point = 2; } message RoutingPath{ uint64 timestamp = 1; uint64 stamp_secs = 2; uint64 stamp_nsecs = 3; repeated Path routing_path_info = 4; } message RoutingFrames{ repeated RoutingPath routing_frame = 4; }
  • Traffic_light_info 对于交通灯数据的消息格式,需遵循一定规范,其中部分字段为必选,其他请根据实际需要自由选取。 表10 traffic_light_info消息格式规范 格式名称 说明 TrafficLightInfo 交通灯 /*********************************** content: Octopus 输入数据格式 version: 1.0 ************************************/ syntax = "proto3"; package Octopusdata; message Light { uint64 id = 1; uint64 color = 2; uint64 state = 3; uint64 type = 4; float location_x = 5; float location_y = 6; float location_z = 7; } message Lights { uint64 timestamp = 1; uint64 stamp_secs = 2; uint64 stamp_nsecs = 3; repeated Light lights = 4; } message TrafficLightInfo { repeated Lights trafficlight_info = 1; }
  • Gnss 对于卫星导航系统数据录制的消息格式,需遵循一定规范,其中部分字段为必选,其他请根据实际需要自由选取。 表2 gnss消息格式规范 格式名称 说明 GnssPoints gps点 消息格式中部分字段为必选,如使用该数据类型,则不可缺少该参数字段,否则会导致数据上传Octopus平台失败。 /*********************************** content: Octopus 输入数据格式 version: 1.0 ************************************/ syntax = "proto3"; package Octopusdata; message GnssPoint { uint64 stamp_secs = 1; #必选。时间戳,单位:秒 uint64 stamp_nsecs = 2; #必选。时间戳,单位:纳秒 float latitude = 3; #必选。纬度 float longitude = 4; #必选。经度 float elevation = 5; #必选。海拔高度,单位:米 uint64 timestamp = 6; #必选。时间戳 } message GnssPoints { repeated GnssPoint gnss_points = 1; }
共100000条
提示

您即将访问非华为云网站,请注意账号财产安全