伪卫星定位方法及装置、设备、存储介质与流程

文档序号:32985835发布日期:2023-01-17 22:43阅读:57来源:国知局
伪卫星定位方法及装置、设备、存储介质与流程

1.本技术涉及定位技术,涉及但不限于伪卫星定位方法及装置、设备、存储介质。


背景技术:

2.全球导航卫星系统(global navigation satellite system,gnss)极大地方便了人们的交通出行,然而,gnss信号在室内通常比较微弱而难以接收。通过在室内部署伪卫星,使得在室内提供类似于室外的gnss定位服务成为了可能,可以满足人们对于室内定位服务日益增长的需求。
3.然而,由于伪卫星布设密度、成本和物理条件等因素的限制和障碍物的遮挡,在室内复杂环境下,难以保证所有区域都具有足够多数量的可见伪卫星。即使可见伪卫星的数量足够多(例如大于或等于4),由于多径干扰等误差的存在,使得某些伪卫星的伪距测量值可能因为具有较大的误差而被剔除,从而缺少足够多的有效伪距测量值进行定位解算,进而导致在某些区域的定位精度较差。


技术实现要素:

4.有鉴于此,本技术提供的伪卫星定位方法及装置、设备、存储介质,能够提高伪卫星定位结果的精度。
5.根据本技术实施例的一个方面,提供一种伪卫星定位方法,包括:根据定位对象的活动区域,确定所述定位对象的约束参数;其中,所述约束参数包括至少一个维度的位置坐标的约束参数;至少根据当前时刻观测得到的伪卫星测量值和上一时刻的目标定位结果,对所述定位对象进行状态估计,得到第一状态估计结果;根据所述约束参数,对所述第一状态估计结果进行修正,得到当前时刻的目标定位结果。
6.根据本技术实施例的一个方面,提供一种伪卫星定位装置,包括:确定模块,配置为根据定位对象的活动区域,确定所述定位对象的约束参数;其中,所述约束参数包括至少一个维度的位置坐标的约束参数;状态估计模块,配置为至少根据当前时刻观测得到的伪卫星测量值和上一时刻的目标定位结果,对所述定位对象进行状态估计,得到第一状态估计结果;修正模块,配置为根据所述约束参数,对所述第一状态估计结果进行修正,得到当前时刻的目标定位结果。
7.根据本技术实施例的一个方面,提供一种电子设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时实现本技术实施例所述的方法。
8.根据本技术实施例的一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现本技术实施例提供的所述的方法。
9.在本技术实施例中,根据已知的先验信息(即定位对象的活动区域),对第一状态估计结果进行约束,得到最终的目标定位结果;如此,一方面,能够解决当可见伪卫星或有效伪卫星测量值数量不足时,定位精度较差的问题;另一方面,在可见伪卫星数量足够时,
能够进一步提高伪卫星定位结果的精度。
10.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。
附图说明
11.此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本技术的实施例,并与说明书一起用于说明本技术的技术方案。显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
12.附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
13.图1为本技术实施例提供的伪卫星定位方法的实现流程示意图;
14.图2为本技术实施例提供的步骤103的实现流程示意图;
15.图3为本技术实施例提供的伪卫星室内定位系统架构示意图;
16.图4为本技术实施例提供的伪卫星定位原理示意图;
17.图5为本技术实施例提供的伪卫星定位方法的实现流程示意图;
18.图6为本技术实施例提供的伪卫星定位装置的结构示意图;
19.图7为本技术实施例提供的电子设备的结构示意图。
具体实施方式
20.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术的具体技术方案做进一步详细描述。以下实施例用于说明本技术,但不用来限制本技术的范围。
21.除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本技术实施例的目的,不是旨在限制本技术。
22.在以下的描述中,涉及到“一些实施例”、“本实施例”、“本技术实施例”以及举例等等,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
23.需要指出,本技术实施例所涉及的术语“第一\第二\第三\第四\第五”等是为了区别类似或不同的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三第四\第五”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本技术实施例能够以除了在这里图示或描述的以外的顺序实施。
24.本技术实施例提供一种伪卫星定位方法,该方法应用于电子设备,该电子设备在实施的过程中可以为各种类型的具有信息处理能力的设备,例如该电子设备可以包括各种具有定位需求的手持终端设备(如手机、平板电脑等)、车载设备、可穿戴设备、无人机、机器人以及各种形式的用户终端设备(terminal device)或移动台(mobile station,ms)等等。该方法所实现的功能可以通过电子设备中的处理器调用程序代码来实现,当然程序代码可
以保存在计算机存储介质中,可见,该电子设备至少包括处理器和存储介质。
25.图1为本技术实施例提供的伪卫星定位方法的实现流程示意图,如图1所示,该方法可以包括以下步骤101至步骤103:
26.步骤101,根据定位对象的活动区域,确定所述定位对象的约束参数;其中,所述约束参数包括至少一个维度的位置坐标的约束参数;
27.步骤102,至少根据当前时刻观测得到的伪卫星测量值和上一时刻的目标定位结果,对所述定位对象进行状态估计,得到第一状态估计结果;
28.步骤103,根据所述约束参数,对所述第一状态估计结果进行修正,得到当前时刻的目标定位结果。
29.在本技术实施例中,根据已知的先验信息(即定位对象的活动区域),对第一状态估计结果进行约束,得到最终的目标定位结果;如此,一方面,能够解决当可见伪卫星或有效伪卫星测量值数量不足时,定位精度较差甚至无法定位的问题,从而提高伪卫星定位结果的可用性;另一方面,在可见伪卫星数量足够时,能够进一步提高伪卫星定位结果的精度。
30.以下分别对上述各个步骤的进一步的可选的实施方式以及相关名词等进行说明。
31.在步骤101中,根据定位对象的活动区域,确定所述定位对象的约束参数;其中,所述约束参数包括至少一个维度的位置坐标的约束参数。
32.在本技术实施例中,对于所述约束参数不做限定,可以仅包括一个维度的位置坐标的约束参数,也可以包括多个维度的位置坐标的约束参数。可以理解,所谓位置坐标的约束参数,是指能够限定/约束该位置坐标的范围的参数。
33.在一些实施例中,所述约束参数包括x坐标的上界值和下界值、y坐标的上界值和下界值以及z坐标的上界值和下界值。
34.可以理解,如果已知定位对象的活动区域,则可以确定定位对象的位置区域边界和位置高度范围。如下表达式(1)所示,x坐标的上界值x2和下界值x1以及y坐标的上界值y2和下界值y1构成了对定位对象的区域边界,该区域边界包括所有可能的定位结果。
[0035][0036]
而z坐标的上界值h2和下界值h1实际上是约束了定位对象的位置高度所处的粗略范围,即h1≤z≤h2。
[0037]
其中,活动区域多指gnss不可用的任何环境,以及即使gnss可用,但是接收的卫星信号的信号质量也不能够满足定位精度需求的任何环境,如表征卫星信号的接收质量参数小于或等于特定阈值。比如,活动区域包括但不限于:办公室、住宅、地下车库、隧道、室内停车场、商场、矿井、桥下、城市峡谷或候车厅等。
[0038]
在一些实施例中,根据所述定位对象的活动区域,确定多个伪卫星的布设位置以及所述z坐标的上界值和下界值;根据所述多个伪卫星的布设位置和所述多个伪卫星的信号覆盖范围,确定所述x坐标的上界值和下界值以及所述y坐标的上界值和下界值;如此,在确定定位对象的区域边界时不仅考虑了其活动区域,还考虑了所在活动区域布设的伪卫星的位置和信号覆盖范围,基于此确定的区域边界更准确,从而有益于提高目标定位结果的精度。
[0039]
在步骤102中,至少根据当前时刻观测得到的伪卫星测量值和上一时刻的目标定位结果,对所述定位对象进行状态估计,得到第一状态估计结果。
[0040]
在本技术实施例中,对于实现步骤102所采用的算法不做限定,可以采用扩展卡尔曼滤波(extended kalman filter,ekf)算法或无迹卡尔曼滤波(unscented kalman filter,ukf)算法等滤波算法,得到第一状态估计结果。也可以采用或移动水平估计(mhe)和因子图优化等基于优化的方法,得到第一状态估计结果。
[0041]
进一步地,在一些实施例中,可以根据所述上一时刻的目标定位结果,确定观测方程的第一转换矩阵;根据所述第一转换矩阵、雅克比矩阵、所述伪卫星测量值和测量噪声,对所述观测方程进行解算,得到所述第一状态估计结果。
[0042]
示例性地,可以将所述伪卫星测量值的方差和所述定位对象在z坐标轴向的速度方差作为所述观测方程的测量噪声,基于此和伪卫星测量值(例如伪距)一起进行ekf更新。
[0043]
假设系统的状态为x=[x y z v
x v
y v
z clk
b clkd]
t
;其中,(x,y,z)表示定位对象的三维位置,(v
x
,vy,vz)表示定位对象的三维速度,(clkb,clkd)表示定位设备中的伪卫星接收机的钟差和钟漂。
[0044]
则添加高度约束后的观测方程如下式(2)所示:
[0045][0046]
式(2)中,yk表示当前时刻的伪卫星测量值(如伪距),表示待确定的第一状态估计结果;ck~n(0rc),vk~n(0ra),rc表示定位对象在z坐标轴向的速度方差,ra表示伪卫星测量值的方差,
[0047]
第一转换矩阵d的表达式如下式(3)所示:
[0048]
d=[0 0 0 j
1 j
2 j
3 0 0]
ꢀꢀ
(3);
[0049]
式(3)中,j3=cos(φ);φ和分别表示上一时刻的目标定位结果所对应的纬度和经度。
[0050]
在步骤103中,根据所述约束参数,对所述第一状态估计结果进行修正,得到当前时刻的目标定位结果。
[0051]
在本技术实施例中,对于实现步骤103的算法不做限定,也就是对修正算法不做限定,可以是各种各样的修正算法。总之,能够根据所述约束参数对第一状态估计结果进行修正,从而得到准确度优于第一状态估计结果的目标定位结果即可。例如,可以通过有效集法进行迭代求解,也可以替换为内点法、惩罚函数法、障碍边界法等其它的不等式约束优化方法,从而得到当前时刻的目标定位结果。
[0052]
在一些实施例中,通过状态投影方法,将所述第一状态估计结果投影至与所述约束参数相关的约束空间,以实现对所述第一状态估计结果的修正,得到所述当前时刻的目标定位结果。
[0053]
进一步地,在一些实施例中,可以采用有效集法进行迭代求解,从而得到当前时刻的目标定位结果。具体地,如图2所示,可以通过如下步骤1030至步骤1039实现步骤103:
[0054]
步骤1030,根据所述第一状态估计结果和预设的第二转换矩阵,从所述定位对象
的约束参数中选取有效约束参数,得到有效约束集。
[0055]
示例性地,约束参数di如果满足cix=di,则称di为有效约束参数,否则,称为无效约束参数;其中,ci为第二转换矩阵,其列数与定位对象的约束参数有关。例如,这里,cix=di中的x是指第一状态估计结果。
[0056]
步骤1031,根据所述第一状态估计结果的协方差和所述第二转换矩阵,确定投影矩阵。
[0057]
示例性地,可以根据下式(4)确定投影矩阵γ:
[0058][0059]
式(4)中,是指第一状态估计结果的协方差矩阵,是指与第j次迭代所用的有效约束集对应的c矩阵。
[0060]
可以理解地,当时,该方法等价于最大条件概率法,即使得最终得到的目标定位结果准确度更高。
[0061]
步骤1032,根据所述投影矩阵、所述第二转换矩阵和所述有效约束集,对所述第一状态估计结果进行修正,得到第二状态估计结果。
[0062]
示例性地,可以根据如下式(5),确定第二状态估计结果
[0063][0064]
式(5)中,表示第一状态估计结果,表示本次迭代所用的有效约束集,表示与对应的c矩阵的子矩阵。
[0065]
步骤1033,根据上一次迭代得到的第二状态估计结果和本次迭代得到的所述第二状态估计结果,确定梯度方向。
[0066]
示例性地,根据如下式(6)确定本次迭代的梯度方向
[0067][0068]
式(6)中,表示本次迭代得到的第二状态估计结果,表示上一次迭代得到的第二状态估计结果。在j=1情况下,即第1次迭代运算中,等于第一状态估计结果;在j>1的情况下,等于上一次迭代得到的第二状态估计结果。
[0069]
步骤1034,确定所述梯度方向是否等于预设值;如果是,执行步骤1035;否则,执行步骤1038。
[0070]
这里可以根据实际需求设置所述预设值,例如,预设值设为0矩阵。
[0071]
步骤1035,根据所述第一状态估计结果的协方差和所述第二转换矩阵,确定所述有效约束集中的每一有效约束参数的拉格朗日乘子。
[0072]
示例性地,可以根据如下式(7)确定各个有效约束参数的拉格朗日乘子λ:
[0073]
[0074]
步骤1036,确定是否每一有效约束参数的拉格朗日乘子均大于或等于0;如果是,结束迭代,将所述第二状态估计结果作为所述当前时刻的目标定位结果;否则,执行步骤1037;
[0075]
步骤1037,根据所述第一状态估计结果的协方差、预设的单位矩阵、所述投影矩阵和所述第二转换矩阵,确定投影后的协方差;以及将所述投影后的协方差作为用以下次迭代运算的协方差,将所述拉格朗日乘子大于或等于0的约束参数作为用以下次迭代运算的有效约束集,返回执行步骤1031,从而得到新的第二状态估计结果。
[0076]
示例性地,可以根据如下式(8)确定投影后的协方差:
[0077][0078]
式(8)中,i为预设的单位矩阵。
[0079]
步骤1038,根据所述有效约束集和所述第一状态估计结果,确定搜索步长。
[0080]
示例性地,可以根据下式(9)确定搜索步长αj:
[0081][0082]
式(9)中,ci表示有效约束集中的第i个约束参数,wk表示第k次迭代时的有效约束集,也称工作集。
[0083]
步骤1039,根据所述搜索步长、所述梯度方向和所述第一状态估计结果,确定用以下次迭代运算的第一状态估计结果,返回执行步骤1030,从而得到新的第二状态估计结果。
[0084]
示例性地,可以根据下式(10)确定用以下次迭代运算的第一状态估计结果
[0085][0086]
下面将说明本技术实施例在一个实际的应用场景中的示例性应用。
[0087]
如图3所示,其示出了伪卫星室内定位系统的架构,通过在室内布设伪卫星系统,可以在室内提供类似于室外gnss的定位服务。用户接收机通过接收多个伪卫星发射的无线信号,利用伪距测量值来确定自身的位置。对于室内三维定位,至少需要4个有效的伪距测量值。在室内复杂环境下,当可见伪卫星或有效伪距测量值数量不足时,使用加权最小二乘法只能进行二维定位。使用ekf方法虽然能够进行三维定位,但是此时的定位精度会明显下降,也可能导致定位结果不可用。
[0088]
图4示出了基于伪卫星的定位原理,如图4所示,基于伪卫星的定位原理与gps定位原理类似。建立伪距观测方程,必须顾及伪卫星钟差、接收机钟差等。为了表达方便,以q表示接收机编号,b表示伪卫星编号,e表示观测历元编号,则伪距观测值ρ

