位置数据修正方法、装置、计算机设备和存储介质与流程

文档序号:20877956发布日期:2020-05-26 16:51阅读:199来源:国知局
位置数据修正方法、装置、计算机设备和存储介质与流程

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



背景技术:

在自动驾驶领域中,自动驾驶通常需要通过交通工具中的仪器预测交通工具的行驶路线、行驶位置,然后依靠以计算机系统为主的智能驾驶仪来实现无人驾驶。然而,传统方法中通过仪器预测的得到位置数据不准确。



技术实现要素:

基于此,有必要针对上述技术问题,提供一种位置数据修正方法、装置、计算机设备和存储介质,提高位置数据预测的准确性。

一种位置数据修正方法,所述方法包括:

获取第一时刻的第一定位数据以及预测的所述第一时刻的第一位置数据;

根据所述第一定位数据以及所述第一位置数据得到定位误差值;

获取在第一时间段对应的位置预测误差值,其中,所述第一时间段是所述第一时刻之前的时间段;

根据所述定位误差值和所述位置预测误差值修正所述第一位置数据,得到目标位置数据。

一种位置数据修正装置,所述装置包括:

第一获取模块,用于获取第一时刻的第一定位数据以及预测的所述第一时刻的第一位置数据;

确定模块,用于根据所述第一定位数据以及所述第一位置数据得到定位误差值;

第二获取模块,用于获取在第一时间段对应的位置预测误差值,其中,所述第一时间段是所述第一时刻之前的时间段;

修正模块,用于根据所述定位误差值和所述位置预测误差值修正所述第一位置数据,得到目标位置数据。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

获取第一时刻的第一定位数据以及预测的所述第一时刻的第一位置数据;

根据所述第一定位数据以及所述第一位置数据得到定位误差值;

获取在第一时间段对应的位置预测误差值,其中,所述第一时间段是所述第一时刻之前的时间段;

根据所述定位误差值和所述位置预测误差值修正所述第一位置数据,得到目标位置数据。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

获取第一时刻的第一定位数据以及预测的所述第一时刻的第一位置数据;

根据所述第一定位数据以及所述第一位置数据得到定位误差值;

获取在第一时间段对应的位置预测误差值,其中,所述第一时间段是所述第一时刻之前的时间段;

根据所述定位误差值和所述位置预测误差值修正所述第一位置数据,得到目标位置数据。

上述位置数据修正方法、装置、计算机设备和存储介质,获取第一时刻的定位数据以及预测的第一时刻的第一位置数据,根据定位数据以及第一位置数据得到定位误差值,能够通过较为准确的定位数据得到定位数据与第一位置数据之间的误差;获取在第一时间段对应的位置预测误差值,根据定位误差值和位置预测误差修正第一位置数据,得到目标位置数据,能根据定位误差值和位置预测误差值两种误差对预测出的第一位置数据进行修正,从而能够消除在第一时间段内累积的位置预测误差值,即消除一段时间内积累的误差,那么后续得到的第二位置数据能够更加准确。

附图说明

图1为一个实施例中位置数据修正方法的应用环境图;

图2为一个实施例中位置数据修正方法的流程示意图;

图3为另一个实施例中位置数据修正方法的流程示意图;

图4为一个实施例中修正第一位置数据的流程示意图;

图5为一个实施例中确定第一方差值的流程示意图;

图6为一个实施例中位置数据修正装置的结构框图;

图7为一个实施例中计算机设备的内部结构图。

具体实施方式

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

可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将一个数据与另一个区分。举例来说,在不脱离本申请的范围的情况下,可以将第一方差值称为第二方差值,且类似地,可将第二方差值称为第一方差值。第一方差值和第二方差值两者都是方差值,但其不是同一方差值。

本申请提供的位置数据修正方法,可以应用于如图1所示的应用环境中。其中,交通工具110中可包括计算机设备,计算机设备可用于获取数据、处理数据和输出数据等。计算机设备可通过网络与其他服务器等进行通信。交通工具可以是车辆、飞机等不限于此。计算机设备可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。

