RTK positioning methods, devices, equipment, and media based on SLAM positioning results

By combining RTK and SLAM positioning modules and optimizing RTK positioning solutions using SLAM positioning results, the problem of insufficient accuracy and robustness of RTK positioning in complex environments is solved, achieving higher positioning accuracy and stability.

CN119511328BActive Publication Date: 2025-10-28CHENGDU GREEN TURLON JIWU TECHNOLOGY CO LTD +2
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411610292.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-12
Publication Date
2025-10-28
Estimated Expiration
2044-11-12

AI Technical Summary

Technical Problem

RTK positioning technology has poor measurement accuracy and robustness in environments with tall buildings, mountains, dense forests, etc.

Method used

By combining the RTK positioning module and the SLAM positioning module, the SLAM positioning result is used as the initial value to construct the double-difference observation equation, and filtering is performed to optimize the RTK positioning solution, thereby improving the positioning accuracy and robustness.

Benefits of technology

It improves the accuracy, efficiency, and robustness of RTK positioning, reduces the number of filtering iterations, and enhances the efficiency and rate of ambiguity fixation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119511328B_ABST
    Figure CN119511328B_ABST
Patent Text Reader

Abstract

The present disclosure provides an RTK positioning method, apparatus, device, and medium assisted by SLAM positioning results. The present disclosure uses SLAM positioning results to provide auxiliary optimization for RTK solutions, uses SLAM positioning results as initial values ​​to construct double-difference observation equations, and performs subsequent filtering processing. It can be understood that using SLAM positioning results as initial filtering values ​​effectively improves filtering efficiency, reduces the number of filtering iterations, and improves floating-point solution accuracy. At the same time, the present disclosure uses SLAM positioning results to provide auxiliary optimization for RTK solutions in RTK solutions, thereby improving ambiguity fixation efficiency and ambiguity fixation rate. In addition, the present disclosure uses SLAM positioning results to provide auxiliary optimization for RTK solutions in RTK solutions, uses SLAM positioning results as initial values ​​for fixed solution verification, and improves fixed solution accuracy. In summary, the solution of the present disclosure effectively improves RTK positioning accuracy, efficiency, and robustness.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of data processing, and more particularly to the field of RTK positioning technology, and discloses an RTK positioning method, apparatus, device, and medium assisted by SLAM positioning results. Background Technology

[0002] RTK (Real-Time Kinematic) positioning technology, also known as real-time dynamic carrier phase differential positioning, is a high-precision positioning measurement technique. An RTK system typically consists of two key components: a base station and a rover. The base station's GNSS receiver is installed at a known precise location, receiving satellite signals to calculate real-time error data and transmitting this error information to the rover via radio or network. The rover is installed on the target requiring real-time positioning, such as a drone, machinery, or a handheld measuring instrument. The rover receives carrier signals from the satellites and the error data transmitted from the base station, uses the RTK algorithm to calculate and output high-precision positioning data. However, RTK technology is highly sensitive to environmental conditions. The presence of tall buildings, mountains, or dense vegetation can significantly impact RTK measurements. Summary of the Invention

[0003] This disclosure provides at least one RTK positioning method, apparatus, device, and medium based on SLAM positioning results to improve RTK positioning accuracy and robustness.

[0004] According to one aspect of this disclosure, an RTK localization method based on SLAM localization results is provided, comprising:

[0005] The RTK positioning module is used to obtain raw positioning data from the base station and the terminal; the SLAM positioning module is used to obtain raw SLAM positioning data.

[0006] The RTK positioning module is used to perform positioning processing on the original positioning data of the base station and the original positioning data of the terminal to obtain the initial fixed solution of RTK.

[0007] The SLAM localization module is used to match the raw SLAM localization data with the initial fixed solution of RTK to obtain a transformation matrix; the transformation matrix and the raw SLAM localization data are then used to generate the SLAM localization result.

[0008] The SLAM positioning result is used as the initial value to construct a double-difference observation equation using the RTK positioning module, and the double-difference observation equation is filtered to obtain the RTK floating-point solution.

[0009] The RTK positioning module is used to perform ambiguity search on the RTK floating-point solution to obtain multiple search results and a ratio value corresponding to each search result. The search results with a ratio value greater than a preset value are used as initial search results. For each initial search result, the first spatial position difference between the initial search result and the SLAM positioning result is calculated. The root mean square and standard deviation of the first spatial position difference corresponding to each initial search result are calculated. If the root mean square and standard deviation are both less than a first preset threshold, the initial search result corresponding to the largest ratio value is used as the RTK fixed solution.

