车辆定位方法、装置、可读存储介质和计算机设备与流程

文档序号:20759466发布日期:2020-05-15 17:52阅读:207来源:国知局
车辆定位方法、装置、可读存储介质和计算机设备与流程

本申请涉及自动驾驶技术领域,特别是涉及一种车辆定位方法、装置、计算机可读存储介质和计算机设备。



背景技术:

随着人工智能技术的发展,出现了自动驾驶技术,随着自动驾驶技术在人们生活中的普及,复杂多变的室外环境为自动驾驶的环境感知、导航提出了一系列新的问题,对车辆精准定位的要求越来越高。

传统的车辆定位方案中,通常是采用gps(全球定位系统)进行定位,由于gps高度依赖卫星信号,从而城市环境中的高建筑物和磁场将会影响gps定位的准确性,导致车辆定位的精确低。



技术实现要素:

基于此,有必要针对在现有传感器系统下难以实现目标车辆的精确定位的技术问题,提供一种车辆定位方法、装置、计算机可读存储介质和计算机设备。

一种车辆定位方法,包括:

读取点云地图和目标车辆的实时定位信息;

基于所述点云地图和所述实时定位信息预测所述目标车辆的多个车辆位姿;

获取雷达扫描帧,根据所述雷达扫描帧确定位姿精度条件,根据所述车辆位姿和所述位姿精度条件确定目标车辆位姿;

利用所述目标车辆位姿对所述雷达扫描帧进行转换,得到转换后扫描帧;以及,利用所述目标车辆位姿预估下一扫描帧;

将所述转换后扫描帧和所述下一扫描帧进行叠加,得到组合扫描帧;

基于所述组合扫描帧对所述点云地图进行切割,得到局部点云地图;

将所述局部点云地图与所述雷达扫描帧进行配准,得到配准结果;

当所述配准结果符合预设条件时,将所述目标车辆位姿作为所述目标车辆的当前位姿。

在一个实施例中,所述根据所述雷达扫描帧确定位姿精度条件,根据所述车辆位姿和所述位姿精度条件确定目标车辆位姿,包括:

获取所述雷达扫描帧中雷达扫描点的坐标;获取所述点云地图中与所述雷达扫描点对应的第一激光点的坐标;计算所述雷达扫描点的坐标与所述第一激光点的坐标之间的均方根误差值;根据所述均方根误差值判断所述目标车辆的多个车辆位姿是否满足所述位姿精度条件;若所述车辆位姿满足所述位姿精度条件,则将满足所述位姿精度条件的车辆位姿作为所述目标车辆位姿。

在一个实施例中,所述将满足所述位姿精度条件的车辆位姿作为所述目标车辆位姿之后,所述方法还包括:

实时获取所述目标车辆的车辆位姿变化量;根据所述车辆位姿变化量更新所述目标车辆位姿,得到实时车辆位姿。

在一个实施例中,所述利用所述目标车辆位姿对所述雷达扫描帧进行转换,得到转换后扫描帧;以及,利用所述目标车辆位姿预估下一扫描帧,包括:

根据所述目标车辆位姿和所述雷达扫描帧中雷达扫描点的坐标,计算得到转换后扫描帧;以及,对所述雷达扫描帧进行降采样处理,根据所述目标车辆位姿对降采样后得到的雷达扫描帧预估下一扫描帧。

在一个实施例中,所述基于所述组合扫描帧对所述点云地图进行切割,得到局部点云地图,包括:

将所述组合扫描帧的第二激光点映射于所述点云地图中;在映射后的点云地图中,获取与所述第二激光点对应的投影点;确定所获取的投影点的二维坐标;根据所述二维坐标对所述点云地图进行切割,得到所述局部点云地图。

在一个实施例中,所述将所述局部点云地图和所述雷达扫描帧进行配准,得到配准结果,包括:

获取所述雷达扫描帧中雷达扫描点的坐标;获取所述局部点云地图中投影点的坐标;调整所述雷达扫描点的坐标与所述投影点的坐标,使调整后的所述激光点与所述投影点的坐标的差值最小;将调整后的所述雷达扫描点的坐标与所述投影点的坐标作为配准结果。

在一个实施例中,所述当所述配准结果符合预设条件时,将所述目标车辆位姿作为所述目标车辆的当前位姿,包括:

获取所述目标车辆的里程数据;将所述目标车辆的里程数据代入所述配准结果进行计算,得到误差值;当所述误差值小于预设阈值时,将所述目标车辆位姿作为所述目标车辆的当前位姿。

一种车辆定位装置,所述装置包括:

读取模块,用于读取点云地图和目标车辆的实时定位信息;

车辆位姿模块,用于基于所述点云地图和所述实时定位信息预测所述目标车辆的多个车辆位姿;

雷达扫描帧模块,用于获取雷达扫描帧,根据所述雷达扫描帧确定位姿精度条件,根据所述车辆位姿和所述位姿精度条件确定目标车辆位姿;

转换模块,用于利用所述目标车辆位姿对所述雷达扫描帧进行转换,得到转换后扫描帧;以及,利用所述目标车辆位姿预估下一扫描帧;

组合模块,用于将所述转换后扫描帧和所述下一扫描帧进行叠加,得到组合扫描帧;

切割模块,用于基于所述组合扫描帧对所述点云地图进行切割,得到局部点云地图;

配准模块,用于将所述局部点云地图与所述雷达扫描帧进行配准,得到配准结果;

判断模块,用于当所述配准结果符合预设条件时,将所述目标车辆位姿作为所述目标车辆的当前位姿。

在一个实施例中,雷达扫描帧模块还用于:

获取所述雷达扫描帧中雷达扫描点的坐标;获取所述点云地图中与所述雷达扫描点对应的第一激光点的坐标;计算所述雷达扫描点的坐标与所述第一激光点的坐标之间的均方根误差值;根据所述均方根误差值判断所述目标车辆的多个车辆位姿是否满足所述位姿精度条件;若所述车辆位姿满足所述位姿精度条件,则将满足所述位姿精度条件的车辆位姿作为所述目标车辆位姿。

在一个实施例中,车辆定位装置还包括:

更新模块,用于实时获取所述目标车辆的车辆位姿变化量;根据所述车辆位姿变化量更新所述目标车辆位姿,得到实时车辆位姿。

在一个实施例中,转换模块还用于:

根据所述目标车辆位姿和所述雷达扫描帧中雷达扫描点的坐标,计算得到转换后扫描帧;以及,对所述雷达扫描帧进行降采样处理,根据所述目标车辆位姿对降采样后得到的雷达扫描帧预估下一扫描帧。

在一个实施例中,切割模块还用于:

将所述组合扫描帧的第二激光点映射于所述点云地图中;在映射后的点云地图中,获取与所述第二激光点对应的投影点;确定所获取的投影点的二维坐标;根据所述二维坐标对所述点云地图进行切割,得到所述局部点云地图。

在一个实施例中,配准模块还用于:

获取所述雷达扫描帧中雷达扫描点的坐标;获取所述局部点云地图中投影点的坐标;调整所述雷达扫描点的坐标与所述投影点的坐标,使调整后的所述激光点与所述投影点的坐标的差值最小;将调整后的所述雷达扫描点的坐标与所述投影点的坐标作为配准结果。

在一个实施例中,判断模块还用于:

获取所述目标车辆的里程数据;将所述目标车辆的里程数据代入所述配准结果进行计算,得到误差值;当所述误差值小于预设阈值时,将所述目标车辆位姿作为所述目标车辆的当前位姿。

一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行车辆定位方法的步骤。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行车辆定位方法的步骤。

上述车辆定位方法、装置、计算机可读存储介质和计算机设备,利用读取点云地图和目标车辆的实时定位信息;基于点云地图和实时定位信息预测目标车辆的多个车辆位姿;获取雷达扫描帧,根据雷达扫描帧确定位姿精度条件,根据车辆位姿和位姿精度条件确定目标车辆位姿;利用目标车辆位姿对雷达扫描帧进行转换,得到转换后扫描帧;以及,利用目标车辆位姿预估下一扫描帧;将转换后扫描帧和下一扫描帧进行叠加,得到组合扫描帧;基于组合扫描帧对点云地图进行切割,得到局部点云地图;将局部点云地图与雷达扫描帧进行配准,得到配准结果;当配准结果符合预设条件时,将目标车辆位姿作为目标车辆的当前位姿。通过雷达与gps结合获取目标车辆的车辆位姿,根据目标车辆的车辆位姿对雷达获取的扫描帧进行转换、预测以及二维切割,得到局部点云地图,实现了对目标车辆的精确定位。

附图说明

图1为一个实施例中车辆定位方法的应用环境图;

图2为一个实施例中车辆定位方法的流程示意图;

图3为一个实施例中车辆定位方法的流程示意图;

图4为一个实施例中车辆定位步骤的流程示意图;

图5为一个实施例中车辆定位步骤的流程示意图;

图6为一个实施例中车辆定位步骤的流程示意图;

图7为一个实施例中车辆定位步骤的流程示意图;

图8为一个实施例中车辆定位装置的结构框图;

图9为另一个实施例中车辆定位装置的结构框图;

图10为一个实施例中计算机设备的结构框图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

图1为一个实施例中车辆定位方法的应用环境图。参照图1,该车辆定位方法应用于车辆定位系统。该车辆定位系统包括终端110和服务器120。终端110和服务器120通过网络连接。终端110具体可以是激光雷达、传感器、编码器等中的至少一种。服务器120可以用独立的服务器或者是多个服务器组成的服务器集群来实现。服务器120读取点云地图和目标车辆的实时定位信息;基于点云地图和实时定位信息预测目标车辆的多个车辆位姿;获取雷达扫描帧,根据雷达扫描帧确定位姿精度条件,根据车辆位姿和位姿精度条件确定目标车辆位姿;利用目标车辆位姿对雷达扫描帧进行转换,得到转换后扫描帧;以及,利用目标车辆位姿预估下一扫描帧;将转换后扫描帧和下一扫描帧进行叠加,得到组合扫描帧;基于组合扫描帧对点云地图进行切割,得到局部点云地图;将局部点云地图与雷达扫描帧进行配准,得到配准结果;当配准结果符合预设条件时,将目标车辆位姿作为目标车辆的当前位姿。

如图2所示,在一个实施例中,提供了一种车辆定位方法。本实施例主要以该方法应用于上述图1中的服务器120来举例说明。参照图2,该车辆定位方法具体包括如下步骤:

s202,读取点云地图和目标车辆的实时定位信息。

其中,点云地图是通过测量仪器获取物体表面每个采样点的空间坐标后,得到的采样点的集合,测量仪器可以是激光雷达、立体摄像头、tof(timeofflight,飞行时间)相机等,本发明实施例以激光雷达为例进行阐述。

在一个实施例中,激光雷达由发射系统、接收系统、信息处理等部分组成。激光雷达利用激光对周边环境(如建筑物、道路等采样对象)表面进行密集采样,得到多个激光点(即采样点),将多个激光点的集合进行处理后得到点云地图,点云地图的属性包括几何位置、强度信息,其中,几何位置包括激光点的三维坐标(即激光点在x、y、z轴上的坐标值的组合),强度信息是激光雷达的接收系统采集到的回波强度,强度信息与采样对象的表面材质、粗糙度、入射角方向,以及激光雷达的发射能量、激光波长有关。将多个激光点的集合进行处理后识别出采样对象,如建筑物、树林花台、路面、车辆行驶车道、非车辆行驶车道。

