Positioning method, device, equipment and program

By integrating radar point cloud data with satellite observation data, the method addresses accuracy and robustness issues in navigation systems, ensuring reliable location estimation even with poor-quality data.

JP7755070B2Active Publication Date: 2025-10-15TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
JP2024532222
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2022-06-09
Filing Date
2023-04-10
Publication Date
2025-10-15
Estimated Expiration
2043-04-10

AI Technical Summary

Technical Problem

Existing navigation technologies face limitations in positioning accuracy and robustness due to the reliance on the quality of observation data from satellite positioning devices, leading to inadequate performance in scenarios requiring precise location determination.

Method used

A positioning method that integrates point cloud data from a radar with satellite observation data to enhance accuracy and robustness, utilizing a radar to scan surrounding obstacles and complement satellite data for improved location estimation.

Benefits of technology

The combined use of point cloud data and satellite observation data enhances positioning accuracy and robustness, reducing dependency on individual data quality, thereby improving the reliability of location determination.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007755070000330
    Figure 0007755070000330
  • Figure 0007755070000331
    Figure 0007755070000331
  • Figure 0007755070000332
    Figure 0007755070000332
Patent Text Reader

Abstract

The positioning method, device, equipment, and storage medium of the present application belong to the technical field of navigation. The method includes the steps of: acquiring point cloud data scanned by a radar attached to a mobile device, positioning the mobile device using the point cloud data to obtain a first positioning result (301); acquiring first observation data received by a satellite positioning device attached to the mobile device (302); and acquiring a target positioning result of the mobile device based on the first observation data and the first positioning result (303). Using the above method, device, equipment, and storage medium, an accurate target positioning result can be obtained, and the robustness of the positioning is high, which is helpful in meeting the demand for positioning. Illustratively, the embodiments of the present application can be applied to traffic scenes, map areas, vehicle-mounted scenes, etc.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] This application claims priority to a Chinese patent application bearing application number 202210653933.5, filed on June 9, 2022, for the invention "Positioning method, device, equipment and storage medium," the entire contents of which are incorporated herein by reference. The embodiments of the present application relate to the technical field of navigation, and in particular to a positioning method, a device, an instrument, and program Regarding. [Background technology]

[0002] As navigation technology advances, the number of application scenarios requiring the positioning of mobile devices is increasing. For example, in delivery scenarios, it is necessary to locate the terminal that is the delivery target, and in autonomous driving scenarios, it is necessary to locate the in-vehicle terminal.

[0003] In a related technique, a satellite positioning device attached to a mobile device calculates the positioning result of the mobile device in real time based on the observation data received. Summary of the Invention [Problem to be solved by the invention]

[0004] The embodiments of the present application provide a positioning method, a device, an apparatus, and a method for improving positioning accuracy and robustness. program The above technical means are as follows: [Means for solving the problem]

[0005] According to one aspect, a positioning method performed by a computer device according to an embodiment of the present application includes: acquiring point cloud data scanned by a radar attached to a mobile device, and positioning the mobile device using the point cloud data to obtain a first positioning result; acquiring first observation data received by a satellite positioning device attached to the mobile device; and acquiring a target positioning result for the mobile device based on the first observation data and the first positioning result.

[0006] According to another aspect, the positioning device comprises: a first acquisition unit that acquires point cloud data scanned by a radar attached to the mobile device; a positioning unit that uses the point cloud data to position the mobile device and obtain a first positioning result; a second acquisition unit that acquires first observation data received by a satellite positioning device attached to the mobile device; and a third acquisition unit that acquires a target positioning result of the mobile device based on the first observation data and the first positioning result.

[0007] According to another aspect, a computing device includes a processor and a memory having stored therein at least one computer program that, when loaded and executed by the processor, causes the computing device to implement any of the positioning methods described above.

[0008] According to yet another aspect, a non-volatile computer-readable storage medium stores at least one computer program that, when loaded and executed by a processor, causes the computer to implement any of the positioning methods described above.

[0009] According to yet another aspect, a computer program product comprises a computer program or computer instructions which, when loaded and executed by a processor, causes the computer to implement any of the positioning methods described above.

[0010] According to another aspect, a computer program comprises computer instructions which, when loaded and executed by a processor, cause the computer to implement any of the positioning methods described above. [Effects of the Invention]

[0011] According to the technical solutions of the embodiments of the present application, the final target positioning result of the mobile device is obtained by comprehensively taking into account the point cloud data scanned by the radar installed on the mobile device and the first observation data received by the satellite positioning device, and the point cloud data and the first observation data can complement each other. This positioning method can reduce the dependency on either one of the point cloud data or the first observation data. Even if the quality of the point cloud data or the first observation data is poor, a more accurate target positioning result can be obtained by additionally taking into account the other data, which is highly robust in positioning and advantageous for meeting actual positioning needs. [Brief explanation of the drawings]

[0012] [Figure 1] This is a comparison diagram of the effects of standalone positioning and RTK differential positioning. [Figure 2] 1 is a schematic diagram of an implementation environment of a positioning method according to an embodiment of the present application; [Figure 3] 1 is a flowchart of a positioning method according to an embodiment of the present application; [Figure 4] FIG. 2 is a schematic diagram of a process for positioning a mobile device using point cloud data and obtaining a first positioning result according to an embodiment of the present application. [Figure 5] 10 is a flowchart of an implementation process of obtaining a target positioning result based on a first positioning result based on target data according to an embodiment of the present application; [Figure 6] FIG. 2 is a schematic diagram of the associated processing process of the first filter according to an embodiment of the present application; [Figure 7] 10 is a flowchart of an implementation process of obtaining a target positioning result based on a first positioning result based on target data according to an embodiment of the present application; [Figure 8] 1 is a schematic diagram of a process for decomposing state parameters of a mobile device based on first observation data according to an embodiment of the present application; [Figure 9] FIG. 1 is a schematic diagram of a process for estimating a mobile device's location and clock bias using a robust weighted least squares method, according to an embodiment of the present application. [Figure 10] FIG. 2 is a schematic diagram of a process for estimating the velocity and clock drift of a mobile device using a robust weighted least squares method, according to an embodiment of the present application; [Figure 11] 1 is a block schematic diagram of a positioning method according to an embodiment of the present application; [Figure 12] 1 is a schematic diagram of a detailed process of a positioning method according to an embodiment of the present application; [Figure 13] 1 is a schematic diagram of an application scene of a positioning method according to an embodiment of the present application; [Figure 14] 1 is a schematic diagram of an application scene of a positioning method according to an embodiment of the present application; [Figure 15] 1 is a schematic diagram of a positioning device according to an embodiment of the present application; [Figure 16] 1 is a schematic diagram illustrating a configuration of a mobile device according to an embodiment of the present application. [Figure 17] FIG. 2 is a schematic configuration diagram of a server according to an embodiment of the present application. DETAILED DESCRIPTION OF THE INVENTION

[0013] In order to make the objectives, technical means and advantages of the present application clearer, the following describes the embodiments of the present application in more detail with reference to the drawings.

[0014] Some nouns related to the embodiments of the present application will be explained below.

[0015] The Global Navigation Satellite System (GNSS), also known as the Global Navigation Satellite System (GNSS), is a space-based radio navigation system that can provide users with all-weather three-dimensional coordinates, velocity, and time information anywhere on the Earth's surface or near-Earth space. There are four common GNSS systems: the Global Positioning System (GPS), the BeiDou Navigation Satellite System (BDS), the GLONASS system, and the Galileo system (GALILEO). GPS was the earliest developed and is also the most technologically mature. In recent years, with BDS and GLONASS providing comprehensive services in some regions, BDS in particular has seen rapid development in the civilian sector. GNSS is widely used in areas such as communications, positioning, consumer entertainment, surveying, vehicle management, and car navigation and information services.

[0016] A satellite positioning device (also called a satellite signal receiver) is an electronic device that receives and processes satellite signals to measure the geometric distance between a mobile device and a satellite (pseudorange observation) and the Doppler effect of the satellite signal (Doppler observation). Satellite positioning devices typically include modules such as an antenna, a satellite signal receiving loop, and baseband signal processing. A mobile device integrated with satellite positioning devices calculates the current location coordinates of the mobile device based on the pseudorange and Doppler observations. Satellite positioning devices are widely used in areas such as smartphone map navigation, high-precision ground surveying, surveying, location services, and deep space detection. The observation data output from the satellite positioning equipment includes pseudorange, pseudorange rate, and accumulated delta range (ADR). The pseudorange measurement is the geometric distance from the satellite to the satellite positioning equipment, the pseudorange rate measurement is the Doppler effect due to the relative motion between the satellite and the satellite positioning equipment, and the ADR measurement is the amount of change in geometric distance from the satellite to the satellite positioning equipment.

[0017] In the satellite positioning process, pseudorange refers to the approximate distance between a ground receiver (e.g., a satellite positioning device attached to a mobile device) and a satellite. Assuming that the satellite clock and the receiver clock are precisely synchronized, the signal propagation time can be obtained based on the satellite signal transmission time and the receiver reception time, and the distance from the satellite to the Earth can be obtained by multiplying the propagation speed. However, because there is an unavoidable clock bias between the two clocks and the signal is affected by factors such as atmospheric refraction during propagation, the distance measured directly in this manner is not equal to the true distance from the satellite to the ground receiver, and therefore such a distance is called a pseudorange. In the embodiments of this application, pseudorange observation data refers to the distance observation data between a satellite and a mobile device.

[0018] The CORS (Continuously Operating Reference Stations) system is a product of deep development of advanced technologies including satellite positioning technology, computer network technology, and digital communication technology. The CORS system consists of five parts: a reference station network, a data processing center, a data transmission system, a positioning and navigation data distribution system, and a user system. Each reference station and the detection and analysis center are connected together via the data transmission system to form a dedicated network.

[0019] RTK (Real-Time Kinematic) differential positioning technology is also known as real-time kinematic differential positioning technology or carrier phase differential positioning technology. RTK differential positioning technology is a real-time kinematic positioning technology based on carrier phase observations. It provides 3D positioning results in real time in a specified coordinate system of the observation point, achieving centimeter-level accuracy. In RTK positioning mode, the reference station transmits its observation values ​​along with observation station coordinate information to the mobile station via a data link. The mobile station not only receives data from the reference station via the data link but also collects and processes satellite observation data in real time. Compared to traditional point-based positioning, RTK differential positioning can eliminate the effects of atmospheric delay errors, satellite clock bias, and terminal receiver clock bias, as well as spatial system errors, propagation errors, and environmental errors, resulting in superior positioning accuracy and stability. For example, a comparison diagram of the effects of point positioning and RTK differential positioning is shown in Figure 1. The positioning error of conventional point positioning is 5 to 20 m (meters), while the positioning error of RTK differential positioning is 3 to 5 cm (centimeters).

[0020] Regarding laser radar, a distance sensor that uses infrared light as a laser light source is also called laser radar. It uses a reflection principle similar to that of radar, and obstacles within the effective range of the laser will block the light source and cause reflections, so 3D (three-dimensional) obstacle distance information on the same plane as the laser light source can be obtained, and matching positioning or attitude resolution can be performed based on the obtained information. Currently, laser radar is being installed in an increasing number of mobile devices.

[0021] Quartiles, also called quartile points, are calculated by dividing all data into four equal parts, each containing 25% of the data. There are three quartiles: the first quartile, commonly referred to as the lower quartile, the second quartile, the median, and the third quartile, referred to as the upper quartile, are designated Q1, Q2, and Q3, respectively. The first quartile (Q1), also called the lower quartile, is equal to the 25th percentile of the sequence when all the numbers in the sequence are sorted in ascending order. The second quartile (Q2), also called the median, is equal to the 50th percentile of the sequence when all the numbers in the sequence are sorted in ascending order. The third quartile (Q3), also called the upper quartile, is equal to the 75th percentile of the sequence when all the numbers in the sequence are sorted in ascending order.

[0022] Pseudorange observation data is an approximate distance between a satellite signal receiver (eg, satellite positioning equipment) and a satellite in a satellite positioning process.

[0023] Doppler observations are Doppler measurements or counts of radio signals transmitted from satellites as measured by a satellite signal receiver.

[0024] The carrier phase observation data is the phase difference between the carrier signal or subcarrier signal emitted from the satellite and the local oscillator signal of the satellite signal receiver.

[0025] The altitude angle is the angle between the horizontal plane and the line of direction from the point where the satellite signal receiver is located to the satellite.

[0026] Clock bias is a clock error, and in this application clock bias refers to satellite clock bias and mobile device clock bias, where satellite clock bias means the difference between the satellite clock and standard time, and mobile device clock bias is also called receiver clock bias, i.e., the difference between the receiver clock and standard time.

[0027] Clock drift is the rate of change of clock bias, and in this application clock drift refers to mobile device clock drift and satellite clock drift, where mobile device clock drift refers to the rate of change of receiver clock bias and satellite clock drift refers to the rate of change of satellite clock bias.

[0028] An epoch represents the start time of a period and an event, or the reference date of a measurement system. To compare observations at different times, it is necessary to specify the observation time corresponding to the observational data, and such a time is called the observation epoch.

[0029] In related art, a satellite positioning device attached to a mobile device calculates a positioning result of the mobile device in real time based on observation data received by the satellite positioning device. However, in this positioning method, the positioning accuracy is limited by the quality of the observation data. If the quality of the observation data is poor, the positioning is inaccurate and the robustness of the positioning is likely to be low, making it difficult to meet actual positioning needs. Therefore, there is a need to provide a positioning method that can improve the positioning accuracy and robustness.

[0030] FIG. 2 is a schematic diagram of an implementation environment of the positioning method according to the embodiment of the present application. As shown in FIG. 2, the implementation environment may include a mobile device 110, a reference station 120, a satellite cluster 130, and a server 140.

[0031] The mobile device 110 is connected to the server 140 via a wireless network or a wired network. Preferably, the mobile device 110 may be, but is not limited to, a mobile phone, a computer, a smart voice interaction device, a smart home appliance, an in-vehicle terminal, a helicopter, etc. An application program supporting a positioning service is installed and executed on the mobile device 110. In some embodiments, a navigation application program is executed on the mobile device 110, and a user can realize a navigation function through the navigation application program. In some embodiments, the mobile device 110 is equipped with a satellite positioning device, and the mobile device 110 can communicate with the satellite cluster 130 through the satellite positioning device to obtain observation data. In some embodiments, the mobile device 110 is equipped with a radar that can scan point cloud data around the mobile device 110.

[0032] Preferably, the reference station 120 is a CORS system. The reference station 120 can communicate with the satellite cluster 130 to obtain parameters of each satellite in the satellite cluster 130, and of course, the reference station 120 can also communicate with the mobile device 110 or the server 140 to transmit the navigation ephemeris and original observation data of the satellite cluster to the mobile device 110 or the server 140.

[0033] Preferably, server 140 is an independent physical server, or a server cluster or distributed system consisting of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, content delivery networks (CDNs), and big data and artificial intelligence platforms. In some embodiments, server 140 can communicate with mobile device 110, and server 140 provides navigation-related computing services (e.g., differentiated services delivery, position reporting, etc.). In some embodiments, server 140 is also referred to as a high precision positioning server platform.

[0034] The positioning method according to the embodiments of the present application is performed by a computer device, which may be the mobile device 110 or the server 140; that is, the positioning method according to the embodiments of the present application may be performed by the mobile device 110, the server 140, or even jointly performed by the mobile device 110 and the server 140; the embodiments of the present application are not limited thereto.

[0035] Those skilled in the art should understand that the above mobile device 110, reference station 120, satellite cluster 130 and server 140 are merely examples, and that other existing or future mobile devices, reference stations, satellite clusters or servers, if applicable to this application, should be included in the scope of protection of this application and are incorporated herein by reference.

[0036] For example, the positioning method according to the embodiment of the present application may be applied to an in-vehicle scene, a map field, a traffic field, etc.

[0037] Based on the implementation environment shown in Fig. 2, an embodiment of the present application provides a positioning method, and exemplified by applying the method to a mobile device 110. As shown in Fig. 3, the positioning method according to the embodiment of the present application may include the following steps 301 to 303.

[0038] In step 301, point cloud data scanned by a radar attached to a mobile device is acquired, and the mobile device is positioned using the point cloud data to obtain a first positioning result.

[0039] A radar is attached to the mobile device, and the radar can scan the surrounding point cloud data in real time, and the mobile device can acquire the point cloud data scanned by the radar. It should be noted that the acquired point cloud data in the embodiments of the present application refers to the point cloud data scanned by the radar at the current positioning time.

[0040] For example, the radar attached to the mobile device may refer to a laser radar, which detects obstacles within its effective range by emitting a laser beam and scans information about obstacles on the same plane as the laser light source by emitting the laser beam, and the information about the obstacles may be represented using point cloud data. For example, the point cloud data may refer to three-dimensional point cloud data or two-dimensional point cloud data. The point cloud data is a data set of points in a coordinate system, and the data for each point may include position information, color information, reflection intensity information, etc.

[0041] The acquisition of point cloud data is related to radar and not related to GNSS signals, and regardless of the quality of the GNSS signals, any radar installed on a mobile device can scan the point cloud data, and by further obtaining a first positioning result of the mobile device based on the point cloud data, the first positioning result can be used to provide data support for obtaining a final target positioning result, reducing the dependency of the target positioning result on the quality of the GNSS signals, thereby improving the accuracy and robustness of the target positioning result.

[0042] In an exemplary embodiment, a process of positioning a mobile device using point cloud data and obtaining a first positioning result includes the steps of matching the point cloud data with historical point cloud data located in a previous frame of the point cloud data to obtain point cloud matching information, determining a position change amount based on the point cloud matching information, correcting the historical position of the mobile device based on the position change amount to obtain a first position, and setting the positioning result including the first position as the first positioning result.

[0043] For example, the historical point cloud data located one frame before the point cloud data may refer to point cloud data scanned at the previous scan time by a radar attached to a mobile device. The process of matching the point cloud data with the historical point cloud data located one frame before the point cloud data may be realized based on the NDT (Normal Distribution Transform) algorithm. NDT can determine the optimal match between two point clouds using standard optimization techniques, and since feature calculation and matching of corresponding points are not used in the registration process, the matching speed is faster than other methods. The NDT registration algorithm is stable in terms of time required, has little dependence on initial values, and can effectively correct even large errors in the initial values.

[0044] The point cloud matching information indicates a point cloud matching relationship between the point cloud data and historical point cloud data located one frame before the point cloud data. Based on the point cloud matching information, a position change amount indicating a change in the current position relative to the historical position can be determined. The historical position means a position in a historical positioning result, and the historical positioning result may mean a positioning result at a positioning time prior to the current positioning time.

[0045] After determining the amount of position change, the historical position of the mobile device is corrected based on the amount of position change to obtain a first position. The first position can be regarded as the current position of the mobile device determined based on the point cloud data. For example, the method of correcting the historical position of the mobile device based on the amount of position change to obtain the first position may be to determine the first position as the sum of the amount of position change and the historical position.

[0046] For example, the accuracy of the position change amount determined based on the point cloud matching information may be low. After obtaining the position change amount, a correction equation corresponding to the position change amount may be determined, where the correction equation corresponding to the position change amount indicates how to correct the historical position of the mobile device based on the position change amount. For example, the position change amount is substituted into a correction equation for which the position change amount is unknown to obtain the correction equation for the position change amount. The correction equation for which the position change amount is unknown may be set empirically. In some embodiments, the correction equation for the position change amount may be referred to as a constraint equation for the position change amount.

[0047] After determining the correction equation corresponding to the amount of position change, the historical position of the mobile device is corrected based on the correction equation corresponding to the amount of position change, and the corrected position is set as the first position. For example, the correction equation corresponding to the amount of position change may be an equation in which the position to be corrected is an independent variable and the corrected position is a dependent variable, and a manner of correcting the historical position of the mobile device based on the correction equation corresponding to the amount of position change and obtaining the first position may be to substitute the historical position as a value of the independent variable into the correction equation corresponding to the amount of position change, and calculate and obtain the value of the dependent variable as the first position.

[0048] For example, the method of correcting the historical position of the mobile device based on the position change amount and obtaining the first position may be to use the sum of the position change amount and the historical position of the mobile device as a reference position, and to filter and correct the reference position using a reference filter to obtain the first position. The reference filter may be any filter, and for example, types of the reference filter may include, but are not limited to, a Kalman filter (EF), an extended Kalman filter (EKF), an unscented Kalman filter, a robust Kalman filter, etc. In the process of filtering and correcting the reference position using the reference filter, state parameters to be corrected by the reference filter may be determined based on the reference position, and matrices required for the filtering and correction (e.g., a measurement update matrix, a measurement variance matrix, etc.) may be set based on the matching degree of the point cloud matching information.

[0049] After determining the first position, the positioning result including the first position is regarded as the first positioning result of the mobile device. The embodiment of the present application does not limit the type of parameters included in the first positioning result, as long as the type of parameters included in the first positioning result includes a location type. For example, the type of parameters included in the first positioning result may include a speed type in addition to the location type. For example, in a situation where the type of parameters included in the first positioning result further includes a speed type, the speed in the historical positioning result may be regarded as the speed in the first positioning result, or a speed set based on experience may be regarded as the speed in the first positioning result; the embodiment of the present application does not limit this.