在一个实施例中,如图2所示,提供了一种位置误差修正方法的流程示意图。imu(inertialmeasurementunit,惯性测量单元)可用于测量物体三轴姿态角、角速率、加速度、运动方向中至少一种数据。也可以通过陀螺仪测量交通工具的角速度、加速度、运动方向等。编码器(encoder)可用于获得无人车的运动速度。或者通过加速度计获取无人车的运动速度。通过惯性测量单元和编码器能够预测下一个时刻无人车的位置。积分器可视为一个软件模块,用于根据imu和编码器得到的数据,按照运动学模型计算得到无人车的位置。位置数据的预测频率取决于imu和编码器的数据频率。使用的测试工具中编码器数据的发送频率是20hz(赫兹),imu的数据频率是100hz(赫兹),因此位置数据的发送频率能达到20hz(赫兹)。图中以t4时刻为第一时刻,即当前时刻。当获取到第一定位数据时,积分器b会从上一个定位数据对应的时刻开始按照积分器a做实时预测的方法重新预测当前定位数据对应第一时刻的位置,预测完成后与定位数据做对比计算误差,然后将这个误差作为观测值,与通过误差状态卡尔曼滤波方法(errorstatekalmanfilter)预测出的积分误差融合后确定该时刻的目标误差值。然后将这个目标误差值注入积分器a对应时刻的位置预测值来进行修正。定位数据是带有时间戳的,但是因为数据传输延迟,导致收到定位数据的时刻和时间戳的时刻不同。因此当前定位数据对应时刻位置即是当前在处理的定位数据的时间戳对应时刻无人车所在的位置。

在一个实施例中,无人车可通过融合imu(惯性测量单元)、编码器等传感器进行无人车状态估计,但是imu和编码器都是有误差的传感器,因此如果仅仅依靠它们进行状态估计,估计的误差就会逐渐累积增大。为了去除这种逐渐累加的误差,需要依靠其他传感器来校正。于是可以使用定位信号例如gnss(globalnavigationsatellitesystem,全球导航卫星系统)、gps(globalpositioningsystem,全球定位系统)等对上述预测结果进行校准。但是定位信号准确度和稳定性是挑战性极高的,尤其是在多高楼、树木等高大阻碍物的环境中,定位信号容易被阻挡。除此之外定位信号在传播路径中产生反射导致的多路径现象,在大气层中折射导致的传输时延、卫星时钟误差等问题会导致解算位置时产生一定的误差。在好的接收条件下,定位精度一般为几米,如果使用差分定位技术,精度可以改善到米级甚至厘米级。但是这种好的接收条件在城市应用场景中非常苛刻,难以保证时刻都有很好的定位环境。一旦不能识别并屏蔽掉潜在误差较大的定位数据,定位的结果就会被错误的定位数据带偏,甚至会导致定位结果随着错误的定位数据发生震荡、波动等现象。这样的情况一旦发生,对无人车后续的路径规划和控制将造成巨大的影响。而单纯依靠传感器进行位置预测会逐渐累积误差,需要消除其累积误差才能确保预测位置的准确性。

因此,如图3所示,以交通工具为无人车为例,以该方法应用于图1中的无人车为例进行说明,为另一个实施例中位置误差修正方法的流程示意图,包括:

步骤302,获取第一时刻的第一定位数据以及预测的第一时刻的第一位置数据。

其中,第一时刻可以是指任意一个时刻,具体可以是当前时刻。例如第一时刻可以是t1时刻、t2时刻等不限于此。定位数据是用于对无人车进行定位的数据。例如定位数据可以是gps(globalpositioningsystem,全球定位系统)数据、gnss(globalnavigationsatellitesystem,全球导航卫星系统)数据等不限于此。定位数据中可包括经度和纬度数据,还可以包括高度等数据。第一位置数据是指通过传感器预测得到的位置数据。位置数据中同样可包括经度和纬度数据,还可以包括高度等数据。例如,传感器根据t3时刻无人车的方向和速度等预测得到t4时刻无人车的位置数据,而t4时刻即为本实施例中的第一时刻。