[0010] When the generation time of the SLAM positioning result is less than a preset time, during the fixed solution verification process, the RTK positioning module calculates the second spatial position difference between the SLAM positioning result and the RTK fixed solution. If the second spatial position difference is greater than a second preset threshold, the RTK fixed solution is downgraded to a floating-point solution. The value of the second preset threshold is related to the generation time of the SLAM positioning result. The starting time corresponding to the generation time or preset time is the time when the fixed solution is switched to the floating-point solution after the RTK positioning module performs positioning processing on the base station's original positioning data and the terminal's original positioning data.

[0011] In one possible implementation, the RTK localization method based on SLAM localization results further includes:

[0012] If the second spatial position difference is less than the second preset threshold, the RTK fixed solution is taken as the final fixed solution.

[0013] In one possible implementation, the RTK localization method based on SLAM localization results further includes:

[0014] If the RTK initial fixed solution cannot be obtained by using the RTK positioning module to perform positioning processing on the base station's original positioning data and the terminal's original positioning data, the transformation matrix is ​​the transformation matrix corresponding to the previous epoch.

[0015] In one possible implementation, before matching the raw SLAM positioning data and the initial fixed RTK solution using the SLAM positioning module, the RTK positioning method assisted by the SLAM positioning result further includes:

[0016] The SLAM positioning module is used to save the original SLAM positioning data.

[0017] In one possible implementation, calculating the second spatial position difference between the SLAM positioning result and the RTK fixed solution includes:

[0018] The second spatial position difference is calculated using the following formula:

[0019]