在一个实施例中,获取预先存储在服务器中的点云地图,或通过接收上传的点云地图,其中,预先存储在服务器中或上传的点云地图可以是通过激光雷达、立体摄像头、tof(timeofflight,飞行时间)相机等测量仪器得到的。

在一个实施例中,通过全球定位系统(globalpositioningsystem,gps)、轮速传感器及方向盘转角传感器获取目标车辆的实时定位信息,目标车辆的实时定位信息包括目标车辆的经纬度坐标、车速、航向角、航向角变化率、轮距、轴距等参数。

s204,基于点云地图和实时定位信息预测目标车辆的多个车辆位姿。

在一个实施例中,基于目标车辆的实时信息预测出目标车辆在点云地图中可能位于的分布位置,预测过程包括加载目标车辆的经纬度坐标对应的点云地图;识别出点云地图中的采样对象,采样对象包括建筑物、树林花台、天桥、车辆行驶车道、非车辆行驶车道等;排除非道路区域(如建筑物、树林花台等),在排除非道路区域后的点云地图中根据路面参照物(如建筑物、树林花台等)推断出目标车辆分布位置,得到目标车辆的多个预测分布位置。获取目标车辆的经纬度坐标以及车辆姿态特征,根据目标车辆在k时刻的车速、方向盘转角、方向盘转角变化率、轮距、轴距等参数,预测得到目标车辆的多个车辆位姿。

例如,根据目标车辆的经纬度坐标预测目标车辆在点云地图中对应的第一分布位置,根据点云地图排除第一分布位置中的建筑物、树林花台、非路面等非道路区域,将点云地图中排除非道路区域后的第一分布位置划分为9个预测分布位置。根据目标车辆在k时刻的方向盘转角、轮距、轴距等参数,预测出目标车辆的4个航向角,结合9个预测分布位置,预测得到目标车辆在各个预测分布位置中的4种车辆位姿。

s206,获取雷达扫描帧,根据雷达扫描帧确定位姿精度条件,根据车辆位姿和位姿精度条件确定目标车辆位姿。

在一个实施例中,获取雷达扫描帧,雷达扫描帧是利用激光雷达对物体进行实时采样,获取物体表面每个采样点的空间坐标后,得到的采样点的集合。提取雷达扫描帧中的各雷达扫描点的坐标,加载与雷达扫描帧对应的点云地图,获取与雷达扫描帧对应的点云地图中的激光点的坐标,将雷达扫描帧中的各雷达扫描点的坐标与点云地图中的激光点的坐标进行匹配,即查找点云地图中与雷达扫描点一一对应的激光点,其中,当激光点的坐标与雷达扫描点的坐标之间差值最小时,激光点与雷达扫描点相对应。将与雷达扫描点对应的激光点作为第一激光点,获取第一激光点的坐标。

在一个实施例中,计算雷达扫描点的坐标与第一激光点的坐标之间的均方根误差值,当均方根误差值小于预设阈值时,说明雷达扫描帧与点云地图之间的偏差较小,目标车辆的实时定位信息较准确,基于点云地图和实时定位信息预测得到的目标车辆的多个车辆位姿符合位姿精度条件。

s208,利用目标车辆位姿对雷达扫描帧进行转换,得到转换后扫描帧;以及,利用目标车辆位姿预估下一扫描帧。

在一个实施例中,获取目标车辆从k时刻至k+1时刻的车辆位姿变化量,车辆位姿变化量包括从k时刻至k+1时刻车辆位姿变化的旋转角度与平移角度,根据目标车辆在k时刻的车辆位姿与旋转角度计算车辆位姿的旋转矩阵r矩阵,根据目标车辆在k时刻的车辆位姿与平移角度计算车辆位姿的平移矩阵t矩阵,根据旋转矩阵r矩阵和平移矩阵t矩阵计算目标车辆在k+1时刻的目标车辆位姿矩阵t,t∈r4×4,t为4×4的矩阵。

在一个实施例中,获取雷达扫描帧中各雷达扫描点的三维坐标(x0,y0,z0),将各雷达扫描点的三维坐标(x0,y0,z0)增加一个维度得到4×1维的矩阵(x0,y0,z0,1),将目标车辆位姿矩阵与(x0,y0,z0,1)相乘,得到一个新的坐标(x1,y1,z1,1),将这个新的坐标对应的激光点的集合作为转换后扫描帧。

在一个实施例中,对雷达扫描帧进行降采样处理,将雷达扫描帧沿任意一激光点方向将各雷达扫描点的三维坐标(x0,y0,z0)投射到二维坐标系中,得到对应的二维坐标(i1,j1),将各雷达扫描点对应的二维坐标的集合,作为降采样后的雷达扫描帧。

在一个实施例中,根据目标车辆位姿对降采样后得到的扫描帧进行预估下一扫描帧。以降采样后的雷达扫描帧右下前坐标为原点,水平面互相垂直的轴为x轴与y轴,纵轴为z轴,将降采样后的雷达扫描帧沿水平面互相垂直的轴及纵轴进行旋转切换。x轴、y轴和z轴分别对应俯仰、航向和横滚,根据惯导系统(即载体系到地理系)的转换规则,对降采样后的扫描帧中的激光点进行旋转,旋转顺序依次为横滚、俯仰、航向。利用函数对降采样后的雷达扫描帧中的雷达扫描点的坐标处理,得到新的坐标,这个新的坐标是各雷达扫描点在下一扫描帧中对应的坐标,将新坐标对应的激光点的集合作为预估的下一扫描帧。

