一种基于摄像头的车辆定位、建图的方法和装置与流程

文档序号:18454855发布日期:2019-08-17 01:31阅读:315来源:国知局
一种基于摄像头的车辆定位、建图的方法和装置与流程

本发明涉及自动驾驶技术领域,具体涉及一种基于车载环视系统的车辆定位方法及车载终端。



背景技术:

在自动驾驶导航过程中,需要对车辆位置进行实时定位,当前市面上提供的车辆实时定位方案有:基于卫星导航系统的车辆定位方案。利用卫星导航系统给出的卫星定位信息,结合惯性测量单元等传感器的测量数据,可以得到较为准确的车辆定位位置。

然而,在实践中发现,在上述基于卫星导航的车辆定位方案中,当车辆驶入地下车库等特殊环境时,难以接收到卫星定位信号;并且,如果只依靠惯性测量单元的测量数据进行定位计算,容易产生累积误差,此时车辆定位的精度较低,难以满足自动驾驶对定位精度的要求。



技术实现要素:

本发明实施例公开了一种基于车载环视系统的车辆定位方法及车载终端,能够提高自动驾驶时车辆定位的精度。

本发明实施例第一方面公开一种基于车载环视系统的车辆定位方法,其特征在于,包括:从车辆的多个摄像头在当前时刻拍摄到的多张目标图像中识别出预设的视觉特征;

从自动驾驶导航电子地图中识别出与所述视觉特征相匹配的目标特征;根据所述目标特征在所述自动驾驶导航电子地图中的位置以及所述视觉特征在所述目标图像中的位置确定所述车辆在当前时刻的位姿;

其中,所述从车辆的多个摄像头在当前时刻拍摄到的多张目标图像中识别出预设的视觉特征,包括:

获取所述多个摄像头在当前时刻拍摄到的多张目标图像;

对所述多张目标图像进行拼接,得到俯视拼接图;

将所述俯视拼接图输入至语义特征检测模型,并基于所述语义特征检测模型的输出结果,确定所述俯视拼接图中的视觉特征;

基于所述俯视感知图进行定位,从而确定关键帧;

根据所述关键帧生成地图点,从而形成局部建图;

该方法还包括会根据观测的情况和空间关系来判定某一时刻的俯视感知图是否为所述关键帧,根据空间关系判定的公式如下:

||pk-pi||+λ||θk-θi||>δ

在上式中,pk表示在k时刻车辆中心的位置,pi表示在i时刻车辆中心的位置;在降维的2d地图中,位置的定义是θk表示车辆在k时刻的航向角,θi表示车辆在i时刻的航向角,λ是一个参数值控制位置部分和航向角部分的权重,δ则是设定的阈值。

作为一种可选的实施方式,在本发明实施例第一方面中,所述语义特征检测模型为采用标注有所述视觉特征的样本图像作为模型输入训练得到的神经网络模型。

作为一种可选的实施方式,在本发明实施例第一方面中,所述根据所述目标特征在所述自动驾驶导航电子地图中的位置、所述视觉特征在所述目标图像中的位置确定所述车辆在当前时刻的位姿,包括:

根据估计位姿的取值以及所述视觉特征在所述目标图像中的位置计算所述视觉特征映射至所述自动驾驶导航电子地图中的映射位置;

计算所述视觉特征的所述映射位置与所述目标特征在所述自动驾驶导航电子地图中的实际位置之间的第一误差;

判断所述第一误差是否小于指定阈值;

当所述第一误差大于或等于所述指定阈值时,调整所述估计位姿的取值,并执行所述根据估计位姿的取值以及所述视觉特征在所述目标图像中的位置计算所述视觉特征映射至所述自动驾驶导航电子地图中的映射位置;

当所述第一误差小于所述指定阈值时,根据所述估计位姿的当前取值确定所述车辆在当前时刻的位姿;

或者,所述根据所述目标特征在所述自动驾驶导航电子地图中的位置、所述视觉特征在所述目标图像中的位置确定所述车辆在当前时刻的位姿,包括:

根据估计位姿的取值以及所述目标特征在所述自动驾驶导航电子地图中的位置计算所述目标特征投影至所述目标图像中的投影位置;

计算所述目标特征的所述投影位置与所述视觉特征在所述目标图像中的实际位置之间的第二误差;

判断所述第二误差是否小于指定阈值;

当所述第二误差大于或等于所述指定阈值时,调整所述估计位姿的取值,并执行所述根据估计位姿的取值以及所述目标特征在所述自动驾驶导航电子地图中的位置计算所述目标特征投影至所述目标图像中的投影位置;

当所述第二误差小于所述指定阈值时,根据所述估计位姿的当前取值确定所述车辆在当前时刻的位姿。

作为一种可选的实施方式,在本发明实施例第一方面中,在所述根据估计位姿的取值以及所述视觉特征在所述目标图像中的位置计算所述视觉特征映射至所述自动驾驶导航电子地图中的映射位置之前,所述方法还包括:

以所述车辆在上一时刻的位姿为基准,结合运动模型计算所述车辆在所述当前时刻的预估位姿,并执行所述根据估计位姿的取值以及所述视觉特征在所述目标图像中的位置计算所述视觉特征映射至所述自动驾驶导航电子地图中的映射位置;所述上一时刻为在时间上在所述当前时刻之前的时刻,所述运动模型由所述车辆的惯性测量单元和/或轮速计采集的数据确定得到;

以及,所述根据估计位姿的取值以及所述视觉特征在所述目标图像中的位置计算所述视觉特征映射至所述自动驾驶导航电子地图中的映射位置,包括:

以所述预估位姿的取值作为所述估计位姿的初值;

根据估计位姿的当前取值以及所述视觉特征在所述目标图像中的位置计算所述视觉特征映射至所述自动驾驶导航电子地图中的映射位置;

