CN114384569A - 终端定位方法、装置、设备以及介质 - Google Patents

终端定位方法、装置、设备以及介质 Download PDF

Info

Publication number
CN114384569A
CN114384569A CN202210034069.0A CN202210034069A CN114384569A CN 114384569 A CN114384569 A CN 114384569A CN 202210034069 A CN202210034069 A CN 202210034069A CN 114384569 A CN114384569 A CN 114384569A
Authority
CN
China
Prior art keywords
observation
matrix
terminal
satellite
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210034069.0A
Other languages
English (en)
Inventor
苏景岚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202210034069.0A priority Critical patent/CN114384569A/zh
Publication of CN114384569A publication Critical patent/CN114384569A/zh
Priority to PCT/CN2023/071556 priority patent/WO2023134666A1/zh
Priority to US18/527,543 priority patent/US20240142639A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/38Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
    • G01S19/39Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/40Correcting position, velocity or attitude
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/38Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
    • G01S19/39Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/42Determining position
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/38Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
    • G01S19/39Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/393Trajectory determination or predictive tracking, e.g. Kalman filtering
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/38Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
    • G01S19/39Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/396Determining accuracy or reliability of position or pseudorange measurements
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/38Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
    • G01S19/39Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/42Determining position
    • G01S19/48Determining position by combining or switching between position solutions derived from the satellite radio beacon positioning system and position solutions derived from a further system
    • G01S19/49Determining position by combining or switching between position solutions derived from the satellite radio beacon positioning system and position solutions derived from a further system whereby the further system is an inertial position system, e.g. loosely-coupled
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/38Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
    • G01S19/39Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/52Determining velocity

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Position Fixing By Use Of Radio Waves (AREA)

Abstract

本申请实施例提供了一种终端定位方法、装置、设备以及介质,该方法涉及导航定位技术,可以应用在电子地图的车道级定位中,包括:通过观测信息确定终端状态信息,并筛选出第一筛选观测信息;将终端状态信息设置为目标滤波器的初始状态信息,对目标滤波器进行时间更新,得到预测状态参数和预测状态协方差矩阵,从第一筛选观测信息中筛选出用于构建测量更新矩阵的第二筛选观测信息,根据由观测误差因子构建的测量方差矩阵、测量更新矩阵、第二筛选观测信息及预测状态协方差矩阵,对目标滤波器进行测量更新,将预测状态参数更新为目标状态参数,由目标状态参数确定终端定位结果。采用本申请,可以提高终端的定位准确性。

Description

终端定位方法、装置、设备以及介质
技术领域
本申请涉及导航定位技术领域,尤其涉及一种终端定位方法、装置、设备以及介质。
背景技术
目前的终端定位场景中,可以通过导航系统,并利用视觉传感器、雷达等传感器作为辅助,对终端进行定位(例如,车道级定位),基于该终端的定位结果,可以为使用该终端的用户进行路径导航。
然而,当该终端处于大雨、大雾或大雪等恶劣的天气环境中时,作为辅助终端定位的视觉传感器受天气的影响,其获取到的图像无法捕捉真实的道路信息,在利用全球定位系统、视觉传感器等辅助工具进行终端定位的过程中,造成终端的定位准确性过低。
发明内容
本申请实施例提供一种终端定位方法、装置、设备以及介质,可以提高终端的定位准确性。
本申请实施例一方面提供了一种终端定位方法,包括:
通过卫星观测信息确定终端对应的终端状态信息,根据终端状态信息从卫星观测信息中获取第一筛选观测信息;
将终端状态信息设置为目标滤波器的初始状态参数,获取目标滤波器针对初始状态参数的初始状态协方差矩阵;
对目标滤波器的初始状态参数进行时间更新,得到预测状态参数,对目标滤波器的初始状态协方差矩阵进行时间更新,得到预测状态协方差矩阵;
从第一筛选观测信息中,筛选出用于构建目标滤波器的测量更新矩阵的第二筛选观测信息,根据由终端状态信息所确定的卫星观测误差因子,构建目标滤波器对应的测量方差矩阵;
通过测量更新矩阵、第二筛选观测信息、预测状态协方差矩阵以及测量方差矩阵,对目标滤波器的预测状态参数进行测量更新,得到目标状态参数,根据目标状态参数确定终端对应的终端定位结果。
其中,上述通过卫星观测信息确定终端对应的终端状态信息,包括:
获取终端接收到的卫星观测信息,为终端设置初始状态信息,通过卫星观测信息、初始状态信息以及卫星所对应的卫星状态信息,构建终端与卫星之间的卫星观测方程;
通过卫星观测信息对应的信噪比和卫星对应的高度角,构建第二观测方差矩阵;
根据第二观测方差矩阵和卫星观测方程,确定终端对应的状态信息修正量,通过状态信息修正量对初始状态信息进行更新,得到终端对应的终端状态信息。
其中,卫星的数量为N个,N为正整数;上述通过卫星观测信息对应的信噪比和卫星对应的高度角,构建第二观测方差矩阵,包括:
根据观测误差参数、N个卫星所对应的卫星观测信息的信噪比,以及N个卫星分别对应的高度角,确定N个卫星分别对应的卫星观测误差;
将N个卫星分别对应的卫星观测误差作为矩阵对角元素,构建第二观测方差矩阵。
其中,上述从第一筛选观测信息中,筛选出用于构建目标滤波器的测量更新矩阵的第二筛选观测信息,包括:
通过第一筛选观测信息、预测状态协方差矩阵,以及与第一筛选观测信息相关联的第一观测方差矩阵,确定目标滤波器对应的模型验证参数值;
当模型验证参数值小于模型验证阈值时,通过正态分布检验从第一筛选观测信息中,筛选出用于构建目标滤波器的测量更新矩阵的第二筛选观测信息。
其中,该方法还包括:
当模型验证参数值大于或等于模型验证阈值时,则重新设置目标滤波器的初始状态参数和初始状态协方差矩阵。
本申请实施例一方面提供了一种终端定位装置,包括:
终端状态获取模块,用于通过卫星观测信息确定终端对应的终端状态信息,根据终端状态信息从卫星观测信息中获取第一筛选观测信息;
滤波器初始化模块,用于将终端状态信息设置为目标滤波器的初始状态参数,获取目标滤波器针对初始状态参数的初始状态协方差矩阵;
时间更新模块,用于对目标滤波器的初始状态参数进行时间更新,得到预测状态参数,对目标滤波器的初始状态协方差矩阵进行时间更新,得到预测状态协方差矩阵;
信息筛选模块,用于从第一筛选观测信息中,筛选出用于构建目标滤波器的测量更新矩阵的第二筛选观测信息,根据由终端状态信息所确定的卫星观测误差因子,构建目标滤波器对应的测量方差矩阵;
测量更新模块,用于通过测量更新矩阵、第二筛选观测信息、预测状态协方差矩阵以及测量方差矩阵,对目标滤波器的预测状态参数进行测量更新,得到目标状态参数,根据目标状态参数确定终端对应的终端定位结果。
其中,终端状态获取模块包括:
观测方程构建单元,用于获取终端接收到的卫星观测信息,为终端设置初始状态信息,通过卫星观测信息、初始状态信息以及卫星所对应的卫星状态信息,构建终端与卫星之间的卫星观测方程;
第一观测方差构建单元,用于通过卫星观测信息对应的信噪比和卫星对应的高度角,构建第二观测方差矩阵;
状态信息更新单元,用于根据第二观测方差矩阵和卫星观测方程,确定终端对应的状态信息修正量,通过状态信息修正量对初始状态信息进行更新,得到终端对应的终端状态信息。
其中,卫星观测信息包括伪距观测数据,初始状态信息包括初始终端位置和初始终端钟差,卫星状态信息包括卫星位置和卫星钟差;
观测方程构建单元包括:
第一获取子单元,用于获取初始终端位置和卫星位置之间的间隔距离,以及获取初始终端钟差与卫星钟差之间的钟差差值;
第一方程构建单元,用于根据间隔距离和钟差差值,确定终端与卫星之间的第一估计值,通过第一估计值和伪距观测数据,构建终端与卫星之间的卫星观测方程。
其中,卫星观测信息包括多普勒观测数据,初始状态信息包括初始终端速度和初始终端钟漂,卫星状态信息包括卫星速度和卫星钟漂;
观测方程构建单元包括:
第二获取子单元,用于获取初始终端速度与卫星速度之间的速度差值,以及获取终端与卫星之间的单位观测值;
估计子单元,用于获取初始终端钟漂与卫星钟漂之间的钟漂差值,根据速度差值与单位观测值之间的乘积,以及钟漂差值,确定终端与卫星之间的第二估计值;
第二方程构建子单元,用于通过卫星播发信号的波长和多普勒观测数据之间的乘积,以及第二估计值,构建终端与卫星之间的卫星观测方程。
其中,卫星的数量为N个,N为正整数;
第一观测方差构建单元具体用于:
根据观测误差参数、N个卫星所对应的卫星观测信息的信噪比,以及N个卫星分别对应的高度角,确定N个卫星分别对应的卫星观测误差;
将N个卫星分别对应的卫星观测误差作为矩阵对角元素,构建第二观测方差矩阵。
其中,终端状态信息是指初始状态信息在经过k次迭代后所得到的结果,k为正整数;
状态信息更新单元具体用于:
获取第k-1次迭代的估计参数;k为1时,第k-1次迭代的估计参数包括初始终端位置和初始终端钟差,每次迭代的卫星观测方程由该次迭代的估计参数所构建;
将第k-1次迭代的卫星观测方程,针对第k-1次迭代的估计参数的偏导数,确定为第k-1次迭代的雅克比矩阵,根据第k-1次迭代的卫星观测方程构建第k-1次迭代的伪距残差矩阵;
根据第k-1次迭代的雅克比矩阵、第k-1次迭代的伪距残差矩阵以及第二观测方差矩阵,获取第k-1次迭代的状态信息修正量;
当第k-1次迭代的状态信息修正量达到收敛时,将第k-1次迭代的估计参数和第k-1次迭代的状态信息修正量之和,确定为第k次迭代的估计参数;
根据第k次迭代的卫星观测方程构建第k次迭代的伪距残差矩阵,将第k次迭代的伪距残差矩阵对应的转置矩阵、伪距观测方差矩阵对应的逆矩阵,以及第k次迭代的伪距残差矩阵之间的乘积,确定为检验统计量;
若检验统计量小于检验阈值,则将第k次迭代的估计参数确定为终端对应的终端状态信息。
其中,该装置还包括:
残差协方差构建模块,用于若检验统计量大于或等于检验阈值,则根据第k-1次迭代的雅克比矩阵、第二观测方差矩阵,构建第一残差协方差矩阵;
正态分布检验模块,用于通过第一残差协方差矩阵对第k次迭代的伪距残差矩阵进行正态分布检验,得到第k次迭代的伪距残差矩阵中的每个元素分别对应的检验结果;
伪距数据剔除模块,用于若第k次迭代的伪距残差矩阵中的第i个元素所对应的检验结果不满足检验条件,则确定第i个元素未通过正态分布检验,剔除第i个元素所关联的伪距观测数据;i为小于或等于伪距观测数据的数量的正整数;
观测方程重新构建模块,用于将剔除第i个元素所关联的伪距观测数据后所剩余的伪距观测数据作为卫星观测信息,将第k次迭代的估计参数作为初始状态信息,重新执行通过初始状态信息、卫星状态信息以及卫星观测信息,构建终端与卫星之间的卫星观测方程的步骤。
其中,终端状态信息包括终端位置、终端速度、终端钟差以及终端钟漂,第一筛选观测信息包括伪距筛选数据和多普勒筛选数据;
滤波器初始化模块包括:
初始状态设置单元,用于将终端状态信息中的终端位置、终端速度、终端钟差以及终端钟漂,设置为目标滤波器的初始状态参数;
第二观测方差构建单元,用于通过伪距筛选数据对应的信噪比,以及伪距筛选数据所对应卫星的高度角,构建伪距观测方差矩阵,通过多普勒筛选数据对应的信噪比,以及多普勒筛选数据所对应卫星的高度角,构建多普勒观测方差矩阵;
位置协方差确定单元,用于通过伪距观测方差矩阵、由终端位置和终端钟差所确定的卫星观测误差因子,以及由伪距筛选数据、终端位置、终端钟差所确定的雅克比矩阵,构建位置协方差矩阵;
速度协方差确定单元,用于通过多普勒观测方差矩阵,由终端速度和终端钟漂所确定的卫星观测误差因子,以及由多普勒筛选数据、终端速度、终端钟漂所确定的雅克比矩阵,构建速度协方差矩阵;
初始状态协方差确定单元,用于将位置协方差矩阵和速度协方差矩阵所构成的对角线矩阵,确定为目标滤波器对应的初始状态协方差矩阵。
其中,时间更新模块包括:
状态参数更新单元,用于通过相邻历元的时间差构建目标滤波器的状态转移矩阵,根据状态转移矩阵对目标滤波器的初始状态参数进行时间更新,得到预测状态参数;
状态协方差更新单元,用于基于终端对应的历史状态信息,获取目标滤波器对应的滤波器系统噪声,根据状态转移矩阵和滤波器系统噪声,对目标滤波器的初始状态协方差矩阵进行时间更新,得到预测状态协方差矩阵。
其中,状态协方差更新单元包括:
历史信息获取子单元,用于若初始状态信息包括终端位置、终端速度、终端钟差以及终端钟漂,则获取终端对应的历史状态信息中的历史终端速度序列、历史终端钟漂序列以及历史终端钟差序列;历史终端速度序列、历史终端钟漂序列以及历史终端钟差序列均是通过尺寸为p的时间滑动窗口所确定的,p为正整数;
速度系统噪声确定子单元,用于获取历史终端速度序列对应的第一方差值,将第一方差值和相邻历元的时间差之间的乘积,确定为目标滤波器对应的速度系统噪声;
钟漂系统噪声确定子单元,用于获取历史终端钟漂序列对应的第二方差值,将第二方差值和相邻历元的时间差之间的乘积,确定为目标滤波器对应的钟漂系统噪声;
钟差系统噪声确定子单元,用于获取历史终端钟差序列对应的第三方差值,将第三方差值和相邻历元的时间差之间的乘积,确定为目标滤波器对应的钟差系统噪声,将速度系统噪声、钟漂系统噪声以及钟差系统噪声确定为目标滤波器对应的滤波器系统噪声。
其中,预测状态协方差矩阵为目标滤波器中的初始状态协方差矩阵在t时刻的状态协方差矩阵,t为正整数;
状态协方差更新单元具体用于:
通过滤波器系统噪声以及相邻历元的时间差所对应的指数信息,构建噪声协方差矩阵;
获取目标滤波器在t-1时刻的状态协方差矩阵;t为1时,目标滤波器在t-1时刻的状态协方差矩阵为初始状态协方差矩阵;
将状态转移矩阵、t-1时刻的状态协方差矩阵以及状态转移矩阵对应的转置矩阵之间的乘积,与噪声协方差矩阵进行求和运算,得到预测协方差矩阵。
其中,信息筛选模块包括:
验证参数值获取单元,用于通过第一筛选观测信息、预测状态协方差矩阵,以及与第一筛选观测信息相关联的第一观测方差矩阵,确定目标滤波器对应的模型验证参数值;
验证单元,用于当模型验证参数值小于模型验证阈值时,通过正态分布检验从第一筛选观测信息中,筛选出用于构建目标滤波器的测量更新矩阵的第二筛选观测信息。
其中,验证参数值获取单元包括:
第一观测残差确定子单元,用于通过第一筛选观测信息、第一筛选观测信息所对应卫星的卫星状态信息,以及预测状态信息,构建第一观测残差矩阵;
粗差探测处理子单元,用于根据第一观测残差矩阵的四分位数和绝对中位差,对第一观测残差矩阵进行粗差探测处理,得到第二观测残差矩阵;
第三观测方差确定子单元,用于将第二观测残差矩阵中所包含的卫星观测信息,确定为第三筛选观测信息,通过第三筛选观测信息对应的信噪比,以及第三筛选观测信息所对应卫星的高度角,构建第一观测方差矩阵;
验证参数值确定子单元,用于通过第二观测残差矩阵、预测状态协方差矩阵、第二观测残差矩阵针对预测状态参数的雅克比矩阵,以及第一观测方差矩阵,确定目标滤波器对应的模型验证参数值。
其中,粗差探测处理子单元包括:
分位数差值获取子单元,用于获取第一观测残差矩阵的上四分位数与第一观测残差矩阵的下四分位数之间的分位数差值;
最小元素值获取子单元,用于将第一观测残差矩阵的下四分位数,以及第一粗差探测阈值和分位数差值之间的乘积进行相减运算,得到第一观测残差矩阵对应的最小元素值;
最大元素值获取子单元,用于将第一观测残差矩阵的上四分位数,以及第一粗差探测阈值和分位数差值之间的乘积进行求和运算,得到第一观测残差矩阵对应的最大元素值;
待验证数值确定子单元,用于将第一观测残差矩阵中的第j个元素和第一观测残差矩阵的中位数进行相减运算后的绝对值,与第一观测残差矩阵的绝对中位差之间的比值,确定为待验证数值;j为小于或等于第一筛选观测信息的数量的正整数;
粗差剔除子单元,用于若待验证数值大于第二粗差探测阈值,且第j个元素处于粗差取值范围,则从第一观测残差矩阵中剔除第j个元素,得到第二观测残差矩阵;粗差取值范围是指最小元素值至最大元素值所对应范围之外的取值范围。
其中,第二观测残差矩阵是通过卫星观测信息中的伪距筛选数据所构建的;
该装置还包括:
钟差探测模块,用于当第二观测残差矩阵的绝对中位差与第二观测残差矩阵的中位数之间的比值小于第一钟差探测阈值,且第二观测残差矩阵的标准差与第二观测残差矩阵的平均值之间的比值小于第一钟差探测阈值时,将第二观测残差矩阵的中位数,与预测状态协方差矩阵中的对角元素所对应的开根号运算结果之间的比值,确定为钟差探测数值;
钟差跳变修复模块,用于若钟差探测数值大于或等于第二钟差探测阈值,则确定目标滤波器中存在钟差跳变,重新设置目标滤波器中的预测状态参数和预测状态协方差矩阵。
其中,验证单元包括:
标准化残差获取子单元,用于当模型验证参数值小于模型验证阈值时,对模型验证参数进行标准化处理,得到标准化残差矩阵;
第一残差检验子单元,用于通过对标准化残差矩阵进行正态分布检验,得到标准化残差矩阵中所包含的每个元素分别对应的检验结果;
观测信息筛选子单元,用于若标准化残差矩阵中的第l个元素所对应的检验结果不满足检验条件,则确定第l个元素未通过正态分布检验,从第一筛选观测信息中,剔除第l个元素所对应的卫星观测信息,得到第二筛选观测信息;l为小于或等于第一筛选观测信息的数量的正整数。
其中,该装置还包括:
滤波器重置模块,用于当模型验证参数值大于或等于模型验证阈值时,则重新设置目标滤波器的初始状态参数和初始状态协方差矩阵。
其中,目标状态参数为目标滤波器中的预测状态参数在a时刻的状态参数,a为正整数;
测量更新模块包括:
测量更新矩阵确定单元,用于通过第二筛选观测信息、预测状态参数以及卫星状态信息构建第三观测残差矩阵,将第三观测残差矩阵针对预测状态参数的雅克比矩阵,确定为目标滤波器对应的测量更新矩阵;
滤波器状态获取单元,用于获取目标滤波器在a-1时刻的状态参数,以及目标滤波器在a-1时刻的状态协方差矩阵;i为1时,a-1时刻的状态参数为预测状态参数,a-1时刻的状态协方差矩阵为预测状态协方差矩阵;a-1时刻的状态协方差矩阵是目标滤波器针对a-1时刻的状态参数的协方差矩阵;
滤波器增益确定单元,用于通过a-1时刻的状态协方差矩阵、测量更新矩阵以及测量方差矩阵,确定目标滤波器在a-1时刻的滤波器增益;
目标状态参数获取单元,用于将a-1时刻的滤波器增益和第三观测残差矩阵之间的乘积,与a-1时刻的状态参数进行求和运算,得到目标状态参数。
其中,测量更新模块包括:
滤波器修正量确定单元,用于将a-1时刻的滤波器增益和第三观测残差矩阵之间的乘积,确定为目标滤波器在a-1时刻的滤波器修正量;
残差协方差确定单元,用于当a-1时刻的滤波器修正量通过检验时,获取目标滤波器针对目标状态参数的目标协方差矩阵,通过目标协方差矩阵、测量方差矩阵以及测量更新矩阵,构建目标滤波器对应的第二残差协方差矩阵;
第二残差检验单元,用于通过第二残差协方差矩阵对第三观测残差矩阵进行正态分布检验,得到第三观测残差矩阵中所包含的每个元素分别对应的检验结果;
定位结果确定单元,用于若第三观测残差矩阵中的每个元素分别对应的检验结果均满足检验条件,则将目标状态参数确定为终端对应的终端定位结果。
本申请实施例一方面提供了一种计算机设备,包括存储器和处理器,存储器与处理器相连,存储器用于存储计算机程序,处理器用于调用计算机程序,以使得该计算机设备执行本申请实施例中上述一方面提供的方法。
本申请实施例一方面提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序适于由处理器加载并执行,以使得具有处理器的计算机设备执行本申请实施例中上述一方面提供的方法。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述一方面提供的方法。
本申请实施例中,可以通过卫星观测信息估计得到终端对应的终端状态信息,通过终端状态信息可以建立目标滤波器,通过目标滤波器时间更新和滤波器测量更新两个过程,从卫星观测信息中剔除观测信息粗差,并通过剔除观测信息粗差后的卫星观测信息(第二筛选观测信息),确定终端对应的终端定位结果,可以提高终端位置的准确性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种终端定位系统的结构示意图;
图2是本申请实施例提供的一种终端定位场景示意图;
图3是本申请实施例提供的一种终端定位方法的流程示意图;
图4是本申请实施例提供的一种估计终端状态信息中的终端位置和终端钟差的流程示意图;
图5是本申请实施例提供的一种估计终端状态信息中的终端速度和终端钟漂的流程示意图;
图6是本申请实施例提供的一种中端定位方法的流程示意图;
图7是本申请实施例提供的一种滤波器系统噪声自适应估计的示意图;
图8是本申请实施例提供的一种目标滤波器的测量更新的流程示意图;
图9是本申请实施例提供的一种终端定位方法的整体结构示意图;
图10是本申请实施例提供的一种目标滤波器的结构示意图;
图11是本申请实施例提供的一种终端定位装置的结构示意图;
图12是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例涉及以下几个概念:
卫星定位终端:卫星定位终端是指用于处理卫星信号,并测量该卫星定位终端与卫星之间的几何距离(即伪距观测数据)以及卫星信号的多普勒效应(即多普勒观测数据)的电子设备,卫星定位终端也可以称为卫星定位设备;卫星定位设备通常可以包括天线、卫星信号获取环路、基带信号处理等模块。集成了卫星定位设备的移动终端可以根据伪距观测数据和多普勒观测数据,计算移动终端的当前位置坐标;卫星定位设备可以广泛应用于多个领域。
卫星观测信息:卫星观测信息是指卫星定位设备所输出的观测数据,该卫星观测信息可以为伪距观测数据、多普勒观测数据(也可以称为伪距率观测值)、累加距离增量(Accumulated Delta Range,ADR)等数据中的至少一种数据。其中,伪距观测数据用于表示卫星与卫星定位设备之间的集合距离,多普勒观测数据用于表示卫星定位设备与卫星相对运动产生的多普勒效应,累加距离增量用于表示卫星至卫星定位设备的几何距离变化量。
高精定位服务平台:当前,利用多基准站网络RTK(Real Time Kinematic,实时动态定位)技术建立的连续运行参考站(Continuously Operating Reference Stations,CORS)已成为城市GNSS(Global Navigation Satellite System,全球卫星导航系统)应用的发展热点之一;CORS系统是卫星定位技术、计算机网络技术、数字通讯技术等高新科技多方位、深度结晶的产物;CORS系统由基准站网、数据处理中心、数据传输系统、定位导航数据播发系统、用户应用系统五个部分组成,各基准站与数据分析中心间通过数据传输系统连接成一体,形成专用网络;高精定位服务平台可以理解为CORS系统的后台数据中心,例如CORS服务器,CORS系统的高精定位服务平台可播发差分服务数据至用户终端,以此实现厘米级高精度定位;其中,差分服务数据可以是指CORS系统在获取到卫星的原始观测数据后,由高精定位服务平台对原始观测数据进行处理后所得到的卫星观测信息(例如,伪距观测数据、多普勒观测数据等);厘米级高精度定位是指高精定位服务平台通过CORS系统的观测数据所计算得到的终端位置可以精确到厘米。
请参见图1,图1是本申请实施例提供的一种终端定位系统的结构示意图。如图1所示,该终端定位系统连续运行参考站(CORS)系统和用户终端集群,该用户终端集群可以包括一个或多个用户终端,这里不对用户终端的数量进行限制。如图1所示,该用户终端集群可以具体包括用户终端10e、用户终端10f、用户终端10h以及用户终端10g等。其中,高精定位服务平台可以理解为CORS系统的后台数据中心,该高精定位服务平台可以为独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。用户终端集群中的用户终端可以包括但不限于:智能手机、平板电脑、笔记本电脑、掌上电脑、移动互联网设备(mobile internet device,MID)、可穿戴设备(例如智能手表、智能手环等)、飞行器(例如飞机、无人机等)以及自动驾驶系统中的车载电脑等集成了卫星定位设备的移动终端。其中,高精定位服务平台可以为用户终端集群中的每个用户终端播发差分服务数据,用户终端集群中的用户终端也可以向高精定位服务平台上报位置。
如图1所示的导航卫星可以为全球卫星导航系统(GNSS)的导航卫星,GNSS也称为全球导航卫星系统,可以在地球表面或近地空间的任何地点为用户提供全天候的3维坐标和速度以及时间信息的空基无线电导航定位系统;为方便描述,下述将导航卫星简称为卫星。如图1所示,卫星10a、卫星10b、卫星10c以及卫星10d可以为一个或多个GNSS的导航卫星,本申请不对卫星所属的GNSS类型进行限定。
其中,CORS系统可以获取全球卫星导航系统(GNSS)的导航卫星所对应的原始观测数据,这些接收到的原始观测数据可以传输至高精定位服务平台;该高精定位服务平台通过这些原始观测数据实时计算用户终端集群中的各个用户终端与导航卫星之间的卫星观测信息,并将卫星观测信息播发给对应的用户终端,此时的卫星观测信息可以称为高精定位服务平台为用户终端所播发的差分服务数据。以图1所示用户终端集群中的用户终端10e为例,该用户终端10e可以为集成了卫星定位设备的移动终端,该用户终端10e可以从CORS系统的高精定位服务平台中获取该用户终端10e与各个卫星之间的卫星观测信息,如用户终端10e分别与图1所示的卫星10a、卫星10b、卫星10c以及卫星10d之间的卫星观测信息。用户终端10e在获取到卫星观测信息后,可以通过这些获取到的卫星观测信息估计用户终端10e的终端状态信息;其中,若卫星观测信息为伪距观测数据,则此时的终端状态信息可以包括终端位置和终端钟差;若卫星观测信息为多普勒观测数据,则此时的终端状态信息包括终端速度和终端钟漂;若卫星观测信息包括伪距观测数据和多普勒观测数据,此时的终端状态信息包括终端速度、终端位置、终端钟差以及终端钟漂。换言之,本申请实施例中的卫星观测信息可以为伪距观测数据、多普勒观测数据中的至少一种,本申请对卫星观测信息的数据类型(例如,伪距数据类型、多普勒数据类型等)以及数据类型的数量不做限定。
可以理解的是,钟差可以是指时钟误差,本申请中的钟差具体涉及卫星钟差和终端钟差,卫星钟差是指卫星时钟与标准时间之间的差值;终端钟差也可以称为接收机钟差,即接收机时钟与标准时间之间的差值。钟漂可以是指钟差变化率,本申请中的钟差具体涉及终端钟漂和卫星钟漂,终端钟漂是指接收机钟差变化率,卫星钟差是指卫星钟差变化率。
其中,在基于卫星观测信息估计终端状态信息的过程中,可以剔除一些观测信息粗差,即确定终端状态信息所使用的卫星观测信息并非用户终端10e所获取到的所有卫星观测信息,而是剔除了一部分观测信息粗差后所剩余的卫星观测信息,本申请实施例可以将此时剩余的卫星观测信息称为第一筛选观测信息,即终端状态信息是由第一筛选观测信息所确定的。观测信息粗差可以是指由于测量疏忽所造成的错误观测结果或超限的误差,例如,观测目标错误(如卫星观测信息并非卫星与用户终端10e之间的观测数据)、观测数据读取错误等。进一步地,基于上述估计得到的终端状态信息可以建立一个目标滤波器(例如,稳健卡尔曼滤波器),即将上述终端状态信息作为目标滤波器的初始状态参数,该初始状态参数可以是指目标滤波器在T0时刻的状态参数,通过T0时刻的状态参数可以预测下一个时刻的状态参数,以此类推,可以预测得到当前时刻的状态参数,当前时刻的状态参数可以称为预测状态参数,该预测状态参数的确定过程即为目标滤波器的时间更新阶段(也可以称为状态预测阶段)。在目标滤波器完成时间更新后,即目标滤波器的状态参数由初始状态参数(即上述终端状态信息)更新为预测状态参数,可以通过上述第一筛选观测信息对目标滤波器的预测状态参数进行测量更新(也可以称为校正)。
在目标滤波器的测量更新阶段,是基于时间更新阶段最终得到的预测状态参数来进行校正的。通过第一筛选观测信息对目标滤波器进行验证和修复,首先计算目标滤波器的模型验证参数值,当模型参数验证值不满足验证条件(例如,大于或等于模型验证阈值,该模型验证阈值可以根据实际需求进行设置)时,表示目标滤波器存在故障,需要重置目标滤波器,即重新设置该目标滤波器的初始状态参数;当模型参数验证值满足验证条件(例如,小于模型验证阈值)时,可以对第一筛选观测信息进行检验(例如,正态分布检验,正态分布也可以称为高斯分布),继续剔除第一筛选观测信息中的观测信息粗差,以得到第二筛选观测信息。通过第二筛选观测信息构建目标滤波器在测量更新阶段的测量更新矩阵,另外,还可以根据卫星观测误差因子构建目标滤波器在测量更新阶段的测量方差矩阵,通过测量更新矩阵和测量方差矩阵,对目标滤波器的预测状态参数进行测量更新,得到目标状态参数,该目标状态参数为目标滤波器在测量更新阶段所得到的结果。在得到目标状态参数后,可以通过第二筛选观测信息对此时的目标滤波器进行再次验证,如对第二筛选观测信息进行检验(例如,正态分布检验),检验通过则可以将该目标状态参数确定为用户终端10e的终端定位;检验不通过则从第二筛选观测信息中剔除相应的卫星观测信息,即第二筛选观测信息中的哪一个卫星观测信息未通过检验,则剔除该卫星观测信息,以得到新的筛选观测信息(为方便描述,下面将此时所得到的新的筛选观测信息称为第四筛选观测信息),通过第四筛选观测信息重新构建测量更新矩阵,对目标滤波器再次进行测量更新,直至剩余的所有卫星观测信息均通过检验,输出目标滤波器在当前时刻的状态参数,此时的状态参数即为用户终端10e的终端位置。
本申请实施例中,通过卫星观测信息和目标滤波器实现用户终端的终端定位过程,在此过程中,可以通过目标滤波器的验证与修复过程,尽可能地剔除卫星观测信息中的观测信息粗差,以获取更准确的终端定位结果。
请参见图2,图2是本申请实施例提供的一种终端定位场景示意图。如图2所示的用户终端20a可以为图1所示用户终端集群中的任意一个用户终端,该用户终端20a中集成了卫星定位设备。该用户终端20a可以接收CORS系统播发的卫星观测信息,该卫星观测信息可以包括各个卫星对应的伪距观测数据和多普勒观测数据,本申请对卫星观测信息所对应的卫星数量不作限定,即对接收到的卫星观测信息的数量不作限定。如图2所示,本申请实施例以接收到6个卫星对应的卫星观测信息为例进行举例说明,该用户终端20a所接收到的卫星观测信息包括伪距观测数据集合20b和多普勒观测数据集合20c,伪距观测数据集合20b由6个卫星分别对应的伪距观测数据所组成,如伪距观测数据1、伪距观测数据2、……、伪距观测数据6,多普勒观测数据集合20c由6个卫星分别对应的多普勒观测数据所组成,如多普勒观测数据1、多普勒观测数据2、……、多普勒观测数据6。换言之,用户终端20a所接收到的卫星观测信息包括两种数据类型,伪距观测数据集合20b中的伪距观测数据可以称为伪距数据类型,多普勒观测数据集合20c中的伪距观测数据可以称为多普勒数据类型。
对于不同数据类型的卫星观测信息,需要对其进行独立处理,如通过对伪距观测数据集合20b中所包含的伪距观测数据进行处理,最终可以得到用户终端20a对应的终端位置,而通过对多普勒观测数据集合20c中所包含的多普勒观测数据进行处理,最终可以得到用户终端20a对应的终端速度。针对伪距观测数据集合20b,可以将用户终端20a的终端位置和终端钟差作为估计参数x,该估计参数x可以记为(ru,dtr1),其中,ru用于表示终端位置,dtr1用于表示终端钟差;基于伪距观测数据集合20b中的伪距观测数据对估计参数x进行优化(即迭代更新),可以计算出用户终端20a的终端位置和终端钟差。首先,可以对估计参数x进行初始化,即为估计参数x设置初始值,估计参数x的初始值可以记为(ru_0,dtr1_0);其中,估计参数x的初始值可以设置为0,或者可以为基于先验知识(用户终端20a实际所处的环境)所设置的数值,本申请对估计参数x的初始值的实际数值不做限定。通过伪距观测数据集合20b可以对估计参数x的初始值(ru_0,dtr1_0)进行不断迭代更新,每次迭代都会更新一次估计参数x,下一次迭代的估计参数x是在上一次迭代的估计参数x的基础上增加估计参数修正量(也可以称为状态信息修正量),当估计参数x达到收敛时,表示估计参数x经过了一个迭代周期(一个迭代周期可以包括一次或多次迭代),每个迭代周期所确定的估计参数x均为达到收敛时的参数值,如图2所示,第一个迭代周期所确定的估计参数x可以记为(ru_1,dtr1_1),即经过第一个迭代周期后,终端位置由初始值ru_0更新为ru_1,终端钟差由初始值dtr1_0更新为dtr1_1。
进一步地,可以对第一个迭代周期所输出的结果(与(ru_1,dtr1_1)关联的解算结果)进行卡方检验(Chi-square test/Chi-Square Goodness-of-Fit Test),若第一迭代周期的卡方检测统计量小于检验阈值(该检验阈值可以根据实际需求进行设置,本申请对该检验阈值的取值不作限定),则表示通过卡方检验,可以将上述ru_1确定为用户终端20a的终端位置,将dtr1_1确定为用户终端20a的终端钟差。其中,卡方检验是一种用途很广的计数资料的假设检验方法,该卡方检验仅为本申请实施例中的一种举例,对于其余具有类似功能的假设检测方法同样适用于本申请,这里不对检验方法进行限定。若第一迭代周期的卡方检测统计量大于或等于检验阈值,则表示未通过卡方检验,进而通过正态分布检验从伪距观测数据集合20b中剔除未通过正态分布检验的伪距观测数据,如图2所示,伪距观测数据2未通过正态分布检验,则将伪距观测数据2确定为伪距观测数据粗差,从伪距观测数据集合20b中剔除该伪距观测数据2,而通过正态分布检验的伪距观测数据则被保留下来,即保留了伪距观测数据1、伪距观测数据3、伪距观测数据4、伪距观测数据5以及伪距观测数据6。
随后,可以将(ru_1,dtr1_1)作为估计参数x在第二个迭代周期的初始值,通过上述保留下来的伪距观测数据1、伪距观测数据3、伪距观测数据4、伪距观测数据5以及伪距观测数据6,对(ru_1,dtr1_1)进行不断地迭代更新,第二个迭代周期的迭代过程与第一个迭代周期的迭代过程相同,第二个迭代周期所确定的估计参数x记为(ru_2,dtr1_2),同理,可以对第二个迭代周期所输出的结果(与(ru_2,dtr1_2)关联的解算结果)进行卡方检验,若通过卡方检验,则将上述ru_2确定为用户终端20a的终端位置,将dtr1_2确定为用户终端20a的终端钟差,此时可以将上述伪距观测数据1、伪距观测数据3、伪距观测数据4、伪距观测数据5以及伪距观测数据6组成伪距观测数据集合20d,该伪距观测数据集合20d是剔除了伪距观测矩阵20b中的粗差观测数据后所得到的。可选地,若第二个迭代周期仍然未通过卡方检验,则继续通过正态分布检验剔除伪距观测数据粗差,并开始进入下一个迭代周期,直至通过卡方检验。
其中,针对多普勒观测数据集合20c,可以将用户终端20a的终端速度和终端钟漂作为估计参数y,该估计参数y可以记为(vu,dtr2),其中,vu用于表示终端速度,dtr2用于表示终端钟漂;基于多普勒观测数据集合20c对估计参数y进行迭代更新的过程,类似于前述基于伪距观测数据集合20b对估计参数x的迭代更新过程,此处不再赘述。通过多普勒观测数据集合20c计算得到用户终端20a的终端速度为vu_2,终端钟漂为dtr2_2,剔除了多普勒观测数据粗差后可以得到多普勒观测数据集合20e(包括多普勒观测数据2、多普勒观测数据4以及多普勒观测数据5)。在上述基础上,可以将上述终端位置ru_2、终端速度vu_2、终端钟差dtr1_2、终端钟漂dtr2_2称为用户终端20a对应的终端状态信息,上述伪距观测数据集合20d和多普勒观测数据集合20e可以称为第一筛选观测信息。
可选地,上述终端状态信息(ru_2,vu_2,dtr1_2,dtr2_2)中的终端位置和终端速度仅为基于迭代更新所确定的初步结果,为了进一步提高终端位置和终端速度的准确性,可以通过上述迭代更新所得到的结果建立一个目标滤波器(例如,稳健卡尔曼滤波器),将终端状态信息(ru_2,vu_2,dtr1_2,dtr2_2)设置为该目标滤波器对应的初始状态参数,即目标滤波器的初始状态参数为(ru_2,vu_2,dtr1_2,dtr2_2)。需要说明的是,目标滤波器针对该初始状态参数的初始状态协方差矩阵可以通过上述迭代更新所得到的解算结果来确定,该目标滤波器的状态协方差矩阵用于表征目标滤波器的状态参数之间的相关性,如终端位置、终端速度、终端钟差以及终端钟漂之间的相关性。目标滤波器的初始状态参数和初始状态协方差参数设置完成后,可以对该目标滤波器进行时间更新,此处的时间更新可以理解为状态预测过程,即基于初始状态参数和初始状态协方差矩阵,预测目标滤波器下一个时刻的状态参数和下一个时刻的状态协方差矩阵。换言之,目标滤波器的时间更新过程包括初始状态参数和初始协方差矩阵两者的更新,将时间更新所得到的状态参数称为预测状态参数,记为(ru_3,vu_3,dtr1_3,dtr2_3),时间更新所得到的状态协方差矩阵称为预测协方差矩阵。
进一步地,目标滤波器在完成时间更新后,可以基于预测状态参数和预测状态协方差矩阵进行测量更新,此处的测量更新可以理解为对前述时间更新所得到的预测状态参数进行校正的过程,目标滤波器的测量更新可以包括钟差和钟漂跳变探测与修复、滤波器模型验证与修复、滤波器故障检测与修复等过程。在目标滤波器的测量更新过程中需要使用上述第一筛选观测数据,由于第一筛选观测数据包含属于伪距数据类型的伪距观测数据集合20d和属于多普勒数据类型的多普勒观测数据集合20e,因此需要对伪距观测数据集合20d和多普勒观测数据集合20e进行独立处理。
其中,针对伪距观测数据集合20d,可以通过伪距观测数据集合20d中的伪距观测数据以及预测状态协方差矩阵进行钟差跳变探测,若探测到目标滤波器存在钟差跳变,则对其进行钟差跳变修复,即重新设置目标滤波器的状态参数和状态协方差矩阵,也就是说,在预测状态参数和预测状态协方差矩阵的基础上进行了更新;若未探测到钟差跳变,则无需进行钟差跳变修复。与此同时,针对多普勒观测数据集合20e,可以通过多普勒观测数据集合20e中的多普勒观测数据以及预测状态协方差矩阵进行钟漂跳变探测,若探测到目标滤波器存在钟漂跳变,则对其进行钟漂跳变修复,即重新设置目标滤波器的状态参数和状态协方差矩阵,也就是说,在预测状态参数和预测状态协方差矩阵的基础上进行了更新;若未探测到钟漂跳变,则无需进行钟漂跳变修复。
当钟差和钟漂跳变探测及修复均完成后,可以进行滤波器模型验证,如计算目标滤波器的模型验证参数值,该模型验证参数值可以包括伪距验证参数值和多普勒验证参数值;伪距验证参数值可以由钟差和钟漂跳变探测和修复后所得到的状态协方差矩阵、伪距观测数据集合20d所确定,多普勒验证参数值可以由钟差和钟漂跳变探测和修复后所得到的状态协方差矩阵、多普勒观测数据集合20e所确定。当伪距验证参数值大于或等于伪距验证阈值,或多普勒验证参数值大于或等于多普勒验证阈值时,表示目标滤波器未通过模型验证,则需要对该目标滤波器进行修复,即重新设置目标滤波器的初始状态参数与初始状态协方差矩阵,并基于重新设置的初始状态参数与初始状态协方差矩阵进行时间更新和测量更新。当伪距验证参数值小于伪距验证阈值,且多普勒验证参数值小于多普勒验证阈值时,表示目标滤波器通过模型验证,此处的伪距验证阈值和多普勒验证阈值都可以是基于实际需求所设置的不同数值,该伪距验证阈值和多普勒验证阈值可以统称为模型验证阈值。
若目标滤波器通过模型验证,则可以通过正态分布检测从伪距观测数据集合20d和多普勒观测数据集合20e中剔除造成目标滤波器发散的观测数据,即从伪距观测数据集合20d中筛选出伪距观测数据集合20f,从多普勒观测数据集合20e中筛选出多普勒观测数据集合20g,此时的伪距观测数据集合20d和多普勒观测数据集合20g可以称为第二筛选观测信息。通过伪距观测数据集合20d和多普勒观测数据集合20g可以对目标滤波器进行测量更新,得到目标状态参数和目标状态协方差矩阵,该目标状态参数可以记为(ru_4,vu_4,dtr1_4,dtr2_4)。当目标滤波器的滤波器修正量(即后一时刻的状态参数与前一时刻的状态参数之间的差值)通过验证,且第二筛选观测信息均通过正态分布检验时,可以将目标状态参数中的终端位置ru_4和终端速度vu_4作为用户终端20a的终端定位结果。
可选地,假设用户终端20a为智能手机,在手机终端定位导航应用场景中,获取到用户终端20a的终端位置和终端速度后,可以在导航应用中为该用户终端20a的使用者提供准确的导航路径,如图2所示的导航页面20h所示,位置S1即为用户终端20a在电子地图中的位置(即终端位置),区域20i为用户终端20a所在路径的实时路况,不同的颜色表示不同的路况,如黑色区域表示该路段属于重度拥挤路段,灰色区域表示该路径属于轻度拥堵路段,白色区域属于不拥挤路段等。
可选地,假设用户终端20a为车载终端,在道路场景车道级导航应用中,获取到用户终端20a的终端位置和终端速度后,可以为该用户终端20a提供车道级行驶路径,如图2所示的导航页面20j所示,位置20k即为用户终端20a在道路中的车道行驶位置(即终端位置),黑色线条用于表示用户终端20a的车道行驶路径,即上述终端定位结果可以精确到用户终端20a所在的车道,实现对用户终端20a的车道级定位。
请参见图3,图3是本申请实施例提供的一种终端定位方法的流程示意图。该终端定位方法可以由计算机设备执行,该计算机设备可以为集成了卫星定位设备的电子设备,例如图1所示用户终端集群中的任一用户终端,或任一需要进行定位的终端。如图3所示,该终端定位方法可以包括以下步骤:
步骤S101,通过卫星观测信息确定终端对应的终端状态信息,根据终端状态信息从卫星观测信息中获取第一筛选观测信息。
具体的,计算机设备可以向CORS系统发送星历获取请求,CORS系统的高精定位服务平台接收到星历获取请求后,可以从卫星星历数据库中获取实时的卫星导航星历,并将实时的卫星导航星历以二进制流的形式传输至计算机设备,此时的计算机设备可以接收CORS系统的高精定位服务平台播发的卫星导航星历;当然,计算机设备还可以接收CORS系统的高精定位服务平台所播发的卫星观测信息。其中,该卫星导航星历可以包括一组用于确定卫星位置的参数列表,卫星星历数据库中可以包括所有卫星的导航星历;卫星观测信息可以包括伪距观测数据、多普勒观测数据中的至少一种;本申请的计算机设备可以为需要进行定位的终端。
其中,根据卫星观测信息和卫星导航星历,获取各个卫星分别对应的卫星状态信息,当卫星观测信息仅包含伪距观测数据时,此时的卫星状态信息包括卫星位置和卫星钟差;当卫星观测信息仅包含多普勒观测数据时,此时的卫星状态信息包括卫星速度(即卫星运行速度)和卫星钟漂;当卫星观测信息包含伪距观测数据和多普勒观测数据时,此时的卫星状态信息包括卫星位置、卫星钟差、卫星速度以及卫星钟漂。其中,卫星的数量可以为N个(N为正整数),一个卫星在同一时刻对应一个伪距观测数据、一个多普勒观测数据、一个卫星位置、一个卫星钟差、一个卫星速度以及一个卫星钟漂,每个卫星所对应的卫星位置、卫星钟差、卫星速度以及卫星钟漂可以是不同的。例如,卫星观测信息包括伪距观测数据时,基于接收到的伪距观测数据和卫星导航星历可以计算各个卫星分别对应的卫星位置和卫星钟差,即获取自身接收到卫星发射信号的接收时间,根据初始伪距观测值、接收时间以及光速值,确定卫星发射信号的发射时间,进而可以根据发射时间和卫星导航星历中所包含的参数列表,确定卫星对应的卫星位置和卫星钟差。同理,卫星观测信息包括多普勒观测数据时,基于接收到的多普勒观测数据和卫星导航星历可以计算各个卫星分别对应的卫星速度和卫星钟漂。
在获取到卫星观测信息以及卫星状态信息后,可以根据卫星观测信息与卫星状态信息,构建终端与卫星之间的卫星观测方程,通过卫星观测方程可以获取终端对应的终端状态信息,基于终端状态信息可以从N个卫星所对应的卫星观测信息中获取第一筛选观测信息(例如,上述图2所对应实施例中的伪距观测数据集合20d和多普勒观测数据集合20e)。其中,终端所接收到的卫星观测信息中可能存在观测信息粗差,因此在计算终端状态信息的过程中,可能从N个卫星所对应的卫星观测信息中剔除了一部分观测信息粗差,计算终端状态信息所实际使用的卫星观测信息仅为N个卫星所对应卫星观测信息中的部分观测信息,因此可以将确定终端状态信息时所实际使用的卫星观测信息确定为第一筛选观测信息。例如,N个卫星所对应的卫星观测信息中的卫星i的卫星观测信息为观测信息粗差,则可以剔除卫星i的卫星观测信息,通过除卫星i之外的其余卫星的卫星观测信息估计得到终端状态信息时,可以将N个卫星中除卫星i之外的其余卫星的卫星观测信息作为第一筛选观测信息,第一筛选观测信息的数量小于或等于终端所接收到的所有卫星观测信息的总数量,如第一筛选观测信息为伪距观测数据时,第一筛选观测信息的数量小于或等于N(卫星的数量,即终端接收到的伪距观测数据的总数量)。
可以理解的是,本申请实施例中的卫星观测信息、卫星状态信息以及终端状态信息三者之间是相关联的,如卫星观测信息为伪距观测数据时,与之对应的卫星状态信息为卫星位置和卫星钟差,与之对应的终端状态信息为终端位置和终端钟差;卫星观测信息为多普勒观测数据时,与之对应的卫星状态信息为卫星速度和卫星钟漂,与之对应的终端状态信息为终端速度和终端钟漂;卫星观测信息包括伪距观测数据和多普勒观测数据时,与之对应的卫星状态信息为卫星位置、卫星钟差、卫星速度以及卫星钟漂,与之对应的终端状态信息为终端位置、终端钟差、终端速度以及终端钟漂,后续对此不再进行解释。
其中,若终端接收到N个卫星分别对应的伪距观测数据,则基于伪距观测数据以及卫星状态信息中的卫星位置和卫星钟差,可以构建如下伪距观测方程:
Figure BDA0003467618210000211
其中,
Figure BDA0003467618210000212
为终端接收到伪距观测数据,ru为终端位置,ri为卫星i对应的卫星位置,dtr为终端钟差,dti为卫星i对应的卫星钟差,c为真空中的光速值,ζi为误差改正数(包括电离层、对流层以及地球自转改正,可以由经验模型计算得到),||ru-ri||可以用于表示终端位置ru与卫星位置ri之间的欧几里得距离。在上述公式(1)中,除终端位置ru与终端钟差dtr之外的其余参数均是已知的,基于该公式(1)所示的伪距观测方程可以估计得到终端的终端位置和终端钟差。
可选地,若终端接收到N个卫星分别对应的多普勒观测数据,则基于多普勒观测数据以及卫星状态信息中的卫星速度和卫星钟漂,可以构建如下多普勒观测方程:
Figure BDA0003467618210000221
其中,
Figure BDA0003467618210000222
为终端接收到多普勒观测数据,λ为卫星播发信号的波长,vi,i=1,2,……,N为第个卫星对应的卫星速度,
Figure BDA0003467618210000223
为终端钟漂,vu为终端速度,
Figure BDA0003467618210000224
为卫星i对应的卫星钟漂。基于该公式(2)所示的多普勒观测方程可以估计得到终端的终端速度和终端钟漂,在求解终端对应的终端速度和终端钟漂时,需要提供终端的终端位置以及各个卫星所对应的卫星位置。本申请实施例中,可以将公式(1)所示的伪距观测方程和公式(2)所示的多普勒观测方程统称为卫星观测方程。
步骤S102,将终端状态信息设置为目标滤波器的初始状态参数,获取目标滤波器针对初始状态参数的初始状态协方差矩阵。
具体的,在得到终端对应的终端状态信息以及第一筛选观测信息后,可以基于终端状态信息建立目标滤波器,即通过终端状态信息对目标滤波器进行初始化,将该终端状态信息设置为目标滤波器的初始状态参数。该目标滤波器的状态参数的数量取决于终端状态信息所包含的参数数量,如终端状态信息包括终端位置、终端钟差、终端速度以及终端钟漂时,目标滤波器的初始状态参数可以设置为
Figure BDA0003467618210000225
其中,[.]T表示为矩阵的转置,z(0)表示为目标滤波器的初始状态参数,与此同时,还可以获取目标滤波器针对初始状态参数的初始状态协方差矩阵,该初始状态协方差矩阵可以用于表征初始状态参数之间的相关性,该初始状态协方差矩阵为对角线矩阵,同样为对称矩阵,初始状态协方差矩阵可以通过第一筛选观测信息和初始状态参数来确定。
其中,目标滤波器可以为递归滤波器,如目标滤波器可以包括但不限于:卡尔曼滤波器(Kalman Filter,EKF)、扩展卡尔曼滤波器(Extended Kalman Filter,EKF)、无迹卡尔曼滤波器、稳健卡尔曼滤波器等,本申请实施例对目标滤波器的类型不做限定。为方便描述,本实施例以稳健卡尔曼滤波器为例进行说明。
步骤S103,对目标滤波器的初始状态参数进行时间更新,得到预测状态参数,对目标滤波器的初始状态协方差矩阵进行时间更新,得到预测状态协方差矩阵。
具体的,目标滤波器在完成初始化后,可以对目标滤波器进行时间更新,将目标滤波器的初始状态参数更新为预测状态参数,将初始状态协方差矩阵更新为预测状态协方差矩阵。目标滤波器的时间更新过程可以是在初始状态参数的基础上,进行状态参数预测,目标滤波器在时间更新完成后的状态参数可以称为预测状态参数,此时目标滤波器针对该预测状态参数的状态协方差矩阵可以称为预测状态协方差矩阵。
其中,在目标滤波器的时间更新过程中,可以对目标滤波器的初始状态参数进行多次更新,将目标滤波器的初始状态参数记为z(0),目标滤波器的初始状态协方差矩阵记为P(0),z(0)可以认为是目标滤波器在0时刻的状态参数,P(0)可以认为是目标滤波器在0时刻的状态协方差矩阵,对目标滤波器进行时间更新的下一个(1时刻)状态参数可以记为z(1),下一个状态协方差矩阵可以记为P(1);以此类推,目标滤波器在t时刻的状态参数可以记为z(t),在t时刻的状态协方差矩阵可以记为P(t),假设当前时刻为t时刻,则z(t)为目标滤波器的预测状态参数,P(t)为目标滤波器的预测状态协方差矩阵。
步骤S104,从第一筛选观测信息中,筛选出用于构建目标滤波器的测量更新矩阵的第二筛选观测信息,根据由终端状态信息所确定的卫星观测误差因子,构建目标滤波器对应的测量方差矩阵。
具体的,在目标滤波器完成时间更新后,可以继续对目标滤波器进行测量更新,测量更新过程一开始的状态参数为目标滤波器时间更新完成时的预测状态参数,测量更新过程一开始的状态协方差矩阵为目标滤波器时间更新完成时的预测状态协方差矩阵。在对目标滤波器进行测量更新时,可以对目标滤波器进行模型验证,若目标滤波器通过模型验证,则可以通过正态分布检验从第一筛选观测信息中,筛选出用于构建目标滤波器的测量更新矩阵的第二筛选观测信息;若目标滤波器未通过模型验证,则需要对目标滤波器进行模型修复,如重新设置目标滤波器的初始状态参数和初始状态协方差矩阵。
其中,目标滤波器的模型验证可以包括:通过第一筛选观测信息对应的信噪比、以及第一筛选观测信息所对应卫星的高度角,构建观测方差矩阵,此时的第一筛选观测信息所对应的观测方差矩阵可以称为第一观测方差矩阵;进而可以通过第一观测残差矩阵、预测状态协方差矩阵、第一筛选观测数据针对预测状态参数的雅克比矩阵,以及第一观测方差矩阵,确定目标滤波器对应的模型验证参数值。其中,观测残差矩阵可以是指将卫星观测方程等号两边的式子相减所得到的矩阵,如上述公式(1)中的伪距观测方程的等号两边相减所得到的矩阵,可以称为由终端所接收到的N个伪距观测数据所构建的观测残差矩阵;基于相同的原理,可以通过第一筛选观测信息、第一筛选观测信息所对应卫星的卫星状态信息,以及预测状态信息,构建第一筛选观测信息对应的观测方程,将该观测方程等号两边的式子进行相减后可以得到上述第一观测残差矩阵;雅克比矩阵是一阶偏导数以一定方式排列成的矩阵,其行列式称为雅可比行列式。
在一个或多个实施例中,在获取目标滤波器对应的模型验证参数值之前,还可以根据第一观测残差矩阵的四分位数和绝对中位差,对第一观测残差矩阵进行粗差探测处理,得到第二观测残差矩阵;换言之,通过第一观测残差矩阵的四分位数和绝对中位差,剔除第一筛选观测信息中的观测信息粗差,以得到第三筛选观测信息,该由第三筛选观测信息所构建的观测残差矩阵可以称为第二观测残差矩阵。此时可以将第三筛选观测信息对应的信噪比,以及第三筛选观测信息所对应卫星的高度角,构建观测方差矩阵,此时第三筛选观测矩阵所对应的观测方差矩阵可以称为第一方差矩阵;进而可以通过第二观测残差矩阵、预测状态协方差矩阵、第二观测残差矩阵针对预测状态参数的雅克比矩阵,以及第一观测方差矩阵,确定目标滤波器对应的模型验证参数值;第三筛选观测信息的数量小于或等于第一筛选观测信息的数量。
其中,四分位数可以是指将第一观测残差矩阵中的元素进行排序,将排序后的观测残差序列按照四等分进行划分,排序后的观测残差序列中处于分割点的元素,四分之一分割点的元素称为下四分位数,二分之一分割点的元素称为中位数,四分之三分割点的元素称为上四分位数,即四分位数可以包括下四分位数、中位数以及上四分位数。绝对中位差是用第一观测残差矩阵中的元素减去中位数后得到的新数据的绝对值的中位数,绝对中位差是一种统计离差的测量。粗差探测处理可以通过粗差探测方法来实现,基于四分位数和绝对中位数进行粗差探测处理的方法仅为本申请实施例中的一种举例,如上述描述的粗差探测方法之外,还可以采用其余任何形式的粗差探测方法,例如,基于正态分布的序贯粗差探测、基于四分位数和绝对中位差的粗差探测等,本申请对剔除卫星观测信息粗差的粗差探测方法不做限定。
在一个或多个实施例中,当第一筛选观测数据为伪距观测数据时,可以通过第一筛选观测信息和预测状态协方差矩阵,对目标滤波器进行钟差跳变探测,若探测到目标滤波器存在钟差跳变,则对目标滤波器进行钟差跳变修复,即更新目标滤波器的状态参数和状态协方差参数;若目标滤波器未存在钟差跳变,则目标滤波器可以保持当前的状态参数和状态协方差矩阵。当第一筛选观测数据为多普勒观测数据时,可以通过第一筛选观测信息和预测状态协方差矩阵,对目标滤波器进行钟漂跳变探测,若探测到目标滤波器存在钟漂跳变,则对目标滤波器进行钟漂跳变修复,即更新目标滤波器的状态参数和状态协方差参数;若目标滤波器未存在钟漂跳变,则目标滤波器可以保持当前的状态参数和状态协方差矩阵。可选地,若通过粗差探测处理从第一筛选观测信息中筛选出第三筛选观测信息,则可以基于第三筛选观测信息和预测状态协方差矩阵进行钟差和钟漂跳变探测及修复。在目标滤波器完成钟差和钟漂跳变探测及修复之后,再对目标滤波器进行模型验证,即获取目标滤波器对应的模型验证参数值。
当目标滤波器的模型验证参数值小于模型验证阈值(可以根据实际需求进行设置,本申请对此不做限定)时,可以对模型验证参数进行标准化处理,得到标准化残差矩阵;通过对标准化残差矩阵进行正态分布检验,得到标准化残差矩阵中所包含的每个元素分别对应的检验结果;若标准化残差矩阵中的第l个元素所对应的检验结果不满足检验条件,则确定第l个元素未通过正态分布检验,从第一筛选观测信息中,剔除第l个元素所对应的卫星观测信息,得到第二筛选观测信息;l为小于或等于第一筛选观测信息的数量的正整数。可选地,当模型验证参数值大于或等于模型验证阈值时,则重新设置目标滤波器的初始状态参数和初始状态协方差矩阵,即重置目标滤波器。
可选地,若通过粗差探测处理从第一筛选观测信息中筛选出第三筛选观测信息,则可以从第三筛选观测信息中,剔除第l个元素所对应的卫星观测信息,得到第二筛选观测信息,此时的l为小于或等于第三筛选观测信息的数量的正整数。
进一步地,在确定第二筛选观测信息后,可以通过第二筛选观测信息、预测状态参数(即目标滤波器在当前时刻的状态参数)以及卫星状态信息构建第三观测残差矩阵,将第三观测残差矩阵针对预测状态参数的雅克比矩阵,确定为目标滤波器对应的测量更新矩阵。在确定终端状态信息时可以获取卫星观测误差因子,该卫星观测误差因子也可以称为随机误差模型因子;该卫星观测误差因子可以包括伪距观测随机误差模型因子和多普勒观测随机误差模型因子中的至少一种;伪距观测随机误差模型因子可以用于衡量伪距观测数据与实际数据之间的差异程度,多普勒观测随机误差模型因子可以用于衡量多普勒观测数据与实际数据之间的差异程度。通过卫星观测误差因子和各个卫星对应的随机误差模型,可以构建目标滤波器对应的测量方差矩阵,该测量方差矩阵可以为具有固定值的矩阵,也可以基于经验模型来确定。
步骤S105,通过测量更新矩阵、第二筛选观测信息、预测状态协方差矩阵以及测量方差矩阵,对目标滤波器的预测状态参数进行测量更新,得到目标状态参数,根据目标状态参数确定终端对应的终端定位结果。
具体的,通过测量更新矩阵、第二筛选观测信息、预测状态协方差矩阵以及测量方差矩阵,对目标滤波器的预测状态参数进行测量更新,可以得到目标状态参数和目标状态协方差矩阵。可以将目标状态参数与上一个状态参数之间的差值确定为目标滤波器对应的滤波器修正量,当该滤波器修正量通过检验(该修正阈值可以根据实际需求或经验进行设置)时,可以通过目标协方差矩阵、测量方差矩阵以及测量更新矩阵,构建目标滤波器对应的第二残差协方差矩阵;通过第二残差协方差矩阵对第三观测残差矩阵进行正态分布检验,得到第三观测残差矩阵中所包含的每个元素分别对应的检验结果;若第三观测残差矩阵中的每个元素分别对应的检验结果均满足检验条件,则将目标状态参数确定为终端对应的终端定位结果。可选地,本申请实施例中所得到的终端定位结果可以应用在手机终端定位导航应用场景中(例如,电子地图应用),还可以应用在车道级导航应用场景中,可以实现亚米级或车道级定位,其中亚米级定位是指终端定位结果的精度可以达到分米、厘米甚至毫米。
可选地,若滤波器修正量大于或等于修正阈值,则表示目标滤波器出现故障,需要重置滤波器。若第三观测残差矩阵中存在某个元素未通过检验,则剔除该元素所对应的卫星观测信息,从第二筛选观测信息中确定第四筛选观测信息,通过第四筛选观测信息重新构建测量更新矩阵。
本申请实施例中,可以通过卫星观测信息估计得到终端对应的终端状态信息,通过终端状态信息可以建立目标滤波器,通过目标滤波器时间更新和滤波器测量更新两个过程,从卫星观测信息中剔除观测信息粗差,并通过剔除观测信息粗差后的卫星观测信息,确定终端对应的终端定位结果,可以提高终端位置的准确性,实现亚米级或车道级定位,辅助车道级定位导航。
下面通过图4和图5对终端状态信息的确定过程进行详细描述,即图4和图5是对上述图3所对应实施例中的步骤S101的具体实施过程。其中,当卫星观测信息包括伪距观测数据和多普勒观测数据时,在获取到N(N为正整数)个卫星分别对应的卫星状态信息后,可以对N个伪距观测数据构建如前述公式(1)所示的伪距观测方程,对N个多普勒观测方程构建如前述公式(2)所示的多普勒观测方程。进一步地,可以利用抗差加权最小二乘算法和伪距观测方程,估计终端对应的终端位置和终端钟差;利用抗差加权最小二乘算法和多普勒观测方程,估计终端对应的终端速度和终端钟漂,终端位置、终端速度、终端钟差以及终端钟漂可以称为终端状态信息。其中,抗差加权最小二乘算法是通过等价权将抗差估计原理与最小二乘形式有机结合起来,量测值的主体一般是符合正态分布的,最小二乘法(又称最小平方法)是一种数学优化方法。需要说明的是,该抗差加权最小二乘算法仅仅只是本申请实施例所提供的一种举例说明,除抗差加权最小二乘算法之外的其余数学优化方法同样适用,例如牛顿法、随机梯度下降法,本申请对此不做限定。
请参见图4,图4是本申请实施例提供的一种估计终端状态信息中的终端位置和终端钟差的流程示意图。如图4所示,终端位置和终端钟差的估计过程可以包括以下步骤:
步骤S201,设置估计参数的初始值,即初始终端位置和初始终端钟差。
具体的,对于终端所接收到的卫星观测信息中的N个伪距观测信息,可以利用抗差加权最小二乘算法和N个伪距观测信息来估计终端位置和终端钟差。假设估计参数为
Figure BDA0003467618210000271
则采用抗差加权最小二乘算法的具体流程可以包括:设置估计参数xu的初始值,即为终端设置初始状态信息,此时的初始状态信息可包括初始终端位置和初始终端钟差,记为
Figure BDA0003467618210000272
如图2所对应实施例中的ru_0和dtr1_0。采用抗差加权最小二乘算法的目的在于不断迭代更新上述估计参数xu,以得到终端位置和终端钟差的估计值。
步骤S202,构建伪距残差矩阵。
具体的,通过卫星观测信息、初始状态信息以及卫星所对应的卫星状态信息,构建终端与卫星之间的卫星观测方程,此时的卫星观测信息包括N个伪距观测数据,初始状态信息可以包括初始终端位置ru,0和初始终端钟差dtr,0,卫星状态信息可包括卫星位置和卫星钟差,因此构建的卫星观测方程其实质上为伪距观测方程。更具体地,可以获取初始终端位置与卫星位置之间的间隔距离,如||ru,0-ri||(即初始终端位置与卫星i所对应的卫星位置之间的几何距离),以及获取初始终端钟差与卫星钟差之间的钟差差值,如dtr,0-dti;根据间隔距离和钟差差值,可以确定终端与卫星之间的第一估计值,如||ru,0-ri||+c·dtr,0-c·dtii,通过第一估计值和伪距观测数据,构建终端与卫星之间的伪距观测方程;该伪距观测方程的形式如上述公式(1)所示,只是将上述公式(1)中的ru替换为ru,0,dtr替换为dtr,0。进而可以将该伪距观测方程等式的两边进行相减,可以得到伪距残差矩阵B0,也可以简称为伪距残差矩阵,伪距残差矩阵B0中的元素可以表示为各个伪距观测数据与由初始终端位置、卫星位置、初始终端钟差以及卫星钟差所得到的估计值之间的残差值。
步骤S203,基于四分位数对伪距残差矩阵进行粗差探测。
具体的,在构建了伪距残差矩阵B0之后,可以基于四分位数对该伪距残差矩阵B0进行粗差探测,剔除N个伪距观测数据中的伪距观测数据粗差。其中,基于四分位数的粗差探测过程在具体的实施过程中可以衍生出许多不同的粗差探测方案,如针对相同的数据,粗差探测条件不同,所得到的结果也有可能不同,造成不同结果的粗差探测方案应该是不同的,下面以一种基于四分位数的粗差探测方案为例,对该粗差探测过程进行描述。
对伪距残差矩阵B0中的元素按照从小到大的顺序进行排序,得到排序后的伪距残差序列,该排序后的伪距残差序列可以称为第一序列,获取第一序列对应的初始掩码数组mask[N]={0,0,......,0},可以根据第一序列的上四分位数和下四分位数,对第一序列进行粗差探测,如第一序列中的任一元素小于M1/4-1.5·(M3/4-M1/4)或大于M3/4+1.5·(M3/4-M1/4)时,mask[i]=mask[i]+1,否则不作处理,其中,i为小于N的正整数,此次操作是对初始掩码数组的更新处理过程。其中,M1/4为第一序列的下四分位数,M3/4为第一序列的上四分位数。
进一步地,将第一序列中的每个元素分别与第一序列的中位数进行相减,将对相减后所得到的结果取绝对值,得到一组新的数据,这组新的数据可以称为第二序列。获取第二序列的下四位数(记为
Figure BDA0003467618210000291
)和上四位数(可以记为
Figure BDA0003467618210000292
),当第二序列中的元素大于
Figure BDA0003467618210000293
且小于
Figure BDA0003467618210000294
Figure BDA0003467618210000295
时,可以将该元素添加到第三序列中,即第二序列中凡是满足上述条件的元素均加入第三序列中,计算第三序列的中位数(记为
Figure BDA0003467618210000296
)。当第一序列中的任一元素
Figure BDA0003467618210000297
满足
Figure BDA0003467618210000298
时,mask[i]=mask[i]+1,否则不作处理,此次操作是对上述更新后的掩码数组再次进行更新处理的过程,此次更新后的掩码数组可以称为目标掩码数组,若目标掩码数组中的第i个元素(即mask[i])大于或等于1,则确定第一序列中的第i个元素所对应的伪距观测数据为粗差,进而剔除该第i个元素所对应的伪距观测数据。若mask[i]=0,则保留第一序列中的第i个元素所对应的伪距观测数据。通过上述粗差探测过程,可以从N个伪距观测数据中剔除一些伪距观测数据粗差,得到剔除粗差后的伪距观测数据,可以称之为第五筛选观测信息。假设第五筛选观测信息包括n1个伪距观测数据,n1为小于或等于N的正整数,当n1小于N时,需要基于第五筛选观测信息重新构建伪距残差矩阵B0,相比于之前的伪距残差矩阵,重新构建的B0的行数量变小了。
可选地,在一种或多种实施例中,可以跳过步骤S203,直接从步骤S202跳转至步骤S204,那么步骤S204以及后续步骤均是在N个伪距观测数据的基础上进行的。若执行完步骤S203后所获取到的伪距观测数据的数量变成了n1个,则步骤S204以及后续步骤均是在n1个伪距观测数据的基础上进行的。为方便描述,本申请实施例中的后续步骤均以n1个伪距观测数据为基础来执行,后面对此不再进行解释。
步骤S204,计算伪距观测方程关于估计参数的雅克比矩阵。
具体的,假设第k-1迭代的估计参数为
Figure BDA0003467618210000299
那么当k为1时,第k-1次迭代的估计参数包括初始终端位置和初始终端钟差,每次迭代的卫星观测方程由该次迭代的估计参数所构建,即第k-1次迭代的伪距观测方程需要将上述公式(1)中的终端位置和终端钟差替换为xu,k-1中的终端位置ru,k-1和终端钟差dtr,k-1,将第k-1次迭代的卫星观测方程(伪距观测方程),针对第k-1次迭代的估计参数的偏导数,确定为第k-1次迭代的雅克比矩阵,根据第k-1次迭代的卫星观测方程可以构建第k-1次迭代的伪距残差矩阵。其中,第k-1次迭代的伪距残差矩阵记为Bk-1,第k-1次迭代的雅克比矩阵记为Gρ,k-1,该雅克比矩阵Gρ,k-1可以如下述公式(3)所示:
Figure BDA0003467618210000301
其中,在上述公式(3)中,
Figure BDA0003467618210000302
表示第k-1次迭代时,终端至卫星i的单位观测向量。
步骤S205,构建伪距观测方差矩阵。
具体的,若未执行前述步骤S203,或执行完上述步骤S203后未筛选出伪距观测数据粗差,则可以根据观测误差参数、N个卫星所对应的卫星观测信息(伪距观测数据)的信噪比,以及N个卫星分别对应的高度角,确定N个卫星分别对应的卫星观测误差(此处的卫星观测误差可以为伪距随机观测误差模型);进而将N个卫星分别对应的卫星观测误差作为矩阵对角元素,构建第二观测方差矩阵,此时的第二观测方差矩阵可以为N个伪距观测数据所确定的伪距观测方差矩阵。可选地,若执行完上述步骤S203后剔除了伪距观测数据粗差,仅剩下n1个卫星对应的伪距观测数据(此处默认n1小于N),则可以根据观测误差参数、n1个伪距观测数据分别对应的信噪比,以及n1个伪距观测数据所关联的n1个卫星分别对应的高度角,确定n1个卫星分别对应的伪距随机观测误差模型;将n1个卫星分别对应的伪距随机观测误差模型作为矩阵对角元素,构建伪距观测方差矩阵,该伪距观测方差矩阵可以如下述公式(4)所示:
Figure BDA0003467618210000303
其中,上述公式(4)中的Wρ,k-1表示第k次迭代的伪距观测方差矩阵,σρi表示卫星i对应的伪距观测随机误差模型(卫星观测误差),σρi可以如下述公式(5)所示:
Figure BDA0003467618210000304
其中,CN0i为卫星i的伪距观测值的信噪比,eli表示卫星i的高度角,δρ为伪距观测参数,该参数可以根据实际需求进行设置,如δρ可以设置为32,本申请对此不做限定。
需要说明的是,伪距观测方差矩阵是一个具有固定数值的矩阵,在估计参数xu的迭代更新过程中,若所使用的伪距观测数据未发生变更,则该伪距观测方差矩阵保持不变;若从伪距观测数据中探测出伪距观测数据粗差,并剔除了该伪距观测数据粗差,则表示伪距观测数据发生了变更,因此可以重新构建伪距观测方差矩阵,即删除伪距观测数据粗差所对应卫星的卫星观测误差;剔除的伪距观测数据粗差越多,伪距观测方差矩阵的行数就越少。
步骤S206,计算估计参数修正量,并更新估计参数值。
具体的,可以根据第k-1次迭代的雅克比矩阵Gρ,k-1、第k-1次迭代的伪距残差矩阵(即上述Bk-1)以及第二观测方差矩阵(即伪距观测方差矩阵Wρ,k-1),获取第k-1次迭代的状态信息修正量(也可以称为估计参数修正量),第k-1次迭代的状态信息修正量可以如下述公式(6)所示:
Figure BDA0003467618210000311
其中,Δxρ,k-1表示第k-1次迭代的状态信息修正量,也称为第k-1次迭代的估计参数修正量,Bk-1为第k-1次迭代的伪距残差矩阵,如下述公式(7)所示:
Figure BDA0003467618210000312
其中,根据第k-1次迭代的状态信息修正量可以对估计参数xu进行更新,更新过程如下述公式(8)所示:
xu,k=xu,k-1+Δxρ,k-1 (8)
其中,xu,k为第k次迭代的估计参数,对于每次迭代计算得到的状态信息修正量,均需要判断其是否达到收敛,如在计算得到第k-1次迭代的状态信息修正量Δxρ,k-1后,同样需要对其进行收敛性判断,若Δxρ,k-1未达到收敛,则将第k次迭代的估计参数作为下一次迭代(第k+1次迭代)的初始值,重复执行步骤S201-步骤S206。若Δxρ,k-1达到收敛,则继续执行后续步骤S207。
步骤S207,计算卡方检验统计量。
具体的,当第k-1次迭代的状态信息修正量(即Δxρ,k-1)达到收敛时,将第k-1次迭代的估计参数和第k-1次迭代的状态信息修正量之和,确定为第k次迭代的估计参数,即基于上述公式(8)得到第k次迭代的估计参数
Figure BDA0003467618210000321
并对此时的结算结果进行卡方检验;根据第k次迭代的卫星观测方程构建第k次迭代的伪距残差矩阵(即上述Bk),将第k次迭代的伪距残差矩阵对应的转置矩阵、伪距观测方差矩阵对应的逆矩阵,以及第k次迭代的伪距残差矩阵之间的乘积,确定为检验统计量s。其中,Δxρ,k-1达到收敛的条件可以为||Δxρ,k-1||<10-4,此处的10-4可以为根据实际需要所设置的值,本申请其具体取值不做限定;检验统计量s可以如下述公式(9)所示:
Figure BDA0003467618210000322
其中,Bk的表示形式如下述公式(10)所示:
Figure BDA0003467618210000323
需要说明的是,由于Bk是在进行卡方检验时的伪距残差矩阵,因此也可以称其为验后残差矩阵。
若检验统计量s小于检验阈值(可以根据实际需求进行设置),则执行步骤S211和步骤S212,如将第k次迭代的估计参数
Figure BDA0003467618210000324
确定为终端对应的终端状态信息中的终端位置和终端钟差。若检验统计量s大于或等于检验阈值,则执行后续步骤S208至步骤S210,即通过计算得到的验后残差协方差矩阵(可以称为第一残差协方差矩阵)对验后残差矩阵(即上述Bk)进行正态分布检验,剔除未通过正态分布检验的伪距观测数据。
步骤S208,计算验后残差协方差矩阵。
具体的,若检验统计量s大于或等于检验阈值,则根据第k-1次迭代的雅克比矩阵Gρ,k-1、第二观测方差矩阵(即伪距观测方差矩阵Wρ,k-1),构建验后残差协方差矩阵,残差协方差矩阵可以如下述公式(11)所示:
Figure BDA0003467618210000325
其中,CB表示验后残差协方差矩阵。
步骤S209,根据验后残差协方差矩阵对验后残差矩阵进行正态分布检验。
步骤S210,剔除未通过正态分布检验的伪距观测数据。
具体的,通过第一残差协方差矩阵(验后残差协方差矩阵)对第k次迭代的伪距残差矩阵(验后残差矩阵,即执行过卡方检验的伪距残差矩阵Bk)进行正态分布检验,得到第k次迭代的伪距残差矩阵中的每个元素分别对应的检验结果;若第k次迭代的伪距残差矩阵中的第i个元素所对应的检验结果不满足检验条件,则确定第i个元素未通过正态分布检验,剔除第i个元素所关联的伪距观测数据;i为小于或等于伪距观测数据的数量的正整数;将剔除第i个元素所关联的伪距观测数据后所剩余的伪距观测数据作为卫星观测信息,将第k次迭代的估计参数作为初始状态信息,重新从上述步骤S201开始执行,即开始执行下一个迭代周期。其中,迭代周期是通过是否收敛来判断的,例如,估计参数在第10次迭代时达到收敛,但此时的解算信息未通过卡方检验,则可以将第1次迭代至第10次迭代作为第一个迭代周期,估计参数在第25次迭代时再次达到收敛,则第11次迭代至第25次迭代作为第二个迭代周期,并以此类推,直至达到收敛并通过卡方检验。不同的迭代周期所包含的迭代次数可以相同,也可以不同,不同迭代周期中所使用的伪距观测数据可以相同,也可以不同,通常情况下是不同的。
其中,对验后残差矩阵(即Bk)进行正态分布检验的过程如下述公式(12)所示:
Figure BDA0003467618210000331
其中,公式(12)中的N(α)为置信度为α的正态分布上分位数,
Figure BDA0003467618210000332
表示Bk中的第i个元素。
步骤S211,自适应估计伪距观测随机误差模型因子。
具体的,当检验统计量s小于检验阈值时,可以自适应估计伪距观测随机误差模型因子,也可以称为伪距观测误差因子,该伪距观测随机误差模型因子可以如下述公式(13)所示:
Figure BDA0003467618210000333
其中,
Figure BDA0003467618210000334
表示为伪距观测随机误差模型因子,该
Figure BDA0003467618210000335
为检验统计量s小于检验阈值时,使用该检验统计量s与Bk中所包含的伪距观测数据的数量,也可以是指Bk的行数量。
步骤S212,输出终端位置、伪距观测随机误差模型因子和剔除伪距观测数据信息。
具体的,当检验统计量s小于检验阈值时,可以将第k次迭代的估计参数作为终端对应的终端位置,还可以输出伪距观测随机误差模型因子
Figure BDA0003467618210000346
以及剔除了部分伪距观测数据粗差后所得到的剩余伪距观测数据,这些剩余的伪距观测数可以称为伪距筛选数据。换言之,伪距筛选数据为Bk所包含的伪距观测数据。
请参见图5,图5是本申请实施例提供的一种估计终端状态信息中的终端速度和终端钟漂的流程示意图。如图5所示,终端速度和终端钟漂的估计过程可以包括以下步骤:
步骤S301,设置估计参数的初始值,即初始终端速度和初始终端钟漂。
具体的,对于终端所接收到的卫星观测信息中的N个多普勒观测信息,可以利用抗差加权最小二乘算法和N个多普勒观测信息来估计终端速度和终端钟漂。假设估计参数为
Figure BDA0003467618210000341
则采用抗差加权最小二乘算法的具体流程可以包括:设置估计参数yu的初始值,即为终端设置初始状态信息,此时的初始状态信息可包括初始终端速度和初始终端钟漂,记为
Figure BDA0003467618210000342
如图2所对应实施例中的vu_0和dtr2_0。采用抗差加权最小二乘算法的目的在于不断迭代更新上述估计参数yu,估计终端对应的终端速度和终端钟漂。
步骤S302,构建多普勒残差矩阵。
具体的,通过卫星观测信息、初始状态信息以及卫星所对应的卫星状态信息,构建终端与卫星之间的卫星观测方程,此时的卫星观测信息包括N个多普勒观测数据,初始状态信息可以包括初始终端速度vu,0和初始终端钟差
Figure BDA0003467618210000343
卫星状态信息可包括卫星速度和卫星钟漂,因此构建的卫星观测方程其实质上为多普勒观测方程。更具体地,可以获取初始终端速度与卫星速度之间的速度差值,以及获取终端与卫星之间的单位观测值,如
Figure BDA0003467618210000344
获取初始终端钟漂与卫星钟漂之间的钟漂差值,根据速度差值与单位观测值之间的乘积,以及钟漂差值,确定终端与卫星之间的第二估计值,如
Figure BDA0003467618210000345
通过卫星播发信号的波长和多普勒观测数据之间的乘积,以及第二估计值,构建终端与卫星之间的多普勒观测方程;该多普勒观测方程的形式如上述公式(2)所示,只是将上述公式(2)中的vu替换为vu,0
Figure BDA0003467618210000351
替换为
Figure BDA0003467618210000352
进而可以将该多普勒观测方程等式的两边进行相减,可以得到多普勒残差矩阵,也可以简称为多普勒残差矩阵。
步骤S303,基于四分位数对伪距残差矩阵进行粗差探测。
步骤S304,计算多普勒观测方程关于估计参数的雅克比矩阵。
步骤S305,构建多普勒观测方差矩阵。
步骤S306,计算估计参数修正量,并更新估计参数值。
步骤S307,计算卡方检验统计量。
步骤S308,计算验后残差协方差矩阵。
步骤S309,根据验后残差协方差矩阵对验后残差矩阵进行正态分布检验。
步骤S310,剔除未通过正态分布检验的多普勒观测数据。
步骤S311,自适应估计多普勒观测随机误差模型因子。
步骤S312,输出终端速度、多普勒观测随机误差模型因子和剔除多普勒观测数据信息。
其中,步骤S303至步骤S312的具体实现过程是基于抗差加权最小二乘算法对估计参数yu的更新过程,其算法流程与上述图4所对应实施例中利用伪距观测信息估计终端位置的流程类似,这里不再进行赘述。需要说明的是,利用抗差加权最小二乘算法对N个多普勒观测数据进行处理,可以输出终端速度、多普勒观测随机误差模型因子
Figure BDA0003467618210000353
(也可以称为多普勒观测误差因子,该普勒观测误差因子与前述伪距观测误差因子统称为卫星观测误差因子)以及剔除了部分多普勒观测数据粗差所剩余的多普勒观测数据,这些剩余的多普勒观测数据可以称为多普勒筛选数据。该多普勒筛选数据和前述伪距筛选数据可以称为第一筛选观测信息;通过伪距观测数据估计的终端位置和终端钟差,以及通过多普勒观测数据估计的终端速度和终端钟漂可以统称为终端对应的终端状态信息。
本申请实施例中,通过抗差加权最小二乘算法估计终端的终端位置和终端速度,可以为建立目标滤波器提供了更为准确的初始状态参数,可以提高终端的定位准确性。
请参见图6,图6是本申请实施例提供的一种中端定位方法的流程示意图。该终端定位方法可以由计算机设备执行,该计算机设备可以为集成了卫星定位设备的电子设备,例如图1所示用户终端集群中的任一用户终端,或任一需要进行定位的终端。本申请实施例以卫星观测信息包括伪距观测数据和多普勒观测数据、目标滤波器为稳健卡尔曼滤波器为例进行详细说明,如图4所示,该终端定位方法可以包括以下步骤:
步骤S401,基于抗差加权最小二乘和卫星观测信息估计终端状态信息。
步骤S401的具体实现过程可以参见上述图4和图5所对应实施例中的描述,在此不再进行赘述。
步骤S402,由终端状态信息建立稳健卡尔曼滤波器。
具体的,当稳健卡尔曼滤波器已经完成了初始化处理,则无需执行步骤S402,直接执行后续步骤S403。当稳健卡尔曼滤波器未初始化时,可以将终端状态信息中的终端位置、终端速度、终端钟差以及终端钟漂,设置为稳健卡尔曼滤波器(目标滤波器)的初始状态参数,即
Figure BDA0003467618210000361
通过伪距筛选数据对应的信噪比,以及伪距筛选数据所对应卫星的高度角,构建伪距观测方差矩阵,记为Wρt,通过多普勒筛选数据对应的信噪比,以及多普勒筛选数据所对应卫星的高度角,构建多普勒观测方差矩阵,记为
Figure BDA0003467618210000362
通过伪距观测方差矩阵、由终端位置和终端钟差所确定的卫星观测误差因子(即伪距观测随机误差模型因子
Figure BDA0003467618210000363
也可以称为伪距观测误差因子),以及由伪距筛选数据、终端位置、终端钟差所确定的雅克比矩阵,记为Gρt,构建位置协方差矩阵;通过多普勒观测方差矩阵,由终端速度和终端钟漂所确定的卫星观测误差因子(即多普勒距观测随机误差模型因子
Figure BDA0003467618210000364
也可以称为多普勒观测误差因子),以及由多普勒筛选数据、终端速度、终端钟漂所确定的雅克比矩阵
Figure BDA0003467618210000365
构建速度协方差矩阵;将位置协方差矩阵和速度协方差矩阵所构成的对角线矩阵,确定为目标滤波器对应的初始状态协方差矩阵。其中,初始状态协方差矩阵是由抗差加权最小二乘算法计算得到的,其表示形式如下述公式(14)所示:
Figure BDA0003467618210000366
其中,p(0)为初始状态协方差矩阵,diag表示对角线矩阵,
Figure BDA0003467618210000367
为位置协方差矩阵,
Figure BDA0003467618210000368
为速度协方差矩阵,位置协方差矩阵
Figure BDA0003467618210000369
如下述公式(15)所示,速度协方差矩阵
Figure BDA00034676182100003610
可以如下述公式(16)所示:
Figure BDA00034676182100003611
Figure BDA00034676182100003612
其中,Gρt为终端接收到的伪距观测数据进行抗差加权最小二乘估计后所得到的雅克比矩阵,即第一筛选观测信息中的伪距筛选数据所确定的雅克比矩阵;
Figure BDA0003467618210000371
为终端接收到的多普勒观测数据进行抗差加权最小二乘估计后所得到的雅克比矩阵,即第一筛选观测信息中的多普勒筛选数据所确定的雅克比矩阵;Wρt为第一筛选观测信息中的伪距筛选数据所对应的伪距测量方差矩阵,
Figure BDA0003467618210000372
为第一筛选观测信息中的多普勒筛选数据所对应的多普勒观测方差矩阵;
Figure BDA0003467618210000373
为伪距观测随机误差模型因子,也称为伪距观测误差因子,
Figure BDA0003467618210000374
为多普勒观测随机误差模型因子,也称为多普勒观测误差因子,I3为单位矩阵。
步骤S403,根据历史状态信息估计滤波器系统噪声。
具体的,请参见图7,图7是本申请实施例提供的一种滤波器系统噪声自适应估计的示意图。如图7所示,滤波器系统噪声自适应估计可以包括速度系统噪声估计、钟漂系统噪声估计以及钟差系统噪声估计,速度系统噪声估计是通过历史终端速度信息来实现的,该历史终端速度信息可以为一个历史终端速度序列,历史钟差信息可以为一个历史终端钟差序列,历史钟漂信息可以为一个历史终端钟漂序列。
进一步地,可以获取终端对应的历史状态信息中的历史终端速度序列、历史终端钟漂序列以及历史终端钟差序列;历史终端速度序列、历史终端钟漂序列以及历史终端钟差序列均是通过尺寸为p的时间滑动窗口所确定的,p为正整数;上述历史状态信息可以是指在抗差加权最小二乘的更新迭代过程中所产生的状态信息。其中,历史终端速度序列可以如公式(17)所示:
Tv(p)={vu(t1),vu(t2),vu(t3),......,vu(tp)} (17)
其中,Tv(p)表示历史终端速度序列,表示连续p个时刻所保存的历史终端速度,vu(t1)表示为t1时刻的终端速度;历史终端钟漂序列可以如公式(18)所下:
Figure BDA0003467618210000375
其中,
Figure BDA0003467618210000376
表示历史终端钟漂序列,表示连续p个时刻所保存的历史终端钟漂;历史终端钟差序列可以如公式(19)所示:
dtr(p)={dtr(t1),dtr(t2),dtr(t3),......,dtr(tp)} (19)
其中,dtr(p)表示历史终端钟差序列,表示连续p个时刻所保存的历史终端钟差。
其中,如图7所示的速度系统噪声估计可以包括:获取历史终端速度序列对应的第一方差值,记为σv(p),将第一方差值和相邻历元的时间差之间的乘积,确定为目标滤波器对应的速度系统噪声;其中,第一方差值可以如下述公式(20)所示:
Figure BDA0003467618210000381
其中,目标滤波器的速度系统噪声可以采用谱密度PSDv进行表示,谱密度PSDv如下述公式(21)所示:
PSDv=(σv(p))2·dt (21)
其中,dt表示相邻历元的时间差。
其中,如图7所示的钟漂系统噪声估计可以包括:获取历史终端钟漂序列对应的第二方差值,记为
Figure BDA0003467618210000387
将第二方差值和相邻历元的时间差dt之间的乘积,确定为目标滤波器对应的钟漂系统噪声;其中,第二方差值可以如下述公式(22)所示:
Figure BDA0003467618210000382
其中,目标滤波器的钟漂系统噪声可以采用谱密度
Figure BDA0003467618210000383
进行表示,谱密度
Figure BDA0003467618210000384
如下述公式(23)所示:
Figure BDA0003467618210000385
其中,如图7所示的钟差系统噪声估计包括:获取历史终端钟差序列对应的第三方差值,记为σdtr(p),将第三方差值和相邻历元的时间差之间的乘积,确定为目标滤波器对应的钟差系统噪声;其中,第三方差值可以如下述公式(24)所示:
Figure BDA0003467618210000386
其中,目标滤波器的钟差系统噪声可以采用谱密度PSDdtr进行表示,如下述公式(25)所示:
PSDdtr=(σdtr(p))2·dt (25)
进而可以将速度系统噪声、钟漂系统噪声以及钟差系统噪声确定为目标滤波器对应的滤波器系统噪声,即滤波器系统噪声包括上述谱密度PSDv,谱密度
Figure BDA0003467618210000392
以及谱密度PSDdtr
可选地,在完成滤波器系统噪声估计后,可以对稳健卡尔曼滤波器进行时间更新,如可以通过相邻历元的时间差构建目标滤波器(稳健卡尔曼滤波器)的状态转移矩阵,根据状态转移矩阵对目标滤波器的初始状态参数进行时间更新,得到预测状态参数,目标滤波器时间更新过程中状态参数的更新方式为:下一个状态参数是上一个状态参数与状态转移矩阵的乘积;根据状态转移矩阵和滤波器系统噪声,对目标滤波器的初始状态协方差矩阵进行时间更新,得到预测状态协方差矩阵。
其中,目标滤波器时间更新过程中状态协方差矩阵的更新方式可以包括:当预测状态协方差矩阵为目标滤波器中的初始状态协方差矩阵在t时刻的状态协方差矩阵时,那么上述预测状态参数同样为初始状态参数在t时刻的状态参数,t为正整数;可以通过滤波器系统噪声以及相邻历元的时间差所对应的指数信息,构建噪声协方差矩阵;进而获取目标滤波器在t-1时刻的状态协方差矩阵;t为1时,目标滤波器在t-1时刻的状态协方差矩阵为初始状态协方差矩阵;将状态转移矩阵、t-1时刻的状态协方差矩阵以及状态转移矩阵对应的转置矩阵之间的乘积,与噪声协方差矩阵进行求和运算,得到预测协方差矩阵。假设目标滤波器在t-1时刻的状态方差矩阵为P(t-1),则在t时刻,目标滤波器的状态协方差矩阵P(t)可以如下述公式(26)所示:
P(t)=F(t-1)·P(t-1)·FT(t-1)+Q(t-1) (26)
其中,F(t-1)为状态转移矩阵,Q(t-1)为噪声协方差矩阵,该状态转移矩阵F(t-1)可以如公式(27)所示:
Figure BDA0003467618210000391
其中,τd为马尔科夫过程的相关时间,通常为经验值,噪声协方差矩阵Q(t-1)可以如公式(28)所示:
Figure BDA0003467618210000401
在t时刻,目标滤波器的状态参数x(t)=F(t-1)·x(t-1),通过该公式可以实现对目标滤波器状态参数的时间更新过程,通过上述公式(26)至公式(28),可以实现对目标滤波器状态协方差矩阵的时间更新过程,完成时间更新后目标滤波器的状态参数称为预测状态参数,目标滤波器的状态协方差矩阵的预测状态协方差矩阵。
步骤S404,根据抗差加权最小二乘解算信息自适应估计卫星观测信息随机误差模型(也可以称为卫星观测误差)。
具体的,卫星观测信息随机误差模型可以包括伪距观测随机误差模型和多普勒观测随机误差模型,卫星观测信息随机误差模型可以如下述公式(29)所示:
Figure BDA0003467618210000402
其中,σρ表示伪距观测随机误差模型,δρ表示伪距观测数据对应的观测误差参数,
Figure BDA0003467618210000403
表示多普勒观测随机误差模型,
Figure BDA00034676182100004010
表示伪距观测数据对应的观测误差参数,δρ
Figure BDA0003467618210000404
可以根据经验或实际需求进行调整,如δρ=32
Figure BDA0003467618210000409
CN0表示卫星观测信息的信噪比,el表示卫星的高度角。通过伪距观测随机误差模型因子
Figure BDA0003467618210000405
(伪距观测误差因子)可以对伪距观测随机误差模型σρ进行自适应调节,通过多普勒观测随机误差模型因子
Figure BDA0003467618210000406
对多普勒观测随机误差模型
Figure BDA0003467618210000407
进行自适应调节,如下述公式(27)所示:
Figure BDA0003467618210000408
步骤S405,利用抗差加权最小二乘解算信息初步剔除卫星观测信息粗差,得到第一筛选观测信息。
具体的,利用抗差加权最小二乘解算信息剔除卫星观测信息粗差,所得到的剩余卫星观测信息可以称为第一筛选观测信息。第一筛选观测信息的确定过程可以参见上述图4所对应实施例中的步骤S203和步骤S211中的描述,这里不再进行赘述。
步骤S406,对第一筛选观测信息构建卫星观测残差矩阵,即第一观测残差矩阵。
具体的,通过抗差加权最小二乘解算信息获取到第一筛选观测信息后,此时的第一筛选观测信息即为剔除粗差后的卫星观测信息。可以理解的是,此处的第一筛选观测信息虽然为剔除粗差后的卫星观测信息,但是并不表示第一筛选观测信息已经不含有观测信息粗差,只能理解为到当前步骤为止,已经剔除了所有探测出来的观测信息粗差,至于第一筛选观测信息中还有没有观测信息粗差,可以通过后续步骤来进行探测。
通过第一筛选观测信息可以构建卫星观测残差矩阵,此处的卫星观测残差矩阵可以称为第一观测残差矩阵。由于第一筛选观测信息包括伪距观测数据和多普勒观测数据,因此通过第一筛选观测信息可以构建两个卫星观测残差矩阵,即第一观测残差矩阵可以包括多普勒残差矩阵和伪距残差矩阵。假设第一筛选观测信息包括sn个伪距观测数据,sn为小于或等于N的正整数,则通过sn个伪距观测数据所构建的卫星观测方程可以如下述公式(31)所示:
Figure BDA0003467618210000411
由上述公式(31)所示的卫星观测方程可以构建第一观测残差矩阵中的伪距残差矩阵
Figure BDA0003467618210000412
该伪距残差矩阵
Figure BDA0003467618210000413
可以如下述公式(32)所示:
Figure BDA0003467618210000414
可选地,假设第一筛选观测信息中所包含qn个多普勒观测数据,qn为小于或等于N的正整数,则通过qn个多普勒观测数据所构建的卫星观测方程可以如下述公式(33)所示:
Figure BDA0003467618210000421
由上述公式(33)所示的卫星观测方程可以构建第一观测残差矩阵中的多普勒残差矩阵
Figure BDA0003467618210000422
该多普勒残差矩阵
Figure BDA0003467618210000423
可以如下述公式(34)所示:
Figure BDA0003467618210000424
步骤S407,基于伪距残差矩阵进行钟跳探测和修复。
具体的,当上述公式(32)所示的伪距残差矩阵
Figure BDA0003467618210000425
满足下述公式(35)所示的关系式时,可以采用下述公式(36)所示的方式进行钟差跳变探测,即:
Figure BDA0003467618210000426
Figure BDA0003467618210000427
其中,
Figure BDA0003467618210000428
表示伪距残差矩阵
Figure BDA0003467618210000429
的绝对中位差,
Figure BDA00034676182100004210
表示伪距残差矩阵
Figure BDA00034676182100004211
的中位数,
Figure BDA00034676182100004212
表示伪距残差矩阵
Figure BDA00034676182100004213
的标准差,
Figure BDA00034676182100004214
表示伪距残差矩阵
Figure BDA00034676182100004215
的平均值,θm和θclk为钟差探测阈值,如将θm称为第一钟差探测阈值,将θclk称为第二钟差探测阈值,
Figure BDA00034676182100004216
表示目标滤波器在t时刻的状态协方差矩阵第jclk行第jclk列元素,此时t时刻的状态协方差矩阵可以为预测状态协方差矩阵,jumpclk为钟差跳变值,
Figure BDA00034676182100004217
为钟差探测数值。
步骤S408,基于伪距残差矩阵计算钟差跳变值并修复钟差。
具体的,当jumpclk为零时不作处理,表示没有出现钟差跳变;当jumpclk等于1时则表示探测到钟差跳变,可以采用下述公式(37)所示的方式修复钟差跳变并重置滤波器,即重新设置目标滤波器的状态参数和状态协方差矩阵,如:
Figure BDA0003467618210000431
其中,SQR(100.0)表示对100进行开方。
步骤S409,基于多普勒残差矩阵进行钟漂跳变探测和修复。
具体的,与上述钟差跳变探测处理过程类似,通过公式(34)所示的多普勒残差矩阵
Figure BDA0003467618210000432
进行钟漂跳变探测和修复,钟漂跳变探测方法与钟差跳变探测方法相同(即上述公式(35)和公式(36)),此处不再进行赘述。
步骤S410,基于多普勒残差矩阵计算钟漂跳变值并修复钟漂。
具体的,当探测到钟漂跳变时,可以采用下述公式(38)所示的方式修复钟漂跳变并重置滤波器,即重新设置目标滤波器的状态参数和状态协方差矩阵,如:
Figure BDA0003467618210000433
其中,jdclk为钟漂在滤波器状态参数z(t)的位置。
步骤S411,计算滤波器模型验证参数值,并对稳健卡尔曼滤波器进行验证和修复。
具体的,在完成钟差和钟漂跳变探测后,可以计算滤波器模型验证参数值,通过该模型验证参数值来判断稳健卡尔曼滤波器系统是否存在故障。该模型验证参数值可以包括伪距模型验证参数值和多普勒模型验证参数值,模型验证参数值如下述公式(39)所示:
Figure BDA0003467618210000434
其中,βρ为伪距模型验证参数值,
Figure BDA0003467618210000435
为多普勒模型验证参数值,P(t)为t时刻滤波器的状态协方差矩阵,Gρt为伪距残差矩阵
Figure BDA0003467618210000436
关于滤波器状态参数的雅克比矩阵,
Figure BDA0003467618210000437
为多普勒残差矩阵
Figure BDA0003467618210000438
关于滤波器状态参数的雅克比矩阵。换言之,此时的模型验证参数值是由第一筛选观测信息所构建的第一观测残差矩阵(包括伪距残差矩阵
Figure BDA0003467618210000439
和多普勒残差矩阵
Figure BDA00034676182100004310
)、第一观测残差矩阵关于滤波器状态参数(例如预测状态参数)的雅克比矩阵(包括雅克比矩阵Gρt和雅克比矩阵
Figure BDA0003467618210000441
)、目标滤波器的状态协方差矩阵P(t)以及第一筛选观测信息相关联的第一观测方差矩阵(包括伪距观测方差矩阵Wρt和多普勒观测方差矩阵
Figure BDA0003467618210000442
)构建得到。
当目标滤波器的模型验证参数值小于模型验证阈值时,可以继续执行下述步骤S412,当目标滤波器的模型验证参数值大于或等于模型验证阈值时,表示该目标滤波器出现故障,需要重置目标滤波器,重复执行上述步骤S402,即重新设置目标滤波器的初始状态参数和初始状态协方差矩阵。
步骤S412,基于正态分布检验剔除卫星观测信息粗差,得到第二筛选观测信息。
具体的,当目标滤波器的模型验证参数值小于模型验证阈值时,可以基于第一观测残差矩阵和正态分布检验对第一筛选观测信息进行粗差探测,从第一筛选观测信息中剔除导致目标滤波器发散的卫星观测信息粗差。例如,可以对模型参数值进行标准化处理,得到标准化残差矩阵,此处的标准化残差矩阵可以称为第一标准化残差矩阵,第一标准化残差矩阵可以包括伪距标准化残差矩阵和多普勒标准化残差矩阵,该第一标准化残差矩阵可以如下述公式(40)所示:
Figure BDA0003467618210000443
其中,bρ表示第一标准化残差矩阵中的伪距标准化残差矩阵,
Figure BDA0003467618210000444
表示第一标准化残差矩阵中的多普勒标准化残差矩阵。
进一步地,可以对第一标准化残差矩阵进行正态分布检验,得到第一标准化残差矩阵中所包含的每个元素分别对应的检验结果,此时的检验结果如下述公式(41)所示:
Figure BDA0003467618210000445
其中,公式(41)中的bρ,l表示伪距标准化残差矩阵bρ中的第l个元素,l为小于或等于第一筛选观测信息的数量的正整数,ωρ表示伪距标准化残差矩阵bρ中第l个元素所对应的检验结果;
Figure BDA0003467618210000451
表示多普勒标准化残差矩阵
Figure BDA0003467618210000452
中的第l个元素,
Figure BDA0003467618210000453
表示多普勒标准化残差矩阵
Figure BDA0003467618210000454
中第l元素所对应的检验结果。
当ωρ大于或等于给定的阈值(此时的阈值可以称为第一正态分布检验阈值)时,表明伪距标准化残差矩阵bρ中的第l个元素不满足检验条件(此时的检验条件为:小于第一正态分布检验阈值),将伪距标准化残差矩阵bρ中的第l个元素所对应的伪距观测数据为伪距观测数据粗差,并剔除该伪距观测数据粗差;当ωρ小于第一正态分布检验阈值时,表示表明伪距标准化残差矩阵bρ中的第l个元素满足检验条件,保留伪距标准化残差矩阵bρ中第l个元素所对应的伪距观测数据,通过上述公式(41)可以剔除第一筛选观测信息所包含的伪距筛选数据中的伪距观测数据粗差,得到不含伪距观测数据粗差的伪距观测数据,可以将其称为候选伪距观测数据。当
Figure BDA0003467618210000455
大于或等于给定的阈值(此时的阈值可以称为第二正态分布检验阈值)时,表明多普勒标准化残差矩阵
Figure BDA0003467618210000456
中的第l个元素不满足检验条件(此时的检验条件为:小于第二正态分布检验阈值),将多普勒标准化残差矩阵
Figure BDA0003467618210000457
中第l个元素所对应的多普勒观测数据为多普勒观测数据粗差,并剔除该多普勒观测数据粗差;当
Figure BDA0003467618210000458
小于第二正态分布检验阈值时,表示表明多普勒标准化残差矩阵
Figure BDA0003467618210000459
中的第l个元素满足检验条件,保留多普勒标准化残差矩阵
Figure BDA00034676182100004510
中第l个元素所对应的多普勒观测数据,通过上述公式(41)可以剔除第一筛选观测信息所包含的多普勒筛选数据中的多普勒观测数据粗差,得到不含多普勒观测数据粗差的多普勒观测数据,可以将其称为候选多普勒观测数据;其中,上述第一正态分布检验阈值和第二正态分布检验阈值都可以是根据实际需求所确定的数值,本申请对此不再进行赘述。至此,完成了对目标滤波器的模型验证和修复,将前述候选伪距观测数据和候选多普勒观测数据确定为第二筛选观测信息。
步骤S413,由第二筛选观测信息构建测量更新矩阵。
具体的,可以通过上述得到的第二筛选观测信息构建第三观测残差矩阵,第三观测残差矩阵的表现形式可以参见上述公式(32)和上述公式(34),只是上述公式(32)和上述公式(34)是由第一筛选观测信息所创建的,而第三观测残差矩阵是由第二筛选观测信息构建而成;进而可以将第三观测残差矩阵关于目标滤波器当前状态参数(例如,预测状态参数)的雅克比矩阵,确定为目标滤波器的测量更新矩阵。其中,由于第二筛选观测信息包括伪距观测信息和多普勒观测数据,因此第三观测残差矩阵可以包括伪距残差矩阵和多普勒残差矩阵,测量更新矩阵也可以包括伪距测量更新矩阵和多普勒测量更新矩阵。
步骤S414,由自适应估计得到的卫星观测信息随机误差模型构建测量方差矩阵。
具体的,可以通过前述自适应估计得到的卫星观测信息随机误差模型(也可以称为卫星观测误差)构建测量方差矩阵,该卫星观测信息随机误差模型如前述公式(30)所示,测量方差矩阵可以是由公式(30)所示的卫星观测信息随机误差模型所确定的经验值构成的矩阵,即测量方差矩阵为针对目标滤波器的固定数值矩阵,在保证测量方差矩阵与卫星观测信息随机误差模型相关联的前提下,该测量观测矩阵中的具体取值可以基于实际需求来设置,本申请对此不做限定。其中,由于卫星观测信息随机误差模型包括伪距观测随机误差模型和多普勒观测随机误差模型,因此目标滤波器对应的测量方差矩阵可以包括伪距测量方差矩阵和多普勒测量方差矩阵。
步骤S415,由测量更新矩阵和测量方差矩阵修正终端运动状态。
具体的,可以通过测量更新矩阵和测量更新矩阵对终端运动状态进行修正,即更新目标滤波器的状态参数。其中,对于第二筛选观测信息中的伪距观测数据,目标滤波器的状态参数可以按照下述公式(42)进行更新:
Figure BDA0003467618210000461
其中,x(a-1)表示目标滤波器在a-1次更新时的状态参数,如完成目标滤波器模型验证和修复之后的状态参数,当目标滤波器一开始就通过模型验证无需进行修复时,a为1的状态参数即为目标滤波器完成时间更新后的预测状态参数,x(a)表示下一次更新的状态参数,H(a-1)表示目标滤波器在a-1次更新的伪距滤波器增益,
Figure BDA0003467618210000462
表示第二筛选观测信息中的伪距观测数据所对应的伪距残差矩阵,即第三观测残差矩阵中的伪距残差矩阵。p(a-1)表示目标滤波器在a-1次更新时的状态协方差矩阵,如完成目标滤波器模型验证和修复之后的状态参数所对应的状态协方差矩阵,当目标滤波器一开始就通过模型验证无需进行修复时,a为1的状态协方差矩阵即为目标滤波器完成时间更新后的预测状态协方差矩阵,p(a)表示下一个状态参数所对应的状态协方差矩阵,Gρa表示第三观测残差矩阵中的伪距残差矩阵关于滤波器状态参数x(a-1)的雅克比矩阵,Rρ(a-1)表示测量方差矩阵中的伪距测量方差矩阵,I为单位矩阵。
可选地,对于第二筛选观测信息中的多普勒观测数据,目标滤波器的状态参数可以按照下述公式(43)进行更新:
Figure BDA0003467618210000471
其中,
Figure BDA0003467618210000472
表示目标滤波器在a-1次更新的多普勒滤波器增益,
Figure BDA0003467618210000473
表示第二筛选观测信息中的多普勒观测数据所对应的多普勒残差矩阵,即第三观测残差矩阵中的多普勒残差矩阵;
Figure BDA0003467618210000474
表示第三观测残差矩阵中的多普勒残差矩阵关于滤波器状态参数x(a-1)的雅克比矩阵,
Figure BDA0003467618210000475
表示测量方差矩阵中的多普勒测量方差矩阵;其中,上述伪距滤波器增益H(a-1)和多普勒滤波器增益
Figure BDA0003467618210000476
都可以成为滤波器增益。
通过上述公式(42)和公式(43)可以对目标滤波器的状态参数进行更新,若目标滤波器在a次更新时完成了测量更新,则可以将a时刻的状态参数确定为目标状态参数,将a时刻的状态协方差矩阵确定为目标状态协方差矩阵。换言之,若在目标滤波器的测量更新阶段一开始就通过模型验证,无需对其进行修复,则此时的第三观测残差矩阵是基于第二筛选观测信息、预测状态参数以及第二筛选观测信息所对应卫星的卫星状态信息所构建的,进而可以获取目标滤波器在a-1时刻的状态参数;a为1时,a-1时刻的状态参数为目标滤波器完成时间更新后的预测参数状态,a-1时刻的状态协方差矩阵为目标滤波器完成时间更新后的预测状态协方差矩阵。通过a-1时刻的状态协方差矩阵、测量更新矩阵以及测量方差矩阵,确定目标滤波器在a-1时刻的滤波器增益(即上述多普勒滤波器增益
Figure BDA0003467618210000477
和伪距滤波器增益H(a-1));将a-1时刻的滤波器增益和第三观测残差矩阵之间的乘积,与a-1时刻的状态参数进行求和运算,得到目标状态参数,该目标状态参数对应的状态协方差矩阵可以称为目标状态协方差矩阵。
步骤S416,对验后卫星观测残差和滤波器修正量进行检测。
具体的,可以将a-1时刻的滤波器增益与第三观测残差矩阵之间的乘积,确定为目标滤波器在a-1时刻的滤波器修正量,该滤波器修正量可以包括伪距滤波器修正量和多普勒滤波器修正量,该伪距滤波器修正量可以记为dz,多普勒滤波器修正量可以记为
Figure BDA0003467618210000481
其中,伪距滤波器修正量可以表示为
Figure BDA0003467618210000482
Figure BDA0003467618210000483
大于或等于给定的阈值(此处的阈值可以称为第一修正阈值,o表示目标滤波器中的第o个状态参数,o为小于或等于滤波器状态参数数量的正整数),则表示目标滤波器中的第o个状态参数检验不通过,需要重置滤波器,即重新执行步骤S402;若
Figure BDA0003467618210000484
小于第一修正阈值,则表示目标滤波器中的第o个状态参数检验通过,保持目标滤波器当前的状态参数。多普勒滤波器修正量
Figure BDA0003467618210000485
Figure BDA0003467618210000486
大于或等于给定的阈值(此处的阈值可以称为第二修正阈值),则表示目标滤波器中的第o个状态参数检验不通过,需要重置滤波器,即重新执行步骤S402;若
Figure BDA0003467618210000487
小于第二修正阈值,则表示目标滤波器中的第o个状态参数检验通过,保持目标滤波器当前的状态参数。其中,上述第一修正阈值和第二修正阈值都可以是根据实际需求所确定的数值,本申请对此不再进行赘述。当目标滤波器中的每个状态参数在伪距和多普勒时均通过检验,则表示目标滤波器对应的滤波器修正量通过检验。
步骤S417,对验后卫星观测残差进行正态分布检验。
具体的,当目标滤波器对应的滤波器修正量通过检验时,可以获取目标滤波器针对目标状态参数的目标状态协方差矩阵,即P(a),通过目标协方差矩阵、测量方差矩阵以及测量更新矩阵,构建目标滤波器对应的第二残差协方差矩阵;进而可以通过第二残差协方差矩阵对第三观测残差矩阵进行正态分布检验,得到第三观测残差矩阵中所包含的每个元素分别对应的检验结果。
其中,第二残差协方差矩阵包括伪距残差协方差矩阵和多普勒残差协方差矩阵,基于第二残差协方差矩阵中的伪距残差协方差矩阵,对第三观测残差矩阵中的伪距残差矩阵进行正态分布检验,得到第三观测残差矩阵的伪距残差矩阵中的每个元素分别对应的检验结果,此时的检验结果如下述公式(44)所示:
Figure BDA0003467618210000488
其中,
Figure BDA0003467618210000489
表示第三观测残差矩阵的伪距残差矩阵中的第si个元素,si为小于或等于sn的正整数,
Figure BDA0003467618210000491
Figure BDA0003467618210000492
表示第二残差协方差矩阵中的伪距残差协方差矩阵,μsi表示上述第si个元素在进行正态分布检验后所得到的结果。
可选地,基于第二残差协方差矩阵中的多普勒残差协方差矩阵,对第三观测残差矩阵中的多普勒残差矩阵进行正态分布检验,得到第三观测残差矩阵的多普勒残差矩阵中的每个元素分别对应的检验结果,此时的检验结果如下述公式(45)所示:
Figure BDA0003467618210000493
其中,
Figure BDA0003467618210000494
表示第三观测残差矩阵的伪距残差矩阵中的第si个元素,qi为小于或等于qn的正整数,
Figure BDA0003467618210000495
表示第二残差协方差矩阵中的多普勒残差协方差矩阵,αqi表示上述第qi个元素在进行正态分布检验后所得到的结果。
步骤S418,剔除检测未通过的卫星观测信息。
具体的,当第三观测残差矩阵中存在某个元素的检验结果不满足检验条件时,则剔除该元素所对应的卫星观测信息。其中,当上述公式(44)中的μsi小于或等于给定的阈值(此时的阈值也可以称为第三正态分布检测阈值)时,表示第三观测残差矩阵的伪距残差矩阵中的第si个元素不满足检验条件,将第si个元素所对应的伪距观测数据(即第二筛选观测信息中的第si个伪距观测数据)确定为伪距观测数据粗差,并从第二筛选观测数据所包含的伪距观测数据中剔除该伪距观测数据粗差。
当上述公式(45)中的αgi小于或等于给定的阈值(此处的阈值也可以称为第四正态分布检测阈值)时,表示第三观测残差矩阵的多普勒残差矩阵中的第qi个元素不满足检验条件,将第qi个元素所对应的多普勒观测数据(即第二筛选观测信息中的第qi个多普勒观测数据)确定为多普勒观测数据粗差,并从第二筛选观测数据所包含的多普勒观测数据中剔除该多普勒观测数据粗差。基于剔除伪距观测数据粗差后所得到的伪距观测数据,以及剔除多普勒观测数据粗差后所得到的多普勒观测数据,重新构建测量更新矩阵,即重新执行上述步骤S413,直至剩余的所有卫星观测信息均通过正态分布检验结果。其中,本申请中的第一正态分布检验阈值和第三正态分布检验阈值可以为相同的数值,也可以为不同的数值,第二正态分布检验阈值和第四正态分布检验阈值可以为相同的数值,也可以为不同的数值,本申请对此不作限定。
步骤S419,输出当前时刻终端位置和速度信息。
具体的,当第三观测残差矩阵中的每个元素分别对应的检验结果均满足检验条件时,可以将目标状态参数中的终端位置和终端速度确定为终端对应的终端定位结果。换言之,当第三观测残差矩阵的伪距残差矩阵中的每个元素分别对应的检验结果(μsi)均小于第三正态分布检测阈值,且第三观测残差矩阵的多普勒残差矩阵中的每个元素分别对应的检验结果(αgi)均小于第四正态分布检验阈值时,输出目标滤波器的目标状态参数中的终端位置和终端速度,此时的终端位置和终端速度即为终端的终端定位结果。
本申请实施例中,可以通过抗差加权最小二乘算法和卫星观测信息估计得到终端对应的终端状态信息,通过终端状态信息可以建立稳健卡尔曼滤波器,通过稳健卡尔曼滤波器的时间更新和测量更新两个过程,采用正态分布检验从卫星观测信息中剔除观测信息粗差,并通过剔除观测信息粗差后的卫星观测信息,确定终端对应的终端定位结果,可以提高终端位置的准确性,实现亚米级或车道级定位,辅助车道级定位导航;通过抗差加权最小二乘算法和稳健卡尔曼滤波器实现的终端定位方法,可以适用于各种类型(例如,消费级、测量型或其余类型)的卫星定位设备,可以提高终端定位的适用性。
请参见图8,图8是本申请实施例提供的一种目标滤波器的测量更新的流程示意图。可以理解地,本申请实施例可以是在基于抗差加权最小二乘和卫星观测信息估计得到终端对应的终端状态信息、并基于终端状态信息完成目标滤波器的初始化以及时间更新处理后,针对目标滤波器的测量更新过程,目标滤波器在时间更新后的状态参数为预测状态参数,与该预测状态参数相对应的状态协方差矩阵。如图8所示,目标滤波器的测量更新过程可以包括以下步骤:
步骤S501,基于抗差加权最小二乘估计的解算信息剔除卫星观测信息粗差,得到第一筛选观测信息。
步骤S502,由第一筛选观测信息构建卫星观测残差矩阵,即第一观测残差矩阵。
其中,步骤S501和步骤S502的具体实现过程可以参见图6所对应实施例中的步骤S405-步骤S406,这里不再进行赘述。
步骤S503,基于四分位数和绝对中位差对第一观测残差矩阵进行粗差探测,得到第三筛选观测信息,由第三筛选观测信息构建卫星观测残差矩阵,即第二观测残差矩阵。
具体的,可以对上述第一观测残差矩阵(如前述公式(32)所示的伪距残差矩阵
Figure BDA0003467618210000511
和公式(34)所示的多普勒残差矩阵
Figure BDA0003467618210000512
)进行粗差探测,剔除第一筛选观测信息中的卫星观测信息粗差,得到第三筛选观测信息,由第三筛选观测信息所构建的卫星观测残差矩阵,可以称为第二观测残差矩阵。其中,上述粗差探测过程可以包括:获取第一观测残差矩阵的上四分位数和第一观测残差矩阵的下四分位数之间的分位数差值;将第一观测残差矩阵的下四分位数,以及第一粗差探测阈值和分位数差值之间的乘积进行相减运算,得到第一观测残差矩阵对应的最小元素值;将第一观测残差矩阵的上四分位数,以及第一粗差探测阈值和分位数差值之间的乘积进行求和运算,得到第一观测残差矩阵对应的最大元素值;将第一观测残差矩阵中的第j个元素和第一观测残差矩阵的中位数进行相减运算后的绝对值,与第一观测残差矩阵的绝对中位差之间的比值,确定为待验证数值,j为小于或等于第一筛选观测信息的数量的正整数;若待验证数值大于第二粗差探测阈值,且第j个元素处于粗差取值范围,则从第一观测残差矩阵中剔除第j个元素,得到第二观测残差矩阵,构成第二观测残差矩阵的卫星观测信息可以称为第三筛选观测信息,该粗差取值范围是指最小元素值至最大元素值所对应范围之外的取值范围。
由于第一观测残差矩阵包括伪距残差矩阵
Figure BDA0003467618210000513
和多普勒残差矩阵
Figure BDA0003467618210000514
因此在对第一观测残差矩阵进行粗差探测处理时,需要分别对伪距残差矩阵
Figure BDA0003467618210000515
和多普勒残差矩阵
Figure BDA0003467618210000516
进行粗差探测。其中,下面以第一观测残差矩阵中的伪距残差矩阵
Figure BDA0003467618210000517
为例,对粗差探测处理进行描述;本申请实施例中,将伪距残差矩阵
Figure BDA0003467618210000518
的下四位数记为
Figure BDA0003467618210000519
伪距残差矩阵
Figure BDA00034676182100005110
的上四分位数记为
Figure BDA00034676182100005111
伪距残差矩阵
Figure BDA00034676182100005112
的最小元素值记为
Figure BDA00034676182100005113
伪距残差矩阵
Figure BDA00034676182100005114
的最大元素值记为
Figure BDA00034676182100005115
最小元素值
Figure BDA00034676182100005116
和最大元素值
Figure BDA0003467618210000521
可以如下述公式(46)所示:
Figure BDA0003467618210000522
其中,
Figure BDA0003467618210000523
表示针对伪距残差矩阵
Figure BDA0003467618210000524
的第一粗差探测阈值,
Figure BDA0003467618210000525
表示伪距残差矩阵
Figure BDA0003467618210000526
的上四位数和伪距残差矩阵
Figure BDA0003467618210000527
均下四位数之间的分位数差值。伪距残差矩阵
Figure BDA0003467618210000528
中的每个元素都可以按照下述公式(47)来进行粗差探测,公式(47)的表示形式如下:
Figure BDA0003467618210000529
其中,
Figure BDA00034676182100005210
表示伪距残差矩阵
Figure BDA00034676182100005211
中的第j(此时的j为小于或等于第一筛选观测信息中所包含的伪距筛选数据的数量sn的正整数)个元素对应的粗差探测标记值,
Figure BDA00034676182100005212
表示伪距残差矩阵
Figure BDA00034676182100005213
中的第j个元素,
Figure BDA00034676182100005214
表示伪距残差矩阵
Figure BDA00034676182100005215
的中位数,
Figure BDA00034676182100005216
表示伪距残差矩阵
Figure BDA00034676182100005217
的绝对中位差,
Figure BDA00034676182100005218
表示针对伪距残差矩阵
Figure BDA00034676182100005219
的第二粗差探测阈值;其中,
Figure BDA00034676182100005220
Figure BDA00034676182100005221
可以根据实际需求进行设置,本申请对此不做限定。
Figure BDA00034676182100005222
表示伪距残差矩阵
Figure BDA00034676182100005223
的待验证数值,
Figure BDA00034676182100005224
可以称为伪距残差矩阵
Figure BDA00034676182100005225
的有效取值范围,
Figure BDA00034676182100005226
Figure BDA00034676182100005227
称为伪距残差矩阵
Figure BDA00034676182100005228
的粗差取值范围。
当待验证数值
Figure BDA00034676182100005229
小于或等于第二粗差探测阈值
Figure BDA00034676182100005230
且伪距残差矩阵
Figure BDA00034676182100005231
的第j个元素
Figure BDA00034676182100005232
建于有效取值范围
Figure BDA00034676182100005233
时,
Figure BDA00034676182100005234
对应的粗差探测标记值为1,表示
Figure BDA00034676182100005235
对应的伪距观测数据为有效数据,并保留该伪距观测数据。当待验证数值
Figure BDA00034676182100005236
大于第二粗差探测阈值
Figure BDA00034676182100005237
且伪距残差矩阵
Figure BDA00034676182100005238
的第j个元素
Figure BDA00034676182100005239
处于粗差取值范围
Figure BDA00034676182100005240
Figure BDA00034676182100005241
时,
Figure BDA00034676182100005242
对应的粗差探测标记值为0,表示
Figure BDA00034676182100005243
对应的伪距观测数据为伪距观测数据粗差,并剔除该伪距观测数据粗差。通过上述公式(47)可以从第一筛选观测信息所包含的伪距筛选观测数据中剔除伪距观测数据粗差,由剔除了伪距观测数据粗差的伪距观测数据所构建的伪距残差矩阵可以记为
Figure BDA00034676182100005244
该伪距残差矩阵
Figure BDA00034676182100005245
是指从伪距残差矩阵
Figure BDA00034676182100005246
中剔除了粗差探测标记值为0的元素后所得到的矩阵。
同理,对于第一观测残差矩阵中的多普勒残差矩阵
Figure BDA0003467618210000531
同样可以执行与上述伪距残差矩阵
Figure BDA0003467618210000532
相同的粗差探测处理,如可以通过下述公式(48)和公式(49)对多普勒残差矩阵
Figure BDA0003467618210000533
进行粗差探测,剔除多普勒残差矩阵
Figure BDA0003467618210000534
中的多普勒观测数据粗差,由剔除了多普勒观测数据粗差的多普勒观测数据所构建的多普勒残差矩阵可以记为
Figure BDA0003467618210000535
该多普勒残差矩阵
Figure BDA0003467618210000536
是指从多普勒残差矩阵
Figure BDA0003467618210000537
中剔除了粗差探测标记值为0的元素后所得到的矩阵。其中,公式(48)和公式(49)可以表示如下:
Figure BDA0003467618210000538
Figure BDA0003467618210000539
其中,
Figure BDA00034676182100005310
表示多普勒残差矩阵
Figure BDA00034676182100005311
的下四位数,
Figure BDA00034676182100005312
表示多普勒残差矩阵
Figure BDA00034676182100005313
的上四位数,
Figure BDA00034676182100005314
表示针对多普勒残差矩阵
Figure BDA00034676182100005315
均第一粗差探测阈值,
Figure BDA00034676182100005316
表示针对多普勒残差矩阵
Figure BDA00034676182100005317
的第二粗差探测阈值,
Figure BDA00034676182100005318
Figure BDA00034676182100005319
可以根据实际需求进行设置,本申请对此不做限定;
Figure BDA00034676182100005320
表示多普勒残差矩阵
Figure BDA00034676182100005321
的最小元素值,
Figure BDA00034676182100005322
表示多普勒残差矩阵
Figure BDA00034676182100005323
的最大元素值。
Figure BDA00034676182100005324
表示多普勒残差矩阵
Figure BDA00034676182100005325
的第j个元素(此时的j为小于或等于第一筛选观测信息中所包含的多普勒筛选数据的数量qn的正整数),
Figure BDA00034676182100005326
表示多普勒残差矩阵
Figure BDA00034676182100005327
中的第j个元素对应的粗差探测标记值,
Figure BDA00034676182100005328
表示多普勒残差矩阵
Figure BDA00034676182100005329
的中位数,
Figure BDA00034676182100005330
表示多普勒残差矩阵
Figure BDA00034676182100005331
的绝对中位差,
Figure BDA00034676182100005332
表示多普勒残差矩阵
Figure BDA00034676182100005333
的待验证数值,
Figure BDA00034676182100005334
可以称为多普勒残差矩阵
Figure BDA00034676182100005335
的有效取值范围,
Figure BDA00034676182100005336
Figure BDA00034676182100005337
称为多普勒残差矩阵
Figure BDA00034676182100005338
的粗差取值范围。当
Figure BDA00034676182100005339
等于0时,表示
Figure BDA00034676182100005340
对应的多普勒观测数据为多普勒观测数据粗差,并剔除该多普勒观测数据粗差;当
Figure BDA00034676182100005341
等于1时,表示
Figure BDA00034676182100005342
对应的多普勒观测数据为有效数据,并保留该多普勒观测数据粗差,以此剔除了多普勒观测数据粗差的多普勒观测数据。本申请实施例中,可以将上述剔除了伪距观测数据粗差的伪距观测数据,以及剔除了多普勒观测数据粗差的多普勒观测数据确定为第三筛选观测数据,上述伪距残差矩阵
Figure BDA0003467618210000541
和多普勒残差矩阵
Figure BDA0003467618210000542
称为第二观测残差矩阵。
步骤S504,基于伪距残差矩阵进行钟跳探测和修复。
步骤S505,基于伪距残差矩阵计算钟差跳变值并修复钟差。
步骤S506,基于多普勒残差矩阵进行钟漂跳变探测和修复。
步骤S507,基于多普勒残差矩阵计算钟漂跳变值并修复钟漂。
步骤S508,计算滤波器模型验证参数值,并对稳健卡尔曼滤波器进行验证和修复。
步骤S509,基于正态分布检验剔除卫星观测值粗差,得到第二筛选观测信息。
步骤S510,由第二筛选观测信息构建测量更新矩阵。
步骤S511,由自适应估计得到的卫星观测值随机误差模型构建测量方差矩阵。
步骤S512,由测量更新矩阵和测量方差矩阵修正终端运动状态。
步骤S513,对验后卫星观测残差和滤波器修正量进行检测。
步骤S514,对验后卫星观测残差进行正态分布检验。
步骤S515,剔除检测未通过的卫星观测值。
步骤S516,滤波器测量更新完成,输出目标滤波器当前时刻的终端位置和速度信息。
其中,上述步骤S507至步骤S516的实现过程可以参见图6所对应实施例中步骤S407至步骤S419中的描述,此处不再进行赘述。
需要说明的是,本申请实施例中的步骤S507至步骤S516的实现方式与前述步骤S407至步骤S419的实现方式是相同的,只是步骤S407至步骤S419在实现过程中所使用的卫星观测信息为第一筛选观测信息,而步骤S507至步骤S516在实现过程中所使用的卫星观测信息为第三筛选观测信息。例如,本申请实施例中的钟差跳变探测及修复过程可以包括:当第二观测残差矩阵中的伪距残差矩阵
Figure BDA0003467618210000543
的绝对中位差
Figure BDA0003467618210000544
与第二观测残差矩阵中的伪距残差矩阵
Figure BDA0003467618210000545
的中位数
Figure BDA0003467618210000551
之间的比值小于第一钟差探测阈值(θm),且第二观测残差矩阵中的伪距残差矩阵
Figure BDA0003467618210000552
的标准差
Figure BDA0003467618210000553
与第二观测残差矩阵中的伪距残差矩阵
Figure BDA0003467618210000554
的平均值
Figure BDA0003467618210000555
之间的比值小于第一钟差探测阈值时,将第二观测残差矩阵中的伪距残差矩阵
Figure BDA0003467618210000556
的中位数,与预测状态协方差矩阵中的对角元素所对应的开根号运算结果之间的比值,确定为钟差探测数值;若钟差探测数值大于或等于第二钟差探测阈值(θclk),则确定目标滤波器中存在钟差跳变,重新设置目标滤波器中的预测状态参数和预测状态协方差矩阵。本申请实施例的第一观测方差矩阵是通过第三筛选观测信息对应的信噪比,以及第三筛选观测信息所对应卫星的高度角所构建而成的。
请参见图9,图9是本申请实施例提供的一种终端定位方法的整体结构示意图。本申请实施例以目标滤波器是稳健卡尔曼滤波器为例进行描述,如图9所示,可以获取包含伪距观测数据和多普勒观测数据的卫星观测信息,与此同时还可以向CORS系统的高精度定位服务平台发送星历获取请求,从高精度定位服务平台中获取星历数据,通过星历数据和卫星观测信息,可以获取卫星对应的卫星状态信息(包括卫星位置、卫星速度、卫星钟差以及卫星钟漂),进而可以利用抗差加权最小二乘和卫星观测信息估计终端状态信息(终端位置、终端速度、卫星钟差以及卫星钟漂),并由估计得到的终端状态信息建立稳健卡尔曼滤波器,即完成稳健卡尔曼滤波器的初始化(可以参见图6所对应实施例中的步骤S402)。
基于抗差加权最小二乘估计得到终端位置信息时的解算信息,可以估计稳健卡尔曼滤波器的滤波器系统噪声(可以参见图6所对应实施例中的步骤S403)、估计卫星观测随机误差模型(可以参见图6所对应实施例中的步骤S404)以及卫星观测信息粗差探测(可以参见图6所对应实施例中的步骤S405)等。
进一步地,针对初始化后的稳健卡尔曼滤波器,可以执行粗差探测(可以参见图8所对应实施例中的步骤S503)、钟差与钟漂跳变探测与修复(可以参见上述图6所对应实施例中的步骤S407至步骤S410)、滤波器模型验证与修复(可以参见上述图6所对应实施例中的步骤S411至步骤S412)以及滤波器系统故障检测与修复(可以参见上述图6所对应实施例中的步骤S413至步骤S418)等操作,最终输出终端对应的终端定位结果(包括最终确定的终端位置和终端速度)。
其中,请参见图10,图10是本申请实施例提供的一种目标滤波器的结构示意图。本申请实施例以目标滤波器是稳健卡尔曼滤波器为例进行描述,如图10所示,稳健卡尔曼滤波器包括滤波器初始化、自适应估计伪距和多普勒观测随机误差模型、自适应估计动态滤波器系统噪声、滤波器时间更新以及滤波器测量更新等过程。其中,滤波器初始化可以通过抗差加权最小二乘估计得到终端位置信息来实现;伪距和多普勒观测随机误差模型可以通过抗差加权最小二乘在估计得到终端状态信息时的解算信息估计得到;动态滤波器系统噪声可以通过抗差加权最小二乘在迭代更新中所产生的历史状态信息估计得到;滤波器时间更新可以通过动态滤波器系统噪声来实现;滤波器测量更新可以通过滤波器时间更新和伪距和多普勒观测随机误差模型和滤波器时间更新的结果来实现。滤波器测量更新可以包括钟差与钟漂跳变探测与修复、滤波器模型验证和修复、滤波器更新结算验证和修复(也可以称为滤波器系统故障检验与修复)等操作,该滤波器更新结算验证和修复可以包括验后卫星观测残差检验和模型修正量检验,上述操作可以参见上述图8所对应的实施例,此处不再进行赘述。
可以理解的是,在本申请的具体实施方式中,涉及到用户终端的定位结果,当本申请以上是实力应用到具体产品或技术中时,需要获取用户许可或者同意,且终端定位结果的应用需要遵守相关国家和地区的相关法律法规和标准。
本申请实施例中,可以通过抗差加权最小二乘算法和卫星观测信息估计得到终端对应的终端状态信息,通过终端状态信息可以建立稳健卡尔曼滤波器,通过稳健卡尔曼滤波器的时间更新和测量更新两个过程,采用正态分布检验从卫星观测信息中剔除观测信息粗差,并通过剔除观测信息粗差后的卫星观测信息,确定终端对应的终端定位结果,可以提高终端位置的准确性,实现亚米级或车道级定位,辅助车道级定位导航;通过抗差加权最小二乘算法和稳健卡尔曼滤波器实现的终端定位方法,可以适用于各种类型(例如,消费级、测量型或其余类型)的卫星定位设备,可以提高终端定位的适用性。
请参见图11,图11是本申请实施例提供的一种终端定位装置的结构示意图。如图11所示,该终端定位装置1可以包括:终端状态获取模块11,滤波器初始化模块12,时间更新模块13,信息筛选模块14,测量更新模块15;
终端状态获取模块11,用于通过卫星观测信息确定终端对应的终端状态信息,根据终端状态信息从卫星观测信息中获取第一筛选观测信息;
滤波器初始化模块12,用于将终端状态信息设置为目标滤波器的初始状态参数,获取目标滤波器针对初始状态参数的初始状态协方差矩阵;
时间更新模块13,用于对目标滤波器的初始状态参数进行时间更新,得到预测状态参数,对目标滤波器的初始状态协方差矩阵进行时间更新,得到预测状态协方差矩阵;
验证参数值获取模块14,用于从第一筛选观测信息中,筛选出用于构建目标滤波器的测量更新矩阵的第二筛选观测信息,根据由终端状态信息所确定的卫星观测误差因子,构建目标滤波器对应的测量方差矩阵;
测量更新模块15,用于通过测量更新矩阵、第二筛选观测信息、预测状态协方差矩阵以及测量方差矩阵,对目标滤波器的预测状态参数进行测量更新,得到目标状态参数,根据目标状态参数确定终端对应的终端定位结果。
其中,终端状态获取模块11,滤波器初始化模块12,时间更新模块13,信息筛选模块14,测量更新模块15的具体功能实现过程可以参见上述图3所对应实施例中的步骤S101-步骤S105,此处不再进行赘述。
在一个或多个实施例中,终端状态获取模块11包括:观测方程构建单元111,第一观测方差构建单元112,状态信息更新单元113;
观测方程构建单元111,用于获取终端接收到的卫星观测信息,为终端设置初始状态信息,通过卫星观测信息、初始状态信息以及卫星所对应的卫星状态信息,构建终端与卫星之间的卫星观测方程;
第一观测方差构建单元112,用于通过卫星观测信息对应的信噪比和卫星对应的高度角,构建第二观测方差矩阵;
状态信息更新单元113,用于根据第二观测方差矩阵和卫星观测方程,确定终端对应的状态信息修正量,通过状态信息修正量对初始状态信息进行更新,得到终端对应的终端状态信息。
可选地,卫星观测信息包括伪距观测数据,初始状态信息包括初始终端位置和初始终端钟差,卫星状态信息包括卫星位置和卫星钟差;
观测方程构建单元111包括:第一获取子单元1111,第一方程构建单元1112;
第一获取子单元1111,用于获取初始终端位置和卫星位置之间的间隔距离,以及获取初始终端钟差与卫星钟差之间的钟差差值;
第一方程构建单元1112,用于根据间隔距离和钟差差值,确定终端与卫星之间的第一估计值,通过第一估计值和伪距观测数据,构建终端与卫星之间的卫星观测方程。
可选地,卫星观测信息包括多普勒观测数据,初始状态信息包括初始终端速度和初始终端钟漂,卫星状态信息包括卫星速度和卫星钟漂;
观测方程构建单元111包括:第二获取子单元1113,估计子单元1114,第二方程构建子单元1115;
第二获取子单元1113,用于获取初始终端速度与卫星速度之间的速度差值,以及获取终端与卫星之间的单位观测值;
估计子单元1114,用于获取初始终端钟漂与卫星钟漂之间的钟漂差值,根据速度差值与单位观测值之间的乘积,以及钟漂差值,确定终端与卫星之间的第二估计值;
第二方程构建子单元1115,用于通过卫星播发信号的波长和多普勒观测数据之间的乘积,以及第二估计值,构建终端与卫星之间的卫星观测方程。
可选地,卫星的数量为N个,N为正整数;第一观测方差构建单元112具体用于:
根据观测误差参数、N个卫星所对应的卫星观测信息的信噪比,以及N个卫星分别对应的高度角,确定N个卫星分别对应的卫星观测误差;
将N个卫星分别对应的卫星观测误差作为矩阵对角元素,构建第二观测方差矩阵。
可选地,卫星观测信息包括伪距观测数据,初始状态信息包括初始终端位置和初始终端钟差,卫星状态信息包括卫星位置和卫星钟差,终端状态信息是指初始状态信息在经过k次迭代后所得到的结果,k为正整数;
状态信息更新单元113具体用于:
获取第k-1次迭代的估计参数;k为1时,第k-1次迭代的估计参数包括初始终端位置和初始终端钟差,每次迭代的卫星观测方程由该次迭代的估计参数所构建;
将第k-1次迭代的卫星观测方程,针对第k-1次迭代的估计参数的偏导数,确定为第k-1次迭代的雅克比矩阵,根据第k-1次迭代的卫星观测方程构建第k-1次迭代的伪距残差矩阵;
根据第k-1次迭代的雅克比矩阵、第k-1次迭代的伪距残差矩阵以及第二观测方差矩阵,获取第k-1次迭代的状态信息修正量;
当第k-1次迭代的状态信息修正量达到收敛时,将第k-1次迭代的估计参数和第k-1次迭代的状态信息修正量之和,确定为第k次迭代的估计参数;
根据第k次迭代的卫星观测方程构建第k次迭代的伪距残差矩阵,将第k次迭代的伪距残差矩阵对应的转置矩阵、伪距观测方差矩阵对应的逆矩阵,以及第k次迭代的伪距残差矩阵之间的乘积,确定为检验统计量;
若检验统计量小于检验阈值,则将第k次迭代的估计参数确定为终端对应的终端状态信息。
其中,观测方程构建单元111,第一观测方差构建单元112,状态信息更新单元113,以及观测方程构建单元111所包含的第一获取子单元1111,第一方程构建单元1112,第二获取子单元1113,估计子单元1114,第二方程构建子单元1115的具体功能实现过程可以参见上述图4和图5所对应的实施例,此处不再进行赘述。
在一个或多个实施例中,该终端定位装置1还包括:残差协方差构建模块17,正态分布检验模块18,伪距数据剔除模块19,观测方程重新构建模块20;
残差协方差构建模块17,用于若检验统计量大于或等于检验阈值,则根据第k-1次迭代的雅克比矩阵、第二观测方差矩阵,构建第一残差协方差矩阵;
正态分布检验模块18,用于通过第一残差协方差矩阵对第k次迭代的伪距残差矩阵进行正态分布检验,得到第k次迭代的伪距残差矩阵中的每个元素分别对应的检验结果;
伪距数据剔除模块19,用于若第k次迭代的伪距残差矩阵中的第i个元素所对应的检验结果不满足检验条件,则确定第i个元素未通过正态分布检验,剔除第i个元素所关联的伪距观测数据;i为小于或等于伪距观测数据的数量的正整数;
观测方程重新构建模块20,用于将剔除第i个元素所关联的伪距观测数据后所剩余的伪距观测数据作为卫星观测信息,将第k次迭代的估计参数作为初始状态信息,重新执行通过初始状态信息、卫星状态信息以及卫星观测信息,构建终端与卫星之间的卫星观测方程的步骤。
其中,残差协方差构建模块17,正态分布检验模块18,伪距数据剔除模块19,观测方程重新构建模块20的具体功能实现过程可以参见上述图4所对应实施例中的步骤S208-步骤S210,此处不再进行赘述。
在一个或多个实施例中,终端状态信息包括终端位置、终端速度、终端钟差以及终端钟漂,第一筛选观测信息包括伪距筛选数据和多普勒筛选数据;
滤波器初始化模块12包括:初始状态设置单元121,第二观测方差构建单元122,位置协方差确定单元123,速度协方差确定单元124,初始状态协方差确定单元125;
初始状态设置单元121,用于将终端状态信息中的终端位置、终端速度、终端钟差以及终端钟漂,设置为目标滤波器的初始状态参数;
第二观测方差构建单元122,用于通过伪距筛选数据对应的信噪比,以及伪距筛选数据所对应卫星的高度角,构建伪距观测方差矩阵,通过多普勒筛选数据对应的信噪比,以及多普勒筛选数据所对应卫星的高度角,构建多普勒观测方差矩阵;
位置协方差确定单元123,用于通过伪距观测方差矩阵、由终端位置和终端钟差所确定的卫星观测误差因子,以及由伪距筛选数据、终端位置、终端钟差所确定的雅克比矩阵,构建位置协方差矩阵;
速度协方差确定单元124,用于通过多普勒观测方差矩阵,由终端速度和终端钟漂所确定的卫星观测误差因子,以及由多普勒筛选数据、终端速度、终端钟漂所确定的雅克比矩阵,构建速度协方差矩阵;
初始状态协方差确定单元125,用于将位置协方差矩阵和速度协方差矩阵所构成的对角线矩阵,确定为目标滤波器对应的初始状态协方差矩阵。
其中,初始状态设置单元121,第二观测方差构建单元122,位置协方差确定单元123,速度协方差确定单元124,初始状态协方差确定单元125的具体功能实现过程可以参见上述图6所对应实施例中的步骤S402,此处不再进行赘述。
在一个或多个实施例中,时间更新模块13包括:状态参数更新单元131,状态协方差更新单元132;
状态参数更新单元131,用于通过相邻历元的时间差构建目标滤波器的状态转移矩阵,根据状态转移矩阵对目标滤波器的初始状态参数进行时间更新,得到预测状态参数;
状态协方差更新单元132,用于基于终端对应的历史状态信息,获取目标滤波器对应的滤波器系统噪声,根据状态转移矩阵和滤波器系统噪声,对目标滤波器的初始状态协方差矩阵进行时间更新,得到预测状态协方差矩阵。
可选地,预测状态协方差矩阵为目标滤波器中的初始状态协方差矩阵在t时刻的状态协方差矩阵,t为正整数;
状态协方差更新单元132具体用于:
通过滤波器系统噪声以及相邻历元的时间差所对应的指数信息,构建噪声协方差矩阵;
获取目标滤波器在t-1时刻的状态协方差矩阵;t为1时,目标滤波器在t-1时刻的状态协方差矩阵为初始状态协方差矩阵;
将状态转移矩阵、t-1时刻的状态协方差矩阵以及状态转移矩阵对应的转置矩阵之间的乘积,与噪声协方差矩阵进行求和运算,得到预测协方差矩阵。
其中,状态参数更新单元131,状态协方差更新单元132的具体功能实现过程可以参见上述图6所对应实施例中的步骤S403,此处不再进行赘述。
在一个或多个实施例中,状态协方差更新单元132包括:历史信息获取子单元1321,速度系统噪声确定子单元1322,钟漂系统噪声确定子单元1323,钟差系统噪声确定子单元1324;
历史信息获取子单元1321,用于若初始状态信息包括终端位置、终端速度、终端钟差以及终端钟漂,则获取终端对应的历史状态信息中的历史终端速度序列、历史终端钟漂序列以及历史终端钟差序列;历史终端速度序列、历史终端钟漂序列以及历史终端钟差序列均是通过尺寸为p的时间滑动窗口所确定的,p为正整数;
速度系统噪声确定子单元1322,用于获取历史终端速度序列对应的第一方差值,将第一方差值和相邻历元的时间差之间的乘积,确定为目标滤波器对应的速度系统噪声;
钟漂系统噪声确定子单元1323,用于获取历史终端钟漂序列对应的第二方差值,将第二方差值和相邻历元的时间差之间的乘积,确定为目标滤波器对应的钟漂系统噪声;
钟差系统噪声确定子单元1324,用于获取历史终端钟差序列对应的第三方差值,将第三方差值和相邻历元的时间差之间的乘积,确定为目标滤波器对应的钟差系统噪声,将速度系统噪声、钟漂系统噪声以及钟差系统噪声确定为目标滤波器对应的滤波器系统噪声。
其中,历史信息获取子单元1321,速度系统噪声确定子单元1322,钟漂系统噪声确定子单元1323,钟差系统噪声确定子单元1324的具体功能实现过程可以参见上述图6所对应实施例中的步骤S403,此处不再进行赘述。
在一个或多个实施例中,信息筛选模块14包括:验证参数值获取单元141,验证单元142;
验证参数值获取单元141,用于通过第一筛选观测信息、预测状态协方差矩阵,以及与第一筛选观测信息相关联的第一观测方差矩阵,确定目标滤波器对应的模型验证参数值;
验证单元142,用于当模型验证参数值小于模型验证阈值时,通过正态分布检验从第一筛选观测信息中,筛选出用于构建目标滤波器的测量更新矩阵的第二筛选观测信息。
其中,验证参数值获取单元141,验证单元142的具体功能实现过程可以参见上述图3所对应实施例中的步骤S104,此处不再进行赘述。
在一个或多个实施例中,验证参数值获取单元141包括:第一观测残差确定子单元1411,粗差探测处理子单元1412,第三观测方差确定子单元1413,验证参数值确定子单元1414;
第一观测残差确定子单元1411,用于通过第一筛选观测信息、第一筛选观测信息所对应卫星的卫星状态信息,以及预测状态信息,构建第一观测残差矩阵;
粗差探测处理子单元1412,用于根据第一观测残差矩阵的四分位数和绝对中位差,对第一观测残差矩阵进行粗差探测处理,得到第二观测残差矩阵;
第三观测方差确定子单元1413,用于将第二观测残差矩阵中所包含的卫星观测信息,确定为第三筛选观测信息,通过第三筛选观测信息对应的信噪比,以及第三筛选观测信息所对应卫星的高度角,构建第一观测方差矩阵;
验证参数值确定子单元1414,用于通过第二观测残差矩阵、预测状态协方差矩阵、第二观测残差矩阵针对预测状态参数的雅克比矩阵,以及第一观测方差矩阵,确定目标滤波器对应的模型验证参数值。
其中,第一观测残差确定子单元1411,粗差探测处理子单元1412,第三观测方差确定子单元1413,验证参数值确定子单元1414的具体功能实现过程可以参见上述图8所对应实施例中的步骤S502-步骤S508,此处不再进行赘述。
在一个或多个实施例中,粗差探测处理子单元1412包括:分位数差值获取子单元14121,最小元素值获取子单元14122,最大元素值获取子单元14123,待验证数值确定子单元14124,粗差剔除子单元14125;
分位数差值获取子单元14121,用于获取第一观测残差矩阵的上四分位数与第一观测残差矩阵的下四分位数之间的分位数差值;
最小元素值获取子单元14122,用于将第一观测残差矩阵的下四分位数,以及第一粗差探测阈值和分位数差值之间的乘积进行相减运算,得到第一观测残差矩阵对应的最小元素值;
最大元素值获取子单元14123,用于将第一观测残差矩阵的上四分位数,以及第一粗差探测阈值和分位数差值之间的乘积进行求和运算,得到第一观测残差矩阵对应的最大元素值;
待验证数值确定子单元14124,用于将第一观测残差矩阵中的第j个元素和第一观测残差矩阵的中位数进行相减运算后的绝对值,与第一观测残差矩阵的绝对中位差之间的比值,确定为待验证数值;j为小于或等于第一筛选观测信息的数量的正整数;
粗差剔除子单元14125,用于若待验证数值大于第二粗差探测阈值,且第j个元素处于粗差取值范围,则从第一观测残差矩阵中剔除第j个元素,得到第二观测残差矩阵;粗差取值范围是指最小元素值至最大元素值所对应范围之外的取值范围。
其中,分位数差值获取子单元14121,最小元素值获取子单元14122,最大元素值获取子单元14123,待验证数值确定子单元14124,粗差剔除子单元14125的具体功能实现过程可以参见上述图8所对应实施例中的步骤S503,此处不再进行赘述。
在一个或多个实施例中,第二观测残差矩阵是通过卫星观测信息中的伪距筛选数据所构建的;
该终端定位装置1还包括:钟差探测模块20,钟差跳变修复模块21;
钟差探测模块20,用于当第二观测残差矩阵的绝对中位差与第二观测残差矩阵的中位数之间的比值小于第一钟差探测阈值,且第二观测残差矩阵的标准差与第二观测残差矩阵的平均值之间的比值小于第一钟差探测阈值时,将第二观测残差矩阵的中位数,与预测状态协方差矩阵中的对角元素所对应的开根号运算结果之间的比值,确定为钟差探测数值;
钟差跳变修复模块21,用于若钟差探测数值大于或等于第二钟差探测阈值,则确定目标滤波器中存在钟差跳变,重新设置目标滤波器中的预测状态参数和预测状态协方差矩阵。
其中,钟差探测模块20,钟差跳变修复模块21的具体功能实现过程可以参见上述图6所对应实施例中的步骤S407至步骤S408,此处不再进行赘述。
在一个或多个实施例中,验证单元142包括:标准化残差获取子单元1421,第一残差检验子单元1422,观测信息筛选子单元1423;
标准化残差获取子单元1421,用于当模型验证参数值小于模型验证阈值时,对模型验证参数进行标准化处理,得到标准化残差矩阵;
第一残差检验子单元1422,用于通过对标准化残差矩阵进行正态分布检验,得到标准化残差矩阵中所包含的每个元素分别对应的检验结果;
观测信息筛选子单元1423,用于若标准化残差矩阵中的第l个元素所对应的检验结果不满足检验条件,则确定第l个元素未通过正态分布检验,从第一筛选观测信息中,剔除第l个元素所对应的卫星观测信息,得到第二筛选观测信息;l为小于或等于第一筛选观测信息的数量的正整数。
其中,标准化残差获取子单元1421,第一残差检验子单元1422,观测信息筛选子单元1423的具体功能实现过程可以参见上述图6所对应实施例中的步骤S412,此处不再进行赘述。
可选地,该终端定位装置1还包括:滤波器重置模块22;
滤波器重置模块22,用于当模型验证参数值大于或等于模型验证阈值时,则重新设置目标滤波器的初始状态参数和初始状态协方差矩阵。
其中,滤波器重置模块22的具体功能实现过程可以参见上述图8所对应实施例中的描述,此处不再进行赘述。
在一个或多个实施例中,目标状态参数为目标滤波器中的预测状态参数在a时刻的状态参数,a为正整数;
测量更新模块15包括:测量更新矩阵确定单元151,滤波器状态获取单元152,滤波器增益确定单元153,目标状态参数获取单元154,滤波器修正量确定单元155,残差协方差确定单元156,第二残差检验单元157,定位结果确定单元158;
测量更新矩阵确定单元151,用于通过第二筛选观测信息、预测状态参数以及卫星状态信息构建第三观测残差矩阵,将第三观测残差矩阵针对预测状态参数的雅克比矩阵,确定为目标滤波器对应的测量更新矩阵;
滤波器状态获取单元152,用于获取目标滤波器在a-1时刻的状态参数,以及目标滤波器在a-1时刻的状态协方差矩阵;i为1时,a-1时刻的状态参数为预测状态参数,a-1时刻的状态协方差矩阵为预测状态协方差矩阵;a-1时刻的状态协方差矩阵是目标滤波器针对a-1时刻的状态参数的协方差矩阵;
滤波器增益确定单元153,用于通过a-1时刻的状态协方差矩阵、测量更新矩阵以及测量方差矩阵,确定目标滤波器在a-1时刻的滤波器增益;
目标状态参数获取单元154,用于将a-1时刻的滤波器增益和第三观测残差矩阵之间的乘积,与a-1时刻的状态参数进行求和运算,得到目标状态参数。
滤波器修正量确定单元155,用于将a-1时刻的滤波器增益和第三观测残差矩阵之间的乘积,确定为目标滤波器在a-1时刻的滤波器修正量;
残差协方差确定单元156,用于当a-1时刻的滤波器修正量通过检验时,获取目标滤波器针对目标状态参数的目标协方差矩阵,通过目标协方差矩阵、测量方差矩阵以及测量更新矩阵,构建目标滤波器对应的第二残差协方差矩阵;
第二残差检验单元157,用于通过第二残差协方差矩阵对第三观测残差矩阵进行正态分布检验,得到第三观测残差矩阵中所包含的每个元素分别对应的检验结果;
定位结果确定单元158,用于若第三观测残差矩阵中的每个元素分别对应的检验结果均满足检验条件,则将目标状态参数确定为终端对应的终端定位结果。
其中,测量更新矩阵确定单元151,滤波器状态获取单元152,滤波器增益确定单元153,目标状态参数获取单元154,滤波器修正量确定单元155,残差协方差确定单元156,第二残差检验单元157,定位结果确定单元158的具体功能实现过程可以参见上述图6所对应实施例中的步骤S413-步骤S419,此处不再进行赘述。
本申请实施例中,可以通过抗差加权最小二乘算法和卫星观测信息估计得到终端对应的终端状态信息,通过终端状态信息可以建立稳健卡尔曼滤波器,通过稳健卡尔曼滤波器的时间更新和测量更新两个过程,采用正态分布检验从卫星观测信息中剔除观测信息粗差,并通过剔除观测信息粗差后的卫星观测信息,确定终端对应的终端定位结果,可以提高终端位置的准确性,实现亚米级或车道级定位,辅助车道级定位导航;通过抗差加权最小二乘算法和稳健卡尔曼滤波器实现的终端定位方法,可以适用于各种类型(例如,消费级、测量型或其余类型)的卫星定位设备,可以提高终端定位的适用性。
请参见图12,图12是本申请实施例提供的一种计算机设备的结构示意图。如图12所示,该计算机设备1000可以为集成卫星定位设备的用户终端,还可以为集成卫星定位设备的服务器,这里将不对其进行限制。为便于理解,本申请以计算机设备为集成了卫星定位设备的用户终端为例,该计算机设备1000可以包括:处理器1001,网络接口1004和存储器1005,此外,上述计算机设备1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。可选地,网络接口1004可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。可选地,存储器1005还可以是至少一个位于远离前述处理器1001的存储装置。如图12所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在如图12所示的计算机设备1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
通过卫星观测信息确定终端对应的终端状态信息,根据终端状态信息从卫星观测信息中获取第一筛选观测信息;
将终端状态信息设置为目标滤波器的初始状态参数,获取目标滤波器针对初始状态参数的初始状态协方差矩阵;
对目标滤波器的初始状态参数进行时间更新,得到预测状态参数,对目标滤波器的初始状态协方差矩阵进行时间更新,得到预测状态协方差矩阵;
从第一筛选观测信息中,筛选出用于构建目标滤波器的测量更新矩阵的第二筛选观测信息,根据由终端状态信息所确定的卫星观测误差因子,构建目标滤波器对应的测量方差矩阵;
通过测量更新矩阵、第二筛选观测信息、预测状态协方差矩阵以及测量方差矩阵,对目标滤波器的预测状态参数进行测量更新,得到目标状态参数,根据目标状态参数确定终端对应的终端定位结果。
应当理解,本申请实施例中所描述的计算机设备1000可执行前文图3-图6以及图8任一个所对应实施例中对终端定位方法的描述,也可执行前文图11所对应实施例中对终端定位装置1的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且计算机可读存储介质中存储有前文提及的终端定位装置1所执行的计算机程序,且计算机程序包括程序指令,当处理器执行程序指令时,能够执行前文图3-图6以及图8任一个所对应实施例中对终端定位方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。作为示例,程序指令可被部署在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行,分布在多个地点且通过通信网络互连的多个计算设备可以组成区块链系统。
此外,需要说明的是:本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或者计算机程序可以包括计算机指令,该计算机指令可以存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器可以执行该计算机指令,使得该计算机设备执行前文图3-图6以及图8任一个所对应实施例中对终端定位方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机程序产品或者计算机程序实施例中未披露的技术细节,请参照本申请方法实施例的描述。
需要说明的是,对于前述的各个方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某一些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
本申请实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
本申请实施例装置中的模块可以根据实际需要进行合并、划分和删减。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,存储介质可为磁碟、光盘、只读存储器(Read-Only Memory,ROM)或随机存储器(Random Access Memory,RAM)等。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。

Claims (20)

1.一种终端定位方法,其特征在于,包括:
通过卫星观测信息确定终端对应的终端状态信息,根据所述终端状态信息从所述卫星观测信息中获取第一筛选观测信息;
将所述终端状态信息设置为目标滤波器的初始状态参数,获取所述目标滤波器针对所述初始状态参数的初始状态协方差矩阵;
对所述目标滤波器的所述初始状态参数进行时间更新,得到预测状态参数,对所述目标滤波器的所述初始状态协方差矩阵进行时间更新,得到预测状态协方差矩阵;
从所述第一筛选观测信息中,筛选出用于构建所述目标滤波器的测量更新矩阵的第二筛选观测信息,根据由所述终端状态信息所确定的卫星观测误差因子,构建所述目标滤波器对应的测量方差矩阵;
通过所述测量更新矩阵、所述第二筛选观测信息、所述预测状态协方差矩阵以及所述测量方差矩阵,对所述目标滤波器的所述预测状态参数进行测量更新,得到目标状态参数,根据所述目标状态参数确定所述终端对应的终端定位结果。
2.根据权利要求1所述的方法,其特征在于,所述通过卫星观测信息确定终端对应的终端状态信息,包括:
获取所述终端接收到的卫星观测信息,为所述终端设置初始状态信息,通过所述卫星观测信息、所述初始状态信息以及卫星所对应的卫星状态信息,构建所述终端与所述卫星之间的卫星观测方程;
通过所述卫星观测信息对应的信噪比和所述卫星对应的高度角,构建第二观测方差矩阵;
根据所述第二观测方差矩阵和所述卫星观测方程,确定所述终端对应的状态信息修正量,通过所述状态信息修正量对所述初始状态信息进行更新,得到所述终端对应的终端状态信息。
3.根据权利要求2所述的方法,其特征在于,所述卫星观测信息包括伪距观测数据,所述初始状态信息包括初始终端位置和初始终端钟差,所述卫星状态信息包括卫星位置和卫星钟差;
所述通过所述初始状态信息、所述卫星状态信息以及所述卫星观测信息,构建所述终端与所述卫星之间的卫星观测方程,包括:
获取所述初始终端位置和所述卫星位置之间的间隔距离,以及获取所述初始终端钟差与所述卫星钟差之间的钟差差值;
根据所述间隔距离和所述钟差差值,确定所述终端与所述卫星之间的第一估计值,通过所述第一估计值和所述伪距观测数据,构建所述终端与所述卫星之间的卫星观测方程。
4.根据权利要求2所述的方法,其特征在于,所述卫星观测信息包括多普勒观测数据,所述初始状态信息包括初始终端速度和初始终端钟漂,所述卫星状态信息包括卫星速度和卫星钟漂;
所述通过所述初始状态信息、所述卫星状态信息以及所述卫星观测信息,构建所述终端与所述卫星之间的卫星观测方程,包括:
获取所述初始终端速度与所述卫星速度之间的速度差值,以及获取所述终端与所述卫星之间的单位观测值;
获取所述初始终端钟漂与所述卫星钟漂之间的钟漂差值,根据所述速度差值与所述单位观测值之间的乘积,以及所述钟漂差值,确定所述终端与所述卫星之间的第二估计值;
通过卫星播发信号的波长和所述多普勒观测数据之间的乘积,以及所述第二估计值,构建所述终端与所述卫星之间的卫星观测方程。
5.根据权利要求3所述的方法,其特征在于,所述终端状态信息是指所述初始状态信息在经过k次迭代后所得到的结果,k为正整数;
所述根据所述第二观测方差矩阵和所述卫星观测方程,确定所述终端对应的状态信息修正量,通过所述状态信息修正量对所述初始状态信息进行更新,得到所述终端对应的终端状态信息,包括:
获取第k-1次迭代的估计参数;k为1时,所述第k-1次迭代的估计参数包括所述初始终端位置和所述初始终端钟差,每次迭代的卫星观测方程由该次迭代的估计参数所构建;
将所述第k-1次迭代的卫星观测方程,针对所述第k-1次迭代的估计参数的偏导数,确定为所述第k-1次迭代的雅克比矩阵,根据所述第k-1次迭代的卫星观测方程构建所述第k-1次迭代的伪距残差矩阵;
根据所述第k-1次迭代的雅克比矩阵、所述第k-1次迭代的伪距残差矩阵以及所述第二观测方差矩阵,获取所述第k-1次迭代的状态信息修正量;
当所述第k-1次迭代的状态信息修正量达到收敛时,将所述第k-1次迭代的估计参数和所述第k-1次迭代的状态信息修正量之和,确定为第k次迭代的估计参数;
根据所述第k次迭代的卫星观测方程构建所述第k次迭代的伪距残差矩阵,将所述第k次迭代的伪距残差矩阵对应的转置矩阵、所述伪距观测方差矩阵对应的逆矩阵,以及所述第k次迭代的伪距残差矩阵之间的乘积,确定为检验统计量;
若所述检验统计量小于检验阈值,则将所述第k次迭代的估计参数确定为所述终端对应的终端状态信息。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
若所述检验统计量大于或等于所述检验阈值,则根据所述第k-1次迭代的雅克比矩阵、所述第二观测方差矩阵,构建第一残差协方差矩阵;
通过所述第一残差协方差矩阵对所述第k次迭代的伪距残差矩阵进行正态分布检验,得到所述第k次迭代的伪距残差矩阵中的每个元素分别对应的检验结果;
若所述第k次迭代的伪距残差矩阵中的第i个元素所对应的检验结果不满足检验条件,则确定所述第i个元素未通过正态分布检验,剔除所述第i个元素所关联的伪距观测数据;i为小于或等于所述伪距观测数据的数量的正整数;
将剔除所述第i个元素所关联的伪距观测数据后所剩余的伪距观测数据作为卫星观测信息,将所述第k次迭代的估计参数作为初始状态信息,重新执行所述通过所述初始状态信息、所述卫星状态信息以及所述卫星观测信息,构建所述终端与所述卫星之间的卫星观测方程的步骤。
7.根据权利要求1所述的方法,其特征在于,所述终端状态信息包括终端位置、终端速度、终端钟差以及终端钟漂,所述第一筛选观测信息包括伪距筛选数据和多普勒筛选数据;
所述将所述终端状态信息设置为目标滤波器的初始状态参数,获取所述目标滤波器针对所述初始状态参数的初始状态协方差矩阵,包括:
将所述终端状态信息中的所述终端位置、所述终端速度、所述终端钟差以及所述终端钟漂,设置为目标滤波器的初始状态参数;
通过所述伪距筛选数据对应的信噪比,以及所述伪距筛选数据所对应卫星的高度角,构建伪距观测方差矩阵,通过所述多普勒筛选数据对应的信噪比,以及所述多普勒筛选数据所对应卫星的高度角,构建多普勒观测方差矩阵;
通过所述伪距观测方差矩阵、由所述终端位置和所述终端钟差所确定的卫星观测误差因子,以及由所述伪距筛选数据、所述终端位置、所述终端钟差所确定的雅克比矩阵,构建位置协方差矩阵;
通过所述多普勒观测方差矩阵,由所述终端速度和所述终端钟漂所确定的卫星观测误差因子,以及由所述多普勒筛选数据、所述终端速度、所述终端钟漂所确定的雅克比矩阵,构建速度协方差矩阵;
将所述位置协方差矩阵和所述速度协方差矩阵所构成的对角线矩阵,确定为所述目标滤波器对应的初始状态协方差矩阵。
8.根据权利要求1所述的方法,其特征在于,所述对所述目标滤波器的所述初始状态参数进行时间更新,得到预测状态参数,对所述目标滤波器的所述初始状态协方差矩阵进行时间更新,得到预测状态协方差矩阵,包括:
通过相邻历元的时间差构建所述目标滤波器的状态转移矩阵,根据所述状态转移矩阵对所述目标滤波器的所述初始状态参数进行时间更新,得到预测状态参数;
基于所述终端对应的历史状态信息,获取所述目标滤波器对应的滤波器系统噪声,根据所述状态转移矩阵和所述滤波器系统噪声,对所述目标滤波器的所述初始状态协方差矩阵进行时间更新,得到预测状态协方差矩阵。
9.根据权利要求8所述的方法,其特征在于,所述基于所述终端对应的历史状态信息,获取所述目标滤波器对应的滤波器系统噪声,包括:
若所述初始状态信息包括终端位置、终端速度、终端钟差以及终端钟漂,则获取所述终端对应的历史状态信息中的历史终端速度序列、历史终端钟漂序列以及历史终端钟差序列;所述历史终端速度序列、所述历史终端钟漂序列以及所述历史终端钟差序列均是通过尺寸为p的时间滑动窗口所确定的,p为正整数;
获取所述历史终端速度序列对应的第一方差值,将所述第一方差值和所述相邻历元的时间差之间的乘积,确定为所述目标滤波器对应的速度系统噪声;
获取所述历史终端钟漂序列对应的第二方差值,将所述第二方差值和所述相邻历元的时间差之间的乘积,确定为所述目标滤波器对应的钟漂系统噪声;
获取所述历史终端钟差序列对应的第三方差值,将所述第三方差值和所述相邻历元的时间差之间的乘积,确定为所述目标滤波器对应的钟差系统噪声,将所述速度系统噪声、所述钟漂系统噪声以及所述钟差系统噪声确定为所述目标滤波器对应的滤波器系统噪声。
10.根据权利要求8所述的方法,其特征在于,所述预测状态协方差矩阵为所述目标滤波器中的所述初始状态协方差矩阵在t时刻的状态协方差矩阵,t为正整数;
所述根据所述状态转移矩阵和所述滤波器系统噪声,对所述初始状态协方差矩阵进行更新,得到预测状态协方差矩阵,包括:
通过所述滤波器系统噪声以及所述相邻历元的时间差所对应的指数信息,构建噪声协方差矩阵;
获取所述目标滤波器在t-1时刻的状态协方差矩阵;t为1时,所述目标滤波器在所述t-1时刻的状态协方差矩阵为所述初始状态协方差矩阵;
将所述状态转移矩阵、所述t-1时刻的状态协方差矩阵以及所述状态转移矩阵对应的转置矩阵之间的乘积,与所述噪声协方差矩阵进行求和运算,得到所述预测协方差矩阵。
11.根据权利要求1所述的方法,其特征在于,所述从所述第一筛选观测信息中,筛选出用于构建所述目标滤波器的测量更新矩阵的第二筛选观测信息,包括:
通过所述第一筛选观测信息、所述预测状态协方差矩阵,以及与所述第一筛选观测信息相关联的第一观测方差矩阵,确定所述目标滤波器对应的模型验证参数值;
当所述模型验证参数值小于模型验证阈值时,通过正态分布检验从所述第一筛选观测信息中,筛选出用于构建所述目标滤波器的测量更新矩阵的第二筛选观测信息。
12.根据权利要求11所述的方法,其特征在于,所述通过所述第一筛选观测信息、所述预测状态协方差矩阵,以及与所述第一筛选观测信息相关联的第一观测方差矩阵,确定所述目标滤波器对应的模型验证参数值,包括:
通过所述第一筛选观测信息、所述第一筛选观测信息所对应卫星的卫星状态信息,以及所述预测状态信息,构建第一观测残差矩阵;
根据所述第一观测残差矩阵的四分位数和绝对中位差,对所述第一观测残差矩阵进行粗差探测处理,得到第二观测残差矩阵;
将所述第二观测残差矩阵中所包含的卫星观测信息,确定为第三筛选观测信息,通过所述第三筛选观测信息对应的信噪比,以及所述第三筛选观测信息所对应卫星的高度角,构建所述第一观测方差矩阵;
通过所述第二观测残差矩阵、所述预测状态协方差矩阵、所述第二观测残差矩阵针对所述预测状态参数的雅克比矩阵,以及所述第一观测方差矩阵,确定所述目标滤波器对应的模型验证参数值。
13.根据权利要求12所述的方法,其特征在于,所述根据所述第一观测残差矩阵的四分位数和绝对中位差,对所述第一观测残差矩阵进行粗差探测处理,得到第二观测残差矩阵,包括:
获取所述第一观测残差矩阵的上四分位数与所述第一观测残差矩阵的下四分位数之间的分位数差值;
将所述第一观测残差矩阵的下四分位数,以及第一粗差探测阈值和所述分位数差值之间的乘积进行相减运算,得到所述第一观测残差矩阵对应的最小元素值;
将所述第一观测残差矩阵的上四分位数,以及所述第一粗差探测阈值和所述分位数差值之间的乘积进行求和运算,得到所述第一观测残差矩阵对应的最大元素值;
将所述第一观测残差矩阵中的第j个元素和所述第一观测残差矩阵的中位数进行相减运算后的绝对值,与所述第一观测残差矩阵的绝对中位差之间的比值,确定为待验证数值;j为小于或等于所述第一筛选观测信息的数量的正整数;
若所述待验证数值大于第二粗差探测阈值,且所述第j个元素处于粗差取值范围,则从所述第一观测残差矩阵中剔除所述第j个元素,得到第二观测残差矩阵;所述粗差取值范围是指所述最小元素值至所述最大元素值所对应范围之外的取值范围。
14.根据权利要求12所述的方法,其特征在于,所述第二观测残差矩阵是通过所述卫星观测信息中的伪距筛选数据所构建的;
所述方法还包括:
当所述第二观测残差矩阵的绝对中位差与所述第二观测残差矩阵的中位数之间的比值小于第一钟差探测阈值,且所述第二观测残差矩阵的标准差与所述第二观测残差矩阵的平均值之间的比值小于所述第一钟差探测阈值时,将所述第二观测残差矩阵的中位数,与所述预测状态协方差矩阵中的对角元素所对应的开根号运算结果之间的比值,确定为钟差探测数值;
若所述钟差探测数值大于或等于第二钟差探测阈值,则确定所述目标滤波器中存在钟差跳变,重新设置所述目标滤波器中的所述预测状态参数和所述预测状态协方差矩阵。
15.根据权利要求11所述的方法,其特征在于,所述当所述模型验证参数值小于模型验证阈值时,通过正态分布检验从所述第一筛选观测信息中,筛选出用于构建所述目标滤波器的测量更新矩阵的第二筛选观测信息,包括:
当所述模型验证参数值小于模型验证阈值时,对所述模型验证参数进行标准化处理,得到标准化残差矩阵;
通过对所述标准化残差矩阵进行正态分布检验,得到所述标准化残差矩阵中所包含的每个元素分别对应的检验结果;
若所述标准化残差矩阵中的第l个元素所对应的检验结果不满足检验条件,则确定所述第l个元素未通过正态分布检验,从所述第一筛选观测信息中,剔除所述第l个元素所对应的卫星观测信息,得到所述第二筛选观测信息;l为小于或等于所述第一筛选观测信息的数量的正整数。
16.根据权利要求1所述的方法,其特征在于,所述目标状态参数为所述目标滤波器中的所述预测状态参数在a时刻的状态参数,a为正整数;
所述通过所述测量更新矩阵、所述第二筛选观测信息、所述预测状态协方差矩阵以及所述测量方差矩阵,对所述目标滤波器的所述预测状态参数进行测量更新,得到目标状态参数,包括:
通过所述第二筛选观测信息、所述预测状态参数以及所述卫星状态信息构建第三观测残差矩阵,将所述第三观测残差矩阵针对所述预测状态参数的雅克比矩阵,确定为所述目标滤波器对应的测量更新矩阵;
获取所述目标滤波器在a-1时刻的状态参数,以及所述目标滤波器在所述a-1时刻的状态协方差矩阵;i为1时,所述a-1时刻的状态参数为所述预测状态参数,所述a-1时刻的状态协方差矩阵为所述预测状态协方差矩阵;所述a-1时刻的状态协方差矩阵是所述目标滤波器针对所述a-1时刻的状态参数的协方差矩阵;
通过所述a-1时刻的状态协方差矩阵、所述测量更新矩阵以及所述测量方差矩阵,确定所述目标滤波器在所述a-1时刻的滤波器增益;
将所述a-1时刻的滤波器增益和所述第三观测残差矩阵之间的乘积,与所述a-1时刻的状态参数进行求和运算,得到所述目标状态参数。
17.根据权利要求16所述的方法,其特征在于,所述根据所述目标状态参数确定所述终端对应的终端定位结果,包括:
将所述a-1时刻的滤波器增益和所述第三观测残差矩阵之间的乘积,确定为所述目标滤波器在所述a-1时刻的滤波器修正量;
当所述a-1时刻的滤波器修正量通过检验时,获取所述目标滤波器针对所述目标状态参数的目标协方差矩阵,通过所述目标协方差矩阵、所述测量方差矩阵以及所述测量更新矩阵,构建所述目标滤波器对应的第二残差协方差矩阵;
通过所述第二残差协方差矩阵对所述第三观测残差矩阵进行正态分布检验,得到所述第三观测残差矩阵中所包含的每个元素分别对应的检验结果;
若所述第三观测残差矩阵中的每个元素分别对应的检验结果均满足检验条件,则将所述目标状态参数确定为所述终端对应的终端定位结果。
18.一种终端定位装置,其特征在于,包括:
终端状态获取模块,用于通过卫星观测信息确定终端对应的终端状态信息,根据所述终端状态信息从所述卫星观测信息中获取第一筛选观测信息;
滤波器初始化模块,用于将所述终端状态信息设置为目标滤波器的初始状态参数,获取所述目标滤波器针对所述初始状态参数的初始状态协方差矩阵;
时间更新模块,用于对所述目标滤波器的所述初始状态参数进行时间更新,得到预测状态参数,对所述目标滤波器的所述初始状态协方差矩阵进行时间更新,得到预测状态协方差矩阵;
信息筛选模块,用于从所述第一筛选观测信息中,筛选出用于构建所述目标滤波器的测量更新矩阵的第二筛选观测信息,根据由所述终端状态信息所确定的卫星观测误差因子,构建所述目标滤波器对应的测量方差矩阵;
测量更新模块,用于通过所述测量更新矩阵、所述第二筛选观测信息、所述预测状态协方差矩阵以及所述测量方差矩阵,对所述目标滤波器的所述预测状态参数进行测量更新,得到目标状态参数,根据所述目标状态参数确定所述终端对应的终端定位结果。
19.一种计算机设备,其特征在于,包括存储器和处理器;
所述存储器与所述处理器相连,所述存储器用于存储计算机程序,所述处理器用于调用所述计算机程序,以使得所述计算机设备执行权利要求1-17任一项所述的方法。
20.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序适于由处理器加载并执行,以使得具有所述处理器的计算机设备执行权利要求1-17任一项所述的方法。
CN202210034069.0A 2022-01-12 2022-01-12 终端定位方法、装置、设备以及介质 Pending CN114384569A (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202210034069.0A CN114384569A (zh) 2022-01-12 2022-01-12 终端定位方法、装置、设备以及介质
PCT/CN2023/071556 WO2023134666A1 (zh) 2022-01-12 2023-01-10 终端定位方法、装置、设备以及介质
US18/527,543 US20240142639A1 (en) 2022-01-12 2023-12-04 Terminal positioning method and apparatus, device, and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210034069.0A CN114384569A (zh) 2022-01-12 2022-01-12 终端定位方法、装置、设备以及介质

Publications (1)

Publication Number Publication Date
CN114384569A true CN114384569A (zh) 2022-04-22

Family

ID=81202570

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210034069.0A Pending CN114384569A (zh) 2022-01-12 2022-01-12 终端定位方法、装置、设备以及介质

Country Status (3)

Country Link
US (1) US20240142639A1 (zh)
CN (1) CN114384569A (zh)
WO (1) WO2023134666A1 (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114919627A (zh) * 2022-06-17 2022-08-19 重庆交通大学 一种基于ris技术的列车定位追踪的方法
CN115242297A (zh) * 2022-09-21 2022-10-25 腾讯科技(深圳)有限公司 移动终端的运动参数确定方法、装置、设备和存储介质
CN115268252A (zh) * 2022-08-05 2022-11-01 腾讯科技(深圳)有限公司 时间管理方法、装置、计算机、可读存储介质及程序产品
CN115379560A (zh) * 2022-08-22 2022-11-22 昆明理工大学 一种无线传感网络中仅有距离量测信息下的目标定位与跟踪方法
CN116222584A (zh) * 2023-05-10 2023-06-06 北京白水科技有限公司 群组导航定位中的分组信息的确定方法、装置及设备
WO2023236643A1 (zh) * 2022-06-09 2023-12-14 腾讯科技(深圳)有限公司 定位方法、装置、设备及存储介质
CN117268395A (zh) * 2023-09-20 2023-12-22 北京自动化控制设备研究所 一种无人机地图匹配位置跳变抑制方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001208821A (ja) * 2000-01-28 2001-08-03 Toshiba Corp 測位用受信装置及びこの装置に適用される測位情報処理方法
JP3651678B2 (ja) * 2002-08-13 2005-05-25 キーウェアソリューションズ株式会社 Gpsによる自律測位方法、自律航法装置及びコンピュータプログラム
JP5794646B2 (ja) * 2013-12-27 2015-10-14 日本電気株式会社 衛星測位システム、測位端末、測位方法、及びプログラム
JP6901864B2 (ja) * 2017-02-08 2021-07-14 三菱スペース・ソフトウエア株式会社 測位計算装置、測位計算方法及び測位計算プログラム
US10408943B2 (en) * 2017-02-09 2019-09-10 Samsung Electronics Co., Ltd. Method and apparatus for improving position-velocity solution in GNSS receivers
CN112558125B (zh) * 2021-02-22 2021-05-25 腾讯科技(深圳)有限公司 一种车辆定位的方法、相关装置、设备以及存储介质

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023236643A1 (zh) * 2022-06-09 2023-12-14 腾讯科技(深圳)有限公司 定位方法、装置、设备及存储介质
CN114919627A (zh) * 2022-06-17 2022-08-19 重庆交通大学 一种基于ris技术的列车定位追踪的方法
CN114919627B (zh) * 2022-06-17 2023-06-09 重庆交通大学 一种基于ris技术的列车定位追踪的方法
CN115268252A (zh) * 2022-08-05 2022-11-01 腾讯科技(深圳)有限公司 时间管理方法、装置、计算机、可读存储介质及程序产品
CN115379560A (zh) * 2022-08-22 2022-11-22 昆明理工大学 一种无线传感网络中仅有距离量测信息下的目标定位与跟踪方法
CN115379560B (zh) * 2022-08-22 2024-03-08 昆明理工大学 一种无线传感网络中仅有距离量测信息下的目标定位与跟踪方法
CN115242297A (zh) * 2022-09-21 2022-10-25 腾讯科技(深圳)有限公司 移动终端的运动参数确定方法、装置、设备和存储介质
CN115242297B (zh) * 2022-09-21 2022-11-25 腾讯科技(深圳)有限公司 移动终端的运动参数确定方法、装置、设备和存储介质
CN116222584A (zh) * 2023-05-10 2023-06-06 北京白水科技有限公司 群组导航定位中的分组信息的确定方法、装置及设备
CN116222584B (zh) * 2023-05-10 2023-07-25 北京白水科技有限公司 群组导航定位中的分组信息的确定方法、装置及设备
CN117268395A (zh) * 2023-09-20 2023-12-22 北京自动化控制设备研究所 一种无人机地图匹配位置跳变抑制方法
CN117268395B (zh) * 2023-09-20 2024-05-03 北京自动化控制设备研究所 一种无人机地图匹配位置跳变抑制方法

Also Published As

Publication number Publication date
WO2023134666A1 (zh) 2023-07-20
US20240142639A1 (en) 2024-05-02

Similar Documents

Publication Publication Date Title
CN114384569A (zh) 终端定位方法、装置、设备以及介质
US11237276B2 (en) System and method for gaussian process enhanced GNSS corrections generation
US20190302274A1 (en) System and Method for GNSS Ambiguity Resolution
CN108508461B (zh) 基于gnss载波相位高精度定位完好性监测方法
RU2591953C2 (ru) Навигационная система и способ разрешения целочисленных неоднозначностей с использованием ограничения неоднозначности двойной разности
CN112327340B (zh) 终端定位精度评估方法、装置、设备以及介质
US20240142637A1 (en) System and method for gaussian process enhanced gnss corrections generation
WO2020139578A1 (en) Error correction in gps signal
KR102270339B1 (ko) 고안전성 rtk-gnss의 초기 준비시간 단축 방법 및 시스템
WO2015145718A1 (ja) 測位装置
CN111077550A (zh) 一种应用于智能终端rtd定位的粗差探测方法及系统
CN110426717B (zh) 一种协同定位方法及系统、定位设备、存储介质
CN112666588A (zh) 一种城市峡谷环境下基于景象匹配与机器学习的定位方法
CN114646992A (zh) 定位方法、装置、计算机设备、存储介质和计算机程序产品
CN114562992A (zh) 一种基于因子图及场景约束的多径环境组合导航方法
CN116643293A (zh) Gnss定位方法及装置、设备、存储介质
CN116719062A (zh) 卫星的信号质量评估方法及装置、设备、存储介质
WO2023236643A1 (zh) 定位方法、装置、设备及存储介质
WO2021162132A1 (en) System and method for integer-less gnss positioning
CN115616637B (zh) 一种基于三维格网多径建模的城市复杂环境导航定位方法
CN112198533A (zh) 一种多假设下的地基增强系统完好性评估系统及方法
CN113917509B (zh) 一种双差模糊度固定方法、设备以及可读存储介质
CN115242297B (zh) 移动终端的运动参数确定方法、装置、设备和存储介质
Xu et al. A Framework for Graphical GNSS Multipath and NLOS Mitigation
CN112782741A (zh) 基于rtk定位的模糊度固定方法及定位终端

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40070960

Country of ref document: HK