[0050] Exemplarily, the process of positioning a mobile device using point cloud data to obtain a first positioning result may be as shown in Fig. 4. First, obtain point cloud data scanned by a radar attached to the mobile device, then match the point cloud data with historical point cloud data located one frame before the point cloud data based on an NDT algorithm to obtain a position change amount, determine a constraint equation corresponding to the position change amount, correct the historical position based on the constraint equation corresponding to the position change amount to obtain a first position, and use the positioning result including the first position as the first positioning result.

[0051] In step 302, first observation data received by a satellite positioning device attached to the mobile device is acquired.

[0052] The mobile device is equipped with a satellite positioning device, which can receive observation data provided by a GNSS system in real time, and the mobile device can acquire the observation data received by the satellite positioning device. It should be noted that in the present embodiment, the acquired first observation data refers to the observation data received by the satellite positioning device at the current positioning time. For example, the first observation data may include at least one of first pseudorange observation data, first Doppler observation data, and first carrier phase observation data.

[0053] Exemplarily, the first observation data refers to observation data for a first satellite, i.e., observation data between the first satellite and the mobile device, where the first satellite refers to each satellite from which a signal is acquired at the current positioning time of the mobile device. Exemplarily, to ensure the accuracy of the positioning result obtained based on the observation data, there are a plurality of first satellites. The first observation data includes observation sub-data corresponding to the first satellites, and each observation sub-data corresponds to each first satellite. If the first observation data includes first pseudorange observation data, the observation sub-data corresponding to any of the first satellites includes pseudorange observation sub-data corresponding to any of the first satellites. If the first observation data includes first Doppler observation data, the observation sub-data corresponding to any of the first satellites includes Doppler observation sub-data corresponding to any of the first satellites. If the first observation data includes first carrier phase observation data, the observation sub-data corresponding to any of the first satellites includes carrier phase observation sub-data corresponding to any of the first satellites.

[0054] Exemplarily, a mobile device may connect to a CORS system via an NTRIP protocol and send an observation data acquisition request to the CORS system, and then the CORS system may distribute the first observation data to the satellite positioning device attached to the mobile device so that the satellite positioning device attached to the mobile device receives the first observation data. The NTRIP protocol refers to Networked Transport of RTCM via Internet Protocol, and RTCM refers to a protocol developed by the Radio Technical Commission for Maritime Services. In some embodiments, the observation data acquisition request sent by the mobile device to the CORS system may also be referred to as an observation data distribution request.

[0055] Exemplarily, the mobile device may not only send an observation data distribution request to the CORS system but also send an ephemeris acquisition request to the CORS system. After receiving the ephemeris acquisition request, the CORS system may acquire the navigation ephemeris of the first satellite from a satellite ephemeris database and transmit the navigation ephemeris of the first satellite to the mobile device, allowing the mobile device to acquire the navigation ephemeris of the first satellite. The navigation ephemeris of the first satellite may include a set of parameter lists for determining status information of the first satellite. Exemplarily, the CORS system may transmit the navigation ephemeris of the first satellite to the mobile device in the form of a binary stream.

[0056] For example, the mobile device may obtain status information of the first satellite based on the first observation data and the navigation ephemeris of the first satellite. If the first observation data includes only the first pseudorange observation data, the status information of the first satellite includes the satellite position and the satellite clock bias. If the first observation data includes only the first Doppler observation data, the status information of the first satellite includes the satellite velocity (i.e., the satellite traveling speed) and the satellite clock drift. If the first observation data includes the first pseudorange observation data and the first Doppler observation data, the satellite status information then includes the satellite position, the satellite clock bias, the satellite velocity, and the satellite clock drift.

[0057] For example, the number of first satellites may be N (N is a positive integer), and each first satellite may correspond to one pseudorange observation data, one Doppler observation data, one satellite position, one satellite clock bias, one satellite velocity, and one satellite clock drift at the same time. The satellite positions, satellite clock biases, satellite velocities, and satellite clock drifts corresponding to different first satellites may be different. For example, if the first observation data includes first pseudorange observation data, the satellite positions and satellite clock biases corresponding to each first satellite may be calculated based on the received first pseudorange observation data and the navigation ephemeris of the first satellite. If the first observation data includes first Doppler observation data, the satellite velocities and satellite clock drifts corresponding to each first satellite may be calculated based on the received first Doppler observation data and the navigation ephemeris of the first satellite.

[0058] For example, a location in the embodiments of the present application may refer to a location in an Earth Centered Earth Fixed (ECEF) Cartesian coordinate system, in which the ECEF coordinate system has the Earth's center O as its coordinate origin, the Z axis points to the North Pole of the conventional Earth, the X axis points to an intersection of the prime meridian and the Earth's equator, and the X, Y, and Z axes together form a right-handed Cartesian coordinate system.

[0059] Exemplarily, when acquiring the first observation data, the signal-to-noise ratio of the first observation data and the altitude angle of the first satellite may be acquired. The signal-to-noise ratio, also known as the carrier-to-noise ratio, is a standard measurement scale expressing the relationship between a carrier and carrier noise. Each of the observation subdata corresponding to a first satellite included in the first observation data corresponds to a respective signal-to-noise ratio, and the signal-to-noise ratios of different types of observation subdata corresponding to any one of the first satellites may be the same or different. Exemplarily, the altitude angle of the first satellite refers to the angle between the direction line of a line connecting the satellite positioning device attached to the mobile device and the first satellite and the horizontal plane of the mobile device. Exemplarily, the signal-to-noise ratio of the first observation data and the altitude angle of the first satellite may be determined based on the first observation data by the CORS system and transmitted to the mobile device, or may be determined by the mobile device itself based on the first observation data; however, the embodiment of the present application is not limited thereto.

[0060] In step 303, a target positioning result for the mobile device is obtained based on the first observation data and the first positioning result.

[0061] The first observation data is observation data received by a satellite positioning device attached to the mobile device, and the first positioning result is a positioning result obtained using point cloud data scanned by a radar attached to the mobile device. Obtaining the target positioning result of the mobile device based on the first observation data and the first positioning result is advantageous in reducing the dependence of the positioning process on either the point cloud data or the first observation data. Even if the quality of the point cloud data or the first observation data is low, the accuracy of the target positioning result can be ensured by additionally taking other data into consideration, the probability of positioning failure can be reduced, and the robustness of positioning can be improved.

[0062] In one possible implementation manner, the implementation process of obtaining a target positioning result of the mobile device based on the first observation data and the first positioning result includes the following steps 3031 and 3032.

[0063] In step 3031, based on the first observation data, target data is acquired, including at least one of the first observation data and double-difference observation data calculated and acquired based on the first observation data and reference observation data received by a satellite positioning device attached to a reference station.

[0064] The target data is data necessary to obtain a target positioning result based on the first positioning result. The target data is data related to satellite observation, and the satellite observation data complements the point cloud data that serves as the basis for obtaining the first positioning result, thereby improving the accuracy of positioning. Exemplarily, the target data may include only the first observation data, only the double-difference observation data, or may further include the first observation data and the double-difference observation data. The specific situation of the target data may be set based on experience or flexibly adjusted according to the actual application scenario, and the embodiments of the present application are not limited thereto. Exemplarily, in a situation where the target data includes the first observation data and the double-difference observation data, the satellite observation data that serves as the basis for obtaining the target positioning result is more comprehensive, which is advantageous for further improving the accuracy of the target positioning result.

[0065] When the target data is different, the method for obtaining the target data based on the first observation data is different. Exemplarily, when the target data includes only the first observation data, the method for obtaining the target data based on the first observation data is to use the first observation data as the target data. Exemplarily, when the target data includes only double-difference observation data, the method for obtaining the target data based on the first observation data is to obtain reference observation data, calculate double-difference observation data based on the first observation data and the reference observation data, and use the double-difference observation data as the target data. Exemplarily, when the target data includes first observation data and double-difference observation data, the method for obtaining the target data based on the first observation data is to obtain reference observation data, calculate double-difference observation data based on the first observation data and the reference observation data, and use the data including the first observation data and the double-difference observation data as the target data.

[0066] The reference observation data is observation data received by a satellite positioning device attached to a reference station. The reference station may be any base station attached to a satellite positioning device, and the observation data for a first satellite received by the satellite positioning device attached to the reference station is the reference observation data. The reference observation data includes reference observation sub-data corresponding to the first satellite. Illustratively, the reference observation sub-data corresponding to the first satellite includes at least one of reference pseudorange observation sub-data, reference Doppler observation sub-data, and reference carrier phase observation sub-data corresponding to the first satellite.

[0067] Illustratively, the reference station is a base station with a fixed and known location, and therefore provides data support for the positioning of the mobile device. Illustratively, the reference observation data received by the satellite positioning device attached to the reference station may be acquired by communicating with a CORS system or by communicating with the reference station, although the embodiments of the present application are not limited thereto.

[0068] After obtaining the reference observation data, double-difference observation data may be calculated based on the first observation data and the reference observation data. Exemplarily, the first observation data includes first pseudorange observation subdata and first carrier phase observation subdata corresponding to a first satellite, and the reference observation data includes reference pseudorange observation subdata and reference carrier phase observation subdata corresponding to the first satellite. The double-difference observation data includes pseudorange double-difference observation data and carrier phase double-difference observation data. In some embodiments, the double-difference observation data may be in other situations, which will not be listed here one by one.

[0069] For example, the pseudorange double-difference observation data includes pseudorange double-difference observation values ​​corresponding to each of the other satellites other than the reference satellite among the first satellites, where the pseudorange double-difference observation value corresponding to any of the other satellites is a difference value between a first pseudorange observation differential value corresponding to any of the other satellites and a second pseudorange observation differential value corresponding to any of the other satellites, the first pseudorange observation differential value corresponding to any of the other satellites is a difference value between a first pseudorange observation sub-data corresponding to the reference satellite and a first pseudorange observation sub-data corresponding to any of the other satellites, and the second pseudorange observation differential value corresponding to any of the other satellites is a difference value between a reference pseudorange observation sub-data corresponding to the reference satellite and a reference pseudorange observation sub-data corresponding to any of the other satellites. The reference satellite is any of the first satellites and may be selected based on experience.

[0070] For example, if the first satellite 1 is taken as the reference satellite, the pseudorange double difference observation value corresponding to the first satellite 2 is: TIFF0007755070000001.tif5170, where: TIFF0007755070000002.tif5170 represents the first pseudorange observation subdata corresponding to the first satellite 1, TIFF0007755070000003.tif5170 represents the first pseudorange observation subdata corresponding to the first satellite 2, TIFF0007755070000004.tif5170 represents the reference pseudorange observation subdata corresponding to the first satellite 1, TIFF0007755070000005.tif5170 represents the reference pseudorange observation sub-data corresponding to the first satellite 2.

[0071] Illustratively, the carrier phase double difference observation data includes carrier phase double difference observation values ​​corresponding to each of the other satellites other than the reference satellite among the first satellites, and the carrier phase double difference observation value corresponding to any of the other satellites is a differential value between a first carrier phase observation differential value corresponding to any of the other satellites and a second carrier phase observation differential value corresponding to any of the other satellites, the first carrier phase observation differential value corresponding to any of the other satellites is a differential value between a first carrier phase observation sub-data corresponding to the reference satellite and a first carrier phase observation sub-data corresponding to any of the other satellites, and the second carrier phase observation differential value corresponding to any of the other satellites is a differential value between a reference carrier phase observation sub-data corresponding to the reference satellite and a reference carrier phase observation sub-data corresponding to any of the other satellites.

[0072] For example, if the first satellite 1 is the reference satellite, the carrier phase double difference observation value corresponding to the first satellite 2 is: TIFF0007755070000006.tif5170, where: TIFF0007755070000007.tif5170 represents the first carrier phase observation subdata corresponding to the first satellite 1, TIFF0007755070000008.tif5170 represents the first carrier phase observation subdata corresponding to the first satellite 2, TIFF0007755070000009.tif5170 represents the reference carrier phase observation sub-data corresponding to the first satellite 1, TIFF0007755070000010.tif5170 represents the reference carrier phase observation sub-data corresponding to the first satellite 2.

[0073] For example, the double-difference observation data is obtained based on first observation data received by a satellite positioning device attached to a mobile device and reference observation data received by a satellite positioning device attached to a reference station, and the double-difference observation data can take into account not only differences between observation sub-data of the same satellite received by the satellite positioning device attached to the mobile device and the satellite positioning device attached to the reference station, but also differences between observation sub-data of different satellites received by the same satellite positioning device (the satellite positioning device attached to the mobile device or the satellite positioning device attached to the reference station). Taking into account the double-difference observation data can eliminate certain errors (e.g., errors due to atmospheric delay, errors due to satellite clock bias, and mobile device clock bias, etc.), which is advantageous to improving positioning accuracy.

[0074] In step 3032, a target positioning result is obtained based on the first positioning result, based on the target data.

[0075] The target data may include only the first observation data, may include only the double difference observation data, or may include both the first observation data and the double difference observation data. When the target data is different, the specific implementation process for obtaining the target positioning result based on the first positioning result based on the target data is different. The specific implementation process for obtaining the target positioning result based on the first positioning result based on the target data will be described in detail below and will not be repeated here.

[0076] Exemplarily, the process of obtaining a target positioning result based on the first positioning result and the target data is realized according to a result obtaining method corresponding to the target data, and the result obtaining method corresponding to the target data is used to indicate how to obtain the target positioning result based on the first positioning result and the target data. The result obtaining method corresponding to the target data may be set based on experience or may be flexibly adjusted based on the application scenario, and the embodiments of the present application are not limited thereto. Exemplarily, the result obtaining method corresponding to the target data in different cases is different, and the result obtaining method corresponding to the target data in each case may be one of a plurality of candidate methods, and each candidate method corresponds to one specific implementation process.

[0077] It should be noted that the above steps 3031 and 3032 are exemplary implementations of obtaining a target positioning result for a mobile device based on the first observation data and the first positioning result, and the embodiments of the present application are not limited thereto. In some embodiments, the first observation data can be directly defaulted as data required to obtain a target positioning result based on the first positioning result, thereby directly obtaining a target positioning result based on the first observation data and the first positioning result.

[0078] In the positioning method according to the embodiment of the present application, the final target positioning result of the mobile device is obtained by comprehensively taking into account the point cloud data scanned by the radar attached to the mobile device and the first observation data received by the satellite positioning device, and the point cloud data and the first observation data can complement each other. This positioning method can reduce the dependency on either the point cloud data or the first observation data. Even if the quality of the point cloud data or the first observation data is poor, a more accurate target positioning result can be obtained by additionally taking into account the other data, which is highly robust and advantageous for meeting actual positioning needs.

[0079] Furthermore, the target data required to obtain a target positioning result based on the first positioning result is data related to satellite observation, and the data related to satellite observation is mutually complementary with the point cloud data on which the first positioning result is obtained, thereby improving the accuracy of the positioning. When the target data includes the first observation data and the double-difference observation data, the data related to satellite observation on which the target positioning result is obtained is more comprehensive, which is advantageous to further improve the accuracy of the target positioning result.

[0080] The double-difference observation data can take into account not only the difference between the observation sub-data of the same satellite received by the satellite positioning equipment attached to the mobile device and the satellite positioning equipment attached to the reference station, but also the difference between the observation sub-data of different satellites received by the same satellite positioning equipment (the satellite positioning equipment attached to the mobile device or the satellite positioning equipment attached to the reference station). Taking into account the double-difference observation data can eliminate certain errors (e.g., errors due to atmospheric delay, errors due to satellite clock bias, and mobile device clock bias, etc.), which is advantageous to improving the accuracy of positioning.

[0081] The embodiment of the present application provides an implementation process for obtaining a target positioning result based on a first positioning result and target data, which is a specific implementation process when the target data includes first observation data and double-difference observation data. Take the application of the method to a mobile device 110 as an example. As shown in FIG. 5, the method according to the embodiment of the present application may include the following steps 501 and 502:

[0082] In step 501, the first positioning result is corrected using the first observation data to obtain a first corrected result.

[0083] The first correction result is a result obtained by correcting the first positioning result using the first observation data, and illustratively, the type of parameters included in the first correction result is the same as the type of parameters included in the first positioning result. Illustratively, the process of correcting the first positioning result using the first observation data can be realized using a first filter. Illustratively, the first filter may be any filter, and illustratively, the type of the first filter may include, but is not limited to, a Kalman filter, an extended Kalman filter, an unscented Kalman filter, a robust Kalman filter, etc., and the embodiments of the present application are not limited thereto.

[0084] In one possible implementation, as shown in FIG. 5, an implementation process of correcting the first positioning result using the first observation data to obtain the first corrected result includes the following steps 5011 to 5014.

[0085] In step 5011, first state parameters of a first filter are obtained based on the first positioning result, and a first state covariance matrix corresponding to the first state parameters is obtained.

[0086] The first state parameter is a state parameter to be updated that the first filter has. For example, the type of the parameter in the state parameter of the first filter includes the type of parameter in the positioning result of the mobile device. For example, if the type of parameter in the positioning result of the mobile device includes position and velocity, the state parameter is: TIFF0007755070000011.tif5170, where [ ] T denotes the transpose of a matrix, TIFF0007755070000012.tif4170 and TIFF0007755070000013.tif4170 represent the position and velocity of the mobile device, respectively. TIFF0007755070000014.tif4170 represents the clock bias of the mobile device (i.e., the receiver clock bias), TIFF0007755070000015.tif4170 represents the clock drift of a mobile device (i.e., the receiver clock drift). TIFF0007755070000016.tif4170 and TIFF0007755070000017.tif4170 is the position and velocity in the ECEF coordinate system.

[0087] In an exemplary embodiment, the manner of obtaining the first state parameters of the first filter based on the first positioning result may be to use the first positioning result as the first state parameters. In an exemplary embodiment, the manner of obtaining the first state parameters of the first filter based on the first positioning result may further be to use the first positioning result as initial state parameters and perform time updating on the initial state parameters to obtain the first state parameters.

[0088] The first state covariance matrix may characterize the correlation between the first state parameters, and the first state covariance matrix may be a diagonal matrix and also a symmetric matrix. Exemplarily, for a situation where the first positioning result is the first state parameter, the first state covariance matrix may be set empirically, for example, by Set it to TIFF0007755070000018.tif5170, where: TIFF0007755070000019.tif5170 represents a diagonal matrix. Illustratively, in a situation where the first positioning results are used as initial state parameters and the initial state parameters are time-updated to acquire the first state parameters, a method for acquiring the first state covariance matrix corresponding to the first state parameters may be to acquire an initial state covariance matrix corresponding to the initial state parameters, perform time-updating on the initial state covariance matrix, and use the covariance matrix acquired by time-updating as the first state covariance matrix corresponding to the first state parameters.

[0089] It is taken as an example that the first state parameters are obtained by performing time updates on the initial state parameters, and the first state covariance matrix is ​​obtained by performing time updates on the initial state covariance matrix.

[0090] In the process of time updating the initial state parameters, the initial state parameters are updated one or more times, and the initial state parameters of the first filter are set as It can also be written as TIFF0007755070000020.tif5170, TIFF0007755070000021.tif5170 is considered to be the state parameters at time 0 of the first filter, and the initial state covariance matrix of the first filter is It can also be written as TIFF0007755070000022.tif5170, TIFF0007755070000023.tif5170 is considered to be the state covariance matrix at time 0 of the first filter, and the next (at time 1) state parameters for time updating the first filter are TIFF0007755070000024.tif5170, and the state covariance matrix TIFF0007755070000025.tif5170. By analogy, the state parameters of the first filter at time t can be written as TIFF0007755070000026.tif5170, and the state covariance matrix at time t can be written as TIFF0007755070000027.tif5170, and assuming the current time is time t, TIFF0007755070000028.tif5170 is the first state parameter of the first filter, TIFF0007755070000029.tif5170 is the first state covariance matrix of the first filter.

