自动驾驶决策规划数据复现方法及装置与流程

文档序号:18010462发布日期:2019-06-25 23:58阅读:151来源:国知局
自动驾驶决策规划数据复现方法及装置与流程

本发明涉及自动驾驶技术领域,尤其涉及一种自动驾驶决策规划数据复现方法及装置。



背景技术:

在自动驾驶技术中,不论是在路测场景还是在仿真场景中,车辆的自动驾驶决策规划数据的检测和调试都是十分重要的环节,根据检测结果反向对问题数据进行调试从而实现对自动驾驶车辆的性能优化。然而,在自动驾驶车辆的行驶过程中,生成自动驾驶决策规划所需的数据繁多,难以按计算过程准确并完整地记录所有数据。由于数据记录的不完整,因此无法准确的将需要调试的自动驾驶决策规划数据进行高保真的复现,从而对查找和调试问题数据造成了很大的影响。

在背景技术中公开的上述信息仅用于加强对本发明的背景的理解,因此其可能包含没有形成为本领域普通技术人员所知晓的现有技术的信息。



技术实现要素:

本发明实施例提供一种自动驾驶决策规划数据复现方法及装置,以解决现有技术中的一个或多个技术问题。

第一方面,本发明实施例提供了一种自动驾驶决策规划数据复现方法,包括:

获取生成单帧决策规划数据的关键数据的各步骤对应的标记;

根据各所述步骤对应的标记,获取各所述步骤对应的各状态数据;

按照各所述状态数据以及各所述步骤的存储时序,复现所述单帧决策规划数据的关键数据。

在一个实施方式中,还包括:

获取各所述关键数据之间的关联关系;

根据各所述关键数据之间的关联关系以及复现出的所述关键数据,利用自动驾驶决策规划算法,复现所述单帧决策规划数据。

在一个实施方式中,还包括:

确定自动驾驶决策规划数据中各所述单帧决策规划数据中的关键数据;

对生成所述关键数据的各步骤进行标记,并设置各所述步骤的存储时序;

对所述步骤中的各状态数据进行与其所属的步骤对应的标记,并设置各所述状态数据的存储时序;

按照各所述步骤以及各所述状态数据的存储时序,存储所述关键数据。

在一个实施方式中,按照各所述步骤以及各所述状态数据的存储时序,存储所述关键数据,包括:

确定各所述关键数据之间的关联关系;

根据各所述关键数据之间的关联关系,按照各所述步骤以及各所述状态数据的存储时序,存储各所述关键数据。

在一个实施方式中,还包括:

根据单帧决策规划数据中各数据的被依赖程度、计算时间长短以及被关注程度中的至少一种,来确定所述关键数据。

第二方面,本发明实施例提供了一种自动驾驶决策规划数据复现装置,包括:

标记获取模块,用于获取生成单帧决策规划数据的关键数据的各步骤对应的标记;

状态数据获取模块,用于根据各所述步骤对应的标记,获取各所述步骤对应的各状态数据;

关键数据复现模块,用于按照各所述状态数据以及各所述步骤的存储时序,复现所述单帧决策规划数据的关键数据。

在一个实施方式中,还包括:

关系获取模块,用于获取各所述关键数据之间的关联关系;

单帧数据复现模块,用于根据各所述关键数据之间的关联关系以及复现出的所述关键数据,利用自动驾驶决策规划算法,复现所述单帧决策规划数据。

在一个实施方式中,还包括:

确定模块,用于确定自动驾驶决策规划数据中各所述单帧决策规划数据中的关键数据;

步骤标记模块,用于对生成所述关键数据的各步骤进行标记,并设置各所述步骤的存储时序;

状态数据标记模块,用于对所述步骤中的各状态数据进行与其所属的步骤对应的标记,并设置各所述状态数据的存储时序;

存储模块,用于按照各所述步骤以及各所述状态数据的存储时序,存储所述关键数据。

在一个实施方式中,所述存储模块包括:

关系确定子模块,用于确定各所述关键数据之间的关联关系;

存储子模块,用于根据各所述关键数据之间的关联关系,按照各所述步骤以及各所述状态数据的存储时序,存储各所述关键数据。

第三方面,本发明实施例提供了一种自动驾驶决策规划数据的复现终端,包括:

