一种端到端的无人驾驶决策方法及系统与流程

文档序号:17742028发布日期:2019-05-24 20:13阅读:499来源:国知局
一种端到端的无人驾驶决策方法及系统与流程

本发明涉及计算机视觉技术领域,特别涉及一种端到端的无人驾驶决策方法及系统。



背景技术:

近年来,中国及全球的车辆保有量逐年上升,汽车已经成为了人们主要的出行方式。然而驾驶汽车的过程既花费大量时间又耗费大量精力,学习驾驶汽车需要消耗的较多时间,驾驶员还可能由于操作失误导致危险。为了将人们从繁重耗时的驾驶过程中解放出来,无人驾驶技术应运而生。

传统的无人驾驶方案将无人驾驶过程分解为场景理解和驾驶决策两个部分,使用目标检测、语义分割等方法先对交通场景进行理解,之后根据理解的结果做出驾驶决策,虽然近年场景理解的效果有大幅提升,但是其从场景理解结果到驾驶决策仍然困难重重。

端到端的无人驾驶决策依靠模型强大的学习能力,直接通过模型从图像输入得到驾驶决策,由模型自身隐含地去理解交通场景,这样的系统简便且免去了辅助的人工决策设计。但是等现有的端到端决策方案只考虑了当前时刻的空间信息,没用考虑车辆行驶的动态过程中包含的时间信息,因此效果还有待提升。



技术实现要素:

针对上述技术问题,本发明一方面提出一种端到端的无人驾驶决策方法,该方法考虑到车辆行驶是一种动态过程,使用了三维卷积获取时空信息和使用了多种低层特征,能获取更多有效信息,提升决策的有效性。本发明另一方面还提供一种端到端的无人驾驶决策系统。

本发明采用的技术方案为:

本发明一实施例提供一种端到端的无人驾驶决策方法,包括:

采集车辆行驶图像和车辆行驶过程中的驾驶决策数据,所述车辆行驶图像包括训练图像和决策图像;

将采集的车辆行驶图像进行预处理,得到低层特征图像,所述低层特征图像包括梯度图像和光流图像;

构建多路时空决策网络,所述网络以没有预处理的训练图像和所得到的低层特征图像作为输入,使用多个通路从输入的图像中提取高层时空特征,并将提取的高层时空特征进行融合,得到用于决策的驾驶决策量;其中,所述通路具有由四个三维卷积模块堆叠而成的网络结构,所述三维卷积模块包括三维卷积层、批量归一化层及激活层;

使用所述训练图像作为输入,该输入的图像对应的驾驶决策数据为标签对所构建的多路时空决策网络进行训练,得到用于决策的网络参数,所述网络参数表征三维卷积层中的每个卷积核里的权重;

利用所述决策图像,使用经训练后的多路时空决策网络进行无人驾驶决策,得到决策结果。

可选地,所述三维卷积层的计算公式为:

其中,w表示当前卷积层对应的卷积核里的权重,v是当前卷积层对应的特征图里的特征值,bij是当前卷积层中的第i行和j列对应的偏置,x、y、t分别表示当前卷积层对应的三个方向,i、j分别表示当前特征图里的行和列,m代表当前层特征图的数量,p、q、r分别表示卷积核三个方向的大小。

可选地,所述批量归一化层使用如下公式对训练数据进行归一化:

其中,μb和分别为该批训练数据对批量归一化层的输入的均值和方差;xi表示每批输入中的第i个输入,ε是常数,γ和β分别表示来缩放和平移xi的两个参数,yi表示处理之后的最终结果。

可选地,所述激活层使用如下公式对网络参数进行修正:

其中,α表示激活函数的参数,x表示特征图上的每一个特征值。

可选地,所述将提取的高层时空特征进行融合,得到用于决策的驾驶决策量包括:

使用如下公式进行融合:

其中,ffusion是融合后的特征,fi和wi分别是第i种高层特征及其对应的权重矩阵;

使用如下公式将融合后的特征转换为要进行决策的驾驶决策量:y={y1,y2,k,yn,l,yn}=woutgffusion,

其中,yi表示第i个决策的值,wout为输出层的权重矩阵。

可选地,使用所述训练图像作为输入,该输入的图像对应的驾驶决策数据为标签对所构建的多路时空决策网络进行训练,得到用于决策的网络参数包括:

将每批输入的训练样本及对应的预处理后的低层特征图像送入所述多路时空决策网络中;

将网络输出的决策数据的值与每个样本对应的驾驶决策数据的值进行误差处理,得到两者之间的误差值,利用得到的误差值进行梯度反向传播,更新网络参数,直到网络收敛。

可选地,所述利用所述决策图像,使用经训练后的多路时空决策网络进行无人驾驶决策,得到决策结果包括:

构建与所述训练图像的帧数相同的缓存队列;

将所述决策图像送入所述缓存队列中,当所述缓存队列存满后,将队列中存储的图像进行预处理得到对应的低层特征图像;

将队列中存储的图像和对应的低层特征图像输入经训练后的多路时空决策网络中,得到决策结果。

本发明另一实施例提供一种端到端的无人驾驶决策系统,包括:

采集模块,用于采集车辆行驶图像和车辆行驶过程中的驾驶决策数据,所述车辆行驶图像包括训练图像和决策图像;

图像处理模块,用于将所述采集模块采集的车辆行驶图像进行预处理,得到低层特征图像,所述低层特征图像包括梯度图像和光流图像;

网络构建模块,用于构建多路时空决策网络,所述网络以没有预处理的训练图像和所得到的低层特征图像作为输入,使用多个通路从输入的图像中提取高层时空特征,并将提取的高层时空特征进行融合,得到用于决策的驾驶决策量;其中,所述通路具有由四个三维卷积模块堆叠而成的网络结构,所述三维卷积模块包括三维卷积层、批量归一化层及激活层;

网络训练模块,用于使用所述训练图像作为输入,该输入的图像对应的驾驶决策数据为标签对所构建的多路时空决策网络进行训练,得到用于决策的网络参数,所述网络参数表征三维卷积层中的每个卷积核里的权重;

决策模块,用于利用所述决策图像,使用经训练后的多路时空决策网络进行无人驾驶决策,得到决策结果。

可选地,所述网络训练模块具体用于:

将每批输入的训练样本及对应的预处理后的低层特征图像送入所述多路时空决策网络中;

将网络输出的决策数据的值与每个样本对应的驾驶决策数据的值进行误差处理,得到两者之间的误差值,利用得到的误差值进行梯度反向传播,更新网络参数,直到网络收敛。

可选地,所述决策模块具体用于:

构建与所述训练图像的帧数相同的缓存队列;

将所述决策图像送入所述缓存队列中,当所述缓存队列存满后,将队列中存储的图像进行预处理得到对应的低层特征图像;

将队列中存储的图像和对应的低层特征图像输入经训练后的多路时空决策网络中,得到决策结果。

本发明实施例提供的端到端的无人驾驶决策方法和系统,使用了端到端的决策方法,比起先前使用目标检测、语义分割等方法感知环境,再进行决策的非端到端方法更加简便;其次,该系统及方法考虑到车辆行驶是一种动态过程,使用了三维卷积获取时空信息,并且使用了多种低层特征,能获取更多有效信息,提升决策的有效性;最后,该系统及方法使用熟练驾驶员的驾驶决策数据进行学习,能实现拟人化驾驶决策。

附图说明

图1为本发明实施例提供的端到端的无人驾驶决策方法的流程示意图;

图2为本发明实施例的通路的网络结构图;

图3为本发明实施例的高层时空特征提取的结构示意图;

图4为本发明实施例的三位卷积模块层的结构示意图;

图5为本发明实施例的训练框架的结构示意图;

图6为本发明实施例的更新缓存队列的结构示意图;

图7为本发明实施例提供的端到端的无人驾驶决策系统的结构示意图。

具体实施方式

为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。

如图1所示,本发明实施例提供的一种端到端的无人驾驶决策方法,包括以下步骤:

s101、采集行驶图像和车辆行驶过程中的驾驶决策数据,所述车辆行驶图像包括训练图像和决策图像。