[0091] Illustratively, the process of performing a time update on the initial state covariance matrix is: At time TIFF0007755070000030.tif4170, the filter state covariance matrix is Assuming the file is TIFF0007755070000031.tif5170, This includes calculating and obtaining the state covariance matrix of the filter at time TIFF0007755070000032.tif4170 based on the following equation 1. TIFF0007755070000033.tif6170 where, TIFF0007755070000034.tif5170 is the first filter TIFF0007755070000035.tif4170 represents the state covariance matrix at time, TIFF0007755070000036.tif5170 represents the state transition matrix, TIFF0007755070000037.tif5170 may be obtained by calculation based on the following formula 2: TIFF0007755070000038.tif5170 represents the noise covariance matrix, TIFF0007755070000039.tif5170 may be obtained by calculation based on the following formula 3: TIFF0007755070000040.tif5170 represents the transpose of the state transition matrix. TIFF0007755070000041.tif24170 where, TIFF0007755070000042.tif4170 represents the time difference between adjacent epochs, TIFF0007755070000043.tif4170 represents the identity matrix, TIFF0007755070000044.tif4170 represents the associated time of a Markov process, which is usually an empirical value. TIFF0007755070000045.tif40170 where, TIFF0007755070000046.tif4170 represents the time difference between adjacent epochs, TIFF0007755070000047.tif5170 shows the velocity noise of the first filter. TIFF0007755070000048.tif5170 may be calculated based on the variance values ​​corresponding to the historical velocity sequence and the time differences of adjacent epochs; TIFF0007755070000049.tif4170 shows the clock bias noise of the first filter. TIFF0007755070000050.tif4170 may be calculated based on the variance values ​​corresponding to the historical clock bias sequence and the time differences of adjacent epochs; TIFF0007755070000051.tif4170 shows the clock drift noise of the first filter. TIFF0007755070000052.tif4170 may be calculated and obtained based on the dispersion value corresponding to the historical clock drift sequence and the time difference between adjacent epochs. Exemplarily, the historical velocity sequence, the historical clock bias sequence, and the historical clock drift sequence may be determined from the historical positioning results corresponding to the mobile device by a time sliding window. Exemplarily, the historical positioning result information corresponding to the mobile device may refer to the positioning results obtained in the process of decomposing the state parameters of the mobile device based on the first observation data.

[0092] Illustratively, the process of performing time updates on the initial state parameters is: At time TIFF0007755070000053.tif4170, the state parameters of the first filter are calculated and obtained based on Equation 4. TIFF0007755070000054.tif5170where, TIFF0007755070000055.tif5170 is the first filter TIFF0007755070000056.tif4170 represents the state parameters at time, TIFF0007755070000057.tif5170 is the first filter TIFF0007755070000058.tif4170 represents the state parameters at time, TIFF0007755070000059.tif5170 represents the state transition matrix.

[0093] The time update process for the initial state parameters of the first filter can be realized by Equation 4, and the time update process for the initial state covariance matrix of the first filter can be realized by the above Equations 1 to 3. After completing the time update, the state parameters of the first filter are called the first state parameters, and the state covariance matrix of the first filter is called the first state covariance matrix.

[0094] In step 5012, in response to the first observation data satisfying the first screening condition, a first observation residual matrix is ​​obtained based on the first observation data and the first state parameters, and a first measurement update matrix and a first measurement variance matrix corresponding to the first observation residual matrix are determined.

[0095] The first observation data satisfying the first screening condition indicates that the first observation data is reliable and can be directly used to update the first state parameters. In the process of updating the first state parameters using the first observation data, it is first necessary to obtain a first observation residual matrix based on the first observation data and the first state parameters, and then determine a first measurement update matrix and a first measurement variance matrix corresponding to the first observation residual matrix. The first measurement variance matrix, the first measurement update matrix, and the first observation residual matrix are matrices required to update the first state parameters of the first filter, determined based on the first observation data and the first state parameters.

[0096] Illustratively, the first observation residual matrix is ​​constructed based on the first observation data, the first state parameters, and state information of the satellite that is the subject of the first observation data (i.e., the first satellite), the first measurement update matrix is ​​a Jacobian matrix related to the first state parameters of the first observation residual matrix, and the first measurement variance matrix is ​​constructed based on the signal-to-noise ratio of the first observation data and the altitude angle of the satellite that is the subject of the first observation data. The principles for obtaining the first observation residual matrix, the first measurement update matrix, and the first measurement variance matrix are the same as the principles for obtaining the initial observation residual matrix, the initial Jacobian matrix, and the initial measurement variance matrix in the embodiment shown in FIG. 8, and will not be repeated here. Illustratively, the first measurement variance matrix may further be constructed based on the signal-to-noise ratio of the first observation data, the altitude angle of the satellite that is the subject of the first observation data, and the observation random error model factors (e.g., pseudorange observation random error model factors, Doppler observation random error model factors) obtained by decomposition in the embodiment shown in FIG. 8.

[0097] For example, when the first observation data includes first pseudorange observation data and first Doppler observation data, the first observation residual matrix includes a first pseudorange observation residual matrix and a first Doppler observation residual matrix, the first measurement update matrix includes a first pseudorange measurement update matrix and a first Doppler measurement update matrix, and the first measurement covariance matrix includes a first pseudorange measurement covariance matrix and a first Doppler measurement covariance matrix. Of course, the first observation data may be in other states, and the states of the first observation residual matrix, the first measurement update matrix, and the first measurement covariance matrix change with changes in the state of the first observation data. For example, if the first observation data includes only first pseudorange observation data, the first observation residual matrix includes only the first pseudorange observation residual matrix, the first measurement update matrix includes only the first pseudorange measurement update matrix, and the first measurement covariance matrix includes only the first pseudorange measurement covariance matrix. If the first observation data includes only the first Doppler observation data, the first observation residual matrix includes only the first Doppler observation residual matrix, the first measurement update matrix includes only the first Doppler measurement update matrix, and the first measurement variance matrix includes only the first Doppler measurement variance matrix.

[0098] In an exemplary embodiment, the process of determining whether the first observation data satisfies the first screening condition includes the following steps a and b.

[0099] In step a, model validation parameter values ​​corresponding to a first filter are determined based on the first observation data, the first state parameters, and the first state covariance matrix.

[0100] The model validation parameter values ​​can be used to determine whether the first filter system is faulty. In one possible implementation, the implementation process for determining the model validation parameter values ​​corresponding to the first filter based on the first observation data, the first state parameters, and the first state covariance matrix includes the steps of: obtaining a first observation residual matrix based on the first observation data and the first state parameters; determining a first measurement update matrix and a first measurement variance matrix corresponding to the first observation residual matrix; and determining the model validation parameter values ​​corresponding to the first filter based on the first observation residual matrix, the first measurement update matrix, the first measurement variance matrix, and the first state covariance matrix. The manner of obtaining the first observation residual matrix, the first measurement update matrix, the first measurement variance matrix, and the first state covariance matrix will be described later, and will not be repeated here.

[0101] Exemplarily, the first observation data includes at least one of first pseudorange observation data and first Doppler observation data. If the first observation data includes the first pseudorange observation data, the first observation residual matrix includes a first pseudorange observation residual matrix, the first measurement update matrix includes a first pseudorange measurement update matrix, the first measurement variance matrix includes a first pseudorange measurement variance matrix, and the model validation parameter value corresponding to the first filter includes a pseudorange model validation parameter value, which is determined based on the first pseudorange measurement update matrix, the first pseudorange measurement variance matrix, the first state covariance matrix, and the first pseudorange observation residual matrix. Exemplarily, the pseudorange model validation parameter value is calculated and obtained based on Equation 5. TIFF0007755070000060.tif8170 where, TIFF0007755070000061.tif5170 represents the pseudorange model validation parameter values, TIFF0007755070000062.tif5170 represents the first state covariance matrix, TIFF0007755070000063.tif5170 represents the first pseudorange observation residual matrix, TIFF0007755070000064.tif5170 represents the transpose of the first pseudorange observation residual matrix, TIFF0007755070000065.tif5170 represents the first pseudorange measurement covariance matrix, TIFF0007755070000066.tif5170 represents a first pseudorange measurement update matrix, which is a Jacobian matrix. A Jacobian matrix is ​​a matrix formed by arranging first-order partial derivatives in a certain manner; TIFF0007755070000067.tif6170 represents the transpose of the first pseudorange measurement update matrix.

[0102] If the first observation data includes first Doppler observation data, the first observation residual matrix includes a first Doppler observation residual matrix, the first measurement update matrix includes a first Doppler measurement update matrix, the first measurement variance matrix includes a first Doppler measurement variance matrix, and the model validation parameter values ​​corresponding to the first filter include Doppler model validation parameter values, which are determined based on the first Doppler measurement update matrix, the first Doppler measurement variance matrix, the first state covariance matrix, and the first Doppler observation residual matrix. Explicitly, the Doppler model validation parameter values ​​are calculated and obtained based on Equation 6. TIFF0007755070000068.tif8170 where, TIFF0007755070000069.tif5170 represents the Doppler model validation parameter values, TIFF0007755070000070.tif5170 represents the first state covariance matrix, TIFF0007755070000071.tif5170 represents the first Doppler observation residual matrix, TIFF0007755070000072.tif5170 represents the transpose of the first Doppler observation residual matrix, TIFF0007755070000073.tif5170 represents the first Doppler measurement covariance matrix, TIFF0007755070000074.tif5170 represents the first Doppler measurement update matrix, TIFF0007755070000075.tif6170 represents the transpose of the first Doppler measurement update matrix.

[0103] In an exemplary embodiment, the process of determining model validation parameter values ​​corresponding to the first filter based on the first observation data, the first state parameters, and the first state covariance matrix is ​​performed when it is determined that there is no jump in the first filter. If there is a jump in the first filter, the jump in the first filter is repaired, and then the subsequent operation, i.e., the process of determining model validation parameter values ​​corresponding to the first filter, is performed.

[0104] For example, the presence of a jump in the first filter may mean that at least one of a clock bias jump and a clock drift jump exists in the first filter. In this case, before performing model verification on the first filter, clock bias detection and clock drift detection are first performed. If it is detected that the clock bias jump and / or the clock drift jump exists in the first filter, the clock bias jump and / or the clock drift jump is repaired on the first filter, that is, the first state parameters and the first state covariance parameters of the first filter are updated (also referred to as resetting the first filter). If it is detected that the clock bias jump and the clock drift jump do not exist in the first filter, the first state parameters and the first state covariance matrix of the first filter are kept as they are.

[0105] In an exemplary embodiment, if the first pseudorange observation residual matrix satisfies the relationship shown in Equation 7 below, the method shown in Equation 8 below can be used to detect clock bias jumps for the first filter. TIFF0007755070000076.tif37170 where, TIFF0007755070000077.tif5170 is the first pseudorange observation residual matrix TIFF0007755070000078.tif5170 represents the median absolute deviation, TIFF0007755070000079.tif5170 is the first pseudorange observation residual matrix This represents the median of TIFF0007755070000080.tif5170. TIFF0007755070000081.tif5170 is the first pseudorange observation residual matrix TIFF0007755070000082.tif5170 represents the standard deviation, TIFF0007755070000083.tif5170 is the first pseudorange observation residual matrix TIFF0007755070000084.tif represents the average value of 5170, TIFF0007755070000085.tif5170 and TIFF0007755070000086.tif5170 is the clock bias detection threshold, TIFF0007755070000087.tif5170 is the first state covariance matrix TIFF0007755070000088.tif, line 5170 TIFF0007755070000089.tif5170 represents an element in column TIFF0007755070000090.tif5170 is the clock bias jump value, TIFF0007755070000091.tif12170 represents the clock bias detection value.

[0106] If TIFF0007755070000092.tif5170 is 0, it means that there is no clock bias jump in the first filter. If TIFF0007755070000093.tif5170 is equal to 1, it indicates that there is a clock bias jump in the first filter, and the clock bias jump can be repaired and the filter reset in the manner shown in Equation 9 below, that is, the first state parameter and the first state covariance matrix of the first filter can be set again. TIFF0007755070000094.tif17170 where, TIFF0007755070000095.tif5170 represents the position of the clock bias in the first state parameter x(t), TIFF0007755070000096.tif5170 is the first state parameter TIFF0007755070000097.tif5170 represents an element at position TIFF0007755070000098.tif5170 is the first state covariance matrix TIFF0007755070000099.tif5 represents the element at row 170 and column t. TIFF0007755070000100.tif5170 is the t-th row of the first state covariance matrix TIFF0007755070000101.tif5170 represents elements of the column, where t is a value between 1 and h, and h (an integer equal to or greater than 1) represents the number of columns of the first state covariance matrix. TIFF0007755070000102.tif5170 represents the first pseudorange observation residual matrix, TIFF0007755070000103.tif5170 is the first state covariance matrix TIFF0007755070000104.tif5170th line TIFF0007755070000105.tif5170 represents an element in the column, and SQR(100.0) represents opening 100.

[0107] Similar to the clock bias jump detection process above, the first Doppler observation residual matrix TIFF0007755070000106.tif5170 is used to detect and repair clock drift jumps. The clock drift jump detection method is the same as the clock bias jump detection method in principle, and will not be described again here.

[0108] If a clock drift jump is detected, the clock drift jump can be repaired and the filter can be reset in the manner shown in Equation 10 below, i.e., the first state parameters and the first state covariance matrix of the first filter can be set anew. TIFF0007755070000107.tif18170 where, TIFF0007755070000108.tif5170 represents the position of the clock drift in the first state parameter x(t), TIFF0007755070000109.tif5170 is the first state parameter TIFF0007755070000110.tif5170 represents the element at position TIFF0007755070000111.tif5170 is the first state covariance matrix TIFF0007755070000112.tif5 represents the element at row 170 and column t. TIFF0007755070000113.tif5170 is the first state covariance matrix TIFF0007755070000114.tif4170th line TIFF0007755070000115.tif5170 represents an element in column TIFF0007755070000116.tif5170 represents the first Doppler observation residual matrix, exemplarily: TIFF0007755070000117.tif5170 is the Doppler observation residual matrix without gross error, TIFF0007755070000118.tif9170 is the first Doppler observation residual matrix This represents the median of TIFF0007755070000119.tif5170. TIFF0007755070000120.tif5170 is the first state covariance matrix TIFF0007755070000121.tif5170th line Represents an element of the TIFF0007755070000122.tif5170 column. See Equation 9 for the meaning of other parameters.

[0109] In step b, in response to the model validation parameter value being smaller than the first threshold, a test result of the observation sub-data in the first observation data is obtained, and in response to all of the test results of the observation sub-data in the first observation data satisfying the retention condition, it is determined that the first observation data satisfies the first selection condition.

[0110] For example, in a situation where the model validation parameter value includes a pseudorange model validation parameter value and a Doppler model validation parameter value, the first threshold value includes a pseudorange model validation parameter threshold and a Doppler model validation parameter threshold, and a model validation parameter value being smaller than the first threshold value means that the pseudorange model validation parameter value is smaller than the pseudorange model validation parameter threshold and the Doppler model validation parameter value is smaller than the Doppler model validation parameter threshold. The pseudorange model validation parameter threshold and the Doppler model validation parameter threshold may be set based on experience or flexibly adjusted according to application scenarios, and the embodiments of the present application are not limited thereto. The pseudorange model validation parameter threshold and the Doppler model validation parameter threshold may be the same or different.

[0111] In an exemplary embodiment, the pseudorange model validation parameter value may be greater than or equal to the pseudorange model validation parameter threshold, in which case the first filter must be reset. In an exemplary embodiment, the Doppler model validation parameter value may be greater than or equal to the Doppler model validation parameter threshold, in which case the first filter must also be reset.

[0112] In one possible implementation, the process of obtaining a test result for the observation sub-data in the first observation data includes the steps of: performing a normalization process on the first observation residual matrix based on the first measurement update matrix, the first measurement variance matrix, and the first state covariance matrix to obtain a normalized residual matrix; testing the normalized residual matrix, one of whose elements is associated with one observation sub-data in the first observation data, based on a second residual covariance matrix constructed based on the first measurement update matrix, the first measurement variance matrix, and the first state covariance matrix, to obtain a test result corresponding to each element in the normalized residual matrix; and setting the test result corresponding to each element in the normalized residual matrix as the test result for the corresponding observation sub-data in the first observation data, thereby obtaining the test result for the observation sub-data in the first observation data.

[0113] For example, assume that the first observation data includes first pseudorange observation data and first Doppler observation data, where the first pseudorange observation data includes one or more pseudorange observation subdata, and the first Doppler observation data includes one or more Doppler observation subdata. In this case, the normalized residual matrix includes a normalized pseudorange residual matrix and a normalized Doppler residual matrix. Any element in the normalized pseudorange residual matrix is ​​associated with one pseudorange observation subdata in the first pseudorange observation data, and any element in the normalized Doppler residual matrix is ​​associated with one Doppler observation subdata in the first Doppler observation data. In this case, the test results corresponding to each element in the normalized pseudorange residual matrix are the test results for the corresponding pseudorange observation subdata in the first pseudorange observation data, and the test results corresponding to each element in the normalized Doppler residual matrix are the test results for the corresponding Doppler observation subdata in the first Doppler observation data.

[0114] Exemplarily, the normalized pseudorange residual matrix and the normalized Doppler residual matrix may be calculated and obtained based on Equation 11 and Equation 12, respectively. TIFF0007755070000123.tif21170 where, TIFF0007755070000124.tif5170 represents the normalized pseudorange residual matrix, TIFF0007755070000125.tif5170 represents the first state covariance matrix, TIFF0007755070000126.tif5170 represents the first pseudorange observation residual matrix, TIFF0007755070000127.tif5170 represents the first pseudorange measurement covariance matrix, TIFF0007755070000128.tif5170 represents the first pseudorange measurement update matrix, TIFF0007755070000129.tif6170 represents the transpose of the first pseudorange measurement update matrix, TIFF0007755070000130.tif5170 represents the normalized Doppler residual matrix, TIFF0007755070000131.tif5170 represents the first Doppler observation residual matrix, TIFF0007755070000132.tif5170 represents the first Doppler measurement covariance matrix, TIFF0007755070000133.tif5170 represents the first Doppler measurement update matrix, TIFF0007755070000134.tif6170 represents the transpose of the first Doppler measurement update matrix.

[0115] The second residual covariance matrix includes a second pseudorange residual covariance matrix and a second Doppler residual covariance matrix. The process of validating the normalized residual matrix based on the second residual covariance matrix and obtaining a validation result corresponding to each element in the normalized residual matrix includes the steps of validating the normalized pseudorange residual matrix based on the second pseudorange residual covariance matrix and obtaining a validation result corresponding to each element in the normalized pseudorange residual matrix, and validating the normalized Doppler residual matrix based on the second Doppler residual covariance matrix and obtaining a validation result corresponding to each element in the normalized Doppler residual matrix.

[0116] For example, the test result corresponding to the i-th element in the normalized pseudorange residual matrix (i.e., the test result corresponding to the i-th pseudorange observation sub-data in the first pseudorange observation data) is obtained by calculation based on Equation 13, and the test result corresponding to the i-th element in the normalized Doppler residual matrix (i.e., the test result corresponding to the i-th Doppler observation sub-data in the first Doppler observation data) is obtained by calculation based on Equation 14. TIFF0007755070000135.tif35170 where, TIFF0007755070000136.tif5170 is the normalized pseudorange residual matrix represents the i-th element in TIFF0007755070000137.tif5170, where i is a positive integer equal to or less than the number of pseudorange observation subdata in the first pseudorange observation data, TIFF0007755070000138.tif5170 is the normalized pseudorange residual matrix This represents the test result corresponding to the i-th element in TIFF0007755070000139.tif5170. TIFF0007755070000140.tif7170 represents the second pseudorange residual covariance matrix, TIFF0007755070000141.tif9170 represents the element in the i-th row and i-th column of the second pseudorange residual covariance matrix.

[0117] TIFF0007755070000142.tif5170 is the normalized Doppler residual matrix represents the i-th element in TIFF0007755070000143.tif5170, where i is a positive integer equal to or less than the number of Doppler observation subdata in the first Doppler observation data, TIFF0007755070000144.tif5170 is the normalized Doppler residual matrix This represents the test result corresponding to the i-th element in TIFF0007755070000145.tif5170. TIFF0007755070000146.tif7170 represents the second Doppler residual covariance matrix, TIFF0007755070000147.tif9170 represents the element in the i-th row and i-th column of the second Doppler residual covariance matrix.

[0118] In an exemplary embodiment, the test result of any observation subdata in the first observation data satisfies the hold condition, meaning that the test result of that observation subdata is equal to or less than the corresponding threshold. If the observation subdata is any pseudorange observation subdata, the test result of that observation subdata satisfies the hold condition, meaning that the test result of that pseudorange observation subdata is equal to or less than the first test threshold. If the observation subdata is any Doppler observation subdata, the test result of that observation subdata satisfies the hold condition, meaning that the test result of that Doppler subdata is equal to or less than the second test threshold. The first and second test thresholds may be set based on experience or flexibly adjusted according to application scenarios, and the embodiments of the present application are not limited thereto. The first and second test thresholds may be the same or different.

[0119] If the test results of each observation sub-data in the first observation data all satisfy the retention condition, i.e., if the test results of each pseudorange observation sub-data in the first pseudorange observation data are all below the first test threshold and the test results of each Doppler observation sub-data in the first Doppler observation data are all below the second test result, it is determined that the first observation data satisfies the first selection condition.

[0120] For example, if the test result of each observation sub-data in the first observation data does not satisfy the retention condition, it is determined that the first observation data does not satisfy the first filtering condition. The observation sub-data whose test result does not satisfy the retention condition are removed to obtain second observation data, and then a subsequent operation is performed based on the second observation data, i.e., the first positioning result is corrected based on the second observation data. For example, the process of removing the observation sub-data whose test result does not satisfy the retention condition can be regarded as a process of removing gross errors of satellite data that cause divergence of the first filter from the first observation data by detecting gross errors for the first observation data based on the first observation residual matrix and a normal distribution test.

