首页 / 专利库 / 太空飞行器与操作 / 人造卫星 / 小卫星 / 一种定位方法及装置

一种定位方法及装置

阅读:464发布:2020-05-08

专利汇可以提供一种定位方法及装置专利检索,专利查询,专利分析的服务。并且本 说明书 公开了一种 定位 方法及装置。本方案通过获取GNSS发送的卫星数据,确定各卫星的 位置 信息,并根据发送、接收卫星数据的时间差确定各卫星与车辆之间的伪距信息。通过各卫星的位置信息、当前时刻车辆的预测定位信息、伪距信息,确定经GNSS定位的卫星定位误差。根据各 传感器 采集的传感数据以及当前时刻车辆的预测定位信息,确定传感定位误差。以上述的卫星及传感定位误差的和值最小化为优化目标,调整预测定位信息,将调整后的预测定位信息作为当前时刻车辆的定位信息。本方案使GNSS与各传感器之间互相配合进行定位,还充分利用GNSS及各传感器中的原始数据建立误差方程,采用优化 算法 提高当前时刻车辆的定位 精度 。,下面是一种定位方法及装置专利的具体信息内容。

1.一种定位方法,其特征在于,包括:
车辆接收全球卫星导航系统GNSS发送的卫星数据;
根据所述GNSS发送所述卫星数据的时间、所述车辆接收所述卫星数据的时间,确定所述车辆与所述GNSS中各卫星之间的伪距信息;
根据上一时刻车辆的定位信息,预测当前时刻车辆的定位信息,作为预测定位信息;
针对所述GNSS中的每个卫星,根据所述车辆与该卫星之间的伪距信息、所述卫星数据中包含的该卫星的位置信息、所述预测定位信息,确定通过GNSS定位的卫星定位误差;
根据各传感器采集的传感数据以及所述预测定位信息,确定通过所述传感数据定位的传感定位误差;
采用预设的优化算法,以所述卫星定位误差与传感定位误差的和值最小化为优化目标,调整预测定位信息,并将调整后的预测定位信息作为当前时刻所述车辆的定位信息。
2.如权利要求1所述的方法,其特征在于,根据所述GNSS发送所述卫星数据的时间、所述车辆接收所述卫星数据的时间,确定所述车辆与所述GNSS中各卫星之间的伪距信息,具体包括:
针对所述GNSS中的每个卫星,根据所述GNSS发送该卫星的卫星数据的时间、所述车辆接收该卫星的卫星数据的时间,确定所述GNSS发送该卫星的卫星数据的时间与所述车辆接收该卫星的卫星数据的时间之间的时间差;
根据所述时间差与预设的卫星数据的传播速度的乘积,确定所述车辆与该卫星之间的伪距信息。
3.如权利要求1所述的方法,其特征在于,针对所述GNSS中的每个卫星,根据所述车辆与该卫星之间的伪距信息、所述卫星数据中包含的该卫星的位置信息、所述预测定位信息,确定通过GNSS定位的卫星定位误差,具体包括:
针对所述GNSS中的每个卫星,根据所述卫星数据中包含的该卫星的位置信息,与所述预测定位信息之间的距离,确定所述车辆与该卫星之间的实际距离;
根据所述车辆与该卫星之间的伪距信息,以及所述车辆与该卫星之间的实际距离,确定通过该卫星定位的误差;
根据各卫星定位的误差,确定通过GNSS定位的卫星定位误差。
4.如权利要求1所述的方法,其特征在于,根据各传感器采集的传感数据以及所述预测定位信息,确定通过所述传感数据定位的传感定位误差,具体包括:
针对每个传感器,获取该传感器采集的传感数据中所包含的与所述车辆当前所处环境对应的图像数据;
根据所述车辆当前所处环境对应的图像数据,获取与所述图像数据相匹配的环境在电子地图中所处的位置,作为当前时刻所述车辆的位置信息;
根据当前时刻所述车辆的位置信息,以及所述预测定位信息,确定通过该传感器定位的传感定位误差。
5.如权利要求1所述的方法,其特征在于,所述传感器为惯性测量单元IMU;
根据各传感器采集的传感数据以及所述预测定位信息,确定通过所述传感数据定位的传感定位误差,具体包括:
获取所述IMU采集的传感数据中所包含的所述车辆从上一时刻到当前时刻的运动信息;
根据上一时刻车辆的定位信息,以及所述车辆从上一时刻到当前时刻的运动信息,确定当前时刻车辆的IMU定位信息;
根据所述IMU定位信息以及所述预测定位信息,确定通过所述IMU的传感数据定位的传感定位误差。
6.如权利要求1所述的方法,其特征在于,所述预设的优化算法包括:列文伯格-夸尔特LM算法。
7.如权利要求4所述的方法,其特征在于,所述各传感器包括:雷达、摄像头中的至少一种。
8.一种定位装置,其特征在于,包括:
接收模,用于使车辆接收全球卫星导航系统GNSS发送的卫星数据;
伪距确定模块,用于根据所述GNSS发送所述卫星数据的时间、所述车辆接收所述卫星数据的时间,确定所述车辆与所述GNSS中各卫星之间的伪距信息;
预测定位模块,用于根据上一时刻车辆的定位信息,预测当前时刻车辆的定位信息,作为预测定位信息;
卫星定位误差确定模块,用于针对所述GNSS中的每个卫星,根据所述车辆与该卫星之间的伪距信息、所述卫星数据中包含的该卫星的位置信息、所述预测定位信息,确定通过GNSS定位的卫星定位误差;
传感定位误差确定模块,用于根据各传感器采集的传感数据以及所述预测定位信息,确定通过所述传感数据定位的传感定位误差;
调整模块,用于采用预设的优化算法,以所述卫星定位误差与传感定位误差的和值最小化为优化目标,调整预测定位信息,并将调整后的预测定位信息作为当前时刻所述车辆的定位信息。
9.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述权利要求1-7任一项所述的方法。
10.一种无人驾驶设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现上述权利要求1-7任一项所述的方法。