s210,将转换后扫描帧和下一扫描帧进行叠加,得到组合扫描帧。

在一个实施例中,将转换后扫描帧中的各激光点和下一扫描帧中的各激光点按照坐标进行组合,将组合后的激光点作为第二激光点,将第二激光点的集合作为组合扫描帧。

s212,基于组合扫描帧对点云地图进行切割,得到局部点云地图。

在一个实施例中,获取组合扫描帧中的各第二激光点的坐标,将组合扫描帧映射于点云地图中,查找映射下点云地图中与第二激光点对应的投影点,其中,将组合扫描帧映射于点云地图,可以是将各第二激光点的三维坐标(x2,y2,z2)基于x轴、y轴方向、中心点(centerx,centery,centerz)映射于点云地图中。

在一个实施例中,将各第二激光点的三维坐标(x2,y2,z2)输入映射转换矩阵其中,vx为第二激光点在x轴方向上的方向向量,vy为第二激光点在y轴方向上的方向向量,vz为法向量,因为ax+by+cz+d=0,取法向量vz=(a,b,c),将映射转换矩阵进行逆矩阵转换,得到各第二激光点的三维坐标(x2,y2,z2)在点云地图中的投影点的二维坐标为(i2,j2)。

在一个实施例中,根据点云地图中的投影点的二维坐标对点云地图进行切割,将切割后的部分点云地图进行组合,得到局部点云地图,将局部点云地图中的x轴与y轴切割为n×n的子区域,当需要显示局部点云地图中某子区域的界面信息时,加载该子区域的界面信息。例如,将局部点云地图中的x轴与y轴切割为1米×1米的方块区域,当需要加载目标车辆右方的地图信息时,以1米×1米的方块区域为基准,进行目标车辆右方的局部点云地图加载与界面信息的显示。

s214,将局部点云地图与雷达扫描帧进行配准,得到配准结果。

在一个实施例中,因为转换雷达扫描帧、预估下一扫描帧、将转换后扫描帧和下一扫描帧进行组合、对组合扫描帧切割等过程中的旋转错位,平移错位等原因,造成得到的局部点云地图中的投影点中会出现部分投影点的坐标不准确。通过将局部点云地图与雷达扫描帧进行配准,调整局部点云地图中坐标不准确的投影点的坐标。

在一个实施例中,选择用于局部点云地图进行配准和雷达扫描帧的坐标系,将雷达扫描帧中各雷达扫描点的坐标与局部点云地图中的各投影点的坐标根据该坐标系进行坐标转换,使得坐标转换后得到的各雷达扫描点的坐标与投影点的坐标与该坐标系相适应。将坐标转换后的各雷达扫描点的坐标与投影点的坐标进行差值计算,根据差值计算的结果调整投影点的坐标值,使得调整后得到的投影点的坐标与其对应的雷达扫描点的坐标的差值最小。将调整后得到的投影点的集合作为配准结果。

s216,当配准结果符合预设条件时,将目标车辆位姿作为目标车辆的当前位姿。

在一个实施例中,获取目标车辆的里程数据,里程数据是衡量目标车辆位姿变化的一个标准,根据里程数据可以计算出目标车辆的移动距离与移动方向。通过获取传感器等硬件设备监测上传的里程计数据,或者根据目标车辆的实时定位信息与目标车辆位姿计算出里程数据。其中,里程数据包括轮式里程数据与视觉里程数据,轮式里程数据是根据目标车辆的车轮的直径与车轮转速,得出目标车辆的移动速度和方向。视觉里程数据是利用摄像机或编码器检测到的连续的图像序列,估算出目标车辆的随时间改变得到的移动距离。

在一个实施例中,根据目标车辆的实时定位信息计算出目标车辆的移动速度与转向速度,根据目标车辆位姿计算出目标车辆的移动方向,将目标车辆的移动速度、转向速度与移动方向进行组合,得到目标车辆的轮式里程数据。

在一个实施例中,将目标车辆的里程数据代入配准结果进行计算,得到目标车辆的计算位姿,将目标车辆的计算位姿与目标车辆位姿进行误差值计算,当误差值小于预设阈值时,说明目标车辆位姿满足预设条件,将目标车辆位姿作为目标车辆的当前位姿。若误差值大于预设阈值时,说明目标车辆位姿不满足预设条件,重新将局部点云地图与雷达扫描帧进行配准。

上述实施例中,利用读取点云地图和目标车辆的实时定位信息;基于点云地图和实时定位信息预测目标车辆的多个车辆位姿;获取雷达扫描帧,根据雷达扫描帧确定位姿精度条件,根据车辆位姿和位姿精度条件确定目标车辆位姿;利用目标车辆位姿对雷达扫描帧进行转换,得到转换后扫描帧;以及,利用目标车辆位姿预估下一扫描帧;将转换后扫描帧和下一扫描帧进行叠加,得到组合扫描帧;基于组合扫描帧对点云地图进行切割,得到局部点云地图;将局部点云地图与雷达扫描帧进行配准,得到配准结果;当配准结果符合预设条件时,将目标车辆位姿作为目标车辆的当前位姿。通过雷达与gps结合获取目标车辆的车辆位姿,根据目标车辆的车辆位姿对雷达获取的扫描帧进行转换、预测以及二维切割,得到局部点云地图,实现了对目标车辆精确定位。

如图3所示,在一个实施例中,s206之后,还包括:

s302,实时获取目标车辆的车辆位姿变化量。

