CN115017050A - 自动驾驶的测试场景生成系统及方法 - Google Patents
自动驾驶的测试场景生成系统及方法 Download PDFInfo
- Publication number
- CN115017050A CN115017050A CN202210725702.0A CN202210725702A CN115017050A CN 115017050 A CN115017050 A CN 115017050A CN 202210725702 A CN202210725702 A CN 202210725702A CN 115017050 A CN115017050 A CN 115017050A
- Authority
- CN
- China
- Prior art keywords
- test
- scene
- automatic driving
- specific
- functional
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供一种自动驾驶的测试场景生成系统及方法,包括场景生成子系统,该场景生成子系统包括:功能场景生成模块,用于从自动驾驶系统的需求文件中提取与场景构建相关的功能需求,并对所述功能需求进行分析,确定功能场景;逻辑场景生成模块,用于在所述功能场景的基础上结合地图库定义参数空间,从而生成与所述功能场景对应的多个逻辑场景;具体场景生成模块,用于在所述参数空间内确定参数值,并结合所述地图库生成与逻辑场景对应的多个具体场景。本发明实现了场景的分层泛化,能够快速构建大量测试场景,扩大了测试场景的覆盖范围,又不会出现场景冗余情况的出现。
Description
技术领域
本发明涉及自动驾驶技术领域,尤其涉及一种自动驾驶的测试场景生成系统及方法。
背景技术
自动驾驶车辆在安全、可靠地投入市场运行前,需要经过大规模的交通场景测试验证,各种交通场景数量通常有几十万个,甚至更多。因此,测试验证极易出现场景覆盖不充分,而部分场景冗余覆盖的情况,这种测试遗漏给自动驾驶车辆留下了安全隐患。
现有的自动驾驶测试的交通场景数量众多,除了少部分通过实车采集外,绝大部分都需要工程师进行设计,这些场景设计的合理性和设计效率难以保证。
另外,自动驾驶需要覆盖的场景数量庞大,测试执行过程的周期长,直接影响软硬件开发的效率。且在自动驾驶测试完成后,测试结果评估难度大,评估准确性低。
发明内容
本发明提供一种自动驾驶的测试场景生成系统及方法,用以解决上述问题。
本发明提供一种自动驾驶的测试场景生成系统,该系统应用在云端,包括场景生成子系统,该场景生成子系统包括:
功能场景生成模块,用于从自动驾驶系统的需求文件中提取与场景构建相关的功能需求,并对所述功能需求进行分析,确定功能场景;
逻辑场景生成模块,用于在所述功能场景的基础上结合地图库定义参数空间,从而生成与所述功能场景对应的多个逻辑场景;
具体场景生成模块,用于在所述参数空间内确定参数值,并结合所述地图库生成与逻辑场景对应的多个具体场景。
根据本发明提供的一种自动驾驶的测试场景生成系统,所述逻辑场景生成模块包括:
运行设计域定义单元,用于定义自动驾驶的运行范围,至少包括道路、道路上的物理设置、临时设施、环境以及互联信息;
交通目标与交通事件定义单元,用于定义自动驾驶过程中交通参与目标以及该交通参与目标的交通事件;
期望决策定义单元,用于根据所述运行范围、交通参与目标以及所述交通事件定义所采取的预期决策。
根据本发明提供的一种自动驾驶的测试场景生成系统,该系统还包括测试管理子系统,所述测试管理子系统包括:
测试计划制定模块,用于根据自动驾驶测试任务确定具体场景以及执行所述自动驾驶测试任务的多个终端,并将所述具体场景发送至多个终端以使得多个终端在具体场景下并行执行所述自动驾驶测试任务;
测试状态监控模块,用于监控所述多个终端执行所述自动驾驶测试任务过程中的进展状态。
根据本发明提供的一种自动驾驶的测试场景生成系统,该系统还包括测试评估子系统,所述测试评估子系统包括:
测试分析模块,用于基于所有终端返回的测试数据进行具体场景置信度分析,得到测试分析结果;其中,所述测试数据为所述终端在具体场景下执行所述自动驾驶测试任务时生成;
测试评估模块,用于根据所有终端返回的测试数据构建待评估数据矩阵,利用所述待评估数据矩阵对所述自动驾驶测试任务进行评估,得到评估结果。
本发明还提供一种自动驾驶的测试场景生成系统,该系统应用在终端,该系统包括仿真器、测试执行子系统以及测试调度器;
所述仿真器从云端获取具体场景对应的场景数据,并将所述场景数据输入测试执行子系统;
所述测试执行子系统基于所述场景数据执行虚拟仿真测试任务,并将测试过程中生成的测试数据发送至所述测试调度器;
所述测试调度器将所述测试数据发送至云端。
本发明还提供一种自动驾驶的测试场景生成方法,该方法应用在云端,包括:
从自动驾驶系统的需求文件中提取与场景构建相关的功能需求,并对所述功能需求进行分析,确定功能场景;
在所述功能场景的基础上结合地图库定义参数空间,从而生成与所述功能场景对应的多个逻辑场景;
在所述参数空间内确定参数值,并结合地图库生成与逻辑场景对应的多个具体场景。
根据本发明提供的一种自动驾驶的测试场景生成方法,该方法还包括:
根据自动驾驶测试任务确定具体场景以及执行所述自动驾驶测试任务的多个终端,并将所述具体场景发送至多个终端以使得多个终端在具体场景下并行执行所述自动驾驶测试任务;
监控所述多个终端执行所述自动驾驶测试任务过程中的进展状态。
根据本发明提供的一种自动驾驶的测试场景生成方法,该方法还包括:
基于所有终端返回的测试数据进行具体场景置信度分析,得到测试分析结果;其中,所述测试数据为所述终端在具体场景下执行所述自动驾驶测试任务时生成;
根据所有终端返回的测试数据构建待评估数据矩阵,利用所述待评估数据矩阵对所述自动驾驶测试任务进行评估,得到评估结果。
本发明还提供一种自动驾驶的测试场景生成方法,该方法应用在终端,该方法包括:
从云端获取具体场景对应的场景数据;
基于所述场景数据执行虚拟仿真测试任务,并将测试过程中生成的测试数据发送至云端。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现如上述任一种自动驾驶的测试场景生成方法。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如上述任一种自动驾驶的测试场景生成方法。
本发明还提供一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时实现如上述任一种自动驾驶的测试场景生成方法。
本发明提供的自动驾驶的测试场景生成系统及方法,其中,自动驾驶的测试场景生成系统通过功能场景生成模块直接从自动驾驶系统的需求文件中提取与场景构建相关的功能需求进而生成功能场景,又通过逻辑场景生成模块生成与所述功能场景对应的多个逻辑场景,再通过具体场景生成模块生成与逻辑场景对应的多个具体场景,实现了场景的分层泛化,能够快速构建大量测试场景,扩大了测试场景的覆盖范围,又不会出现场景冗余情况的出现。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的场景生成子系统的结构框图一;
图2为本发明实施例提供的自动驾驶的测试场景生成系统的整体结构框图;
图3为本发明实施例提供的场景生成子系统的结构框图二;
图4为本发明实施例提供的自动驾驶的测试场景生成系统的整体实现示意图;
图5为本发明实施例提供的各个场景ID的示例图;
图6为本发明实施例提供的逻辑场景生成模块的实现示意图;
图7为本发明实施例提供的应用在终端的自动驾驶的测试场景生成系统的结构示意图;
图8为本发明实施例提供的应用在云端的自动驾驶的测试场景生成方法的流程示意图;
图9为本发明实施例提供的应用在终端的自动驾驶的测试场景生成方法的流程示意图;
图10为本发明实施例提供的一种电子设备的实体结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
现有技术中,大多数企业通过构建庞大的自动驾驶车队,在半封闭的道路上进行长时间的实车测试,试图覆盖尽量多的交通场景。部分企业构建了虚拟仿真测试平台,通过仿真的方式来覆盖海量的交通场景并提升测试的效率。然而上述两种方式所能够覆盖的交通场景数量和完整性不够充分。
另外,测试的结果评估依赖工程师基于自动驾驶车辆的操作来判断。这种判断虽然很直观,但是对系统输出的精确性不够,判断的效率较低。
从架构层面将虚拟仿真测试平台拆分为前端测试系统和后端测试系统。通过将场景与仿真器进行解耦分离的方式,使得前端测试系统部署在云端,聚焦于对实时性要求不高的场景设计、测试管理和结果评估,能够专注于海量场景的合理存储、分类与泛化。并使得后端测试系统部署在终端,聚焦于仿真测试的执行。从而使得测试依托于云端和终端各自充分发挥其长处。
下面结合附图对本发明的自动驾驶的测试场景生成系统及方法进行具体说明。
图1是本发明实施例提供的应用在云端的自动驾驶的测试场景生成系统的结构框图;图2是本发明实施例提供的自动驾驶的测试场景生成系统的结构示意图;图3本发明实施例提供的场景生成子系统的结构示意图。
如图1-图4所示,一种应用在云端的自动驾驶的测试场景生成系统10,包括场景生成子系统101、测试管理子系统102以及测试评估子系统103。
其中,场景生成子系统101可以存储、分类、自动生成大量的虚拟测试场景,能够实现测试场景对系统需求的覆盖,从而解决自动驾驶功能测试遗漏的问题。
测试管理子系统102可以制定测试计划,给后端测试系统以并行的方式分配测试任务,并监督测试进展,显著提升测试效率,从而解决测试周期过长的问题。
测试评估子系统103建立了自动驾驶系统的评估矩阵,可以基于后端测试系统反馈的测试数据自动化分析测试结果,从而降低对测试工程师的人为依赖。
上述场景生成子系统101具体包括功能场景生成模块1011、逻辑场景生成模块1012、具体场景生成模块1013、地图库存储模块1014以及测试用例模块1015。
功能场景生成模块1011用于从自动驾驶系统的需求文件中提取与场景构建相关的功能需求,并对所述功能需求进行分析,确定功能场景。
在本模块中,功能场景是在对自动驾驶系统需求文件进行分析后设计的场景。功能场景的目的是从自动驾驶系统需求文件中提炼出抽象化的测试内容,以简单精炼的文字表述出来。
在实际应用过程中通过在场景生成子系统中设置可编辑的功能场景描述框,让用户能基于需求文件对功能进行文字说明,该文字说明能够简要交代清楚功能场景所包含的道路、交通目标和交通事件。
另外,功能场景生成模块1011还具备创建与保存模板的能力。用户可以从功能场景模板库中直接调用归类的模板,从而快速构建同类型的功能场景。
功能场景生成模块1011还具备“新建”、“新建聚类”、“编辑”、“保存”、“删除”功能场景的控键。其中,“新建聚类”功能场景是指从功能场景模板库中选定一个功能场景模板之后,创建一个与该功能场景模板属性相同的功能场景,这两个功能场景是对同一需求的覆盖,属于同一功能场景类,从而能够提升功能场景的创建效率,且能够覆盖大量场景。
另外,功能场景生成模块1011还提供了“生成逻辑场景”的控键,该控键可以基于功能场景生成对应的逻辑场景框架,包括逻辑场景ID、场景描述、以及对应的参数空间等信息,从而加快逻辑场景构建速率。
除此之外,上述生成的功能场景具有各自编号(即ID),能够便于查询,可以为AA-XXXXX,其中,AA为功能需求的简写,例如CC(巡航定速:Cruise Control)、LC表示(横向控制:Lateral Control),长度为2-5个大写字母;XXXXX为5位数字序号,从1-99999依次递增,根据生成先后顺序数值依次递增。示例性地,如图5所示,功能场景1的ID为CC-00001,即表示为Cruise Control(巡航定速)功能需求下所生成的第一个功能场景。
逻辑场景生成模块1012用于在所述功能场景的基础上结合地图库定义参数空间,从而生成与所述功能场景对应的多个逻辑场景。
在本模块中,逻辑场景生成模块1012的核心功能是定义参数空间。逻辑场景中的参数为“半标准化”参数,即逻辑场景中的参数一部分应完全按照OpenDRIVE和OpenSCENARIO定义的内容进行设置;剩下一部分则是OpenDRIVE和OpenSCENARIO没有定义的内容,没有严格的格式要求,比如,自动驾驶系统在特定场景下应该执行的结果Result是不做严格要求的,逻辑场景生成模块需要对该部分参数进行自行定义。逻辑场景中的非标准化参数是不可缺少的部分,不能省略。
在实际应用过程中,逻辑场景生成模块1012具备“新建”、“新建聚类”、“编辑”、“保存”、“删除”逻辑场景的控键。其中,“新建聚类”逻辑场景与上述的“新建聚类”功能场景相似,是指在选定的逻辑场景基础上创建一个与之有相同属性的逻辑场景,这两个逻辑场景对同一个功能场景进行覆盖,属于同一个逻辑场景类,同一个逻辑场景类的逻辑场景ID会比较相近,便于用户查询与使用。
由于逻辑场景是在功能场景的基础上生成的,故功能场景与逻辑场景具有强关联关系,在逻辑场景ID的命名上与功能场景ID具有对应关系,从而便于追踪、聚类分析与泛化,逻辑场景ID可以为AA-XXXXX-XXXXX,其中,前面的AA-XXXXX为功能场景ID,最后的XXXXX为5位数字序号,从1-99999依次递增。示例性地,如图5所示,逻辑场景1的ID为CC-00001-00001,逻辑场景2的ID为CC-00001-00002,其表示逻辑场景1与逻辑场景2均在功能场景1的基础上生成,两个ID中的CC-00001即继承了功能场景1的ID(即CC-00001)。故,由于定义的参数空间不同,一个功能场景能够对应多个逻辑场景。
具体场景生成模块1013,用于在所述参数空间内确定参数值,并结合所述地图库生成与逻辑场景对应的多个具体场景。
在本模块中,具体场景生成模块1013的核心功能是在定义的参数空间内选定场景参数具体的值,从而生成具体场景,并将具体场景的场景数据下发至后端测试系统。
具体场景是一种严格按照标准化格式定义而生成的场景文件,主要由两部分组成:一是基于OpenDRIVE的地图文件,另一个是基于OpenSCENARIO的动态场景文件,两者是一一对应关系。具体场景是可以直接加载到仿真器中(例如VTD、Carla、Esmini等仿真器)中执行的文件。
由于具体场景是在逻辑场景中定义的参数空间内选定具体值而生成,因此,具体场景与逻辑场景也具有强关联关系,在逻辑场景ID的命名上与具体场景ID具有对应关系,从而便于追踪、聚类分析与泛化。具体场景ID可以为AA-XXXXX-XXXXX-XXXXX,其中,前面的AA-XXXXX-XXXXX为逻辑场景ID,最后的XXXXX为5位数字序号,从1-99999依次递增。示例性地,如图5所示,具体场景1的ID为CC-00001-00001-00001,具体场景2的ID为CC-00001-00001-00002,具体场景3的ID为CC-00001-00001-00003,其表示具体场景1、具体场景2以及具体场景3均在逻辑场景1的基础上生成,三个具体场景ID中的CC-00001-00001即继承了逻辑场景1的ID(即CC-00001-00001)。故,由于定义的参数空间中涵盖了所有参数具体值,一个逻辑场景能够对应多个具体场景。
上述功能场景到逻辑场景再到具体场景是场景设计由抽象到具体逐步细化的过程。其中,逻辑场景与具体场景需要依赖地图。因此,在场景生成子系统中设置了地图库存储模块1014,该地图库存储模块1014中存储有公共的地图库。
具体地,地图库存储模块1014的关键功能是存储OpenDRIVE格式的地图,并可以被逻辑场景生成模块和具体场景生成模块调用。地图库具备OpenDRIVE格式地图的导入和导出功能,同时对导入的地图具有命名、编号、分类、添加属性、预览等操作控键。地图的命名可以由用户完成,编号则由系统自动生成,分类可按照“连续地图”、“片段地图”、“其它地图”进行划分,地图的属性包括“来源”、“长度”、“导入日期”、“大小”等。
另外,考虑到部分自动驾驶功能无法通过场景来定义,即通过功能场景生成模块、逻辑场景生成模块以及具体场景模块无法直接生成,因此,在场景生成子系统中设置了测试用例模块1015,该模块1015中存储了各种因上述原因而无法覆盖到的具体场景,从而作为场景的补充,保证测试场景的覆盖范围更广。
需要说明的是,前端测试系统(即应用在云端的自动驾驶的测试场景生成系统)的主要功能是完成虚拟仿真测试场景的设计,测试任务的分发与测试状态监测以及测试结果的评估。前端测试系统管理着大量虚拟仿真场景,数据量大,同时由多个团队的不同用户使用,但是对实时性要求低。故前端测试系统部署在云端。
本发明实施例提供的一种自动驾驶的测试场景生成系统,通过功能场景生成模块直接从自动驾驶系统的需求文件中提取与场景构建相关的功能需求进而生成功能场景,又通过逻辑场景生成模块生成与所述功能场景对应的多个逻辑场景,再通过具体场景生成模块生成与逻辑场景对应的多个具体场景,实现了场景的分层泛化,能够快速构建大量测试场景,扩大了测试场景的覆盖范围,又不会出现场景冗余情况的出现。
进一步地,图6为本发明实施例提供的逻辑场景生成模块的实现示意图,如图6所示,所述逻辑场景生成模块包括运行设计域定义单元(简称为ODD)、交通目标与交通事件定义单元(简称为OE,Object&Event)以及期望决策定义单元(即Result)。
运行设计域定义单元用于定义自动驾驶的运行范围,至少包括道路、道路上的物理设置、临时设施、环境以及互联信息。
其中,道路上的物理设置包括红绿灯、交通标识、道路标记等,临时设施包括围栏、雪糕桶等,环境包括天气与光照条件,互联信息包括4G\5G网络与GPS环境。
交通目标与交通事件定义单元用于定义自动驾驶过程中交通参与目标以及该交通参与目标的交通事件。例如,机动车在自动驾驶过程中的车速,该车速参数可以是一个固定的值60km/h,也可以是一个范围值0-120km/h。
期望决策定义单元用于根据所述运行范围、交通参与目标以及所述交通事件定义所采取的预期决策,预期决策可以分为常规执行任务和故障处理执行任务两种决策。
本发明实施例提供的一种自动驾驶的测试场景生成系统,通过从ODD、Object&Event以及Result三个层级进行参数空间定义,从而生成更完善的逻辑场景。
进一步地,该系统还包括测试管理子系统,所述测试管理子系统包括:
测试计划制定模块,用于根据自动驾驶测试任务确定具体场景以及执行所述自动驾驶测试任务的多个终端,并将所述具体场景发送至多个终端以使得多个终端在具体场景下并行执行所述自动驾驶测试任务。
具体地,测试计划制定模块能够确定被测对象的版本和测试起止时间,在此基础上选择测试任务并下发对应的具体场景相关的场景文件,该场景文件包括OpenDRIVE地图文件和OpenSCENARIO交通文件。
另外,测试计划制定模块在选择测试任务时,就是选择具体场景集和后端测试系统的测试执行子系统,例如HIL系统(硬件在环测试:Hardware In Loop、DIL系统(驾驶员仿真测试:Driver In Loop系统)等。
需要说明的是,因后端测试系统的测试执行子系统的差异,同一个测试计划可能有多个测试任务执行的分支。因此,测试状态监控也可能存在多个分支。
测试状态监控模块,用于监控所述多个终端执行所述自动驾驶测试任务过程中的进展状态。
具体地,测试状态监控模块能够让测试管理子系统与后端测试系统建立通信,从而监控后端测试系统中测试进展,并计算测试任务完成百分比,即已执行场景/任务规定的场景总数,对测试的结果进行显示。
本发明实施例提供的一种自动驾驶的测试场景生成系统,通过测试计划制定模块,将所述具体场景发送至多个终端以使得多个终端在具体场景下并行执行所述自动驾驶测试任务,对测试任务进行了统筹安排,形成了分布式的并行测试机制,有效缩短测试周期,显著提升了测试效率。并使得虚拟仿真测试平台的前后端解耦方案,令测试依托于云端和终端各自充分发挥其长处。
进一步地,该系统还包括测试评估子系统,所述测试评估子系统包括测试分析模块以及测试评估模块。
测试分析模块用于基于所有终端返回的测试数据进行具体场景置信度分析,得到测试分析结果;其中,所述测试数据为所述终端在具体场景下执行所述自动驾驶测试任务时生成。例如,测试分析模块识别得到自动驾驶车辆加速度小于-0.2g的情况,并基于当前时间点,自动记录事件发生前后各30秒的具体场景,对前后具体场景打好标签,在后续回放过程中进行具体场景置信度分析(例如进行加权平均计算),根据测试分析结果判断在上述具体场景中自动驾驶车辆加速度是否小于-0.2g。
测试评估模块用于根据所有终端返回的测试数据构建待评估数据矩阵,利用所述待评估数据矩阵对所述自动驾驶测试任务进行评估,得到评估结果。
具体地,测试评估模块能够基于待评估数据矩阵来判断仿真测试过程是否出现碰撞、非预期变道、非预期转向、急加速、急减速等情况,进而判断本次测试任务是否通过。
本发明实施例提供的一种自动驾驶的测试场景生成系统,通过测试评估子系统建立了自动驾驶系统的评估矩阵,可以基于后端测试系统反馈的测试数据自动化分析测试结果,降低了对测试工程师的人为依赖。
在本发明的另一实施例中,本发明提供一种应用在终端的自动驾驶的测试场景生成系统70,如图7所示,该系统包括仿真器701、测试执行子系统702以及测试调度器703。
所述仿真器701从云端获取具体场景对应的场景数据,并将所述场景数据输入测试执行子系统702。
所述测试执行子系统702基于所述场景数据执行虚拟仿真测试任务,并将测试过程中生成的测试数据发送至所述测试调度器703。
所述测试调度器703将所述测试数据发送至云端。
需要说明的是,后端测试系统(即应用在终端的自动驾驶的测试场景生成系统)能够获取从前端测试系统下发的场景数据,将这些场景数据加载到测试执行子系统中完成虚拟仿真测试任务,并将测试过程的数据上传到前端测试系统中。后端测试系统分布在不同实验室,每个实验室对系统实时性要求高。所以后端测试系统部署在终端。
本发明实施例提供的一种自动驾驶的测试场景生成系统,通过将场景与仿真器进行解耦分离,并统筹测试任务的安排,从而形成分布式的并行测试机制,有效缩短测试周期,提高测试效率。
下面对本发明提供的应用在云端的自动驾驶的测试场景生成方法进行描述,下文描述的应用在云端的自动驾驶的测试场景生成方法与上文描述的应用在云端的自动驾驶的测试场景生成系统可相互对应参照。
图8为本发明实施例提供的应用在云端的自动驾驶的测试场景生成方法的流程示意图,如图8所示,一种应用在云端的自动驾驶的测试场景生成方法,包括如下步骤:
S801,从自动驾驶系统的需求文件中提取与场景构建相关的功能需求,并对所述功能需求进行分析,确定功能场景。
在本步骤中,功能场景是在对自动驾驶系统需求文件进行分析后设计的场景。功能场景的目的是从自动驾驶系统需求文件中提炼出抽象化的测试内容,以简单精炼的文字表述出来。
上述生成的功能场景具有各自编号(即ID),能够便于查询,可以为AA-XXXXX,其中,AA为功能需求的简写,例如CC(巡航定速:Cruise Control)、LC表示(横向控制:LateralControl),长度为2-5个大写字母;XXXXX为5位数字序号,从1-99999依次递增,根据生成先后顺序数值依次递增。示例性地,如图5所示,功能场景1的ID为CC-00001,即表示为CruiseControl(巡航定速)功能需求下所生成的第一个功能场景。
S802,在所述功能场景的基础上结合地图库定义参数空间,从而生成与所述功能场景对应的多个逻辑场景。
在本步骤中,逻辑场景中的参数为“半标准化”参数,即逻辑场景中的参数一部分应完全按照OpenDRIVE和OpenSCENARIO定义的内容进行设置;剩下一部分则是OpenDRIVE和OpenSCENARIO没有定义的内容,没有严格的格式要求,比如,自动驾驶系统在特定场景下应该执行的结果Result是不做严格要求的,逻辑场景生成模块需要对该部分参数进行自行定义。逻辑场景中的非标准化参数是不可缺少的部分,不能省略。
由于逻辑场景是在功能场景的基础上生成的,故功能场景与逻辑场景具有强关联关系,在逻辑场景ID的命名上与功能场景ID具有对应关系,从而便于追踪、聚类分析与泛化,逻辑场景ID可以为AA-XXXXX-XXXXX,其中,前面的AA-XXXXX为功能场景ID,最后的XXXXX为5位数字序号,从1-99999依次递增。示例性地,如图5所示,逻辑场景1的ID为CC-00001-00001,逻辑场景2的ID为CC-00001-00002,其表示逻辑场景1与逻辑场景2均在功能场景1的基础上生成,两个ID中的CC-00001即继承了功能场景1的ID(即CC-00001)。故,由于定义的参数空间不同,一个功能场景能够对应多个逻辑场景。
S803,在所述参数空间内确定参数值,并结合地图库生成与逻辑场景对应的多个具体场景。
在本步骤中,通过在逻辑场景中所定义的参数空间内选定场景参数具体的值,从而生成具体场景,并将具体场景的场景数据下发至后端测试系统。
具体场景是一种严格按照标准化格式定义而生成的场景文件,主要由两部分组成:一是基于OpenDRIVE的地图文件,另一个是基于OpenSCENARIO的动态场景文件,两者是一一对应关系。具体场景是可以直接加载到仿真器中(例如VTD、Carla、Esmini等仿真器)中执行的文件。
由于具体场景是在逻辑场景中定义的参数空间内选定具体值而生成,因此,具体场景与逻辑场景也具有强关联关系,在逻辑场景ID的命名上与具体场景ID具有对应关系,从而便于追踪、聚类分析与泛化。具体场景ID可以为AA-XXXXX-XXXXX-XXXXX,其中,前面的AA-XXXXX-XXXXX为逻辑场景ID,最后的XXXXX为5位数字序号,从1-99999依次递增。示例性地,如图5所示,具体场景1的ID为CC-00001-00001-00001,具体场景2的ID为CC-00001-00001-00002,具体场景3的ID为CC-00001-00001-00003,其表示具体场景1、具体场景2以及具体场景3均在逻辑场景1的基础上生成,三个具体场景ID中的CC-00001-00001即继承了逻辑场景1的ID(即CC-00001-00001)。故,由于定义的参数空间中涵盖了所有参数具体值,一个逻辑场景能够对应多个具体场景。
本发明实施例提供的自动驾驶的测试场景生成方法,通过直接从自动驾驶系统的需求文件中提取与场景构建相关的功能需求进而生成功能场景,又通过生成与所述功能场景对应的多个逻辑场景以及生成与逻辑场景对应的多个具体场景,实现了场景的分层泛化,能够快速构建大量测试场景,扩大了测试场景的覆盖范围,又不会出现场景冗余情况的出现。
进一步地,该方法还包括:
根据自动驾驶测试任务确定具体场景以及执行所述自动驾驶测试任务的多个终端,并将所述具体场景发送至多个终端以使得多个终端在具体场景下并行执行所述自动驾驶测试任务。
具体地,在制定自动驾驶测试任务之前,先确定被测对象的版本和测试起止时间,在此基础上选择测试任务并下发对应的具体场景相关的场景文件,该场景文件包括OpenDRIVE地图文件和OpenSCENARIO交通文件。在选择测试任务时,需要选择具体场景集和后端测试系统的测试执行子系统,例如HIL系统(硬件在环测试:Hardware In Loop、DIL系统(驾驶员仿真测试:Driver In Loop系统)等。
监控所述多个终端执行所述自动驾驶测试任务过程中的进展状态。
具体地,通过云端与各个终端之间的通信关系,监控各个终端上测试进展,并计算测试任务完成百分比,即已执行场景/任务规定的场景总数,对测试的结果进行显示。
本发明实施例提供的一种自动驾驶的测试场景生成方法,将所述具体场景发送至多个终端以使得多个终端在具体场景下并行执行所述自动驾驶测试任务,对测试任务进行了统筹安排,形成了分布式的并行测试机制,有效缩短测试周期,显著提升了测试效率。并使得虚拟仿真测试平台的前后端解耦方案,令测试依托于云端和终端各自充分发挥其长处。
进一步地,该方法还包括:
基于所有终端返回的测试数据进行具体场景置信度分析,得到测试分析结果。
其中,所述测试数据为所述终端在具体场景下执行所述自动驾驶测试任务时生成。例如,测试分析模块识别得到自动驾驶车辆加速度小于-0.2g的情况,并基于当前时间点,自动记录事件发生前后各30秒的具体场景,对前后具体场景打好标签,在后续回放过程中进行具体场景置信度分析(例如进行加权平均计算),根据测试分析结果判断在上述具体场景中自动驾驶车辆加速度是否小于-0.2g。
根据所有终端返回的测试数据构建待评估数据矩阵,利用所述待评估数据矩阵对所述自动驾驶测试任务进行评估,得到评估结果。
具体地,基于待评估数据矩阵来判断仿真测试过程是否出现碰撞、非预期变道、非预期转向、急加速、急减速等情况,进而判断本次测试任务是否通过。
本发明实施例提供的一种自动驾驶的测试场景生成方法,通过建立自动驾驶系统的评估矩阵,可以基于后端测试系统反馈的测试数据自动化分析测试结果,降低了对测试工程师的人为依赖。
下面对本发明提供的应用在终端的自动驾驶的测试场景生成方法进行描述,下文描述的应用在终端的自动驾驶的测试场景生成方法与上文描述的应用在终端的自动驾驶的测试场景生成系统可相互对应参照。
图9为本发明实施例提供的应用在终端的自动驾驶的测试场景生成方法的流程示意图,如图9所示,一种应用在终端的自动驾驶的测试场景生成方法,包括如下步骤:
S901,从云端获取具体场景对应的场景数据。
在本步骤中,云端测试系统会根据制定测试任务给对应的终端发送具体场景对应的场景数据以及指定需要执行的测试子任务。
S902,基于所述场景数据执行虚拟仿真测试任务,并将测试过程中生成的测试数据发送至云端。
在本步骤中,在具体场景下执行被分配的测试子任务之后,终端对应生成相关测试数据,将该测试数据发送至云端,用于进行测试评估以及测试进度监测。
本发明实施例提供的一种自动驾驶的测试场景生成方法,将所述具体场景发送至多个终端以使得多个终端在具体场景下并行执行所述自动驾驶测试任务,对测试任务进行了统筹安排,形成了分布式的并行测试机制,有效缩短测试周期,显著提升了测试效率。并使得虚拟仿真测试平台的前后端解耦方案,令测试依托于云端和终端各自充分发挥其长处。
图10为本发明实施例提供的一种电子设备的实体结构示意图,如图10所示,该电子设备可以包括:处理器(processor)1001、通信接口(Communications Interface)1002、存储器(memory)1003和通信总线1004,其中,处理器1001,通信接口1002,存储器1003通过通信总线1004完成相互间的通信。处理器1001可以调用存储器1003中的逻辑指令,以执行自动驾驶的测试场景生成方法,所述自动驾驶的测试场景生成方法应用在云端,包括:从自动驾驶系统的需求文件中提取与场景构建相关的功能需求,并对所述功能需求进行分析,确定功能场景;在所述功能场景的基础上结合地图库定义参数空间,从而生成与所述功能场景对应的多个逻辑场景;在所述参数空间内确定参数值,并结合地图库生成与逻辑场景对应的多个具体场景。
或执行自动驾驶的测试场景生成方法,该方法应用在多个终端,所述终端分布在不同实验室,该方法包括:从云端获取具体场景对应的场景数据;基于所述场景数据执行虚拟仿真测试任务,并将测试过程中生成的测试数据发送至云端。
此外,上述的存储器1003中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,计算机程序被处理器执行时,计算机能够执行上述各方法所提供的一种自动驾驶的测试场景生成方法,所述自动驾驶的测试场景生成方法应用在云端,包括:从自动驾驶系统的需求文件中提取与场景构建相关的功能需求,并对所述功能需求进行分析,确定功能场景;在所述功能场景的基础上结合地图库定义参数空间,从而生成与所述功能场景对应的多个逻辑场景;在所述参数空间内确定参数值,并结合地图库生成与逻辑场景对应的多个具体场景。
或执行自动驾驶的测试场景生成方法,该方法应用在多个终端,所述终端分布在不同实验室,该方法包括:从云端获取具体场景对应的场景数据;基于所述场景数据执行虚拟仿真测试任务,并将测试过程中生成的测试数据发送至云端。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述方法所提供的自动驾驶的测试场景生成方法,所述自动驾驶的测试场景生成方法应用在云端,包括:从自动驾驶系统的需求文件中提取与场景构建相关的功能需求,并对所述功能需求进行分析,确定功能场景;在所述功能场景的基础上结合地图库定义参数空间,从而生成与所述功能场景对应的多个逻辑场景;在所述参数空间内确定参数值,并结合地图库生成与逻辑场景对应的多个具体场景。
或执行自动驾驶的测试场景生成方法,该方法应用在多个终端,所述终端分布在不同实验室,该方法包括:从云端获取具体场景对应的场景数据;基于所述场景数据执行虚拟仿真测试任务,并将测试过程中生成的测试数据发送至云端。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (12)
1.一种自动驾驶的测试场景生成系统,其特征在于,该系统应用在云端,包括场景生成子系统,该场景生成子系统包括:
功能场景生成模块,用于从自动驾驶系统的需求文件中提取与场景构建相关的功能需求,并对所述功能需求进行分析,确定功能场景;
逻辑场景生成模块,用于在所述功能场景的基础上结合地图库定义参数空间,从而生成与所述功能场景对应的多个逻辑场景;
具体场景生成模块,用于在所述参数空间内确定参数值,并结合所述地图库生成与逻辑场景对应的多个具体场景。
2.根据权利要求1所述的自动驾驶的测试场景生成系统,其特征在于,所述逻辑场景生成模块包括:
运行设计域定义单元,用于定义自动驾驶的运行范围,至少包括道路、道路上的物理设置、临时设施、环境以及互联信息;
交通目标与交通事件定义单元,用于定义自动驾驶过程中交通参与目标以及该交通参与目标的交通事件;
期望决策定义单元,用于根据所述运行范围、交通参与目标以及所述交通事件定义所采取的预期决策。
3.根据权利要求1所述的自动驾驶的测试场景生成系统,其特征在于,该系统还包括测试管理子系统,所述测试管理子系统包括:
测试计划制定模块,用于根据自动驾驶测试任务确定具体场景以及执行所述自动驾驶测试任务的多个终端,并将所述具体场景发送至多个终端以使得多个终端在具体场景下并行执行所述自动驾驶测试任务;
测试状态监控模块,用于监控所述多个终端执行所述自动驾驶测试任务过程中的进展状态。
4.根据权利要求3所述的自动驾驶的测试场景生成系统,其特征在于,该系统还包括测试评估子系统,所述测试评估子系统包括:
测试分析模块,用于基于所有终端返回的测试数据进行具体场景置信度分析,得到测试分析结果;其中,所述测试数据为所述终端在具体场景下执行所述自动驾驶测试任务时生成;
测试评估模块,用于根据所有终端返回的测试数据构建待评估数据矩阵,利用所述待评估数据矩阵对所述自动驾驶测试任务进行评估,得到评估结果。
5.一种自动驾驶的测试场景生成系统,其特征在于,该系统应用在终端,该系统包括仿真器、测试执行子系统以及测试调度器;
所述仿真器从云端获取具体场景对应的场景数据,并将所述场景数据输入测试执行子系统;
所述测试执行子系统基于所述场景数据执行虚拟仿真测试任务,并将测试过程中生成的测试数据发送至所述测试调度器;
所述测试调度器将所述测试数据发送至云端。
6.一种自动驾驶的测试场景生成方法,其特征在于,该方法应用在云端,包括:
从自动驾驶系统的需求文件中提取与场景构建相关的功能需求,并对所述功能需求进行分析,确定功能场景;
在所述功能场景的基础上结合地图库定义参数空间,从而生成与所述功能场景对应的多个逻辑场景;
在所述参数空间内确定参数值,并结合地图库生成与逻辑场景对应的多个具体场景。
7.根据权利要求6所述的自动驾驶的测试场景生成方法,其特征在于,该方法还包括:
根据自动驾驶测试任务确定具体场景以及执行所述自动驾驶测试任务的多个终端,并将所述具体场景发送至多个终端以使得多个终端在具体场景下并行执行所述自动驾驶测试任务;
监控所述多个终端执行所述自动驾驶测试任务过程中的进展状态。
8.根据权利要求7所述的自动驾驶的测试场景生成方法,其特征在于,该方法还包括:
基于所有终端返回的测试数据进行具体场景置信度分析,得到测试分析结果;其中,所述测试数据为所述终端在具体场景下执行所述自动驾驶测试任务时生成;
根据所有终端返回的测试数据构建待评估数据矩阵,利用所述待评估数据矩阵对所述自动驾驶测试任务进行评估,得到评估结果。
9.一种自动驾驶的测试场景生成方法,其特征在于,该方法应用在终端,该方法包括:
从云端获取具体场景对应的场景数据;
基于所述场景数据执行虚拟仿真测试任务,并将测试过程中生成的测试数据发送至云端。
10.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求6至8或9任一项所述自动驾驶的测试场景生成方法。
11.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求6至8或9任一项所述自动驾驶的测试场景生成方法。
12.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求6至8或9任一项所述自动驾驶的测试场景生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210725702.0A CN115017050A (zh) | 2022-06-23 | 2022-06-23 | 自动驾驶的测试场景生成系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210725702.0A CN115017050A (zh) | 2022-06-23 | 2022-06-23 | 自动驾驶的测试场景生成系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115017050A true CN115017050A (zh) | 2022-09-06 |
Family
ID=83076433
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210725702.0A Pending CN115017050A (zh) | 2022-06-23 | 2022-06-23 | 自动驾驶的测试场景生成系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115017050A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115567340A (zh) * | 2022-09-22 | 2023-01-03 | 重庆长安汽车股份有限公司 | Can总线的测试工程生成方法、装置、设备及介质 |
CN116500564A (zh) * | 2023-05-31 | 2023-07-28 | 深圳承泰科技有限公司 | 一种用于车载毫米波雷达算法验证系统和方法 |
CN117970906A (zh) * | 2024-03-28 | 2024-05-03 | 深圳市卓驭科技有限公司 | 自动驾驶系统测试方法、系统、计算机设备、存储介质及程序产品 |
-
2022
- 2022-06-23 CN CN202210725702.0A patent/CN115017050A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115567340A (zh) * | 2022-09-22 | 2023-01-03 | 重庆长安汽车股份有限公司 | Can总线的测试工程生成方法、装置、设备及介质 |
CN115567340B (zh) * | 2022-09-22 | 2024-04-26 | 重庆长安汽车股份有限公司 | Can总线的测试工程生成方法、装置、设备及介质 |
CN116500564A (zh) * | 2023-05-31 | 2023-07-28 | 深圳承泰科技有限公司 | 一种用于车载毫米波雷达算法验证系统和方法 |
CN117970906A (zh) * | 2024-03-28 | 2024-05-03 | 深圳市卓驭科技有限公司 | 自动驾驶系统测试方法、系统、计算机设备、存储介质及程序产品 |
CN117970906B (zh) * | 2024-03-28 | 2024-07-12 | 深圳市卓驭科技有限公司 | 自动驾驶系统测试方法、系统、计算机设备、存储介质及程序产品 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115017050A (zh) | 自动驾驶的测试场景生成系统及方法 | |
CN111338973B (zh) | 基于场景的自动驾驶仿真测试评价服务云平台及应用方法 | |
CN112199385B (zh) | 用于人工智能ai的处理方法、装置、电子设备和存储介质 | |
WO2021232229A1 (zh) | 虚拟场景生成方法、装置、计算机设备和存储介质 | |
CN110795818A (zh) | 一种确定虚拟测试场景方法、装置、电子设备和存储介质 | |
CN109060370B (zh) | 对自动驾驶车辆进行车辆测试的方法及装置 | |
CN112202899B (zh) | 用于工作流的处理方法、装置、智能工作站和电子设备 | |
Bach et al. | Test scenario selection for system-level verification and validation of geolocation-dependent automotive control systems | |
CN112069204A (zh) | 用于算子服务的处理方法、装置、智能工作站和电子设备 | |
CN112148494A (zh) | 用于算子服务的处理方法、装置、智能工作站和电子设备 | |
CN111090401B (zh) | 存储设备性能预测方法及装置 | |
CN115185205A (zh) | 智能驾驶仿真方法、系统、终端设备和可读存储介质 | |
CN112069205A (zh) | 用于业务应用的处理方法、装置、智能工作站和电子设备 | |
CN114495057A (zh) | 数据采集方法、电子设备和存储介质 | |
WO2022174838A1 (zh) | 一种驾驶场景识别方法及其系统 | |
EP4152715A1 (en) | Method and apparatus for determining resource configuration of cloud service system | |
LU505740B1 (en) | Data monitoring method and system | |
CN115937352A (zh) | 矿山场景仿真方法、系统、电子设备及存储介质 | |
CN111950753A (zh) | 一种景区客流预测的方法及装置 | |
CN115543809A (zh) | 自动驾驶功能的测试场景库构建方法及装置 | |
CN114860453A (zh) | 场景引擎的任务执行方法、装置、电子设备及存储介质 | |
KR20230144646A (ko) | 미지의-불안전한 시나리오들을 생성하는 것, 자동화된 차량들을 개선하는 것, 컴퓨터 시스템 | |
CN112434650A (zh) | 一种多光谱图像建筑物变化检测方法及系统 | |
CN111914138A (zh) | 基于车联网大数据的工况分析方法、装置和系统 | |
CN114064449A (zh) | 一种仿真测试报告生成方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |