1、第 61 卷 第 3 期Vol.61 No.32023 年 3 月March 2023农业装备与车辆工程AGRICULTURAL EQUIPMENT&VEHICLE ENGINEERING0 引言L3 级以上的自动驾驶汽车在真正商业化应用前,需要经过大量的测试,以证明由机器驾驶汽车比人驾驶更安全。Kalra 等1研究表明,想要证明自动驾驶汽车完全可靠,置信水平在 95%的情况下需要行驶 4.426 亿 km,相当于 100 辆车每天开24 h,以 40 km/h 的速度行驶 12.5 y。所以,传统的道路测试的方法已无法满足自动驾驶安全性的测试,因此基于虚拟仿真技术的自动驾驶虚拟仿真测试成为目
2、前市面上大多数汽车厂商选择的自动驾驶测试方法。虚拟仿真测试的核心部分就是构建测试场景。根据邓伟文等2的总结,基于数据驱动的方法是通过采集现实中的大量场景数据生成虚拟测试场景,依靠摄像头、激光雷达、毫米波雷达、GPS 等高精度设备,对现实真实道路环境进行数字化映射。目前该技术被百度 Apollo、Waymo 等自动驾驶公司广泛应用。然而基于真实驾驶采集的自然驾驶数据具有同质化以及低风险的特点,怎样从大量的数据中寻找到具有代表性的边界场景是当前研究面临的挑战。目前有 2 种方法,一是基于边界场景的变化规律获得场景识别模型,二是基于深度学习模型对泛化后的场景使用边界场景挖掘方法,去寻找危险边界场景。
3、本文针对道路参考线(Road Reference Line)的转化,参考 OpenDRIVE1.6 提供的标准格式,将实车采集的数据处理后,利用贝塞尔曲线进行场景转化,从而生成符合 OpenDRIVE 标准、以 xml 格式为基础的 xodr 文件,对真实道路进行还原,并在 VTD 上进行验证。在转化完成的道路上建立简单的跟车场景模型,针对跟车模型中的重要参数进行场景泛化,对泛化后生成的场景使用支持向量机进行边界场景挖掘,从而找到危险边界场景。doi:10.3969/j.issn.1673-3142.2023.03.018自动驾驶虚拟仿真场景转化与泛化方法研究欧洋辰,陈凌珊,祁康(201620
4、 上海市 上海工程技术大学 机械与汽车工程学院)摘要 为了对自动驾驶路采数据进行场景转化及泛化,生成用于虚拟仿真的测试场景,基于 OpenDRIVE 中对道路参考线几何形状的定义以及分类,使用贝塞尔曲线转化生成道路参考线,并在 VTD 上生成道路。在道路上建立简单的弯道跟车场景模型,进行场景元素泛化,对泛化后生成的场景使用支持向量机寻找危险场景的边界。该方法可以满足以一种曲线生成现实中的大多数道路,同时能对简单的场景进行边界场景挖掘。关键词 自动驾驶;虚拟仿真;场景转化;场景泛化;贝塞尔曲线;支持向量机 中图分类号 TP391.9;U462.3 文献标志码 A 文章编号 1673-3142(2
5、023)03-0085-05引用格式:欧洋辰,陈凌珊,祁康.自动驾驶虚拟仿真场景转化与泛化方法研究 J.农业装备与车辆工程,2023,61(3):85-89.Research on automatic driving virtual simulation scene conversion and generalization methodOU Yangchen,CHEN Lingshan,QI Kang(College of Mechanical and Automotive Engineering,Shanghai University of Engineering Science,Shan
6、ghai 201620,China)Abstract In order to perform scene conversion and generalization of autonomous driving road collection data and generate test scenes for virtual simulation,this paper uses Bezier curve transformation to generate road reference lines based on the definition and classification of roa
7、d reference line geometry in OpenDRIVE.The road is generated on the VTD;a simple curve following scene model is established on the road,the scene elements are generalized,and the support vector machine is used to find the boundary of the dangerous scene for the scene generated after the generalizati
8、on.This method can generate most roads in reality with one kind of curve,and can perform boundary scene mining for simple scenes at the same time.Key words autonomous driving;virtual simulation;scene transition;scene generalization;Bezier curve;support vector machine收稿日期:2022-02-1486农业装备与车辆工程 2023 年
9、1 场景转化将摄像头、雷达等设备采集到的场景信息进行转化,生成可以在虚拟仿真软件中进行测试的虚拟场景,是场景转化需要解决的问题。首先需要解决的是标准场景文件的支持问题。德国PEGASUS 项目3对场景进行了定义,分为功能-逻辑-具体三级分层体系,建立了 OpenDRIVE、OpenSCENARIO 以及 OpenCRG 仿真标准,用于虚拟仿真测试、真实开放道路测试、封闭场地测试的标准化定义。其中,OpenDRIVE 是 ASAM 仿真标准的一部分,它描述了自动驾驶仿真应用所需的静态道路交通网络并提供了标准交换格式。真实场景数据在经过场景理解、特征提取、聚类、生成等步骤后,可以生成大量的仿真场景
10、数据。陈君毅4等提出一种面向决策规划的具体场景自动生成方法,能够直接生成 OpenSCENARIO 格式的场景文件。Ma 等5基于真实采集的场景,生成了用于决策规划的轨迹数据场景集。1.1 道路参考线介绍道路参考线是 OpenDRIVE 中每条道路的基本元素。它可以定义所有描述道路形状以及其他属性的几何元素。简而言之,参考线的形状及方向就代表了道路的形状及方向。在 OpenDRIVE 中,每条道路有且只能有一条参考线,一条道路的道路参考线 ID 为 0,且通常位于整条道路中心,参考线不能有断口和纽结。参考线的形状主要分为直线、螺旋线、弧线、三次多项式曲线以及参数三次曲线,想要真实还原现实中的道
11、路,一般采用多种几何形状进行组合。在使用直线和弧线进行连接时,为避免连接处曲率出现断口,会使用螺旋线将直线与弧线进行结合,这就使得参考线选取的变得复杂,且面对复杂的道路形状时,需要分割道路,依次转化,使得效率大大降低,所以选择一种曲线能还原现实中的大部分道路显得十分必要。OpenDRIVE 中 提 出 了 使 用 参 数 三 次 曲 线(paramPoly3)生成道路参考线的方法。参数三次曲线可以描述现实中的复杂曲线。参数三次曲线相比较于三次多项式更为灵活,它能描述更多种类的道路线,其 x 坐标与 y 坐标的插值是通过它们自身的样条相对于共同的插值参数 p 而进行的。1.2 三次贝塞尔曲线贝塞
12、尔曲线由线段和控制点组成,通过改变控制点可以改变曲线的形状,且轨迹曲率连续可导,非常适合被选作为道路参考线的形状6。通过给定的 p0、p1、pn共 n+1 个控制点,可以生成 n 阶贝塞尔曲线,其中首尾控制点为线段的两个端点,其一般参数表达式为7 ,P tPBtt0 1,ii nin0=()(1)式中:pi,t贝塞尔曲线的控制点的坐标值及其参数;Bi,n(t)Bernstein 多项式,其一般表达式为8 ,BtC ttin10 1,i nniini=-=-()(2)式中:Cni 二项式系数。本文采取三次贝塞尔曲线,其参数方程为参数三次曲线,图像如图 1 所示,表达式为 P tPtPt tPt
13、tP t131310322233=-+-+-+()(3)式中:Pi(xi,yi)控制点;xi和 yi控制点的横坐标与纵坐标。1.3 求贝塞尔曲线控制点已知贝塞尔曲线上的点,可以求得贝塞尔曲线控制点。根据实车采集的路采数据,找到车辆在每一个时间戳下的坐标值,此值为经纬度坐标值,通过墨卡托投影转化为惯性坐标系下的 xy 坐标值,从而可以提取每一个时间戳下的车辆位置坐标及航向角值,并得到道路宽度值。设置车辆在右侧紧邻道路参考线车道行驶,行驶方向准确沿道路参考线方向,并且时刻处于当前车道中间,可以得到车辆与道路参考点距离为车道宽度的一半,且每个时间戳下车辆的航向角等于道路参考线的方向角,则道路参考线坐
14、标为,coscosC x ydhdh22iiii=()(4)式中:(xi,yi)车辆坐标;d车道宽度;hi航向角。三次贝塞尔曲线公式的矩阵形式为9图 1 三次贝塞尔曲线Fig.1 Cubic Bezier curve0 0.5 1.01.00.587第 61 卷第 3 期tt ttPPPPP11000330036301331230123=-()|(5)也可以表示为P(t)=TMP (6)则可以求出控制点:P=(TM)-1 P(t)(7)由式(7)可知,选择道路参考线上每 4 个坐标点为一组,且每组第 1 个控制点为上一组最后一个控制点,则可求出每条线段的 4 个控制点,并且首尾控制点坐标应该和
15、线段上的首尾点坐标一致。1.4 贝塞尔曲线转化参数三次曲线用贝塞尔曲线控制点可以生成参数三次曲线系数10。参数三次曲线方程为u paUbUpcUpdUpv paVbVpcVpdVp2323*=+=+()(8)由式(5)和式(8)可知,已知贝塞尔曲线控制点坐标,可以求出其对应的参数三次曲线多项式系数,其表达式为 aUP xP xP xP xbUP xP xP xcUP xP xdUP x33363330123123233=-+-=-+=-=()(9)aVP yP yP yP ybVP yP yP ycVP yP ydVP y33363330123123233=-+-=-+=-=()(10)1.5
16、 贝塞尔曲线长度的计算在 OpenDRIVE 参考线格式规范中,参数三次曲线要求计算每段曲线的长度值 S。三次贝塞尔曲线属于参数三次曲线,可以采取 2 种方法求出参数三次曲线长度:(1)用定积分求曲线长度。贝塞尔曲线上的点可以表示为(x(t),y(t),且 x(t)和 y(t)是关于 t 的多项式函数,则是一阶可导的,所以长度公式为dSxtytt2201=+()(11)(2)近似计算解,在贝塞尔曲线上取 n 个点,计算点之间的直线长度,进行加和,从而取得一个曲线的近似长度。这种情况下取点越多,则长度越精确。本文采取第 2 种方法,选择将一段贝塞尔曲线分成 50 段计算长度。1.6 生成 xod
17、r 格式文件OpenDRIVE 数据存储于 xml 文件中,文件拓展名为.xodr。在 OpenDRIVE 1.6 中,道路参考线属性包括参考线坐标系中 s 的值,其大小为当前线段之前所有线段的长度和,以及惯性坐标系下的xy 坐标,航向角 hdg、道路线段长度 length。参数三次曲线属性包括多项式系数和参数 p 的范围,在本文中 p(0,1)。以上所有值均已求出。根据xodr 格式的规范,设置道路为双向四车道,且无道路高程。并根据路采数据得到车道线宽度,同时设置其类型为实线。2 场景泛化与边界场景挖掘2.1 场景泛化方法场景泛化方法又指场景元素采样方法,即将路采的真实场景数据进行预处理操作
18、后,依据场景特征元素之间的关联或者专家经验等对场景元素进行重新组合或推演归纳处理,从而衍生出更多符合真实驾驶情况的新场景。本文选择蒙特卡罗方法进行场景泛化。蒙特卡罗方法又称统计模拟法、随机抽样技术,是一种随机模拟方法,是以概率和统计理论方法为基础,使用随机数或更常见的伪随机数来解决很多计算问题的方法。将所求解的问题同一定的概率模型相联系,用计算机实现统计模拟或抽样,以获得问题的近似解11。2.2 边界场景挖掘支持向量机(Support Vector Machine,SVM)是基于结构风险最小化原则而提出的一种监督式机器学习算法,对小样本、非线性和高维模式的分类具有独特的优势12。SVM 方法的
19、基本思想是求解能够正确划分数据集且几何间隔最大的分离超平面,本文选择的SVM 核函为线性核函数,其超平面方程为Xb0T+=(12)其中,决定了超平面的方向;b 为位移项,决定了超平面与原点之间的距离。任意点到超平面的距离公式为dxb10=+(13)本文使用 SVM 方法进行边界场景挖掘,在基于场景转化的道路上设置简单的自动驾驶弯道跟车欧洋辰 等:自动驾驶虚拟仿真场景转化与泛化方法研究88农业装备与车辆工程 2023 年场景,场景如图 2 所示。考虑在该场景中,前方交通堵塞,前车缓慢匀速行驶,自车减速行驶。为了简化仿真,只对交通堵塞中的最后一辆车进行建模,且自车和前车之间没有额外的障碍物13。被
20、测试的车辆装有毫米波雷达传感器,用于探测其感应范围的物体。如果检测到车辆,纵向控制将启动制动操纵,以避免碰撞。本文使用的汽车模型和雷达传感器模型及算法均为 VTD 自带模型及算法。3 仿真分析3.1 获得路采数据路采数据主要指真实场景采集数据,主要由各种传感器采集而得。传感器数据经过预处理之后将会得到不同时间戳下的车辆和道路信息,生成 csv格式文件。本文选择的实际道路场景如 3 所示。3.2 场景转化验证本文使用 VTD 进行仿真验证。VTD(Virtual Test Drive)是德国 VIRES 公司开发的一套用于驾驶辅助系统、主动安全和自动驾驶的完整模块化仿真工具,其运行于 Linux
21、 平台,功能覆盖了道路环境建模、交通场景建模、天气和环境模拟、物理真实的传感器仿真以及高精度的实时画面渲染等14。将生成的 xodr 文件导入 VTD,显示道路如图4 所示,基本符合现实道路形状。打开VTD的RoadDesigner模块,导入xodr文件,添加道路,生成双向四车道,使得更符合现实场景,并在道路两侧添加自行车道和人行横道。在 ScenairoEditor 模块中配置车辆信息,并运行场景,发现道路正常,汽车可以正常行驶,如图5 所示。3.3 场景元素泛化在弯道跟车场景模型中,本文选择自车速度、前车速度、两车间相对距离、雷达探测角度与路面附着系数5个参数进行泛化,参数范围如表1所示。
22、表 1 参数选择及其范围Tab.1 Parameter selection and scope自车速度/(km/h)前车速度/(km/h)两车相对距离/m雷达探测角度/deg路面附着系数最小值40510100.3最大值802030251.03.4 边界场景挖掘使用蒙特卡洛方法进行 100 次泛化后,在VTD 中验证是否发生碰撞,将得到的结果数据集使用 SVM 进行边界场景挖掘。本文为了可视化SVM 的分类效果,先在表 1 中的 5 个参数中选择自车速度、前车速度、雷达探测角度 3 个参数进行泛化,而两车相对距离设置为定值 30 m,路面附着系数设置为定值 0.7,结果如图 6 所示。通过点到超
23、平面的距离公式,可以求出距离超平面最近的点,本文选取最近的 5 个点作为危险场景,其对应的场景元素值如表 2 所示。图 2 弯道跟车场景Fig.2 Curve following sceneNew PlayerNew Player01图 3 现实场景Fig.3 Realistic scene图 4 VTD 生成道路场景Fig.4 VTD generating road sceneNew Player01图 5 运行场景Fig.5 Run scene89第 61 卷第 3 期表 2 边界场景及其参数值Tab.2 Boundary scenes and their parameter values
24、自车速度/(km/h)前车速度/(km/h)雷达探测角度/deg场景 1761915场景 2671118场景 358510场景 460610场景 564916SVM 在处理高维数据时,更容易构造和计算距离的范式,并且拥有高维样本空间的数据集的复杂度只取决于支持向量而不是数据集的维度。选取表 1 中的 5 个参数,通过 SVM 可以得到危险场景,如表 3 所示。表 3 参数选择及其范围Tab.3 Parameter selection and scope自车速度/(km/h)前车速度/(km/h)两车相对距离/m雷达探测角度/deg路面附着系数场景 1542010150.6场景 27792814
25、0.5场景 3731224250.6场景 4591615240.4场景 5761624180.34 结论本文基于贝塞尔曲线完成了路采数据中道路参考线部分的场景转化,使得通过一种曲线就可以转化现实中的道路形状,提高了转化效率。并基于OpenDRIVE 格式生成 xodr 格式文件,在 VTD 中的仿真结果验证:本文的转化方法可以较真实地将路采数据中道路信息转化成虚拟仿真软件中的道路场景。同时在转化完成的道路上建立了简单的跟车场景模型,针对跟车模型中的 5 个重要参数进行场景泛化,对泛化后生成的场景使用支持向量机进行边界场景挖掘,从而找到了简单弯道跟车场景中的边界场景。参考文献1 KALRA N,
26、PADDOCK S M.Driving to safety:How many miles of driving would it take to demonstrate autonomous vehicle reliability?J.Transportation Research Part A:Policy and Practice,2016,94:182-193.2 邓伟文,李江坤,任秉韬,等.面向自动驾驶的仿真场景自动生成方法综述 J/OL.中国公路学报,2022,35(01):316-333.2021-12-06.https:/ 任秉韬,邓伟文,白雪松,等.面向智能驾驶测试的仿真场景构
27、建技术综述 J.中国图象图形学报,2021,26(1):1-12.4 陈君毅,冯天悦,刘力豪,等.面向决策规划系统测试的具体场景自动化生成方法 J.汽车技 术,2020,546(10):45-50.5 MA Y,ZHU X,ZHANG S,et al.Trafficpredict:Trajectory prediction for heterogeneous trafficagentsC/IEEE.Proceedings of the AAAI Conference on Artificial Intelligence.Menlo Park,CA:AAAI.2019,33(1):6120-61
28、27.6 ALELUYA E,ZAMAYLA A D,TAMULA S.Decision-making system of soccer-playing robots using finite state machine based on skill hierarchy and path planning through Bezier polynomials-ScienceDirectJ.Procedia Computer Science,2018,135:230-237.7 化祖旭,张文海.基于贝塞尔曲线的自动驾驶汽车避障路径规划 J.汽车文摘,2021(7):46-49.8 LI J,SU
29、N R,CHENG C,et al.Roaming path generation algorithm and optimization based on Bezier curveJ.IFACPapersOnLine,2018,51(17):339-345.9 CHEN L,QIN D,XU X,et al.A path and velocity planning method for lane changing collision avoidance of intelligent vehicle based on cubic 3-D Bezier curveJ.Advances in Eng
30、ineering Software,2019,132(6):65-73.10 张新锋,陈建伟,左思.基于贝塞尔曲线的智能商用车换道避障轨迹规划 J.科学技术与工程,2020,20(29):12150-12157.11 MENZ M,DUBREUIL S,MORIO J,et al.Variance based sensitivity analysis for Monte Carlo and importance sampling reliability assessment with Gaussian processesJ.Structural Safety,2021,93.doi:10.10
31、16/j.strusafe.2021.102116.12 孙家政,刘津彤,张岚泽,等.基于改进支持向量机的药品包装纸盒快速鉴别研究 J/OL.包装工程,2022,43(09):131-137.2022-01-19.https:/ BATSCH F,DANESHKHAH A,CHEAH M,et al.Performance boundary identification for the evaluation of automated vehicles using Gaussian process classificationC/IEEE.2019 IEEE Intelligent Transportation Systems Conference(ITSC).New York:IEEE,2019:419-424.14 闻龙.面向智能网联汽车的高性能计算仿真平台 D.成都:电子科技大学,2020.作者简介 欧洋辰(1998-),男,硕士研究生,车辆工程专业,主要研究方向:自动驾驶虚拟仿真测试。E-mail:图 6 SVM 可视化结果Fig.6 SVM visualization resultszy2422202018181616141412124050607080756545101086xposneg欧洋辰 等:自动驾驶虚拟仿真场景转化与泛化方法研究