以及,所述根据估计位姿的取值以及所述目标特征在所述自动驾驶导航电子地图中的位置计算所述目标特征投影至所述目标图像中的投影位置,包括:

以所述预估位姿的取值作为所述估计位姿的初值;

根据估计位姿的当前取值以及所述目标特征在所述自动驾驶导航电子地图中的位置计算所述目标特征投影至所述目标图像中的投影位置。

作为一种可选的实施方式,在本发明实施例第一方面中,所述视觉特征至少包括:车道线、库位线、库位点、车道箭头中的一种或多种。

本发明实施例第二方面公开一种车载终端,包括:

一种车载终端,其特征在于,包括:

识别单元,用于从车辆的多个摄像头在当前时刻拍摄到的多张目标图像中识别出预设的视觉特征;

匹配单元,用于从自动驾驶导航电子地图中识别出与所述视觉特征相匹配的目标特征;

确定单元,用于根据所述目标特征在所述自动驾驶导航电子地图中的位置以及所述视觉特征在所述目标图像中的位置确定所述车辆在当前时刻的位姿;

其中所述识别单元包括:

获取子单元,用于获取所述多个摄像头在当前时刻拍摄到的多张目标图像;

拼接子单元,用于对所述多张目标图像进行拼接,得到俯视拼接图;

识别子单元,用于将所述俯视拼接图输入至语义特征检测模型,并基于所述语义特征检测模型的输出结果,确定所述俯视拼接图中的视觉特征;该车载终端还包括判断子单元,所述判断子单元还包括根据观测的情况和空间关系来判定某一时刻的俯视感知图是否为所述关键帧,根据空间关系判定的公式如下:

||pk-pi||+λ||θk-θi||>δ

在上式中,pk表示在k时刻车辆中心的位置,pi表示在i时刻车辆中心的位置;在降维的2d地图中,位置的定义是θk表示车辆在k时刻的航向角,θi表示车辆在i时刻的航向角,λ是一个参数值控制位置部分和航向角部分的权重,δ则是设定的阈值。

作为一种可选的实施方式,在本发明实施例第二方面中,所述确定单元,包括:

第一计算子单元,用于根据估计位姿的取值以及所述视觉特征在所述目标图像中的位置计算所述视觉特征映射至所述自动驾驶导航电子地图中的映射位置;或者,根据估计位姿的取值以及所述目标特征在所述自动驾驶导航电子地图中的位置计算所述目标特征投影至所述目标图像中的投影位置;

第二计算子单元,用于计算所述视觉特征的所述映射位置与所述目标特征在所述自动驾驶导航电子地图中的实际位置之间的第一误差;或者,计算所述目标特征的所述投影位置与所述视觉特征在所述目标图像中的实际位置之间的第二误差;

判断子单元,用于判断所述第一误差或者所述第二误差是否小于指定阈值;

调整子单元,用于在所述判断子单元判断出所述第一误差大于或等于所述指定阈值时,调整所述估计位姿的取值,并触发所述第一计算子单元执行所述根据估计位姿的取值以及所述视觉特征在所述目标图像中的位置计算所述视觉特征映射至所述自动驾驶导航电子地图中的映射位置的操作;或者,在所述判断子单元判断出所述第二误差大于或等于所述指定阈值时,调整所述估计位姿的取值,并触发所述第一计算子单元执行所述根据估计位姿的取值以及所述目标特征在所述自动驾驶导航电子地图中的位置计算所述目标特征投影至所述目标图像中的投影位置的操作;

确定子单元,用于在所述判断子单元判断出所述第一误差或者所述第二误差小于所述指定阈值时,根据所述估计位姿的当前取值确定所述车辆在当前时刻的位姿。

作为一种可选的实施方式,在本发明实施例第二方面中,所述语义特征检测模型为采用标注有所述视觉特征的样本图像作为模型输入训练得到的神经网络模型。

作为一种可选的实施方式,在本发明实施例第二方面中,所述确定单元包括:

第一计算子单元,用于根据估计位姿的取值以及所述视觉特征在所述目标图像中的位置计算所述视觉特征映射至所述自动驾驶导航电子地图中的映射位置;或者,根据估计位姿的取值以及所述目标特征在所述自动驾驶导航电子地图中的位置计算所述目标特征投影至所述目标图像中的投影位置;

第二计算子单元,用于计算所述视觉特征的所述映射位置与所述目标特征在所述自动驾驶导航电子地图中的实际位置之间的第一误差;或者,计算所述目标特征的所述投影位置与所述视觉特征在所述目标图像中的实际位置之间的第二误差;

判断子单元,用于判断所述第一误差或者所述第二误差是否小于指定阈值;

调整子单元,用于在所述判断子单元判断出所述第一误差大于或等于所述指定阈值时,调整所述估计位姿的取值,并触发所述第一计算子单元执行所述根据估计位姿的取值以及所述视觉特征在所述目标图像中的位置计算所述视觉特征映射至所述自动驾驶导航电子地图中的映射位置的操作;或者,在所述判断子单元判断出所述第二误差大于或等于所述指定阈值时,调整所述估计位姿的取值,并触发所述第一计算子单元执行所述根据估计位姿的取值以及所述目标特征在所述自动驾驶导航电子地图中的位置计算所述目标特征投影至所述目标图像中的投影位置的操作;

确定子单元,用于在所述判断子单元判断出所述第一误差或者所述第二误差小于所述指定阈值时,根据所述估计位姿的当前取值确定所述车辆在当前时刻的位姿。

作为一种可选的实施方式,在本发明实施例第二方面中,所述车载终端还包括:

位姿计算单元,用于在所述第一计算子单元根据估计位姿的取值以及所述视觉特征在所述目标图像中的位置计算所述视觉特征映射至所述自动驾驶导航电子地图中的映射位置之前,以所述车辆在上一时刻的位姿为基准,结合运动模型计算所述车辆在所述当前时刻的预估位姿;所述上一时刻为在时间上在所述当前时刻之前的时刻,所述运动模型由所述车辆的惯性测量单元和/或轮速计采集的数据确定得到;