[0020] In the formula, (X r , Y r Z r R represents the three-dimensional coordinates of the SLAM positioning result. r A X is the difference in the second spatial location. A , Y A Z A The three-dimensional coordinates are for the fixed solution of RTK.

[0021] In one possible implementation, the value of the second preset threshold increases as the generation time of the SLAM positioning result is delayed.

[0022] In one possible implementation, the RTK localization method based on SLAM localization results further includes:

[0023] From various preset time periods, determine the target time period in which the SLAM positioning results are generated;

[0024] The value corresponding to the target time period is used as the second preset threshold; wherein the value corresponding to the preset time period increases as the preset time period is delayed.

[0025] According to another aspect of this disclosure, an RTK positioning device based on SLAM positioning results is provided, including an RTK positioning module and an SLAM positioning module;

[0026] The RTK positioning module is used to acquire the base station's raw positioning data and the terminal's raw positioning data; the SLAM positioning module is used to acquire the SLAM raw positioning data.

[0027] The RTK positioning module is used to perform positioning processing on the base station's original positioning data and the terminal's original positioning data to obtain the RTK initial fixed solution;

[0028] The SLAM localization module is used to match the raw SLAM localization data with the initial fixed solution of RTK to obtain a transformation matrix; and to generate SLAM localization results using the transformation matrix and the raw SLAM localization data.

[0029] The RTK positioning module is used to construct a double-difference observation equation using the SLAM positioning result as the initial value, and to perform filtering based on the double-difference observation equation to obtain the RTK floating-point solution.

[0030] The RTK positioning module is used to perform ambiguity search on the RTK floating-point solution to obtain multiple search results and a ratio value corresponding to each search result. The search results with a ratio value greater than a preset value are used as initial search results. For each initial search result, a first spatial position difference between the initial search result and the SLAM positioning result is calculated. The root mean square and standard deviation of the first spatial position difference corresponding to each initial search result are calculated. If both the root mean square and standard deviation are less than a first preset threshold, the initial search result corresponding to the largest ratio value is used as the RTK fixed solution.

[0031] The RTK positioning module is used to calculate the second spatial position difference between the SLAM positioning result and the RTK fixed solution during the fixed solution verification process when the generation time of the SLAM positioning result is less than a preset time. If the second spatial position difference is greater than a second preset threshold, the RTK fixed solution is downgraded to a floating-point solution. The value of the second preset threshold is related to the generation time of the SLAM positioning result. The starting time corresponding to the generation time or the preset time is the time when the fixed solution is switched to the floating-point solution after the RTK positioning module performs positioning processing on the base station's original positioning data and the terminal's original positioning data.

[0032] According to another aspect of this disclosure, an electronic device is provided, including a memory, a processor, and a computer program stored in the memory, wherein the processor, when executing the computer program, implements the method described in any of the preceding claims.

[0033] According to another aspect of this disclosure, a computer-readable storage medium is provided, wherein a computer program is stored therein, and the computer program, when executed by a processor, implements the method described in any of the preceding claims.

[0034] This disclosure discloses an RTK positioning method based on SLAM positioning results. It uses SLAM positioning results to assist in optimizing RTK solution processing. A double-difference observation equation is constructed using the SLAM positioning results as initial values, and subsequent filtering is performed. This can be understood as using the SLAM positioning results as initial filtering values, effectively improving filtering efficiency, reducing the number of filtering iterations, and increasing the accuracy of floating-point solutions. Simultaneously, this disclosure uses SLAM positioning results to assist in optimizing RTK solution processing. Specifically, search results with a ratio value greater than a preset value corresponding to the search results obtained from ambiguity search are used as initial search results. For each initial search result, a first spatial position difference between the initial search result and the SLAM positioning result is calculated. The root mean square and standard deviation of the first spatial position difference corresponding to each initial search result are calculated. If both the root mean square and standard deviation are less than a first preset threshold, the initial search result corresponding to the largest ratio value is used as the fixed RTK solution. This method improves ambiguity fixing efficiency and ambiguity fixing rate. Furthermore, this disclosure uses SLAM positioning results to provide auxiliary optimization for RTK solution calculation. Specifically, the RTK positioning module calculates the second spatial position difference between the SLAM positioning result and the RTK fixed solution. If the second spatial position difference is greater than a second preset threshold, the RTK fixed solution is downgraded to a floating-point solution. This method uses the SLAM positioning result as the initial value for verifying the fixed solution, thus improving the accuracy of the fixed solution. In summary, the scheme of this disclosure effectively improves the accuracy, efficiency, and robustness of RTK positioning.

[0035] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of this disclosure, nor is it intended to limit the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description

[0036] The accompanying drawings are provided to better understand this solution and do not constitute a limitation of this disclosure. Wherein:

[0037] Figure 1 This is one of the flowcharts of the RTK localization method based on SLAM localization results assisted by this disclosure;

[0038] Figure 2 This is the second flowchart of the RTK localization method based on SLAM localization results assisted by this disclosure;

[0039] Figure 3 This is a schematic diagram of the structure of an RTK positioning device based on SLAM positioning results assisted according to this disclosure;

[0040] Figure 4 This is a schematic diagram of the structure of an electronic device according to the present disclosure. Detailed Implementation

[0041] The exemplary embodiments of this disclosure are described below with reference to the accompanying drawings, including various details of the embodiments to aid understanding, and should be considered merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of this disclosure. Similarly, for clarity and brevity, descriptions of well-known functions and structures are omitted in the following description.

[0042] This disclosure addresses the shortcomings of current RTK (Real-Time Kinematic) solutions, namely low accuracy and poor robustness. It provides an RTK positioning method, apparatus, device, and medium based on SLAM (Signal-Assisted Positioning) results. This disclosure uses SLAM positioning results to assist in optimizing the RTK solution. The SLAM positioning results are used as initial values ​​to construct a double-difference observation equation, which is then used for subsequent filtering. This can be understood as using the SLAM positioning results as initial values ​​for filtering, effectively improving filtering efficiency, reducing the number of filtering iterations, and increasing the accuracy of the floating-point solution. Simultaneously, this disclosure uses SLAM positioning results to assist in optimizing the RTK solution, improving ambiguity fixing efficiency and ambiguity fixing rate. Furthermore, this disclosure uses SLAM positioning results as initial values ​​for fixed solution verification, improving the accuracy of the fixed solution. In summary, the scheme of this disclosure effectively improves the accuracy, efficiency, and robustness of RTK positioning.

[0043] The technical solution of this disclosure will be described below through specific embodiments.

[0044] like Figure 1 The diagram shows a flowchart of the RTK localization method based on SLAM localization results in this embodiment. The execution entity of this embodiment includes at least an RTK localization module and a SLAM localization module. Specifically, the method of this embodiment may include the following steps:

[0045] S110. Use the RTK positioning module to obtain the base station's original positioning data and the terminal's original positioning data; use the SLAM positioning module to obtain the SLAM original positioning data.

[0046] This disclosure adds a lidar sensor, enabling the use of SLAM positioning results generated by the lidar in GNSS+LIDAR equipment to assist RTK positioning. The lidar SLAM performs autonomous positioning and outputs a positioning result, which is then provided to the RTK for auxiliary positioning. The RTK positioning module and the SLAM positioning module operate independently of each other.

[0047] The aforementioned raw location data of the terminal can be the raw location data of the mobile terminal.

[0048] S120. The RTK positioning module is used to perform positioning processing on the original positioning data of the base station and the original positioning data of the terminal to obtain the initial fixed solution of RTK.

[0049] When the RTK positioning module starts running, it first performs a calculation, and the SLAM positioning module saves the raw data, that is, it saves the raw SLAM positioning data mentioned above, until the RTK positioning module obtains a fixed solution, that is, it obtains the initial fixed solution of RTK.

[0050] S130. The SLAM positioning module is used to match the raw SLAM positioning data and the initial fixed solution of RTK to obtain a transformation matrix; the transformation matrix and the raw SLAM positioning data are used to generate the SLAM positioning result.

[0051] The RTK positioning module transmits the initial fixed solution of RTK to the SLAM positioning module. The SLAM positioning module matches the raw SLAM positioning data with the initial fixed solution of RTK and generates a transformation matrix RF. Subsequently, the SLAM positioning result is generated based on this transformation matrix RF and the raw SLAM positioning data, and this result is transmitted to the RTK positioning module for RTK-assisted positioning.

[0052] S140. Using the SLAM positioning result as the initial value, construct a double-difference observation equation using the RTK positioning module, and perform filtering processing based on the double-difference observation equation to obtain the RTK floating-point solution.

[0053] The filtering process described above can be a Kalman filter.

[0054] The RTK positioning module includes a data conversion module, a data preprocessing module, a common-view satellite processing module, a double-difference processing module, a Kalman filter processing module, an ambiguity search and fixation module, and an ambiguity fixation and resolution verification module. This is based on the actual application requirements of RTK positioning with GNSS measurement receivers. The algorithm mainly includes the following steps: parsing and acquiring raw observation data from two stations (GPS: L1L2L5 / BDS: B1I B2I B3I B1C B2A / QZSS: L1 L2 L5 / GAL: E1 E5a E5b / GLN: G1 / G2), where the raw data includes pseudorange, carrier phase, Doppler, and signal-to-noise ratio information; preprocessing single-station data based on simplified TurboEdit; single-point positioning and velocity measurement at the base station and rover; pseudorange differential positioning; cycle slip detection, repair, and marking based on a polynomial fitting algorithm; establishing and adjusting carrier phase double-difference observations; solving floating-point ambiguity and covariance matrix; LAMBDA ambiguity search and fixing; solving based on a fixed ambiguity baseline; post-verification residual estimation analysis; and outputting the results. The double-difference processing module and Kalman filter processing module are mainly used to perform this step, the ambiguity search and fixing module is mainly used to perform step S150, and the ambiguity fixing and verification module is mainly used to perform step S160.

[0055] Using SLAM positioning results as initial values ​​for Kalman filtering can improve filtering efficiency, reduce the number of filtering iterations, and increase the accuracy of floating-point solutions. This is mainly reflected in the double-difference processing module. When performing double-difference pseudorange and carrier phase observation equations, an initial value is required. The conventional method uses the result of single-point positioning as the initial value, which affects the efficiency and accuracy of Kalman filtering. Therefore, a more accurate result is needed as the initial value. Here, SLAM positioning results can be used, as their accuracy is higher than that of single-point positioning results.

[0056] S150. Use the RTK positioning module to perform ambiguity search on the RTK floating-point solution to obtain multiple search results and a ratio value corresponding to each search result; take the search results with a ratio value greater than a preset value as the initial search results; for each initial search result, calculate the first spatial position difference between the initial search result and the SLAM positioning result; calculate the root mean square and standard deviation of the first spatial position difference corresponding to each initial search result; if the root mean square and standard deviation are both less than a first preset threshold, then take the initial search result corresponding to the largest ratio value as the RTK fixed solution.

[0057] The ratio value is a key parameter used to evaluate the reliability of integer ambiguity resolution.

[0058] Using SLAM positioning results as auxiliary positioning results for ambiguity fixation improves the efficiency and rate of ambiguity fixation. This part is mainly applied to the ambiguity search and fixation module, because the ambiguity LAMBDA search will return several results x. A i ,y A i , z A i and the corresponding ratio i The value, where ratio i Arrange all results >2 and compare them with the SLAM localization results (X). r , Y r Z r Record the spatial interpolation values, obtain the corresponding R, and calculate the RMS of these interpolations. i and std i If RMS i and std i If the value is less than the pre-set threshold (the first preset threshold mentioned above), the fixation will be considered successful, and the solution with the largest ratio value will be taken as the RTK fixation solution.

[0059] S160. When the generation time of the SLAM positioning result is less than a preset time, during the fixed solution verification process, the RTK positioning module is used to calculate the second spatial position difference between the SLAM positioning result and the RTK fixed solution. If the second spatial position difference is greater than a second preset threshold, the RTK fixed solution is downgraded to a floating-point solution. The value of the second preset threshold is related to the generation time of the SLAM positioning result.

[0060] The starting time corresponding to the generation time or preset time is the time when the fixed solution is switched to a floating-point solution after the base station's original positioning data and the terminal's original positioning data are processed by the RTK positioning module. It should be noted that if a fixed solution is obtained in step S120 of the current epoch, the generation time of the SLAM positioning result in step S130 can be considered less than the preset time. Alternatively, if a fixed solution is obtained in step S120 of the current epoch, during the fixed solution verification process in step 160, the RTK positioning module calculates the second spatial position difference between the SLAM positioning result and the RTK fixed solution. If the second spatial position difference is greater than a second preset threshold, the RTK fixed solution is downgraded to a floating-point solution. The value of the second preset threshold is related to the generation time of the SLAM positioning result.

[0061] If the initial fixed solution of RTK cannot be obtained by using the RTK positioning module to perform positioning processing on the base station's original positioning data and the terminal's original positioning data, the transformation matrix is ​​the transformation matrix corresponding to the previous epoch, and the steps of generating SLAM positioning results using the transformation matrix and the SLAM original positioning data, as well as subsequent steps, are executed.

[0062] If the second spatial position difference is less than the second preset threshold, the RTK fixed solution is taken as the final fixed solution.

[0063] In fixed-solution verification, SLAM is used as the initial value for verification. The main method is to calculate the spatial position difference between the SLAM positioning result and the RTK fixed solution to obtain the second spatial position difference R. r A , will (X r , Y r Z r Let (X) be the three-dimensional coordinates of the SLAM positioning result. A , Y A Z A Let R be the three-dimensional coordinates of the RTK fixed solution, and set a corresponding threshold, namely the second preset threshold mentioned above. If the difference R... r A If the value exceeds this threshold, the RTK fixed solution will be downgraded to a floating-point solution.

[0064] Specifically, the second spatial position difference can be calculated using the following formula:

[0065]

[0066] In the formula, (X r , Y r Z r R represents the three-dimensional coordinates of the SLAM positioning result. r A X is the difference in the second spatial location. A , Y A Z A The three-dimensional coordinates are for the fixed solution of RTK.

[0067] The value of the second preset threshold increases as the generation time of the SLAM localization result is delayed. Specifically, the value of the second preset threshold can be determined using the following steps:

[0068] From various preset time periods, determine the target time period in which the SLAM positioning result is generated; use the value corresponding to the target time period as the second preset threshold; wherein the value corresponding to the preset time period increases as the preset time period is delayed.

[0069] Because SLAM positioning results diverge over time, this method is not used for verification when SLAM positioning results are within the following timeframes: s = 0-10 seconds (threshold = 0.2m), s = 10-30 seconds (threshold = 0.4m), s = 30-60 seconds (threshold = 0.8m), and s > 60 seconds. The calculation method for s is as follows: the reliability of the SLAM positioning result decreases over time. If the RTK result is a fixed solution, the transformation matrix RF is calculated once. If the RTK result is a floating-point solution, the transformation matrix from the previous epoch is used, and s is calculated from this point onwards. If the result is not fixed, s is continuously accumulated. In other words, the calculation method for s is the time it takes for the RTK fixed solution to switch to a floating-point solution. This method can effectively improve the accuracy of fixed solutions.

[0070] like Figure 2 This is another flowchart of an embodiment of the present disclosure, in which the RTK positioning module mainly performs the following processes: determining GNSS pseudorange, GNSS carrier phase, GNSS Doppler, GNSS signal-to-noise ratio, and GNSS ephemeris based on the base station raw data (i.e., the aforementioned base station raw positioning data) and terminal raw data (i.e., the aforementioned terminal raw positioning data); performing observation data quality detection using GNSS pseudorange, GNSS carrier phase, GNSS Doppler, GNSS signal-to-noise ratio, and GNSS ephemeris; performing single-point positioning to obtain single-point positioning results; performing observation data cycle slip detection; extracting common-view satellites; composing double-difference observation equations; obtaining floating-point solutions using Kalman filtering; and performing ambiguity fixing using ambiguity fixing algorithms, ambiguity fixing RAIM algorithms, and partial ambiguity fixing algorithms. If fixing is successful, a fixed solution is obtained; otherwise, a floating-point solution is obtained. The SLAM positioning module is mainly used to perform the following processes: matching the RTK fixed solution with the SLAM raw data (i.e., the aforementioned SLAM raw positioning data) to generate an RT matrix, and using the RT matrix to obtain the SLAM positioning result.

[0071] When the system starts running, the RTK positioning module performs calculations, and the SLAM positioning module saves the raw SLAM data until the RTK positioning module obtains a fixed solution. The SLAM positioning module then transmits this fixed solution to the SLAM positioning module. The SLAM positioning module matches the raw SLAM data and the fixed solution data to generate a transformation matrix RF. Subsequently, the SLAM positioning result is generated based on this transformation matrix RF and the raw SLAM data, and this result is transmitted to the RTK positioning module for RTK-assisted positioning.

[0072] Based on the same inventive concept, this disclosure provides an RTK positioning device assisted by SLAM positioning results. The steps performed by the components of this device are the same as or similar to those of the method described above; therefore, similar aspects will not be repeated. Figure 3 As shown, the RTK positioning device based on SLAM positioning results in this embodiment includes an RTK positioning module 310 and an SLAM positioning module 320.

[0073] The RTK positioning module 310 is used to acquire the base station's original positioning data and the terminal's original positioning data; the SLAM positioning module 320 is used to acquire the SLAM's original positioning data.

[0074] The RTK positioning module 310 is used to perform positioning processing on the base station's original positioning data and the terminal's original positioning data to obtain the RTK initial fixed solution.

[0075] The SLAM positioning module 320 is used to match the raw SLAM positioning data and the initial fixed solution of RTK to obtain a transformation matrix; and to generate SLAM positioning results using the transformation matrix and the raw SLAM positioning data.

[0076] The RTK positioning module 310 is used to construct a double-difference observation equation using the SLAM positioning result as the initial value, and to perform filtering processing based on the double-difference observation equation to obtain the RTK floating-point solution.

[0077] The RTK positioning module 310 is used to perform ambiguity search on the RTK floating-point solution to obtain multiple search results and a ratio value corresponding to each search result; the search results with a ratio value greater than a preset value are used as initial search results; for each initial search result, a first spatial position difference between the initial search result and the SLAM positioning result is calculated; the root mean square and standard deviation of the first spatial position difference corresponding to each initial search result are calculated; if the root mean square and standard deviation are both less than a first preset threshold, the initial search result corresponding to the largest ratio value is used as the RTK fixed solution.

[0078] The RTK positioning module 310 is used to calculate the second spatial position difference between the SLAM positioning result and the RTK fixed solution during the fixed solution verification process when the generation time of the SLAM positioning result is less than a preset time. If the second spatial position difference is greater than a second preset threshold, the RTK fixed solution is downgraded to a floating-point solution. The value of the second preset threshold is related to the generation time of the SLAM positioning result. The starting time corresponding to the generation time or the preset time is the time when the fixed solution is switched to the floating-point solution after the RTK positioning module performs positioning processing on the base station's original positioning data and the terminal's original positioning data.

[0079] In some embodiments, if the second spatial location difference is less than the second preset threshold, the RTK fixed solution is taken as the final fixed solution.

[0080] In some embodiments, if the RTK initial fixed solution cannot be obtained by performing positioning processing on the base station original positioning data and terminal original positioning data using the RTK positioning module, the transformation matrix is ​​the transformation matrix corresponding to the previous epoch.

[0081] In some embodiments, the SLAM positioning module is used to save the original SLAM positioning data.

[0082] In some embodiments, the second spatial position difference is calculated using the following formula:

[0083]

[0084] In the formula, (X r , Y r Z r R represents the three-dimensional coordinates of the SLAM positioning result. r A X is the difference in the second spatial location. A , Y A Z A The three-dimensional coordinates are for the fixed solution of RTK.

[0085] In some embodiments, the value of the second preset threshold increases as the generation time of the SLAM positioning result is delayed.

[0086] In some embodiments, the RTK positioning module is further configured to:

[0087] From various preset time periods, determine the target time period in which the SLAM positioning results are generated;

[0088] The value corresponding to the target time period is used as the second preset threshold; wherein the value corresponding to the preset time period increases as the preset time period is delayed.

[0089] According to embodiments of this disclosure, this disclosure also provides an electronic device and a computer-readable storage medium.

[0090] Figure 4A schematic block diagram of an example electronic device 400 that can be used to implement embodiments of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the present disclosure described and / or claimed herein.

[0091] like Figure 4 As shown, device 400 includes a computing unit 410, which can perform various appropriate actions and processes based on a computer program stored in read-only memory (ROM) 420 or a computer program loaded from storage unit 480 into random access memory (RAM) 430. RAM 430 may also store various programs and data required for the operation of device 400. The computing unit 410, ROM 420, and RAM 430 are interconnected via bus 440. Input / output (I / O) interface 450 is also connected to bus 440.

[0092] Multiple components in device 400 are connected to I / O interface 450, including: input unit 460, such as keyboard, mouse, etc.; output unit 470, such as various types of monitors, speakers, etc.; storage unit 480, such as disk, optical disk, etc.; and communication unit 490, such as network card, modem, wireless transceiver, etc. Communication unit 490 allows device 400 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.

[0093] The computing unit 410 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 410 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 410 performs the various methods and processes described above. For example, in some embodiments, any of the methods described above can be implemented as a computer software program tangibly contained in a machine-readable medium, such as storage unit 480. In some embodiments, part or all of the computer program can be loaded and / or installed on device 400 via ROM 420 and / or communication unit 490. When the computer program is loaded into RAM 430 and executed by the computing unit 410, one or more steps of any of the methods described above can be performed. Alternatively, in other embodiments, the computing unit 410 can be configured to perform any of the methods described above by any other suitable means (e.g., by means of firmware).

[0094] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.

[0095] The program code used to implement the methods of this disclosure may be written in any combination of one or more programming languages. This program code may be provided to a processor or controller of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus, such that when executed by the processor or controller, the program code causes the functions / operations specified in the flowcharts and / or block diagrams to be implemented. The program code may be executed entirely on a machine, partially on a machine, as a standalone software package partially on a machine and partially on a remote machine, or entirely on a remote machine or server.

[0096] In the context of this disclosure, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.

[0097] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the computer. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).

[0098] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as a data server), or computing systems that include middleware components (e.g., an application server), or computing systems that include frontend components (e.g., a user computer with a graphical user interface or web browser through which a user can interact with embodiments of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., a communication network). Examples of communication networks include local area networks (LANs), wide area networks (WANs), and the Internet.

[0099] Computer systems can include clients and servers. Clients and servers are generally located far apart and typically interact via communication networks. Client-server relationships are created by computer programs running on the respective computers and having a client-server relationship with each other. Servers can be cloud servers, servers in distributed systems, or servers incorporating blockchain technology.

[0100] It should be understood that the various forms of processes shown above can be used to rearrange, add, or delete steps. For example, the steps described in this disclosure can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution disclosed in this disclosure can be achieved, and this is not limited herein.

[0101] The specific embodiments described above do not constitute a limitation on the scope of protection of this disclosure. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this disclosure should be included within the scope of protection of this disclosure.

Claims

1. An RTK localization method based on SLAM localization results, characterized in that, include: The RTK positioning module is used to obtain the base station's raw positioning data and the terminal's raw positioning data. Use the SLAM positioning module to obtain raw SLAM positioning data; The RTK positioning module is used to perform positioning processing on the original positioning data of the base station and the original positioning data of the terminal to obtain the initial fixed solution of RTK. The SLAM localization module is used to match the raw SLAM localization data with the initial fixed solution of RTK to obtain a transformation matrix; the transformation matrix and the raw SLAM localization data are then used to generate the SLAM localization result. The SLAM positioning result is used as the initial value to construct a double-difference observation equation using the RTK positioning module, and the double-difference observation equation is filtered to obtain the RTK floating-point solution. The RTK positioning module is used to perform ambiguity search on the RTK floating-point solution to obtain multiple search results and a ratio value corresponding to each search result; the search results with a ratio value greater than a preset value are used as initial search results, and for each initial search result, the first spatial position difference between the initial search result and the SLAM positioning result is calculated; Calculate the root mean square and standard deviation of the first spatial location difference corresponding to each initial search result. If the root mean square and standard deviation are both less than a first preset threshold, then the initial search result corresponding to the largest ratio value is taken as the RTK fixed solution. When the generation time of the SLAM positioning result is less than a preset time, during the fixed solution verification process, the RTK positioning module calculates the second spatial position difference between the SLAM positioning result and the RTK fixed solution. If the second spatial position difference is greater than a second preset threshold, the RTK fixed solution is downgraded to a floating-point solution. The value of the second preset threshold is related to the generation time of the SLAM positioning result. The starting time corresponding to the generation time or preset time is the time when the fixed solution is switched to the floating-point solution after the RTK positioning module performs positioning processing on the base station's original positioning data and the terminal's original positioning data.

2. The method according to claim 1, characterized in that, Also includes: If the second spatial position difference is less than the second preset threshold, the RTK fixed solution is taken as the final fixed solution.

3. The method according to claim 1, characterized in that, Also includes: If the RTK initial fixed solution cannot be obtained by using the RTK positioning module to perform positioning processing on the base station's original positioning data and the terminal's original positioning data, the transformation matrix is ​​the transformation matrix corresponding to the previous epoch.

4. The method according to claim 1, characterized in that, Before matching the raw SLAM positioning data and the initial fixed solution of RTK using the SLAM positioning module, the method further includes: The SLAM positioning module is used to save the original SLAM positioning data.

5. The method according to claim 1, characterized in that, The calculation of the second spatial position difference between the SLAM positioning result and the RTK fixed solution includes: The second spatial position difference is calculated using the following formula: In the formula, (X r , Y r Z r R represents the three-dimensional coordinates of the SLAM positioning result. r A X is the difference in the second spatial location. A , Y A Z A The three-dimensional coordinates are for the fixed solution of RTK.

6. The method according to claim 1, characterized in that, The value of the second preset threshold increases as the generation time of the SLAM positioning result is delayed.

7. The method according to claim 1, characterized in that, Also includes: From various preset time periods, determine the target time period in which the SLAM positioning results are generated; The value corresponding to the target time period is used as the second preset threshold. The value corresponding to the preset time period increases as the preset time period is delayed.

8. An RTK positioning device based on SLAM positioning results, characterized in that, Includes RTK positioning modules and SLAM positioning modules; The RTK positioning module is used to acquire the base station's raw positioning data and the terminal's raw positioning data; the SLAM positioning module is used to acquire the SLAM raw positioning data. The RTK positioning module is used to perform positioning processing on the base station's original positioning data and the terminal's original positioning data to obtain the RTK initial fixed solution; The SLAM localization module is used to match the raw SLAM localization data with the initial fixed solution of RTK to obtain a transformation matrix; and to generate SLAM localization results using the transformation matrix and the raw SLAM localization data. The RTK positioning module is used for: The SLAM positioning results are used as initial values ​​to construct a double-difference observation equation, and the double-difference observation equation is filtered to obtain the RTK floating-point solution. An ambiguity search is performed on the RTK floating-point solution to obtain multiple search results and a ratio value corresponding to each search result; the search results with a ratio value greater than a preset value are taken as initial search results, and for each initial search result, a first spatial position difference between the initial search result and the SLAM positioning result is calculated; Calculate the root mean square and standard deviation of the first spatial location difference corresponding to each initial search result. If the root mean square and standard deviation are both less than a first preset threshold, then the initial search result corresponding to the largest ratio value is taken as the RTK fixed solution. When the generation time of the SLAM positioning result is less than a preset time, during the fixed solution verification process, the second spatial position difference between the SLAM positioning result and the RTK fixed solution is calculated. If the second spatial position difference is greater than a second preset threshold, the RTK fixed solution is downgraded to a floating-point solution. The value of the second preset threshold is related to the generation time of the SLAM positioning result. The starting time corresponding to the generation time or preset time is the time when the fixed solution is switched to the floating-point solution after the RTK positioning module performs positioning processing on the base station's original positioning data and the terminal's original positioning data.

9. An electronic device comprising a memory, a processor, and a computer program stored in the memory, wherein the processor, when executing the computer program, implements the method of any one of claims 1-7.

10. A computer-readable storage medium storing a computer program that, when executed by a processor, implements the method of any one of claims 1-7.

Citation Information

Patent Citations

  • Multi-scene drone locating mapping method based on three-dimensional laser radar

    CN108303710A

  • Real-time high-precision positioning and attitude determination method, device and system

    CN115979258A