正在生成
详细信息:
检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
评测算法的自研proto接口 背景 Octopus内置一套评测算法,用于对自动驾驶系统的性能表现进行多维度评测。内置评测算法的评测结果按照eva.proto中的定义,序列化成pb文件保存起来。 Octopus仿真平台的前端通过解析评测pb对评测结果进行展示,目前前端展示主要分为两大方面:
orientation_3d 定义:由Tait–Bryan角度的三个参数roll(横滚角,围绕x轴的角度)、pitch(俯仰角,围绕y轴的角度)和yaw(偏航角,围绕z轴的角度)定义的三维角度. 用途:设置实体的朝向角度、用于构成pose_3d. 参数:参数如下表. 表1 orientation_3d参数
pose_3d 定义:三维空间的复合位置,包含位置点(odr_point或position_3d或road_point)和方向(orientation_3d)两个参数 用途:设置实体的初始位置(assign_init_speed动作)、目标位置(acquire_position动作)
CutOutFullyBlocking 简述:主车Ego与同车道前方33.33m的头车lead_vehicle都按照初始速度16.667mps匀速行驶,正前方约500m处有一个行人target_blocking,lead_vehicle在与行人距离小于50m时往左变道躲避行人,1
ForwardDetectionRange 简述:主车Ego按照初始速度16.667mps匀速行驶,右前方(偏移5.25m)约500m处有一个行人target_blocking,10000s后激活Ego的controller,40s后停止场景(激活时间与场景停止时间可修改)。 osc2
merge匝道合流 用途:创建merge高速匝道合流的静态场景(地图) 参数:参数如下表. 表1 merge参数 Parameter Type Mandatory Description lane_width length yes 每个车道宽度. left_lane_num int
上传数据格式 在使用Octopus平台收集数据前,请仔细阅读本章节,确保上传数据格式符合平台要求,有助于用户更快速的完成数据收集以及数据格式转换。 上传数据格式:Rosbag包+与数据包同名的yaml文件,单包上传大小小于100G。 转换后数据格式:OpenData格式(内必含O
转换后数据格式 Octopus平台支持将上传的Rosbag格式转换为OpenData格式。 数据类型 Octopus平台对数据有以下要求: 数据类型:包括各传感器数据、车辆数据、目标推理数据、自车坐标姿态以及标签记录数据等。 数据格式:Octopus OpenData格式。其中相机采集数据文件后缀为“
示例代码 以下为主程序文件ros2opendata.py中截取的代码片段,分别运行不同的功能,详见注释。 运行前准备: 解析点云消息: 解析gnss消息: 写opendata_to_platform.yaml文件: 父主题: Rosbag转opendata作业
示例代码 作业输入输出规范示例代码如下图所示: 代码文件命名为ros_hard_mining.py。 父主题: 难例挖掘作业
catalog 目录catalog可使一些元素得以重复使用,在目录catalog中参数化类型是可维护的,并且可以在场景文件中 被引用仿真器A尚未支持使用catalog. catalog list ENUM_CATALOG = ("vehicle_catalog", "controller_catalog"
road_point 定义:路网s-t坐标系中的特定位置点(point). 用途:设置实体位置,用于构成pose_3d. 参数:参数如下表. 表1 road_point参数 Parameter Type Mandatory Description road_id string yes
odr_point 定义:ASAM OpenDRIVE坐标系中的位置点(point). 用途:设置实体位置,用于构成pose_3d. 参数:参数如下表. 表1 odr_point参数 Parameter Type Mandatory Description road_id string
junction_type junction(交叉口)类型,用于静态场景的junction场景 road_aids_type list ENUM_ROAD_AIDS_TYPE = ("DType-1", "DType-2", "PType") crossroad:十字路口 T-junction:丁字路口
FullyBlockingTarget 简述:主车Ego按照初始速度匀速行驶,正前方495m处有一位行人,10000s后激活Ego的controller,40s后停止场景(激活时间与场景停止时间可修改)。 osc2.0场景 import standard scenario FullyBlockingTarget:
PartiallyBlockingTarget 简述:主车Ego按照初始速度匀速行驶,斜前方495米处有一位行人,10000s后激活Ego的controller,40s后停止场景(激活时间与场景停止时间可修改)。 osc2.0场景 import standard scenario
CutInUnavoidableCollision 简述:主车Ego按照初始速度16.667mps匀速行驶,前方55m右1车道的切入车辆cut_in_vehicle以慢于Ego5.55mps的速度行驶,当两车距离小于10m时,cut_in_vehicle开始以15mps为目标加速
示例镜像制作 Octopus平台依赖算子镜像内的/bin/bash、stdbuf、tee软件,请确保基础镜像内包含上述软件且能通过PATH找到。 Dockerfile示例 启动命令: bash /home/Octopus/run.sh 镜像构建: docker build -f Dockerfile
作业输入输出规范 Input 平台会以环境变量的形式提供以下参数: rosbag_path: rosbag路径,以.bag结尾。 output_dir:最终输出路径,应为Opendata格式数据。 tmp_dir:供⽤户存储临时文件的⽬录。 task_content_json:⼈
distance_mode 用于触发条件object_distance和point_distance. distance_mode list ENUM_DISTANCE_MODE = ("reference_points", "bounding_boxes") reference_points:测量参考点之间的距离