说明书全文

一种定位方法及装置

技术领域

[0001] 本说明书涉及智能驾驶技术领域,尤其涉及一种定位方法及装置。

背景技术

[0002] 车辆的智能化作为人工智能技术的重要组成部分,在社会生产、生活中的作用日益凸显,成为引导交通技术发展的主要方向之一。
[0003] 定位技术为无人车及具有辅助驾驶功能的车辆(以下统称“车辆”)的关键技术。目前,车辆定位多依赖于GNSS/INS定位技术。但是,当在城市复杂环境下,会面临城市峡谷、隧道、地下车库、雨雾等各种复杂工况的考验,对GNSS/INS定位技术的使用带来一系列影响,比如,在城市楼宇间,GNSS/INS定位由于信号遮挡的原因,使得车辆上的接收机无法接收4颗以上的卫星,导致定位精度下降。发明内容
[0004] 本说明书实施例提供一种定位方法及装置,以部分解决上述现有技术存在的问题。
[0005] 本说明书实施例采用下述技术方案:本说明书提供的一种定位方法,包括:
车辆接收全球卫星导航系统GNSS发送的卫星数据;
根据所述GNSS发送所述卫星数据的时间、所述车辆接收所述卫星数据的时间,确定所述车辆与所述GNSS中各卫星之间的伪距信息;
根据上一时刻车辆的定位信息,预测当前时刻车辆的定位信息,作为预测定位信息;
针对所述GNSS中的每个卫星,根据所述车辆与该卫星之间的伪距信息、所述卫星数据中包含的该卫星的位置信息、所述预测定位信息,确定通过GNSS定位的卫星定位误差;
根据各传感器采集的传感数据以及所述预测定位信息,确定通过所述传感数据定位的传感定位误差;
采用预设的优化算法,以所述卫星定位误差与传感定位误差的和值最小化为优化目标,调整预测定位信息,并将调整后的预测定位信息作为当前时刻所述车辆的定位信息。
[0006] 可选的,根据所述GNSS发送所述卫星数据的时间、所述车辆接收所述卫星数据的时间,确定所述车辆与所述GNSS中各卫星之间的伪距信息,具体包括:针对所述GNSS中的每个卫星,根据所述GNSS发送该卫星的卫星数据的时间、所述车辆接收该卫星的卫星数据的时间,确定所述GNSS发送该卫星的卫星数据的时间与所述车辆接收该卫星的卫星数据的时间之间的时间差;根据所述时间差与预设的卫星数据的传播速度的乘积,确定所述车辆与该卫星之间的伪距信息。
[0007] 可选的,针对所述GNSS中的每个卫星,根据所述车辆与该卫星之间的伪距信息、所述卫星数据中包含的该卫星的位置信息、所述预测定位信息,确定通过GNSS定位的卫星定位误差,具体包括:针对所述GNSS中的每个卫星,根据所述卫星数据中包含的该卫星的位置信息,与所述预测定位信息之间的距离,确定所述车辆与该卫星之间的实际距离;根据所述车辆与该卫星之间的伪距信息,以及所述车辆与该卫星之间的实际距离,确定通过该卫星定位的误差;根据各卫星定位的误差,确定通过GNSS定位的卫星定位误差。
[0008] 可选的,根据各传感器采集的传感数据以及所述预测定位信息,确定通过所述传感数据定位的传感定位误差,具体包括:针对每个传感器,获取该传感器采集的传感数据中所包含的与所述车辆当前所处环境对应的图像数据;根据所述车辆当前所处环境对应的图像数据,获取与所述图像数据相匹配的环境在电子地图中所处的位置,作为当前时刻所述车辆的位置信息;根据当前时刻所述车辆的位置信息,以及所述预测定位信息,确定通过该传感器定位的传感定位误差。
[0009] 可选的,所述传感器为惯性测量单元IMU;根据各传感器采集的传感数据以及所述预测定位信息,确定通过所述传感数据定位的传感定位误差,具体包括:获取所述IMU采集的传感数据中所包含的所述车辆从上一时刻到当前时刻的运动信息;根据上一时刻车辆的定位信息,以及所述车辆从上一时刻到当前时刻的运动信息,确定当前时刻车辆的IMU定位信息;根据所述IMU定位信息以及所述预测定位信息,确定通过所述IMU的传感数据定位的传感定位误差。
[0010] 可选的,所述预设的优化算法包括:列文伯格-夸尔特LM算法。
[0011] 可选的,所述各传感器包括:雷达、摄像头中的至少一种。
[0012] 本说明书提供的一种定位装置,包括:接收模,用于使车辆接收全球卫星导航系统GNSS发送的卫星数据;
伪距确定模块,用于根据所述GNSS发送所述卫星数据的时间、所述车辆接收所述卫星数据的时间,确定所述车辆与所述GNSS中各卫星之间的伪距信息;
预测定位模块,用于根据上一时刻车辆的定位信息,预测当前时刻车辆的定位信息,作为预测定位信息;
卫星定位误差确定模块,用于针对所述GNSS中的每个卫星,根据所述车辆与该卫星之间的伪距信息、所述卫星数据中包含的该卫星的位置信息、所述预测定位信息,确定通过GNSS定位的卫星定位误差;
传感定位误差确定模块,用于根据各传感器采集的传感数据以及所述预测定位信息,确定通过所述传感数据定位的传感定位误差;
调整模块,用于采用预设的优化算法,以所述卫星定位误差与传感定位误差的和值最小化为优化目标,调整预测定位信息,并将调整后的预测定位信息作为当前时刻所述车辆的定位信息。
[0013] 本说明书提供的一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述定位方法。
[0014] 本说明书提供的一种无人驾驶设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述定位方法。
[0015] 本说明书实施例采用的上述至少一个技术方案能够达到以下有益效果:本说明书实施例通过获取GNSS发送的卫星数据,确定GNSS中各卫星的真实位置信息,并根据向车辆发送卫星数据、车辆接收卫星数据的时间差确定各卫星与车辆之间的伪距信息;通过各卫星的真实位置信息、当前时刻车辆的预测定位信息、各卫星与车辆之间的伪距信息,确定经GNSS定位的卫星定位误差。还根据各传感器采集的传感数据以及当前时刻车辆的预测定位信息,确定经传感数据定位的传感定位误差。采用优化算法,以上述的卫星及传感定位误差的和值最小化为优化目标,调整预测定位信息,将调整后的预测定位信息作为当前时刻车辆的定位信息。本说明书实施例不仅使GNSS与各传感器之间互相配合进行定位,还充分利用GNSS及各传感器中的原始数据建立误差方程,采用优化算法提高当前时刻车辆的定位精度,使得车辆在仅能接收GNSS中4颗以下卫星数据的情况下,也能实现较高的定位精度。当面对复杂环境时,还能够实现车辆的全天候无死精确定位。
附图说明
[0016] 此处所说明的附图用来提供对本说明书的进一步理解,构成本说明书的一部分,本说明书的示意性实施例及其说明用于解释本说明书,并不构成对本说明书的不当限定。在附图中:
图1为本说明书实施例提供的一种定位方法的流程示意图;
图2为本说明书实施例提供的预测定位信息的调整示意图;
图3为本说明书实施例提供的一种定位装置的结构示意图;
图4为本说明书实施例提供的无人驾驶设备的结构示意图。