具体地,无人车通过网络获取第一时刻的第一定位数据以及通过传感器预测得到的第一时刻的第一位置数据。

步骤304,根据第一定位数据以及第一位置数据得到定位误差值。

具体地,第一定位数据和第一位置数据可能均有一定的误差。无人车可获取定位数据对应的第一误差值,以及第一位置数据对应的第二误差值,根据第一误差值以及第二误差值得到定位误差值。无人车可将第一误差值和第二误差值相加得到定位误差值。也可以将第一误差值相减得到定位误差值等不限于此。其中,第一误差值是指第一时刻对应的定位数据自身带的误差值,每个定位数据对应的定位信号均有对应的误差值。第二误差值是指第一位置数据自身带的误差值。每个位置数据均有对应的误差值。

步骤306,获取在第一时间段对应的位置预测误差值,其中,第一时间段是第一时刻之前的时间段。

其中,无人车每次通过传感器进行位置预测时均有误差,并且随着预测时间增长,误差会积累,导致误差越来越大。第一时间段对应的位置预测误差值是指在第一时刻之前的时间段内积累的位置预测误差值。第一时间段具体可以是在第一时刻之前且与第一时刻相邻的时间段。例如第一时刻是指t4时刻,那么第一时间段可以是t1至t4这个时间段。

具体地,位置预测误差值也可称为积分误差,是imu本身的误差在积分时间段内的积分结果。积分误差可以是指在两个积分器位置间隔的时间段内累计的积分值。某个时间的位置预测误差值=系数a×速度误差+系数b×上一次预测的位置误差。对该公式进行时间积分即等于某时间段内的位置预测误差值=系数a×t×速度误差+系数b×上一次预测的位置误差×t。无人车获取在第一时刻之前的第一时间段对应的位置预测误差值。

步骤308,根据定位误差值和位置预测误差值修正第一位置数据,得到目标位置数据。

具体地,目标位置数据是修正第一位置数据之后得到的位置数据,即目标位置数据。无人车将定位误差值和位置预测误差值进行融合,得到目标误差值;根据目标误差值修正第一位置数据,得到目标位置数据。无人车可通过误差卡尔曼滤波算法将定位误差值和位置预测误差值进行融合。卡尔曼滤波算法自动通过二者的方差计算得到相应的比例,并处理,得到目标位置数据。例如,假设目标误差值e,积分器a对应时刻的第一位置数据为p1,目标位置数据为p2,则p2=p1+e。

上述位置数据修正方法,获取第一时刻的定位数据以及预测的第一时刻的第一位置数据,根据定位数据以及第一位置数据得到定位误差值,能够通过较为准确的定位数据得到定位数据与第一位置数据之间的误差;获取在第一时间段对应的位置预测误差值,根据定位误差值和位置预测误差修正第一位置数据,得到目标位置数据,能根据定位误差值和位置预测误差值两种误差对预测出的第一位置数据进行修正,从而能够消除在第一时间段内累积的位置预测误差值,即消除一段时间内积累的误差,那么后续得到的第二位置数据能够更加准确。

在一个实施例中,如图4所示,为一个实施例中修正第一位置数据的流程示意图。根据定位误差值和位置预测误差值修正第一位置数据,包括:

步骤402,获取定位误差值对应的第一权重,以及位置预测误差值对应的第二权重。

步骤404,根据第一权重和第二权重对定位误差值和位置预测误差值进行对应的加权处理,得到目标误差值。

其中,定位误差值与第一权重对应,位置预测误差值与第二权重对应。第一权重和第二权重的值可以相等,也可以不相等。第一权重和第二权重可以是无人车预设的权重,也可以是根据定位数据进行计算后得到的权重。当定位数据的准确性高时,定位误差值对应的第一权重较大;当第一位置数据的准确性高时,位置预测误差值对应的第二权重较大。

具体地,无人车获取定位误差值对应的第一权重,以及位置预测误差值对应的第二权重,根据第一权重和第二权重对定位误差值和位置预测误差值进行对应的加权处理,得到目标误差值。例如,第一权重为0.3,第二权重为0.7,那么目标误差值=0.3×定位误差值+0.7×位置预测误差值。

