掌桥专利:专业的专利平台
掌桥专利
首页

驾驶控制模型训练方法、驾驶控制方法及相关装置

文献发布时间:2023-06-19 11:57:35


驾驶控制模型训练方法、驾驶控制方法及相关装置

技术领域

本发明涉及自动驾驶技术领域,具体而言,涉及一种驾驶控制模型训练方法、驾驶控制方法及相关装置。

背景技术

控制作业设备精准按照预期轨迹驾驶是实现精准作业的关键。在农业自动化迅速发展的背景下,自动控制作业设备精准按照预期轨迹驾驶也成了研究热点。

目前,实现自动控制作业设备按照预期轨迹驾驶的方式为利用实时采集到的位置信息与预期驾驶位置信息比较,分析作业设备是否偏离预期驾驶轨迹,并加以调整。然而,在作业设备按照预期轨迹自动驾驶过程中,由于速度不可控,造成了采集到的位置信息与预期驾驶轨迹中的轨迹点的时、空不对齐问题,这使得无法直接判断自动驾驶效果的好坏,更无法实现精准的控制。

发明内容

有鉴于此,本发明的目的在于提供一种驾驶控制模型训练方法、驾驶控制方法及相关装置。

为了实现上述目的,本发明实施例采用的技术方案如下:

第一方面,本发明提供一种驾驶控制模型训练方法,所述方法包括:

获取标准轨迹图及每一个控制时刻所对应的实际驾驶轨迹图;

基于所述实际驾驶轨迹图、标准轨迹图和实际驾驶轨迹图与标准轨迹图之间的轨迹图像相似度,对待训练模型进行深度强化训练,以得到驾驶控制模型。

在可选的实施方式中,所述待训练模型包括第一分类层和第二分类层;所述第一分类层用于输出驾驶控制量;所述第二分类层用于预测驾驶控制精准度;

对待训练模型进行深度强化训练,以得到驾驶控制模型的步骤包括:

根据每个控制时刻所对应的所述实际驾驶轨迹图及标准轨迹图,生成每个控制时刻对应的状态参数;

利用所有的控制时刻所对应的状态参数,结合每个所述状态参数对应的轨迹图像相似度,对所述第二分类层进行训练;

根据每个控制时刻的所述状态参数及所述状态参数对应的轨迹图像相似度,配合所述第二分类层,对所述第一分类层进行训练;

将训练后的所述第一分类层与所述待训练模型中的卷积处理层进行组合,得到所述驾驶控制模型。

在可选的实施方式中,对所述第二分类层进行训练的步骤包括:

按照控制时刻的顺序,依次遍历每一个所述状态参数;

利用所述卷积处理层对当前遍历到的第一目标状态参数进行处理,得到第一特征数据;

将所述第一特征数据输入所述第二分类层,得到第一准确度;

根据所述第一准确度及所述第一目标状态参数对应的轨迹图像相似度,得到第一输出结果;

利用所述卷积处理层对第二目标状态参数进行处理,得到第二特征数据;其中,第二目标状态参数为所述第一目标状态参数的相邻下一个控制时刻所对应的状态参数;

将所述第二特征数据输入所述第二分类层,得到第二准确度;

根据所述第二准确度及所述第二目标状态参数对应的轨迹图像相似度,得到第二输出结果;

基于所述第一输出结果与所述第二输出结果之间的差异,对所述第二分类层的模型参数进行调整。

在可选的实施方式中,对所述第一分类层进行训练的步骤包括:

将所述卷积处理层输出的所述第一特征数据输入所述第一分类层,得到第一目标状态参数对应的驾驶控制量;

根据所述第二分类层输出的所述第二准确度及所述第一目标状态参数对应的轨迹图像相似度,得到训练奖励值;

基于所述第一目标状态参数、所述第二目标状态参数、所述第一目标状态参数对应的驾驶控制量及训练奖励值,生成样本向量;

利用所述样本向量对所述第一分类层的参数进行迭代。

在可选的实施方式中,在所述卷积处理层为预先训练得到的特征提取层的情况下,所述卷积处理层的生成方式包括:

获取由编码层和解码层串联得到的预选模型;

获取随机生成的多帧模拟轨迹图;

将所述模拟轨迹图输入所述编码层,以得到特征图;

将所述特征图输入所述解码层,以得到恢复图;

利用所述模拟轨迹图与对应的所述恢复图之间相似差异值,对所述预选模型的模型参数进行迭代,以得到目标模型;