具体实施方式

[0017] 为使本说明书的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本说明书保护的范围。
[0018] 以下结合附图,详细说明本说明书各实施例提供的技术方案。
[0019] 图1为本说明书提供的一种定位方法的流程示意图,该流程示意图包括:S100:车辆接收全球卫星导航系统GNSS发送的卫星数据。
[0020] 车辆在行驶的过程中,可通过车辆上的接收机获取全球卫星导航系统(Global Navigation Satellite System,GNSS)发送的卫星数据。该卫星数据为卫星的原始数据,该原始数据具体可包括卫星星历数据,比如,卫星的位置信息、卫星的速度等参数。可将车辆接收到卫星数据的时刻定义为当前时刻,本方案欲对车辆在该时刻进行定位。本说明书实施例中的车辆可为无人车及具有辅助驾驶功能的车辆,当然也可以为其他类型的车辆,本说明书实施例对此不作限制。
[0021] S102:根据GNSS发送卫星数据的时间、车辆接收卫星数据的时间,确定车辆与GNSS中各卫星之间的伪距信息。
[0022] 可根据GNSS发送卫星数据的时间,与车辆接收卫星数据的时间之间的时间差,确定车辆与GNSS中各卫星之间的伪距信息。在说明书实施例中,伪距为:在GNSS定位过程中,车辆上的接收机与各卫星之间的大概距离。由于卫星数据在传播过程中受到车辆和卫星的时钟偏差、大气折射等因素影响,因此,该伪距信息并不是车辆与卫星之间的真实距离,存在一定的误差。
[0023] S104:根据上一时刻车辆的定位信息,预测当前时刻车辆的定位信息,作为预测定位信息。
[0024] 在本说明书实施例中,车辆的定位信息可为:车辆所处的世界坐标(x,y)等信息。由于上一时刻车辆的定位信息是已知的,即,上一时刻车辆所处的世界坐标为(x0,y0),同时也已知上一时刻车辆的速度v0、上一时刻车辆的加速度a。因此,可根据上一时刻车辆的定位信息(x0,y0),对当前时刻车辆的定位信息进行预测。
[0025] 可以车辆的行驶为匀加速直线运动进行预测,则可通过匀加速直线运动的公式s2
(t)=v0t+1/2at ,其中,s(t)代表位移,t代表时间;根据该公式获取当前时刻该车辆的世界坐标(x1,y1)等定位信息,作为预测定位信息。在本说明书实施例中,可用ρpre代表当前时刻的预测定位信息。通过匀加速直线运动的公式预测当前时刻该车辆的定位信息的具体计算过程为现有技术,该处不再赘述。此外,也可以该车辆的行驶为匀速直线运动来预测当前时刻该车辆的定位信息。当然,该车辆的行驶还可为其他的运动形式,获取当前时刻车辆定位信息的方式还可为其他方式,本说明书实施例对此不作限制。
[0026] S106:针对GNSS中的每个卫星,根据车辆与该卫星之间的伪距信息、卫星数据中包含的该卫星的位置信息、预测定位信息,确定通过GNSS定位的卫星定位误差。
[0027] 由于车辆能够接收GNSS中各卫星的原始卫星数据,因此,原始卫星数据中所包含的各卫星的位置信息是真实的。针对GNSS中的每个卫星,可根据卫星数据中包含的该卫星的真实位置信息与预测定位信息,确定车辆与该卫星之间的实际距离信息。并根据车辆与该卫星之间的伪距信息(具有一定误差),与车辆与该卫星之间的实际距离信息之间的误差,确定通过GNSS定位的卫星定位误差。
[0028] S108:根据各传感器采集的传感数据以及预测定位信息,确定通过传感数据定位的传感定位误差。
[0029] 其中,传感器可为雷达、摄像头、惯性测量单元(Inertial Measurement Unit,IMU)等。可将各传感器安装于车辆上,用于采集车辆的各种信息,比如,与车辆运动状态、定位相关的信息。通过对各传感器采集的原始传感数据进行分析,能够获取当前时刻车辆的定位信息。通过各传感器所获取的当前时刻车辆的定位信息(即,当前时刻车辆的真实传感器定位信息),以及预测定位信息之间的误差,可确定通过各传感器采集的传感数据定位的传感定位误差。
[0030] S110:采用预设的优化算法,以卫星定位误差与传感定位误差的和值最小化为优化目标,调整预测定位信息,并将调整后的预测定位信息作为当前时刻车辆的定位信息。
[0031] 可采用预设的优化算法,比如列文伯格-马夸尔特(Levenberg-Marquardt,LM)算法,以卫星定位误差(即,卫星与车辆之间的伪距与卫星与车辆之间的实际距离之间的误差)与传感定位误差(即,当前时刻车辆的预测定位信息与当前时刻车辆的真实传感器定位信息之间的误差)的和值最小化为优化目标,即,使综合后的真实数据与预测数据之间的误差最小调整预测定位信息,这样的话,调整后的预测定位信息才能更接近真实定位信息。因此,可将调整后的预测定位信息作为当前时刻车辆的定位信息。
[0032] 通过本说明书实施例,即使车辆上的接收机无法接收4颗以上卫星的卫星数据,也可通过上述的优化算法进行优化,从而获取当前时刻车辆更准确的定位信息。本说明书实施例不仅使GNSS与各传感器之间互相配合进行定位,还充分利用GNSS及各传感器中的原始数据建立误差方程,采用优化算法提高当前时刻车辆的定位精度。
[0033] 在图1的S102中,伪距信息的获取方式具体可为:针对GNSS中的每个卫星,根据GNSS发送该卫星的卫星数据的时间、车辆接收该卫星的卫星数据的时间,确定GNSS发送该卫星的卫星数据的时间与车辆接收该卫星的卫星数据的时间之间的时间差ΔT。可根据时间差ΔT与预设的卫星数据的传播速度VX的乘积,确定车辆与该卫星之间的伪距信息ρ伪距=VX*ΔT。其中,预设的卫星数据的传播速度可为光速。
[0034] 在图1的S106中,卫星定位误差的获取方式具体可为:针对GNSS中的每个卫星,根据卫星数据中包含的该卫星的位置信息,与预测定位信息ρpre之间的距离,确定车辆与该卫星之间的实际距离ρ量测。根据车辆与该卫星之间的伪距信息ρ伪距,以及车辆与该卫星之间的实际距离ρ量测之间的误差,确定通过该卫星定位的误差errorx=ρ伪距-ρ量测。并根据各卫星定位的误差errorx,确定通过GNSS定位的卫星定位误差errorgnss。需要说明的是,通过GNSS定位的卫星定位误差errorgnss既可为各卫星定位的误差errorx的和值,也可为各卫星定位的误差errorx的均值,当然,也可以采用其他方式表示,本说明书实施例对此不作限制。
[0035] 在图1的S108中,若传感器包括:雷达、摄像头中的至少一种。那么,针对该类传感器,传感定位误差的获取方式具体可为:针对每个传感器,获取该传感器采集的传感数据中所包含的与车辆当前所处环境对应的图像数据。根据车辆当前所处环境对应的图像数据,获取与图像数据相匹配的环境在电子地图中所处的位置,作为当前时刻车辆的位置信息ρmea。根据当前时刻车辆的位置信息ρmea与预测定位信息ρpre之间的误差,确定通过该传感器定位的传感定位误差errorpoint=ρpre-ρmea。
[0036] 若传感器为摄像头,那么车辆当前所处环境对应的图像数据可为视觉图像。若传感器为雷达,那么车辆当前所处环境对应的图像数据可为点数据。当图像数据为点云数据时,可根据车辆当前所处环境对应的点云数据,获取与图像数据相匹配的环境在预设的点云地图中所处的位置,作为当前时刻车辆的位置信息ρmea。
[0037] 另外,传感器还可为IMU。通过IMU采集的传感数据确定传感定位误差的方式具体可为:获取IMU采集的传感数据中所包含的车辆从上一时刻到当前时刻的运动信息,该运动信息可为车辆的加速度、角速度等信息。根据上一时刻车辆的定位信息,以及车辆从上一时刻到当前时刻的运动信息,能够计算出当前时刻车辆的IMU定位信息ρimu。需要说明的是,获取当前时刻车辆的IMU定位信息ρimu的具体计算过程为现有技术,该处不再赘述。根据IMU定位信息ρimu与预测定位信息ρpre之间的误差,确定通过IMU的传感数据定位的传感定位误差errorimu=ρpre-ρimu。
[0038] 继续沿用上例,获取了通过GNSS中各卫星定位的误差errorx=ρ伪距-ρ量测,能够得到通过GNSS定位的卫星定位误差errorgnss;获取了通过雷达和/或摄像头等类型的传感器定位的传感定位误差errorpoint=ρpre-ρmea;还获取了通过IMU的传感数据定位的传感定位误差errorimu=ρpre-ρimu。则可采用LM算法,利用公式:f(p)=errorgnss+N*errorpoint+errorimu=M*(ρ伪距-ρ量测)+N*(ρpre-ρmea)+(ρpre-ρimu)获取卫星定位误差与传感定位误差的和值。在该公式中,M代表卫星的个数,N代表雷达和/或摄像头等类型的传感器的个数。可以通过该公式取得的卫星定位误差与传感定位误差的和值f(p)最小化为优化目标,调整预测定位信息ρpre,并将调整后的预测定位信息作为当前时刻车辆的定位信息。
[0039] 在通过LM算法对当前时刻车辆的定位信息进行优化时,还可进一步增加限制条件。具体的,确定车辆周围环境中的任一固定目标物;针对任一传感器,根据该传感器采集的传感数据中包含的当前时刻该固定目标物和车辆的图像数据,确定当前时刻该固定目标物的位置以及车辆与该固定目标物之间的距离;并根据该固定目标物的位置、已知的卫星数据中包含的该卫星的位置、确定该卫星与该固定目标物之间的距离;以卫星定位误差与传感定位误差的和值最小化,且车辆与该卫星之间的伪距、该卫星与该固定目标物之间的距离、车辆与该固定目标物之间的距离满足三角形法则限制条件为优化目标,调整预测定位信息,并将调整后的预测定位信息作为当前时刻车辆的定位信息。
[0040] 进一步的,可使调整后的预测定位信息与未调整的预测定位信息之间的距离小于指定阈值
[0041] 如图2所示,以该卫星、该固定目标物、车辆均采用二维世界坐标系为例,对上述的限制条件举例说明。将该卫星的坐标定义为O星,将当前时刻该固定目标物的坐标定义为O物,将预测的当前时刻车辆的坐标定义为Opre。已知车辆与该卫星之间的伪距为ρ伪距,该卫星与该固定目标物之间的距离为L星物,车辆与该固定目标物之间的距离为L车物,使O星、O物保持固定,ρ伪距、L星物、L车物之间满足三角形法则,调整Opre的位置,将调整后的Opre作为当前时刻车辆的定位信息。另外,在调整Opre位置的过程中,调整幅度不能过大,否则会失真。具体的,可使调整后的Opre与未调整的Opre之间的距离小于指定阈值,可将指定阈值设为2-3米。
[0042] 本说明书实施例通过获取GNSS发送的卫星数据,确定GNSS中各卫星的真实位置信息,并根据向车辆发送卫星数据、车辆接收卫星数据的时间差,与预设的卫星数据的传播速度的乘积确定各卫星与车辆之间的伪距信息。针对GNSS中的每个卫星,通过该卫星的真实位置信息与当前时刻车辆的预测定位信息之间的距离,确定车辆与该卫星之间的实际距离,并根据各卫星与车辆之间的伪距信息与车辆与该卫星之间的实际距离之间的误差,确定经GNSS定位的卫星定位误差errorgnss。另外,还根据各传感器(雷达、摄像头、IMU)采集的传感数据确定当前时刻车辆的传感定位信息,并根据传感定位信息与当前时刻车辆的预测定位信息之间的误差,确定经传感数据定位的传感定位误差,即N*errorpoint+errorimu。采用优化算法,以上述的卫星及传感定位误差的和值f(p)=errorgnss+N*errorpoint+errorimu最小化为优化目标,调整预测定位信息,将调整后的预测定位信息作为当前时刻车辆的定位信息。本说明书实施例不仅使GNSS与各传感器之间互相配合进行定位,还充分利用GNSS及各传感器中的原始数据建立误差方程,采用优化算法提高当前时刻车辆的定位精度,使得车辆在仅能接收GNSS中4颗以下卫星数据的情况下,也能实现较高的定位精度。当面对复杂环境时,还能够实现车辆的全天候无死角精确定位。
[0043] 本说明书提供的上述定位方法具体可应用于针对无人车及具有辅助驾驶功能的车辆在复杂城市环境下的精准定位。其中,无人车可以为无人配送车,该无人配送车可以应用于使用无人配送车进行配送的领域,如,使用无人配送车进行快递、外卖等配送的场景。具体的,在上述的场景中,可使用多个无人配送车所构成的自动驾驶车队进行配送。
[0044] 以上为本说明书实施例提供的定位方法,基于同样的思路,本说明书还提供了相应的装置、存储介质和无人驾驶设备。
[0045] 图3为本说明书实施例提供的一种定位装置的结构示意图,所述装置包括:接收模块200,用于使车辆接收全球卫星导航系统GNSS发送的卫星数据;
伪距确定模块202,用于根据所述GNSS发送所述卫星数据的时间、所述车辆接收所述卫星数据的时间,确定所述车辆与所述GNSS中各卫星之间的伪距信息;
预测定位模块204,用于根据上一时刻车辆的定位信息,预测当前时刻车辆的定位信息,作为预测定位信息;
卫星定位误差确定模块206,用于针对所述GNSS中的每个卫星,根据所述车辆与该卫星之间的伪距信息、所述卫星数据中包含的该卫星的位置信息、所述预测定位信息,确定通过GNSS定位的卫星定位误差;
传感定位误差确定模块208,用于根据各传感器采集的传感数据以及所述预测定位信息,确定通过所述传感数据定位的传感定位误差;
调整模块210,用于采用预设的优化算法,以所述卫星定位误差与传感定位误差的和值最小化为优化目标,调整预测定位信息,并将调整后的预测定位信息作为当前时刻所述车辆的定位信息。
[0046] 可选的,所述伪距确定模块202,具体用于针对所述GNSS中的每个卫星,根据所述GNSS发送该卫星的卫星数据的时间、所述车辆接收该卫星的卫星数据的时间,确定所述GNSS发送该卫星的卫星数据的时间与所述车辆接收该卫星的卫星数据的时间之间的时间差;根据所述时间差与预设的卫星数据的传播速度的乘积,确定所述车辆与该卫星之间的伪距信息。
[0047] 可选的,所述卫星定位误差确定模块206,具体用于针对所述GNSS中的每个卫星,根据所述卫星数据中包含的该卫星的位置信息,与所述预测定位信息之间的距离,确定所述车辆与该卫星之间的实际距离;根据所述车辆与该卫星之间的伪距信息,以及所述车辆与该卫星之间的实际距离,确定通过该卫星定位的误差;根据各卫星定位的误差,确定通过GNSS定位的卫星定位误差。
[0048] 可选的,所述传感定位误差确定模块208,具体用于针对每个传感器,获取该传感器采集的传感数据中所包含的与所述车辆当前所处环境对应的图像数据;根据所述车辆当前所处环境对应的图像数据,获取与所述图像数据相匹配的环境在电子地图中所处的位置,作为当前时刻所述车辆的位置信息;根据当前时刻所述车辆的位置信息,以及所述预测定位信息,确定通过该传感器定位的传感定位误差。
[0049] 可选的,所述传感器为惯性测量单元IMU。所述传感定位误差确定模块208,还用于获取所述IMU采集的传感数据中所包含的所述车辆从上一时刻到当前时刻的运动信息;根据上一时刻车辆的定位信息,以及所述车辆从上一时刻到当前时刻的运动信息,确定当前时刻车辆的IMU定位信息;根据所述IMU定位信息以及所述预测定位信息,确定通过所述IMU的传感数据定位的传感定位误差。
[0050] 本说明书还提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可用于执行上述图1提供的一种定位方法。
[0051] 基于图1所示的定位方法,本说明书实施例还提供了图4所示的无人驾驶设备的结构示意图。如图4,在硬件层面,该无人驾驶设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,以实现上述图1所述的定位方法。
[0052] 当然,除了软件实现方式之外,本说明书并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
[0053] 在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device, PLD)(例如现场可编程阵列(Field Programmable Gate Array,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言
(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware Description Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby Hardware Description Language)等,目前最普遍使用的是VHDL(Very-High-Speed Integrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
[0054] 控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20 以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
[0055] 上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
[0056] 为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
[0057] 本领域内的技术人员应明白,本说明书的实施例可提供为方法、系统、或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0058] 本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0059] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0060] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0061] 在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
[0062] 内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
[0063] 计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0064] 还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0065] 本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0066] 本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
[0067] 本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0068] 以上所述仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