(q,b,e)可表示为如下式(11):
[0089][0090]
式中,c为光速,为接收机钟差,为伪卫星钟差,ρ(q,b,e)为伪卫星到接收机的准确距离,其计算公式如下式(12):
[0091][0092]
式中,伪卫星的位置坐标(xb,yb,zb)是已知的,顾及式(12),在式(11)中只有4个未
知数:三个是接收机的位置坐标(xq,yq,zq),另一个未知量是接收机钟差因此,在同一观测历元,理论上至少观测4颗伪卫星,即可获得4个观测方程式,从而求解出这些未知数。但是,在室内复杂环境下,当可见伪卫星或有效伪距测量值数量不足时,使用加权最小二乘法只能进行二维定位。使用ekf方法虽然能够进行三维定位,但是此时的定位精度会明显下降,也可能导致定位结果不可用。
[0093]
而与gnss定位有所不同,伪卫星的位置是固定不动的。有鉴于此,在本技术实施例中,根据伪卫星的布设位置以及伪卫星信号的有效覆盖范围,在用户终端进行伪卫星室内定位时,可以计算出一个包含所有可能定位结果的区域边界。结合用户的活动区域,可以进一步缩小该区域边界,并得到关于用户位置高度的粗略范围。在本技术实施例中,通过将扩展卡尔曼滤波方法与有效集不等式约束优化方法相结合,对伪卫星的定位结果进行约束,从而充分利用伪卫星的布设位置、伪卫星信号的有效覆盖范围、用户活动区域和用户的位置高度等已知的先验信息,提高室内复杂环境下伪卫星定位的可用性和定位精度。
[0094]
图5为本技术实施例提供的伪卫星定位方法的实现流程示意图,如图5所示,第一部分501表示正常情况下用户终端利用伪卫星测量值(如伪距)进行室内定位的过程。第二部分502表示在本技术实施例中利用伪卫星的布设位置、伪卫星信号的有效覆盖范围、用户活动区域和用户的位置高度等已知的先验信息,在伪卫星测量方程的基础上,添加区域约束和高度约束,进行带约束ekf定位的过程。本技术实施例通过已知的先验信息,对用户终端的位置进行区域约束和高度约束,具体步骤如下s1至s7所述:
[0095]
s1:根据伪卫星的布设位置、伪卫星信号的有效覆盖范围和用户的活动区域等已知信息,计算出一个包含所有可能定位结果的区域边界,即下式(13):
[0096][0097]
s2:一方面,根据用户的活动区域,可以确定用户位置高度所处的粗略范围;另一方面,对于地下停车场、办公室等室内场景,用户的位置高度可以认为基本不变,因此当前时刻相对于上一时刻的垂向速度v
zenu
近似为0。以上信息可以表示为下式(14):
[0098][0099]
其中,rc为的标准偏差,用来表示用户终端垂向速度的不确定性。
[0100]
s3:将用户终端的垂向速度约束作为一个伪测量值,和伪卫星测量值(如伪距)一起进行ekf观测更新。以近似恒速过程模型为例,假设系统的状态为下式(15)所示:
[0101]
x=[x y z v
x v
y v
z clk
b clkd]
t
ꢀꢀ
(15);
[0102]
其中,(x,y,z)表示用户的三维位置,(v
x
,vy,vz)表示用户的三维速度,(clkb,clkd)表示用户伪卫星接收机的钟差和钟漂。则添加高度约束后的观测方程为下式(16):
[0103][0104]
其中,yk表示伪卫星测量值,h为对应的雅克比矩阵,ra表示伪卫星测量值的方差,φ和分别表示上一时刻的定位结果所对应的纬度和经度。
[0105]
s4:将观测更新后的状态估计记为(即步骤s3输出的结果),通过状态投影方法,可以将投影到约束空间,得到附加了区域约束和高度约束后的状态估计(即当前时刻的目标定位结果)。
[0106]
该问题可以表示为下式(17):
[0107][0108]
其中,wk为任意的正定对称加权矩阵,c为约束矩阵,d为区域约束和高度约束。当时,该方法等价于最大条件概率法。
[0109]
该问题实际上是一个带有不等式约束的优化问题,可以使用有效集方法进行迭代求解。对于约束集合d中的某个子约束di(即某个约束参数),当cix=di时,则称di为有效约束,否则称为无效约束。在求解该问题时,可以忽略无效约束,而只考虑有效约束,从而将其转化为一个等式约束问题。对于第j次迭代,将约束集合d中的有效约束的索引所形成的集合记为wj,称为工作集,求解以下(18)所示的等式约束问题:
[0110][0111]
其中,表示对应于wj的有效约束子集,表示与所对应的c矩阵的子矩阵。满足有效约束的状态估计可以分别表示为下式(19):
[0112][0113]
其中,γ称为投影矩阵。投影后的误差协方差矩阵可通过下式(20)得到:
[0114][0115]
s5:计算梯度方向
[0116]
s6:如果根据下式(21)计算有效集中每个约束所对应的拉格朗日乘子λ:
[0117][0118]
如果中每个约束都满足λ≥0,则当前解就是最优解,停止迭代。否则,去掉中λ<0的一个约束,进行下一次迭代。
[0119]
s7:如果根据下式(22)计算搜索步长αj:
[0120][0121]
更新状态并进行下一次迭代。
[0122]
在本技术实施例中,通过将扩展卡尔曼滤波方法与有效集不等式约束优化方法相结合,对伪卫星的定位结果进行约束,从而充分利用伪卫星的布设位置、伪卫星信号的有效覆盖范围、用户活动区域和用户的位置高度等已知的先验信息。所产生的有益效果为:一方面,当可见伪卫星或有效伪距测量值数量不足而导致定位精度较差甚至无法定位时,通过增加区域约束和高度约束,可以提高定位结果的可用性;另一方面,当可见伪卫星数量足够时,通过增加区域约束和高度约束,可以进一步提高伪卫星室内定位的精度。
[0123]
在本技术实施例中,提出了一种附加区域和高度约束的伪卫星室内定位方法,旨在解决室内复杂环境下,当可见伪卫星或有效伪距测量值数量不足时,定位精度较差甚至无法定位的问题。其中,可以对如下几点进行扩展:
[0124]
(1)本技术实施例中所使用的伪卫星信号,包括但不限于gps伪卫星信号、北斗伪卫星信号、伽利略(galileo)伪卫星信号、格洛纳斯(glonass)伪卫星信号、准天顶卫星系统(qzss)伪卫星信号、印度区域(irnss)伪卫星信号以及用于局域定位的无线电测距信号等。
[0125]
(2)本技术实施例中进行伪卫星室内定位时采用了ekf方法,也可以采用无迹卡尔曼滤波(ukf)等其它滤波方法或移动水平估计(mhe)和因子图优化等基于优化的方法。
[0126]
(3)本技术实施例中增加区域约束和高度约束时,采用了有效集法进行迭代求解,也可以替换为内点法、惩罚函数法、障碍边界法等其它的不等式约束优化方法。
[0127]
应当注意,尽管在附图中以特定顺序描述了本技术中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等;或者,将不同实施例中步骤组合为新的技术方案。
[0128]
基于前述的实施例,本技术实施例提供一种伪卫星定位装置,该装置包括所包括的各模块、以及各模块所包括的各单元,可以通过处理器来实现;当然也可通过具体的逻辑电路实现;在实施的过程中,处理器可以为ai加速引擎(如npu等)、gpu、中央处理器(cpu)、微处理器(mpu)、数字信号处理器(dsp)或现场可编程门阵列(fpga)等等。
[0129]
图6为本技术实施例提供的伪卫星定位装置的结构示意图,如图6所示,伪卫星定位装置60包括:
[0130]
确定模块601,配置为根据定位对象的活动区域,确定所述定位对象的约束参数;
其中,所述约束参数包括至少一个维度的位置坐标的约束参数;
[0131]
状态估计模块602,配置为至少根据当前时刻观测得到的伪卫星测量值和上一时刻的目标定位结果,对所述定位对象进行状态估计,得到第一状态估计结果;
[0132]
修正模块603,配置为根据所述约束参数,对所述第一状态估计结果进行修正,得到当前时刻的目标定位结果。
[0133]
在一些实施例中,状态估计模块602,配置为:根据所述上一时刻的目标定位结果,确定观测方程的第一转换矩阵;根据所述第一转换矩阵、雅克比矩阵、所述伪卫星测量值和测量噪声,对所述定位对象进行状态估计,得到所述第一状态估计结果。
[0134]
在一些实施例中,修正模块603,配置为:通过状态投影方法,将所述第一状态估计结果投影至与所述约束参数相关的约束空间,以实现对所述第一状态估计结果的修正,得到所述当前时刻的目标定位结果。
[0135]
进一步地,在一些实施例中,修正模块603,配置为:根据所述第一状态估计结果和预设的第二转换矩阵,从所述定位对象的约束参数中选取有效约束参数,得到有效约束集;根据所述第一状态估计结果的协方差和所述第二转换矩阵,确定投影矩阵;根据所述投影矩阵、所述第二转换矩阵和所述有效约束集,对所述第一状态估计结果进行修正,得到第二状态估计结果;根据上一次迭代得到的第二状态估计结果和本次迭代得到的所述第二状态估计结果,确定梯度方向;如果所述梯度方向等于预设值,根据所述第一状态估计结果的协方差和所述第二转换矩阵,确定所述有效约束集中的每一有效约束参数的拉格朗日乘子;如果每一有效约束参数的拉格朗日乘子均大于或等于0,结束迭代,将所述第二状态估计结果作为所述当前时刻的目标定位结果。
[0136]
进一步地,在一些实施例中,修正模块603,还配置为:如果至少一个有效约束参数的拉格朗日乘子小于0,根据所述第一状态估计结果的协方差、预设的单位矩阵、所述投影矩阵和所述第二转换矩阵,确定投影后的协方差;将所述投影后的协方差作为用以下次迭代运算的协方差,将所述拉格朗日乘子大于或等于0的约束参数作为用以下次迭代运算的有效约束集,返回进行迭代运算得到新的第二状态估计结果。
[0137]
进一步地,在一些实施例中,修正模块603,还配置为:如果所述梯度方向不等于所述预设值,根据所述有效约束集和所述第一状态估计结果,确定搜索步长;根据所述搜索步长、所述梯度方向和所述第一状态估计结果,确定用以下次迭代运算的第一状态估计结果,返回进行迭代运算得到新的第二状态估计结果。
[0138]
在一些实施例中,所述约束参数包括x坐标的上界值和下界值、y坐标的上界值和下界值以及z坐标的上界值和下界值。
[0139]
在一些实施例中,确定模块601,配置为:根据所述定位对象的活动区域,确定多个伪卫星的布设位置以及所述z坐标的上界值和下界值;根据所述多个伪卫星的布设位置和所述多个伪卫星的信号覆盖范围,确定所述x坐标的上界值和下界值以及所述y坐标的上界值和下界值。
[0140]
以上装置实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本技术装置实施例中未披露的技术细节,请参照本技术方法实施例的描述而理解。
[0141]
可以理解的是,在本技术实施例中,涉及到定位结果等相关用户数据,当本技术实
施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
[0142]
需要说明的是,本技术实施例中所述伪卫星定位装置中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。也可以采用软件和硬件结合的形式实现。
[0143]
需要说明的是,本技术实施例中,如果以软件功能模块的形式实现上述的方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得电子设备执行本技术各个实施例所述方法的全部或部分。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read only memory,rom)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本技术实施例不限制于任何特定的硬件和软件结合。
[0144]
本技术实施例提供一种电子设备,图7为本技术实施例的电子设备的硬件实体示意图,如图7所示,所述电子设备70包括存储器701和处理器702,所述存储器701存储有可在处理器702上运行的计算机程序,所述处理器702执行所述程序时实现上述实施例中提供的方法中的步骤。
[0145]
需要说明的是,存储器701配置为存储由处理器702可执行的指令和应用,还可以缓存在处理器702以及电子设备70中各模块待处理或已经处理的数据(例如,图像数据、音频数据、语音通信数据和视频通信数据),可以通过闪存(flash)或随机访问存储器(random access memory,ram)实现。
[0146]
本技术实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中提供的方法中的步骤。
[0147]
本技术实施例提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述方法实施例提供的方法中的步骤。
[0148]
这里需要指出的是:以上存储介质和设备实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本技术存储介质、存储介质和设备实施例中未披露的技术细节,请参照本技术方法实施例的描述而理解。
[0149]
应理解,说明书通篇中提到的“一个实施例”或“一实施例”或“一些实施例”意味着与实施例有关的特定特征、结构或特性包括在本技术的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”或“在一些实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本技术的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过程构成任何限定。上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。上文对各个实施例的描述倾向于强调各个实施例之间的不同之处,其相同或相似之处可以互相参考,为了简洁,本文不再赘述。
[0150]
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关
系,例如对象a和/或对象b,可以表示:单独存在对象a,同时存在对象a和对象b,单独存在对象b这三种情况。
[0151]
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0152]
在本技术所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个模块或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或模块的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
[0153]
上述作为分离部件说明的模块可以是、或也可以不是物理上分开的,作为模块显示的部件可以是、或也可以不是物理模块;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部模块来实现本实施例方案的目的。
[0154]
另外,在本技术各实施例中的各功能模块可以全部集成在一个处理单元中,也可以是各模块分别单独作为一个单元,也可以两个或两个以上模块集成在一个单元中;上述集成的模块既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
[0155]
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(read only memory,rom)、磁碟或者光盘等各种可以存储程序代码的介质。
[0156]
或者,本技术上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得电子设备执行本技术各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、rom、磁碟或者光盘等各种可以存储程序代码的介质。
[0157]
本技术所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。
[0158]
本技术所提供的几个产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。
[0159]
本技术所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。
[0160]
以上所述,仅为本技术的实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1