所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。

在一个可能的设计中,自动驾驶决策规划数据的复现终端的结构中包括处理器和存储器,所述存储器用于存储支持自动驾驶决策规划数据的复现终端执行上述第一方面中自动驾驶决策规划数据复现方法的程序,所述处理器被配置为用于执行所述存储器中存储的程序。自动驾驶决策规划数据的复现终端还可以包括通信接口,用于自动驾驶决策规划数据的复现终端与其他设备或通信网络通信。

第四方面,本发明实施例提供了一种计算机可读存储介质,用于存储自动驾驶决策规划数据的复现终端所用的计算机软件指令,其包括用于执行上述第一方面中自动驾驶决策规划数据复现方法为自动驾驶决策规划数据的复现终端所涉及的程序。

上述技术方案中的一个技术方案具有如下优点或有益效果:本发明实施例能够通过特定的复现方式将自动驾驶决策规划数据中的单帧决策规划数据进行完整的高保真复现。

上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上述描述的示意性的方面、实施方式和特征之外,通过参考附图和以下的详细描述,本发明进一步的方面、实施方式和特征将会是容易明白的。

附图说明

在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图仅描绘了根据本发明公开的一些实施方式,而不应将其视为是对本发明范围的限制。

图1为本发明实施方式提供的自动驾驶决策规划数据复现方法的流程图。

图2为本发明另一实施方式提供的自动驾驶决策规划数据复现方法的流程图。

图3为本发明又一实施方式提供的自动驾驶决策规划数据复现方法的流程图。

图4为本发明又一实施方式提供的自动驾驶决策规划数据复现方法的步骤s900的流程图。

图5为本发明实施方式提供的自动驾驶决策规划数据复现装置的结构示意图。

图6为本发明另一实施方式提供的自动驾驶决策规划数据复现装置的结构示意图。

图7为本发明又一实施方式提供的自动驾驶决策规划数据复现装置的结构示意图。

图8为本发明实施方式提供的自动驾驶决策规划数据复现装置的存储模块的结构示意图。

图9为本发明实施方式提供的自动驾驶决策规划数据的复现终端的结构示意图。

具体实施方式

在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本发明的精神或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和描述被认为本质上是示例性的而非限制性的。

本发明实施例提供了一种自动驾驶决策规划数据复现方法,如图1所示,该方法包括以下步骤:

s100:获取生成单帧决策规划数据的关键数据的各步骤对应的标记。关键数据的属性中可以包括标记,利用该标记可以查找到具有该标记的步骤。此外,步骤具有的标记还可以用于查找与各步骤所对应的其他信息数据。

需要说明的是,单帧决策规划数据可以用于规划出自动驾驶车辆在当前帧的基础上未来一定时间内的行驶轨迹。车辆最终行驶出的行驶轨迹是通过若干单帧决策规划数据组合、筛选以及决策而产生的。单帧决策规划数据由若干数据结合所形成,每个数据是通过对应的多个计算步骤得到的。

s200:根据各步骤对应的标记,获取各步骤对应的各状态数据。状态数据可以是所属步骤在执行过程中所需的任何数据。例如,步骤执行所需的输入数据、在步骤执行的内部计算过程中产生的中间计算结果数据、以及步骤执行结束后生成的输出数据等。状态数据可以携带有与步骤的标记相同或相应的标记,从而使得根据步骤的标记可以在已存储的各状态数据中查找到与步骤对应的各状态数据。

s300:按照各状态数据以及各步骤的存储时序,复现单帧决策规划数据的关键数据。在一种示例中,可以按生成单帧决策规划数据时,各步骤的执行顺序以及每个步骤中各状态数据的关联关系和产生顺序生成上述的存储时序。

需要说明的是,各状态数据的产生顺序可以是产生各状态数据的时间顺序。各状态数据的关联关系可以包含同一个步骤中的各状态数据之间的依赖关系。例如,步骤一包括输入数据以及依次产生的第一中间计算结果数据、第二中间计算结果数据和输出数据。其中,输出数据需要依赖输入数据、第一中间计算结果数据才能够计算出,因此认为步骤一的输出数据与输入数据和第一中间计算结果数据存在关联关系,步骤一的各状态数据的产生顺序是输入数据、第一中间计算结果数据、第二中间计算结果数据和输出数据。