以及,所述第一计算子单元,用于根据估计位姿的取值以及所述视觉特征在所述目标图像中的位置计算所述视觉特征映射至所述自动驾驶导航电子地图中的映射位置的方式具体为:

所述第一计算子单元,用于以位姿计算单元计算出的所述预估位姿的取值作为所述估计位姿的初值,并根据所述估计位姿的当前取值以及所述视觉特征在所述目标图像中的位置计算所述视觉特征映射至所述自动驾驶导航电子地图中的映射位置;

所述第一计算子单元,用于根据估计位姿的取值以及所述目标特征在所述自动驾驶导航电子地图中的位置计算所述目标特征投影至所述目标图像中的投影位置的方式具体为:

所述第一计算子单元,用于以所述位姿计算单元计算出的所述预估位姿的取值作为所述估计位姿的初值,并根据所述估计位姿的当前取值以及所述目标特征在所述自动驾驶导航电子地图中的位置计算所述目标特征投影至所述目标图像中的投影位置。

作为一种可选的实施方式,在本发明实施例第二方面中,所述视觉特征至少包括:车道线、库位线、库位点、车道箭头中的一种或多种。

本发明实施例第三方面公开一种车载终端,包括:

存储有可执行程序代码的存储器;

与所述存储器耦合的处理器;

所述处理器调用所述存储器中存储的所述可执行程序代码,执行本发明实施例第一方面公开的任一项方法。

本发明第四方面公开一种计算机可读存储介质,其存储计算机程序,其中,所述计算机程序使得计算机执行本发明实施例第一方面公开的任一项方法。

本发明实施例第五方面公开一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行本发明实施例第一方面公开的任一项方法。

与现有技术相比,本发明的发明点及实现的有益效果:

1、利用多个摄像头组成摄像头的环视系统,可以在当前时刻拍摄到车辆四周的多张目标图像;识别目标图像中的视觉特征,进而从自动驾驶导航电子地图中识别出与视觉特征相匹配的目标特征;结合目标特征在自动驾驶导航电子地图中的位置,以及视觉特征在目标图像中的位置,即可以确定出车辆当前时刻的位姿,从而完成车辆定位。可见,实施本发明实施例,可以在卫星定位信号缺失或者较弱的情况下,只利用摄像头提供的视觉信息,完成车辆定位,从而可以提高自动驾驶时车辆定位的精度。

2、利用多个摄像头组成摄像头的环视系统,根据摄像头环视系统拍摄车辆四周的环境,结合自动驾驶导航电子地图,可以利用环境中的特征在图像中的位置以及这些特征在地图中的位置确定出车辆当前时刻的位姿。实施本发明实施例,可以只利用视觉信息完成车辆定位,并且基于环视的摄像头设置方案,单次图像信息采集即可获得车辆四周的环境信息,从而可以使得车辆定位的精度较高。

3、利用神经网络从俯视拼接图中识别出预设的视觉特征,以利用视觉特征进行定位。相比传统的图像识别算法,采用识别网络识别视觉特征可以使得特征的识别更加准确。先对采集到的目标图像进行拼接,再对俯视拼接图进行视觉特征提取,相比逐张提取的方案,可以加快特征提取的速度。

4、利用惯性测量单元和轮速计的采集数据建立运动模型,结合车辆在上一时刻的位姿预估出车辆在当前时刻的预估位姿,并以预估位姿为初值,迭代调整车辆位姿的取值,直至得到一个精度较高的定位结果,可以进一步提高车辆实时定位的精度。

5、对俯视感知图进行定位追踪,根据观测的情况和特定的空间关系来判定某一时刻的俯视感知图是否为关键帧;根据关键帧生成地图点,并且判断避免同一个地方生成重复的地图点,这是本发明的发明点之一。

6、现有技术中没有发现有识别图像语义特征的,更没有将图像语义特征进行识别后拼接得到拼接图的技术方案。本发明通过识别俯视拼接图中的图像语义特征,以得到俯视感知图,特别是选取车道线、库位线、库位点作为语义特征在现有技术中未曾出现。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例公开的一种基于车载环视系统的车辆定位方法的流程示意图;

图2是本发明实施例公开的另一种基于车载环视系统的车辆定位方法的流程示意图;

图3是本发明实施例公开的另一种基于俯视拼接图的建图方法的流程示意图;

图4是本发明实施例公开的一种停车场的自动驾驶导航电子地图的示例图;

图5是本发明实施例公开的一种车载终端的结构示意图;

图6是本发明实施例公开的另一种车载终端的结构示意图;

图7是本发明实施例公开的另一种车载终端的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,本发明实施例及附图中的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。

本发明实施例公开了一种基于车载环视系统的车辆定位方法及车载终端,能够提高自动驾驶时车辆定位的精度。以下分别进行详细说明。

实施例一

请参阅图1,图1是本发明实施例公开的一种基于车载环视系统的车辆定位方法的流程示意图。其中,图1所描述的基于车载环视系统的车辆定位方法适用于车载电脑、车载工业控制计算机(industrialpersonalcomputer,ipc)等车载终端,本发明实施例不做限定。如图1所示,该基于车载环视系统的车辆定位方法可以包括以下步骤:

101、车载终端从车辆的多个摄像头在当前时刻拍摄到的多张目标图像中识别出预设的视觉特征。

本发明实施例中,车载终端可以与摄像头进行数据传输,摄像头可以按照一定的频率采集图像,并将采集到的图像传输至车载终端,以供车载终端对图像进行处理。此外,上述的多个摄像头具体可以为分别设置于车辆的前、后、左、右四个方向上的摄像头,每个摄像头的取景范围至少包括该摄像头下方的地面。本发明实施例中,在当前时刻,每个摄像头都可以拍摄到至少一张目标图像,多个摄像头一共拍摄到的目标图像的数量至少不低于摄像头的数量。作为一种可选的实施方式,上述的摄像头可以为鱼眼摄像头,鱼眼摄像头的视场(fieldofview,fov)较大,从而可以使得单个鱼眼摄像头拍摄到的目标图像中尽可能多地包括车辆的周边环境,提高目标图像中包含的信息量,这也属于本发明的发明点之一。