在该步骤中,可使用安装在车辆上拍摄车辆前方区域的车载摄像头进行车辆行驶图像的采集,行驶图像的采集可根据实际需要进行。采集的驾驶决策数据可包括方向盘转角、速度等,可通过车辆本身的can总线或者外部传感器进行获取。由于车辆行驶图像的采集频率通常小于驾驶决策数据的采集速率,因此,可以对获取的熟练驾驶员的驾驶决策数据使用等间距采样的方式获取,即在同等时间内,驾驶决策数据的采集帧率除以行驶图像的采集帧率取整,设为k,则第nk组驾驶决策数据对应于第n组图片数据,即车载摄像头拍摄的图片。此外,每帧图像对应的驾驶决策数据,也可以通过对图像和驾驶决策数据添加时间戳,以每帧图像时间戳对应的最近时间戳的驾驶决策数据作为该帧图像对应的驾驶决策数据。

s102、将采集的车辆行驶图像进行预处理,得到低层特征图像,所述低层特征图像包括梯度图像和光流图像。

在该步骤中,梯度图像可使用边缘梯度算子进行获取,而光流图像使用稠密光流算法获取。考虑到由于摄像头可能导致图像透视变形,使得图像各方向的尺度不同,因此将梯度图像和光流图像分别分为了x、y两个方向的图像,最终得到共4种低层特征图像。由于每一帧光流图像需要两帧原始图像才能获取,因此,若每次用于决策的车辆行驶图像为t帧,则得到的x、y方向的光流图像分别为t-1帧,而x、y方向的梯度图像分别为t帧。

s103、构建多路时空决策网络,所述网络以没有预处理的车辆行驶图像和所得到的低层特征图像作为输入,使用多个通路从输入的图像中提取高层时空特征,并将提取的高层时空特征进行融合,得到用于决策的融合特征;其中,所述通路具有由四个三维卷积模块堆叠而成的网络结构,所述三维卷积模块包括三维卷积层、批量归一化层及激活层。

在该步骤中,本发明实施例构建的多路时空决策网络包括输入层、提取层和输出层,其中,输入层输入的是没有预处理的车辆行驶图像(原始图像)及低层特征图像,提取层用于从输入层中提取高层时空特征进行决策,其结构如图2所示,输出层为驾驶决策变量。

在本发明实施例中,可使用多个通路的深度网络获取高层时空特征,将这些高层时空特征进行融合并使用融合后的特征进行决策。对于每种输入图像,分别使用一个通路进行处理,提取出高层特征。每一个通路都具有相同的网络结构,如图3所示,其由四个三维卷积模块堆叠而成。通路中使用的三维卷积模块由三维卷积层、批量归一化层及激活层组成,如图4所示。

三维卷积模块中的三维卷积层是通常使用的图像二维卷积在时间维度上的扩展,其计算公式为:

其中,w表示当前卷积层对应的卷积核里的权重,v是当前卷积层对应的特征图里的特征值,bij是当前卷积层中的第i行和j列对应的偏置,x、y、t分别表示当前卷积层对应的三个方向,i、j分别表示当前特征图里的行和列,m代表当前层特征图的数量,也等于上一层卷积核的个数,p、q、r分别表示卷积核三个方向的大小。

本发明实施例使用的三维卷积层使用大小为p*q*r,在一示例中,为5*5*3像素的卷积核进行卷积,这样不光在空间上卷积,还同时在时间上进行卷积,从而可以同时获取多帧车辆行驶图像中所包含的时空信息。通过实验设定相应的步长可以改变每个维度的尺寸,实现减小运算量的效果。在本发明实施例中,可通过5个三维卷积层进堆叠,即各个三维卷积层相互串联起来,中间加池化层和激活层,这样,虽然网络较低的层中的三维卷积只能获取较局部的时空信息,但是本发明实施例也可通过更多个三维卷积层的堆叠可以逐步获取全局的时空信息。

三维卷积层中的批量归一化层能加快训练速度,提高训练稳定性并通过减小过拟合,在一定程度上提升网络效果。在每一层三维卷积之后都有一个归一化层。批量归一化层在训练时对每一批用于训练的训练数据(包括没有预处理的训练图像和处理后得到的低层特征图像)进行归一化,其公式为:

其中,μb和分别为该批训练数据对批量归一化层的输入的均值和方差;xi表示每批输入中的第i个输入,ε是常数,在一示例中,可为5*10-5,用于保证数值稳定性而添加的微小常数,可根据实际情况来确定;γ和β分别表示来缩放和平移xi的两个参数,yi表示处理之后的最终结果。