步骤406,根据目标误差值修正第一位置数据。

具体地,例如,假设目标误差值e,积分器a对应时刻的第一位置数据为p1,目标位置数据为p2,则p2=p1+e。

本实施例中,将定位误差值和位置预测误差值进行融合,得到目标误差值,包括:获取定位误差值对应的第一权重,以及位置预测误差值对应的第二权重;根据第一权重和第二权重对定位误差值和位置预测误差值进行对应的加权处理,得到目标误差值。

上述位置数据修正方法,获取定位误差值对应的第一权重,以及位置预测误差值对应的第二权重,根据第一权重和第二权重对定位误差值和位置预测误差值进行对应的加权处理,得到目标误差值,根据目标误差值修正第一时刻的位置数据,可通过权重得到第一位置数据的修正幅度,从而能够消除在第一时间段内累积的位置预测误差值,即消除一段时间内积累的误差,那么后续得到的第二位置数据能够更加准确。

在一个实施例中,第一权重的获取方式,包括:获取定位数据对应的第一方差值;获取位置预测误差值对应的第二方差值;根据第一方差值以及第二方差值确定第一权重,其中,第一方差值与第一权重呈负相关。

具体地,第一方差值用于表征定位数据的准确性。第二方差值用于表征第一位置数据的准确性。当方差值越大时,准确性越小;当方差值越小时,准确性越大。因此,当第一方差值小于第二方差值时,第一权重大于第二权重。第一方差值与第一权重呈负相关,第二方差值与第二权重呈负相关。定位系统在计算定位数据时,可计算出每个定位数据对应的方差值。传感器在预测得到第一位置数据时,第一位置数据同样具有对应的方差值。而第一时间段对应的位置预测误差值对应的第二方差值,即为某一时间段内的位置数据累积的方差值。无人车可根据第一方差值以及第二方差值确定第一权重以及第二权重。

本实施例中,在定位数据可靠性高(最终方差值足够小)的时候,定位数据对预测的第一位置数据的影响较大,定位数据能够对预测的第一位置数据进行校准,从而间歇性地消除imu和编码器导致的累积误差。

在定位数据可靠性较低(最终方差值比较大)的情况下,定位数据对预测的第一位置数据的修正作用将会被压制得非常小,甚至没有修正作用,以此来减少不准确、不稳定的定位数据对第一位置数据造成的影响。

本实施例中,当定位数据的方差比较大时,在误差状态卡尔曼滤波器计算比例系数的时候就会给定位数据赋予一个小的比例,这样就相当于定位数据对最终结果的修正作用小。举个例子,当定位数据没有方差而位置预测误差值的方差无穷大时,明显是定位数据更准确。这个时候误差状态卡尔曼滤波器计算出的二者的权重就近似于定位数据是100%,而位置预测误差值是0。这样就是定位对最终结果的修正作用很大。因为如果定位显示误差是1,最终就会修正1。但是如果二者的方差相等,计算出的比例是各自50%,定位误差值为1,位置预测误差值是0.8,这时候按照比例就只修正了1*0.5+0.8*0.5=0.9。在这种情况下定位的修正作用相当于只有50%。

上述位置数据修正方法,获取定位数据对应的第一方差值,获取位置预测误差值对应的第二方差值,根据第一方差值以及第二方差值确定第一权重,其中,第一方差值与第一权重呈负相关,能够根据每种数据的准确性来确定第一权重,从而更加准确地修正第一位置数据,也使得后续预测得到的位置数据更加准确。

在一个实施例中,获取第一定位数据对应的第一方差值,包括:获取第一定位数据对应的第一定位方差值;获取在第一时刻之前至少两个时刻对应的定位差分方差;根据第一定位方差值以及定位差分方差确定第一定位数据对应的第一方差值。