各状态数据的关联关系也可以包含不同步骤的各状态数据之间的依赖关系。例如,步骤一包括第一中间计算结果数据、第二中间计算结果数据和输出数据。步骤二包括输入数据(即步骤一的输出数据)以及依次产生的中间计算结果数据和输出数据。其中,步骤二的输出数据需要依赖步骤一的输出数据、步骤一的第二中间计算结果数据以及步骤二的中间计算结果数据才能够计算出。因此认为步骤二的输出数据与步骤一的输出数据、步骤一的第二中间计算数据以及步骤二的中间计算结果数据存在关联关系。

在一个实施方式中,获取生成单帧决策规划数据的关键数据的各步骤对应的标记之前,还包括获取生成单帧决策规划数据的关键数据的步骤:

基于需要复现的单帧决策规划数据的属性,从已存储的若干关键数据中查找到属于需要复现的单帧决策规划数据的关键数据。单帧决策规划数据的属性可以用于表征该单帧决策规划数据功能、类别以及名称等。由于已存储的关键数据是基于各个单帧决策规划数据的,因此需要根据属性从中筛选出属于该单帧决策规划数据的各关键数据。

在一个实施方式中,如图2所示,还包括步骤:

s400:获取各关键数据之间的关联关系。关键数据是形成单帧决策规划数据所需的若干数据中的一部分数据。关键数据可以依据单帧决策规划数据中各数据的被依赖程度、计算时间长短以及被关注程度中的至少一种来确定。即关键数据可根据工作需要以及计算成本进行具体的选择。由于各关键数据可以由使用者自行定义和选择,因此选择出的各关键数据在执行时不一定具有强关联性。如果各个关键数据之间不是依次相互执行的,则需要对各个关键数据之间的关联关系进行确定。

s500:根据各关键数据之间的关联关系以及复现出的关键数据,利用自动驾驶决策规划算法,复现单帧决策规划数据。在无法获取到形成单帧决策规划数据的所有数据的情况下,利用关键数据仅通过少量的计算和加载过程,就可以将单帧决策规划数据完整的复现出来。少量的计算和加载过程主要是用于将形成单帧决策规划数据所需的关键数据之外的其余数据进行复现。而具体的计算和加载过程可采用车辆在仿真或路测时,该单帧决策规划数据在生成过程中所利用的自动驾驶决策规划算法。

通过上述步骤可以实现在不对生成单帧决策规划数据所需的全部数据进行存储的情况下,依然能够高保真的进行单帧决策规划数据的完整复现。从而节省了为了高保真的复现单帧决策规划数据,而对大量繁杂的数据进行存储所需的时间和存储空间,能够更加高效且准确的实现单帧决策规划数据的复现。

为了能够更好的将单帧决策规划数据进行高保真的复现,因此需要在车辆进行仿真或路测时,将所需的数据按一定的方式进行有效的存储。在一个实施方式中,如图3所示,包括以下步骤:

s600:确定自动驾驶决策规划数据中各单帧决策规划数据中的关键数据。

s700:对生成关键数据的各步骤进行标记,并设置各步骤的存储时序。其中,关键数据的选择和确认方式以及存储时序的理解,请参考上述步骤所记载的内容,在此不再赘述。

s800:对步骤中的各状态数据进行与其所属的步骤对应的标记,并设置各状态数据的存储时序。状态数据的标记可以采用与所属步骤一致的标记,也可以采用与所属步骤的标记相对应的标记,具体的状态数据和步骤的标记设置方式可根据需要进行选择,只要能够根据标记找到相互对应的步骤和状态数据即可。具体的标记形式本实施例不做具体限定。

s900:按照各步骤以及各状态数据的存储时序,存储关键数据。关键数据对应的各步骤和各状态数据可以存储在同一个存储单元中,也可以分别进行存储。在进行单帧决策规划数据的复现时,可以从同一个存储单元中查找对应的步骤和状态数据,也可以从不同的存储单元中查找对应的步骤和状态数据。具体的存储方式根据需要进行选择。

在一个实施方式中,如图4所示,按照各步骤以及各状态数据的存储时序,存储关键数据,包括:

s910:确定各关键数据之间的关联关系。