在一个实施例中,激光雷达通过一个旋转的反射镜将激光发射出去,服务器获取发射出去的激光与从物体表面反射光之间的时间差,根据时间差计算雷达的移动距离与移动轨迹。通过传感器获取目标车辆的方向盘转角变化角度、轮距变化值、轴距变化值等参数,计算出传感器的移动距离与移动轨迹。根据雷达的移动距离与移动轨迹与传感器的移动距离与移动轨迹计算出目标车辆从k时刻至k+1时刻的移动距离与移动轨迹,结合目标车辆在k时刻的车辆位姿计算出目标车辆从k时刻至k+1时刻的车辆位姿变化量。

s304,根据车辆位姿变化量更新目标车辆位姿,得到实时车辆位姿。

在一个实施例中,根据目标车辆在k时刻的车辆位姿、目标车辆从k时刻至k+1时刻的车辆位姿变化量,预估目标车辆在k+1时刻的4个航向角,通过全球定位系统(globalpositioningsystem,gps)、轮速及方向盘转角传感器获取目标车辆在k+1时刻的经纬度坐标,预测目标车辆在点云地图中k+1时刻的9个预测分布位置。根据预估的目标车辆在k+1时刻的4个航向角及经纬度坐标,结合9个预测分布位置,预测得到目标车辆在各个预测分布位置中的4种车辆位姿。

上述实施例中,通过实时获取目标车辆的车辆位姿变化量,根据车辆位姿变化量更新目标车辆位姿,得到实时车辆位姿,提高了车辆定位的精确性。

作为一个示例,传统方法中,采用gps进行定位,导致车辆定位的精确低,gps信号丢失后无法进行持续性车辆导航,就上述问题,本发明实施例提出了一种车辆定位方法,如图4,该方法主要包括以下内容:

s402,加载点云地图。

获取预先存储在服务器中的点云地图,或通过接收上传的点云地图,其中,预先存储在服务器中或上传的点云地图可以是通过激光雷达、立体摄像头、tof(timeofflight,飞行时间)相机等测量仪器得到的。

s404,读取目标车辆的实时定位信息。

通过全球定位系统、传感器获取目标车辆的实时定位信息,读取实时定位信息中目标车辆的经纬度坐标、车速、航向角、航向角变化率、轮距、轴距等参数。

s406,基于点云地图和实时定位信息预测目标车辆的多个车辆位姿,将符合位姿精度条件的车辆位姿作为目标车辆位姿。

如图5所示,判断目标车辆的实时定位信息是否准确包括以下内容:

s502,读取点云地图。

s504,读取目标车辆的实时定位信息。

s506,基于点云地图和实时定位信息预测目标车辆的多个车辆位姿。

根据目标车辆的经纬度坐标预测目标车辆在点云地图中对应的第一分布位置,根据点云地图排除第一分布位置中的建筑物、树林花台、非路面等非道路区域,将点云地图中排除非道路区域后的第一分布位置划分为9个预测分布位置。根据目标车辆在k时刻的方向盘转角、轮距、轴距等参数,预测出目标车辆的4个航向角,结合9个预测分布位置,预测得到目标车辆在各个预测分布位置中的4种车辆位姿。

s508,获取雷达扫描帧,根据雷达扫描帧确定位姿精度条件,判断车辆位姿是否满足位姿精度条件。

获取雷达扫描帧,雷达扫描帧是利用激光雷达对物体进行实时采样,获取物体表面每个采样点的空间坐标后,得到的采样点的集合。提取雷达扫描帧中的各雷达扫描点的坐标,加载与雷达扫描帧对应的点云地图,获取与雷达扫描帧对应的点云地图中的激光点的坐标,当激光点的坐标与雷达扫描点的坐标之间差值最小时,激光点与雷达扫描点相对应。将与雷达扫描点对应的激光点作为第一激光点,获取第一激光点的坐标。

计算雷达扫描点的坐标与第一激光点的坐标之间的均方根误差值,当均方根误差值小于预设阈值时,说明雷达扫描帧与点云地图之间的偏差较小,目标车辆的实时定位信息较准确,基于点云地图和实时定位信息预测得到的目标车辆的多个车辆位姿符合位姿精度条件。

s510,若车辆位姿满足位姿精度条件,将符合位姿精度条件的车辆位姿作为目标车辆位姿;若车辆位姿不满足位姿精度条件,则重新执行基于点云地图和实时定位信息预测目标车辆的多个车辆位姿的步骤。

s408,实时获取目标车辆的车辆位姿变化量,根据车辆位姿变化量更新目标车辆位姿。

激光雷达通过一个旋转的反射镜将激光发射出去,服务器获取发射出去的激光与从物体表面反射光之间的时间差,根据时间差计算雷达的移动距离与移动轨迹。通过传感器获取目标车辆的方向盘转角变化角度、轮距变化值、轴距变化值等参数,计算出传感器的移动距离与移动轨迹。根据雷达的移动距离与移动轨迹与传感器的移动距离与移动轨迹计算出目标车辆从k时刻至k+1时刻的移动距离与移动轨迹,结合目标车辆在k时刻的车辆位姿计算出目标车辆从k时刻至k+1时刻的车辆位姿变化量。

根据目标车辆在k时刻的车辆位姿、目标车辆从k时刻至k+1时刻的车辆位姿变化量,预估目标车辆在k+1时刻的4个航向角,通过全球定位系统(globalpositioningsystem,gps)、轮速及方向盘转角传感器获取目标车辆在k+1时刻的经纬度坐标,预测目标车辆在点云地图中k+1时刻的9个预测分布位置。根据预估的目标车辆在k+1时刻的4个航向角及经纬度坐标,结合9个预测分布位置,预测得到目标车辆在各个预测分布位置中的4种车辆位姿。