具体地,每个定位数据具有对应的定位方差值。例如,t1,t2,t3,t4,t5时刻gnss信号本身带有的方差值分别为d1,d2,d3,d4,d5。在第一时刻之前至少两个时刻对应的定位差分方差是指该至少两个时刻对应一个定位差分方差。以第一时刻为t5时刻为例,之前的时刻为t1,t2,t3,t4时刻,那么t1,t2,t3,t4时刻对应一个定位差分方差dδ。无人车根据第一定位方差值以及定位差分方差能够计算出一个累积的最终方差值,将这个最终方差值作为第一定位数据对应的第一方差值。

本实施例中,定位数据本身会带有定位精度估计值,即第一定位方差值。比如在定位数据中,有三维位置精度因子、水平分量精度因子、钟差精度因子等精度估计字段。在进行gnss数据解算时,会通过这些字段的值计算出一个gnss数据的方差值表征信号的准确性。但是这个值还不足以帮我们判断gnss数据的可靠性。原因是这些精度估计值是通过考虑gnss信号接收机和所能观测到的卫星数量及其几何分布来确定的。比如如果接收机收到的卫星信号中,有两颗卫星距离很近,这两颗卫星的信号在角度较小的地方就会有一个重叠的区域,距离越近,重叠的区域越大,定位的潜在误差就越大,精度因子的值就越大,准确性越低。

上述位置数据修正方法,获取第一定位数据对应的第一定位方差值获取在第一时刻之前至少两个时刻对应的定位差分方差,根据第一定位方差值以及定位差分方差确定第一定位数据对应的第一方差值,能够得到第一时刻之前与定位数据相关的累积方差值,从而确定第一权重,提高权重的准确性,从而提高修正准确性。

在一个实施例中,获取在第一时刻之前至少两个时刻对应的定位差分方差,包括:获取在第一时刻之前至少两个时刻中每个时刻对应的第二定位数据;根据每个时刻对应的第二定位数据得到相邻两个时刻对应的定位差分值;根据定位差分值确定定位差分方差。

其中,以第一时刻为t5时刻为例,在t5时刻之前有t1、t2、t3和t4时刻。那么将t1、t2、t3和t4分别对应的定位数据称为第二定位数据。那么无人车根据每个时刻对应的第二定位数据得到相邻两个时刻对应的定位差分值。即,t2和t1对应的定位差分值,t3和t2对应的定位差分值……不限于此。

定义t1、t2、t3、t4、t5时刻的定位数据本身带有的方差值分别为d1、d2、d3、d4、d5。对应的定位数据中分别包括b1(纬度)、l1(经度)、h1(高度),b2、l2、h2……b5、l5、h5。定义经纬高的差分数据分别为δ1^b、δ1^l、δ1^h,δ2^b、δ2^l、δ2^h……δ4^b、δ4^l、δ4^h。定义理想状态下定位信号的方差为d。当我们收到t2时刻的定位数据时,首先计算相邻两个时刻对应的定位差分值,如下:

δ1^b=b2-b1,δ1^l=l2-l1,δ1^h=h2-h1

以此类推计算其他时刻的定位差分值。当收到t5时刻的定位数据时,我们拥有了四组差分数据,然后我们计算出这四组差分数据的定位差分方差为dδ。

上述位置数据修正方法,获取在第一时刻之前至少两个时刻中每个时刻对应的第二定位数据;根据每个时刻对应的第二定位数据得到相邻两个时刻对应的定位差分值;根据定位差分值确定定位差分方差,能够获取根据定位数据确定该定位数据的准确性,从而确定定位数据的权重,以减少不准确的数据对预测的位置数据的影响。

在一个实施例中,如图5所示,为一个实施例中确定第一方差值的流程示意图。根据第一定位方差值以及定位差分方差确定定位数据对应的第一方差值,包括:

步骤502,获取参考定位方差值,其中,参考定位方差值根据参考定位信号得到。

其中,参考定位方差值根据参考定位数据得到的。参考定位方差值是一个固定值,不随任何因素变化。为了确保信号的稳定性,参考定位数据是指在天气条件很好,毫无遮挡的路况中运行时的参考定位信号。参考定位信号的方差作为衡量信号的方差大小标准。无人车获取预先存储的参考定位方差值。

