过去十年,自动驾驶和高级驾驶辅助系统 (AD/ADAS) 软件和硬件的开发成为了各大汽车公司的主要投资目标之一。各大汽车公司对 AD/ADAS 持续不断的投资加快了 AD/ADAS 组件的开发周期,但也揭示了目前需要解决的重大挑战——如何快速了解开发 AD/ADAS 组件中的车辆行为,以便进行改进!
一、方案背景
由于 AD/ADAS 的运行环境很复杂,从仿真到真实驾驶,任何 AD/ADAS 组件的每次更改都需要根据大量场景进行验证。然而,场景数量庞大且每天都在增长,传统的机器人开发支持工具(如 RVIZ)无法满足我们的需求。例如,RVIZ只允许我们实时检查车辆的行为,很难快速跳转到任何特定事件。
为此,康谋推出IVEX自动驾驶场景管理及分析平台来克服这一难题。IVEX是一个基于云的平台,包含许多功能来支持 AD/ADAS 的验证和开发。
下文康谋将为您分享在AD/ADAS开发中使用IVEX的经验。
二、康谋方案——IVEX自动驾驶场景管理及分析平台
图1 IVEX页面
1、数据输入
我们通过将原始数据转换为所需的格式,然后将转换后的数据上传到基于云的服务器来与安全分析平台进行交互。平台的输入数据以 Protobuf 消息格式定义,包括执行期间有关环境和AD/ADAS 行为的信息,例如:
a.自车状态变量,例如位姿、速度、加速度和转向角;
b. 自我车辆规划轨迹;
c.障碍物信息,如位姿、边界框、速度和类型;
d.上下文图像;
e.标记事件,其中每个事件由一个标签和相应的时间戳组成;
2、场景执行结果
(1)格式
IVEX清晰且定义良好的输入格式有助于无缝处理不同的数据格式。由于场景来自不同的来源,因此场景执行结果具有不同的格式,例如 Autoware ROS2 Bags、Apollo Cyber Records、Carla Simulator 日志格式和其他商业模拟器日志格式。
对于每种数据格式,我们都有一个适配器(通常只是一个 Python 脚本),用于将数据转换为安全分析的 Protobuf 输入格式。Protobuf 是大多数工程师都熟悉的格式。通常只需几个小时即可开发一个适配器,将新的数据格式转换为安全分析的 Protobuf 输入格式。
(2)上传
图2 将数据上传到IVEX的命令行界面
通过命令行界面将场景执行结果上传到IVEX 平台。数据转换和数据上传都集成到 CI/CD 流程中。同时每位工程师都可以执行任何特定场景并将结果上传到 IVEX 平台。这种灵活性使我们能够快速试验AD/ADAS开发中的每项更改。
(3)检查
在 IVEX 的 Web 界面上检查场景执行结果。我们可以根据不同的元数据(例如执行日期、软件版本或场景名称)搜索、过滤和选择相关场景。
图3 IVEX的搜索功能示例
a.快速概览
由于场景验证通常是大量的,因此快速概览结果十分重要。使用 IVEX 的聚合视图可以实现快速概览。在筛选和选择感兴趣的场景后,可以访问聚合视图,该视图可快速提供有关所有标记事件的信息,这些事件按不同的操作设计域进行分类。标记的事件可以包含在要上传到 IVEX 的输入数据中,从而能够标记与验证任务相关的任何类型的事件。IVEX 还会自动标记几个标准事件,例如紧急刹车、关键碰撞时间等。
例如,当在IVEX中开发一项新功能并想要比较自主车辆以不同速度行驶时的结果时,启用聚合视图来显示按不同速度范围分类的信息,如下图所示。
图4 IVEX的聚合视图
b.快速导航
除了概览场景执行结果中发生的事件之外,我们还需要能够快速导航到特定事件以检查车辆的行为。从聚合视图可以直接跳转到任何感兴趣的事件。
例如,如果想检查当自车行驶速度超过 30 公里/小时时发生的紧急刹车事件,可以点击与该事件和速度相对应的框。事件的分布和特定时间戳的列表与上下文图像一起显示。点击任何一张卡片都会来到数据日志视图,该视图提供在特定时间戳发生的详细信息。
图5 聚合视图中事件选择示例
图6 在数据日志视图中检查急刹车事件
在数据日志视图中,可以详细检查事件。该视图具有详细的可视化功能,可显示当时的所有信息,包括自车的状态、地图、障碍物及其相关信息,例如速度、类型和与自车的距离。我们还可以从场景列表直接跳转到数据日志视图。
图7 数据日志视图的可视化
数据日志视图还帮助我们重播并查看场景中发生的情况。只需点击几下,我们就可以在每个时间戳之间来回切换。我们还可以看到所有标记的事件并导航到其中任何一个。使用此视图,可以快速评估和了解任何情况。
图8 跨时间观察障碍物
图9 快速导航至特定事件或时间戳
c. 团队共享
一旦发现需要进一步检查的事件,我们就可以与其他同事分享完全相同的视图,然后同事就可以随时检查该事件。在团队工作时,共享此类信息可以大大促进我们的沟通,并帮助我们专注于正确的方向。
三、结论
IVEX大大推动了AD/ADAS的开发工作:
a.轻松集成驾驶数据到平台
b.快速了解车辆行为
c.快速导航感兴趣事件
d.访问所有有价值的可视化信息了解情况
e.团队共享信息
期待您继续关注康谋之后的文章,我们将分享有关AD/ADAS的基于场景的验证和数据分析的更多信息。