将所述目标模型中的编码层取出,并与所述第一分类层和第二分类层连接,以作为所述卷积处理层。

在可选的实施方式中,在所述待训练模型中的卷积处理层为初始卷积层的情况下,所述初始卷积层的输出侧分别与所述第一分类层和第二分类层的输入侧连接;

所述方法还包括:在训练所述第一分类层和第二分类层的同时,迭代所述初始卷积层的模型参数。

在可选的实施方式中,实际驾驶轨迹图与标准轨迹图之间的轨迹图像相似度的获取过程包括:

获取所述实际驾驶轨迹图对应的第一轨迹序列和所述标准轨迹图对应的第二轨迹序列;

利用时间规整算法对所述第一轨迹序列和第二轨迹序列进行处理,以得到所述轨迹图像相似度。

在可选的实施方式中,实际驾驶轨迹图与标准轨迹图之间的轨迹图像相似度的获取过程包括:

根据所述实际驾驶轨迹图和标准轨迹图,利用奇异值分解算法,计算所述实际驾驶轨迹图和标准轨迹图之间的所述轨迹图像相似度。

在可选的实施方式中,实际驾驶轨迹图与标准轨迹图之间的轨迹图像相似度的获取过程包括:

分别所述实际驾驶轨迹图和所述标准轨迹图进行特征提取,以得到所述实际驾驶轨迹图对应的第一特征向量和所述标准轨迹图对应的第二特征向量;

根据所述第一特征向量和所述第二特征向量,计算所述实际驾驶轨迹图和所述标准轨迹图之间的所述轨迹图像相似度。

第二方面,本发明提供一种驾驶控制方法,所述方法包括:

获取当前时刻的实际驾驶轨迹图和对应的标准轨迹图;

将所述实际驾驶轨迹图和所述标准轨迹图输入驾驶控制模型进行处理,以得到驾驶控制量;其中,所述驾驶控制模型为按照前述实施方式任意一项所述的方法生成的模型;

利用所述驾驶控制量对作业设备进行控制。

在可选的实施方式中,所述方法还包括:对作业设备进行控制的过程中,或在作业设备完成作业后,通过上述任一实施例中的驾驶控制模型训练方法更新所述驾驶控制模型。

第三方面,本发明提供一种驾驶控制模型训练装置,所述装置包括:

第一获取模块,用于获取标准轨迹图及每一个控制时刻所对应的实际驾驶轨迹图;

训练模块,用于基于所述实际驾驶轨迹图、标准轨迹图、和实际驾驶轨迹图与标准轨迹图之间的轨迹图像相似度,对待训练模型进行深度强化训练,以得到驾驶控制模型。

第四方面,本发明提供一种驾驶控制装置,所述装置包括:

第二获取模块,用于获取当前时刻的实际驾驶轨迹图和对应的标准轨迹图;

处理模块,用于将所述实际驾驶轨迹图和所述标准轨迹图输入驾驶控制模型进行处理,以得到驾驶控制量;其中,所述驾驶控制模型为按照前述实施方式任意一项所述的方法生成的模型;

控制模块,用于利用所述驾驶控制量对作业设备进行控制。

第五方面,本发明提供一种电子设备,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器可执行所述机器可执行指令以实现前述实施方式任一所述的驾驶控制模型训练方法,或者所述处理器可执行所述机器可执行指令以实现前述实施方式所述的驾驶控制方法。

在可选的实施方式中,所述电子设备为农机自驾仪,或作业设备中的控制模块。

第六方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如前述实施方式任一所述的驾驶控制模型训练方法,或者执行时实现如前述实施方式所述的驾驶控制方法。

与现有技术相比,本发明实施例提供的驾驶控制模型训练方法通过获取标准轨迹图及每一个控制时刻所对应的实际驾驶轨迹图,再基于实际驾驶轨迹图、标准轨迹图和对应的轨迹图像相似度,对待训练模型进行深度强化训练,以得到驾驶控制模型。可以理解为,本发明通过根据不同时刻所对应的实际轨迹图与标准轨迹图之间的轨迹相似度确定出用于强化训练的训练激励,改善了实际轨迹点与标准轨迹点之间时空不对齐对模型精准度的影响,以使得到的驾驶控制模型能够准确的控制作业设备按照标准轨迹驾驶。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本发明实施例提供的电子设备的示意图。

图2示出了本发明实施例提供的驾驶控制模型训练方法的步骤流程图之一。

