一种自动驾驶仿真场景复杂度计算方法、装置及设备与流程
未命名
08-22
阅读:142
评论:0
1.本发明涉及自动驾驶汽车技术中的测试与评价技术领域,具体涉及一种自动驾驶仿真场景复杂度计算方法、装置及设备。
背景技术:
2.自动驾驶汽车又称无人驾驶汽车,依靠人工智能、视觉计算、雷达、监控装置和全球定位系统协同合作,让电脑可以在没有任何人类主动操作的情况下自动安全地操作机动车辆。随着近年来相关技术的飞速发展,无人驾驶汽车已经成功上路,但与无人驾驶汽车相关的交通事故使自动驾驶安全问题凸显出来。为了解决这一问题,仿真测试以其低成本、易实现、高效率的特点备受业界的关注,仿真测试场景的好坏直接影响了仿真结果的真实性和有效性,进而影响工程师对自动驾驶系统安全性的评估。
3.仿真测试场景的评价指标众多,场景复杂度作为其中一项重要的指标目前暂无统一的计算标准。现有场景复杂度的计算方案中,存在场景元素考虑不充分、场景元素关联表征不足、场景时域特征缺失等问题或缺陷。
4.现有技术中的一种方式是以自动驾驶仿真场景中的交通参与者为主要研究对象,通过优化搜索获得不同时间戳下各交通参与者的可达坐标进而计算不同交通参与者的可达域面积,基于信息熵理论根据不同交通参与者可达域的交叠情况计算获得场景交通参与者的复杂度。
5.该方案具体步骤包括:获取测试场景中所有类型交通参与者的动力学参数阈值、初始状态,计算纵向可达距离集合;通过优化搜索算法根据各交通参与者的纵向可达距离集合计算一段时间内各交通参与者的可达域;根据各交通参与者可达域面积和交叠情况,利用信息熵理论方法计算该场景的交通参与者复杂度。
6.但是该方案仅针对场景中的交通参与者进行了复杂度计算,并没有综合考虑场景中的天气、道路、交通设施等其他场景元素对场景复杂度计算的贡献,难以反映场景真实复杂度情况。而且该方案采用优化搜索算法计算交通参与者可达域推算复杂度的方式并未充分考虑交通参与者在现实情况中的时域多变性,复杂度计算过程中缺失了时域特征信息。
7.此外,在计算交通参与者复杂度时,该方案将单个参与者所有备选运动轨迹概按均匀分布进行计算,但交通参与者在选择实际行驶轨迹时往往存在倾向性(比如在前方不远处有一辆慢车,自车左右两车道无车,即使与前车还有一段距离,显然自车也不会在本车道内继续加速行驶),这将导致复杂度计算结果不够真实、客观。
8.现有技术中的另一种方式通过激光雷达获取场景中相关元素的基础数据,分别计算获得交通元素复杂度、场景元素信息和交通元素拓扑图(矩阵),之后通过加权与非线性回归计算方法获得最终的场景复杂度。
9.该方案具体步骤包括:根据激光雷达数据计算车辆及非车辆等相关交通元素的复杂度;根据道路类型、场景内容和场景条件等场景元素信息建立场景描述向量;根据感知数据中不同交通元素的遮挡关系获得交通元素间的拓扑关系,基于交并比数据以邻接矩阵表
示;综合交通元素复杂度、场景描述向量和交通元素拓扑邻接矩阵进行回归计算获得场景的复杂度。
10.但是该方案仅使用了激光雷达数据作为交通元素信息源,相关交通元素的属性信息存在丢失情况(如车辆颜色信息、交通标识信息、车道线信息等),计算场景复杂度时要素不够全面;
11.而且计算交通元素复杂度时计算公式导出依据不够明确,计算过程可解释性差,计算公式中经验系数选取方式未说明,复杂度评价标准的稳定性和客观性不足;
12.此外,该方案仅采用交并比表征不同交通元素的交互关系将损失距离、航向、速度等对交通元素交互有直接影响的重要信息,这将导致场景复杂度评价标准对交通元素交互特征的不敏感进而导致失真。
技术实现要素:
13.针对现有技术中存在的缺陷,本发明第一方面提供一种自动驾驶仿真场景复杂度计算方法,其综合考虑了自动驾驶仿真测试场景中的各类元素,解决了难以对场景各元素复杂度进行量化估计或量化方法不充分的问题。
14.为达到以上目的,本发明采取的技术方案是:
15.一种自动驾驶仿真场景复杂度计算方法,该方法包括以下步骤:
16.获取自动驾驶仿真场景的场景元素信息,所述场景元素信息包括天气、道路、交通标志与设施、以及交通参与者信息;
17.计算各场景元素信息在不同时刻的场景复杂度贡献;
18.根据各场景复杂度贡献,计算不同场景元素间在不同时刻的联合复杂度,生成反映不同场景元素潜在关系的场景复杂度集;
19.根据场景复杂度集,统计场景复杂度的时域分布特征。
20.一些实施例中,所述根据各场景复杂度贡献,计算不同场景元素间在不同时刻的联合复杂度,生成反映不同场景元素潜在关系的场景复杂度集,包括:
21.将场景复杂度贡献中的时域特征按照时刻进行加权求和得到融合时域特征;
22.对融合时域特征进行降维,并区分不同仿真测试场景的时域特征的集合,以获得元素复杂度伪类;
23.基于融合时域特征、元素复杂度伪类和场景复杂度贡献中的非时域特征,进行编码和解码获得场景复杂度集。
24.一些实施例中,使用主成分分析pca对融合时域特征进行降维,并使用k均值聚类算法区分不同仿真测试场景的时域特征的集合,以获得元素复杂度伪类。
25.一些实施例中,还包括:
26.对融合时域特征进行嵌入embedding操作,以将不同原始时长的场景元素数据编码成统一的长度。
27.一些实施例中,所述基于融合时域特征、元素复杂度伪类和场景复杂度贡献中的非时域特征,进行编码和解码获得场景复杂度集,包括;
28.将embedding之后的融合时域特征元素复杂度伪类和场景复杂度贡献中的非时域特征,输入至transformer模型中进行编码和解码;
29.基于transformer模型中的注意力机制,生成反映不同场景元素潜在关系的场景复杂度集。
30.一些实施例中,包括:
31.根据场景复杂度集,进行均值、中位值、峰值、谷值、极差值、和/或方差计算。
32.一些实施例中,所述天气信息包括光照强度信息,能见度等级信息,气压、空气温度及空气湿度信息,风力信息和降水信息中的至少一种。
33.一些实施例中,根据公式:
[0034][0035]
计算光照强度信息在不同时刻的场景复杂度贡献c
illumination
,其中,xi为光照强度的实时测量值,α为校正系数,用于将光照强度信息的场景复杂度贡献调整到设置区间内。
[0036]
一些实施例中,根据公式:
[0037][0038]
计算能见度等级信息在不同时刻的场景复杂度贡献c
visibility
,其中,xv为能见度等级的实时测量值。
[0039]
一些实施例中,根据公式:
[0040][0041][0042]
计算气压、空气温度及空气湿度信息在不同时刻的场景复杂度贡献c
sphere
,其中,ω
sphere
为气压、空气温度和空气湿度的集合,δsi为集合中相关变量的偏离度,xi为集合中相关变量的实时测量值,si为集合中相关变量的理想标准值。
[0043]
一些实施例中,根据公式:
[0044][0045]
计算风力信息在不同时刻的场景复杂度贡献c
wind
,其中,x
wind
为实时风速,α
wind
为实时风向。
[0046]
一些实施例中,根据公式:
[0047][0048]
计算降水信息在不同时刻的场景复杂度贡献c
rainfall
,其中,x
rainfall
为实时降水量等级,rs为降雨量在总降水量中的占比,当rs为1时表示纯降雨,当rs为0时表示纯降雪。
[0049]
一些实施例中,所述道路信息包括公路等级、车道数量信息,曲率半径信息,路面坡度信息,岔道数量、特殊路况信息中的至少一种,所述特殊路况包括桥涵、隧道和公铁交汇。
[0050]
一些实施例中,根据公式:
[0051][0052][0053]
计算公路等级、车道数量信息在不同时刻的场景复杂度贡献c
road
,其中,rc为公路等级系数,r为公路等级,r为双向车道的总数量。
[0054]
一些实施例中,根据公式:
[0055][0056]
计算曲率半径信息在不同时刻的场景复杂度贡献c
roc
,其中,rc为道路的曲率半径。
[0057]
一些实施例中,根据公式:
[0058][0059]
计算路面坡度信息在不同时刻的场景复杂度贡献c
gradient
,其中,g为路面坡度。
[0060]
一些实施例中,根据公式:
[0061][0062]
计算岔道数量、特殊路况信息在不同时刻的场景复杂度贡献c
scenes
,其中,c为岔道计数,s为特殊路况计数。
[0063]
一些实施例中,根据公式:
[0064][0065]
计算交通标志与设施信息在不同时刻的场景复杂度贡献c
traffic_signs
,其中,ω
traffic_signs
为警告标志、禁令标志、指示标志、指路标志、旅游区标志、道路施工安全标志、辅助标志、禁止标线、指示标线和警告标线的集合,ni为ω
traffic_signs
中相应标志或标线在国标中的细分种类总数,ni为ω
traffic_signs
中相应标志或标线在仿真场景中的细分种类总数。
[0066]
一些实施例中,以各个交通参与者为节点,两两交通参与者之间的关系为边,构建无向图;
[0067]
根据公式:
[0068]cedge
=c
t
+cs[0069][0070]
[0071][0072]
计算两两交通参与者之间边的不同时刻的场景复杂度贡献c
edge
,其中,c
t
为时间复杂度因素,tm为两交通参与者达到最小距离时的时间,t为仿真场景剩余时间,cs为距离复杂度因素,sm为两交通参与者之间的最小距离,s0为两交通参与者的初始距离,x1、x2、y1、y2分别为两交通参与者在路面sl坐标系下等效的直角坐标;
[0073]
根据公式:
[0074][0075]
计算所有交通参与者在不同时刻的场景复杂度贡献c
tp
,其中,为其中一对交通参与者之间边的不同时刻的场景复杂度贡献,i为边的编号,n为所有边的集合。
[0076]
本发明第二方面提供一种自动驾驶仿真场景复杂度计算装置,其综合考虑了自动驾驶仿真测试场景中的各类元素,解决了难以对场景各元素复杂度进行量化估计或量化方法不充分的问题。
[0077]
为达到以上目的,本发明采取的技术方案是:
[0078]
一种自动驾驶仿真场景复杂度计算装置,包括:
[0079]
获取模块,其用于获取自动驾驶仿真场景的场景元素信息,所述场景元素信息包括天气、道路、交通标志与设施、以及交通参与者信息;
[0080]
计算模块,其用于计算各场景元素信息在不同时刻的场景复杂度贡献,并根据各场景复杂度贡献,计算不同场景元素间在不同时刻的联合复杂度,生成反映不同场景元素潜在关系的场景复杂度集;
[0081]
统计模块,其根据场景复杂度集,统计场景复杂度的时域分布特征。
[0082]
本发明第三方面提供一种设备,所述设备包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的计算机程序,其中所述计算机程序被所述处理器执行时,实现如权利要求1至19中任一项所述的一种自动驾驶仿真场景复杂度计算方法的步骤。
[0083]
与现有技术相比,本发明的优点在于:
[0084]
本发明中的自动驾驶仿真场景复杂度计算方法,其通过获取自动驾驶仿真场景的场景元素信息,所述场景元素信息包括天气、道路、交通标志与设施、以及交通参与者信息;计算各场景元素信息在不同时刻的场景复杂度贡献;根据各场景复杂度贡献,计算不同场景元素间在不同时刻的联合复杂度,生成反映不同场景元素潜在关系的场景复杂度集;根据场景复杂度集,统计场景复杂度的时域分布特征。从而综合考虑了自动驾驶仿真测试场景中的各类元素,解决了过去难以对场景各元素复杂度进行量化估计或量化方法不充分的问题。并采用机器学习相关算法,特别是使用transformer模型,其注意力机制能够很好的挖掘不同元素变量之间的潜在关联,同时还能将不同时长的场景缩放到统一的长度以便进行比较。此外,还采用集合的形式而不是一个数字的方式来表达场景的复杂度,可以更好的体现场景中复杂度的时域特性,便于对不同场景进行精细化区分和管理,也能够更好的利用相关场景开展自动驾驶仿真测试。
附图说明
[0085]
图1为本发明实施例中自动驾驶仿真场景复杂度计算方法的流程图;
[0086]
图2为本发明实施例中车辆与风向的示意图;
[0087]
图3为本发明实施例中无向图的示意图;
[0088]
图4为本发明实施例中不同元素间在时域中的关联复杂度的计算示意图;
[0089]
图5为本发明实施例中计算机设备的结构示意框图。
具体实施方式
[0090]
为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
[0091]
为便于对本发明的理解,首先对本发明涉及到的一些术语进行说明:
[0092]
无向图,若一个图中每条边都是无方向的,则称为无向图,无向图中的边均是顶点的无序对,这是一个数学和计算机学的概念。
[0093]
主成分分析(principal component analysis,pca),是一种统计方法。通过正交变换将一组可能存在相关性的变量转换为一组线性不相关的变量,转换后的这组变量叫主成分。
[0094]
k均值聚类算法(k-means clustering algorithm)是一种迭代求解的聚类分析算法,其步骤是,预将数据分为k组,则随机选取k个对象作为初始的聚类中心,然后计算每个对象与各个种子聚类中心之间的距离,把每个对象分配给距离它最近的聚类中心。聚类中心以及分配给它们的对象就代表一个聚类。每分配一个样本,聚类的聚类中心会根据聚类中现有的对象被重新计算。这个过程将不断重复直到满足某个终止条件。终止条件可以是没有(或最小数目)对象被重新分配给不同的聚类,没有(或最小数目)聚类中心再发生变化,误差平方和局部最小。
[0095]
嵌入(embedding)就是用一个数值向量“表示”一个对象(object)的方法,这里说的对象可以是一个词、一个物品。一个物品能被向量表示,是因为这个向量跟其他物品向量之间的距离反映了这些物品的相似性。更进一步来说,两个向量间的距离向量甚至能够反映它们之间的关系。
[0096]
transformer模型,transformer模型使用全attention的结构代替了lstm(long short-term memory,长短期记忆网络),抛弃了之前传统的encoder-decoder模型必须结合cnn或者rnn的固有模式。在减少计算量和提高并行效率的同时还取得了更好的结果。
[0097]
参见图1所示,本发明实施例提供了一种自动驾驶仿真场景复杂度计算方法,该方法包括以下步骤:
[0098]
s1.获取自动驾驶仿真场景的场景元素信息,所述场景元素信息包括天气、道路、交通标志与设施、以及交通参与者信息。
[0099]
影响自动驾驶系统性能的因素众多,根据大量仿真测试与实车路测表明,对自动驾驶系统性能影响尤为突出的影响因素包括天气、道路、交通设施、临时路况、交通参与者等,本发明实施例中选定天气、道路、交通标志与设施和交通参与者共四大类元素相关信息
作为自动驾驶仿真测试场景复杂度计算的基础。
[0100]
1.天气
[0101]
自动驾驶汽车依靠多类传感器获取周围环境和障碍物信息,天气对所有传感器的信息获取都有一定的影响。本发明实施例中主要考虑的天气变量参照国标中规定的相关指标选取了部分,具体包括光照强度、能见度等级、气压、空气温度、空气湿度、风向、风速、降雨量等级、降雪量等级等,参数单位和说明参见表1。
[0102]
表1
[0103][0104]
2.道路
[0105]
自动驾驶汽车行驶的路况将影响其路径规划和动力性能,也是自动驾驶仿真测试环节需要模拟的重要测试元素。本发明实施例选择了相关指标进行复杂度计算,具体包括公路等级、车道数量、曲率半径、路面坡度、岔道数量、特殊路况等,参数单位、取值范围以及说明参见表2。
[0106]
表2
[0107][0108]
3.交通标志与设施
[0109]
交通标志与设施作为提示、限制所有车辆驾驶行为的重要参照同样会影响自动驾驶汽车的决策规划与实际控制,在计算自动驾驶仿真测试场景复杂度时需要将其纳入考量因素。本发明实施例主要参照国标中规定的标志和标线等内容,具体考量了道路交通标志(警告标志、禁令标志、指示标志、指路标志、旅游区标志、道路施工安全标志、辅助标志)和道路交通标线(禁止标线、指示标线、警告标线)等,具体采用数据参见表3。
[0110]
表3
[0111][0112]
4.交通参与者
[0113]
在排除天气、道路和交通设施等外部环境因素的影响后,对自动驾驶汽车行驶影响最大的就是其他交通参与者。具体地,不同交通参与者的大小、位置、运动状态等都不尽相同,这给自动驾驶汽车的正常行驶带来了很大的不确定性,从而也影响了场景的复杂度。在本方案中,主要考虑了不同交通参与者的位置、大小、速度、加速度,具体参见表4。
[0114]
表4
[0115]
[0116][0117]
s2.计算各场景元素信息在不同时刻的场景复杂度贡献。
[0118]
根据步骤s1种收集的自动驾驶仿真测试场景数据,分别针对不同场景元素计算出各个元素在仿真场景时域中的复杂度。在此需要统一说明的是,除交通参与者外,其他所有元素各变量复杂度贡献计算时,取值区间为[0,1],其中1表示极限工况的复杂度情况、0表示最佳工况不构成对自动驾驶系统的挑战。
[0119]
1.天气
[0120]
1)光照强度
[0121]
根据大量工程实践经验证明,当光照强度在10lux以下时光照条件相对恶劣,对摄像头图像识别有显著影响,当光照强度大于10lux时,在自然条件下,摄像头的成像质量相对稳定,能够满足自动驾驶系统视觉感知的需要。由此可得光照强度的复杂度贡献为:
[0122][0123][0124]
其中,c
illumination
代表光照强度复杂度,xi代表光照强度的实时测量值,α为校正系数用于将光照强度的复杂度贡献调整到[0,1]区间内。
[0125]
2)能见度等级
[0126]
气象学上将能见度等级区分为1至9共9个等级,其中1级能见度最差(能见度距离不足100m)、9级能见度最好(能见度距离在20km~30km),其中5级能见度(能见度距离1km~10km)作为行车能见度一般的分界线。计算能见度等级的复杂度贡献时,适用sigmoid函数模型:
[0127][0128]
其中,c
visibility
代表能见度等级复杂度,xv代表能见度等级的实时测量值。
[0129]
3)气压、空气温度、空气湿度
[0130]
在工程上把1个标准大气压、空气温度20℃、相对空气湿度65%作为理想最佳工况,任何高压、低压、高温、低温、高湿、低湿条件对电子和机械系统都有不同程度的影响,与
理想最佳工况时的系统运行状态相比都有不同程度的性能衰减现象发生。计算上述变量的复杂度贡献时,以理想最佳工况为参考,适用tanh函数模型:
[0131][0132][0133]
其中,ω
sphere
代表气压、空气温度、空气湿度的集合,c
sphere
代表上述集合相关变量的综合复杂度贡献,δsi代表相关变量的偏离度,xi为相关变量的实时测量值,si为相关变量的理想标准值。
[0134]
4)风向、风速
[0135]
对行驶的汽车而言,垂直于汽车行驶方向的横向风对车辆的操纵性和安全性都有较大影响,相较而言与汽车行驶方向平行的纵向风对车辆的影响相对较小,此处简化复杂度评价模型以等效横向风作为风向、风速对场景复杂度的贡献。根据工程实际,当风力达到10m/s时将有可能导致车辆侧翻,则此处适用sigmoid函数模型:
[0136][0137]
其中,c
wind
代表风力对场景复杂度的贡献,x
wind
代表实时风速,α
wind
代表实时风向(与主车行驶方向相同时记为0
°
,相反时为180
°
,风向角度按顺时针增长,如图2所示风向即为45
°
)。
[0138]
5)降雨和降雪
[0139]
降雨和降雪对自动驾驶汽车有着两方面最主要的影响,一方面源自降雨和降雪发生过程中会影响传感器系统的性能甚至在极端条件下将导致部分传感器功能失效,其中对摄像头系统的影响是最大的;另一方面源自降雨和降雪发生后路面湿滑甚至结冰,这将导致车辆操控性能的衰减,同时也会导致其他行驶车辆的稳定性下降,自动驾驶系统对其他交通参与者的行为更难预测,在同等级的降雨和降雪中,降雪对车辆行驶的影响更大。根据上述特点,适用sigmoid函数模型:
[0140][0141]
其中,c
rainfall
代表降水(降雨和降雪的统称)对场景复杂度的贡献,x
rainfall
代表实时降水量等级,rs代表降雨量在总降水量中的占比,当rs为1时代表此时为纯降雨,当rs为0是代表此时为纯降雪。
[0142]
需要说明的是,所有天气元素变量的场景复杂度贡献值是一个随着时间变化而变化的值。
[0143]
2.道路
[0144]
1)公路等级、车道数量
[0145]
按照现行公路建设标准,根据承载的车流量和建设要求不同,比如将所有公路被区分为5个等级,依次分别为高速公路、一级公路、二级公路、三级公路和四级公路,从道路状况和行车适宜度评估,等级越靠前(接近高速公路)的公路对行车更有利。为了便于计算,
分别将其用数字0到4表示,即高速公路为0、一级公路为1、二级公路为2、三级公路为3、四级公路为4。
[0146]
另外根据规定,不同等级的公路有不同的车道数量要求,对于高速公路和一级公路一般要求双向不低于4车道,二级和三级公路要求至少为双向2车道,四级公路一般为双向2车道根据实际路面宽度和交通流情况可以双向共用1车道。车道数量对于场景复杂度的贡献有两方面考量,当车道数量较少时,场景交通参与者数量上限也越少,自动驾驶汽车的可行驶区域面积越小,场景稳定性较强;当车道数量较多时,场景交通参与者数量上限也越多,自动驾驶汽车的可行驶区域面积越大,理论上场景复杂度相较于车道数量较少时应该更高,但往往车道数量越多则表明公路路况越好,对于行驶车辆而言实际驾驶难度会更小。
[0147]
综合上述考量,参照信息论原理,可得计算公式为:
[0148][0149][0150]
其中,c
road
代表公路等级和车道数量对场景复杂度的贡献,rc代表公路等级系数、用于调节公路等级对场景复杂度的贡献权重,r代表公路等级,r代表双向车道的总数量。
[0151]
2)曲率半径、路面坡度
[0152]
道路曲率半径越大、路面坡度越小对于行驶的车辆更有利,反之则会影响车辆行驶,极端情况下还会引发安全事故。结合jtg b01-2014中的相关规定,曲率半径、路面坡度对场景复杂的贡献可采用如下公式:
[0153][0154][0155]
其中,c
roc
代表曲率半径对场景复杂度的贡献,rc代表道路的曲率半径,c
gradient
代表路面坡度对场景复杂度的贡献,g代表路面坡度。
[0156]
3)岔道数量、特殊路况
[0157]
岔道以及特殊路况会造成自动驾驶汽车在预测规划方面的不确定性,往往人类驾驶员引发的安全事故也多发于相关路段,所以场景复杂度必然需要考量相关因素的影响。岔道和特殊路况出现的形式繁多,难以一一衡量之间的区别,为了简化场景复杂度计算同时体现相关因素对场景复杂度的贡献,采用如下公式进行计算:
[0158][0159]
其中,c
scenes
代表岔道和特殊路况对仿真测试场景的复杂度贡献,c代表岔道计数,s代表特殊路况计数。
[0160]
需要注意的是,在所有道路元素变量中,除岔道数量、特殊路况属于场景全局复杂度贡献不随车辆的行驶过程发生变化,其余变量都有可能随着车辆的行驶发生变化。
[0161]
3.交通标志与设施
[0162]
交通标志与设施在行车过程中主要发挥警示或提醒作用,对自动驾驶汽车的影响主要体现在决策规划部分,为了简化交通标志与设施的复杂度贡献计算采用全局计数的形式(即不考虑不同时刻复杂度的差异),具体公式如下:
[0163][0164]
其中,ω
traffic_signs
代表警告标志、禁令标志、指示标志、指路标志、旅游区标志、道路施工安全标志、辅助标志、禁止标线、指示标线和警告标线的集合,一共涉及10类标志或标线,ni代表ω
traffic_signs
中相应标志或标线在国标中的细分种类总数,ni代表ω
traffic_signs
中相应标志或标线在仿真测试场景中的细分种类数。例如,对于禁令标志而言,根据标准规定n
禁令标志
为42,此时场景中出现的禁令标志数量n
禁令标志
为3,则对于禁令标志而言其贡献的复杂度为3/42≈0.07,其他几类标志或标线以此类推。
[0165]
需要注意的是,交通标志与设施在此简化为了场景全局复杂度贡献,不考虑其在行驶过程中随时间发生的变化。
[0166]
4.交通参与者
[0167]
在不考虑其他因素影响时,交通参与者对场景复杂度的贡献主要体现在是否会对主车正常行驶产生干扰。以各个交通参与者为节点,两两交通参与者之间的关系为边,当两个交通参与者之间存在障碍物分隔时(如交通围栏、花坛或其他交通参与者等)边不成立,构建无向图,则综合每个边的复杂度即为交通参与者的复杂度。
[0168]
每条边对应的场景复杂度贡献计算方法如下:
[0169]
假设有两个交通参与者tp1和tp2,其初始状态分别记为(x1,y1,v
x1
,v
y1
,a
x1
,a
y1
)和(x2,y2,v
x2
,v
y2
,a
x2
,a
y2
),其中x和y为交通参与者在路面sl坐标系下等效的直角坐标位置,v
x
和vy为等效的横纵速度分量,a
x
和ay为等效的横纵加速度分量,假设两交通参与者的加速度维持其初始状态,则经过一段时间t后,两交通参与者在平面内的绝对位置分别为:
[0170][0171][0172]
其中x1(t)和y1(t)为交通参与者tp1在t时的坐标位置,x2(t)和y2(t)为交通参与者tp2在t时的坐标位置,则两交通参与者之间的欧式距离计算公式为:
[0173][0174]
当两车距离最小时可得到与之相对应的时间,即:
[0175]
tm=arg mins(t)
[0176]
此时可以取到两交通参与者之间的最小距离,即:
[0177]
sm=s(tm)
[0178]
对于一个自动驾驶仿真测试场景而言,场景持续最长时间若记为t则t≤t,当sm越小时说明两交通参与者之间的碰撞可能性越高,当达到最小距离的时间tm越小时说明两车发生碰撞的可能性越高。综合上述考虑,对于每对交通参与者之间边的复杂度定义为:
[0179]cedge
=c
t
+cs[0180][0181][0182][0183]
其中,c
edge
代表两两交通参与者之间边的复杂度,c
t
代表时间复杂度因素,tm代表达到最小距离时的时间,t代表场景剩余时间,cs代表距离复杂度因素,sm代表两交通参与者之间的最小距离,s0代表两交通参与者的初始距离(两交通参与者的初始位置的欧氏距离)。对于场景中某一时刻的所有交通参与者的复杂度而言,则有公式:
[0184][0185]
其中,c
tp
代表所有交通参与者对场景的复杂度贡献,代表其中一对交通参与者的边复杂度,i表示边的编号,n代表所有边的集合。
[0186]
需要说明的是,对于两交通参与者而言,当tm=0即sm=s0时,表明两交通参与者在初始时刻即为最小间距,之后两交通参与者的间距将保持现状或拉开,没有相遇碰撞的风险,相应的边复杂度即为最小;每条边的复杂度实际上会随着各交通参与者的行驶状态发生变化。
[0187]
s3.根据各场景复杂度贡献,计算不同场景元素间在不同时刻的联合复杂度,生成反映不同场景元素潜在关系的场景复杂度集。
[0188]
基于步骤二可以获得的场景复杂度时域特征包括c
illumination
、c
visibility
、c
sphere
、c
wind
、c
rainfall
、c
road
、c
roc
、c
gradient
和c
tp
等共计8项,全局特征包括c
scenes
和c
traffic_signs
共计2项。在此本方案使用了k-means和transformer进一步挖掘不同元素在时域中的关联复杂度。具体地,该步骤方案流程可参见图4所示。
[0189]
先将所有时域特征按照时刻进行加权求和得到融合后的时域特征,使用主成分分析(principal component analysis,pca)进行降维,再使用k均值聚类算法(k-means clustering algorithm)区分不同仿真测试场景时域特征的集合,由此获得元素复杂度的伪类。
[0190]
同时将融合后的时域特征数据进行embedding操作,目的是为了将不同原始时长(数据长度)的场景数据编码成统一的长度。例如,针对时长不同的两个场景,可能他们的融合时域特征长度分别为1000和3000,通过embedding编码可以将他们统一为长度为2000的数据。
[0191]
将embedding之后的融合时域特征、场景中的全局特征(非时域特征)以及由聚类
算法得到的元素复杂度伪类输入到transformer模型中,经编码和解码获得场景复杂度集。基于transformer模型中的注意力机制,可以很好的将不同类型的场景复杂度特征结合起来,可以发掘不同场景元素之间的潜在关系,需要说明的是,由transformer模型输出的结果并不是一个单一的值,而是一个具有一定时域特征的集合,虽然经过embedding后丧失了与原始场景时序严格的一一对应关系,但从总体上仍然保留了场景复杂度在时域中的相关特性,而且使用这种方式更有利于对不同时间长度场景间的复杂度进行比较。
[0192]
s4.根据场景复杂度集,统计场景复杂度的时域分布特征。
[0193]
值得说明的是,还可以针对步骤s3中得到的场景复杂度集进行一些统计学运算,包括但不限于均值、中位值、峰值、谷值、极差值、方差等,通过此种方式可以摆脱传统复杂度计算方法在场景时域特性上的缺失,也可从更多维度对场景的复杂度进行考察。
[0194]
综上所述,本发明中的自动驾驶仿真场景复杂度计算方法,其通过获取自动驾驶仿真场景的场景元素信息,所述场景元素信息包括天气、道路、交通标志与设施、以及交通参与者信息;计算各场景元素信息在不同时刻的场景复杂度贡献;根据各场景复杂度贡献,计算不同场景元素间在不同时刻的联合复杂度,生成反映不同场景元素潜在关系的场景复杂度集;根据场景复杂度集,统计场景复杂度的时域分布特征。从而综合考虑了自动驾驶仿真测试场景中的各类元素,解决了过去难以对场景各元素复杂度进行量化估计或量化方法不充分的问题。并采用机器学习相关算法,特别是使用transformer模型,其注意力机制能够很好的挖掘不同元素变量之间的潜在关联,同时还能将不同时长的场景缩放到统一的长度以便进行比较。此外,还采用集合的形式而不是一个数字的方式来表达场景的复杂度,可以更好的体现场景中复杂度的时域特性,便于对不同场景进行精细化区分和管理,也能够更好的利用相关场景开展自动驾驶仿真测试。
[0195]
本发明实施例还提供了一种自动驾驶仿真场景复杂度计算装置,其包括获取模块、计算模块和统计模块。
[0196]
其中,获取模块用于获取自动驾驶仿真场景的场景元素信息,所述场景元素信息包括天气、道路、交通标志与设施、以及交通参与者信息。
[0197]
计算模块用于计算各场景元素信息在不同时刻的场景复杂度贡献,并根据各场景复杂度贡献,计算不同场景元素间在不同时刻的联合复杂度,生成反映不同场景元素潜在关系的场景复杂度集。
[0198]
统计模块根据场景复杂度集,统计场景复杂度的时域分布特征。
[0199]
一些实施例中,所述计算模块根据各场景复杂度贡献,计算不同场景元素间在不同时刻的联合复杂度,生成反映不同场景元素潜在关系的场景复杂度集,包括:
[0200]
将场景复杂度贡献中的时域特征按照时刻进行加权求和得到融合时域特征;
[0201]
对融合时域特征进行降维,并区分不同仿真测试场景的时域特征的集合,以获得元素复杂度伪类;
[0202]
基于融合时域特征、元素复杂度伪类和场景复杂度贡献中的非时域特征,进行编码和解码获得场景复杂度集。
[0203]
一些实施例中,所述计算模块使用主成分分析pca对融合时域特征进行降维,并使用k均值聚类算法区分不同仿真测试场景的时域特征的集合,以获得元素复杂度伪类。
[0204]
一些实施例中,所述计算模块还用于:
[0205]
对融合时域特征进行嵌入embedding操作,以将不同原始时长的场景元素数据编码成统一的长度。
[0206]
一些实施例中,所述计算模块基于融合时域特征、元素复杂度伪类和场景复杂度贡献中的非时域特征,进行编码和解码获得场景复杂度集,包括;
[0207]
将embedding之后的融合时域特征元素复杂度伪类和场景复杂度贡献中的非时域特征,输入至transformer模型中进行编码和解码;
[0208]
基于transformer模型中的注意力机制,生成反映不同场景元素潜在关系的场景复杂度集。
[0209]
一些实施例中,所述统计模块根据场景复杂度集,统计场景复杂度的时域分布特征,包括:
[0210]
根据场景复杂度集,进行均值、中位值、峰值、谷值、极差值、和/或方差计算。
[0211]
一些实施例中,所述天气信息包括光照强度信息,能见度等级信息,气压、空气温度及空气湿度信息,风力信息和降水信息中的至少一种。
[0212]
一些实施例中,所述计算模块根据公式:
[0213][0214]
计算光照强度信息在不同时刻的场景复杂度贡献c
illumination
,其中,xi为光照强度的实时测量值,α为校正系数,用于将光照强度信息的场景复杂度贡献调整到设置区间内。
[0215]
一些实施例中,所述计算模块根据公式:
[0216][0217]
计算能见度等级信息在不同时刻的场景复杂度贡献c
visibility
,其中,xv为能见度等级的实时测量值。
[0218]
一些实施例中,所述计算模块根据公式:
[0219]
根据公式:
[0220][0221][0222]
计算气压、空气温度及空气湿度信息在不同时刻的场景复杂度贡献c
sphere
,其中,ω
sphere
为气压、空气温度和空气湿度的集合,δsi为集合中相关变量的偏离度,xi为集合中相关变量的实时测量值,si为集合中相关变量的理想标准值。
[0223]
一些实施例中,所述计算模块根据公式:
[0224][0225]
计算风力信息在不同时刻的场景复杂度贡献c
wind
,其中,x
wind
为实时风速,α
wind
为实时风向。
[0226]
一些实施例中,所述计算模块根据公式:
[0227][0228]
计算降水信息在不同时刻的场景复杂度贡献c
rainfall
,其中,x
rainfall
为实时降水量等级,rs为降雨量在总降水量中的占比,当rs为1时表示纯降雨,当rs为0时表示纯降雪。
[0229]
一些实施例中,所述道路信息包括公路等级、车道数量信息,曲率半径信息,路面坡度信息,岔道数量、特殊路况信息中的至少一种,所述特殊路况包括桥涵、隧道和公铁交汇。
[0230]
一些实施例中,所述计算模块根据公式:
[0231][0232][0233]
计算公路等级、车道数量信息在不同时刻的场景复杂度贡献c
road
,其中,rc为公路等级系数,r为公路等级,r为双向车道的总数量。
[0234]
一些实施例中,所述计算模块根据公式:
[0235][0236]
计算曲率半径信息在不同时刻的场景复杂度贡献c
roc
,其中,rc为道路的曲率半径。
[0237]
一些实施例中,所述计算模块根据公式:
[0238][0239]
计算路面坡度信息在不同时刻的场景复杂度贡献c
gradient
,其中,g为路面坡度。
[0240]
一些实施例中,所述计算模块根据公式:
[0241][0242]
计算岔道数量、特殊路况信息在不同时刻的场景复杂度贡献c
scenes
,其中,c为岔道计数,s为特殊路况计数。
[0243]
一些实施例中,所述计算模块根据公式:
[0244][0245]
计算交通标志与设施信息在不同时刻的场景复杂度贡献c
traffic_signs
,其中,ω
traffic_signs
为警告标志、禁令标志、指示标志、指路标志、旅游区标志、道路施工安全标志、辅助标志、禁止标线、指示标线和警告标线的集合,ni为ω
traffic_signs
中相应标志或标线在国标中的细分种类总数,ni为ω
traffic_signs
中相应标志或标线在仿真场景中的细分种类总数。
[0246]
一些实施例中,所述计算模块用于:
[0247]
以各个交通参与者为节点,两两交通参与者之间的关系为边,构建无向图;
[0248]
根据公式:
[0249]cedge
=c
t
+cs[0250][0251][0252][0253]
计算两两交通参与者之间边的不同时刻的场景复杂度贡献c
edge
,其中,c
t
为时间复杂度因素,tm为两交通参与者达到最小距离时的时间,t为仿真场景剩余时间,cs为距离复杂度因素,sm为两交通参与者之间的最小距离,s0为两交通参与者的初始距离,x1、x2、y1、y2分别为两交通参与者在路面sl坐标系下等效的直角坐标;
[0254]
根据公式:
[0255][0256]
计算所有交通参与者在不同时刻的场景复杂度贡献cx
p
,其中,为其中一对交通参与者之间边的不同时刻的场景复杂度贡献,i为边的编号,n为所有边的集合。
[0257]
本发明实施例还提供一种设备,所述设备包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的计算机程序,其中所述计算机程序被所述处理器执行时,实现上述的自动驾驶仿真场景复杂度计算方法的步骤。
[0258]
具体的参见图5所示,本发明实施例中的设备为计算机设备,其包括通过系统总线连接的处理器、存储器和网络接口,其中,存储器可以包括非易失性存储介质和内存储器。
[0259]
非易失性存储介质可存储操作系统和计算机程序。该计算机程序包括程序指令,该程序指令被执行时,可使得处理器执行任意一种自动驾驶仿真场景复杂度计算方法。
[0260]
处理器用于提供计算和控制能力,支撑整个计算机设备的运行。
[0261]
内存储器为非易失性存储介质中的计算机程序的运行提供环境,该计算机程序被处理器执行时,可使得处理器执行任意一种自动驾驶仿真场景复杂度计算方法。
[0262]
该网络接口用于进行网络通信,如发送分配的任务等。本领域技术人员可以理解,图5中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0263]
应当理解的是,处理器可以是中央处理单元(central processing unit,cpu),该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0264]
以上仅为本发明实施例的具体实施方式,但本发明实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明实施例揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明实施例的保护范围之内。因此,本发明实施例的保护范围应以权利要求的保护范围为准。
技术特征:
1.一种自动驾驶仿真场景复杂度计算方法,其特征在于,该方法包括以下步骤:获取自动驾驶仿真场景的场景元素信息,所述场景元素信息包括天气、道路、交通标志与设施、以及交通参与者信息;计算各场景元素信息在不同时刻的场景复杂度贡献;根据各场景复杂度贡献,计算不同场景元素间在不同时刻的联合复杂度,生成反映不同场景元素潜在关系的场景复杂度集;根据场景复杂度集,统计场景复杂度的时域分布特征。2.如权利要求1所述的一种自动驾驶仿真场景复杂度计算方法,其特征在于,所述根据各场景复杂度贡献,计算不同场景元素间在不同时刻的联合复杂度,生成反映不同场景元素潜在关系的场景复杂度集,包括:将场景复杂度贡献中的时域特征按照时刻进行加权求和得到融合时域特征;对融合时域特征进行降维,并区分不同仿真测试场景的时域特征的集合,以获得元素复杂度伪类;基于融合时域特征、元素复杂度伪类和场景复杂度贡献中的非时域特征,进行编码和解码获得场景复杂度集。3.如权利要求2所述的一种自动驾驶仿真场景复杂度计算方法,其特征在于:使用主成分分析pca对融合时域特征进行降维,并使用k均值聚类算法区分不同仿真测试场景的时域特征的集合,以获得元素复杂度伪类。4.如权利要求2所述的一种自动驾驶仿真场景复杂度计算方法,其特征在于,还包括:对融合时域特征进行嵌入embedding操作,以将不同原始时长的场景元素数据编码成统一的长度。5.如权利要求4所述的一种自动驾驶仿真场景复杂度计算方法,其特征在于,所述基于融合时域特征、元素复杂度伪类和场景复杂度贡献中的非时域特征,进行编码和解码获得场景复杂度集,包括;将embedding之后的融合时域特征元素复杂度伪类和场景复杂度贡献中的非时域特征,输入至transformer模型中进行编码和解码;基于transformer模型中的注意力机制,生成反映不同场景元素潜在关系的场景复杂度集。6.如权利要求1所述的一种自动驾驶仿真场景复杂度计算方法,其特征在于,所述根据场景复杂度集,统计场景复杂度的时域分布特征,包括:根据场景复杂度集,进行均值、中位值、峰值、谷值、极差值、和/或方差计算。7.如权利要求1所述的一种自动驾驶仿真场景复杂度计算方法,其特征在于:所述天气信息包括光照强度信息,能见度等级信息,气压、空气温度及空气湿度信息,风力信息和降水信息中的至少一种。8.如权利要求7所述的一种自动驾驶仿真场景复杂度计算方法,其特征在于:根据公式:计算光照强度信息在不同时刻的场景复杂度贡献c
illumination
,其中,x
i
为光照强度的实时测量值,α为校正系数,用于将光照强度信息的场景复杂度贡献调整到设置区间内。
9.如权利要求7所述的一种自动驾驶仿真场景复杂度计算方法,其特征在于:根据公式:计算能见度等级信息在不同时刻的场景复杂度贡献c
visibility
,其中,x
v
为能见度等级的实时测量值。10.如权利要求7所述的一种自动驾驶仿真场景复杂度计算方法,其特征在于:根据公式:根据公式:计算气压、空气温度及空气湿度信息在不同时刻的场景复杂度贡献c
sphere
,其中,ω
sphere
为气压、空气温度和空气湿度的集合,δs
i
为集合中相关变量的偏离度,x
i
为集合中相关变量的实时测量值,s
i
为集合中相关变量的理想标准值。11.如权利要求7所述的一种自动驾驶仿真场景复杂度计算方法,其特征在于:根据公式:计算风力信息在不同时刻的场景复杂度贡献c
wind
,其中,x
wind
为实时风速,α
wind
为实时风向。12.如权利要求7所述的一种自动驾驶仿真场景复杂度计算方法,其特征在于:根据公式:计算降水信息在不同时刻的场景复杂度贡献c
rainfall
,其中,x
rainfall
为实时降水量等级,rs为降雨量在总降水量中的占比,当rs为1时表示纯降雨,当rs为0时表示纯降雪。13.如权利要求1所述的一种自动驾驶仿真场景复杂度计算方法,其特征在于:所述道路信息包括公路等级、车道数量信息,曲率半径信息,路面坡度信息,岔道数量、特殊路况信息中的至少一种,所述特殊路况包括桥涵、隧道和公铁交汇。14.如权利要求13所述的一种自动驾驶仿真场景复杂度计算方法,其特征在于:根据公式:根据公式:计算公路等级、车道数量信息在不同时刻的场景复杂度贡献c
road
,其中,rc为公路等级系数,r为公路等级,r为双向车道的总数量。
15.如权利要求13所述的一种自动驾驶仿真场景复杂度计算方法,其特征在于:根据公式:计算曲率半径信息在不同时刻的场景复杂度贡献c
roc
,其中,r
c
为道路的曲率半径。16.如权利要求13所述的一种自动驾驶仿真场景复杂度计算方法,其特征在于:根据公式:计算路面坡度信息在不同时刻的场景复杂度贡献c
gradient
,其中,g为路面坡度。17.如权利要求13所述的一种自动驾驶仿真场景复杂度计算方法,其特征在于:根据公式:计算岔道数量、特殊路况信息在不同时刻的场景复杂度贡献c
scenes
,其中,c为岔道计数,s为特殊路况计数。18.如权利要求1所述的一种自动驾驶仿真场景复杂度计算方法,其特征在于:根据公式:计算交通标志与设施信息在不同时刻的场景复杂度贡献c
traffic_signs
,其中,ω
traffic_signs
为警告标志、禁令标志、指示标志、指路标志、旅游区标志、道路施工安全标志、辅助标志、禁止标线、指示标线和警告标线的集合,n
i
为ω
traffic_signs
中相应标志或标线在国标中的细分种类总数,n
i
为ω
traffic_signs
中相应标志或标线在仿真场景中的细分种类总数。19.如权利要求1所述的一种自动驾驶仿真场景复杂度计算方法,其特征在于:以各个交通参与者为节点,两两交通参与者之间的关系为边,构建无向图;根据公式:c
edge
=c
t
+c
sss
计算两两交通参与者之间边的不同时刻的场景复杂度贡献c
edge
,其中,c
t
为时间复杂度因素,t
m
为两交通参与者达到最小距离时的时间,t为仿真场景剩余时间,c
s
为距离复杂度因素,s
m
为两交通参与者之间的最小距离,s0为两交通参与者的初始距离,x1、x2、y1、y2分别为
两交通参与者在路面sl坐标系下等效的直角坐标;根据公式:计算所有交通参与者在不同时刻的场景复杂度贡献c
tp
,其中,为其中一对交通参与者之间边的不同时刻的场景复杂度贡献,i为边的编号,n为所有边的集合。20.一种自动驾驶仿真场景复杂度计算装置,其特征在于,包括:获取模块,其用于获取自动驾驶仿真场景的场景元素信息,所述场景元素信息包括天气、道路、交通标志与设施、以及交通参与者信息;计算模块,其用于计算各场景元素信息在不同时刻的场景复杂度贡献,并根据各场景复杂度贡献,计算不同场景元素间在不同时刻的联合复杂度,生成反映不同场景元素潜在关系的场景复杂度集;统计模块,其根据场景复杂度集,统计场景复杂度的时域分布特征。21.一种设备,其特征在于,所述设备包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的计算机程序,其中所述计算机程序被所述处理器执行时,实现如权利要求1至19中任一项所述的一种自动驾驶仿真场景复杂度计算方法的步骤。
技术总结
本发明公开了一种自动驾驶仿真场景复杂度计算方法、装置及设备,涉及自动驾驶汽车技术中的测试与评价技术领域,其中,自动驾驶仿真场景复杂度计算方法,包括以下步骤:获取自动驾驶仿真场景的场景元素信息,所述场景元素信息包括天气、道路、交通标志与设施、以及交通参与者信息;计算各场景元素信息在不同时刻的场景复杂度贡献;根据各场景复杂度贡献,计算不同场景元素间在不同时刻的联合复杂度,生成反映不同场景元素潜在关系的场景复杂度集;根据场景复杂度集,统计场景复杂度的时域分布特征。本发明综合考虑了自动驾驶仿真测试场景中的各类元素,解决了难以对场景各元素复杂度进行量化估计或量化方法不充分的问题。行量化估计或量化方法不充分的问题。行量化估计或量化方法不充分的问题。
技术研发人员:吴礼登 金盛羽 陈彦 汤泽波 夏彪
受保护的技术使用者:东风汽车集团股份有限公司
技术研发日:2023.05.26
技术公布日:2023/8/21
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