s410,加载局部点云地图。

如图6所示,加载局部点云地图的步骤包括以下内容:

s602,读取雷达扫描帧。

获取雷达扫描帧中各雷达扫描点的三维坐标(x0,y0,z0)。

s604,利用目标车辆位姿对雷达扫描帧进行转换,得到转换后扫描帧。

获取目标车辆从k时刻至k+1时刻的车辆位姿变化量,车辆位姿变化量包括从k时刻至k+1时刻车辆位姿变化的旋转角度与平移角度,根据目标车辆在k时刻的车辆位姿与旋转角度计算车辆位姿的旋转矩阵r矩阵,根据目标车辆在k时刻的车辆位姿与平移角度计算车辆位姿的平移矩阵t矩阵,根据旋转矩阵r矩阵和平移矩阵t矩阵计算目标车辆在k+1时刻的目标车辆位姿矩阵t,t∈r4×4,t为4×4的矩阵。将各雷达扫描点的三维坐标(x0,y0,z0)增加一个维度得到4×1维的矩阵(x0,y0,z0,1),将目标车辆位姿矩阵与(x0,y0,z0,1)相乘,得到一个新的坐标(x1,y1,z1,1),将这个新的坐标对应的激光点的集合作为转换后扫描帧。

s606,对雷达扫描帧进行降采样处理。

将雷达扫描帧沿任意一激光点方向将各雷达扫描点的三维坐标(x0,y0,z0)投射到二维坐标系中,得到对应的二维坐标(i1,j1),将各雷达扫描点对应的二维坐标的集合,作为降采样后的雷达扫描帧。

s608,根据目标车辆位姿对降采样后得到的扫描帧进行预估下一扫描帧。

以降采样后的雷达扫描帧右下前坐标为原点,水平面互相垂直的轴为x轴与y轴,纵轴为z轴,将降采样后的雷达扫描帧沿水平面互相垂直的轴及纵轴进行旋转切换。x轴、y轴和z轴分别对应俯仰、航向和横滚,根据惯导系统(即载体系到地理系)的转换规则,对降采样后的扫描帧中的激光点进行旋转,旋转顺序依次为横滚、俯仰、航向。利用函数对降采样后的雷达扫描帧中的雷达扫描点的坐标处理,得到新的坐标,这个新的坐标是各雷达扫描点在下一扫描帧中对应的坐标,将新坐标对应的激光点的集合作为预估的下一扫描帧。

s610,将转换后扫描帧和下一扫描帧进行叠加,得到组合扫描帧。

将转换后扫描帧中的各激光点和下一扫描帧中的各激光点按照坐标进行组合,将组合后的激光点作为第二激光点,将第二激光点的集合作为组合扫描帧。

s612,基于组合扫描帧对点云地图进行切割。

获取组合扫描帧中的各第二激光点的坐标,将组合扫描帧映射于点云地图中,查找映射下点云地图中与第二激光点对应的投影点,其中,将组合扫描帧映射于点云地图,可以是将各第二激光点的三维坐标(x2,y2,z2)基于x轴、y轴方向、中心点(centerx,centery,centerz)映射于点云地图中。

将各第二激光点的三维坐标(x2,y2,z2)输入映射转换矩阵其中,vx为第二激光点在x轴方向上的方向向量,vy为第二激光点在y轴方向上的方向向量,vz为法向量,因为ax+by+cz+d=0,取法向量vz=(a,b,c),将映射转换矩阵进行逆矩阵转换,得到各第二激光点的三维坐标(x2,y2,z2)在点云地图中的投影点的二维坐标为(i2,j2)。根据点云地图中的投影点的二维坐标对点云地图进行切割。

s614,将切割后的部分点云地图进行组合,得到局部点云地图。

s412,将局部点云地图与雷达扫描帧进行配准,得到配准结果。

选择用于局部点云地图进行配准和雷达扫描帧的坐标系,将雷达扫描帧中各雷达扫描点的坐标与局部点云地图中的各投影点的坐标根据该坐标系进行坐标转换,使得坐标转换后得到的各雷达扫描点的坐标与投影点的坐标与该坐标系相适应。将坐标转换后的各雷达扫描点的坐标与投影点的坐标进行差值计算,根据差值计算的结果调整投影点的坐标值,使得调整后得到的投影点的坐标与其对应的雷达扫描点的坐标的差值最小。将调整后得到的投影点的集合作为配准结果。

s414,判断配准结果是否符合预设条件。

如图7所示,判断配准结果是否符合预设条件包括以下内容:

s702,读取配准结果。

s704,获取目标车辆的里程数据。

通过获取传感器等硬件设备监测上传的里程计数据,或者根据目标车辆的实时定位信息与目标车辆位姿计算出里程数据。

s706,根据目标车辆的里程数据判断配准结果是否符合预设条件。

将目标车辆的里程数据代入配准结果进行计算,得到目标车辆的计算位姿,将目标车辆的计算位姿与目标车辆位姿进行误差值计算,当误差值小于预设阈值时,说明目标车辆位姿满足预设条件。

s416,当配准结果符合预设条件时,将目标车辆位姿作为目标车辆的当前位姿;当配准结果不符合预设条件时,重新执行车辆定位方法的步骤。