本发明实施例中,视觉特征可以为经过经验筛选具有特殊含义并有助于车辆定位的图像语义特征。作为一种可选的实施方式,视觉特征可以为地面上的车道线、库位线、库位点、车道箭头等,本发明实施例不做限定。每张目标图像中可能存在多个视觉特征,也可能不存在视觉特征,因此,本发明实施例采用多张目标图像进行车辆定位,多张目标图像之间可以进行信息互补,提高定位系统的稳定性,这也属于本发明的发明点之一。

此外,车载终端对于每个摄像头拍摄到的每张目标图像,均进行视觉特征的识别。可选的,车载终端识别某一张目标图像中视觉特征的方式具体可以为:车载终端通过深度学习或图像分割等图像识别算法从目标图像中识别出视觉特征,本发明实施例不做限定。

102、车载终端从自动驾驶导航电子地图中识别出与视觉特征相匹配的目标特征。

本发明实施例中,自动驾驶导航电子地图是预先构建的电子地图,特别的,自动驾驶导航电子地图可以为二维图像,并且该地图由多个图像语义特征构建而成。举例来说,请一并参阅图4,图4是本发明实施例公开的一种停车场的自动驾驶导航电子地图,地图中可以包括停车场的车道线、库位线、库位点等特征。

作为一种可选的实施方式,各个图像语义特征在自动驾驶导航电子地图中的位置可以使用基于世界坐标系的绝对坐标进行表示,具体的坐标值可以通过全球卫星定位系统(globalpositioningsystem,gps)测量得出。作为另一种可选的实施方式,各个图像语义特征在自动驾驶导航电子地图中的位置还可以使用相对坐标进行表示,即每个图像语义特征相对于预设的坐标原点的相对位置,该坐标原点可以根据不同的场景设定。举例来说,在构建自动驾驶导航电子地图时,可以将停车场的入口设置为坐标原点,对于每个用于构建自动驾驶导航电子地图的图像语义特征,均测量该图像语义特征相对于停车场入口的相对位置。