[0121] It should be noted that the above-described manner of determining whether the first observation data satisfies the first selection condition is merely illustrative, and the embodiments of the present application are not limited thereto. For example, the first observation data may be determined to satisfy the first selection condition in response to the model validation parameter being smaller than a first threshold. Furthermore, the first observation data may be determined to satisfy the first selection condition by directly obtaining the test results of the observation sub-data in the first observation data, and the first observation data may be determined to satisfy the first selection condition in response to the test results of all the observation sub-data in the first observation data satisfying the retention condition.

[0122] In step 5013, a first parameter increment is determined based on the first observation residual matrix, the first measurement update matrix, the first measurement variance matrix, and the first state covariance matrix, and the sum of the first parameter increment and the first state parameter is set as the updated first state parameter of the first filter.

[0123] Exemplarily, the first parameter increment includes at least one of a first pseudorange state parameter increment and a first Doppler state parameter increment. In the embodiment of the present application, the first parameter increment includes a first pseudorange parameter increment and a first Doppler parameter increment, and in this case, the updated first state parameter includes an updated first pseudorange state parameter and an updated first Doppler state parameter.

[0124] For example, the updated first pseudorange state parameter is obtained by calculation based on the following Equation 15. TIFF0007755070000148.tif14170 where, TIFF0007755070000149.tif5170 represents the first pseudorange state parameters after the update. TIFF0007755070000150.tif5170 represents the first pseudorange state parameter, TIFF0007755070000151.tif5170 represents the first state covariance matrix, TIFF0007755070000152.tif5170 represents the first pseudorange measurement update matrix, TIFF0007755070000153.tif6170 represents the transpose of the first pseudorange measurement update matrix, TIFF0007755070000154.tif6170 represents the first pseudorange measurement covariance matrix, TIFF0007755070000155.tif5170 represents the first pseudorange observation residual matrix, TIFF0007755070000156.tif9170 represents the first pseudorange parameter increment. TIFF0007755070000157.tif5170 can represent the pseudorange filter gain.

[0125] For example, the updated first Doppler state parameter is obtained by calculation based on the following Equation 16. TIFF0007755070000158.tif14170 where, TIFF0007755070000159.tif5170 represents the updated first Doppler state parameters, TIFF0007755070000160.tif5170 represents the first Doppler state parameter, TIFF0007755070000161.tif5170 represents the first state covariance matrix, TIFF0007755070000162.tif5170 represents the first Doppler measurement update matrix, TIFF0007755070000163.tif6170 represents the transpose of the first Doppler measurement update matrix, TIFF0007755070000164.tif6170 represents the first Doppler measurement covariance matrix, TIFF0007755070000165.tif5170 represents the first Doppler observation residual matrix, TIFF0007755070000166.tif9170 represents the first Doppler parameter increment. TIFF0007755070000167.tif5170 can represent the Doppler filter gain.

[0126] In step 5014, in response to the updated first state parameter satisfying the first reference condition, a first correction result is obtained based on the updated first state parameter.

[0127] The types of parameters included in the updated first state parameters cover the types of parameters that need to be included in the positioning results of the mobile device, and after obtaining the updated first state parameters, parameters whose types are the types of parameters that need to be included in the positioning results of the mobile device are extracted from the updated first state parameters to form a first correction result.

[0128] Illustratively, the process of determining whether the updated first state parameter satisfies the first criterion condition includes the steps of: determining a covariance increment based on the first measurement update matrix, the first measurement variance matrix, and the first state covariance matrix; and defining the product of the covariance increment and the first state covariance matrix as the updated first state covariance matrix; detecting a correction amount for the first parameter increment based on the updated first state covariance matrix; and, in response to the detection of the correction amount being successful, testing the first observation residual matrix based on the first residual covariance matrix constructed based on the updated first state covariance matrix, the first measurement variance matrix, and the first measurement update matrix to obtain a test result corresponding to each element in the first observation residual matrix; and, in response to the test results corresponding to each element in the first observation residual matrix all satisfying the test condition, determining that the updated first state parameter satisfies the first criterion condition.

[0129] For example, the covariance increment may include at least one of a pseudorange covariance increment and a Doppler covariance increment. For example, if the covariance increment includes the pseudorange covariance increment, the updated first state covariance matrix may be obtained by calculation based on Equation 17. TIFF0007755070000168.tif8170 where, TIFF0007755070000169.tif5170 represents the updated first state covariance matrix, TIFF0007755070000170.tif5170 represents the first state covariance matrix, I represents the identity matrix, and for the meaning of the other parameters, see Equation 15.

[0130] For example, if the covariance increment includes a Doppler covariance increment, the updated first state covariance matrix may be obtained by calculation based on Equation 18. TIFF0007755070000171.tif8170 where, TIFF0007755070000172.tif5170 represents the updated first state covariance matrix, TIFF0007755070000173.tif5170 represents the first state covariance matrix, TIFF0007755070000174.tif4170 represents the identity matrix, and for the meaning of the other parameters, see Equation 16.

[0131] Illustratively, if the first parameter increment is a first pseudorange parameter increment, the process of detecting a correction amount for the first parameter increment based on the updated first state covariance matrix is ​​as follows: TIFF0007755070000175.tif11170 as a measurement index corresponding to the i-th element in the first pseudorange parameter increment, and if all of the measurement indexes corresponding to the elements in the first pseudorange parameter increment are equal to or less than the first index threshold, determining that detection of the correction amount for the first pseudorange parameter increment has been successful. TIFF0007755070000176.tif5170 is the first pseudorange parameter increment represents the i-th element in TIFF0007755070000177.tif4170, TIFF0007755070000178.tif5170 represents the element in the i-th row and i-th column of the updated first state covariance matrix. As can be seen from Equation 15, the first pseudorange parameter increment The file is TIFF0007755070000179.tif9170.

[0132] Illustratively, if the first parameter increment is a first Doppler parameter increment, the process of detecting a correction amount for the first parameter increment based on the updated first state covariance matrix includes: TIFF0007755070000180.tif11170 as a measurement index corresponding to the i-th element in the first Doppler parameter increment, and if all of the measurement indexes corresponding to the elements in the first Doppler parameter increment are equal to or less than the second index threshold, determining that detection of the correction amount for the first Doppler parameter increment has been successful. TIFF0007755070000181.tif5170 is the first Doppler parameter increment represents the i-th element in TIFF0007755070000182.tif4170, TIFF0007755070000183.tif5170 represents the element in the i-th row and i-th column of the updated first state covariance matrix. As can be seen from Equation 16, the first Doppler parameter increment The file is TIFF0007755070000184.tif9170.

[0133] For example, if the detection of the correction amount of the first pseudorange parameter increment and the first Doppler parameter increment both passes, the detection of the correction amount is deemed to be successful. If the detection of the first pseudorange parameter increment and / or the first Doppler parameter increment does not pass, the detection of the correction amount is deemed to be unsuccessful, and in this case, the first filter needs to be reset.

[0134] After determining that the correction amount detection is successful, a first residual covariance matrix is ​​constructed based on the updated first state covariance matrix, the first measurement variance matrix, and the first measurement update matrix, and the first observation residual matrix is ​​validated based on the first residual covariance matrix to obtain validation results corresponding to each element in the first observation residual matrix.

[0135] For example, the first residual covariance matrix includes a first pseudorange residual covariance matrix and a first Doppler residual covariance matrix, and the first observation residual matrix includes a first pseudorange observation residual matrix and a first Doppler observation residual matrix. Illustratively, the first observation residual matrix may be referred to as a verified observation residual matrix.

[0136] Illustratively, the test result of the i-th element in the first pseudorange observation residual matrix is ​​obtained by calculation according to Equation 19. TIFF0007755070000185.tif21170 where, TIFF0007755070000186.tif4170 represents the test result of the i-th element in the first pseudorange observation residual matrix. TIFF0007755070000187.tif5170 represents the first pseudorange measurement update matrix, TIFF0007755070000188.tif6170 represents the transpose of the first pseudorange measurement update matrix, TIFF0007755070000189.tif6170 represents the first pseudorange measurement covariance matrix, TIFF0007755070000190.tif5170 represents the updated first state covariance matrix, TIFF0007755070000191.tif6170 represents the i-th element in the first pseudorange observation residual matrix, where i is an integer equal to or less than the number of elements in the first pseudorange observation residual matrix; TIFF0007755070000192.tif9170 represents the first pseudorange residual covariance matrix, TIFF0007755070000193.tif11170 represents the element in the i-th row and i-th column of the first pseudorange residual covariance matrix.

[0137] Illustratively, the test result of the i-th element in the first Doppler observation residual matrix is ​​obtained by calculation according to Equation 20. TIFF0007755070000194.tif22170 where, TIFF0007755070000195.tif4170 represents the test result of the i-th element in the first Doppler observation residual matrix. TIFF0007755070000196.tif5170 represents the first Doppler measurement update matrix, TIFF0007755070000197.tif6170 represents the transpose of the first Doppler measurement update matrix, TIFF0007755070000198.tif6170 represents the first Doppler measurement covariance matrix, TIFF0007755070000199.tif5170 represents the updated first state covariance matrix, TIFF0007755070000200.tif7170 represents the i-th element in the first Doppler observation residual matrix, where i is an integer equal to or less than the number of elements in the first Doppler observation residual matrix; TIFF0007755070000201.tif9170 represents the first Doppler residual covariance matrix, TIFF0007755070000202.tif11170 represents the element in the i-th row and i-th column of the first Doppler residual covariance matrix.

[0138] For example, when a test result corresponding to a certain element satisfies the test condition, it means that the test result of the element is smaller than the corresponding threshold. For example, when all test results corresponding to each element in the first observation residual matrix satisfy the test condition, it means that all test results corresponding to each element in the first pseudorange observation residual matrix are smaller than the first target threshold, and all test results corresponding to each element in the first Doppler observation residual matrix are smaller than the second target threshold. The first target threshold and the second target threshold are set based on experience or flexibly adjusted according to the application scenario. The first target threshold and the second target threshold may be the same or different.

[0139] When it is determined that all of the test results corresponding to the elements in the first observation residual matrix satisfy the test condition, it is determined that the updated first state parameters satisfy the first reference condition.

[0140] In an exemplary embodiment, if the test result corresponding to an element does not satisfy the test condition, it is determined that the updated first state parameter does not satisfy the first reference condition, and the observation sub-data associated with the element is removed from the first observation data to obtain filtered observation data, and subsequent operations are performed based on the filtered observation data, i.e., the first positioning result is corrected based on the filtered observation data.

[0141] It should be noted that the above-described method for determining whether the updated first state parameter satisfies the first criterion condition is merely an illustrative example, and the embodiments of the present application are not limited thereto. In some embodiments, the updated first state parameter may be considered to satisfy the first criterion condition if the correction amount detection is successful. In some embodiments, the correction amount detection may not be performed, and only test results corresponding to each element in the first observation residual matrix may be obtained. The updated first state parameter may be determined to satisfy the first criterion condition only if all the test results corresponding to each element in the first observation residual matrix satisfy the test condition.

[0142] For example, the processing process related to the first filter can be seen in Figure 6. The first filter is initialized, a time update is performed on the initialized first filter, and a measurement update is performed on the first filter after the time update. In the process of performing the measurement update on the first filter after the time update, clock bias jumps and clock drift jumps are first detected and repaired on the first filter, gross errors are then detected based on a normal distribution test, and model verification and repair are performed on the first filter based on the observation data from which the gross errors have been removed. After the model verification and repair, the update decomposition verification and repair for the first filter are completed by detecting the correction amount and testing the verified observation residual matrix.

[0143] In step 502, the first correction result is corrected using the double difference observation data to obtain a second correction result, and the second correction result is set as the target positioning result.

[0144] The second correction result is obtained by correcting the first correction result using double-difference observation data, and is more reliable than the first correction result. After obtaining the second correction result, using the second correction result as the target positioning result of the mobile device is advantageous in ensuring the reliability of the target positioning result and improving the positioning accuracy and positioning robustness of the target positioning result.

[0145] In one possible implementation, the process of correcting the first correction result using double-difference observation data to obtain the second correction result may be implemented using a second filter. As shown in Figure 5, the process of correcting the first correction result using double-difference observation data to obtain the second correction result includes the following steps 5021 to 5024.

[0146] In step 5021, second state parameters of the second filter are determined based on the first correction result, and a second state covariance matrix corresponding to the second state parameters is obtained.

[0147] The second filter is a filter for correcting the first correction result using double-difference observation data, and the type of the second filter may include, but is not limited to, a Kalman filter, an extended Kalman filter, an unscented Kalman filter, a robust Kalman filter, etc., and the embodiments of the present application are not limited thereto.

[0148] The second state parameters are state parameters to be updated that the second filter has, and illustratively, the parameter type of the state parameters of the second filter includes the parameter type of the positioning result of the mobile device, for example, a location type. Exemplarily, the double difference observation data includes carrier phase observation data, and the parameter type of the state parameters of the second filter further includes an integer bias type. The integer bias, also known as integer ambiguity, is an integer ambiguity corresponding to the first observation value of the phase difference between the carrier phase and the reference phase during carrier phase measurement in global positioning system technology.

[0149] In an exemplary embodiment, the manner of acquiring the second state parameter of the second filter based on the first correction result may be to set a state parameter including the position of the first positioning result and an initial value of the integer bias as the second state parameter. In an exemplary embodiment, the manner of acquiring the second state parameter of the second filter based on the first correction result may be to set a state parameter including the position of the first positioning result and an initial value of the integer bias as the second initial state parameter, and perform time update on the second initial state parameter to acquire the second state parameter.

[0150] The second state covariance matrix may characterize the correlation between the second state parameters, and the second state covariance matrix may be a diagonal matrix and similarly a symmetric matrix. For example, in a situation where the state parameters including the position of the first positioning result and the initial value of the integer bias are used as the second state parameters, the second state covariance matrix may be empirically set. For example, in a situation where the state parameters including the position of the first positioning result and the initial value of the integer bias are used as the second initial state parameters and the second state parameters are acquired by performing a time update on the second initial state parameters, a method for acquiring the second state covariance matrix corresponding to the second state parameters may include acquiring a second initial state covariance matrix corresponding to the second initial state parameters, performing a time update on the second initial covariance matrix, and setting the covariance matrix acquired by the time update as the second state covariance matrix corresponding to the second state parameters.

[0151] In step 5022, in response to the doubly-differenced observed data satisfying the second screening condition, a doubly-differenced observed residual matrix is ​​obtained based on the doubly-differenced observed data and the second state parameters, and a doubly-differenced measurement update matrix and a doubly-differenced measurement variance matrix corresponding to the doubly-differenced observed residual matrix are determined.

[0152] The fact that the double-differenced observed data satisfy the second screening condition indicates that the double-differenced observed data is reliable and can be directly used to update the second state parameters. In the process of updating the second state parameters using the double-differenced observed data, it is first necessary to obtain a double-differenced observed residual matrix based on the double-differenced observed data and the second state parameters, and then determine a double-differenced measurement update matrix and a double-differenced measurement variance matrix corresponding to the double-differenced observed residual matrix. The double-differenced measurement variance matrix, the double-differenced measurement update matrix, and the double-differenced observed residual matrix are matrices required to update the second state parameters of the second filter, determined based on the double-differenced observed data and the second state parameters.

[0153] In one possible implementation, the process of obtaining a double-differenced observed residual matrix based on the double-differenced observed data and the second state parameters includes: obtaining double-differenced estimated data based on the second state parameters; and constructing a double-differenced observed residual matrix based on the double-differenced observed data and the double-differenced estimated data.

[0154] For example, when the double-difference observation data includes pseudorange double-difference observation data and carrier phase double-difference observation data, the double-difference estimation data includes pseudorange double-difference estimation data and carrier phase double-difference estimation data. Of course, the double-difference observation data may be in other situations, and the situation of the double-difference estimation data changes with changes in the situation of the double-difference observation data. For example, when the double-difference observation data only includes pseudorange double-difference observation data, the double-difference estimation data only includes pseudorange double-difference estimation data, and when the double-difference observation data only includes carrier phase double-difference observation data, the double-difference estimation data only includes carrier phase double-difference estimation data.

[0155] For example, the pseudorange double-difference estimation data includes pseudorange double-difference estimation values ​​corresponding to each of the other satellites other than the reference satellite among the first satellites, and the carrier phase double-difference estimation data includes carrier phase double-difference estimation values ​​corresponding to each of the other satellites, and the pseudorange double-difference estimation values ​​corresponding to any of the other satellites and the carrier phase double-difference estimation values ​​corresponding to any of the other satellites are both obtained based on the difference between the first distance difference value and the second distance difference value corresponding to the any of the other satellites.

[0156] The first distance difference value corresponding to any other satellite means a difference value between the geometric distance between the reference satellite and the mobile device and the geometric distance between the any other satellite and the mobile device, and the second distance difference value corresponding to any other satellite means a difference value between the geometric distance between the reference satellite and the reference station and the geometric distance between the any other satellite and the reference station. The geometric distance between the satellite and the mobile device may be obtained by calculation based on the position in the satellite state information and the position in the second state parameters, and the geometric distance between the satellite and the reference station may be obtained by calculation based on the position in the satellite state information and the position of the reference station.

[0157] After obtaining the double-differenced observation data and the double-differenced estimation data, a double-differenced observation residual matrix is ​​constructed based on the double-differenced observation data and the double-differenced estimation data. Illustratively, the double-differenced observation data includes pseudorange double-differenced observation data and carrier-phase double-differenced observation data, and the double-differenced estimation data includes pseudorange double-differenced estimation data and carrier-phase double-differenced estimation data, in this case, the process of constructing the double-differenced observation residual matrix based on the double-differenced observation data and the double-differenced estimation data includes the steps of constructing a pseudorange double-differenced observation residual matrix based on the pseudorange double-differenced observation data and the pseudorange double-differenced estimation data, constructing a carrier-phase double-differenced observation residual matrix based on the carrier-phase double-differenced observation data and the carrier-phase double-differenced estimation data, and defining a matrix composed of the pseudorange double-differenced observation residual matrix and the carrier-phase double-differenced observation residual matrix as the double-differenced observation residual matrix.

[0158] For example, the constructing formulas of the pseudorange double-difference observation residual matrix and the carrier phase double-difference observation residual matrix are shown in Equation 21 and Equation 22, respectively. TIFF0007755070000203.tif46170 where, TIFF0007755070000204.tif5170 represents the pseudorange double difference residual matrix, TIFF0007755070000205.tif5170 represents the carrier phase double difference residual matrix, TIFF0007755070000206.tif5170 represents the geometric distance between a first satellite i (i=1, 2, ..., n) and the mobile device, where n (an integer equal to or greater than 2) is the number of first satellites; TIFF0007755070000207.tif5170 represents the geometric distance between the first satellite i and the reference station, where the first satellite i is the reference satellite. TIFF0007755070000208.tif5170 represents the pseudorange double difference observation corresponding to the first satellite, TIFF0007755070000209.tif5170 represents the carrier phase double difference observation corresponding to the first satellite 2, and so on. TIFF0007755070000210.tif5170 represents double difference ionospheric delay, TIFF0007755070000211.tif5170 represents double difference tropospheric delay, TIFF0007755070000212.tif6170 represents the integer bias, and the integer bias is an integer, TIFF0007755070000213.tif4170 represents the carrier wavelength. The double-difference ionospheric delay and the double-difference tropospheric delay may be set empirically, and the embodiments of the present application are not limited thereto. When constructing the double-difference observation residual matrix, the integer value bias may be initialized empirically.

[0159] After obtaining the pseudorange double-difference observation residual matrix and the carrier phase double-difference observation residual matrix, the pseudorange double-difference observation residual matrix and the carrier phase double-difference observation residual matrix are combined to obtain the double-difference observation residual matrix Get TIFF0007755070000214.tif9170.

[0160] After obtaining the double-differenced observation residual matrix, a double-differenced measurement update matrix and a double-differenced measurement variance matrix corresponding to the double-differenced observation residual matrix are determined. Exemplarily, the double-differenced measurement variance matrix may be constructed empirically or based on the signal-to-noise ratio of the double-differenced observation data and state information of the satellite that is the subject of the double-differenced observation data. Exemplarily, the double-differenced measurement update matrix may be a coefficient in a differential constraint equation constructed based on the double-differenced observation residual matrix. Exemplarily, the differential constraint equation is a double-differenced observation residual matrix. TIFF0007755070000215.tif9170 and the given increment matrix TIFF0007755070000216.tif4170. Illustratively, the differential constraint equation may be referred to as a Kalman correction equation, an RTK differential constraint correction equation, or the like. Illustratively, the differential constraint equation is shown in Equation 23. TIFF0007755070000217.tif9170 where, TIFF0007755070000218.tif4170 are the coefficients of the difference constraint equation (i.e., the double-differenced measurement update matrix), and H denotes the Jacobian matrix related to the second state parameters of the double-differenced observation residual matrix. Illustratively, the formula for H is shown in Equation 24: TIFF0007755070000219.tif40170 where, TIFF0007755070000220.tif5170 represents the unit observation vector from the mobile device to the first satellite s (s=1, 2, ..., n), and λ represents the carrier wavelength.

[0161] In an exemplary embodiment, a method for determining whether the doubly-differenced observation data satisfies the second selection condition may include detecting gross errors in the doubly-differenced observation residual matrix, and determining that the doubly-differenced observation data satisfies the second selection condition if the detection result indicates that no data to be removed exists in the doubly-differenced observation data. Exemplarily, a method for detecting gross errors in the doubly-differenced observation residual matrix may include detecting gross errors in the doubly-differenced observation residual matrix based on quartiles or detecting gross errors in the doubly-differenced observation residual matrix based on median absolute deviation, although the embodiments of the present application are not limited thereto.

[0162] In step 5023, a second parameter increment is determined based on the double-differenced observation residual matrix, the double-differenced measurement update matrix, the double-differenced measurement variance matrix, and the second state covariance matrix, and the sum of the second parameter increment and the second state parameter is the updated second state parameter of the second filter.

[0163] The second parameter increment is an increment for updating the second state parameter. Illustratively, the process of determining the second parameter increment based on the double-differenced observation residual matrix, the double-differenced measurement update matrix, the double-differenced measurement variance matrix, and the second state covariance matrix is ​​implemented according to Equation 25. TIFF0007755070000221.tif12170 where, TIFF0007755070000222.tif5170 represents the second parameter increment, TIFF0007755070000223.tif5170 represents the second state covariance matrix, which represents the relationship between each parameter in the second state parameters and may be set based on experience. TIFF0007755070000224.tif5170 represents the Kalman gain, TIFF0007755070000225.tif5170 represents the double difference measurement covariance matrix, H represents the double difference measurement update matrix, and H T represents the transpose of the double difference measurement update matrix, TIFF0007755070000226.tif9170 represents the doubly-differenced observation residual matrix.

[0164] In an example embodiment, the second state covariance matrix may be updated based on the Kalman gain and the double-difference measurement update matrix, and the update scheme is as shown in Equation 26. TIFF0007755070000227.tif6170 where, TIFF0007755070000228.tif5170 represents the updated second state covariance matrix, and for the meanings of the other parameters, see Equation 25.

[0165] In an exemplary embodiment, the process of determining whether the corrected parameter matrix satisfies the specified condition may be to determine that the corrected parameter matrix satisfies the specified condition if the corrected parameter matrix converges.

[0166] In step 5024, in response to the updated second state parameter satisfying the second reference condition, a second correction result is obtained based on the updated second state parameter.

[0167] In an exemplary embodiment, the process of determining whether the updated second state parameters satisfy the second criterion may include testing a correction amount against a verified double-difference observation residual matrix, and if the correction amount test passes, performing a normal distribution test on the verified pseudorange double-difference observation residual matrix and the verified carrier-phase double-difference observation residual matrix, respectively. If both the verified pseudorange double-difference observation residual matrix and the verified carrier-phase double-difference observation residual matrix pass the normal distribution test, it is determined that the updated second state parameters satisfy the second criterion. Illustratively, if the verified pseudorange double-difference observation residual matrix and / or the verified carrier-phase double-difference observation residual matrix do not pass the normal distribution test, it is determined that the updated second state parameters do not satisfy the second criterion, and data related to the pseudorange observation values ​​and / or carrier-phase observation values ​​that do not pass the normal distribution test must be removed from the double-difference observation data.

[0168] Illustratively, the validated double-differenced observation residual matrix is ​​a double-differenced observation residual matrix obtained based on the updated second state parameters and the double-differenced observation data. The pseudorange double-differenced observation residual matrix included in the validated double-differenced observation residual matrix is ​​referred to as the validated pseudorange double-differenced observation residual matrix, and the carrier-phase double-differenced observation residual matrix included in the validated double-differenced observation residual matrix is ​​referred to as the validated carrier-phase double-differenced observation residual matrix.

[0169] In an exemplary embodiment, the manner of obtaining the second correction result based on the updated second state parameters includes extracting parameters from the updated second state parameters, the types of which are parameters that need to be included in the positioning result of the mobile device, to form the second correction result. For example, the second correction result is formed by extracting location type parameters from the updated second state parameters.

[0170] In an exemplary embodiment, the updated second state parameters include a position float solution and an integer bias float solution, and the float solution has low accuracy. In such a case, obtaining the second correction result based on the updated second state parameters includes: fixing the integer bias float solution; in response to successful fixing of the integer bias float solution, calculating a position fixed solution using the integer bias fixed solution and setting the result including the position fixed solution as the second correction result; and in response to unsuccessful fixing of the integer bias float solution, setting the result including the position float solution as the second correction result.

[0171] For example, the method for fixing the float solution of the integer bias may be implemented using an improved least mean square ambiguity decorrelation adjustment algorithm (MLAMBDA). For example, the process of fixing the float solution of the integer bias based on MLAMBDA may be implemented based on a carrier phase double difference parameter value and a carrier phase double difference covariance matrix. The carrier phase double difference parameter value and the carrier phase double difference covariance matrix may be obtained by extracting from the state parameter and state covariance matrix of the second filter. If the fixation is successful, the position included in the second correction result is a fixed solution calculated based on the fixation of the integer bias, and has high accuracy.

[0172] In this positioning method, after obtaining a first positioning result, the first observation data is first used to correct the first positioning result, and then the corrected result is again corrected using the double-difference observation data to obtain a target positioning result. The process of obtaining the target positioning result comprehensively takes into account the point cloud data, the first observation data, and the double-difference observation data, and the taken-in information is abundant, resulting in a high accuracy of the target positioning result. This positioning method has low dependency on any one data, which is advantageous for improving the robustness of positioning.

[0173] The embodiment of the present application further provides an implementation process for obtaining a target positioning result based on the first positioning result and target data, which is another specific implementation process when the target data includes first observation data and double-difference observation data. Take the application of this method to a mobile device 110 as an example. As shown in FIG. 7, the positioning method according to the embodiment of the present application may include the following steps 701 to 703.

[0174] In step 701, the mobile device is positioned using the first observation data to obtain a second positioning result.

[0175] In an exemplary embodiment, the process of positioning a mobile device using first observation data does not need to take point cloud data into consideration, i.e., step 701 may be performed independently of the process of positioning a mobile device using point cloud data and obtaining a first positioning result, and the embodiment of the present application does not limit the execution order of step 701 and the process of positioning a mobile device using point cloud data and obtaining a first positioning result.

[0176] For example, the process of positioning a mobile device using first observation data may be realized by a first filter, and the principle of realizing positioning a mobile device using the first observation data by the first filter is the same as the principle of realizing correcting the first positioning result using the first observation data by the first filter, with the difference being that in the process of correcting the first positioning result using the first observation data by the first filter, the first state parameter of the first filter is determined based on the first positioning result, while in the process of positioning a mobile device using the first observation data by the first filter, the first state parameter of the first filter is initialized, and the initialization process does not take into account the first positioning result.

[0177] For example, in the process of using the first observation data to position the mobile device using the first filter, the manner of initializing and obtaining the first state parameters of the first filter includes, but is not limited to, setting the first state parameters of the first filter based on experience, determining the first state parameters of the first filter based on historical positioning results, decomposing the state parameters of the mobile device based on the first observation data, and determining the first state parameters of the first filter based on the decomposed state parameters. For details of the process of decomposing the state parameters of the mobile device based on the first observation data, please refer to the embodiment shown in Figure 8 and will not be repeated here.

[0178] In an exemplary embodiment, the process of positioning the mobile device using the first observation data may be realized without the first filter, and illustratively, the state parameters of the mobile device are decomposed based on the first observation data, and the result including the state parameters obtained by the decomposition is the second positioning result.

[0179] That is, the second positioning result may be obtained based on the state parameters obtained by decomposition, for example, a result including the state parameters obtained by decomposition is used as the second positioning result, or first state parameters of the first filter are determined based on the state parameters obtained by decomposition, and the second positioning result is obtained by filtering the first filter. The state parameters obtained by decomposition have high accuracy, and obtaining the second positioning result based on the state parameters obtained by decomposition is advantageous in improving the positioning accuracy of the second positioning result.

[0180] For example, the process of determining first state parameters of the first filter based on the state parameters obtained by decomposition and obtaining a second positioning result by filtering the first filter includes the steps of: determining first state parameters of the first filter based on the state parameters obtained by decomposition and obtaining a first state covariance matrix corresponding to the first state parameters; obtaining a first observation residual matrix based on the first observation data and the first state parameters in response to the first observation data satisfying the first filtering condition; determining a first measurement update matrix and a first measurement variance matrix corresponding to the first observation residual matrix, determining a first parameter increment based on the first observation residual matrix, the first measurement update matrix, the first measurement variance matrix, and the first state covariance matrix, and setting the sum of the first parameter increment and the first state parameters as the updated first state parameters of the first filter; and obtaining a second positioning result based on the updated first state parameters in response to the updated first state parameters satisfying the first criteria condition. The implementation principle of this process is the same as step 501 in the embodiment shown in FIG. 5, and will not be repeated here.

[0181] In step 702, the mobile device is positioned using the double difference observation data to obtain a third positioning result.

[0182] In an exemplary embodiment, the process of using double difference observation data to position the mobile device does not need to take point cloud data into consideration, that is, step 702 may be performed independently of the process of using point cloud data to position the mobile device and obtain a first positioning result, and the embodiment of the present application does not limit the order of performing step 702 and the process of using point cloud data to position the mobile device and obtain a first positioning result. In addition, step 702 may be performed independently of step 701.

[0183] For example, the process of positioning a mobile device using double difference observation data may be realized by a second filter, and the principle of realizing positioning a mobile device using double difference observation data by the second filter is the same as the principle of realizing correcting the first correction result using double difference observation data by the second filter, with the difference being that in the process of realizing correcting the first correction result using double difference observation data by the second filter, the second state parameters of the second filter are determined based on the first correction result, and in the process of realizing positioning a mobile device using double difference observation data by the second filter, the second state parameters of the second filter are initialized, and the initialization process does not take into account the first positioning result, nor the first correction result.

[0184] For example, in the process of realizing positioning of a mobile device using double-difference observation data by a second filter, the manner of initializing and obtaining the second state parameters of the second filter includes, but is not limited to, setting the second state parameters of the second filter based on experience, determining the second state parameters of the second filter based on historical positioning results, decomposing the state parameters of the mobile device based on the first observation data, and determining the second state parameters of the second filter based on the decomposed state parameters.

[0185] In step 703, the first positioning result, the second positioning result, and the third positioning result are fused together, and the result obtained by the fusion is set as the target positioning result.

[0186] The first positioning result, the second positioning result, and the third positioning result are all positioning results of the mobile device predicted at the current positioning time. By combining the first positioning result, the second positioning result, and the third positioning result and comprehensively taking into account the point cloud data, the first observation data, and the double-difference observation data, the target positioning result can be obtained, which has a low dependency on any of the data and is advantageous for improving the accuracy and robustness of the target positioning result.

[0187] Illustratively, to facilitate fusion, the first positioning result, the second positioning result, and the third positioning result all include the same type of parameters, for example, the first positioning result, the second positioning result, and the third positioning result all include a position, or the first positioning result, the second positioning result, and the third positioning result all include a position and a velocity.

[0188] In one possible implementation, the process of fusing the first positioning result, the second positioning result, and the third positioning result to obtain a target positioning result includes: obtaining a first weight corresponding to the first positioning result, a second weight corresponding to the second positioning result, and a third weight corresponding to the third positioning result; and fusing the first positioning result, the second positioning result, and the third positioning result to obtain a target positioning result for the mobile device based on the first weight, the second weight, and the third weight. The first weight, the second weight, and the third weight may be set based on experience or flexibly adjusted according to application scenarios, and the embodiments of the present application are not limited thereto. For example, for a positioning result obtained by a filter, the weight corresponding to the positioning result may be determined based on a state covariance matrix for obtaining the positioning result.

[0189] In one possible implementation manner, the implementation process of fusing the first positioning result, the second positioning result, and the third positioning result, and setting the fused result as the target positioning result of the mobile device, may further include the steps of fusing any two of the first positioning result, the second positioning result, and the third positioning result to obtain a fused result, and fusing the fused result with an unfused positioning result, and setting the fused result as the target positioning result of the mobile device.

[0190] For example, the process of fusing two positioning results may be realized based on weights respectively corresponding to the two positioning results, and the weights respectively corresponding to the two positioning results may be set based on experience or may be flexibly adjusted according to application scenarios, and the embodiments of the present application are not limited thereto.

[0191] In this positioning method, the mobile device is positioned using point cloud data, first observation data, and double-difference observation data, respectively, to obtain three positioning results, and then the three positioning results are combined to obtain the target positioning result. The process of obtaining the target positioning result takes into consideration the point cloud data, first observation data, and double-difference observation data comprehensively, and the taken-in information is abundant, resulting in a high accuracy of the target positioning result. This positioning method has low dependency on any one data, which is advantageous for improving the robustness of positioning.

[0192] In an exemplary embodiment, as shown in FIG. 8, the process of decomposing the state parameters of the mobile device based on the first observation data includes the following steps 801 to 803.

[0193] In step 801, an initial observation residual matrix is ​​obtained based on the first observation data and the initial positioning result, and an initial Jacobian matrix and an initial measurement variance matrix corresponding to the initial observation residual matrix are determined.

[0194] Exemplarily, the initial observation residual matrix is ​​constructed based on the first observation data, the initial positioning result of the mobile device, and the state information of the first satellite, the initial Jacobian matrix is ​​a Jacobian matrix related to the initial positioning result of the initial observation residual matrix, and the initial measurement variance matrix is ​​constructed based on the signal-to-noise ratio of the first observation data and the altitude angle of the first satellite. Exemplarily, the initial Jacobian matrix may be referred to as an initial measurement update matrix.

[0195] The status information of the first satellite includes at least one of the position, clock bias, velocity, and clock drift of the first satellite, and the status information of the first satellite may be acquired by the mobile device based on the first observation data and the navigation ephemeris of the first satellite. The initial positioning result may be set randomly based on experience, and illustratively includes at least one of an initial pseudorange positioning result and an initial Doppler positioning result. The initial pseudorange positioning result includes an initial position and an initial clock bias of the mobile device, and the initial Doppler positioning result includes an initial velocity and an initial clock drift of the mobile device.

[0196] If the initial positioning result includes an initial pseudorange positioning result, the first observation data includes first pseudorange observation data, which includes pseudorange observation sub-data corresponding to a first satellite, and the state information of the first satellite includes pseudorange state information of the first satellite (i.e., the position and clock bias of the first satellite).If the initial positioning result includes an initial Doppler positioning result, the first observation data includes first Doppler observation data, which includes Doppler observation sub-data corresponding to the first satellite, and the state information of the first satellite includes Doppler state information of the first satellite (i.e., the velocity and clock drift of the first satellite).

[0197] Illustratively, if the initial positioning results include initial pseudorange positioning results and initial Doppler positioning results, the process of resolving the state parameters of the mobile device based on the first observation data is realized by relying on the pseudorange observation equation and the Doppler observation equation.

[0198] For example, if the number of first satellites is n, the pseudorange observation equation is as shown in Equation 27. TIFF0007755070000229.tif21170 where, TIFF0007755070000230.tif5170 represents pseudorange observation subdata corresponding to the first satellite i (i=1, 2, ..., n) received by the mobile device, TIFF0007755070000231.tif4170 represents the location of the mobile device, TIFF0007755070000232.tif4170 represents the position of the first satellite i, TIFF0007755070000233.tif5170 shows the clock skew (i.e., clock bias) of a mobile device. TIFF0007755070000234.tif4170 represents the clock bias of the first satellite i, c is the speed of light in a vacuum, TIFF0007755070000235.tif5170 represents the error correction number (including corrections due to the ionosphere, troposphere, and Earth rotation, calculated using an empirical model) corresponding to the first satellite i; TIFF0007755070000236.tif6170 is the location of the mobile device TIFF0007755070000237.tif4170 and the position of the first satellite i TIFF0007755070000238.tif4170. In Equation 27, the position of the mobile device TIFF0007755070000239.tif4170 and clock bias of mobile devices The remaining parameters other than TIFF0007755070000240.tif5170 are all known and can be obtained by estimating the position and clock bias of the mobile device based on the pseudorange observation equation shown in Equation 27.

[0199] For example, if the number of first satellites is n, the Doppler observation equation is as shown in Equation 28. TIFF0007755070000241.tif35170where λ represents the wavelength of the satellite-delivered signal, TIFF0007755070000242.tif5170 represents the Doppler observation subdata corresponding to the first satellite i (i=1, 2, ..., n) received by the mobile device, TIFF0007755070000243.tif4170 represents the velocity of the first satellite i, TIFF0007755070000244.tif4170 represents the speed of the mobile device, TIFF0007755070000245.tif5170 shows clock drift on a mobile device. TIFF0007755070000246.tif5170 represents the clock drift of the first satellite i, and for the meanings of the other parameters, see the explanation of Equation 27. The velocity and clock drift of the mobile device can be estimated and obtained based on the Doppler observation equation shown in Equation 28, and when determining the velocity and clock drift of the mobile device, the position of the mobile device and the position of each first satellite need to be provided. For example, the pseudorange observation equation shown in Equation 27 and the Doppler observation equation shown in Equation 28 may be collectively referred to as satellite observation equations.

[0200] Illustratively, the pseudorange observation equation can be used to estimate the location and clock bias of the mobile device, illustratively by defining the location and clock bias of the mobile device as estimated parameters The purpose of estimating the location and clock bias of a mobile device is to estimate the above estimated parameters. TIFF0007755070000248.tif4170 to obtain estimates of the mobile device's location and clock bias. The Doppler observation equation can be used to estimate the mobile device's velocity and clock drift, and illustratively the mobile device's velocity and clock drift are calculated using the estimated parameters The purpose of estimating the speed and clock drift of a mobile device is to use the above estimated parameters. TIFF0007755070000250.tif4170 is continuously iteratively updated to obtain an estimate of the speed and clock drift of the mobile device.

[0201] For example, the method for decomposing the state parameters of a mobile device provided in the embodiments of the present application may be referred to as a robust weighted least squares method. The robust weighted least squares method organically combines the robust estimation principle and the least squares format using equivalent weights, and the subject of measurements generally follows a normal distribution. The least squares method (also called the least mean squares method) is a mathematical optimization method. It should be noted that the robust weighted least squares method is merely an example provided in the embodiments of the present application, and other mathematical optimization methods such as Newton's method and stochastic gradient descent can also be applied, and the embodiments of the present application are not limited thereto.

[0202] In the process of estimating the location and clock bias of a mobile device using the robust weighted least squares method, first, the estimated parameters Set the initial value of TIFF0007755070000251.tif4170, i.e., set the initial position and initial clock bias of the mobile device; In the process of estimating the speed and clock drift of a mobile device using the robust weighted least squares method, we first calculate the estimated parameters Set the initial value of TIFF0007755070000253.tif4170, i.e., set the initial speed and initial clock drift of the mobile device; It is written as TIFF0007755070000254.tif10170.

[0203] If the initial positioning result includes an initial pseudorange positioning result (i.e., an initial position and initial clock bias of the mobile device), the first observation data includes first pseudorange observation data (i.e., pseudorange observation sub-data corresponding to a first satellite), the state information of the first satellite includes the position and clock bias of the first satellite, and the initial observation residual matrix includes an initial pseudorange observation residual matrix.If the initial positioning result includes an initial Doppler positioning result (i.e., an initial velocity and initial clock drift of the mobile device), the first observation data includes first Doppler observation data (i.e., Doppler observation sub-data corresponding to a first satellite), the state information of the first satellite includes the velocity and clock drift of the first satellite, and the initial observation residual matrix includes an initial Doppler observation residual matrix.

[0204] An initial pseudorange observation residual matrix is ​​obtained based on an initial position and initial clock bias of the mobile device, pseudorange observation sub-data corresponding to the first satellite, and the position and clock bias of the first satellite, and an initial Doppler observation residual matrix is ​​obtained based on an initial velocity and initial clock drift of the mobile device, Doppler observation sub-data corresponding to the first satellite, and the velocity and clock drift of the first satellite.

[0205] Exemplarily, the geometric distance between the initial position and the position of the first satellite i, e.g. TIFF0007755070000255.tif6170 and calculate the clock bias difference value between the initial clock bias and the clock bias of the first satellite i, e.g. TIFF0007755070000256.tif5170, and calculate a first estimate of the distance between the mobile device and the first satellite i based on the geometric distance and the clock bias difference value, e.g. TIFF0007755070000257.tif6170, and a pseudorange observation equation between the mobile device and the first satellite can be constructed using the first estimated value and the pseudorange observation subdata corresponding to the first satellite i. The format of the pseudorange observation equation is as shown in Equation 27 above, and TIFF0007755070000258.tif4170 Replace with TIFF0007755070000259.tif4170, TIFF0007755070000260.tif5170 TIFF0007755070000261.tif5170. Furthermore, both sides of the pseudorange observation equation can be subtracted to obtain an initial pseudorange observation residual matrix, and the elements in the initial pseudorange observation residual matrix can be expressed as residual values ​​between the pseudorange observation sub-data corresponding to each first satellite and the estimates obtained from the initial position, the position of the first satellite, the initial clock bias, and the clock bias of the first satellite.