上述实施例中,通过点云地图、目标车辆的实时定位信息预测目标车辆的多个车辆位姿;获取雷达扫描帧,根据雷达扫描帧确定位姿精度条件,判断车辆位姿是否满足位姿精度条件;若车辆位姿满足位姿精度条件,将符合位姿精度条件的车辆位姿作为目标车辆位姿;并实时获取目标车辆的车辆位姿变化量,根据车辆位姿变化量更新目标车辆位姿。利用目标车辆位姿对雷达扫描帧进行转换,得到转换后扫描帧,对雷达扫描帧进行降采样处理,根据目标车辆位姿对降采样后得到的扫描帧进行预估下一扫描帧;将转换后扫描帧和下一扫描帧进行叠加,得到组合扫描帧,基于组合扫描帧对点云地图进行切割;将切割后的部分点云地图进行组合,得到局部点云地图。将局部点云地图与雷达扫描帧进行配准,得到配准结果;当配准结果符合预设条件时,将目标车辆位姿作为目标车辆的当前位姿。通过雷达与gps结合获取目标车辆的车辆位姿,根据目标车辆的车辆位姿对雷达获取的扫描帧进行转换、预测以及二维切割,得到局部点云地图,实现了对目标车辆的精确定位。

图2-7为一个实施例中车辆定位方法的流程示意图。应该理解的是,虽然图2-7的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-7中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

一种车辆定位装置,如图8所示,该装置包括:读取模块802、车辆位姿模块804、雷达扫描帧模块806、转换模块808、组合模块810、切割模块812、配准模块814、判断模块816,其中:

读取模块802,用于读取点云地图和目标车辆的实时定位信息;

车辆位姿模块804,用于基于点云地图和实时定位信息预测目标车辆的多个车辆位姿;

雷达扫描帧模块806,用于获取雷达扫描帧,根据雷达扫描帧确定位姿精度条件,根据车辆位姿和位姿精度条件确定目标车辆位姿;

转换模块808,用于利用目标车辆位姿对雷达扫描帧进行转换,得到转换后扫描帧;以及,利用目标车辆位姿预估下一扫描帧;

组合模块810,用于将转换后扫描帧和下一扫描帧进行叠加,得到组合扫描帧;

切割模块812,用于基于组合扫描帧对点云地图进行切割,得到局部点云地图;

配准模块814,用于将局部点云地图与雷达扫描帧进行配准,得到配准结果;

判断模块816,用于当配准结果符合预设条件时,将目标车辆位姿作为目标车辆的当前位姿。

上述实施例中,利用读取点云地图和目标车辆的实时定位信息;基于点云地图和实时定位信息预测目标车辆的多个车辆位姿;获取雷达扫描帧,根据雷达扫描帧确定位姿精度条件,根据车辆位姿和位姿精度条件确定目标车辆位姿;利用目标车辆位姿对雷达扫描帧进行转换,得到转换后扫描帧;以及,利用目标车辆位姿预估下一扫描帧;将转换后扫描帧和下一扫描帧进行叠加,得到组合扫描帧;基于组合扫描帧对点云地图进行切割,得到局部点云地图;将局部点云地图与雷达扫描帧进行配准,得到配准结果;当配准结果符合预设条件时,将目标车辆位姿作为目标车辆的当前位姿。通过雷达与gps结合获取目标车辆的车辆位姿,根据目标车辆的车辆位姿对雷达获取的扫描帧进行转换、预测以及二维切割,得到局部点云地图,实现了对目标车辆的精确定位。

在一个实施例中,雷达扫描帧模块806还用于:

获取雷达扫描帧中雷达扫描点的坐标;获取点云地图中与雷达扫描点对应的第一激光点的坐标;计算雷达扫描点的坐标与第一激光点的坐标之间的均方根误差值;根据均方根误差值判断目标车辆的多个车辆位姿是否满足位姿精度条件;若车辆位姿满足位姿精度条件,则将满足位姿精度条件的车辆位姿作为目标车辆位姿。

在一个实施例中,如图9所示,车辆定位装置还包括:

更新模块818,用于实时获取目标车辆的车辆位姿变化量;根据车辆位姿变化量更新目标车辆位姿,得到实时车辆位姿。

在一个实施例中,转换模块808还用于:

根据目标车辆位姿和雷达扫描帧中雷达扫描点的坐标,计算得到转换后扫描帧;以及,对雷达扫描帧进行降采样处理,根据目标车辆位姿对降采样后得到的雷达扫描帧预估下一扫描帧。

在一个实施例中,切割模块812还用于:

将组合扫描帧的第二激光点映射于点云地图中;在映射后的点云地图中,获取与第二激光点对应的投影点;确定所获取的投影点的二维坐标;根据二维坐标对点云地图进行切割,得到局部点云地图。

在一个实施例中,配准模块814还用于:

获取雷达扫描帧中雷达扫描点的坐标;获取局部点云地图中投影点的坐标;调整雷达扫描点的坐标与投影点的坐标,使调整后的激光点与投影点的坐标的差值最小;将调整后的雷达扫描点的坐标与投影点的坐标作为配准结果。

在一个实施例中,判断模块816还用于:

获取目标车辆的里程数据;将目标车辆的里程数据代入配准结果进行计算,得到误差值;当误差值小于预设阈值时,将目标车辆位姿作为目标车辆的当前位姿。

上述实施例中,根据雷达扫描点的坐标与第一激光点的坐标之间的均方根误差值,判断目标车辆的多个车辆位姿是否满足位姿精度条件;若车辆位姿满足位姿精度条件,则将满足位姿精度条件的车辆位姿作为目标车辆位姿。根据车辆位姿变化量更新目标车辆位姿,得到实时车辆位姿。根据目标车辆位姿计算得到转换后扫描帧和预估下一扫描帧,将组合扫描帧的第二激光点映射于点云地图中,根据第二激光点对应的投影点,对点云地图进行切割,得到局部点云地图。调整雷达扫描点的坐标与投影点的坐标,根据目标车辆的里程数据判断配准结果是否准确。实现了对目标车辆精确定位。