图3示出了本发明实施例提供的标准轨迹图和控制时刻所对应的实际轨迹图的示例图。

图4示出了本发明实施例提供的待训练模型的示例图。

图5示出了本发明实施例提供的步骤S102的子步骤流程图。

图6示出了本发明实施例提供的训练场景示例图的一部分。

图7示出了本发明实施例提供的训练场景示例图的另一部分。

图8示出了本发明实施例提供的训练场景示例图的另一部分。

图9示出了预训练特征提取层的场景示例图。

图10示出了本发明实施例提供的驾驶控制模型训练方法的步骤流程图之二。

图11示出了本发明实施例提供的驾驶控制模型训练装置的示意图。

图12示出了本发明实施例提供的驾驶控制方法的步骤流程图。

图13示出了本发明实施例提供的驾驶控制装置的示意图。

图标:100-电子设备;101-存储器;102-通信接口;103-处理器;104-总线;500-驾驶控制模型训练装置;501-第一获取模块;502-训练模块;600-驾驶控制装置;601-第二获取模块;602-处理模块;603-控制模块。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

发明人在采用神经网络模型依据给定的预期轨迹控制作业设备进行自动化驾驶的过程中,由于预期轨迹是由具有时间标签的轨迹点组成,因此在训练神经网络模型的过程中,发明人需要利用实际轨迹点(安装在作业设备上的传感器实时采集到的位置信息)对预期轨迹进行追踪(也即,利用实际轨迹点所对应的采集时间从预期轨迹中寻找具有匹配的时间标签的轨迹点),得到追踪误差(实际轨迹点,并以追踪误差作为训练激励进行驾驶模型的训练,但是,发明人发现最终训练得到的神经网络模型并没有达到很好的轨迹控制效果,并通过考虑多种因素终于发现:

由于在实际应用过程中,驾驶速度不可控,故容易出现轨迹追踪过程中的时空不对齐问题。比如,作业设备的驾驶速度超过规划预期轨迹所指定的驾驶速度时,虽然作业设备也是准确地按照预期轨迹驾驶,但是采集时间为1分30秒的实际轨迹点实际上是与预期轨迹中时间标签为1分钟的轨迹点重合,这样一来,采集时间为1分30秒的实际轨迹点与预期轨迹中时间标签为1分30秒的轨迹点之间存在差异。然而,进行追踪时,只能追踪到时间标签为1分30秒的轨迹点,如此,便会得到非常不准确的追踪误差,导致训练得到的驾驶模型精准度不够。

为了改善上述问题,本发明实施例提供了一种驾驶控制模型训练方法、驾驶控制方法及相关装置。

请参照图1,图1示出了本发明实施例提供的电子设备100的方框示意图。电子设备100可以是,但不限于个人电脑(personal computer,PC)、服务器、分布式部署的计算机等等。可以理解的是,电子设备100也不限于物理设备,还可以是物理设备上布局的虚拟机、基于云平台上构建的虚拟机等能提供与所述服务器或者虚拟机有相同功能的计算机。

此外,一些实施例中,上述电子设备100还可以为作业设备内部的控制模块,比如,农机、植保无人机中的控制模块。在另一实施例中,上述电子设备100还可以是与作业设备通信连接的设备,比如,农机自驾仪。

电子设备100的操作系统可以是,但不限于,Windows系统、Linux系统等。上述电子设备100包括存储器101、通信接口102、处理器103和总线104,所述存储器101、通信接口102和处理器103通过总线104连接,处理器103用于执行存储器101中存储的可执行模块,例如计算机程序。其中,存储器101可能包含高速随机存取存储器101(RAM:Random AccessMemory),也可能还包括非不稳定的存储器101(non-volatile memory),例如至少一个磁盘存储器101。通过至少一个通信接口102(可以是有线或者无线)实现该电子设备100与外部设备之间的通信连接。

总线104可以是ISA总线104、PCI总线104或EISA总线104等。图1中仅用一个双向箭头表示,但并不表示仅有一根总线104或一种类型的总线104。

在一些实施例中,存储器101用于存储程序,例如图11所示的驾驶控制模型训练装置所包含的程序。该驾驶控制模型训练装置包括至少一个可以软件或固件(firmware)的形式存储于所述存储器101中或固化在所述电子设备100的操作系统(operating system,OS)中的功能模块。所述处理器103在接收到执行指令后,执行所述程序以实现本发明上述实施例揭示的驾驶控制模型训练方法。再例如,存储器101还可以存储图12所示的驾驶控制装置所包含的程序。该驾驶控制装置包括至少一个可以软件或固件(firmware)的形式存储于所述存储器101中或固化在所述电子设备100的操作系统(operating system,OS)中的功能模块。所述处理器103在接收到执行指令后,执行所述程序以实现本发明上述实施例揭示的驾驶控制方法。

处理器103可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器103中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器103可以是通用处理器103,包括中央处理器103(Central Processing Unit,简称CPU)、网络处理器103(Network Processor,简称NP)等;还可以是数字信号处理器103(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

应当理解的是,图1所示的结构仅为电子设备100的结构示意图,所述电子设备100还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。

请参考图2,本发明实施例提供的一种驾驶控制模型训练方法,应用于电子设备100。如图2所示,上述驾驶控制模型训练方法可以包括以下步骤:

步骤S101,获取标准轨迹图及每一个控制时刻所对应的实际驾驶轨迹图。

上述标准轨迹图可以是呈现预期轨迹的图像数据。预期轨迹为指导作业设备驾驶进行作业的期望轨迹。比如,图3中所示的标准轨迹图。

上述控制时刻具有两层属性,从时间轴的角度上看,上述控制时刻可以为多个具有相同间隔的时间点,且相邻的两个控制时刻之间的时间间隔可以预先设定。从控制的角度上看,上述控制时刻为需要针对作业设备进行控制的时刻,可以理解为,在对作业设备进行控制的过程中,可以预先确定好每个控制时刻,在每个控制时刻时,改变向作业设备输出的控制信号,例如,假设每个控制时刻的间隔为1s,则在当前控制时刻之后的1s内,都以当前控制时刻输出的控制信号控制作业设备驾驶,在抵达当前控制时刻的下一时刻时(即在刚抵达当前时刻1s之后时),可以改变输出的控制信号,继续控制作业设备驾驶。这么一来,在每一个控制时刻下,都会在上一时刻的基础上产生更多的轨迹点,也就是说,控制作业设备驾驶的时间越长,作业设备所产生的轨迹点就越多。

基于此,对于每个控制时刻,可以将作业设备在该控制时刻之前的其他控制时刻产生的轨迹点、及作业设备在该控制时刻内产生的轨迹点作为该控制时刻对应的轨迹点集合,进而获得该控制时刻对应的实际驾驶轨迹图。

可以理解地,上述每一个控制时刻所对应的实际驾驶轨迹图可以是根据作业设备从启动驾驶到该控制时刻结束时所得到的所有实时轨迹点,生成的轨迹图,其中,“该控制时刻结束时”可以理解为抵达该控制时刻的下一时刻时。比如图3中,控制时刻1、控制时刻2、控制时刻3所对应的实际轨迹图,控制时刻1、控制时刻2、控制时刻3分别为按照预期轨迹驾驶过程中的三个相邻的控制时刻。

需要说明的是,虽然图3示意标准轨迹图呈现的预期轨迹为弓字型,但实际应用中,用户期望的所述预期轨迹也可以为自定义形状、螺旋型、波浪型、或曲线型。可以理解地,也可以将上述除了弓字型轨迹以外的其他轨迹作为标准轨迹图所呈现的轨迹,并利用此进行训练;或者,在训练的过程中,可以将上述各种形状的轨迹都作为标准轨迹图,对待训练模型进行训练,以使得训练所得的一个驾驶控制模型可以满足各种形状的轨迹控制需求。

在一些实施例中,一方面,可以根据用户指定的预期轨迹创建标准轨迹图。另一方面,还可以在控制作业设备按照预期轨迹启动驾驶,并于每一个控制时刻获取作业设备的实时轨迹点,并生成对应的实际轨迹图。在作业设备按照预期轨迹驾驶完毕,便可以得到所有控制时刻所对应的实际驾驶轨迹图。

此外,在控制作业设备驾驶过程中,还可以记录下每个控制时刻针对作业设备的驾驶控制量。上述驾驶控制量可以是对作业设备行驶行为进行调整的参数,比如,控制左转指定度数、控制右转指定度数等。

步骤S102,基于实际驾驶轨迹图、标准轨迹图和实际驾驶轨迹图与标准轨迹图之间的轨迹图像相似度,对待训练模型进行深度强化训练,以得到驾驶控制模型。

上述轨迹图像相似度可以是实际驾驶轨迹图、标准轨迹图之间关于轨迹的图像相似度。每一个控制时刻的实际驾驶轨迹图与上述标准轨迹图之间都存在一个轨迹图像相似度。

上述待训练模型可以是针对训练所搭建的网络模型。上述待训练模型包括可以用于提取图像特征的卷积处理层及两个分别与卷积处理层的输出层连接的全连接层。

上述驾驶控制模型为根据完成训练的待训练模型得到的实际应用的模型。

在一些实施例中,可以是根据实际驾驶轨迹图和标准轨迹图之间的轨迹图像相似度,确定训练激励,并结合对应的实际驾驶轨迹图、标准轨迹图,对待训练模型进行深度强化训练。

可理解地,上述深度强化训练也即针对待训练模型的强化学习过程。强化学习是智能体(Agent)以“试错”的方式进行学习,通过与环境进行交互获得的奖赏指导行为,目标是使智能体获得最大的奖赏(可以理解为,训练激励)。

通过上述步骤S101和步骤S102的配合,实现了以实际驾驶轨迹和预期轨迹之间的图像相似度为目标,进行强化训练。如此,无需关注作业设备每个实际位置点与预期轨迹中的对应的轨迹点是否时间对齐,使训练得到的驾驶控制模型可以控制作业设备驾驶的实际轨迹逼近预期轨迹,也避免了驾驶速度对训练效果的影响。

下面对本发明进行相关说明:

在一些实施例中,与卷积处理层连接的上述全连接层可以分别是用于预判控制时刻所对应的驾驶控制量的第一分类层和用于预测驾驶控制精准度的第二分类层。比如,图4中示出的Actor为第一分类层,Critic为第二分类层。

可理解的,上述第二分类层所预测的驾驶控制精准度为从当前控制时刻到作业设备跑完预期轨迹的控制精准度。事实上,是预测了当前控制时刻的驾驶控制量对未来的实际轨迹的影响。

正如此前所描述的,训练过程中所用的实际驾驶轨迹图在作业设备按照标准轨迹图驾驶的过程中产生。

在一些实施例中,作业设备可以在用户的控制下按照预期轨迹进行驾驶。

在另一些实施例中,作业设备可以按照第一分类层根据标准轨迹图所输出的驾驶控制量进行自动驾驶。例如,在作业设备启动驾驶的第一个控制时刻,可以将标准轨迹图和实际驾驶轨迹图(此处的实际轨迹图中包含当前作业设备的位置点)输入卷积处理层,并由第一分类层根据卷积处理层的输出,预判当前控制时刻对应的驾驶控制量,再控制作业设备按照驾驶控制量进行驾驶。达到以下控制时刻后,重复将标准轨迹图和该控制时刻对应的实际驾驶轨迹图输入卷积处理层,并从第一分类层得到驾驶控制量,进行驾驶控制,直至作业设备走完预期轨迹。

此外,在一些实施例中,上述步骤S101可以是作业设备按照预期轨迹驾驶完毕后,依据所有控制时刻对应的实时轨迹点,分别创建各个控制时刻对应的实际轨迹图。

在另一些实施例中,上述步骤S101还可以是按照预期轨迹驾驶过程中,每个控制时刻采集到对应的实时轨迹点后,对应的生成实际轨迹图。

上述两种方式的区别在于创建实际轨迹图的实际不同,也使得应用场景有所不同。在采用一边驾驶一边创建实际轨迹图的方式,在创建至少两个控制时刻对应的实际轨迹图之后,便可以启动模型训练,从而在作业设备驾驶过程中同步进行训练。

在图4示例的待训练模型的基础上,如图5所示,上述步骤S102可以包括以下步骤:

子步骤S102-1,根据每个控制时刻所对应的实际驾驶轨迹图及标准轨迹图,生成每个控制时刻对应的状态参数。

在一些实施例中,可以是将上述标准轨迹图分别与每个控制时刻所对应的实际驾驶轨迹图进行组合,从而得到每个控制时刻对应的状态参数。

比如,可以将实际驾驶轨迹图转换为图像阵列img{T2(n,m)},将标准轨迹图转换为图像阵列img{T1(n)},那么得到的状态参数为s(n,m)=[img{T1(n)},img{T2(n,m)}]。其中,n=1,…N;m=1,…M;N代表标准轨迹图的总数;n代表某个标准轨迹图在N张标准轨迹图中的序号,如,N张标准轨迹图中的第n张标准轨迹图;M代表控制时刻的总数;m代表某个控制时刻在M个控制时刻中的序号,如M个控制时刻中的第m个控制时刻。上述T2(n,m)指代按照第n张标准轨迹图中呈现的预期轨迹进行驾驶的过程中,驾驶时间抵达第m个时刻时所对应的实际驾驶轨迹图中,与该第m个时刻对应的像素点。其中的像素点可以理解为是轨迹点。

子步骤S102-2,利用所有的控制时刻所对应的状态参数,结合每个所述状态参数对应的轨迹图像相似度,对第二分类层进行训练。

在一些实施例中,结合图6、图7的训练场景示意图,上述子步骤S102-2可以包括以下步骤:

(1)按照控制时刻的顺序,依次遍历每一个状态参数。

在一些实施例中,按照控制时刻的先后顺序,对得到的状态参数进行遍历。并将当前遍历到的状态参数作为第一目标状态参数。

(2)利用卷积处理层对第一目标状态参数进行处理,得到第一特征数据。

上述第一特征数据包括用于表征标准轨迹图像的特征信息的特征图,还包括用于表征实际轨迹图像的特征信息的特征图。

(3)将第一特征数据输入第二分类层,得到第一准确度。

上述第一准确度也即第二分类层输出的驾驶控制精准度;在一些实施例中,上述第一准确度可以为所预测的在当前控制时刻之后的实际轨迹与预期轨迹之间的总体相似度。

(4)根据第一准确度及第一目标状态参数对应的轨迹图像相似度,得到第一输出结果。

在一些实施例中,上述第一输出结果可以为第一准确度及第一目标状态参数对应的轨迹图像相似度之和或加权和,加权和的系数可以根据实际场景确定,例如,距离当前控制时刻越远的点,其系数可以越小,但不限于此。可以理解地,上述轨迹图像相似度可以是表征当前控制时刻之前所产生的实际轨迹与预期轨迹之间的相似度。也即,上述第一输出结果为在第一目标状态参数所对应的控制时刻,能够预测出的作业设备完成整个驾驶过程所产生的实际轨迹图与标准轨迹图之间的相似程度。

假设作业设备精准地按照预期轨迹进行驾驶,那么每一个控制时刻所对应的第一输出结果都是相同。反之,则会出现差异。利用这一点,训练第二分类层的过程中还可以包括以下步骤:

(5)利用卷积处理层对第二目标状态参数进行处理,得到第二特征数据。

上述第二目标状态参数为与第一目标状态参数相邻的下一个控制时刻所对应的状态参数。

(6)将第二特征数据输入第二分类层,得到第二准确度。

(7)根据第二准确度及所述第二目标状态参数对应的轨迹图像相似度,得到第二输出结果。

(8)基于第一输出结果与所述第二输出结果之间的差异,对第二分类层的模型参数进行调整。

子步骤S102-3,根据每个控制时刻的状态参数及状态参数对应的轨迹图像相似度,配合第二分类层,对第一分类层进行训练。

在一些实施例中,所述子步骤S102-2可以包括以下步骤:

S1,按照控制时刻的顺序,依次遍历每一个状态参数。

S2,利用卷积处理层对当前遍历到的第一目标状态参数进行处理,得到第一特征数据。

S3,将卷积处理层输出的第一特征数据输入第一分类层,得到第一目标状态参数对应的驾驶控制量。

比如,上述步骤S2和步骤S3的实现过程中数据的传递方向可以参考图8。

S4,根据第二分类层输出的第二准确度及第一目标状态参数对应的轨迹图像相似度,得到训练奖励值。

如图7所示,上述第二准确度的获取方式可以将第二目标状态参数输入卷积处理层,得到第二特征数据。再将第二特征数据输入第二分类层进行处理,以得到第二准确度。

在一些实施例中,可以是将第二分类层输出的第二准确度及第一目标状态参数对应的轨迹图像相似度叠加,得到训练奖励值。

S5,基于第一目标状态参数、第二目标状态参数、第一目标状态参数对应的驾驶控制量及训练奖励值,生成样本向量。

S6,利用样本向量对第一分类层的参数进行迭代。

子步骤S102-4,将训练后的第一分类层与待训练模型中的卷积处理层进行组合,得到驾驶控制模型。

在一些实施例中,将卷积处理层的输出侧与训练后的第一分类层的输入侧连接,得到最终应用的驾驶控制模型。

在另一些实施例中,也可以直接将训练后得到待训练模型作为驾驶控制模型。基于此,在利用驾驶控制模型控制作业设备进行驾驶的过程中,还可以继续根据作业设备的实际驾驶情况,不断更新驾驶控制模型,能够使得驾驶控制模型可以更加符合实际驾驶应用,具有更高的控制精度。本发明实施例所提供的驾驶控制模型训练方法之所以不受轨迹点间时空不对齐问题的影响,其原因在于,不再进行轨迹点与点的比较,而是根据轨迹之间的图形进行比较。处理轨迹之间的图形则必然引入卷积层。

在一些实施例中,上述待训练模型中的卷积处理层可以是初始卷积层(Convolutional Neural Networks,CNN)层。上述初始卷积层的模型参数可以为默认值。因此,上述初始卷积层要实现准确的特征提取,还需要被训练。

在待训练模型中的卷积处理层为初始卷积层的情况下,初始卷积层的输出侧分别与所述第一分类层和第二分类层的输入侧连接。本质上初始卷积层与训练第一分类层、第二分类层组成了一个完整的模型,因此,在训练第一分类层和第二分类层的过程,可以同步迭代初始卷积层的模型参数,以使卷积处理层具备准确地从状态参数中提取特征的能力。

然而,引入初始卷积层,必然会带来的训练成本增加的问题。也就是,需要更多的实际轨迹图像用于训练。为了改善这一问题,上述卷积处理层为预先训练得到的特征提取层。

在一些实施例中,训练卷积处理层的方式如下:

S201,获取由编码层和解码层串联得到的预选模型。

如图9所示,上述预选模型中编码层的输出侧与解码层的输入侧连接。上述编码层用于从输入的图像数据中进行特征提取。上述解码层用于根据编码层输出的特征图进行解码,得到恢复图。在编码层和解码层的控制精度足够的情况下,由解码层恢复出的恢复图应当与从编码层输入的图像数据一致,故,利用这一点,对预选模型进行训练。

S202,获取随机生成的多帧模拟轨迹图。

在一些实施例中,可以利用仿真器随机生成多组轨迹点,再基于每组轨迹点,创建模拟轨迹图。从而,快速、低成本的产生大量训练样本。

S203,将模拟轨迹图输入编码层,以得到特征图。

S204,将特征图输入所述解码层,以得到恢复图。

S205,利用模拟轨迹图与对应的恢复图之间相似差异值,对预选模型的模型参数进行迭代,以得到目标模型。

S206,将目标模型中的编码层取出,并与第一分类层和第二分类层连接,以作为待训练模型中的卷积处理层。

在该方式下,对待训练模型进行训练的过程中,无需针对卷积处理层进行训练,减轻大量的训练工作,减少所需的实际轨迹图的数量。

在一些实施例中,如图10所示,上述驾驶控制模型训练方法还包括以下步骤:

步骤S301,获取实际驾驶轨迹图和标准轨迹图之间的轨迹图像相似度。可以理解为,实际驾驶轨迹图与标准轨迹图之间的轨迹图像相似度可以通过步骤S301的处理获得。

在一些实施例中,上述步骤S301中所获取到的轨迹图像相似度为实际轨迹和预期轨迹(标准轨迹图中呈现的轨迹)之间的轨迹图形相似度,上述轨迹图像相似度可以采用以下方式得到:

第一种方式可以是:首先,获取实际驾驶轨迹图对应的第一轨迹序列和标准轨迹图对应的第二轨迹序列。上述轨迹序列由轨迹点组成。其次,利用时间规整算法(DTW)对第一轨迹序列和第二轨迹序列进行处理,以得到二者之间的轨迹图像相似度。

第二种方式可以是:根据实际驾驶轨迹图和标准轨迹图,利用奇异值分解算法,计算实际驾驶轨迹图和标准轨迹图之间的轨迹图像相似度。

在一些实施例中,可以通过奇异值分解算法分别对实际驾驶轨迹图中的轨迹和标准轨迹图中的预期轨迹进行处理,以得到实际驾驶轨迹图对应的第一奇异参数和标准轨迹图对应的第二奇异参数。然后,将第一奇异参数组成第一奇异向量,将第二奇异参数组成第二奇异向量。再,计算第一奇异向量和第二奇异向量之间的欧式距离。根据所得到的欧式距离,计算轨迹图像相似度。比如,利用公式

第三种方式可以是:首先,分别对实际驾驶轨迹图和所述标准轨迹图进行特征提取,以得到所述实际驾驶轨迹图对应的第一特征向量和所述标准轨迹图对应的第二特征向量。其次,根据第一特征向量和第二特征向量,计算二者之间的欧式距离。根据所得到的欧式距离,计算轨迹图像相似度。同上,利用公式

为了执行上述实施例及各个可能的方式中的相应步骤,下面给出一种驾驶控制模型训练装置500的实现方式,可选地,该驾驶控制模型训练装置500可以采用上述图1所示的电子设备100的器件结构。进一步地,请参阅图11,图11为本发明实施例提供的一种驾驶控制模型训练装置500的功能模块图。需要说明的是,本实施例所提供的驾驶控制模型训练装置500,其基本原理及产生的技术效果和上述实施例相同,为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。该驾驶控制模型训练装置500包括:第一获取模块501和训练模块502。

第一获取模块501,用于获取标准轨迹图及每一个控制时刻所对应的实际驾驶轨迹图。

训练模块502,用于基于所述实际驾驶轨迹图、标准轨迹图和实际驾驶轨迹图与标准轨迹图之间轨迹图像相似度,对待训练模型进行深度强化训练,以得到驾驶控制模型。

如图12所示,本发明实施例还提供了一种驾驶控制方法。上述驾驶控制方法应用于电子设备100,比如,应用于农机内部的控制模块、或农机自驾仪、或其他控制设备,如无人飞行器、无人船、无人车、或汽车的控制设备等等。如图12所示,上述驾驶控制方法可以包括:

步骤S401,获取当前时刻的实际驾驶轨迹图和对应的标准轨迹图。

在一些实施例中,上述驾驶控制方法应用在作业设备实际作业的过程中。也即,作业设备自动驾驶的过程中,每一个控制时刻均会获取对应的实际驾驶轨迹图。比如,在当前时间点,则获取当前时间点之前获取到的所有实时轨迹点,创建实际驾驶轨迹图。

步骤S402,将实际驾驶轨迹图和标准轨迹图输入驾驶控制模型进行处理,以得到驾驶控制量。

在一些实施例中,上述驾驶控制模型可以通过前述实施例中所提供的驾驶控制模型训练方法得到,具体原理在此不再赘述。

步骤S403,利用驾驶控制量对作业设备进行控制。

在一些实施例中,为实现在利用驾驶控制模型控制作业设备进行驾驶控制之后,还可以继续根据作业设备的实际驾驶情况,不断更新驾驶控制模型,能够使得驾驶控制模型可以更加符合实际驾驶应用,具有更高的控制精度,所述驾驶控制方法还可以包括:对作业设备进行控制的过程中,或在作业设备完成作业后,通过上述任一实施例所述的驾驶控制模型训练方法更新所述驾驶控制模型。

为了执行上述实施例及各个可能的方式中的相应步骤,下面给出一种驾驶控制装置600的实现方式,可选地,该驾驶控制装置600可以采用上述图1所示的电子设备100的器件结构。进一步地,请参阅图13,图13为本发明实施例提供的一种驾驶控制装置600的功能模块图。需要说明的是,本实施例所提供的驾驶控制装置600,其基本原理及产生的技术效果和上述实施例相同,为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。该驾驶控制装置600包括:第二获取模块601、处理模块602和控制模块603。

第二获取模块601,用于获取当前时刻的实际驾驶轨迹图和对应的标准轨迹图。

处理模块602,用于将所述实际驾驶轨迹图和所述标准轨迹图输入驾驶控制模型进行处理,以得到驾驶控制量。

控制模块603,用于利用所述驾驶控制量对作业设备进行控制。

可选地,上述模块可以软件或固件(Firmware)的形式存储于图1所示的存储器101中或固化于该电子设备100的操作系统(Operating System,OS)中,并可由图1中的处理器103执行。同时,执行上述模块所需的数据、程序的代码等可以存储在存储器101中。

综上所述,本发明实施例提供的一种驾驶控制模型训练方法、驾驶控制方法及相关装置。其中,上述驾驶控制模型训练方法包括:获取标准轨迹图及每一个控制时刻所对应的实际驾驶轨迹图。基于实际驾驶轨迹图、标准轨迹图和对应的轨迹图像相似度,对待训练模型进行深度强化训练,以得到驾驶控制模型。改善了实际轨迹点与标准轨迹点之间时空不对齐对模型精准度的影响,以使得到的驾驶控制模型能够准确的控制作业设备按照标准轨迹驾驶。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

相关技术
  • 驾驶控制模型训练方法、驾驶控制方法及相关装置
  • 自动驾驶模型的训练方法、评测方法、控制方法及装置
技术分类

06120113118018