步骤504,根据定位差分方差和参考定位方差值得到方差倍率。

具体地,定义t1、t2、t3、t4、t5时刻的定位数据本身带有的方差值分别为d1、d2、d3、d4、d5。对应的定位数据中分别包括b1(纬度)、l1(经度)、h1(高度),b2、l2、h2……b5、l5、h5。定义经纬高的差分数据分别为δ1^b、δ1^l、δ1^h,δ2^b、δ2^l、δ2^h……δ4^b、δ4^l、δ4^h。定义理想状态下定位信号的方差为d。当我们收到t2时刻的定位数据时,首先计算定位差分数值如下:

δ1^b=b2-b1,δ1^l=l2-l1,δ1^h=h2-h1

以此类推计算其他时刻的定位差分值。当收到t5时刻的定位数据时,我们拥有了四组差分数据,然后我们计算出这四组差分数据的定位差分方差为dδ。这个dδ不是一个单独的值,它是一个矩阵,这个矩阵里面包含着纬度差分方差、经度差分方差和高度差分方差。具体地,这个定位差分方差矩阵可以是对角矩阵。其中,纬度差分方差可根据δ1^b、δ2^b、δ3^b、δ4^b计算。经度差分方差可根据δ1^l、δ2^l、δ3^l、δ4^l计算。高度差分方差可根据δ1^h、δ2^h、δ3^h、δ4^h计算。用方差做计算的时候也是直接用矩阵来操作,各个量的方差独立计算。方差倍率可用于衡量第一定位数据对应的信号相较于理想情况下的不可靠程度。具体地,无人车将定位差分方差与参考定位差分值相除得到方差倍率。或者无人车将定位差分方差与参考定位差分值相减得到方差倍率等不限于此。

步骤506,根据方差倍率、定位差分方差以及第一定位方差值确定第一定位数据对应的第一方差值,其中,第一方差值与定位差分方差呈正相关。

其中,第一方差值与定位差分方差呈正相关。即定位差分方差中的值越大,第一方差值越大;定位差分方差中的值越小,第一方差值越小。

具体地,无人车可将方差倍率与定位差分方差相乘后再加上第一定位差分方差值进行计算,得到第一定位数据对应的第一方差值。例如,以t5为第一时刻为例,第一方差值

其中,由于dδ对应的是平方计算,dδ对第一方差值的影响大于第一定位方差值对第一方差值的影响。在这样的计算方式下,我们既利用了定位数据本身带有的精度因子数据,也就是参考了卫星几何位置的影响。也考虑了实际运行环境情况对定位数据的影响。并且我们通过计算方差倍率扩大了实际收到的定位数据的变化程度的影响,一旦收到的定位数据变化幅度过大,将会导致其方差迅速变大,从而减小其对我们预测的定位数据的影响,保证定位数据的稳定性。

上述位置数据修正方法,获取参考定位方差值,其中,参考定位方差值根据参考定位信号得到,根据定位差分方差和参考定位方差值得到方差倍率,根据方差倍率、定位差分方差以及第一定位方差值确定第一定位数据对应的第一方差值,其中,第一方差值与定位差分方差呈正相关,能够得到更加准确的第一方差值,从而确定权重大小。

在一个实施例中,该位置数据修正方法,还包括:获取传感器在第一时刻的移动数据;根据移动数据以及目标位置数据,预测得到第二时刻的第二位置数据,其中,第二时刻是第一时刻的后向时刻。

其中,后向时刻是指在第一时刻之后的时刻。具体地第二时刻可以是与第一时刻相邻的下一个时刻。移动数据可包括运动方向、运动速度等不限于此。

具体地,无人车可通过imu获取无人车的运动方向,通过编码器能够获取无人车的运动速度。无人车根据运动方向、运动速度以及目标位置数据,预测得到第二时刻的第二位置数据。即根据当前的位置数据,以及当前的运动方向和运动速度,预测得到下一时刻的位置数据。

本实施例中,修正之后,被修正时刻之后的所有时刻都要重新进行预测,因为之前的预测已经是错误的。循环重复进行这个过程,每当有定位数据到来就会对对应时刻的第一位置数据进行一次修正。通过这样的方式来保证定位数据的尽可能准确。