在使用训练好的网络进行决策时,由于此时的输入数据,即车载摄像头实时拍摄的图片不是批量输入的,因此使用的均值和方差如下所示:

其中,x为输入,etest[x]和vartest[x]是表示决策时的均值和方差,eb是指所有批次,即使用训练的所有批次的均值为决策时的均值etest[x],以训练时所有批次方差的无偏估计量为决策时的方差vartest[x],m表示当前特征图的数量。

在激活层使用的是参数修正线性单元(prelu),在每一个归一化层之后都有一个激活层,激活层使用如下公式对网络参数进行修正:

其中,σprelu(x)为对特征图做更新的映射函数。α表示激活函数的参数,在一示例中,为0.5;x表示特征图上的每一个特征值。这样的激活层避免了梯度消失,可使得网络更易收敛和训练。

当每个通路分别提取到高层特征之后,需要将这些不同的高层特征融合为一个融合时空特征。在本发明实施例中,将提取的高层时空特征进行融合,得到用于决策的融合特征可包括:

(1)使用如下公式进行融合:

其中,ffusion是融合后的特征,fi和wi分别是第i种高层特征及其对应的权重矩阵,权重矩阵通过下述方式确定:通过训练直到损失函数减小到某一值,则视为完美的权重矩阵,在本发明实施例中,损失函数为标准方向盘角度和预测方向盘角度之差,在一示例中,在损失函数减小到0.5时,可视为完美的权重矩阵。

(2)使用全连接将融合后的特征转换为要进行决策的驾驶决策量:y={y1,y2,k,yn,l,yn}=woutgffusion,

其中,yi表示第i个决策的值,wout为输出层,即最后一层的权重矩阵,该层的权重矩阵与前述类似,可通过训练损失函数减小到某一值例如0.5来确定,k驾驶决策数据的采集帧率除以行驶图像的采集帧率取整得到的值,l误差函数为平均平方误差,g为重力加速度。

s104、使用所述训练图像作为输入,该输入的图像对应的驾驶决策数据为标签对所构建的多路时空决策网络进行训练,得到用于决策的网络参数,所述网络参数表征三维卷积层中的每个卷积核里的权重

该步骤可具体包括:

步骤一:将每批输入的训练样本及对应的预处理后的低层特征图像送入所述多路时空决策网络中;

步骤二:将网络输出的决策数据的值与每个样本对应的驾驶决策数据的值进行误差处理,得到两者之间的误差值,利用得到的误差值进行梯度反向传播,更新网络参数,直到网络收敛。

具体地,该步骤中,使用步骤s101中采集到的车辆行驶图像为输入,图像对应的熟练驾驶员的驾驶决策数据为标签对构建的多路时空决策网络进行训练。训练框架如图5所示。训练采用批量梯度下降算法进行,每一批输入为n个输入样本,每个输入样本为多帧车辆行驶图像,且每个输入样本包含帧数都为t,将这些样本及对应的预处理后的低层特征图像送入多路时空决策网络中。每个样本对应的标签为样本中第t帧图像所对应的熟练驾驶员驾驶决策数据,将网络输出的决策数据的值与对应的熟练驾驶员决策的值进行误差计算,通过误差进行梯度反向传播,更新网络参数,直到网络收敛,即损失函数达到某一特定的值,本实施例中为0.75。本发明实施例使用的误差函数为平均平方误差l:

其中yn为网络输出的决策值,为对应的熟练驾驶员采用的决策值。

s105、利用所述决策图像,使用经训练后的多路时空决策网络进行无人驾驶决策,得到决策结果

该步骤可具体包括:

(1)构建与所述训练图像的帧数相同的缓存队列;

(2)将所述决策图像送入所述缓存队列中,当所述缓存队列存满后,将队列中存储的图像进行预处理得到对应的低层特征图像;

(3)将队列中存储的图像和对应的低层特征图像输入经训练后的多路时空决策网络中,得到决策结果。

具体地,按照步骤s103构建多路时空决策网络,并加载步骤s104中训练后得到的网络参数。进行决策时,先建立一个缓存队列,其大小为t,与用于训练网络的样本帧数相同,将采集到的无人车行驶图像送入队列,当队列满后使用队列中存储的t帧图像进行决策,在有新无人车行驶图像时更新缓存队列,队列中队首图像出队列,新图像放入队尾,如图6所示。将用于决策的缓存队列中的图像按照步骤s102进行预处理,将原始图像和预处理后的低层特征图像输入加载了训练后参数的多路时空决策网络,即可获得决策结果。