图10示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的服务器120。如图10所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、输入装置和显示屏。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现车辆定位方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行车辆定位方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层。

本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,本申请提供的车辆定位装置可以实现为一种计算机程序的形式,计算机程序可在如图10所示的计算机设备上运行。计算机设备的存储器中可存储组成该车辆定位装置的各个程序模块,比如,图8所示的读取模块802、车辆位姿模块804、雷达扫描帧模块806、转换模块808、组合模块810、切割模块812、配准模块814、判断模块816。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的车辆定位方法中的步骤。

例如,图10所示的计算机设备可以通过如图8所示的车辆定位装置中的读取模块802执行s202。计算机设备可通过车辆位姿模块804执行s204。计算机设备可通过雷达扫描帧模块806执行步骤s806。转换模块808执行s208。计算机设备可通过组合模块810执行s210。计算机设备可通过切割模块812执行步骤s812。计算机设备可通过配准模块814执行s214。计算机设备可通过判断模块816执行步骤s816。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行:读取点云地图和目标车辆的实时定位信息;基于点云地图和实时定位信息预测目标车辆的多个车辆位姿;获取雷达扫描帧,根据雷达扫描帧确定位姿精度条件,根据车辆位姿和位姿精度条件确定目标车辆位姿;利用目标车辆位姿对雷达扫描帧进行转换,得到转换后扫描帧;以及,利用目标车辆位姿预估下一扫描帧;将转换后扫描帧和下一扫描帧进行叠加,得到组合扫描帧;基于组合扫描帧对点云地图进行切割,得到局部点云地图;将局部点云地图与雷达扫描帧进行配准,得到配准结果;当配准结果符合预设条件时,将目标车辆位姿作为目标车辆的当前位姿。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行:获取雷达扫描帧中雷达扫描点的坐标;获取点云地图中与雷达扫描点对应的第一激光点的坐标;计算雷达扫描点的坐标与第一激光点的坐标之间的均方根误差值;根据均方根误差值判断目标车辆的多个车辆位姿是否满足位姿精度条件;若车辆位姿满足位姿精度条件,则将满足位姿精度条件的车辆位姿作为目标车辆位姿。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行:实时获取目标车辆的车辆位姿变化量;根据车辆位姿变化量更新目标车辆位姿,得到实时车辆位姿。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行:根据目标车辆位姿和雷达扫描帧中雷达扫描点的坐标,计算得到转换后扫描帧;以及,对雷达扫描帧进行降采样处理,根据目标车辆位姿对降采样后得到的雷达扫描帧预估下一扫描帧。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行:将组合扫描帧的第二激光点映射于点云地图中;在映射后的点云地图中,获取与第二激光点对应的投影点;确定所获取的投影点的二维坐标;根据二维坐标对点云地图进行切割,得到局部点云地图。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行:获取雷达扫描帧中雷达扫描点的坐标;获取局部点云地图中投影点的坐标;调整雷达扫描点的坐标与投影点的坐标,使调整后的激光点与投影点的坐标的差值最小;将调整后的雷达扫描点的坐标与投影点的坐标作为配准结果。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行:获取目标车辆的里程数据;将目标车辆的里程数据代入配准结果进行计算,得到误差值;当误差值小于预设阈值时,将目标车辆位姿作为目标车辆的当前位姿。

在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行:读取点云地图和目标车辆的实时定位信息;基于点云地图和实时定位信息预测目标车辆的多个车辆位姿;获取雷达扫描帧,根据雷达扫描帧确定位姿精度条件,根据车辆位姿和位姿精度条件确定目标车辆位姿;利用目标车辆位姿对雷达扫描帧进行转换,得到转换后扫描帧;以及,利用目标车辆位姿预估下一扫描帧;将转换后扫描帧和下一扫描帧进行叠加,得到组合扫描帧;基于组合扫描帧对点云地图进行切割,得到局部点云地图;将局部点云地图与雷达扫描帧进行配准,得到配准结果;当配准结果符合预设条件时,将目标车辆位姿作为目标车辆的当前位姿。

在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行:获取雷达扫描帧中雷达扫描点的坐标;获取点云地图中与雷达扫描点对应的第一激光点的坐标;计算雷达扫描点的坐标与第一激光点的坐标之间的均方根误差值;根据均方根误差值判断目标车辆的多个车辆位姿是否满足位姿精度条件;若车辆位姿满足位姿精度条件,则将满足位姿精度条件的车辆位姿作为目标车辆位姿。

在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行:实时获取目标车辆的车辆位姿变化量;根据车辆位姿变化量更新目标车辆位姿,得到实时车辆位姿。

在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行:根据目标车辆位姿和雷达扫描帧中雷达扫描点的坐标,计算得到转换后扫描帧;以及,对雷达扫描帧进行降采样处理,根据目标车辆位姿对降采样后得到的雷达扫描帧预估下一扫描帧。

在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行:将组合扫描帧的第二激光点映射于点云地图中;在映射后的点云地图中,获取与第二激光点对应的投影点;确定所获取的投影点的二维坐标;根据二维坐标对点云地图进行切割,得到局部点云地图。

在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行:获取雷达扫描帧中雷达扫描点的坐标;获取局部点云地图中投影点的坐标;调整雷达扫描点的坐标与投影点的坐标,使调整后的激光点与投影点的坐标的差值最小;将调整后的雷达扫描点的坐标与投影点的坐标作为配准结果。

在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行:获取目标车辆的里程数据;将目标车辆的里程数据代入配准结果进行计算,得到误差值;当误差值小于预设阈值时,将目标车辆位姿作为目标车辆的当前位姿。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

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