[0206] Illustratively, a velocity difference value between the initial velocity and the velocity of the first satellite i is obtained, and a unit observation value between the mobile device and the first satellite i, e.g. TIFF0007755070000262.tif11170, for example, obtain a clock drift difference value between the initial clock drift and the clock drift of the first satellite i, and based on the product of the velocity difference value and the unit observation value and the clock drift difference value, calculate a second estimate, for example TIFF0007755070000263.tif11170 is determined. A Doppler observation equation between the mobile device and the first satellite is constructed using the product of the wavelength of the satellite-distributed signal and the Doppler observation subdata corresponding to the first satellite, and the second estimated value. The format of this Doppler observation equation is as shown in Equation 28 above, and in Equation 28 above, TIFF0007755070000264.tif4170 Replace with TIFF0007755070000265.tif4170, TIFF0007755070000266.tif5170 Replace with TIFF0007755070000267.tif6170, TIFF0007755070000268.tif4170 TIFF0007755070000269.tif4170. Then, we can subtract both sides of the Doppler observation equation to obtain the Doppler observation residual matrix.

[0207] After constructing the initial observation residual matrix, the Jacobian matrix related to the initial positioning result of the initial observation residual matrix is ​​taken as the initial Jacobian matrix, and an initial measurement variance matrix is ​​constructed based on the signal-to-noise ratio of the first observation data and the altitude angle of the first satellite.

[0208] For example, if the initial observation residual matrix includes an initial pseudorange observation residual matrix, the initial Jacobian matrix includes an initial pseudorange Jacobian matrix, and the initial measurement variance matrix includes an initial pseudorange measurement variance matrix. The initial pseudorange Jacobian matrix refers to a Jacobian matrix related to the initial pseudorange positioning result of the initial pseudorange observation residual matrix, and the initial pseudorange measurement variance matrix is ​​constructed based on the signal-to-noise ratio of the pseudorange observation sub-data corresponding to the first satellite and the altitude angle of the first satellite.

[0209] For example, the estimated parameters for the kth iteration (k is an integer) are Assuming that k is 0, the estimated parameters of the k-th iteration include the initial position and the initial clock bias, and the satellite observation equation of each iteration is constructed by the estimated parameters of the current iteration. That is, for the pseudorange observation equation of the k-th iteration, the position and clock bias of the mobile device in the above Equation 27 are Location in TIFF0007755070000271.tif4170 TIFF0007755070000272.tif4170 and clock bias TIFF0007755070000273.tif5170. Determine the pseudorange observation equation for the kth iteration as the pseudorange Jacobian matrix for the kth iteration in terms of the partial derivatives of the estimated parameters for the kth iteration. The pseudorange Jacobian matrix for the kth iteration is TIFF0007755070000274.tif5170 and the Jacobian matrix TIFF0007755070000275.tif5170 may be as shown in Equation 29 below. TIFF0007755070000276.tif28170 where, TIFF0007755070000277.tif11170 represents the unit observation vector from the mobile device to satellite i (i = 1, 2, ..., n) during the kth iteration, TIFF0007755070000278.tif4170 represents the transpose vector of the unit observation vector from the mobile device to satellite i during the kth iteration. It should be noted that the initial pseudorange Jacobian matrix is ​​the pseudorange Jacobian matrix for k=0, i.e., means TIFF0007755070000279.tif5170.

[0210] For example, based on the signal-to-noise ratios of the pseudorange observation sub-data corresponding to each of the n first satellites and the altitude angles corresponding to each of the n first satellites, the pseudorange observation errors corresponding to each of the n first satellites are determined, and an initial pseudorange measurement variance matrix is ​​constructed with the pseudorange observation errors corresponding to each of the n first satellites as matrix diagonal elements.

[0211] For example, if the number of pseudorange observation subdata (ie, the number of first satellites) is n, the pseudorange measurement dispersion matrix may be as shown in Equation 30 below. TIFF0007755070000280.tif15170 where, TIFF0007755070000281.tif5170 represents the pseudorange measurement variance matrix of the kth iteration, TIFF0007755070000282.tif5170 represents the pseudorange measurement error corresponding to the first satellite i, TIFF0007755070000283.tif5170 may be obtained by calculation based on the following Equation 31. TIFF0007755070000284.tif14170 where, TIFF0007755070000285.tif4170 represents the signal-to-noise ratio corresponding to the pseudorange observation subdata of the first satellite i, TIFF0007755070000286.tif4170 represents the altitude angle of the first satellite i, TIFF0007755070000287.tif5170 represents a pseudorange measurement error parameter, which may be set based on experience or flexibly adjusted according to actual conditions, and the embodiments of the present application are not limited thereto. For example, TIFF0007755070000288.tif5170 to 3 2 may be set to

[0212] Illustratively, the pseudorange measurement covariance matrix is ​​a matrix with fixed values, and the estimated parameters In the iterative update process of TIFF0007755070000289.tif4170, if the pseudorange observation data used is not changed, the pseudorange measurement covariance matrix is ​​maintained as it is. That is, the pseudorange measurement covariance matrix of the k-th iteration is the same as the pseudorange measurement covariance matrix of the 0-th iteration (initial pseudorange measurement covariance matrix). TIFF0007755070000290.tif5170 is the initial pseudorange measurement variance matrix.

[0213] Illustratively, the process of obtaining an initial pseudorange Jacobian matrix for an initial pseudorange positioning result of an initial pseudorange observation residual matrix is ​​performed when it is determined that the initial pseudorange observation residual matrix satisfies a gross error filtering condition, thereby improving the reliability of the decomposition process of the positioning result. The initial pseudorange observation residual matrix satisfying the gross error filtering condition indicates that the pseudorange observation sub-data corresponding to the initial pseudorange observation residual matrix are all highly reliable. Illustratively, the process of determining whether the initial pseudorange observation residual matrix satisfies the gross error filtering condition includes detecting gross errors for the initial pseudorange observation residual matrix based on quartiles, and determining that the initial pseudorange observation residual matrix satisfies the gross error filtering condition if there is no pseudorange observation sub-data that needs to be removed.

[0214] For example, the process of detecting gross errors in the initial pseudorange observation residual matrix based on quartiles can derive many different methods in a specific implementation process. For example, for the same data, the gross error detection conditions may be different, and the obtained results may also be different. Therefore, the gross error detection methods that produce different results should be different. The embodiments of the present application use a gross error detection method based on quartiles as an example to describe the gross error detection process, but the embodiments of the present application are not limited thereto.

[0215] The elements in the initial pseudorange observation residual matrix are sorted in ascending order to obtain a sorted pseudorange observation residual sequence, which may be referred to as a first sequence. A gross error may be detected for the first sequence based on the upper and lower quartiles of the first sequence, for example, each element in the first sequence is M 1 / 4 -1.5*(M 3 / 4 -M 1 / 4 ) or M 3 / 4 +1.5*(M 3 / 4 -M 1 / 4) to detect gross errors in the first sequence. 1 / 4 -1.5*(M 3 / 4 -M 1 / 4 ) or more, and M 3 / 4 +1.5*(M 3 / 4 -M 1 / 4 ), it is determined that there is no pseudorange observation subdata that needs to be removed, that is, the initial pseudorange observation residual matrix satisfies the gross error filtering condition. 1 / 4 is the lower quartile of the first sequence, and M 3 / 4 is the upper quartile of the first sequence.

[0216] For example, the initial pseudorange observation residual matrix may not satisfy the gross error filtering condition. If the initial pseudorange observation residual matrix does not satisfy the gross error filtering condition, the pseudorange observation subdata that does not pass the gross error detection is removed from the first initial pseudorange observation data, and the subsequent steps are further performed based on the remaining pseudorange observation data, i.e., the initial pseudorange Jacobian matrix and the initial pseudorange measurement covariance matrix are obtained based on the remaining pseudorange observation data.

[0217] For example, if the initial observation residual matrix includes an initial Doppler observation residual matrix, the initial Jacobian matrix includes an initial Doppler Jacobian matrix, and the initial measurement variance matrix includes an initial Doppler measurement variance matrix. The initial Doppler Jacobian matrix is ​​a Jacobian matrix related to the initial Doppler positioning result of the initial Doppler observation residual matrix, and the initial Doppler measurement variance matrix is ​​constructed based on the signal-to-noise ratio of the Doppler observation sub-data corresponding to the first satellite and the altitude angle of the first satellite.

[0218] The principle of obtaining the initial Doppler Jacobian matrix is ​​the same as the principle of obtaining the pseudorange Jacobian matrix, and the principle of constructing the initial Doppler measurement covariance matrix is ​​the same as the principle of constructing the initial pseudorange measurement covariance matrix, and will not be repeated here. Exemplarily, the Doppler observation error parameters for constructing the initial Doppler measurement covariance matrix are TIFF0007755070000291.tif5170 may be set based on experience or may be flexibly adjusted according to actual circumstances, and the embodiments of the present application are not limited thereto. For example, TIFF0007755070000292.tif5170=0.03 2 is.

[0219] In step 802, a positioning result correction amount is obtained based on the initial observation residual matrix, the initial Jacobian matrix, and the initial measurement variance matrix, and the sum of the positioning result correction amount and the initial positioning result is taken as the intermediate positioning result.

[0220] For example, the initial Jacobian matrix includes an initial pseudorange Jacobian matrix, the initial measurement variance matrix includes an initial pseudorange measurement variance matrix, the initial observation residual matrix includes an initial pseudorange observation residual matrix, the positioning result correction amount includes a pseudorange positioning result correction amount, the initial positioning result includes an initial pseudorange positioning result, and the intermediate positioning result includes an intermediate pseudorange positioning result. In this case, the implementation process of step 802 includes the steps of: obtaining a pseudorange positioning result correction amount based on the initial pseudorange Jacobian matrix, the initial pseudorange measurement variance matrix, and the initial pseudorange observation residual matrix, and taking the sum of the pseudorange positioning result correction amount and the initial pseudorange positioning result as the intermediate pseudorange positioning result.

[0221] For example, the pseudorange Jacobian matrix of the k-th iteration is TIFF0007755070000293.tif5170, pseudorange observation residual matrix V for the kth iteration k and the pseudorange measurement variance matrix of the kth iteration Based on TIFF0007755070000294.tif5170, the pseudorange positioning result correction amount of the kth iteration is obtained, and the pseudorange positioning result correction amount of the kth iteration may be as shown in Equation 32 below. TIFF0007755070000295.tif8170 where, TIFF0007755070000296.tif5170 represents the pseudorange positioning result correction amount for the kth iteration, TIFF0007755070000297.tif6170 represents the transpose of the pseudorange Jacobian matrix of the kth iteration, and V k denotes the pseudorange observation residual matrix of the kth iteration, and V k is as shown in the following equation 33. TIFF0007755070000298.tif22170 where, TIFF0007755070000299.tif4170, TIFF0007755070000300.tif5170 is the estimate of the mobile device's position and clock bias during the kth iteration, see Equation 27 for the meaning of the other parameters.

[0222] Based on the correction amount of the pseudorange positioning result of the kth iteration, the estimated parameters of the pseudorange positioning result are calculated. TIFF0007755070000301.tif8170 can be updated, and the update process is as shown in Equation 34 below. TIFF0007755070000302.tif5170 where, TIFF0007755070000303.tif4170 represents the estimated parameters of the pseudorange positioning result of the k+1th iteration. TIFF0007755070000304.tif4170 represents estimated parameters of the pseudorange positioning result of the kth iteration (k is an integer equal to or greater than 0); TIFF0007755070000305.tif5170 represents the pseudorange positioning result correction amount for the kth iteration.

[0223] For example, since the current iteration is the 0th iteration, the pseudorange positioning result correction amount is TIFF0007755070000306.tif5170, and the initial pseudorange positioning result TIFF0007755070000307.tif4170, and the intermediate pseudorange positioning result is The process of obtaining the intermediate pseudorange positioning result by adding the pseudorange positioning result correction amount and the initial pseudorange positioning result is as follows: It may be represented in TIFF0007755070000309.tif5170.

[0224] For example, the initial Jacobian matrix includes an initial Doppler Jacobian matrix, the initial measurement variance matrix includes an initial Doppler measurement variance matrix, the initial observation residual matrix includes an initial Doppler observation residual matrix, the positioning result correction amount includes a Doppler positioning result correction amount, the initial positioning result includes an initial Doppler positioning result, and the intermediate positioning result includes an intermediate Doppler positioning result. In this case, the implementation process of step 802 includes the steps of obtaining a Doppler positioning result correction amount based on the initial Doppler Jacobian matrix, the initial Doppler measurement variance matrix, and the initial Doppler observation residual matrix, and summing the Doppler positioning result correction amount and the initial Doppler positioning result as the intermediate Doppler positioning result. The principle of obtaining the intermediate Doppler positioning result is the same as the principle of obtaining the intermediate pseudorange positioning result, and will not be repeated here.

[0225] In step 803, in response to the intermediate positioning result satisfying the first selection condition, the decomposed and obtained state parameters are obtained based on the intermediate positioning result.

[0226] For example, the intermediate positioning result includes at least one of an intermediate pseudorange positioning result and an intermediate Doppler positioning result. When the intermediate positioning result includes an intermediate pseudorange positioning result and an intermediate Doppler positioning result, the intermediate positioning result satisfying the first selection condition means that the intermediate pseudorange positioning result satisfies the first pseudorange selection condition and the intermediate Doppler positioning result satisfies the first Doppler selection condition. When the intermediate positioning result includes only an intermediate pseudorange positioning result, the intermediate positioning result satisfying the first selection condition means that the intermediate pseudorange positioning result satisfies the first pseudorange selection condition. When the intermediate positioning result includes only an intermediate Doppler positioning result, the intermediate positioning result satisfying the first selection condition means that the intermediate Doppler positioning result satisfies the first Doppler selection condition. In the embodiments of the present application, the intermediate positioning result includes an intermediate pseudorange positioning result and an intermediate Doppler positioning result as an example.

[0227] Illustratively, the process of determining whether the intermediate pseudorange positioning result satisfies the first pseudorange selection condition includes the steps of: constructing an intermediate pseudorange observation residual matrix based on the intermediate pseudorange positioning result, the first pseudorange observation subdata corresponding to the first satellite, the position of the first satellite, and a clock bias in response to the pseudorange positioning result correction being smaller than a pseudorange correction threshold; determining the product of the transpose of the intermediate pseudorange observation residual matrix, the inverse matrix of the initial pseudorange measurement variance matrix, and the intermediate pseudorange observation residual matrix as a pseudorange test statistic; and determining that the intermediate pseudorange positioning result satisfies the first pseudorange selection condition in response to the pseudorange test statistic being smaller than a pseudorange statistic threshold.

[0228] The pseudorange correction threshold may be set based on experience or flexibly adjusted according to the application scenario, and the embodiment of the present application is not limited thereto. For example, the pseudorange correction threshold may be TIFF0007755070000310.tif8170, and the pseudorange positioning result correction amount is smaller than the pseudorange correction amount threshold. TIFF0007755070000311.tif6170. Exemplarily, when the pseudorange positioning result correction amount is smaller than the pseudorange correction amount threshold, it may be referred to as the pseudorange positioning result correction amount converging. Exemplarily, when the pseudorange positioning result correction amount is equal to or greater than the pseudorange correction amount threshold, the intermediate pseudorange positioning result is used as the initial value of the pseudorange positioning for the next iteration, and steps 801 and 802 are repeatedly executed.

[0229] The principle of constructing the intermediate pseudorange observation residual matrix is ​​the same as that of constructing the initial pseudorange observation residual matrix, and will not be repeated here. For example, the process of multiplying the transpose of the intermediate pseudorange observation residual matrix, the inverse of the initial pseudorange measurement variance matrix, and the intermediate pseudorange observation residual matrix to obtain the pseudorange test statistic may be realized according to Equation 35. TIFF0007755070000312.tif6170 where s represents the pseudorange detection statistic, TIFF0007755070000313.tif5170 represents the initial pseudorange measurement covariance matrix, TIFF0007755070000314.tif6170 represents the inverse matrix of the initial pseudorange measurement variance matrix, V represents the intermediate pseudorange observation residual matrix, and the expression format of V is as shown in Equation 36 (V calculated when k in Equation 36 is 0 is the intermediate pseudorange observation residual matrix at this time), and V T represents the transpose of the intermediate pseudorange observation residual matrix. In some embodiments, V may be referred to as the tested pseudorange observation residual matrix. Illustratively, the process of determining whether the pseudorange test statistic is less than the pseudorange statistic threshold is also referred to as performing a chi-square test on the intermediate pseudorange positioning results. TIFF0007755070000315.tif22170 where, TIFF0007755070000316.tif4170 represents the position in the intermediate pseudorange positioning result, TIFF0007755070000317.tif5170 shows the clock bias in the intermediate pseudorange positioning results, and for the meaning of the other parameters see Equation 27.

[0230] If the pseudorange test statistic is smaller than the pseudorange statistic threshold, it is determined that the intermediate pseudorange positioning result satisfies the first pseudorange selection condition. The pseudorange statistic threshold can be set based on experience or flexibly adjusted according to application scenarios, and the embodiments of the present application are not limited thereto.

[0231] For example, if the pseudorange test statistic is not smaller than the pseudorange statistic threshold, it is determined that the intermediate pseudorange positioning result does not satisfy the first pseudorange selection condition. In this case, an initial pseudorange residual covariance matrix may be constructed based on the initial pseudorange Jacobian matrix and the initial pseudorange measurement variance matrix, an intermediate pseudorange observation residual matrix may be tested based on the initial pseudorange residual covariance matrix, a test result corresponding to each element in the intermediate pseudorange observation residual matrix may be obtained, and pseudorange observation subdata associated with elements whose test result is greater than the test threshold may be removed from the first pseudorange observation data. A new intermediate pseudorange positioning result may be obtained based on the remaining pseudorange observation data and the intermediate pseudorange positioning result, and so on until the new intermediate pseudorange positioning result satisfies the first pseudorange selection condition. The test threshold may be set empirically or flexibly adjusted according to application scenarios.

[0232] Illustratively, the process of constructing the initial pseudorange residual covariance matrix based on the initial pseudorange Jacobian matrix and the initial pseudorange measurement covariance matrix may be implemented according to Equation 37. TIFF0007755070000318.tif8170 where C V represents the initial pseudorange residual covariance matrix, which may also be called the calibrated pseudorange residual covariance matrix, TIFF0007755070000319.tif5170 represents the initial pseudorange measurement covariance matrix, TIFF0007755070000320.tif5170 represents the initial pseudorange Jacobian matrix, TIFF0007755070000321.tif6170 represents the transpose of the initial pseudorange Jacobian matrix.

[0233] For example, a normal distribution test is performed on the pseudorange observation residual matrix of the (k+1)th iteration (the tested pseudorange observation residual matrix, i.e., the pseudorange observation residual matrix V on which the chi-square test has been performed) using the tested residual covariance matrix, and test results corresponding to each element in the pseudorange observation residual matrix of the (k+1)th iteration are obtained.

[0234] Illustratively, testing the intermediate pseudorange observation residual matrix based on the initial pseudorange residual covariance matrix means performing a normal distribution test on the intermediate pseudorange observation residual matrix based on the initial pseudorange residual covariance matrix.

[0235] Illustratively, the process of testing the intermediate pseudorange observation residual matrix based on the initial pseudorange residual covariance matrix, obtaining testing results corresponding to each element in the intermediate pseudorange observation residual matrix, and removing pseudorange observation subdata associated with elements whose testing results are greater than a testing threshold from the first pseudorange observation data may be realized based on Equation 38. TIFF0007755070000322.tif17170 where, TIFF0007755070000323.tif4170 represents the residual value corresponding to the first satellite i in the intermediate pseudorange observation residual matrix V, i.e., the i-th element in the intermediate pseudorange observation residual matrix V; TIFF0007755070000324.tif5170 represents the covariance between the first satellite i and the first satellite i in the initial pseudorange residual covariance matrix, TIFF0007755070000325.tif11170 represents the test result corresponding to the i-th element in the intermediate pseudorange observation residual matrix V, and N(α) represents the upper quantile of the normal distribution with confidence level α, which also represents the test threshold.

[0236] Illustratively, the process of determining whether the intermediate Doppler positioning result satisfies the first Doppler selection condition includes the steps of: constructing an intermediate Doppler observation residual matrix based on the intermediate Doppler positioning result, the first Doppler observation subdata corresponding to the first satellite, and the velocity and clock drift of the first satellite in response to the Doppler positioning result correction being smaller than a Doppler correction threshold; determining a Doppler test statistic as a product of the transpose of the intermediate Doppler observation residual matrix, the inverse of the initial Doppler measurement variance matrix, and the intermediate Doppler observation residual matrix; and determining that the intermediate Doppler positioning result satisfies the first Doppler selection condition in response to the Doppler test statistic being smaller than the Doppler statistic threshold. Illustratively, the principle of determining whether the intermediate Doppler positioning result satisfies the first Doppler selection condition is the same as the principle of determining whether the intermediate pseudorange positioning result satisfies the first pseudorange selection condition, and therefore will not be repeated herein.