基于同一发明构思,本发明实施例还提供了一种端到端的无人驾驶决策系统,由于该系统所解决问题的原理与前述的方法相似,因此该系统的实施可以参见前述方法的实施,重复之处不再赘述。

如图7所示,本发明实施例提供的端到端的无人驾驶决策系统包括:

采集模块201,用于采集车辆行驶图像和车辆行驶过程中的驾驶决策数据,所述车辆行驶图像包括训练图像和决策图像;

图像处理模块202,用于将所述采集模块201采集的车辆行驶图像进行预处理,得到低层特征图像,所述低层特征图像包括梯度图像和光流图像;

网络构建模块203,用于构建多路时空决策网络,所述网络以没有预处理的训练图像和所得到的低层特征图像作为输入,使用多个通路从输入的图像中提取高层时空特征,并将提取的高层时空特征进行融合,得到用于决策的驾驶决策量;其中,所述通路具有由四个三维卷积模块堆叠而成的网络结构,所述三维卷积模块包括三维卷积层、批量归一化层及激活层;

网络训练模块204,用于使用所述训练图像作为输入,该输入的图像对应的驾驶决策数据为标签对所构建的多路时空决策网络进行训练,得到用于决策的网络参数,所述网络参数表征三维卷积层中的每个卷积核里的权重;

决策模块205,用于利用所述决策图像,使用经训练后的多路时空决策网络进行无人驾驶决策,得到决策结果。

进一步地,所述三维卷积层的计算公式为:

其中,w表示当前卷积层对应的卷积核里的权重,v是当前卷积层对应的特征图里的特征值,bij是当前卷积层中的第i行和j列对应的偏置,x、y、t分别表示当前卷积层对应的三个方向,i、j分别表示当前特征图里的行和列,m代表当前层特征图的数量,p、q、r分别表示卷积核三个方向的大小。

进一步地,所述批量归一化层使用如下公式对训练数据进行归一化:

其中,μb和分别为该批训练数据对批量归一化层的输入的均值和方差;xi表示每批输入中的第i个输入,ε是常数,γ和β分别表示来缩放和平移xi的两个参数,yi表示处理之后的最终结果。

进一步地,所述激活层使用如下公式对网络参数进行修正:

其中,α表示激活函数的参数,x表示特征图上的每一个特征值。

进一步地,所述将提取的高层时空特征进行融合,得到用于决策的驾驶决策量包括:

使用如下公式进行融合:

其中,ffusion是融合后的特征,fi和wi分别是第i种高层特征及其对应的权重矩阵;

使用如下公式将融合后的特征转换为要进行决策的驾驶决策量:y={y1,y2,k,yn,l,yn}=woutgffusion,

其中,yi表示第i个决策的值,wout为输出层的权重矩阵。

进一步地,所述网络训练模块204具体用于:

将每批输入的训练样本及对应的预处理后的低层特征图像送入所述多路时空决策网络中;

将网络输出的决策数据的值与每个样本对应的驾驶决策数据的值进行误差处理,得到两者之间的误差值,利用得到的误差值进行梯度反向传播,更新网络参数,直到网络收敛。

进一步地,所述决策模块205具体用于:

构建与所述训练图像的帧数相同的缓存队列;

将所述决策图像送入所述缓存队列中,当所述缓存队列存满后,将队列中存储的图像进行预处理得到对应的低层特征图像;

上述各模块的功能可对应于前述方法中的相应处理步骤,在此不再赘述。

综上,本发明实施例提供的端到端的无人驾驶决策方法和系统,使用了端到端的决策方法,比起先前使用目标检测、语义分割等方法感知环境,再进行决策的非端到端方法更加简便;其次,该系统及方法考虑到车辆行驶是一种动态过程,使用了三维卷积获取时空信息,并且使用了多种低层特征,能获取更多有效信息,提升决策的有效性;最后,该系统及方法使用熟练驾驶员的驾驶决策数据进行学习,能实现拟人化驾驶决策。

以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

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