上述位置数据修正方法,获取传感器在第一时刻的移动数据,根据移动数据以及目标位置数据,预测得到第二时刻的第二位置数据,其中,第二时刻是第一时刻的后向时刻,能够依据消除掉定位误差和传感器误差的目标位置数据进行下一时刻的位置预测,提高预测的准确性,避免无人车偏离航线。

在一个实施例中,一种误差数据修正方法,该方法包括:

步骤a1,获取第一时刻的第一定位数据以及预测的第一时刻的第一位置数据。

步骤a2,根据第一定位数据以及第一位置数据得到定位误差值。

步骤a3,获取在第一时间段对应的位置预测误差值,其中,第一时间段是第一时刻之前的时间段。

步骤a4,获取第一定位数据对应的第一定位方差值。

步骤a5,获取在第一时刻之前至少两个时刻中每个时刻对应的第二定位数据。

步骤a6,根据每个时刻对应的第二定位数据得到相邻两个时刻对应的定位差分值。

步骤a7,根据定位差分值确定定位差分方差。

步骤a8,获取参考定位方差值,其中,参考定位方差值根据参考定位数据得到。

步骤a9,根据定位差分方差和参考定位方差值得到方差倍率。

步骤a10,根据方差倍率、定位差分方差以及定位方差值确定定位数据对应的第一方差值,其中,第一方差值与定位差分方差呈正相关。

步骤a11,获取位置预测误差值对应的第二权重。

步骤a12,根据第一权重和第二权重对定位误差值和位置预测误差值进行对应的加权处理,得到目标误差值。

步骤a13,根据目标误差值修正第一位置数据,得到目标位置数据。

上述位置数据修正方法,获取第一时刻的定位数据以及预测的第一时刻的第一位置数据,根据定位数据以及第一位置数据得到定位误差值,能够通过较为准确的定位数据得到定位数据与第一位置数据之间的误差;获取在第一时间段对应的位置预测误差值,获取定位数据对应的第一方差值,获取位置预测误差值对应的第二方差值,根据第一方差值以及第二方差值确定第一权重,其中,第一方差值与第一权重呈负相关,能够根据每种数据的准确性来确定第一权重,得到目标位置数据,能根据定位误差值和位置预测误差值两种误差对预测出的第一位置数据进行修正,从而能够消除在第一时间段内累积的位置预测误差值,即消除一段时间内积累的误差,那么后续得到的第二位置数据能够更加准确。

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

在一个实施例中,如图6所示,提供了一种位置数据修正装置,包括:第一获取模块602、确定模块604、第二获取模块606和修正模块608,其中:

第一获取模块602,用于获取第一时刻的第一定位数据以及预测的第一时刻的第一位置数据;

确定模块604,用于根据第一定位数据以及第一位置数据得到定位误差值;

第二获取模块606,用于获取在第一时间段对应的位置预测误差值,其中,第一时间段是第一时刻之前的时间段;

修正模块608,用于根据定位误差值和位置预测误差值修正第一位置数据,得到目标位置数据。

上述位置数据修正装置,获取第一时刻的定位数据以及预测的第一时刻的第一位置数据,根据定位数据以及第一位置数据得到定位误差值,能够通过较为准确的定位数据得到定位数据与第一位置数据之间的误差;获取在第一时间段对应的位置预测误差值,根据定位误差值和位置预测误差修正第一位置数据,得到目标位置数据,能根据定位误差值和位置预测误差值两种误差对预测出的第一位置数据进行修正,从而能够消除在第一时间段内累积的位置预测误差值,即消除一段时间内积累的误差,那么后续得到的第二位置数据能够更加准确。

在一个实施例中,修正模块608用于获取定位误差值对应的第一权重,以及位置预测误差值对应的第二权重;根据第一权重和第二权重对定位误差值和位置预测误差值进行对应的加权处理,得到目标误差值;根据目标误差值修正第一位置数据。