s920:根据各关键数据之间的关联关系,按照各步骤以及各状态数据的存储时序,存储各关键数据。由于各状态数据的关联关系可以包含同一个步骤中的各状态数据之间的依赖关系,也可以包含不同步骤的各状态数据之间的依赖关系。因此需要基于关联关系、各步骤以及各状态数据的存储时序实现各种关键数据的准确存储,从而保证能够在复现单帧决策规划数据的时候,将存储的各关键数据进行准确的复现。

在一个应用实例中,自动驾驶车辆在路测场景行驶过程中,控制单元会实时接收车身采集设备采集和感知的数据,并根据这些数据实时的进行自动驾驶车辆的行驶路径规划。通过上述方法,将形成行驶路径规划过程中每一帧的单帧决策规划数据进行记录。在自动驾驶车辆完成路测场景的行驶后,判断车辆行驶过程中每一帧产生的单帧决策规划结果是否正确或存在异常。当发现任一单帧决策规划结果存在异常时,则采用上述方法将异常的单帧决策规划结果对应的异常单帧决策规划数据进行复现,从而实现根据复现出的完整的单帧决策规划数据查找出现问题的位置并加以调试。不仅节省了复现单帧决策规划数据的复现时间,而且提高了调试的效率及准确性。

本发明实施例提供了一种自动驾驶决策规划数据复现装置,如图5所示,包括:

标记获取模块10,用于获取生成单帧决策规划数据的关键数据的各步骤对应的标记。

状态数据获取模块20,用于根据各步骤对应的标记,获取各步骤对应的各状态数据。

关键数据复现模块30,用于按照各状态数据以及各步骤的存储时序,复现单帧决策规划数据的关键数据。

在一个实施方式中,如图6所示,还包括:

关系获取模块40,用于获取各关键数据之间的关联关系。

单帧数据复现模块50,用于根据各关键数据之间的关联关系以及复现出的关键数据,利用自动驾驶决策规划算法,复现单帧决策规划数据。

在一个实施方式中,如图7所示,还包括:

确定模块60,用于确定自动驾驶决策规划数据中各单帧决策规划数据中的关键数据。

步骤标记模块70,用于对生成关键数据的各步骤进行标记,并设置各步骤的存储时序。

状态数据标记模块80,用于对步骤中的各状态数据进行与其所属的步骤对应的标记,并设置各状态数据的存储时序。

存储模块90,用于按照各步骤以及各状态数据的存储时序,存储关键数据。

其中,标记获取模块10、状态数据获取模块20、关键数据复现模块30、关系获取模块40以及单帧数据复现模块50属于数据复现单元100。确定模块60、步骤标记模块70、状态数据标记模块80以及存储模块90属于数据存储单元200。

在一个实施方式中,如图8所示,存储模块90包括:

关系确定子模块91,用于确定各关键数据之间的关联关系。

存储子模块92,用于根据各关键数据之间的关联关系,按照各步骤以及各状态数据的存储时序,存储各关键数据。

本发明实施例提供了一种自动驾驶决策规划数据的复现终端,如图9所示,包括:

存储器910和处理器920,存储器910内存储有可在处理器920上运行的计算机程序。处理器920执行计算机程序时实现上述实施例中的自动驾驶决策规划数据复现方法。存储器910和处理器920的数量可以为一个或多个。

通信接口930,用于存储器910和处理器920与外部进行通信。

存储器910可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。

如果存储器910、处理器920、以及通信接口930独立实现,则存储器910、处理器920以及通信接口930可以通过总线相互连接并完成相互间的通信。总线可以是工业标准体系结构(isa,industrystandardarchitecture)总线、外部设备互连(pci,peripheralcomponentinterconnect)总线或扩展工业标准体系结构(eisa,extendedindustrystandardcomponent)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

可选的,在具体实现上,如果存储器910、处理器920以及通信接口930集成在一块芯片上,则存储器910、处理器920及通信接口930可以通过内部接口完成相互间的通信。

本发明实施例提供了一种计算机可读存储介质,其存储有计算机程序,该程序被处理器执行时实现如实施例一包括的任一所述的自动驾驶决策规划数据复现方法。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。

在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。

应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。

本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。所述存储介质可以是只读存储器,磁盘或光盘等。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到其各种变化或替换,这些都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1