本发明实施例涉及车辆定位技术领域,尤其涉及一种车辆定位方法、装置、设备及车辆。
背景技术:
近年来,无人驾驶技术成为各主机厂、高校及研究所争相关注的热点。而无人驾驶车辆的定位技术则是实现无人驾驶的必要条件。目前,无人驾驶车辆的定位技术主要包括以下几个方式:gps定位、里程计定位、gps/imu组合导航系统定位,匹配定位。gps定位主要依靠卫星确认自身位置,具有全天候、累积误差小等特点,但在遮挡环境下会产生严重的位置偏移,同时,gps定位的输出频率也难以满足无人驾驶系统要求。里程计定位是依靠陀螺仪、加速度计等进行自动驾驶车辆的航迹推算,输出频率高,不受环境遮挡影响,但定位误差会随时间的推移而变大。gps/imu组合导航系统定位则是将gps定位及里程计定位相结合,具备两者共同的优点,同时降低了遮挡及误差积累对定位精度的影响,但在长时间遮挡的情况下定位精度同样得不到保证。匹配定位算法是利用gps、imu获取的定位信息及传感器扫描周围的环境,构建离线的环境地图,再通过传感器实时检测到的环境信息与离线的环境地图相匹配,以获取无人驾驶车辆在离线地图中的相对位置,从而修正定位结果的一种方法,有效降低了遮挡及误差积累的影响。不过,匹配定位的精度与离线地图的精度有很大关系,且真实环境变化的变化对其误差也有很大影响。
技术实现要素:
本发明实施例提供一种车辆定位方法、装置、设备及车辆,可以实现对多个定位数据的融合,提高车辆定位的准确性。
第一方面,本发明实施例提供了一种车辆定位方法,包括:
获取初始定位数据;所述初始定位数据包括gps数据、匹配定位数据及里程计数据中的至少两个;
将所述初始定位数据转换为定位信息;所述定位信息包括坐标信息及偏航角;
对所述定位信息按照设定顺序进行卡尔曼滤波计算,获得目标定位信息。
进一步地,所述gps数据包括经度、纬度以及第一偏航角;将所述初始定位数据转换为定位坐标信息,包括:
将所述经度和所述纬度转换至utm直角坐标系,获得gps数据在utm直角坐标系下的坐标信息;
根据第一转换矩阵将在utm直角坐标系下的坐标信息转换为第三坐标系系的坐标信息,确定所述gps数据对应的第一坐标信息;所述第一坐标信息和所述第一偏航角组成第一定位信息;其中,第一转换矩阵为utm直角坐标系与所述第三坐标系间的转换矩阵。
进一步地,所述匹配定位数据包括匹配定位坐标系下的坐标信息及第二偏航角;将所述初始定位数据转换为定位坐标信息,包括:
根据第二转换矩阵将匹配定位坐标系下的坐标信息转换为所述三坐标系下的坐标信息,确定所述匹配定位数据对应的第二坐标信息;所述第二坐标信息和所述第二偏航角组成第二定位信息;其中,所述第二转换矩阵为所述匹配定位坐标系与所述第三坐标系间的转换矩阵。
进一步地,所述里程计数据包括车辆速度及偏航角速度;将所述初始定位数据转换为定位信息,包括:
对所述车辆速度及偏航角速度按照航迹推算的方式确定所述里程计数据对应的第三定位信息;公式如下:
其中,xt为当前时刻的第三横坐标,xt-1为上一时刻的第三横坐标,yt为当前时刻的第三纵坐标,yt-1为上一时刻的第三纵坐标,θt为当前时刻的第三偏航角,θt-1为上一时刻的第三偏航角,ω为偏航角速度。
进一步地,对所述定位信息按照设定顺序进行卡尔曼滤波计算,获得目标定位信息,包括:
获取过程噪声矩阵、各初始定位数据的观测矩阵及观测噪声矩阵;
根据所述过程噪声矩阵、所述观测矩阵及所述观测噪声矩阵对所述定位信息按照卡尔曼滤波公式进行多级卡尔曼滤波计算,获得目标定位信息。
进一步地,所述卡尔曼滤波公式如下:
其中,k为卡尔曼增益矩阵,p-为预测过程后的过程噪声协方差矩阵,h为观测矩阵,q为观测噪声协方差矩阵,
进一步地,对所述定位信息按照卡尔曼滤波公式进行多级卡尔曼滤波计算,获得目标定位信息,包括:
将第一顺序的定位信息输入所述卡尔曼滤波公式,获得第一级定位信息;
将所述第一级定位信息和第二顺序的定位信息输入所述卡尔曼滤波公式,获得第二级定位信息;
将第三顺序的定位信息和所述第二级定位信息输入所述卡尔曼滤波公式,获得目标定位信息。
第二方面,本发明实施例还提供了一种车辆定位装置,该装置包括:
初始定位数据获取模块,用于获取初始定位数据;所述初始定位数据包括gps数据、匹配定位数据及里程计数据中的至少两个;
初始定位数据转换模块,用于将初始定位数据转换为定位信息;所述定位信息包括坐标信息及偏航角;
目标定位信息获取模块,用于对所述定位信息按照设定顺序进行卡尔曼滤波计算,获得目标定位信息。
第三方面,本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本发明实施例所述的车辆定位方法。
第四方面,本发明实施例还提供了一种车辆,包括本发明实施例所述的车辆定位装置,所述车辆定位装置用于本实施例所述的车辆定位方法。
本发明实施例,首先获取初始定位数据;初始定位数据包括gps数据、匹配定位数据及里程计数据中的至少两个,然后将初始定位数据转换为定位信息;定位信息包括坐标信息及偏航角;最后对定位信息按照设定顺序进行卡尔曼滤波计算,获得目标定位信息。本发明实施例提供的车辆定位方法,将gps数据、匹配定位数据和里程计数据中的至少两个进行卡尔曼滤波计算,可以提高对车辆定位的准确性。
附图说明
图1为本发明实施例一中的一种车辆定位方法的流程图;
图2是本发明实施例二中的一种车辆定位装置的结构示意图;
图3是本发明实施例三中的一种计算机设备的结构示意图;
图4是本发明实施例四中的一种车辆的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的一种车辆定位方法的流程图,本实施例可适用于对移动的车辆进行定位的情况,该方法可以由车辆定位装置来执行,如图1所示,该方法具体包括如下步骤:
步骤110、获取初始定位数据。
其中,初始定位数据可以包括gps数据、匹配定位数据及里程计数据中的至少两个。gps数据可以包括经度、纬度以及第一偏航角,匹配定位数据可以包括匹配定位坐标系下的坐标信息及第二偏航角,里程计数据可以包括车辆速度及偏航角速度。
本实施例中,车辆中可以设置各种传感器模块,如gps传感器模块、匹配传感器模块及里程计传感器模块。获取初始定位数据的方式可以是:获取各传感器采集的gps数据、匹配定位数据及里程计数据。
步骤120、将初始定位数据转换为定位信息。
其中,定位信息可以包括坐标信息及偏航角。其中,坐标信息可以包括横坐标及纵坐标。
本实施例中,当初始定位数据为gps数据时,将初始定位数据转换为定位信息的方式可以是:将经度和纬度转换至utm直角坐标系,获得gps数据在utm直角坐标系下的坐标信息;根据第一转换矩阵将在utm直角坐标系下的坐标信息转换为第三坐标系的坐标信息,确定gps数据对应的第一坐标信息;第一坐标信息和第一偏航角组成第一定位信息。
其中,第一转换矩阵为utm直角坐标系与第三坐标系间的转换矩阵。utm坐标系为统一横轴墨卡托投影(universaltransversemercator)系统。utm坐标系是一种投影坐标,使用基于网格的方法表示坐标,将球面经纬度坐标经过投影算法转换成的平面坐标,即通常所说的xy坐标。
具体的,根据第一转换矩阵将在utm直角坐标系下的坐标信息转换为第三坐标系系的坐标信息的方式可以是,将在utm直角坐标系下的坐标信息对应的向量与第一转换矩阵进行点乘计算,获得其在第三坐标系中的坐标信息。
本实施例中,当初始定位数据为匹配定位数据时,初始定位数据转换为定位信息的方式可以是:根据第二转换矩阵将匹配定位坐标系下的坐标信息转换为第三坐标系下的坐标信息,确定匹配定位数据对应的第二坐标信息;第二坐标信息和第二偏航角组成第二定位信息。
其中,第二转换矩阵为匹配定位坐标系与第三坐标系间的转换矩阵。
具体的,根据第二转换矩阵将匹配定位坐标系下的坐标信息转换为第三坐标系下的坐标信息的方式可以是,将在匹配定位坐标系下的坐标信息对应的向量与第二转换矩阵进行点乘计算,获得其在第三坐标系中的坐标信息。
可选的,第三坐标系可以是匹配定位坐标系,这样匹配定位数据就不需要经过第二转换矩阵的转换,直接可用作第三坐标系下的坐标信息;为了后续计算的方便,用户也可设置其他坐标系作为第三坐标系,这时就需要利用第二转换矩阵将匹配定位数据转换成第三坐标系下的坐标信息。
本实施例中,当初始定位数据为程计数据时,将初始定位数据转换为定位信息的方式可以是:对车辆速度及偏航角速度按照航迹推算的方式确定里程计数据对应的第三定位信息。
其中,里程计数据对应的第三定位信息的计算公式为:
式中,xt为当前时刻的第三横坐标,xt-1为上一时刻的第三横坐标,yt为当前时刻的第三纵坐标,yt-1为上一时刻的第三纵坐标,θt为当前时刻的第三偏航角,θt-1为上一时刻的第三偏航角,ω为偏航角速度。
其中,对车辆速度及偏航角速度进行航迹推算时可以将gps数据对应的第一定位信息或匹配定位数据对应的第二定位信息作为初始值进行推算。即对于第一个里程计数据,可以将gps数据对应的第一定位信息或匹配定位数据对应的第二定位信息作为上一时刻的定位信息来进行航迹推算。
步骤130、对定位信息按照设定顺序进行卡尔曼滤波计算,获得目标定位信息。
其中,设定顺序可以理解为第一定位信息、第二定位信息和第三定位信息的顺序。本实施例中,三者可以按照任意的顺序进行卡尔曼滤波计算,此处不再限定。
本实施例中,对定位信息按照设定顺序进行卡尔曼滤波计算,获得目标定位信息的方式可以是:获取过程噪声矩阵、各初始定位数据的观测矩阵及观测噪声矩阵;根据过程噪声矩阵、观测矩阵及观测噪声矩阵对定位信息按照卡尔曼滤波公式进行多级卡尔曼滤波计算,获得目标定位信息。
其中,过程噪声矩阵、各初始定位数据的观测矩阵及观测噪声矩阵可直接获取到。本实施例中,卡尔曼滤波公式为:
式中,k为卡尔曼增益矩阵,p-为预测过程后的过程噪声协方差矩阵,h为观测矩阵,q为观测噪声协方差矩阵,
具体的,对定位信息按照卡尔曼滤波公式进行多级卡尔曼滤波计算,获得目标定位信息的过程可以是:将第一顺序的定位信息输入卡尔曼滤波公式,获得第一级定位信息;将第一级定位信息和第二顺序的定位信息输入卡尔曼滤波公式,获得第二级定位信息;将第三顺序的定位信息和第二级定位信息输入卡尔曼滤波公式,获得目标定位信息。
本实施例中,多级卡尔曼滤波器中的车辆运动的状态方程为:
x(k+1)=ax(k)+bu(k)+w,
车辆位置的观测方程为:
gps数据的观测方程为yg(k)=hgx(k)+νg,
匹配定位数据的观测方程为yp(k)=hpx(k)+νp,
里程计数据的观测方程为yodm(k)=hodmx(k)+νodm,
卡尔曼滤波的预测过程的公式为:
式中,x(k)为状态方程的状态变量,a为状态矩阵,b为控制矩阵,w为系统噪声,u(k)为控制量矩阵,yg(k)、hg、νg分别为gps数据的观测方程的观测量、观测矩阵和观测噪声,yp(k)、hp、νp分别为匹配定位数据的观测方程的观测量、观测矩阵和观测噪声,yodm(k)、hodm、νodm分别为里程计数据的观测方程的观测量、观测矩阵和观测噪声,p1为初始过程噪声矩阵,q1为初始观测噪声矩阵,
示例性的,假设以gps数据、匹配定位数据、里程计数据的顺序进行多级卡尔曼滤波,其过程可以是:
以gps数据作为第一级输入,将gps数据对应的第一定位信息、观测矩阵h和观测噪声矩阵v代入卡尔曼滤波公式,进行第一级卡尔曼滤波的状态更新过程,得到更新后的系统状态量
以匹配定位数据作为第二级输入,将匹配定位数据对应的第二定位信息、观测矩阵h、观测噪声矩阵v以及第一级卡尔曼滤波后得到的系统状态量
进行第二级卡尔曼滤波器的状态更新过程,得到更新后的系统状态量
以里程计数据作为第三级输入,将里程计数据对应的第三定位信息、观测矩阵h、观测噪声矩阵v以及第二级卡尔曼滤波后得到的系统状态量
进行第三级卡尔曼滤波器的状态更新过程,得到更新后的系统状态量
将上一步中得到的系统状态量
以开启新一轮的融合过程。
可选的是,本发明实施例具体论述了以gps数据进行第一级卡尔曼滤波,以匹配定位数据进行第二级卡尔曼滤波,以里程计数据进行第三级卡尔曼滤波的融合定位步骤,在实际应用过程中,对不同顺序、不同个数的传感器组成的系统本方法也同样适用。例如,对gps数据和匹配定位数据进行二级卡尔曼滤波计算,过程与上面的进行的三级卡尔曼滤波过程类似,此处不再赘述。
本发明实施例中的技术方案,首先获取初始定位数据,初始数据包括gps数据、匹配定位数据及里程计数据中的至少两个;然后将初始定位数据转换为定位信息,定位信息包括坐标信息及偏航角;最后对定位信息按照设定顺序进行卡尔曼滤波计算,获得目标定位信息。本发明实施例提供的车辆定位方法,将gps数据、匹配定位数据及里程计数据中的至少两个进行卡尔曼滤波计算,可以提高对车辆定位的准确性。
实施例二
图2为本发明实施例二提供的一种车辆定位装置的结构示意图。如图2所示,该装置包括:初始定位数据获取模块210,初始定位数据转换模块220,目标定位信息获取模块230。
初始定位数据获取模块210,用于获取初始定位数据。
其中,初始定位数据可以包括gps数据、匹配定位数据及里程计数据中的至少两个。
初始定位数据转换模块220,用于将初始定位数据转换为定位信息。
其中,定位信息可以包括坐标信息及偏航角。
目标定位信息获取模块230,用于对定位信息按照设定顺序进行卡尔曼滤波计算,获得目标定位信息。
可选的,gps数据包括经度、纬度以及第一偏航角,初始定位数据转换模块220还用于:
将经度和纬度转换至utm直角坐标系,获得gps数据在utm直角坐标系下的坐标信息;根据第一转换矩阵将在utm直角坐标系下的坐标信息转换为第三坐标系系的坐标信息,确定gps数据对应的第一坐标信息;第一坐标信息和第一偏航角组成第一定位信息;其中,第一转换矩阵为utm直角坐标系与第三坐标系间的转换矩阵。
可选的,匹配定位数据包括匹配定位坐标系下的坐标信息及第二偏航角,初始定位数据转换模块220还用于:
根据第二转换矩阵将匹配定位坐标系下的坐标信息转换为第三坐标系下的坐标信息,确定匹配定位数据对应的第二坐标信息;第二坐标信息和第二偏航角组成第二定位信息;其中,第二转换矩阵为匹配定位坐标系与第三坐标系间的转换矩阵。
可选的,里程计数据包括车辆速度及偏航角速度,初始定位数据转换模块220还用于:
对车辆速度及偏航角速度按照航迹推算的方式确定里程计数据对应的第三定位信息;公式如下:
可选的,目标定位信息获取模块230还用于:
获取过程噪声矩阵、各初始定位数据的观测矩阵及观测噪声矩阵;根据过程噪声矩阵、观测矩阵及观测噪声矩阵对定位信息按照卡尔曼滤波公式进行多级卡尔曼滤波计算,获得目标定位信息。
可选的,卡尔曼滤波公式如下:
可选的,目标定位信息获取模块230还用于:
将第一顺序的定位信息输入卡尔曼滤波公式,获得第一级定位信息;将第一级定位信息和第二顺序的定位信息输入卡尔曼滤波公式,获得第二级定位信息;将第三顺序的定位信息和第二级定位信息输入卡尔曼滤波公式,获得目标定位信息。
上述装置可执行本发明前述所有实施例所提供的方法,具备执行上述方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明前述所有实施例所提供的方法。
实施例三
图3为本发明实施例三提供的一种计算机设备的结构示意图。图3示出了适于用来实现本发明实施方式的计算机设备312的框图。图3显示的计算机设备312仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。设备312是典型的车辆定位功能的计算设备。
如图3所示,计算机设备312以通用计算设备的形式表现。计算机设备312的组件可以包括但不限于:一个或者多个处理器316,存储装置328,连接不同系统组件(包括存储装置328和处理器316)的总线318。
总线318表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(industrystandardarchitecture,isa)总线,微通道体系结构(microchannelarchitecture,mca)总线,增强型isa总线、视频电子标准协会(videoelectronicsstandardsassociation,vesa)局域总线以及外围组件互连(peripheralcomponentinterconnect,pci)总线。
计算机设备312典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备312访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储装置328可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(randomaccessmemory,ram)330和/或高速缓存存储器332。计算机设备312可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统334可以用于读写不可移动的、非易失性磁介质(图3未显示,通常称为“硬盘驱动器”)。尽管图3中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如只读光盘(compactdisc-readonlymemory,cd-rom)、数字视盘(digitalvideodisc-readonlymemory,dvd-rom)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线318相连。存储装置328可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块326的程序336,可以存储在例如存储装置328中,这样的程序模块326包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块326通常执行本发明所描述的实施例中的功能和/或方法。
计算机设备312也可以与一个或多个外部设备314(例如键盘、指向设备、摄像头、显示器324等)通信,还可与一个或者多个使得用户能与该计算机设备312交互的设备通信,和/或与使得该计算机设备312能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口322进行。并且,计算机设备312还可以通过网络适配器320与一个或者多个网络(例如局域网(localareanetwork,lan),广域网wideareanetwork,wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器320通过总线318与计算机设备312的其它模块通信。应当明白,尽管图中未示出,可以结合计算机设备312使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、磁盘阵列(redundantarraysofindependentdisks,raid)系统、磁带驱动器以及数据备份存储系统等。
处理器316通过运行存储在存储装置328中的程序,从而执行各种功能应用以及数据处理,例如实现本发明上述实施例所提供的车辆定位方法。
实施例四
图4是本发明实施例提供的一种车辆的结构示意图,如图4所示,该车辆包括本发明实施例的车辆定位装置,该装置包括:初始定位数据获取模块210,用于获取初始定位数据,初始定位数据包括gps数据、匹配定位数据及里程计数据中的至少两个;初始定位数据转换模块220,用于将初始定位数据转换为定位信息,定位信息包括坐标信息及偏航角;目标定位信息获取模块230,用于对定位信息按照设定顺序进行卡尔曼滤波计算,获得目标定位信息。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。