[0237] If it is determined that the intermediate pseudorange positioning results satisfy the first pseudorange selection condition and the intermediate Doppler positioning results satisfy the first Doppler selection condition, it is determined that the intermediate positioning results satisfy the first selection condition, and then the decomposed state parameters are obtained based on the intermediate positioning results. Exemplarily, the intermediate positioning results include the intermediate pseudorange positioning results and the intermediate Doppler positioning results, the intermediate pseudorange positioning results include a position and a clock bias, the intermediate Doppler positioning results include a velocity and a clock drift, and the position and clock bias included in the intermediate pseudorange positioning results and the velocity and clock drift included in the intermediate Doppler positioning results are the decomposed state parameters.

[0238] In an exemplary embodiment, after determining that the intermediate pseudorange positioning result satisfies the first pseudorange selection condition, the pseudorange observation random error model factor may be further self-adaptively estimated based on Equation 39 below. TIFF0007755070000326.tif10170 where, TIFF0007755070000327.tif5170 represents the pseudorange observation random error model factor, V represents the intermediate pseudorange observation residual matrix, and V T represents the transpose of the intermediate pseudorange observation residual matrix, TIFF0007755070000328.tif5170 represents the initial pseudorange measurement covariance matrix, TIFF0007755070000329.tif6170 represents the inverse matrix of the initial pseudorange measurement variance matrix, and n represents the number of pseudorange observation subdata included in the intermediate pseudorange observation residual matrix, i.e., the number of first satellites.

[0239] Exemplary embodiments may also output information about intermediate pseudorange positioning results (position and clock bias), pseudorange observation random error model factors, and pseudorange observation sub-data remaining when obtaining the intermediate pseudorange positioning results, for ease of subsequent use.

[0240] In an exemplary embodiment, after determining that the intermediate Doppler positioning result satisfies the first Doppler selection condition, the Doppler observation random error model factor may be adaptively estimated. The exemplary embodiment may further output the intermediate Doppler positioning result (velocity and clock drift), the Doppler observation random error model factor, and information of the Doppler observation sub-data remaining when obtaining the intermediate Doppler positioning result for ease of subsequent use.

[0241] For example, the process of estimating the position and clock bias of a mobile device using the robust weighted least squares method may be as shown in FIG. 9. Initial values ​​of the estimation parameters, i.e., the initial position and initial clock bias, are set, a pseudorange measurement residual matrix is ​​constructed, and gross errors are detected for the pseudorange measurement residual matrix based on quartiles. A Jacobian matrix related to the estimated parameters of the pseudorange measurement residual matrix is ​​calculated, and a pseudorange measurement variance matrix is ​​constructed. Parameter corrections are calculated, and the estimated parameters are updated. If the parameter corrections do not converge, the process returns to constructing the pseudorange measurement residual matrix. If the parameter corrections converge, the chi-square test statistic is calculated. If the chi-square test statistic is greater than a threshold, the process calculates a tested pseudorange residual covariance matrix, performs a normal distribution test on the tested pseudorange measurement residual matrix based on the tested pseudorange residual covariance matrix, and removes pseudorange observation subdata that do not pass the normal distribution test. The process returns to constructing the pseudorange measurement residual matrix. If the chi-square test statistic is less than or equal to the threshold, the pseudorange observation random error model factor is adaptively estimated, and information from which the mobile device position, clock bias, pseudorange observation random error model factor, and pseudorange observation sub-data has been removed is output.

[0242] For example, the process of estimating the velocity and clock drift of a mobile device using the robust weighted least squares method may be as shown in FIG. 10. Initial values ​​of the estimation parameters, i.e., the initial velocity and initial clock drift, are set, a Doppler observation residual matrix is ​​constructed, and gross errors are detected for the Doppler observation residual matrix based on quartiles. A Jacobian matrix related to the estimated parameters of the Doppler observation residual matrix is ​​calculated, and a Doppler measurement variance matrix is ​​constructed. Parameter corrections are calculated, and the estimated parameters are updated. If the parameter corrections do not converge, the process returns to constructing the Doppler observation residual matrix. If the parameter corrections converge, the chi-square test statistic is calculated. If the chi-square test statistic is greater than a threshold, a tested Doppler residual covariance matrix is ​​calculated, and a normal distribution test is performed on the tested Doppler observation residual matrix based on the tested Doppler residual covariance matrix. Doppler observation subdata that do not pass the normal distribution test are removed, and the process returns to constructing the Doppler observation residual matrix. If the chi-square test statistic is less than or equal to the threshold, the Doppler observation random error model factor is adaptively estimated, and information from which the mobile device speed, clock drift, Doppler observation random error model factor, and Doppler observation sub-data has been removed is output.

[0243] It should be noted that the embodiments shown in Figures 5 and 7 only illustrate two exemplary specific implementation processes for obtaining a target positioning result based on the first positioning result based on the target data when the target data includes the first observation data and the double difference observation data, and the embodiments of the present application are not limited thereto. In some embodiments, when the target data includes the first observation data and the double difference observation data, the specific implementation process for obtaining a target positioning result based on the first positioning result based on the target data may further include any of the following implementation processes:

[0244] In realization process 1, the first positioning result is corrected using double-difference observation data to obtain a third corrected result, the third corrected result is corrected using the first observation data to obtain a fourth corrected result, and the fourth corrected result is set as the target positioning result.

[0245] The third correction result is obtained by correcting the first positioning result using the double-difference observation data, and the type of parameters included in the third correction result is the same as the type of parameters included in the first positioning result. Exemplarily, the process of correcting the first positioning result using the double-difference observation data to obtain the third correction result may be realized using a second filter, and the implementation principle is the same as the implementation principle of step 502 in the embodiment shown in FIG. 5 .

[0246] The fourth corrected result is obtained by correcting the third corrected result using the first observation data, and is more reliable than the third corrected result. After obtaining the fourth corrected result, using the fourth corrected result as the target positioning result of the mobile device is advantageous in ensuring the reliability of the target positioning result and improving the positioning accuracy and positioning robustness of the target positioning result. Exemplarily, the process of correcting the third corrected result using the first observation data to obtain the fourth corrected result may be implemented using a first filter, and the implementation principle is the same as that of step 501 in the embodiment shown in FIG. 5 .

[0247] In the second implementation, the first observation data is used to correct the first positioning result to obtain the first corrected result, the double-difference observation data is used to position the mobile device to obtain the third positioning result, the first corrected result and the third positioning result are fused, and the fused result is used as the target positioning result.

[0248] The process of correcting the first positioning result using the first observation data to obtain the first corrected result and the process of positioning the mobile device using the double-difference observation data to obtain the third positioning result refer to the above related descriptions and will not be repeated here. After obtaining the first corrected result and the third positioning result, the first corrected result and the third positioning result are fused together, and the fused result is the target positioning result. For example, the process of fusing the first corrected result and the third positioning result includes obtaining weights respectively corresponding to the first corrected result and the third positioning result, and fusing the first corrected result and the third positioning result based on the weights respectively corresponding to the first corrected result and the third positioning result.

[0249] In the realization process 3, the first positioning result is corrected using the double difference observation data to obtain a third corrected result, the mobile device is positioned using the first observation data to obtain a second positioning result, the third corrected result and the second positioning result are fused, and the fused result is the target positioning result.

[0250] For the process of correcting the first positioning result using the double-difference observation data to obtain a third corrected result and the process of positioning the mobile device using the first observation data to obtain a second positioning result, please refer to the relevant description above and will not be described again here. After obtaining the third corrected result and the second positioning result, the third corrected result and the second positioning result are fused together, and the fused result is the target positioning result. Exemplarily, the process of fusing the third corrected result and the second positioning result includes obtaining weights respectively corresponding to the third corrected result and the second positioning result, and fusing the third corrected result and the second positioning result based on the weights respectively corresponding to the third corrected result and the second positioning result.

[0251] The realization process 4 includes the steps of correcting the first positioning result using the first observation data to obtain a first corrected result, correcting the first positioning result using the double difference observation data to obtain a third corrected result, and fusing the third corrected result and the first corrected result and setting the result obtained by the fusion as the target positioning result.

[0252] For the process of correcting the first positioning result using the first observation data to obtain the first corrected result and the process of correcting the first positioning result using the double-difference observation data to obtain the third corrected result, please refer to the relevant description above and will not be repeated here. After obtaining the first corrected result and the third corrected result, the first corrected result and the third corrected result are fused together, and the fused result is the target positioning result. Exemplarily, the process of fusing the first corrected result and the third corrected result includes obtaining weights respectively corresponding to the first corrected result and the third corrected result, and fusing the first corrected result and the third corrected result based on the weights respectively corresponding to the first corrected result and the third corrected result.

[0253] In the realization process 5, the mobile device is positioned using the first observation data to obtain a second positioning result, the second positioning result is corrected using the double difference observation data to obtain a fifth corrected result, and the fifth corrected result is merged with the first positioning result, and the merged result is the target positioning result.

[0254] The implementation process of positioning the mobile device using the first observation data and obtaining the second positioning result is described above and will not be repeated here. The implementation principle of correcting the second positioning result using the double-difference observation data is the same as the implementation principle of correcting the first correction result using the double-difference observation data, and the result obtained by correcting the second positioning result using the double-difference observation data is the fifth correction result.

[0255] Illustratively, the realization process of fusing the fifth correction result and the first positioning result includes obtaining weights corresponding to the fifth correction result and the first positioning result, respectively, and fusing the fifth correction result and the first positioning result based on the weights corresponding to the fifth correction result and the first positioning result, respectively.

[0256] The realization process 6 includes the steps of positioning the mobile device using double-difference observation data to obtain a third positioning result, correcting the third positioning result using the first observation data to obtain a sixth corrected result, and fusing the sixth corrected result with the first positioning result and setting the result obtained by the fusion as the target positioning result.

[0257] The implementation process of positioning the mobile device using the double-difference observation data to obtain the third positioning result is described above and will not be repeated here. The implementation principle of correcting the third positioning result using the first observation data is the same as the implementation principle of correcting the first positioning result using the first observation data, and the result obtained by correcting the third positioning result using the first observation data is called the sixth corrected result.

[0258] Illustratively, the realization process of fusing the sixth correction result and the first positioning result includes the steps of obtaining weights corresponding to the sixth correction result and the first positioning result, respectively, and fusing the sixth correction result and the first positioning result based on the weights corresponding to the sixth correction result and the first positioning result, respectively.

[0259] The realization process 7 includes the steps of positioning the mobile device using first observation data to obtain a second positioning result, fusing the first positioning result and the second positioning result to obtain a first fusion result, and correcting the first fusion result using double-difference observation data and setting the corrected result as the target positioning result.

[0260] For the implementation process of positioning the mobile device using the first observation data to obtain the second positioning result, please refer to the above related description and will not be described again here. Illustratively, the implementation process of fusing the first positioning result and the second positioning result to obtain the first fusion result includes: obtaining weights respectively corresponding to the first positioning result and the second positioning result; and fusing the first positioning result and the second positioning result based on the weights respectively corresponding to the first positioning result and the second positioning result to obtain the first fusion result.

[0261] The implementation principle of correcting the first fusion result using double difference observation data is the same as the implementation principle of correcting the first correction result using double difference observation data, and the result obtained by correcting the first fusion result using double difference observation data is used as the target positioning result of the mobile device.

[0262] The realization process 8 includes the steps of positioning the mobile device using double-difference observation data to obtain a third positioning result, fusing the first positioning result and the third positioning result to obtain a second fusion result, and correcting the second fusion result using the first observation data and setting the corrected result as the target positioning result.

[0263] For the implementation process of positioning a mobile device using double-difference observation data to obtain a third positioning result, please refer to the above related description and will not be described again here. Exemplarily, the implementation process of fusing the first positioning result and the third positioning result to obtain a second fusion result includes the steps of obtaining weights respectively corresponding to the first positioning result and the third positioning result, and fusing the first positioning result and the third positioning result according to the weights respectively corresponding to the first positioning result and the third positioning result to obtain a second fusion result.

[0264] The realization principle of correcting the second fusion result using the first observation data is the same as the realization principle of correcting the first positioning result using the first observation data, and the result obtained by correcting the second fusion result using the first observation data is used as the target positioning result of the mobile device.

[0265] In an exemplary embodiment, the target data required to obtain a target positioning result based on the first positioning result may include only the first observation data. In such a case, the specific implementation process for obtaining a target positioning result based on the first positioning result based on the target data may include the following implementation process 1 and implementation process 2.

[0266] In the realization process 1, the first positioning result is corrected using the first observation data to obtain a first corrected result, and the first corrected result is set as the target positioning result.

[0267] The process of correcting the first positioning result using the first observation data to obtain the first corrected result is described above, and will not be repeated here. After obtaining the first corrected result, the first corrected result is used as the target positioning result of the mobile device.

[0268] In realization process 2, the mobile device is positioned using the first observation data to obtain a second positioning result, the first positioning result and the second positioning result are combined, and the combined result is used as the target positioning result.

[0269] For the implementation process of positioning the mobile device using the first observation data and obtaining the second positioning result, please refer to the relevant description above, and the description will not be repeated here.

[0270] For example, the process of fusing the first positioning result and the second positioning result includes obtaining weights respectively corresponding to the first positioning result and the second positioning result, and fusing the first positioning result and the second positioning result according to the weights respectively corresponding to the first positioning result and the second positioning result, and the obtained result after fusing is the target positioning result of the mobile device.

[0271] In an exemplary embodiment, the target data required to obtain the target positioning result based on the first positioning result may only include double difference observation data. In such a case, the specific implementation process for obtaining the target positioning result based on the first positioning result based on the target data includes the following implementation process A and implementation process B.

[0272] In the realization process A, the first positioning result is corrected using the double difference observation data to obtain a third corrected result, and the third corrected result is set as the target positioning result.

[0273] The process of correcting the first positioning result using the double difference observation data to obtain the third corrected result is described above and will not be repeated here. After obtaining the third corrected result, the third corrected result is directly used as the target positioning result of the mobile device.

[0274] The realization process B includes a step of positioning the mobile device using double-difference observation data to obtain a third positioning result, fusing the first positioning result and the third positioning result, and setting the result obtained by the fusion as the target positioning result.

[0275] For the implementation process of positioning the mobile device using the double difference observation data and obtaining the third positioning result, please refer to the above related description, and the description will not be repeated here.

[0276] For example, the process of fusing the first positioning result and the third positioning result includes obtaining weights respectively corresponding to the first positioning result and the third positioning result, and fusing the first positioning result and the third positioning result according to the weights respectively corresponding to the first positioning result and the third positioning result, and after fusing, the obtained fusion result is the target positioning result of the mobile device.

[0277] For example, the frame of the positioning method may be as shown in FIG. 11. A mobile device acquires its own observation data, navigation ephemeris, and reference station observation data from a CORS system based on the NTRIP protocol. A communication connection is established between the CORS system and a satellite. A second positioning result of the mobile device is acquired using a first filter based on the mobile device's observation data and navigation ephemeris, and a third positioning result of the mobile device is acquired using an RTK algorithm and a second filter based on the mobile device's observation data, reference station observation data, and navigation ephemeris. Point cloud data scanned by a laser radar attached to the mobile device is acquired, and the point cloud data of adjacent frames is matched based on an NDT algorithm to obtain a position change amount. A first positioning result of the mobile device is acquired based on a constraint equation corresponding to the position change amount. The first, second, and third positioning results are combined to obtain a target positioning result, and the target positioning result is output. By continuously outputting the latest target positioning result, a movement trajectory of the mobile device can be generated.

[0278] In the process of obtaining positioning results using a filter, the present invention relates to the detection and repair of filter failures, the detection and repair of clock bias jumps and clock drift jumps, the verification and repair of filter models, and the detection and removal of gross errors. In the process of obtaining third positioning results, the present invention relates to the process of fixing integer biases based on MLAMBDA, and if the fixing is successful, a fixed solution of the position is obtained, and if the fixing is not successful, a floating solution of the position is obtained.

[0279] For example, the detailed process of the positioning method may be as shown in Fig. 12. According to the step in the dotted box 1201, a process of using a first filter to obtain a second positioning result of a mobile device based on observation data and navigation ephemeris of the mobile device is realized. For the step in the dotted box 1201, refer to step 501 in Fig. 5 and the embodiment shown in Fig. 8. The difference from step 501 in Fig. 5 is that in the dotted box 1201, the first state parameters of the first filter are not determined based on the first positioning result, but the first filter is initialized (i.e., the first state parameters of the first filter are determined) using state parameters of the mobile device obtained by decomposition based on the robust weighted least squares method and the first observation data.

[0280] According to the steps in the dotted box 1202, a process is realized to obtain the third positioning result of the mobile device using an RTK algorithm and a second filter based on the observation data of the mobile device, the observation data of the reference station and the navigation ephemeris. For the steps in the dotted box 1202, refer to step 502 in Figure 5. The difference from step 502 in Figure 5 is that in the dotted box 1202, instead of determining the second state parameters of the second filter based on the first correction result, the second filter is initialized (i.e., the second state parameters of the second filter are determined) using the state parameters of the mobile device obtained by decomposition based on the robust weighted least squares method and the first observation data.

[0281] The second positioning result and the third positioning result are fused to obtain a fusion result. According to the steps in the dotted box 1203, a process of obtaining a first positioning result of the mobile device based on the point cloud data is realized, and for the steps in the dotted box 1203, refer to step 301 in the embodiment shown in Figure 3. The fusion result and the first positioning result are fused to obtain a target positioning result, and the current target positioning result of the mobile device is output.

[0282] For example, the positioning method according to the embodiments of the present application may be applied to a mobile phone terminal positioning navigation application scenario (e.g., an electronic map application), and may also be applied to a lane-level navigation application scenario, thereby realizing sub-meter or lane-level positioning and assisting lane-level positioning navigation. Here, sub-meter-level positioning means that the accuracy of the positioning result can reach meters, centimeters, or even millimeters.

[0283] For example, the embodiments of the present application provide a positioning method that constructs a position change constraint equation based on laser radar point cloud matching information and combines RTK and laser radar based on a Kalman filter, reducing the dependency on satellite signals and solving the problem of low positioning accuracy in complex scenes such as those with severe satellite signal obstruction and obvious multipath effects, solving the problem of discontinuous vehicle positioning and position jumps in complex scenes such as those with tall buildings and urban canyons, and solving the problem of inaccurate vehicle positioning and position drift in complex urban scenes such as those with weak satellite signals, improving the availability and reliability of satellite positioning in scenes with weak satellite signals, and assisting mobile phones and in-vehicle devices in lane-level positioning navigation in road scenes such as highways and viaducts (as shown in Figure 13).

[0284] For example, an application scenario of the positioning method according to an embodiment of the present application may be as shown in Figure 14. The target positioning result of the mobile device is obtained by comprehensively taking into account satellite observation data (e.g., the mobile device's own observation data, double-difference observation data between the mobile device's observation data and that of a reference station) and point cloud data. This positioning method can provide a basis for lane-level navigation, recognize drift, lane changes, and major and minor roads, and achieve functions such as high-precision positioning, stable positioning, and reliable positioning.

[0285] As shown in FIG. 15 , an embodiment of the present application provides a positioning device, the device comprising: a first acquisition unit 1401 for acquiring point cloud data scanned by a radar attached to a mobile device; a positioning unit 1402 for positioning the mobile device using point cloud data to obtain a first positioning result; a second acquisition unit 1403 for acquiring first observation data received by a satellite positioning device attached to the mobile device; and a third obtaining unit 1404 for obtaining a target positioning result of the mobile device based on the first observation data and the first positioning result.

[0286] In one possible implementation manner, the third acquisition unit 1404 acquires target data based on the first observation data, including at least one of the first observation data and double-difference observation data calculated and acquired based on the first observation data and reference observation data received by a satellite positioning equipment installed at a reference station, and acquires a target positioning result based on the target data and the first positioning result.

[0287] In one possible implementation manner, the target data includes first observation data and double-difference observation data, and the third acquisition unit 1404 corrects the first positioning result using the first observation data to obtain a first correction result, and corrects the first correction result using the double-difference observation data to obtain a second correction result, and the second correction result is the target positioning result.

[0288] In one possible implementation manner, the third acquisition unit 1404 acquires first state parameters of the first filter based on the first positioning result, acquires a first state covariance matrix corresponding to the first state parameters, acquires a first observation residual matrix based on the first observation data and the first state parameters in response to the first observation data satisfying the first screening condition, determines a first measurement update matrix and a first measurement variance matrix corresponding to the first observation residual matrix, determines a first parameter increment based on the first observation residual matrix, the first measurement update matrix, the first measurement variance matrix and the first state covariance matrix, determines a sum of the first parameter increment and the first state parameters as the updated first state parameters of the first filter, and acquires a first correction result based on the updated first state parameters in response to the updated first state parameters satisfying the first criterion condition.

