技术文档|车辆控制评测分析云服务的应用
概览
前提条件
主要步骤
数据采集
控制评测云服务任务提交
评测结果说明
车辆控制评测云服务主要是解析自动驾驶的路测数据,对车辆的控制效果进行评价,了解车辆的控制效果,通过多维度的评分结果,能够展现出一个全面、客观的车辆控制评价结果。
车辆控制评测是根据车辆自动驾驶的数据来进行控制评分评测,因此需要车辆完成闭环自动驾驶,可以是循迹自动驾驶,也可以是带感知的自动驾驶。因此需要最少完成以下前提步骤:
评测数据采集
控制评测任务提交
结果分析
数据记录
完成一次或多次自动驾驶(循迹/感知闭环),并记录数据包。
数据检查
在上传需要控制评测的数据前,一定要检查数据包内是否包含评测所需的channel,否则会造成数据缺少相关通道的信息而造成评测结果失败。
控制评测需要检查的数据至少包含以下channel信息,才能正确的进行评测:
通过使用cyber_recorder命令来检查采集数据内是否存在上述channel的数据:
cyber_recorder info xxxxxx.record.xxxxx
如下图所示,可以看到上述表格内对应channel的messages数据不为0,说明数据有效。
文件夹结构要求
1、上传预处理后的数据至BOS
在上传数据之前,请注意以下几点:
请将数据按照如下文件夹结构进行放置:
Origin Folder一般是BOS的根目录,本例中task001目录是在BOS根目录下创建的(根目录:登录BOS存储服务器后首先看到的目录即为根目录,一般是Bucket name目录);
task001、task002...代表一次评测任务的文件夹,即每提交一次评测任务时,只能输入一个task目录的路径地址,云端会对该文件内的数据进行分析评分,一个task文件内可以包含多个车辆文件夹,在一次任务提交文件夹内可以包含多个车辆;task001如果在BOS根目录,则提交任务时,只需要填写输入目录路径为task001;如果在其它目录下,则需要填写输入目录路径为从根目录开始的绝对路径,如xxx/task001;
Vehicle1、Vehicle2...代表评测的车辆文件夹,可以根据实际情况,按照车辆名称+编号的形式命名,如devkit01、devkit02等。每一个Vehicle文件夹下包含评测自动驾驶数据文件夹和该车辆的配置文件。
需要注意:自动驾驶数据文件夹下需要有2层子文件夹,record数据文件放在第二层的文件夹内,如上图文件夹结构图所示,可以根据不同的自动驾驶场景,分成straight(直行)、left(左转)、right(右转)……,每一个场景下也可以根据速度等维度区分,如1m/s、2m/s、3m/s ……,速度维度的文件夹内即是该场景速度条件下的自动驾驶数据。
Configuration File即为vehicle_param.pb.txt(车辆配置文件),该文件在apollo/modules/calition/data/dev_kit文件夹内,将该文件夹下的vehicle_param.pb.txt拷贝至BOS对应的车辆控制评测文件夹下,例如上图Vehicle2文件夹内;
总结上述文件夹结构:
BOS根目录 -> 任务文件夹 -> 车型文件夹 -> 具体的自动驾驶数据包 + vehicle_param.pb.txt
2、提交控制评测任务数据至BOS
首先进入Apollo云服务任务页面,选择使用百度账号登录,在左侧框中选择Apollo Fuel-->任务,点击新建任务,然后在下拉框内选择控制评测,然后输入相应要评测的数据路径,在输入数据路径中填写到根目录,在本示例中填写为task001。如下图所示:
3、获取评测结果
评测任务完成后,会在注册的邮箱(与商务联系确定)中收到2封结果邮件,分别是控制评分结果(Grading results)和数据图表展示邮件(Visualization results)。
评分结果邮件
我们可以看到,评分邮件结果,会根据task->vehicle这一级目录下的第一级文件目录来分别生成对应的评分结果,即根据前述文件结构中straight(直行)、left(左转)来分类生成的结果,下载评分结果附件后,可以看到具体的评测附件内容,如下图所示:
其中,各组目录(1_Dev_Kit_left_gradings和2_Dev_Kit_straight_gradings)下的1mps_Dev_Kit_Lon_Lat_Controller_control_performance_grading.txt和2mps_Dev_Kit_Lon_Lat_Controller_control_performance_grading.txt是评分结果文件,1mps_Dev_Kit_Lon_Lat_Controller_control_profiling_conf.pb.txt和2mps_Dev_Kit_Lon_Lat_Controller_control_profiling_conf.pb.txt是评分对应的配置文件,这个文件目前是默认设定的,不可修改,主要是定义了各个评分指标的评价基准。
打开其中一个评分结果文件,如1_Dev_Kit_left_gradings/1mps_Dev_Kit_Lon_Lat_Controller_control_performance_grading.txt,我们可以看到相应的评价情况,评价分数主要以均方根的结果展示,按百分数显示,如下图所示:
数据图表展示邮件
数据图表展示的附件与评分附件相同,主要根据上述各评分结果对应的数据包进行相应的数据展示,图表附件如下图所示:
图表附件是pdf文件,文件内描述了上述评价指标的对应真实数据变化过程(自动驾驶过程中),从而方便直观的查看各指标的变化情况,还会针对一些数据变化较大的指标,进行90%的数据描绘,横轴代表数据的数值,纵轴代表数据的数量;如果是100%data描绘,则会展示该指标随采样时间轴的变化情况,即描述了自动驾驶过程中的真实变化情况。
以上只是2张图表的示例图,图表结果内展示约50张图表,数据展示量非常丰富,方便开发者对控制过程的数据变化进行查看。
控制测评参数主要说明如下:
*《车辆控制评测分析云服务的应用》
https://gitee.com/ApolloAuto/apollo/blob/master/docs/D-kit/Waypoint_Following/control_profiling_online_cn.md#%E6%A6%82%E8%A7%88
以上就是“车辆控制评测分析云服务的应用”的全部内容,如果大家对Apollo开放平台和套件感兴趣,可以添加『Apollo小哥哥』(微信号:apollo_xzs)为好友,进入技术交流群,跟开发者们一起讨论哦。