发明内容
本发明提供了一种基于场景的自动驾驶仿真测试方法及装置,以通过仿真来测试自动驾驶车辆在预设测试事件发生时的性能,减少花费,避免造成实际损失。具体的技术方案如下。
第一方面,本发明实施例提供了一种基于场景的自动驾驶仿真测试方法,所述方法包括:
基于目标场景模板及其对应的修改指令,确定交通测试场景,其中,所述交通测试场景包括:在测试流程启动之前以随机行驶状态行驶的场景对象、被测车辆以及静止状态的场景对象,所述修改指令为修改目标场景模板所对应场景元素的指令;
在检测到所述交通测试场景的场景对象中存在与所述被测车辆之间的位置关系,达到预设测试事件对应的测试触发条件的场景对象的情况下,触发所述预设测试事件对应的测试流程;其中,若所述测试触发条件为:处于所述被测车辆所在车道的左相邻车道的且行驶于被测车辆前方的第一场景对象,与被测车辆之间的位置关系表征被测车辆与第一场景对象的距离小于第一阈值;且于所述被测车辆所在车道的右相邻车道的且行驶于被测车辆前方的第二场景对象,与被测车辆之间的位置关系表征被测车辆与第二场景对象的距离小于第二阈值,所述预设测试事件对应的测试流程,包括如下情况:
第一种情况:
第一场景对象以第一速度,且所述第二场景对象以第二速度,并道入所述被测车辆所在行驶车道;
目标场景对象在确定另一目标场景对象并道入所述被测车辆所在行驶车道的情况下,返回其原行驶车道,其中,所述目标场景对象为第一场景对象时,另一目标场景对象为所述第二场景对象;所述目标场景对象为第二场景对象时,另一目标场景对象为所述第一场景对象;
所述被测车辆在确定所述第一场景对象和所述第二场景对象的并道行为后,基于自车与第一场景对象的距离、自车与第二场景对象的距离、所述被测车辆的当前速度以及所述被测算法,确定减速目标值;基于所述被测车辆的当前速度以及所述减速目标值,减速行驶;
并在确定所述目标场景对象并道成功后,所述被测车辆基于目标场景对象及另一目标场景对象的速度、减速后的当前速度以及所述被测算法,跟随所述目标场景对象行驶,或者,变道至所述目标场景对象的原行驶车道行驶,或者,变道至另一目标场景对象的行驶车道行驶,或者,超车行驶;
第二种情况:
第一场景对象以第一速度,且所述第二场景对象以第二速度,并道入所述被测车辆所在行驶车道;
所述第一场景对象与所述第二场景对象于所述被测车辆所在行驶车道发生碰撞,并减速至停车;
所述被测车辆在确定所述第一场景对象和所述第二场景对象的并道行为后,基于自车与第一场景对象的距离、自车与第二场景对象的距离、所述被测车辆的当前速度以及所述被测算法,确定减速目标值;基于所述被测车辆的当前速度以及所述减速目标值,减速行驶;
并在确定所述第一场景对象与所述第二场景对象发生碰撞,并减速至停车之后,所述被测车辆基于所述减速后的当前速度、自车与第一场景对象和所述第二场景对象的停车位置之间的距离以及所述被测算法,减速行驶至停车;或者变道行驶;
监控所述预设测试事件对应的测试流程中所述被测车辆的行为状态,并获得所述被测车辆的所述行为状态对应的行为状态参数,以通过所述行为状态参数确定所述被测车辆的被测算法的测试结果。
可选的,在所述通过所述行为状态参数确定所述被测车辆的被测算法的测试结果的步骤之后,上述基于场景的自动驾驶仿真测试方法还包括:
录制所述测试流程生成无人驾驶仿真测试视频;
提取所述无人驾驶仿真测试视频中的视频信息,其中,所述视频信息为表征所述无人驾驶仿真测试视频所包含的关键内容的信息,至少包括事件信息;
将所提取的视频信息的格式修改为二进制格式生成二进制文件,保存所述二进制文件与所述无人驾驶仿真测试视频对应的场景名称之间的对应关系以及所述二进制文件与所述无人驾驶仿真测试视频所使用的场景文件之间的对应关系,其中,所述场景文件中记录有所述无人驾驶仿真测试视频所使用的地图文件名称。
可选的,在所述保存所述二进制文件与所述无人驾驶仿真测试视频对应的场景名称之间的对应关系以及所述二进制文件与所述无人驾驶仿真测试视频所使用的场景文件之间的对应关系的步骤之后,上述基于场景的自动驾驶仿真测试方法还包括:
接收无人驾驶仿真测试视频回看指令,其中,所述无人驾驶仿真测试视频回看指令中包括待回看场景名称和待回看事件名称;
根据场景名称与二进制文件之间的对应关系,查找到所述待回看场景名称对应的目标二进制文件;
根据二进制文件与场景文件之间的对应关系,查找到所述目标二进制文件对应的目标场景文件,查找到所述目标场景文件中记录的地图文件名称对应的目标地图文件;
根据所述待回看事件名称和所述目标二进制文件包含的事件信息确定所述待回看事件的发生时间点;
根据所述目标二进制文件、所述目标地图文件和所述目标场景文件回放所述发生时间点前后预设时间段内的无人驾驶仿真测试视频。
可选的,所述视频信息还包括车辆信息、环境信息、障碍物信息、行人信息和/或道路信息。
可选的,所述根据所述待回看事件名称和所述目标二进制文件包含的事件信息确定所述待回看事件的发生时间点的步骤,包括:
根据所述目标二进制文件包含的事件名称和发生时间点之间的对应关系,确定所述待回看事件的发生时间点。
可选的,所述根据所述目标二进制文件、所述目标地图文件和所述目标场景文件回放所述发生时间点前后预设时间段内的无人驾驶仿真测试视频的步骤,包括:
分别从所述目标二进制文件中、所述目标地图文件和所述目标场景文件中查找到所述发生时间点前后预设时间段内的二进制数据、地图数据和场景数据;
根据所述二进制数据、所述地图数据和所述场景数据生成无人驾驶仿真测试视频并回放所生成的无人驾驶仿真测试视频。
可选的,所述事件信息包括碰撞事件和碰撞事件发生时间点之间的对应关系、视频环境变化事件和视频环境变化事件发生时间点之间的对应关系、视频天气变化事件和视频天气变化事件发生时间点之间的对应关系,和/或,视频昼夜变化事件和视频昼夜变化事件发生时间点之间的对应关系。
可选的,所述监控所述预设测试事件对应的测试流程中所述被测车辆的行为状态,并获得所述被测车辆的所述行为状态对应的行为状态参数,包括:
监控所述预设测试事件对应的测试流程中所述被测车辆的行为状态,并获得所述被测车辆的该行为状态对应的确定减速消耗时间、减速消耗时间、到达指定速度所需时间、变道行驶所用时间、变道行驶对应的变道速度和/或变道行驶对应的变道角度。
可选的,若所述测试触发条件为:被测车辆的行驶前方出现静止的场景对象,且与所述静止的场景对象之间的距离小于第三阈值,所述预设测试事件对应的测试流程,包括:
所述被测车辆基于所述静止的场景对象所在位置以及所述被测算法,变道行驶或转弯行驶,以远离所述静止的场景对象所在位置。
第二方面,本发明实施例提供了一种基于场景的自动驾驶仿真测试装置,所述装置包括:
确定模块,被配置为基于目标场景模板及其对应的修改指令,确定交通测试场景,其中,所述交通测试场景包括:在测试流程启动之前以随机行驶状态行驶的场景对象、被测车辆以及静止状态的场景对象,所述修改指令为修改目标场景模板所对应场景元素的指令;
触发模块,被配置为在检测到所述交通测试场景的场景对象中存在与所述被测车辆之间的位置关系,达到预设测试事件对应的测试触发条件的场景对象的情况下,触发所述预设测试事件对应的测试流程;其中,若所述测试触发条件为:处于所述被测车辆所在车道的左相邻车道的且行驶于被测车辆前方的第一场景对象,与被测车辆之间的位置关系表征被测车辆与第一场景对象的距离小于第一阈值;且于所述被测车辆所在车道的右相邻车道的且行驶于被测车辆前方的第二场景对象,与被测车辆之间的位置关系表征被测车辆与第二场景对象的距离小于第二阈值,所述预设测试事件对应的测试流程,包括如下情况:
第一种情况:
第一场景对象以第一速度,且所述第二场景对象以第二速度,并道入所述被测车辆所在行驶车道;
目标场景对象在确定另一目标场景对象并道入所述被测车辆所在行驶车道的情况下,返回其原行驶车道,其中,所述目标场景对象为第一场景对象时,另一目标场景对象为所述第二场景对象;所述目标场景对象为第二场景对象时,另一目标场景对象为所述第一场景对象;
所述被测车辆在确定所述第一场景对象和所述第二场景对象的并道行为后,基于自车与第一场景对象的距离、自车与第二场景对象的距离、所述被测车辆的当前速度以及所述被测算法,确定减速目标值;基于所述被测车辆的当前速度以及所述减速目标值,减速行驶;
并在确定所述目标场景对象并道成功后,所述被测车辆基于目标场景对象及另一目标场景对象的速度、减速后的当前速度以及所述被测算法,跟随所述目标场景对象行驶,或者,变道至所述目标场景对象的原行驶车道行驶,或者,变道至另一目标场景对象的行驶车道行驶,或者,超车行驶;
第二种情况:
第一场景对象以第一速度,且所述第二场景对象以第二速度,并道入所述被测车辆所在行驶车道;
所述第一场景对象与所述第二场景对象于所述被测车辆所在行驶车道发生碰撞,并减速至停车;
所述被测车辆在确定所述第一场景对象和所述第二场景对象的并道行为后,基于自车与第一场景对象的距离、自车与第二场景对象的距离、所述被测车辆的当前速度以及所述被测算法,确定减速目标值;基于所述被测车辆的当前速度以及所述减速目标值,减速行驶;
并在确定所述第一场景对象与所述第二场景对象发生碰撞,并减速至停车之后,所述被测车辆基于所述减速后的当前速度、自车与第一场景对象和所述第二场景对象的停车位置之间的距离以及所述被测算法,减速行驶至停车;或者变道行驶;
监控模块,被配置为监控所述预设测试事件对应的测试流程中所述被测车辆的行为状态,并获得所述被测车辆的所述行为状态对应的行为状态参数,以通过所述行为状态参数确定所述被测车辆的被测算法的测试结果。
可选的,上述基于场景的自动驾驶仿真测试装置还包括:
录制模块,用于在所述通过所述行为状态参数确定所述被测车辆的被测算法的测试结果之后,录制所述测试流程生成无人驾驶仿真测试视频;
提取模块,用于提取所述无人驾驶仿真测试视频中的视频信息,其中,所述视频信息为表征所述无人驾驶仿真测试视频所包含的关键内容的信息,至少包括事件信息;
保存模块,用于将所提取的视频信息的格式修改为二进制格式生成二进制文件,保存所述二进制文件与所述无人驾驶仿真测试视频对应的场景名称之间的对应关系以及所述二进制文件与所述无人驾驶仿真测试视频所使用的场景文件之间的对应关系,其中,所述场景文件中记录有所述无人驾驶仿真测试视频所使用的地图文件名称。
可选的,上述基于场景的自动驾驶仿真测试装置还包括:
接收模块,用于在所述保存所述二进制文件与所述无人驾驶仿真测试视频对应的场景名称之间的对应关系以及所述二进制文件与所述无人驾驶仿真测试视频所使用的场景文件之间的对应关系之后,接收无人驾驶仿真测试视频回看指令,其中,所述无人驾驶仿真测试视频回看指令中包括待回看场景名称和待回看事件名称;
第一查找模块,用于根据场景名称与二进制文件之间的对应关系,查找到所述待回看场景名称对应的目标二进制文件;
第二查找模块,用于根据二进制文件与场景文件之间的对应关系,查找到所述目标二进制文件对应的目标场景文件,查找到所述目标场景文件中记录的地图文件名称对应的目标地图文件;
发生时间点确定模块,用于根据所述待回看事件名称和所述目标二进制文件包含的事件信息确定所述待回看事件的发生时间点;
回放模块,用于根据所述目标二进制文件、所述目标地图文件和所述目标场景文件回放所述发生时间点前后预设时间段内的无人驾驶仿真测试视频。
可选的,所述视频信息还包括车辆信息、环境信息、障碍物信息、行人信息和/或道路信息。
可选的,所述发生时间点确定模块,具体用于:
根据所述目标二进制文件包含的事件名称和发生时间点之间的对应关系,确定所述待回看事件的发生时间点。
在本发明的另一实施例中,所述回放模块,包括:
查找单元,用于分别从所述目标二进制文件中、所述目标地图文件和所述目标场景文件中查找到所述发生时间点前后预设时间段内的二进制数据、地图数据和场景数据;
回放单元,用于根据所述二进制数据、所述地图数据和所述场景数据生成无人驾驶仿真测试视频并回放所生成的无人驾驶仿真测试视频。
可选的,所述事件信息包括碰撞事件和碰撞事件发生时间点之间的对应关系、视频环境变化事件和视频环境变化事件发生时间点之间的对应关系、视频天气变化事件和视频天气变化事件发生时间点之间的对应关系,和/或,视频昼夜变化事件和视频昼夜变化事件发生时间点之间的对应关系。
可选的,所述监控模,被具体配置为监控所述预设测试事件对应的测试流程中所述被测车辆的行为状态,并获得所述被测车辆的该行为状态对应的确定减速消耗时间、减速消耗时间、到达指定速度所需时间、变道行驶所用时间、变道行驶对应的变道速度和/或变道行驶对应的变道角度。
可选的,若所述测试触发条件为:被测车辆的行驶前方出现静止的场景对象,且与所述静止的场景对象之间的距离小于第三阈值,所述预设测试事件对应的测试流程,包括:
所述被测车辆基于所述静止的场景对象所在位置以及所述被测算法,变道行驶或转弯行驶,以远离所述静止的场景对象所在位置。
由上述内容可知,本发明实施例提供的一种基于场景的自动驾驶仿真测试方法及装置,基于目标场景模板及其对应的修改指令,确定交通测试场景,其中,交通测试场景包括:在测试流程启动之前以随机行驶状态行驶的场景对象、被测车辆以及静止状态的场景对象,修改指令为修改目标场景模板所对应场景元素的指令;在检测到交通测试场景的场景对象中存在与被测车辆之间的位置关系,达到预设测试事件对应的测试触发条件的场景对象的情况下,触发预设测试事件对应的测试流程;其中,若测试触发条件为:处于被测车辆所在车道的左相邻车道的且行驶于被测车辆前方的第一场景对象,与被测车辆之间的位置关系表征被测车辆与第一场景对象的距离小于第一阈值;且于被测车辆所在车道的右相邻车道的且行驶于被测车辆前方的第二场景对象,与被测车辆之间的位置关系表征被测车辆与第二场景对象的距离小于第二阈值,预设测试事件对应的测试流程,包括如下情况:第一种情况:第一场景对象以第一速度,且第二场景对象以第二速度,并道入被测车辆所在行驶车道;目标场景对象在确定另一目标场景对象并道入被测车辆所在行驶车道的情况下,返回其原行驶车道,其中,目标场景对象为第一场景对象时,另一目标场景对象为第二场景对象;目标场景对象为第二场景对象时,另一目标场景对象为第一场景对象;被测车辆在确定第一场景对象和第二场景对象的并道行为后,基于自车与第一场景对象的距离、自车与第二场景对象的距离、被测车辆的当前速度以及被测算法,确定减速目标值;基于被测车辆的当前速度以及减速目标值,减速行驶;并在确定目标场景对象并道成功后,被测车辆基于目标场景对象及另一目标场景对象的速度、减速后的当前速度以及所述被测算法,跟随目标场景对象行驶,或者,变道至目标场景对象的原行驶车道行驶,或者,变道至另一目标场景对象的行驶车道行驶,或者,超车行驶;第二种情况:第一场景对象以第一速度,且第二场景对象以第二速度,并道入被测车辆所在行驶车道;第一场景对象与第二场景对象于被测车辆所在行驶车道发生碰撞,并减速至停车;被测车辆在确定第一场景对象和第二场景对象的并道行为后,基于自车与第一场景对象的距离、自车与第二场景对象的距离、被测车辆的当前速度以及被测算法,确定减速目标值;基于被测车辆的当前速度以及减速目标值,减速行驶;并在确定第一场景对象与第二场景对象发生碰撞,并减速至停车之后,被测车辆基于所述减速后的当前速度、自车与第一场景对象和第二场景对象的停车位置之间的距离以及被测算法,减速行驶至停车;或者变道行驶;监控预设测试事件对应的测试流程中被测车辆的行为状态,并获得被测车辆的所述行为状态对应的行为状态参数,以通过行为状态参数确定被测车辆的被测算法的测试结果。
应用本发明实施例,基于目标场景模板及修改指令,生成交通测试场景,以在一定程度上实现测试场景的场景元素的泛化,以得到数量足够多的交通测试场景,并且,设置预设测试事件对应的测试触发条件,在场景对象和被测车辆的正常行驶过程中,在预设测试事件被触发时,即触发对被测车辆的预设测试事件对应的测试流程,监控预设测试事件对应的测试流程中被测车辆的行为状态,获得被测车辆的行为状态对应的行为状态参数,以通过行为状态参数确定被测车辆的被测算法的测试结果。由此,可以通过仿真的方式来测试自动驾驶车辆在预设测试事件发生时例如背景技术所提到的情景下的性能,减小费用,避免造成实际损失,并对实际驾驶具有指导意义。
并且,由于随机交通流中各交通要素是动态变化的,这样可以触发各种不同的测试场景对被测车辆进行测试,从而可以随机生成比人工设置或随机设置的测试场景更加全面的测试场景,并且在随机交通流场景中测试场景可以随机生成,无需针对不同的测试事件配置不同的测试场景,实现对自动驾驶场景的自动化以及全面的构建,对自动驾驶算法更全面的测试的同时,提高自动驾驶算法的测试效率。当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
本发明实施例的创新点包括:
1、基于目标场景模板及修改指令,生成交通测试场景,以在一定程度上实现测试场景的场景元素的泛化,以得到数量足够多的交通测试场景,并且,设置预设测试事件对应的测试触发条件,在场景对象和被测车辆的正常行驶过程中,在预设测试事件被触发时,即触发对被测车辆的预设测试事件对应的测试流程,监控预设测试事件对应的测试流程中被测车辆的行为状态,获得被测车辆的行为状态对应的行为状态参数,以通过行为状态参数确定被测车辆的被测算法的测试结果。由此,可以通过仿真的方式来测试自动驾驶车辆在预设测试事件发生时例如背景技术所提到的情景下的性能,减小费用,避免造成实际损失,并对实际驾驶具有指导意义。
2、由于随机交通流中各交通要素是动态变化的,这样可以触发各种不同的测试场景对被测车辆进行测试,从而可以随机生成比人工设置或随机设置的测试场景更加全面的测试场景,并且在随机交通流场景中测试场景可以随机生成,无需针对不同的测试事件配置不同的测试场景,实现对自动驾驶场景的自动化以及全面的构建,对自动驾驶算法更全面的测试的同时,提高自动驾驶算法的测试效率。
3、通过提取无人驾驶仿真测试视频中的视频信息,并将所提取的视频信息的格式修改为二进制格式生成二进制文件,保存二进制文件与无人驾驶仿真测试视频对应的场景名称之间的对应关系以及二进制文件与无人驾驶仿真测试视频所使用的场景文件之间的对应关系的方式,仅保存了包含视频主要内容的二进制文件,而不是整个视频,大大减少了存储空间的占用,使得即使有大量的无人驾驶仿真测试视频需要存储时,可以做到高效轻便存储。
4、根据场景名称与二进制文件之间的对应关系,查找到待回看场景名称对应的目标二进制文件,根据二进制文件与场景文件之间的对应关系,查找到目标二进制文件对应的目标场景文件,查找到目标场景文件中记录的地图文件名称对应的目标地图文件,根据待回看事件名称和目标二进制文件包含的事件信息确定待回看事件的发生时间点,根据目标二进制文件、目标地图文件和目标场景文件回放发生时间点前后预设时间段内的无人驾驶仿真测试视频。通过待回看场景名称可以快速定位对应的目标二进制文件,通过待回看事件名称与目标二进制文件包含的事件信息可以快速准确定位到仿真过程中事件发生变化的时间点,也就是发生时间点,然后根据目标二进制文件、目标地图文件和目标场景文件回放发生时间点前后预设时间段内的无人驾驶仿真测试视频,无需回放整个无人驾驶仿真测试视频,达到快速准确的定位视频进行回放的目的。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明实施例及附图中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含的一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
本发明提供了一种基于场景的自动驾驶仿真测试方法及装置,以通过仿真来测试自动驾驶车辆在预设测试事件发生时的性能,减少花费,避免造成实际损失。下面对本发明实施例进行详细说明。
图1为本发明实施例提供的基于场景的自动驾驶仿真测试方法的一种流程示意图。该方法可以包括如下步骤:
S101:基于目标场景模板及其对应的修改指令,确定交通测试场景。
其中,交通测试场景包括:在测试流程启动之前以随机行驶状态行驶的场景对象、被测车辆以及静止状态的场景对象,修改指令为修改目标场景模板所对应场景元素的指令。
本发明实施例所提供的场景库的自动驾驶仿真测试方法,可以应用于任一具有计算能力的电子设备,该电子设备可以为终端或者服务器。在一种实现中,实现该场景库的自动驾驶仿真测试方法的功能软件可以以单独的客户端软件的形式存在,也可以以目前相关的客户端软件的插件的形式存在,这都是可以的。
在一种实现方式中,电子设备本地或者所连接的存储设备,预存有多种用于构建自动驾驶测试场景的预设场景模板,每一预设场景模板可以是基于采集车辆在行驶过程中实际采集的道路场景信息所设置的,也可以是基于预设道路场景信息随机设置的,这都是可以的。该预设场景模板中可以包括至少一种场景元素,预设场景模板的场景元素可以包括:被测车辆模型及其运行轨迹元素、道路模型元素、障碍物模型以及测试触发事件元素中的至少一个。其中,障碍物模型包括但不限于行人模型及其运行轨迹,和静止障碍物模型等,例如:树木以及建筑物等,该静止障碍物模型即为所生成的交通测试场景中的静止状态的场景对象。预设场景模板为:预先设置的用于构建自动驾驶测试场景的场景模板。在一种情况中,预设场景模板可以以OpenScenario文件的形式存储。
在一种实现方式中,测试人员存在对被测算法的性能进行测试的需求的情况下,可以触发该场景库的自动驾驶仿真测试流程,相应的,电子设备检测到该触发操作的情况下,可以通过所连接的显示器件显示多个预设场景模板对应的显示信息,后续的,测试人员可以基于多个预设场景模板对应的显示信息,选中其所需要的目标场景模板,触发选中操作,其中,每一预设测试场景模型对应的显示信息包括但不限于场景模板对应的缩略图、名称、编号以及简介信息;电子设备检测到选中操作后,基于该选中操作,获得从预设场景模板中,确定所选中的预设场景模板,作为目标场景模板。
并获得针对该目标场景模块触发修改指令,基于该修改指令中携带的待修改场景元素及其对应的修改信息,对目标场景模板对应的场景元素进行修改,确定得到交通测试场景。
该被测车辆为:设置有被测试的自动驾驶测试算法即被测算法的虚拟车辆。该以随机行驶状态行驶的场景对象包括但不限于:运动的其他虚拟车辆以及行人等。静止状态的场景对象包括但不限于:停止的虚拟车辆以及静止的障碍物和行人等。交通测试场景中还包括行车道、交通路口以及交通指示信息等真实交通场景中的各场景元素。交通指示信息包括但不限于:车道线、斑马线、停车位、交通指示牌、交通指示箭头等。
该以随机行驶状态行驶可以指:不同的行驶场景对象之间的驾驶特征存在不同,例如:场景对象1以速度1行驶,并在所处行驶环境中满足预设允许超车条件的情况下,必超车;场景对象2以速度2行驶,并在所处行驶环境中满足预设允许超车条件的情况下,不超车等。
S102:在检测到交通测试场景的场景对象中存在与被测车辆之间的位置关系,达到预设测试事件对应的测试触发条件的场景对象的情况下,触发预设测试事件对应的测试流程。
其中,若测试触发条件为:处于被测车辆所在车道的左相邻车道的且行驶于被测车辆前方的第一场景对象,与被测车辆之间的位置关系表征被测车辆与第一场景对象的距离小于第一阈值;且于被测车辆所在车道的右相邻车道的且行驶于被测车辆前方的第二场景对象,与被测车辆之间的位置关系表征被测车辆与第二场景对象的距离小于第二阈值,预设测试事件对应的测试流程,包括如下情况:
如图2A所示,第一种情况:
S201A:第一场景对象以第一速度,且第二场景对象以第二速度,并道入被测车辆所在行驶车道。
S202A:目标场景对象在确定另一目标场景对象并道入被测车辆所在行驶车道的情况下,返回其原行驶车道。
其中,目标场景对象为第一场景对象时,另一目标场景对象为第二场景对象;目标场景对象为第二场景对象时,另一目标场景对象为第一场景对象。
S203A:被测车辆在确定第一场景对象和第二场景对象的并道行为后,基于自车与第一场景对象的距离、自车与第二场景对象的距离、被测车辆的当前速度以及被测算法,确定减速目标值;基于被测车辆的当前速度以及减速目标值,减速行驶。
S204A:并在确定目标场景对象并道成功后,被测车辆基于目标场景对象及另一目标场景对象的速度、减速后的当前速度以及被测算法,跟随目标场景对象行驶,或者,变道至目标场景对象的原行驶车道行驶,或者,变道至另一目标场景对象的行驶车道行驶,或者,超车行驶。
如图2B所示,第二种情况:
S201B:第一场景对象以第一速度,且第二场景对象以第二速度,并道入被测车辆所在行驶车道。
S202B:第一场景对象与第二场景对象于被测车辆所在行驶车道发生碰撞,并减速至停车;
S203B:被测车辆在确定第一场景对象和第二场景对象的并道行为后,基于自车与第一场景对象的距离、自车与第二场景对象的距离、被测车辆的当前速度以及被测算法,确定减速目标值;基于被测车辆的当前速度以及减速目标值,减速行驶。
S204B:并在确定第一场景对象与第二场景对象发生碰撞,并减速至停车之后,被测车辆基于减速后的当前速度、自车与第一场景对象和第二场景对象的停车位置之间的距离以及被测算法,减速行驶至停车;或者变道行驶。
电子设备确定出交通测试场景之后,可以运行每一交通测试场景,电子设备可以实时监控运行交通测试场景中各行驶的场景对象的行驶过程以及被测车辆的行驶过程。获得各场景对象以及被测车辆在交通测试场景中的行驶参数以及之间的位置关系等信息。在检测到交通测试场景的场景对象中存在与被测车辆之间的位置关系,达到预设测试事件对应的测试触发条件的场景对象的情况下,则可以确定预设测试事件被触发,相应的,将交通测试场景的当前场景作为对被测车辆的测试场景,触发预设测试事件对应的测试流程。
可以理解的是,交通测试场景可以有一种或多种预设测试事件,且不同的预设测试事件对应有不同的测试触发条件。在一种情况中,一种预设测试事件可以对应有至少一种测试触发条件。上述预设测试事件包括但不限于:被测车辆超车、转弯、变道以及碰撞行驶等事件。
该测试触发条件可以包括但不限于:被测车辆与场景对象之间的位置关系表征两者之间的距离、相对位置、之间的位置函数关系达到预设条件、被测车辆的当前行驶速度达到预设速度以及被测车辆与场景对象发生碰撞的时间低于预设时间等。举例而言:被测车辆与场景对象之间的位置关系表征两者处于同一车道,且场景对象位于被测车辆行驶前方,两者之间的位置距离达到第一限定距离。相应的,可以触发被测车辆变道行驶、超车行驶或者碰撞等测试事件。又例如:被测车辆与场景对象之间的位置关系表征两者分别在相邻车道行驶,且场景对象位于被测车辆行驶前方,两者之间的位置距离达到第二限定距离,可以触发场景对象并道入被测车辆所在车道,若场景对象速度低于被测车辆的速度,被测车辆基于场景对象的动作,执行相应的减速再跟车行驶或者变道行驶或者超车行驶等测试事件等。
本发明实施例并不对预设测试事件的具体测试方式和流程以及预设触发条件的具体类型进行限定。
在一种实现方式中,若测试触发条件为:处于被测车辆所在车道的左相邻车道的且行驶于被测车辆前方的第一场景对象,与被测车辆之间的位置关系表征被测车辆与第一场景对象的距离小于第一阈值;且于被测车辆所在车道的右相邻车道的且行驶于被测车辆前方的第二场景对象,与被测车辆之间的位置关系表征被测车辆与第二场景对象的距离小于第二阈值,所触发的该测试触发条件对应的预设测试事件所对应测试流程,包括如图2A所示的流程:
第一场景对象以第一速度,且第二场景对象以第二速度,并道入被测车辆所在行驶车道;相应的,被测车辆通过其所设置的虚拟传感器采集到的传感器数据,确定出第一场景对象和第二场景对象并道入其所在车道,相应的,被测车辆基于其被测算法确定需要减速行驶,进而被测车辆基于其所设置的传感器数据采集得到自车与第一场景对象的距离及第一场景对象的第一速度,以及自车与第二场景对象的距离及第二场景对象的第一速度;基于自车与第一场景对象的距离和自车与第二场景对象的距离,确定出距离被测车辆所在位置近的对象,并基于距离被测车辆所在位置近的对象的速度、被测车辆的当前速度以及被测算法,确定出减速目标值,该减速目标值可以使得被测车辆避免与距离其近的对象相碰撞。被测车辆基于当前速度以及减速目标值,减速行驶。
后续的,在第一场景对象与第二场景对象均可以通过其所设置的虚拟传感器采集得到其所处环境,可以出现下列三种情况,第一种情况,第一场景对象在确定第二场景对象并道入被测车辆所在行驶车道的情况下,返回第一场景对象的原行驶车道,相应的,第二场景对象并道成功;第二种情况,第二场景对象在确定第一场景对象并道入被测车辆所在行驶车道的情况下,返回第二场景对象的原行驶车道,相应的,第一场景对象并道成功。第三种情况,第一场景对象与第二场景对象均不避让,于被测车辆所在行驶车道发生碰撞,并减速至停车。
针对上述第一种情况和第二种情况,被测车辆可以基于目标场景对象及另一目标场景对象的速度即第一速度和第二速度、减速后的当前速度以及被测算法,确定具体的应对行驶方式,包括:跟随目标场景对象行驶;或者,被测车辆变道至目标场景对象的原行驶车道行驶,或者,变道至另一目标场景对象的行驶车道行驶,或者,超车行驶。
在一种实现中,被测车辆确定跟随目标场景对象行驶的情况下,上述减速目标值可以与目标场景对象的速度相同。
针对上述第三种情况,被测车辆可以基于其减速后的当前速度、自车与第一场景对象和第二场景对象的停车位置之间的距离以及被测算法,确定具体的应对行驶方式,具体的包括:减速行驶至停车,或者变道行驶。
其中,本发明实施例并不对被测车辆基于被测算法确定具体的对应行驶方式的具体过程进行限定,任一种确定过程均可以应用于本发明实施例中。
在本发明的另一实施例中,第一速度与第二速度均小于被测车辆的当前速度。一种情况中,第一速度可以小于第二速度,或者第一速度可以大于大二速度。
S103:监控预设测试事件对应的测试流程中被测车辆的行为状态,并获得被测车辆的行为状态对应的行为状态参数,以通过行为状态参数确定被测车辆的被测算法的测试结果。
电子设备可以实时监控预设测试事件对应的测试流程中被测车辆的行为状态,获得被测车辆处于行为状态中对应的行为状态参数,即获得被测车辆在上述情况中的行为状态中对应的行为状态参数,其中,该行为状态参数可以包括但不限于:执行相应动作的时间,以及执行相应动作之后是否处于预设安全行为范围内等。后续的,电子设备通过行为状态参数确定被测车辆的被测算法的测试结果。
其中,被测车辆的行为状态可以指在预设测试事件被触发后,被测车辆基于被测算法所执行的相应动作。
在本发明的另一实施例中,所述S103,可以包括如下步骤:
监控预设测试事件对应的测试流程中被测车辆的行为状态,并获得被测车辆的该行为状态对应的确定减速消耗时间、减速消耗时间、到达指定速度所需时间、变道行驶所用时间、变道行驶对应的变道速度和/或变道行驶对应的变道角度。
本实现方式中,在针对第一场景对象和第二场景对象中,目标场景对象并道成功,而另一目标场景对象避让返回原行驶车道的情况下,被测车辆的该行为状态对应的行为状态参数至少包括:确定减速消耗时间,即在确定发生并道行为到确定减速行驶所消耗的时间;减速消耗时间及减速到减速目标值所需的时间;到达指定速度所需时间即从当前速度减速到指定速度所消耗的时间。
在上述情况下,若被测车辆跟随目标场景对象行驶,被测车辆的该行为状态对应的行为状态参数还可以包括:跟随目标场景对象行驶的安全距离保持程度参数和/或车道中心保持程度参数。若被测车辆变道至目标场景对象或另一目标场景对象的原行驶车道行驶,被测车辆的该行为状态对应的行为状态参数还可以包括:变道时间、变道角度和/或变道速度。其中,变道时间可以指被测车辆从变道开始到变道成功所消耗的时间。变道角度可以指在变道过程中,被测车辆转弯的角度。变道速度可以指变道过程中被测车辆的行驶速度。
在针对第三场景对象中,第一场景对象与第二场景对象于被测车辆所在行驶车道发生碰撞,并减速至停车的情况下,被测车辆的该行为状态对应的行为状态参数至少包括:确定减速消耗时间,即在确定发生并道行为到确定减速行驶所消耗的时间;减速消耗时间及减速到减速目标值所需的时间;到达指定速度所需时间即从当前速度减速到指定速度所消耗的时间。
若被测车辆减速行驶至停车,被测车辆的该行为状态对应的行为状态参数还包括:被测车辆停车的位置,与第一场景对象和第二场景对象的停车位置之间的距离,以通过该距离确定被测车辆的停车位置,与第一场景对象和第二场景对象的停车位置之间的距离是否大于预设安全距离,以确保被测车辆的安全。若被测车辆变道行驶,被测车辆的该行为状态对应的行为状态参数还包括:变道时间、变道角度和/或变道速度。
应用本发明实施例,基于目标场景模板及修改指令,生成交通测试场景,以在一定程度上实现测试场景的场景元素的泛化,以得到数量足够多的交通测试场景,并且,设置预设测试事件对应的测试触发条件,在场景对象和被测车辆的正常行驶过程中,在预设测试事件被触发时,即触发对被测车辆的预设测试事件对应的测试流程,监控预设测试事件对应的测试流程中被测车辆的行为状态,获得被测车辆的行为状态对应的行为状态参数,以通过行为状态参数确定被测车辆的被测算法的测试结果。由此,可以通过仿真的方式来测试自动驾驶车辆在预设测试事件发生时例如背景技术所提到的情景下的性能,减小费用,避免造成实际损失,并对实际驾驶具有指导意义。
并且,由于随机交通流中各交通要素是动态变化的,这样可以触发各种不同的测试场景对被测车辆进行测试,从而可以随机生成比人工设置或随机设置的测试场景更加全面的测试场景,并且在随机交通流场景中测试场景可以随机生成,无需针对不同的测试事件配置不同的测试场景,实现对自动驾驶场景的自动化以及全面的构建,对自动驾驶算法更全面的测试的同时,提高自动驾驶算法的测试效率。
在本发明的另一实施例中,如图3所示,图3为本发明实施例提供的无人驾驶仿真测试视频存储的流程示意图,在图1的步骤S103之后还可以包括如下步骤:
S301:录制测试流程生成无人驾驶仿真测试视频。
S302:提取无人驾驶仿真测试视频中的视频信息。
其中,视频信息为表征无人驾驶仿真测试视频所包含的关键内容的信息,至少包括事件信息。
S303:将所提取的视频信息的格式修改为二进制格式生成二进制文件,保存二进制文件与无人驾驶仿真测试视频对应的场景名称之间的对应关系以及二进制文件与无人驾驶仿真测试视频所使用的场景文件之间的对应关系。
其中,场景文件中记录有无人驾驶仿真测试视频所使用的地图文件名称。
由于在无人驾驶仿真测试领域,需要对海量的场景进行无人驾驶仿真测试,在仿真测试完成后,形成海量的无人驾驶仿真测试的无人驾驶仿真测试视频。
为了便于后续对各无人驾驶仿真测试视频进行查看,需要将海量的无人驾驶仿真测试视频进行存储,由于无人驾驶仿真测试视频数量庞大,导致不仅占用较大的存储空间,而且无法高效存储。因此,为了减少存储空间的占用以及高效存储,在本实现方式中,电子设备可以录制测试流程生成无人驾驶仿真测试视频。电子设备录制测试流程的方式可以为通过本地视频录制软件进行录制,或者,通过所连接的视频采集设备进行录制,这都是可以的。
由于无人驾驶仿真测试视频中包含关键内容以及非关键内容,关键内容为视频的主要信息,只要有主要信息就可以组成该视频,非关键内容为视频的非主要信息,有无非主要信息都不影响组成视频,因此,在保存无人驾驶仿真测试视频时可以仅保存关键内容即可,因此,电子设备提取无人驾驶仿真测试视频中的视频信息,视频信息为表征无人驾驶仿真测试视频所包含的关键内容的信息,至少包括事件信息。
其中,事件信息表征视频中何时发生了什么事件,示例性的,事件信息可以包括碰撞事件和碰撞事件发生时间点之间的对应关系、视频环境变化事件和视频环境变化事件发生时间点之间的对应关系、视频天气变化事件和视频天气变化事件发生时间点之间的对应关系,和/或,视频昼夜变化事件和视频昼夜变化事件发生时间点之间的对应关系。
举例而言,碰撞事件可以为车辆之间碰撞、车辆与行人之间的碰撞、车辆与障碍物之间的碰撞;视频环境变化事件可以为光照由强变弱;视频天气变化事件可以为下雪、晴天、下雨;视频昼夜变化事件可以为白天变为夜晚、夜晚变为白天。
示例性的,视频信息还可以包括车辆信息、环境信息、障碍物信息、行人信息和/或道路信息。车辆信息包括车辆位置坐标、车辆速度和/车辆加速度。环境信息包括天气信息和/或光照信息。障碍物信息包括障碍物位置坐标。行人信息包括行人位置坐标和/或行人速度。道路信息包括道路编号信息。
所提取的视频信息的格式一般为十进制,为了可以进一步减少存储空间,电子设备将所提取的视频信息的格式修改为二进制格式生成二进制文件,保存二进制文件与无人驾驶仿真测试视频对应的场景名称之间的对应关系以及二进制文件与无人驾驶仿真测试视频所使用的场景文件之间的对应关系,其中,场景文件中记录有无人驾驶仿真测试视频所使用的地图文件名称。
示例性的,地图文件包括无人驾驶仿真测试视频所使用的高精度地图的信息,场景文件包括无人驾驶仿真测试视频中除了静态信息以外的场景信息,举例而言,场景文件包括在高精度地图中的左上角位置有一行人。
也就是说,一个二进制文件对应有一个场景名称以及一个场景文件,举例而言,二进制文件1.1对应场景名称1.1以及场景文件1.1,其中,场景文件1.1中记录有地图文件名称1.1。
由此,通过提取无人驾驶仿真测试视频中的视频信息,并将所提取的视频信息的格式修改为二进制格式生成二进制文件,保存二进制文件与无人驾驶仿真测试视频对应的场景名称之间的对应关系以及二进制文件与无人驾驶仿真测试视频所使用的场景文件之间的对应关系的方式,仅保存了包含视频主要内容的二进制文件,而不是整个视频,大大减少了存储空间的占用,使得即使有大量的无人驾驶仿真测试视频需要存储时,可以做到高效轻便存储。
在本发明的另一实施例中,如图4所示,图4为本发明实施例提供的无人驾驶仿真测试视频回看的流程示意图,在图3的步骤S303之后还可以包括如下步骤:
S401:接收无人驾驶仿真测试视频回看指令。
其中,无人驾驶仿真测试视频回看指令中包括待回看场景名称和待回看事件名称。
S402:根据场景名称与二进制文件之间的对应关系,查找到待回看场景名称对应的目标二进制文件。
S403:根据二进制文件与场景文件之间的对应关系,查找到目标二进制文件对应的目标场景文件,查找到目标场景文件中记录的地图文件名称对应的目标地图文件。
S404:根据待回看事件名称和目标二进制文件包含的事件信息确定待回看事件的发生时间点。
S405:根据目标二进制文件、目标地图文件和目标场景文件回放发生时间点前后预设时间段内的无人驾驶仿真测试视频。
在现有技术中,存储的是整个视频,因此在将海量的无人驾驶仿真测试视频存储后,当需要对某个无人驾驶仿真测试视频中的某个事件进行回放时,查找不便,无法快速准确的定位事件并进行回放。
为了可以进行快速准确的定位视频进行回放,在本实现方式中,电子设备可以通过所连接的显示器件显示无人驾驶仿真测试视频对应的显示信息,包括但不限于场景名称以及事件名称,测试人员可以基于显示信息,选中其所需要回看的场景名称和事件名称,触发选中操作,电子设备检测到选中操作后,接收无人驾驶仿真测试视频回看指令,确定所选中的场景名称为待回看场景名称,确定选中的事件名称为待回看事件名称。
并根据场景名称与二进制文件之间的对应关系,查找到待回看场景名称对应的目标二进制文件。根据二进制文件与场景文件之间的对应关系,查找到目标二进制文件对应的目标场景文件,查找到目标场景文件中记录的地图文件名称对应的目标地图文件。
其中,地图文件可以预存于电子设备本地,也可以存于云网络中,只要是电子设备根据地图文件名称可以查找到对应的目标地图文件并使用即可,本发明实施例对此并不做任何限定。
举例而言,假设电子设备存储有:二进制文件1.1对应场景名称1.1以及场景文件1.1,其中,场景文件1.1中记录有地图文件名称1.1;二进制文件2.1对应场景名称2.1以及场景文件2.1,其中,场景文件2.1中记录有地图文件名称2.1;二进制文件3.1对应场景名称3.1以及场景文件3.1,其中,场景文件3.1中记录有地图文件名称3.1;
假设待回看场景名称为2.1,则根据场景名称与二进制文件之间的对应关系,查找到待回看场景名称2.1对应的目标二进制文件2.1,根据二进制文件与场景文件之间的对应关系,查找到目标二进制文件2.1对应的目标场景文件2.1,查找到目标场景文件2.1中记录的地图文件名称2.1对应的目标地图文件。
一个无人驾驶仿真测试视频中可能发生多个事件,因此,二进制文件可以包含多个事件的时间信息,电子设备根据待回看事件名称和目标二进制文件包含的事件信息确定待回看事件的发生时间点。
示例性的,步骤S404可以为根据目标二进制文件包含的事件名称和发生时间点之间的对应关系,确定待回看事件的发生时间点。
举例而言,承接上述例子,假设目标二进制文件2.1包含9点发生A车与B车碰撞事件、10点下雪、14点发生C行人与D车碰撞事件;
假设待回看事件名称为C行人与D车碰撞事件,则根据目标二进制文件2.1包含的事件名称和发生时间点之间的对应关系,确定待回看事件的发生时间点为14点。
在确定了待回看事件的发生时间点后,电子设备即可根据目标二进制文件、目标地图文件和目标场景文件回放发生时间点前后预设时间段内的无人驾驶仿真测试视频。
示例性的,步S405可以为分别从目标二进制文件中、目标地图文件和目标场景文件中查找到发生时间点前后预设时间段内的二进制数据、地图数据和场景数据,根据二进制数据、地图数据和场景数据生成无人驾驶仿真测试视频并回放所生成的无人驾驶仿真测试视频。
由于事件的发生通常会持续一段时间,因此,在回放时需要回放发生时间点前后预设时间段内的无人驾驶仿真测试视频,以便查看事件发生的来龙去脉,当然也可以仅回放事件发生前的无人驾驶仿真测试视频以及事件发生后的无人驾驶仿真测试视频,这都是可以选择的。
由此,根据场景名称与二进制文件之间的对应关系,查找到待回看场景名称对应的目标二进制文件,根据二进制文件与场景文件之间的对应关系,查找到目标二进制文件对应的目标场景文件,查找到目标场景文件中记录的地图文件名称对应的目标地图文件,根据待回看事件名称和目标二进制文件包含的事件信息确定待回看事件的发生时间点,根据目标二进制文件、目标地图文件和目标场景文件回放发生时间点前后预设时间段内的无人驾驶仿真测试视频。通过待回看场景名称可以快速定位对应的目标二进制文件,通过待回看事件名称与目标二进制文件包含的事件信息可以快速准确定位到仿真过程中事件发生变化的时间点,也就是发生时间点,然后根据目标二进制文件、目标地图文件和目标场景文件回放发生时间点前后预设时间段内的无人驾驶仿真测试视频,无需回放整个无人驾驶仿真测试视频,达到快速准确的定位视频进行回放的目的。
在本发明的另一实施例中,若测试触发条件为:被测车辆的行驶前方出现静止的场景对象,且与静止的场景对象之间的距离小于第三阈值,预设测试事件对应的测试流程,可以包括如下步骤:
被测车辆基于静止的场景对象所在位置以及被测算法,变道行驶或转弯行驶,以远离静止的场景对象所在位置。
本实现方式中,被测车辆通过其所设置的虚拟传感器采集的传感器数据,确定其行驶前方出现静止的场景对象,在被测车辆与静止的场景对象之间的距离小于第三阈值的情况下,即测试触发条件被触发,相应的,被测车辆执行被触发的测试触发条件对应的预设测试事件所对应的测试流程:被测车辆基于其虚拟传感器采集的传感器数据,确定静止的场景对象所在位置,并基于静止的场景对象所在位置以及被测算法,确定变道行驶或转弯行驶,以远离静止的场景对象所在位置。
后续的,在被测车辆变道行驶的情况下,被测车辆的行为状态对应的行为状态参数可以包括:变道时间、变道角度和/或变道速度;在被测车辆转弯行驶的情况下,被测车辆的行为状态对应的行为状态参数可以包括:转弯角度和/或转弯速度等。
相应于上述方法实施例,本发明实施例提供了一种基于场景的自动驾驶仿真测试装置,如图5所示,所述装置可以包括:
确定模块510,被配置为基于目标场景模板及其对应的修改指令,确定交通测试场景,其中,所述交通测试场景包括:在测试流程启动之前以随机行驶状态行驶的场景对象、被测车辆以及静止状态的场景对象,所述修改指令为修改目标场景模板所对应场景元素的指令;
触发模块520,被配置为在检测到所述交通测试场景的场景对象中存在与所述被测车辆之间的位置关系,达到预设测试事件对应的测试触发条件的场景对象的情况下,触发所述预设测试事件对应的测试流程;其中,若所述测试触发条件为:处于所述被测车辆所在车道的左相邻车道的且行驶于被测车辆前方的第一场景对象,与被测车辆之间的位置关系表征被测车辆与第一场景对象的距离小于第一阈值;且于所述被测车辆所在车道的右相邻车道的且行驶于被测车辆前方的第二场景对象,与被测车辆之间的位置关系表征被测车辆与第二场景对象的距离小于第二阈值,所述预设测试事件对应的测试流程,包括如下情况:
第一种情况:
第一场景对象以第一速度,且所述第二场景对象以第二速度,并道入所述被测车辆所在行驶车道;
目标场景对象在确定另一目标场景对象并道入所述被测车辆所在行驶车道的情况下,返回其原行驶车道,其中,所述目标场景对象为第一场景对象时,另一目标场景对象为所述第二场景对象;所述目标场景对象为第二场景对象时,另一目标场景对象为所述第一场景对象;
所述被测车辆在确定所述第一场景对象和所述第二场景对象的并道行为后,基于自车与第一场景对象的距离、自车与第二场景对象的距离、所述被测车辆的当前速度以及所述被测算法,确定减速目标值;基于所述被测车辆的当前速度以及所述减速目标值,减速行驶;
并在确定所述目标场景对象并道成功后,所述被测车辆基于目标场景对象及另一目标场景对象的速度、减速后的当前速度以及所述被测算法,跟随所述目标场景对象行驶,或者,变道至所述目标场景对象的原行驶车道行驶,或者,变道至另一目标场景对象的行驶车道行驶,或者,超车行驶;
第二种情况:
第一场景对象以第一速度,且所述第二场景对象以第二速度,并道入所述被测车辆所在行驶车道;
所述第一场景对象与所述第二场景对象于所述被测车辆所在行驶车道发生碰撞,并减速至停车;
所述被测车辆在确定所述第一场景对象和所述第二场景对象的并道行为后,基于自车与第一场景对象的距离、自车与第二场景对象的距离、所述被测车辆的当前速度以及所述被测算法,确定减速目标值;基于所述被测车辆的当前速度以及所述减速目标值,减速行驶;
并在确定所述第一场景对象与所述第二场景对象发生碰撞,并减速至停车之后,所述被测车辆基于所述减速后的当前速度、自车与第一场景对象和所述第二场景对象的停车位置之间的距离以及所述被测算法,减速行驶至停车;或者变道行驶;
监控模块530,被配置为监控所述预设测试事件对应的测试流程中所述被测车辆的行为状态,并获得所述被测车辆的所述行为状态对应的行为状态参数,以通过所述行为状态参数确定所述被测车辆的被测算法的测试结果。
应用本发明实施例,基于目标场景模板及修改指令,生成交通测试场景,以在一定程度上实现测试场景的场景元素的泛化,以得到数量足够多的交通测试场景,并且,设置预设测试事件对应的测试触发条件,在场景对象和被测车辆的正常行驶过程中,在预设测试事件被触发时,即触发对被测车辆的预设测试事件对应的测试流程,监控预设测试事件对应的测试流程中被测车辆的行为状态,获得被测车辆的行为状态对应的行为状态参数,以通过行为状态参数确定被测车辆的被测算法的测试结果。由此,可以通过仿真的方式来测试自动驾驶车辆在预设测试事件发生时例如背景技术所提到的情景下的性能,减小费用,避免造成实际损失,并对实际驾驶具有指导意义。
并且,由于随机交通流中各交通要素是动态变化的,这样可以触发各种不同的测试场景对被测车辆进行测试,从而可以随机生成比人工设置或随机设置的测试场景更加全面的测试场景,并且在随机交通流场景中测试场景可以随机生成,无需针对不同的测试事件配置不同的测试场景,实现对自动驾驶场景的自动化以及全面的构建,对自动驾驶算法更全面的测试的同时,提高自动驾驶算法的测试效率。
在本发明的另一实施例中,本发明实施例提供的一种基于场景的自动驾驶仿真测试装置还可以包括:
录制模块,用于在所述通过所述行为状态参数确定所述被测车辆的被测算法的测试结果之后,录制所述测试流程生成无人驾驶仿真测试视频;
提取模块,用于提取所述无人驾驶仿真测试视频中的视频信息,其中,所述视频信息为表征所述无人驾驶仿真测试视频所包含的关键内容的信息,至少包括事件信息;
保存模块,用于将所提取的视频信息的格式修改为二进制格式生成二进制文件,保存所述二进制文件与所述无人驾驶仿真测试视频对应的场景名称之间的对应关系以及所述二进制文件与所述无人驾驶仿真测试视频所使用的场景文件之间的对应关系,其中,所述场景文件中记录有所述无人驾驶仿真测试视频所使用的地图文件名称。
在本发明的另一实施例中,本发明实施例提供的一种基于场景的自动驾驶仿真测试装置还可以包括:
接收模块,用于在所述保存所述二进制文件与所述无人驾驶仿真测试视频对应的场景名称之间的对应关系以及所述二进制文件与所述无人驾驶仿真测试视频所使用的场景文件之间的对应关系之后,接收无人驾驶仿真测试视频回看指令,其中,所述无人驾驶仿真测试视频回看指令中包括待回看场景名称和待回看事件名称;
第一查找模块,用于根据场景名称与二进制文件之间的对应关系,查找到所述待回看场景名称对应的目标二进制文件;
第二查找模块,用于根据二进制文件与场景文件之间的对应关系,查找到所述目标二进制文件对应的目标场景文件,查找到所述目标场景文件中记录的地图文件名称对应的目标地图文件;
发生时间点确定模块,用于根据所述待回看事件名称和所述目标二进制文件包含的事件信息确定所述待回看事件的发生时间点;
回放模块,用于根据所述目标二进制文件、所述目标地图文件和所述目标场景文件回放所述发生时间点前后预设时间段内的无人驾驶仿真测试视频。
在本发明的另一实施例中,所述视频信息还包括车辆信息、环境信息、障碍物信息、行人信息和/或道路信息。
在本发明的另一实施例中,所述发生时间点确定模块,具体用于:
根据所述目标二进制文件包含的事件名称和发生时间点之间的对应关系,确定所述待回看事件的发生时间点。
在本发明的另一实施例中,所述回放模块,包括:
查找单元,用于分别从所述目标二进制文件中、所述目标地图文件和所述目标场景文件中查找到所述发生时间点前后预设时间段内的二进制数据、地图数据和场景数据;
回放单元,用于根据所述二进制数据、所述地图数据和所述场景数据生成无人驾驶仿真测试视频并回放所生成的无人驾驶仿真测试视频。
在本发明的另一实施例中,所述事件信息包括碰撞事件和碰撞事件发生时间点之间的对应关系、视频环境变化事件和视频环境变化事件发生时间点之间的对应关系、视频天气变化事件和视频天气变化事件发生时间点之间的对应关系,和/或,视频昼夜变化事件和视频昼夜变化事件发生时间点之间的对应关系。
在本发明的另一实施例中,所述监控模块530,被具体配置为监控所述预设测试事件对应的测试流程中所述被测车辆的行为状态,并获得所述被测车辆的该行为状态对应的确定减速消耗时间、减速消耗时间、到达指定速度所需时间、变道行驶所用时间、变道行驶对应的变道速度和/或变道行驶对应的变道角度。
在本发明的另一实施例中,若所述测试触发条件为:被测车辆的行驶前方出现静止的场景对象,且与所述静止的场景对象之间的距离小于第三阈值,所述预设测试事件对应的测试流程,包括:
所述被测车辆基于所述静止的场景对象所在位置以及所述被测算法,变道行驶或转弯行驶,以远离所述静止的场景对象所在位置。
上述装置实施例与方法实施例相对应,与该方法实施例具有同样的技术效果,具体说明参见方法实施例。装置实施例是基于方法实施例得到的,具体的说明可以参见方法实施例部分,此处不再赘述。
本领域普通技术人员可以理解:附图只是一个实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域普通技术人员可以理解:实施例中的装置中的模块可以按照实施例描述分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围。