[0289] In one possible implementation, the device further includes a determining unit; The determination unit determines a covariance increment based on the first measurement update matrix, the first measurement variance matrix, and the first state covariance matrix, defines the product of the covariance increment and the first state covariance matrix as the updated first state covariance matrix, detects a correction amount for the first parameter increment based on the updated first state covariance matrix, and in response to the detection of the correction amount being successful, tests the first observation residual matrix based on the updated first state covariance matrix, the first measurement variance matrix, and a first residual covariance matrix constructed based on the first measurement update matrix to obtain a test result corresponding to each element in the first observation residual matrix, and in response to the test results corresponding to each element in the first observation residual matrix all satisfying the test condition, determines that the updated first state parameter satisfies the first reference condition.

[0290] In one possible implementation manner, the determination unit further determines a model validation parameter value corresponding to the first filter based on the first observation data, the first state parameter, and the first state covariance matrix; obtains a test result of the observation sub-data in the first observation data in response to the model validation parameter value being smaller than a first threshold; and determines that the first observation data satisfies the first screening condition in response to the test results of the observation sub-data in the first observation data all satisfying the retention condition.

[0291] In one possible implementation manner, the determination unit further performs a normalization process on the first observation residual matrix based on the first measurement update matrix, the first measurement variance matrix, and the first state covariance matrix to obtain a normalized residual matrix; tests the normalized residual matrix, each element of which is associated with one observation sub-data in the first observation data, based on a second residual covariance matrix constructed based on the first measurement update matrix, the first measurement variance matrix, and the first state covariance matrix, to obtain a test result corresponding to each element in the normalized residual matrix; and the test result corresponding to each element in the normalized residual matrix is ​​the test result of the corresponding observation sub-data in the first observation data.

[0292] In one possible implementation manner, the third acquisition unit 1404 determines second state parameters of the second filter based on the first correction result, acquires a second state covariance matrix corresponding to the second state parameters, acquires a double-differenced observation residual matrix based on the double-differenced observation data and the second state parameters in response to the double-differenced observation data satisfying the second screening condition, determines a double-differenced measurement update matrix and a double-differenced measurement variance matrix corresponding to the double-differenced observation residual matrix, determines a second parameter increment based on the double-differenced observation residual matrix, the double-differenced measurement update matrix, the double-differenced measurement variance matrix and the second state covariance matrix, determines a sum of the second parameter increment and the second state parameters as the updated second state parameters of the second filter, and acquires a second correction result based on the updated second state parameters in response to the updated second state parameters satisfying the second criterion condition.

[0293] In one possible implementation manner, the third acquisition unit 1404 acquires double-differenced estimation data based on the second state parameters, and constructs a double-differenced observation residual matrix based on the double-differenced observation data and the double-differenced estimation data.

[0294] In one possible implementation manner, the updated second state parameters include a position float solution and an integer bias float solution, and the third acquisition unit 1404 fixes the integer bias float solution, and in response to the fixing of the integer bias float solution being successful, calculates the position fixed solution using the integer bias fixed solution, and sets the result including the position fixed solution as the second correction result, and in response to the fixing of the integer bias float solution being unsuccessful, sets the result including the position float solution as the second correction result.

[0295] In one possible implementation manner, the target data includes first observation data and double differential observation data, and the third acquisition unit 1404 uses the first observation data to position the mobile device to obtain a second positioning result, uses the double differential observation data to position the mobile device to obtain a third positioning result, fuses the first positioning result, the second positioning result, and the third positioning result, and the fuse-obtained result is the target positioning result.

[0296] In one possible implementation manner, the third obtaining unit 1404 decomposes state parameters of the mobile device based on the first observation data, and obtains the second positioning result based on the decomposed state parameters obtained.

[0297] In one possible implementation manner, the third acquisition unit 1404 acquires an initial observation residual matrix based on the first observation data and the initial positioning result, determines an initial Jacobian matrix and an initial measurement variance matrix corresponding to the initial observation residual matrix, acquires a positioning result correction amount based on the initial observation residual matrix, the initial Jacobian matrix and the initial measurement variance matrix, and determines the sum of the positioning result correction amount and the initial positioning result as an intermediate positioning result, and acquires state parameters obtained by decomposition based on the intermediate positioning result in response to the intermediate positioning result satisfying the first selection condition.

[0298] In one possible implementation manner, the third acquisition unit 1404 acquires a first weight corresponding to the first positioning result, a second weight corresponding to the second positioning result, and a third weight corresponding to the third positioning result, and fuses the first positioning result, the second positioning result, and the third positioning result based on the first weight, the second weight, and the third weight, and the fused result is the target positioning result.

[0299] In one possible implementation manner, the third acquisition unit 1404 fuses any two of the first positioning result, the second positioning result, and the third positioning result to obtain a fusion result, fuses the fusion result with the unfused positioning result, and uses the fusion result as the target positioning result.

[0300] In one possible implementation manner, the positioning unit 1402 matches the point cloud data with historical point cloud data located one frame before the point cloud data to obtain point cloud matching information, determines a position change amount based on the point cloud matching information, corrects the historical position of the mobile device based on the position change amount to obtain a first position, and the positioning result including the first position is the first positioning result.

[0301] In one possible implementation manner, the target data includes first observation data and double-difference observation data, and the third acquisition unit 1404 corrects the first positioning result using the double-difference observation data to obtain a third correction result, and corrects the third correction result using the first observation data to obtain a fourth correction result, and the fourth correction result is the target positioning result.

[0302] In one possible implementation manner, the target data includes first observation data and double-difference observation data, and the third acquisition unit 1404 corrects the first positioning result using the first observation data to obtain a first correction result, positions the mobile device using the double-difference observation data to obtain a third positioning result, fuses the first correction result and the third positioning result, and the fused result is the target positioning result.

[0303] In one possible implementation manner, the target data includes first observation data and double-difference observation data, and the third acquisition unit 1404 corrects the first positioning result using the double-difference observation data to obtain a third corrected result, positions the mobile device using the first observation data to obtain a second positioning result, fuses the third corrected result and the second positioning result, and the fused result is the target positioning result.

[0304] In one possible implementation manner, the target data includes first observation data and double-difference observation data, and the third acquisition unit 1404 corrects the first positioning result using the first observation data to obtain a first correction result, corrects the first positioning result using the double-difference observation data to obtain a third correction result, fuses the third correction result with the first correction result, and obtains the fused result as the target positioning result.

[0305] In one possible implementation manner, the target data includes first observation data and double-difference observation data, and the third acquisition unit 1404 uses the first observation data to position the mobile device to obtain a second positioning result, corrects the second positioning result using the double-difference observation data to obtain a fifth corrected result, fuses the fifth corrected result with the first positioning result, and the fused result is the target positioning result.

[0306] In one possible implementation manner, the target data includes first observation data and double differential observation data, and the third acquisition unit 1404 uses the double differential observation data to position the mobile device to obtain a third positioning result, corrects the third positioning result using the first observation data to obtain a sixth corrected result, fuses the sixth corrected result with the first positioning result, and the fused result is the target positioning result.

[0307] In one possible implementation manner, the target data includes first observation data and double-difference observation data, and the third acquisition unit 1404 uses the first observation data to position the mobile device to obtain a second positioning result, fuses the first positioning result and the second positioning result to obtain a first fusion result, and corrects the first fusion result using the double-difference observation data, and the corrected result is the target positioning result.

[0308] In one possible implementation manner, the target data includes first observation data and double differential observation data, and the third acquisition unit 1404 uses the double differential observation data to position the mobile device to obtain a third positioning result, fuses the first positioning result and the third positioning result to obtain a second fusion result, and corrects the second fusion result using the first observation data, and the corrected result is the target positioning result.

[0309] In one possible implementation manner, the target data includes first observation data, and the third acquisition unit 1404 corrects the first positioning result using the first observation data to obtain a first corrected result, and uses the first corrected result as the target positioning result; or uses the first observation data to position the mobile device to obtain a second positioning result, and combines the first positioning result and the second positioning result, and uses the combined result as the target positioning result.

[0310] In one possible implementation manner, the target data includes double-difference observation data, and the third acquisition unit 1404 corrects the first positioning result using the double-difference observation data to obtain a third corrected result, and uses the third corrected result as the target positioning result; or uses the double-difference observation data to position the mobile device to obtain a third positioning result, and fuses the first positioning result and the third positioning result, and uses the fuse-obtained result as the target positioning result.

[0311] In the positioning device according to the embodiment of the present application, the final target positioning result of the mobile device is obtained by comprehensively taking into consideration the point cloud data scanned by the radar attached to the mobile device and the first observation data received by the satellite positioning device, and the point cloud data and the first observation data can complement each other. This positioning method can reduce the dependency on either the point cloud data or the first observation data. Even if the quality of the point cloud data or the first observation data is poor, a more accurate target positioning result can be obtained by additionally taking into consideration the other data, which is highly robust in positioning and advantageous in meeting actual positioning needs.

[0312] It should be noted that, although the apparatus according to the above embodiments has been described by way of example with the division of each functional unit, in actual application, the functions may be allocated to different functional units as needed, i.e., the internal structure of the device may be divided into different functional units to achieve some or all of the functions described above. Furthermore, the apparatus according to the above embodiments belongs to the same concept as the method embodiments, and the specific implementation details thereof are to be referred to the method embodiments, and will not be described again here.

[0313] 16 is a schematic diagram of a mobile device according to an embodiment of the present application. The mobile device may be a mobile phone, a computer, a smart voice interaction device, a smart home appliance, an in-vehicle terminal, a helicopter, etc. The mobile device may also be called a user device, a mobile terminal, a laptop terminal, a desktop terminal, etc.

[0314] Typically, the mobile device includes a processor 1501 and a memory 1502 .

[0315] The processor 1501 may include one or more processing cores, such as a 4-core processor or an 8-core processor. The processor 1501 may be implemented using at least one hardware form of a DSP (Digital Signal Processing), an FPGA (Field-Programmable Gate Array), or a PLA (Programmable Logic Array). The processor 1501 may include a main processor and a coprocessor. The main processor processes data in an awake state and is also called a CPU (Central Processing Unit). The coprocessor is a low-power processor that processes data in a standby state. In some embodiments, the processor 1501 may be integrated with a GPU (Graphics Processing Unit), which performs rendering and drawing of content that needs to be displayed on a display screen. In some embodiments, the processor 1501 may further include an AI (Artificial Intelligence) processor, which processes computational operations related to machine learning.

[0316] Memory 1502 may include one or more computer-readable storage media, which may be non-transitory. Memory 1502 may further include high-speed random access memory and non-volatile memory, such as one or more magnetic disk storage devices, flash memory storage devices, etc. In some embodiments, the non-transitory computer-readable storage media in memory 1502 stores at least one instruction that, when executed by processor 1501, causes the mobile device to implement a positioning method according to a method embodiment of the present application.

[0317] In some embodiments, the mobile device optionally further includes a radar 1515 and a satellite positioning device 1516. The radar 1515 scans point cloud data around the mobile device, and the satellite positioning device 1516 receives first observation data corresponding to the mobile device, so that the mobile device can position the mobile device by taking the point cloud data and the first observation data into consideration in a comprehensive manner, thereby improving the accuracy and robustness of the positioning.

[0318] As will be appreciated by those skilled in the art, the structure shown in FIG. 16 is not intended to limit the mobile device, which may include more or fewer components than shown, may combine some components, or may be arranged using different assemblies.

[0319] 17 is a schematic diagram of a server according to an embodiment of the present application. The server may vary greatly depending on its layout or performance, and may include one or more processors (Central Processing Units, CPUs) 1701 and one or more memories 1702. At least one computer program is stored in the one or more memories 1702, and the at least one computer program is loaded and executed by the one or more processors 1701, causing the server to implement the positioning method according to each of the above-described embodiments. Of course, the server may further include components such as a wired or wireless network interface, a keyboard, and an input / output interface to facilitate input / output, and may further include other components for implementing device functions, which will not be described again here.

[0320] In an exemplary embodiment, a computing device is further provided, the computing device including a processor and a memory having stored thereon at least one computer program that, when loaded and executed by the one or more processors, causes the computing device to implement any of the positioning methods described above.

[0321] In an exemplary embodiment, a non-volatile computer-readable storage medium is further provided, which stores at least one computer program that, when loaded and executed by a processor of a computing device, causes the computer to implement any of the above positioning methods.

[0322] In one possible implementation, the non-volatile computer-readable storage medium may be a read-only memory (ROM), a random access memory (RAM), a compact disc read-only memory (CD-ROM), a magnetic tape, a floppy disk, an optical data storage device, etc.

[0323] In an exemplary embodiment, a computer program product is provided, which includes computer programs or computer instructions that, when loaded and executed by a processor, cause a computer to implement any of the positioning methods described above.

[0324] In an exemplary embodiment, a computer program is provided, the computer program comprising computer instructions which, when loaded and executed by a processor, cause the computer to implement any of the positioning methods described above.

[0325] It should be noted that the information (including but not limited to user device information, user personal information, etc.), data (including but not limited to data for analysis, stored data, displayed data, etc.) and signals related to this application have all been approved by the user or fully approved by each party, and the collection, use and processing of related data must comply with the relevant laws, regulations and standards of the relevant countries and regions. For example, the point cloud data, observation data, positioning results, etc. related to this application have been obtained with sufficient approval.

[0326] It should be noted that the terms "first," "second," etc., used herein are intended to distinguish between similar objects and not necessarily to describe a particular order or priority. It should be understood that the data used may be interchanged as appropriate, such that the examples of the present application described herein may be practiced in orders other than those shown or described herein. The embodiments described in the following illustrative examples do not represent all embodiments consistent with the present application. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present application, as detailed in the appended claims.

[0327] It should be understood that "plurality" as referred to herein means two or more than two. "And / or" describes a relational relationship between related objects and indicates that three types of relationships may exist, for example, A and / or B can represent three situations: A exists alone, A and B exist simultaneously, and B exists alone. The character " / " generally indicates that the related objects before and after it are in an "or" relationship.

[0328] The above descriptions are only illustrative examples of the present application and are not used to limit the present application, and any amendments, equivalent replacements, improvements, etc. made within the principles of the present application should fall within the protection scope of the present application.

Claims

1. 1. A positioning method implemented by a computing device, comprising: acquiring point cloud data scanned by a radar attached to a mobile device, and positioning the mobile device using the point cloud data to obtain a first positioning result; acquiring first observation data received by a satellite positioning device attached to the mobile device; and acquiring a target positioning result for the mobile device based on the first observation data and the first positioning result; The step of acquiring a target positioning result of the mobile device based on the first observation data and the first positioning result includes: acquiring target data based on the first observation data, the target data including double-difference observation data calculated based on the first observation data and reference observation data received by a satellite positioning device attached to a reference station; acquiring the target positioning result based on the first positioning result based on the target data; The step of acquiring the target positioning result based on the first positioning result based on the target data includes: correcting the first positioning result using the first observation data to obtain a first corrected result; correcting the first correction result using the double difference observation data to obtain a second correction result, and setting the second correction result as the target positioning result; The step of correcting the first positioning result using the first observation data to obtain a first corrected result includes: obtaining first state parameters of a first filter based on the first positioning result, and obtaining a first state covariance matrix corresponding to the first state parameters; obtaining a first observation residual matrix based on the first observation data and the first state parameters in response to the first observation data satisfying a first screening condition; determining a first measurement update matrix and a first measurement covariance matrix corresponding to the first observation residual matrix; determining a first parameter increment based on the first observation residual matrix, the first measurement update matrix, the first measurement variance matrix, and the first state covariance matrix, and setting the sum of the first parameter increment and the first state parameter as an updated first state parameter of the first filter; and obtaining the first correction result based on the updated first state parameter in response to the updated first state parameter satisfying a first reference condition.

2. determining a covariance increment based on the first measurement update matrix, the first measurement variance matrix, and the first state covariance matrix, and defining the product of the covariance increment and the first state covariance matrix as an updated first state covariance matrix; detecting a correction amount for the first parameter increment based on the updated first state covariance matrix; In response to successful detection of the correction amount, validating the first observation residual matrix based on the updated first state covariance matrix, the first measurement variance matrix, and a first residual covariance matrix constructed based on the first measurement update matrix, to obtain validation results corresponding to each element in the first observation residual matrix; and determining that the updated first state parameters satisfy the first criterion condition in response to all of the test results corresponding to the elements in the first observation residual matrix satisfying a test condition.

3. determining model validation parameter values ​​corresponding to the first filter based on the first observation data, the first state parameters, and the first state covariance matrix; 2. The method of claim 1, further comprising: obtaining test results of observation sub-data in the first observation data in response to the model validation parameter value being smaller than a first threshold; and determining that the first observation data satisfies the first selection condition in response to all test results of the observation sub-data in the first observation data satisfying a retention condition.

4. The step of obtaining a test result of the observation sub-data in the first observation data includes: performing a normalization process on the first observation residual matrix based on the first measurement update matrix, the first measurement variance matrix, and the first state covariance matrix to obtain a normalized residual matrix; based on the first measurement update matrix, the first measurement variance matrix, and the first state covariance matrix, to test the normalized residual matrix, each element of which is associated with one observation subdata in the first observation data, to obtain a test result corresponding to each element in the normalized residual matrix; 4. The method according to claim 3, further comprising the step of: determining a test result corresponding to each element in the normalized residual matrix as a test result for the corresponding observation sub-data in the first observation data.

5. The step of correcting the first correction result using the double-difference observation data to obtain a second correction result includes: determining second state parameters of a second filter based on the first correction result, and obtaining a second state covariance matrix corresponding to the second state parameters; obtaining a doubly-differenced observed residual matrix based on the doubly-differenced observed data and the second state parameters in response to the doubly-differenced observed data satisfying a second screening condition; determining a doubly-differenced measurement update matrix and a doubly-differenced measurement covariance matrix corresponding to the doubly-differenced observation residual matrix; determining a second parameter increment based on the double-differenced observation residual matrix, the double-differenced measurement update matrix, the double-differenced measurement variance matrix, and the second state covariance matrix, and setting the sum of the second parameter increment and the second state parameter as the updated second state parameter of the second filter; and acquiring the second correction result based on the updated second state parameter in response to the updated second state parameter satisfying a second reference condition.

6. The step of obtaining a doubly-differenced observation residual matrix based on the doubly-differenced observation data and the second state parameters includes: obtaining double difference estimation data based on the second state parameters; and constructing the doubly-differenced observed residual matrix based on the doubly-differenced observed data and the doubly-differenced estimated data.

7. The updated second state parameters include a position float solution and an integer value bias float solution, and the step of obtaining the second correction result based on the updated second state parameters includes: fixing the integer bias float solution; In response to the successful fixation of the float solution for the integer bias, calculating a fixed solution for a position using the fixed solution for the integer bias, and setting a result including the fixed solution for the position as the second correction result; and in response to the integer bias float solution being unsuccessful, determining a result including the position float solution as the second corrected result.

8. The step of positioning the mobile device using the point cloud data to obtain a first positioning result includes: A step of matching the point cloud data with historical point cloud data located one frame before the point cloud data to obtain point cloud matching information; determining a position change amount based on the point cloud matching information; The method according to any one of claims 1 to 7, further comprising the steps of correcting a historical position of the mobile device based on the amount of position change to obtain a first position, and setting a positioning result including the first position as the first positioning result.

9. a first acquisition unit that acquires point cloud data scanned by a radar attached to the mobile device; a positioning unit that uses the point cloud data to position the mobile device and obtain a first positioning result; a second acquisition unit for acquiring first observation data received by a satellite positioning device attached to the mobile device; Based on the first observation data, target data is acquired, the target data including double-difference observation data calculated based on the first observation data and reference observation data received by a satellite positioning device attached to a reference station; obtaining first state parameters of a first filter based on the first positioning result; and obtaining a first state covariance matrix corresponding to the first state parameters; obtaining a first observation residual matrix based on the first observation data and the first state parameters in response to the first observation data satisfying a first screening condition; determining a first measurement update matrix and a first measurement variance matrix corresponding to the first observation residual matrix; determining a first parameter increment based on the first observation residual matrix, the first measurement update matrix, the first measurement variance matrix, and the first state covariance matrix; and determining a sum of the first parameter increment and the first state parameter as an updated first state parameter of the first filter; acquiring a first correction result based on the updated first state parameter in response to the updated first state parameter satisfying a first reference condition; a third acquisition unit that corrects the first correction result using the double difference observation data to obtain a second correction result, and sets the second correction result as a target positioning result.

10. 8. A computer device comprising: a processor; and a memory having stored therein at least one computer program that, when loaded and executed by the processor, causes the computer device to implement the positioning method according to any one of claims 1 to 7.

11. A computer program comprising computer instructions which, when loaded and executed by a processor, cause the computer to implement the positioning method according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Positioning method and device

    CN111708043A

  • Terminal positioning method and device, equipment and medium

    CN114384569A

  • Positioning method, positioning system, vehicle and computer readable storage medium

    CN114509774A

  • Moving body position specification device

    JP2010145178A

  • Inertial GPS navigation system with modified kalman filter

    US20040150557A1