1.摘要
采用仿真对于缩短开发时间和增强高级驾驶辅助系统 (ADAS) 的系统稳健性至关重要。汽车公司通常从车辆中记录了大量适合开环仿真的真实数据。然而,记录的数据通常不适合测试闭环控制系统,因为记录的数据无法对车辆运动的变化做出反应。本文介绍了一种从记录的车辆数据创建虚拟驾驶场景以实现闭环仿真的方法。此方法适用于测试通道居中应用程序。车道居中应用程序可帮助驾驶员控制转向以保持在当前车道上,并控制加速和制动以保持设定速度或跟随前方车辆。驾驶员的车辆被称为自我车辆。道路上的其他车辆称为目标车辆。为了在仿真中测试车道居中系统,工程师必须对自主车辆(传感器和动力学)以及场景(道路和目标车辆)进行建模。通过使用 GPS、基于摄像头的车道检测、基于雷达的车辆检测和地图数据重建道路和目标车辆来创建虚拟驾驶场景。虚拟驾驶场景被集成到闭环仿真中,以评估车道居中系统的行为。
2.介绍
车道居中系统需要纵向和横向控制,以保证适当的车道跟随行为,同时保持与前方车辆的安全距离 [1]。驾驶自动化系统执行转向、加速和制动控制。然而,对于这种级别的自动化(L2 或 L3),仍然需要人类驾驶员来监控系统,并准备好在系统出现故障时接管控制 [2]。考虑到驾驶自动化系统的复杂性和操作环境的内在不确定性,需要根据标准要求 (e.g. ISO 15622/22178) 和实际驾驶场景对其性能进行全面测试。
配备驾驶自动化系统的车辆必须行驶数万英里才能评估性能和可靠性。采用虚拟仿真工具是缩短开发时间和增强系统稳健性的关键 [3,4]。
F. Martinelli 提出了一种通过使用 MATLAB 和 Simulink 进行仿真来设计和验证交通拥堵辅助系统的方法 [5]。代表典型真实世界驾驶情况的虚拟驾驶场景用于验证控制系统的适当行为并评估其性能。他们方法的主要关注点之一是虚拟驾驶场景在道路网络和车辆运动的准确性方面如何表现真实世界的交通状况。
在本文中,我们介绍了一种根据记录的车辆数据(如 GPS、车速、车载雷达和摄像头传感器)创建驾驶场景的方法。当测试工程师从实际交通中观察到不需要的系统行为时,他们希望通过仿真重现驾驶场景来确定根本原因。
创建虚拟驾驶场景的方法包括以下步骤:
一. 记录和选择数据
二. 重建路网
三. 定位自我轨迹
四. 重建目标车辆
五. 与录制的视频进行比较
然后,可以使用虚拟驾驶场景通过仿真来测试 ADAS 系统。本文演示了如何应用此方法来测试车道居中应用。
3.数据记录和筛选
为了能够通过虚拟驾驶场景再现真实世界的交通状况,以测试车道居中系统,我们的测试工程师在高速公路上行驶并通过 CAN 总线收集数据。从 CAN 总线收集的数据包括:
• 全球定位系统 (GPS)
• 车速
• 来自雷达传感器的物体检测
• 来自摄像头传感器的车道标记检测
除了 CAN 数据外,测试工程师还使用单独的摄像头将视频记录到 MP4 文件中。此记录将在验证阶段使用,以便与开环虚拟驾驶场景进行视觉比较。
我们将 CAN 报文和 MP4 数据读入 MATLAB 并可视化结果。然后,我们确定了具有近碰撞的场景,这些场景在闭环仿真中重现会很有趣。
4.重建路网
我们根据记录的 GPS 数据确定了收集数据的一般区域。要创建道路模型,我们需要将记录的 GPS 位置数据与地图数据相关联。今天,许多数字地图数据库(例如 Google Map、OpenStreetMap、HERE Map 等)可用于使用从地图数据中提取的道路属性创建驾驶场景 [6]。Yang Zheng 和 Michael Zilske 使用 OpenStreetMap 生成了虚拟交通场景 [6,7]。
我们使用高清 (HD) 地图作为路网信息的来源,因为它在厘米级具有极高的分辨率。HD 地图的精确几何结构使其适用于自动驾驶工作流程。
HD 地图数据由平铺映射图层组成,这些图层提供对道路网络的精确几何图形和强大属性的访问。这些层分为以下模型:
• 道路中心线模型:提供道路拓扑(指定为图形中的节点和链接)、形状几何图形和其他道路级属性。
• HD 车道模型:提供车道拓扑(作为车道组和车道组连接器)、高精度几何图形和车道级属性。
• HD 定位模型:提供支持车辆定位策略的功能。
我们首先在高清地图上绘制记录的 GPS 序列,如图 1 所示。这使我们能够确定与试驾相对应的路段。
图 1.带有记录的 GPS 数据的高清地图和行车路线
然后,我们从道路中心线和 HD 车道模型中提取道路中心坐标和车道信息。我们使用这些信息以编程方式创建了一个道路网络模型,如图 2 所示。我们使用 Automated Driving Toolbox [8] 中的驾驶场景对象来创建道路网络模型。
图 2.基于高精地图构建的道路网络
从高精地图导入的道路网络包含的道路网络信息比重现测试路线所需的道路网络信息多。为了简化网络,我们删除了不必要的道路元素,例如桥梁和十字路口。编辑后的道路网络如图 3 所示。
图 3.编辑过的道路网络
5.定位主车轨迹
重建道路网络后,我们需要将周围检测到的对象添加到场景中。由于记录的数据来自高速公路驾驶,因此我们唯一需要表示的检测到的对象是目标车辆。目标车辆检测基于雷达记录的检测结果。这些检测是相对于自我载体来测量的。为了在虚拟驾驶场景中构建等效的目标车辆,我们需要将检测从自我坐标转换为世界坐标。这种转换取决于 ego 车辆的准确位置信息。
为了评估记录的 GPS 数据在多大程度上适合代表自我轨迹,我们在构建的道路网络之上绘制了 GPS 数据,如图 4 所示。
图 4.自我车辆在道路网络上的轨迹(上:场景俯视图,下:以自我为中心的投射透视视图)
我们注意到绘制的位置偏离车道中心的距离比我们预期的要大。为了进一步探索这一点,我们比较了基于 GPS 的轨迹和摄像头车道传感器与车道中心的自我横向偏差,如图 5 所示。由此,我们评估了基于 GPS 的轨迹不够准确,无法让我们基于目标车辆转换。
图 5.自主车辆与车道中心的横向偏差
我们通过根据车道传感器数据定位基于 GPS 的轨迹,提高了横向位置的准确性。改进的局部轨迹如图 6 所示。
图 6.通过车道传感器数据定位轨迹
我们确定车道传感器定位的轨迹适合用于坐标变换以重建目标车辆轨迹。
6.重建目标车辆
雷达检测提供周围目标车辆相对于自主车辆的位置和速度。我们将目标车辆位置转换为世界坐标,并使用以下公式 1 和 2 根据车辆运动估计方向角。图 7 显示了这些方程中使用的变量之间的关系。
其中 R:旋转矩阵, (x, y):在自我坐标中的位置,
(X, Y):在世界坐标中的位置
图 7.目标车辆方向角估计
我们探索了目标车辆的轨迹,并注意到在坐标变换后,一些偏航角会产生噪声。我们使用 Savitzky-Golay 滤波器 [9] 对估算的轨迹进行了平滑处理。原始和平滑的轨迹如图 8 所示。
图 8.估计偏航角轨迹
一旦我们确定目标车辆的轨迹是合理的,我们就使用 Automated Driving Toolbox 中的驾驶场景,根据世界坐标中计算的轨迹添加车辆参与者。
与录制的视频进行比较
为了验证虚拟驾驶场景,我们在 openloop 中运行该场景,并与我们从车辆录制的相应视频进行可视化比较。我们查看了道路宽度、道路标记、自我车辆的位置以及周围车辆的位置,如图 9 所示。请注意,只有雷达检测到的车辆才会被重建。雷达未检测到的车辆未被重建。例如,在图 9 中,视频左侧第一车道的车辆未被雷达检测到,因此未包含在虚拟场景中。
图 9.录制的视频(上)与重建的驾驶场景(下)
7.模拟闭环场景
一旦我们确信虚拟场景在开环中的行为符合预期,我们就将其与通道居中控制算法集成以进行闭环仿真。我们使用了 [5] 中描述的相同 Simulink 模型。该算法的关键组件如图 10 所示。
图 10.车道居中系统闭环模型示意图
车道居中系统由以下组件组成:
•传感器融合和跟踪:融合来自雷达和摄像头传感器的物体检测,以跟踪道路上的其他车辆
•Find lead car(查找领头车):确定其中一个融合检测是否代表与 ego 位于同一车道上的领头车。
•Estimate lane center(估算车道中心):根据摄像头传感器的检测和 ego 车辆的当前状态来估算车道中心。
•预览曲率:估计未来时间范围的车道中心。
•模型预测控制:执行横向和纵向控制。
在仿真中测试车道居中系统需要额外的组件,以便:
•视觉检测生成器:对基于摄像头的传感系统生成的物体检测和车道检测进行建模。
•雷达检测生成器:对基于雷达的传感系统生成的对象检测进行建模。
•自我车辆动力学:对被测车辆的动力学进行建模。对命令的加速和转向做出反应。生成姿势信息 (位置和速度)。
•驾驶场景:这是根据记录的数据构建的虚拟驾驶场景。根据自我姿势对道路和道路上的其他车辆进行建模。提供传感器模型使用的地面实况信息。
我们运行了仿真,并在运行时将结果可视化,如图 11 所示。总体而言,结果表明,自我车辆在与前方车辆保持安全距离的同时表现出适当的车道跟随行为。
图 11.使用重构的虚拟驾驶场景进行闭环仿真
仿真还让我们深入了解了可以改进被测算法或遇到边缘条件的领域。对于一个重建的场景,我们注意到与前方车辆的距离下降到低于预定义安全性的三倍,如图 12 所示。此日志显示了三个标记为 a、b 和 c 的有趣案例。
案例 (a) 显示了控制器完全稳定之前的瞬态行为。这可能是由于高初始速度和高设定速度 (98.6 kph)。
案例 (b) 是由一辆低速切入的车辆引起的。这可以从图 13 中记录的视频图像中看出。从右侧车道缓慢行驶的车辆切入 Ego 车辆,当前车距低于安全距离时,Ego 车辆会降低纵向速度。
案例 (c) 是由于左侧车道的车辆突然以非常近的距离切入 ego 车辆前方引起的。这可以从图 14 中的视频记录中看出。
通过闭环仿真来重现这些边缘条件,我们可以探索可以提高整体性能的设计替代方案。
图 12.模拟结果(上:纵向控制性能,下:横向控制性能)
图 13.驾驶案例 (b):低速切入车辆
图 14.驾驶情况 (c):距离过近的切入车辆
8.结论
我们提出了一种从记录的车辆 GPS、车速、车载雷达和摄像头传感器以及高清地图创建虚拟驾驶场景的方法。通过这种方法,可以在闭环仿真环境中成功再现真实世界的驾驶场景。
尽管我们证明了这种方法使用了特定的传感器和地图信息,但该方法可以扩展到不同的传感器和地图提供商。例如,由于测试车辆的配置,我们使用了雷达检测,但相同的方法可以用于激光雷达数据。同样,可以从其他地图数据库(如 OpenStreetMap)导入路网信息,而不是高精地图。
通过这种方法,可以在虚拟仿真环境中重现真实的驾驶场景。这使工程师能够评估功能行为并获得洞察力,同时减少在车辆中花费的时间,尤其是当测试用例有任何危险场景时。
文章翻译转载来自:Creating Driving Scenarios from Recorded Vehicle Data for Validating Lane Centering System in Highway Traffic (mathworks.cn)
请关注系列文章——《史上最详细的 ADAS(智驾) HIL 仿真测试讲解——从原理到应用》,我会持续更新
如想了解更多智驾技术文章和前沿科技咨询,请关注—— 智驾视界(zhijiashijie_001)