本发明实施例中,对于自动驾驶导航电子地图中的某一个图像语义特征,当车辆途经该特征所在位置时,车辆的摄像头可能拍摄到包含该特征的目标图像。因此,车载终端识别与目标图像中的视觉特征相匹配的目标特征时,具体可以使用尺度不变特征变换(scale-invariantfeaturetransform,sift)、加速稳健特征((speededuprobustfeatures,surf)等图像匹配算法从自动驾驶导航电子地图中识别出与目标图像中的视觉特征相匹配的目标特征,具体的匹配算法本发明实施例不做限定。

103、车载终端根据目标特征在自动驾驶导航电子地图中的位置以及视觉特征在目标图像中的位置确定车辆在当前时刻的位姿。

本发明实施例中,车辆在当前时刻的位姿包括车辆在当前时刻的位置和姿态。可以理解的是,如果自动驾驶导航电子地图中各个图像语义特征的位置使用绝对坐标进行表示,那么车辆在当前时刻的位置也相应地使用绝对坐标进行表示;如果自动驾驶导航电子地图中各个图像语义特征的位置使用相对坐标进行标识,那么车辆在当前时刻的位置也相应地使用相对坐标进行表示。

对于自动驾驶导航电子地图中的某一目标特征,与之相匹配的视觉特征实际为该目标特征在摄像头成像平面(即拍摄得到的目标图像)上的投影,具体的投影位置根据摄像头拍摄到目标头像时车辆的位姿确定。因此,可以根据目标特征在自动驾驶导航电子地图中的位置以及视觉特征在目标图像中的位置确定车辆在当前时刻的位姿。根据从目标图像中识别出的多个视觉特征以及每个视觉特征相匹配的目标特征在自动驾驶导航电子地图中的位置,可以计算出车辆在当前时刻的多个位姿,车载终端可以进一步根据车辆在当前时刻的多个位姿,计算出一个在当前时刻车辆最终的位姿。

可见,在图1所描述的方法中,车载终端可以识别多个摄像头拍摄到的多张目标图像中的视觉特征,并且从预先构建的自动驾驶导航电子地图中识别出与上述的视觉特征相匹配的多个目标特征,从而可以根据目标特征在自动驾驶导航电子地图中的位置以及视觉特征在目标图像中的位置确定车辆在当前时刻的位姿,可以在不依赖卫星定位信号的情况下得到精度较高的车辆定位结果。

实施例二

请参阅图2,图2是本发明实施例公开的另一种基于车载环视系统的车辆定位方法。如图2所示,该基于车载环视系统的车辆定位方法可以包括以下步骤:

201、车载终端获取多个摄像头在当前时刻拍摄到的多张目标图像。

202、车载终端对多张目标图像进行拼接,得到俯视拼接图。

本发明实施例中,车载终端按照一定的映射规则,将目标图像投影到地平面上,并根据各个目标图像之间可能存在的重叠区域,对多张目标图像进行拼接,得到包含以车辆为中心360的环境信息的俯视拼接图。

203、车载终端将俯视拼接图输入至语义特征检测模型,并基于该语义特征检测模型的输出结果,确定俯视拼接图中的视觉特征。

本发明实施例中,语义特征检测模型可以为适用于深度学习的神经网络模型,该模型采用标注有视觉特征的样本图像作为模型输入训练得到。

该神经网络模型如下:该网络结构采用encoder-decoder模型,主要包括两个部分:编码(encoder)部分和解码(decoder)部分。

本发明实施例中将拼接好的图像输入至网络中,其中编码部分网络主要通过卷积和池化层提取图像的特征。网络通过有标记大规模样本的训练,调整网络参数使得编码网络准确的语义特征和非语义特征。编码网络通过两次卷积提取特征之后,通过池化进行下采样。通过级联四个两层卷积加一层池化的结构使得编码网络顶层的神经元的感受野能够覆盖本发明示例中的不同尺度的语义元素。

解码网络是与编码网络对称的结构,其中编码网络的池化层改为上采样层。在解码部分中经过四次上采样,将编码抽取的特征放大到原图尺寸,从而实现像素语义分类。上采样是通过反卷积实现的,这种操作能够得到输入数据的大部分信息,但仍会造成部分信息的丢失,因此我们引入了底层的特征来补充解码过程中丢失的细节。这些底层特征主要来自编码网络中不同尺度的卷积层,在同一个尺度上编码网络卷积层提取的特征正好可以与反卷积合并生成更准确度的特征图。网络训练主要采用交叉熵来来衡量网络的预测值与实际值的差异,交叉熵公式如下:

其中y为图像元素的标记值,即图像的一个像素是语义元素还是非语义元素,一般用1表示语义元素,0表示非语义元素;n为图像的像素总数,x为输入,a为神经元的输出a=σ(z),z=∑jwjxj+b,它可以克服网络权值更新过慢的问题。网络模型训练完成之后,在本发明示例实际使用时,网络针对输入图像的每一个像素都进行预测,输出每个像素对应的属性值为0或是1,标记为1的图像元素的连通块即为有意义的语义图像结构,至此实现了图像的语义分割。上述网络结构是针对拼接图像语义特征提取而专门设计的,保证语义特征提取的准确,属于本发明的发明点之一。此外,先对目标图像进行拼接,再从俯视拼接图中提取图像语义特征,而非逐张提取目标图像中的图像语义特征,可以提高图像语义特征的提取效率,也属于本发明的发明点之一。

在一些实施例中,从俯视拼接图中提取图像语义特征,并基于所述语义特征检测模型的输出结果,确定所述俯视拼接图中的视觉特征;基于所述俯视感知图进行定位,从而确定关键帧;根据所述关键帧生成地图点,从而形成局部建图。

在一些实施例中,当一帧被判定为关键帧时,系统会判断关键帧中每一个被识别的像素点是否被建出。如果没有,系统则为其生成一个新的地图点占据地图中的对应位置。每次根据新的关键帧生成地图点的时候都会做此判断避免同一个地方生成重复的地图点。每个地图点会根据连续帧的观测来判定类别是否正确和地图点是否成熟计算类别和是否成熟。举例说明,假设一个地图点在关键帧中被判定为车位线类别,其对应的地图点也被建立。该地图点会计算附近其他帧对于对应位置的观测是否一致,这里一致的定义涵盖两种:一是类别是否一致;二是该地图点的相对位置对应其他6其他帧的观测是否在一定范围内。如果两项都被满足,则该地图点会被判定是成熟的并加入到地图中。

为了更好地理解通过特定特征进行局部地图,本发明实施例公开的另一种由车载终端构建的停车场局部地图示例图。该局部地图中包括库位线、库位点和车道箭头三种图像语义特征。

随着载体在地库中的形式,局部建图是基于视觉或者视觉融合其他传感器的里程计来进行的,则所建立的地图即使能够保证局部的精度,在长远看来也不可避免的会加入累计误差,此时我们可以采用回环检测和全局优化。

本发明实施例公开的另一种基于俯视拼接图的建图方法的流程示意图。该基于俯视拼接图的建图方法包括以下步骤:

在局部建图过程中进行回环检测;

在本发明实施例中,回环检测可以为:当载体两次来到同一个位置时它行驶的轨迹会是一个回环,所以被称之为回环检测。当两次来到同一个位置被检测到时,定位的累计误差也能够被量化,通过全局优化的计算一定程度上消除累计误差的影响。

回环检测成功后进行全局优化。

请参阅图3,图3是本发明实施例公开的一种车载终端的结构示意图。如图3所示,车载终端包括:

获取子单元501,用于获取多个摄像头在同一时刻拍摄到的多张目标图像。

本发明实施例中,图像采集装置可以为摄像头,为了方便描述,如无特殊说明,下文中的摄像头指图像采集装置。上述的多个摄像头包括至少四个分别安装在车辆前、后、左、右四个方向的摄像头,每个摄像头的取景范围至少包括该摄像头的下方地面。安装在上述四个方向的摄像头组成了摄像头的环视方案,从而可以使得利用单次采集得到的目标图像构建出的局部地图包含更多的特征,有利于提高局部地图与全局地图的匹配成功率。此外,环视方案中各个摄像头采集到的数据之间存在一定的冗余,因此,在某一路摄像头失效的情况下,其余摄像头的采集数据可以作为补充,从而可以降低部分摄像头失效对车载终端构建局部地图和定位的影响。

拼接子单元502,用于对获取子单元501获取到的多张目标图像进行拼接,以得到俯视拼接图。

本发明实施例中,如果用于拍摄目标图像的摄像头为上述摄像头,拼接子单元502在对多张目标图像进行拼接之前,还需要对目标图像进行反畸变处理,即按照一定的映射规则,将鱼眼摄像头拍摄到的目标图像投影到地平面上,再对投影完成得到的图像进行拼接。

感知子单元503,用于识别拼接子单元502拼接得到的俯视拼接图中的图像语义特征,以得到俯视感知图。

本发明实施例中,图像语义特征为可以为经过经验筛选,具有特殊含义并有助于车辆定位的语义特征。例如,图像语义特征可以为车道线、停车库位线、库位点、斑马线、车道箭头等,本发明实施例不做限定。

此外,感知子单元503可以通过深度学习或图像分割等图像识别算法从俯视拼接图中识别出图像语义特征。优选的,可以使用适用于深度学习的神经网络模型识别图像语义特征:将车载终端拼接得到的俯视拼接图输入至上述训练好的神经网络模型,基于神经网络模型的识别结果,即可识别出俯视拼接图中的图像语义特征。相较于传统的图像分割技术,通过深度学习的方法从俯视拼接图中提取图像语义特征,可以提高图像语义特征的识别精度。

定位子单元504,用于对感知子单元503获得的俯视感知图进行定位,从而确定关键帧。

在本发明实施例中,开始建图时,系统将设定一个全局坐标系并基于俯视拼接图对车辆的位置进行追踪,得到的各个时刻的坐标对应俯视图会用来建图。系统会根据观测的情况和空间关系来判定某一时刻的俯视感知图是否为关键帧,根据空间关系的公式如下:

||pk-pi||+λ||θk-θi||>δ

在上式子中,pk表示在k时刻车辆中心的位置,pi表示在i时刻车辆中心的位置;在降维的2d地图中,位置的定义是θk表示车辆在k时刻的航向角,θi表示车辆在i时刻的航向角,λ是一个参数值控制位置部分和航向角部分的权重,δ则是一个设定的阈值。

作为一种可选的实施方式,在观测足够的情况下,当当前帧和最近关键帧的距离和角度差异到一个阈值时,该帧会被当作关键帧。

此外,作为一种可选的实施方式,在上述的步骤104中,除了基于俯视拼接图的定位以外,定位方面还可以融合环视vo(所谓环视vo就是在获得拼接图之前,我们有四路相机的原始图像,基于几个相机的原始图像做的visualodometry)、环视vio(visualinertialodometry)、环视vio和轮速等来提高局部定位的一个准确性。

构建子单元505,用于根据定位子单元404的关键帧生成地图点,从而形成局部建图。

在本发明实施例中,当一帧被判定为关键帧时,系统会判断每一个被识别的像素点是否被建出。如果没有,系统则为其生成一个新的地图点占据地图中的对应位置。每次根据新的关键帧生成地图点的时候都会做此判断避免同一个地方生成重复的地图点。每个地图点会根据连续帧的观测来判定类别是否正确和地图点是否成熟。举例说明,假设一个地图点在关键帧中被判定为车位线类别,其对应的地图点也被建立。该地图点会计算附近其他帧对于对应位置的观测是否一致,这里一致的定义涵盖两种:一是类别是否一致;二是该地图点的相对位置对应其他帧的观测是否在一定范围内。如果两项都被满足,则该地图点会被判定是成熟的并加入到地图中。

204、车载终端从自动驾驶导航电子地图中识别出与视觉特征相匹配的目标特征。

205、车载终端以车辆在上一时刻的位姿为基准,结合运动模型计算车辆在当前时刻的预估位姿。

本发明实施例中,车载终端可以根据一定的频率定时计算车辆的定位位姿,上述的运动模型可以由车辆的惯性测量单元(inertialmeasurementunit,imu)和/或轮速计采集的数据确定得到。六轴惯性测量单元可以测量车辆的三轴加速度和角速率,轮速计可以测量车辆的车轮转速;根据车辆上一时刻的位姿,利用惯性测量单元和/或轮速计的测量数据对时间进行积分,可以计算出车辆在当前时刻的预估位姿。实施上述的实施方式,本发明构建了一个基于imu数据和/或论速计数据的运动模型。与匀速模型(即相邻两个时刻车辆的相对运动速度相同)相比,该运动模型的精度高于匀速模型的精度,可以更好地表征车辆实际的运动情况。然而,由于积分的误差会随着时间的增加而逐渐积累为了进一步提高最终的车辆定位位姿的精度,本发明可以根据由上述的运动模型计算出的预估位姿确定出车辆定位位姿的估计范围,从而在该范围内进一步确定出精度较高的定位位姿。这也属于本发明的发明点之一。

206、车载终端以上述的预估位姿的取值作为估计位姿的初值。

207、车载终端根据估计位姿的当前取值以及上述的视觉特征在目标图像中的位置计算视觉特征映射至自动驾驶导航电子地图中的映射位置。

本发明实施例中,当车载终端首次计算视觉特征的映射位置时,使用步骤205确定出的预估位姿的取值作为估计位姿的初值;当车辆终端执行下述的步骤209判断出映射位置和实际位置之间的误差大于或等于指定阈值,并且调整了估计位姿的取值之后,车载终端执行步骤207使用的估计位姿的当前取值为调整之后的值。在另一些可能的实施例中,车载终端可以使用任意的取值作为估计位姿的初值。

208、车载终端计算视觉特征的映射位置与目标特征在自动驾驶导航电子地图中的实际位置之间的第一误差。

209、车载终端判断该第一误差是否小于指定阈值,如果是,执行步骤210,如果否,调整估计位姿的取值并继续执行步骤207。

本发明实施例中,当误差小于指定阈值时,可以认为该误差是可以被接受的,此时定位的精度较高。

210、车载终端根据估计位姿的当前取值确定车辆在当前时刻的位姿。

本发明实施例中,执行上述的步骤206~步骤209,车载终端可以根据目标特征在自动驾驶导航电子地图中的位置、视觉特征在目标图像中的位置确定车辆在当前时刻的位姿,具体地可以使用步骤204确定出的预估位姿的取值作为车辆在i时刻的位姿信息pi的初值,并不断迭代调整pi的取值,直至视觉特征在地图中的映射位置与目标特征的实际位置之间的误差最小,并将误差最小时pi的取值确定为车辆在当前时刻的位姿。

本发明实施例中,作为另一种可选的实施方式,上述的步骤207~步骤209可以替换成以下步骤:

车载终端根据估计位姿的取值以及所述目标特征在所述自动驾驶导航电子地图中的位置计算所述目标特征投影至所述目标图像中的投影位置;

车载终端计算目标特征的投影位置与视觉特征在目标图像中的实际位置之间的第二误差;

车载终端判断第二误差是否小于指定阈值,如果是,执行步骤210,如果否,调整估计位姿的取值并继续执行根据估计位姿的取值以及所述目标特征在所述自动驾驶导航电子地图中的位置计算所述目标特征投影至所述目标图像中的投影位置的步骤。

上述的步骤具体可以表述为以下的数学模型:

pi=argmin(‖xij-f(pi,aj)‖);

其中,pi为i时刻车辆的位姿信息,aj为第j个目标特征在自动驾驶电子导航地图中的位置,xij为与上述的第j个目标特征相匹配的视觉特征在目标图像中的位置,f(,)为投影方程,用于将aj投影到pi的成像平面,使其投影结果成为和xij一样形式的表达,从而能得到估计位姿的当前取值映射的观测和实际观测的误差,通过非线性优化的方式优化摄像头位姿(及车辆位姿)和观测来迭代地降低误差,以求得最大似然的位姿。也就是说,在本发明实施例中,还可以使用步骤204确定出的预估位姿的取值作为车辆在i时刻的位姿信息pi的初值,并不断迭代调整pi的取值,直至目标特征在图像中的投影位置与视觉特征的实际位置之间的误差最小,并将误差最小时pi的取值确定为车辆在当前时刻的位姿。结合上述的数据模型可以看出,本发明实施例在确定出定位位姿的估计范围之后,进一步采用数值优化的算法确定出精度较高的车辆定位位姿,也属于本发明的发明点之一。

可见,在图2所描述的方法中,车载终端可以使用经过训练的神经网络模型从俯视拼接图中识别出视觉特征,可以快速准确的从图像中提取出预设的视觉特征。进一步地,车载终端还可以根据惯性测量单元和/或轮速计的测量数据建立运动模型,结合运动模型计算出车辆当前时刻的预估位姿,并将预估位姿的取值作为估计位姿的初值,通过不断迭代调整估计位姿的取值,最终确定出精度较高的车辆定位位姿。

实施例三

请参阅图5,图5是本发明实施例公开的一种车载终端的结构示意图。如图5所示,该车载终端可以包括:

识别单元401,用于从车辆的多个摄像头在当前时刻拍摄到的多张目标图像中识别出预设的视觉特征。

本发明实施例中,上述的多个摄像头具体可以为分别设置于车辆的前、后、左、右四个方向上的摄像头,每个摄像头的取景范围至少包括该摄像头下方的地面。视觉特征可以为经过经验筛选具有特殊含义并有助于车辆定位的图像语义特征。作为一种可选的实施方式,视觉特征可以为地面上的车道线、库位线、库位点、车道箭头等,本发明实施例不做限定。每张目标图像中可能存在多个视觉特征,也可能不存在视觉特征,因此,本发明实施例采用多张目标图像进行车辆定位,多张目标图像之间可以进行信息互补,提高定位系统的稳定性。可选的,识别单元401可以通过深度学习或图像分割等图像识别算法从目标图像中识别出视觉特征。

匹配单元402,用于从自动驾驶导航电子地图中识别出与识别单元401识别出的视觉特征相匹配的目标特征。

本发明实施例中,匹配单元402具体可以使用sift、surf等图像匹配算法从驾驶导航电子地图中识别出与目标图像中的视觉特征相匹配的目标特征,具体的匹配算法本发明实施例不做限定。

确定单元403,用于根据匹配单元402识别出的目标特征在自动驾驶导航电子地图中的位置以及识别单元401识别出的视觉特征在目标图像中的位置确定车辆在当前时刻的位姿。

本发明实施例中,根据从目标图像中识别出的多个视觉特征以及每个视觉特征相匹配的目标特征在自动驾驶导航电子地图中的位置,确定单元403可以计算出车辆在当前时刻的多个位姿,进一步地,确定单元403可以根据车辆在当前时刻的多个位姿,计算出一个在当前时刻车辆最终的位姿。

可见,实施图4所示的车载终端,可以识别多个摄像头拍摄到的多张目标图像中的视觉特征,并且从预先构建的自动驾驶导航电子地图中识别出与上述的视觉特征相匹配的多个目标特征,从而可以根据目标特征在自动驾驶导航电子地图中的位置以及视觉特征在目标图像中的位置确定车辆在当前时刻的位姿,可以在不依赖卫星定位信号的情况下得到精度较高的车辆定位结果。

实施例四

请参阅图6,图6是本发明实施例公开的另一种车载终端的结构示意图。其中,图6所示的车载终端是由图5所示的车载终端进行优化得到的。如图6所示,该车载终端中,上述的识别单元401,可以包括:

获取子单元4011,用于获取多个摄像头在当前时刻拍摄到的多张目标图像。

拼接子单元4012,用于对获取子单元4011获取到的多张目标图像进行拼接,得到俯视拼接图。

识别子单元4013,用于将拼接子单元4012得到的俯视拼接图输入至语义特征检测模型,并基于该语义特征检测模型的输出结果,确定俯视拼接图中的视觉特征。其中,上述的语义特征检测模型为采用标注有视觉特征的样本图像作为模型输入训练得到的神经网络模型。该神经网络模型的结构如实施例二所述,本发明实施例不再赘述。

可选的,在本发明实施例中,上述的确定单元403,可以包括:

第一计算子单元4031,用于根据估计位姿的取值以及识别单元401识别出的视觉特征在目标图像中的位置计算视觉特征映射至自动驾驶导航电子地图中的映射位置;或者,根据估计位姿的取值以及匹配单元402识别出的目标特征在自动驾驶导航电子地图中的位置计算目标特征投影至目标图像中的投影位置;

第二计算子单元4032,用于计算第一计算子单元4031确定出的视觉特征的映射位置与匹配单元402识别出的目标特征在自动驾驶导航电子地图中的实际位置之间的第一误差;或者,用于计算计算第一计算子单元4031确定出的目标特征的投影位置与识别单元401识别出的视觉特征在目标图像中的实际位置之间的第二误差;

判断子单元4033,用于判断第二计算子单元计算出的第一误差或者第二误差是否小于指定阈值;

调整子单元4034,用于在判断子单元4033判断出上述的第一误差大于或等于指定阈值时,调整估计位姿的取值,并触发第一计算子单元4031执行根据估计位姿的取值以及视觉特征在目标图像中的位置计算视觉特征映射至自动驾驶导航电子地图中的映射位置的操作;或者,在判断子单元4033判断出上述的第二误差大于或等于指定阈值时,调整估计位姿的取值,并触发第一计算子单元4031执行根据估计位姿的取值以及匹配单元402识别出的目标特征在自动驾驶导航电子地图中的位置计算目标特征投影至目标图像中的投影位置的操作;

确定子单元4035,用于在在判断子单元4033判断出上述的第一误差或者第二误差小于指定阈值时,根据估计位姿的当前取值确定车辆在当前时刻的位姿。

进一步可选的,在图6所示的车载终端中,还可以包括:

位姿计算单元404,用于在第一计算子单元4031根据估计位姿的取值以及视觉特征在目标图像中的位置计算视觉特征映射至自动驾驶导航电子地图中的映射位置之前,以车辆在上一时刻的位姿为基准,结合运动模型计算车辆在当前时刻的预估位姿;其中,上述的上一时刻为在时间上在当前时刻之前的时刻,上述的运动模型由车辆的惯性测量单元和/或轮速计采集的数据确定得到。

本发明实施例中,惯性测量单元可以测量车辆的三轴加速度和角速率,轮速计可以测量车辆的车轮转速,位姿计算单元404具体可以利用惯性测量单元和/或轮速计的测量数据对时间进行积分,计算出车辆在当前时刻的预估位姿。

相应地,上述的第一计算子单元4031用于根据估计位姿的取值以及视觉特征在目标图像中的位置计算视觉特征映射至自动驾驶导航电子地图中的映射位置的方式具体为:

第一计算子单元4031,用于以位姿计算单元404计算出的预估位姿的取值作为估计位姿的初值,并根据估计位姿的当前取值以及视觉特征在目标图像中的位置计算视觉特征映射至自动驾驶导航电子地图中的映射位置;

以及,第一计算子单元4031用于根据估计位姿的取值以及目标特征在自动驾驶导航电子地图中的位置计算目标特征投影至目标图像中的投影位置的方式具体可以为:

第一计算子单元4031,用于以位姿计算单元404计算出的预估位姿的取值作为估计位姿的初值,并根据估计位姿的当前取值以及目标特征在自动驾驶导航电子地图中的位置计算目标特征投影至目标图像中的投影位置。

可见,在本发明实施例中,位姿计算单元404可以计算预估位姿的取值,第一计算子单元4031以预估位姿的取值作为估计位姿的初值,并根据第一计算子单元4031、判断子单元4033和调整子单元4034执行的相应操作,不断迭代调整估计位姿的取值,直至视觉特征的映射位置和目标特征的实际位置之间的误差最小。当误差最小时,确定子单元4035根据估计位姿的当前取值确定车辆在当前时刻的位姿,从而可以计算出一个精度较高的车辆定位位姿。

综上所述,实施图6所示的车载终端,可以使用经过训练的神经网络模型从俯视拼接图中识别出视觉特征,从而快速准确的从图像中提取出预设的视觉特征。进一步地,还可以根据惯性测量单元和/或轮速计的测量数据建立运动模型,结合运动模型计算出车辆当前时刻的预估位姿,并将预估位姿的取值作为估计位姿的初值,通过不断迭代调整估计位姿的取值,最终确定出精度较高的车辆定位位姿。

实施例五

请参阅图7,图7是本发明实施例公开的另一种车载终端的结构示意图。如图7所示,该车载终端可以包括:

存储有可执行程序代码的存储器601;

与存储器601耦合的处理器602;

其中,处理器602调用存储器601中存储的可执行程序代码,执行图1或图2所示的基于车载环视系统的车辆定位方法。

需要说明的是,图7所示的车载终端还可以包括电源、扬声器、屏幕、wi-fi模块、蓝牙模块、传感器等未显示的组件,本实施例不作赘述。

本发明实施例公开一种计算机可读存储介质,其存储计算机程序,其中,该计算机程序使得计算机执行图1或图2所示的基于车载环视系统的车辆定位方法。

本发明实施例公开一种计算机程序产品,该计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,且该计算机程序可操作来使计算机执行图1或图2所示的基于车载环视系统的车辆定位方法。

应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定特征、结构或特性可以以任意适合的方式结合在一个或多个实施例中。本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本发明所必须的。

在本发明的各种实施例中,应理解,上述各过程的序号的大小并不意味着执行顺序的必然先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。

上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物单元,即可位于一个地方,或者也可以分布到多个网络单元上。可根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。

另外,在本发明各实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

上述集成的单元若以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可获取的存储器中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或者部分,可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干请求用以使得一台计算机设备(可以为个人计算机、服务器或者网络设备等,具体可以是计算机设备中的处理器)执行本发明的各个实施例上述方法的部分或全部步骤。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质包括只读存储器(read-onlymemory,rom)、随机存储器(randomaccessmemory,ram)、可编程只读存储器(programmableread-onlymemory,prom)、可擦除可编程只读存储器(erasableprogrammablereadonlymemory,eprom)、一次可编程只读存储器(one-timeprogrammableread-onlymemory,otprom)、电子抹除式可复写只读存储器(electrically-erasableprogrammableread-onlymemory,eeprom)、只读光盘(compactdiscread-onlymemory,cd-rom)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。

以上对本发明实施例公开的一种基于车载环视系统的车辆定位方法及车载终端进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

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