上述位置数据修正装置,获取定位误差值对应的第一权重,以及位置预测误差值对应的第二权重,根据第一权重和第二权重对定位误差值和位置预测误差值进行对应的加权处理,得到目标误差值,根据目标误差值修正第一时刻的位置数据,可通过权重得到第一位置数据的修正幅度,从而能够消除在第一时间段内累积的位置预测误差值,即消除一段时间内积累的误差,那么后续得到的第二位置数据能够更加准确。

在一个实施例中,修正模块608用于获取定位数据对应的第一方差值;获取位置预测误差值对应的第二方差值;根据第一方差值以及第二方差值确定第一权重,其中,第一方差值与第一权重呈负相关。

上述位置数据修正装置,获取定位数据对应的第一方差值,获取位置预测误差值对应的第二方差值,根据第一方差值以及第二方差值确定第一权重,其中,第一方差值与第一权重呈负相关,能够根据每种数据的准确性来确定第一权重,从而更加准确地修正第一位置数据,也使得后续预测得到的位置数据更加准确。

在一个实施例中,修正模块608用于获取第一定位数据对应的第一定位方差值;获取在第一时刻之前至少两个时刻对应的定位差分方差;根据第一定位方差值以及定位差分方差确定第一定位数据对应的第一方差值。

上述位置数据修正装置,获取第一定位数据对应的第一定位方差值获取在第一时刻之前至少两个时刻对应的定位差分方差,根据第一定位方差值以及定位差分方差确定第一定位数据对应的第一方差值,能够得到第一时刻之前与定位数据相关的累积方差值,从而确定第一权重,提高权重的准确性,从而提高修正准确性。

在一个实施例中,修正模块608用于获取在第一时刻之前至少两个时刻中每个时刻对应的第二定位数据;根据每个时刻对应的第二定位数据得到相邻两个时刻对应的定位差分值;根据定位差分值确定定位差分方差。

上述位置数据修正装置,获取在第一时刻之前至少两个时刻中每个时刻对应的第二定位数据;根据每个时刻对应的第二定位数据得到相邻两个时刻对应的定位差分值;根据定位差分值确定定位差分方差,能够获取根据定位数据确定该定位数据的准确性,从而确定定位数据的权重,以减少不准确的数据对预测的位置数据的影响。

在一个实施例中,修正模块608用于获取参考定位方差值,其中,参考定位方差值根据参考定位信号得到;根据定位差分方差和参考定位方差值得到方差倍率;根据方差倍率、定位差分方差以及第一定位方差值确定第一定位数据对应的第一方差值,其中,第一方差值与定位差分方差呈正相关。

上述位置数据修正装置,获取参考定位方差值,其中,参考定位方差值根据参考定位信号得到,根据定位差分方差和参考定位方差值得到方差倍率,根据方差倍率、定位差分方差以及第一定位方差值确定第一定位数据对应的第一方差值,其中,第一方差值与定位差分方差呈正相关,能够得到更加准确的第一方差值,从而确定权重大小。

在一个实施例中,第一获取模块602还用于获取传感器在第一时刻的移动数据;根据移动数据以及目标位置数据,预测得到第二时刻的第二位置数据,其中,第二时刻是第一时刻的后向时刻。

上述位置数据修正装置,获取传感器在第一时刻的移动数据,根据移动数据以及目标位置数据,预测得到第二时刻的第二位置数据,其中,第二时刻是第一时刻的后向时刻,能够依据消除掉定位误差和传感器误差的目标位置数据进行下一时刻的位置预测,提高预测的准确性,避免无人车偏离航线。

关于位置数据修正装置的具体限定可以参见上文中对于位置数据修正方法的限定,在此不再赘述。上述位置数据修正装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、运营商网络、nfc(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种位置数据修正方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

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

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时该处理器执行计算机程序时实现上述各个方法实施例中的步骤。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各个方法实施例中的步骤。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-onlymemory,rom)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(randomaccessmemory,ram)或外部高速缓冲存储器。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(staticrandomaccessmemory,sram)或动态随机存取存储器(dynamicrandomaccessmemory,dram)等。

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

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

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