RTK positioning method and device based on slam positioning result assistance, equipment and medium
By using slam positioning results for assisted optimization in RTK positioning, the problems of low accuracy and poor robustness of RTK positioning in complex environments are solved, and higher positioning accuracy and efficiency are achieved.
Patent Information
- Application Number
- CN202411610292.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-12
- Publication Date
- 2025-02-25
- Estimated Expiration
- 2044-11-12
AI Technical Summary
RTK positioning technology has low accuracy and poor robustness in complex environments such as high buildings, mountains or dense groves.
The RTK positioning is assisted by using slam positioning results, and the slam positioning results are generated by matching the transformation matrix, and the double-difference observation equation is constructed as the initial value for filtering, improving positioning accuracy and robustness.
It effectively improves the accuracy and efficiency of RTK positioning, enhances the robustness in complex environments, reduces the number of filtering iterations, and improves the accuracy of floating-point solution.
Smart Images

Figure CN119511328A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of data processing, in particular to the field of RTK positioning technology, and discloses an RTK positioning method, device, equipment and medium based on the assistance of SLAM positioning results. Background Art
[0002] RTK (Real Time Kinematic) positioning technology, namely real-time dynamic carrier phase differential technology, is a high-precision positioning measurement technology. The RTK system usually consists of two key parts: the base station and the mobile station. The GNSS receiver of the base station is installed at a known precise position, and calculates real-time error data by receiving satellite signals, and transmits these error information to the mobile station through a radio station or a network. The mobile station is installed on the target that needs to be positioned in real time, such as drones, mechanical equipment, or handheld measuring instruments of surveyors. The mobile station receives the carrier signal from the satellite and the error data transmitted by the base station, calculates using the RTK algorithm, and outputs high-precision positioning data. However, RTK technology has high requirements for the environment. When there are factors such as high buildings, mountains, and dense trees in the environment, the measurement of RTK technology will be greatly affected. Summary of the invention
[0003] The present disclosure at least provides an RTK positioning method, apparatus, device, and medium assisted by SLAM positioning results to improve the accuracy and robustness of RTK positioning.
[0004] According to one aspect of the present disclosure, there is provided an RTK positioning method assisted by a SLAM positioning result, comprising:
[0005] Use the RTK positioning module to obtain the base station original positioning data and the terminal original positioning data; use the SLAM positioning module to obtain the SLAM original positioning data;
[0006] Using the RTK positioning module to perform positioning processing on the base station original positioning data and the terminal original positioning data to obtain an RTK initial fixed solution;
[0007] Using a SLAM positioning module to match the SLAM original positioning data with the RTK initial fixed solution to obtain a conversion matrix; using the conversion matrix and the SLAM original positioning data to generate a SLAM positioning result;
[0008] Using the RTK positioning module to construct a double-difference observation equation using the slam positioning result as an initial value, and performing filtering processing based on the double-difference observation equation to obtain an RTK floating-point solution;
[0009] 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; use the search result whose ratio value is greater than a preset value as the initial search result, and 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, and if the root mean square and standard deviation are both less than a first preset threshold, use the initial search result corresponding to the largest ratio value as the RTK fixed solution;
[0010] When the generation time of the SLAM positioning result is less than the preset moment, in 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; wherein the value of the second preset threshold is related to the generation time of the SLAM positioning result; wherein the starting moment corresponding to the generation time or the preset moment is the moment when the fixed solution is switched to a floating-point solution by using the RTK positioning module to perform positioning processing on the base station original positioning data and the terminal original positioning data.
[0011] In a possible implementation, the RTK positioning method assisted by the SLAM positioning result further includes:
[0012] When the second spatial position difference is less than the second preset threshold, the RTK fixed solution is used as the final fixed solution.
[0013] In a possible implementation, the RTK positioning method assisted by the SLAM positioning result further includes:
[0014] When the RTK positioning module is used to perform positioning processing on the base station original positioning data and the terminal original positioning data and an RTK initial fixed solution cannot be obtained, the conversion matrix is the conversion matrix corresponding to the previous epoch.
[0015] In a possible implementation manner, before using the SLAM positioning module to match the SLAM original positioning data with the RTK initial fixed solution, the RTK positioning method assisted by the SLAM positioning result further includes:
[0016] The SLAM positioning module is used to store the SLAM original positioning data.
[0017] In a possible implementation, the calculating a 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 ) is the three-dimensional coordinate of the slam positioning result, R r A is the second spatial position difference, X A , Y A , Z A It is the 3D coordinate of the RTK fixed solution.
[0021] In a possible implementation manner, the value of the second preset threshold increases as the generation time of the slam positioning result is delayed.
[0022] In a possible implementation, the RTK positioning method assisted by the SLAM positioning result further includes:
[0023] From each preset time period, determine the target time period in which the slam positioning result is 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 the present disclosure, there is provided an RTK positioning device assisted by SLAM positioning results, comprising an RTK positioning module and a SLAM positioning module;
[0026] The RTK positioning module is used to obtain the base station original positioning data and the terminal original positioning data; the SLAM positioning module is used to obtain the SLAM original positioning data;
[0027] The RTK positioning module is used to perform positioning processing on the base station original positioning data and the terminal original positioning data to obtain an RTK initial fixed solution;
[0028] The SLAM positioning module is used to match the SLAM original positioning data with the RTK initial fixed solution to obtain a conversion matrix; and generate a SLAM positioning result using the conversion matrix and the SLAM original positioning data;
[0029] The RTK positioning module is used to construct a double-difference observation equation using the SLAM positioning result as an initial value, and perform filtering processing based on the double-difference observation equation to obtain an RTK floating-point solution;
[0030] The RTK positioning module is used to perform an ambiguity search on the RTK floating point solution to obtain multiple search results and a ratio value corresponding to each search result; the search result whose ratio value is greater than a preset value is taken as the initial search result, and for each of the initial search results, 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, and 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 taken 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 in the fixed solution verification process when the generation time of the slam positioning result is less than the preset time, and if the second spatial position difference is greater than the second preset threshold, the RTK fixed solution is downgraded to a floating-point solution; wherein the value of the second preset threshold is related to the generation time of the slam positioning result; wherein 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 by using the RTK positioning module to perform positioning processing on the base station original positioning data and the terminal original positioning data.
[0032] According to another aspect of the present disclosure, an electronic device is provided, including a memory, a processor, and a computer program stored in the memory, wherein the processor implements any of the above methods when executing the computer program.
[0033] According to another aspect of the present disclosure, a computer-readable storage medium is provided, wherein a computer program is stored in the computer-readable storage medium, and when the computer program is executed by a processor, any of the above-mentioned methods is implemented.
[0034] The disclosed RTK positioning method based on the assistance of SLAM positioning results uses SLAM positioning results to provide auxiliary optimization for RTK solution, 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, in the RTK solution, the disclosed method uses SLAM positioning results to provide auxiliary optimization for RTK solution. Specifically, the search result corresponding to the ratio value greater than the preset value obtained by the ambiguity search is used as the initial search result, and for each of the initial search results, 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 the first preset threshold, the initial search result corresponding to the largest ratio value is used as the RTK fixed solution. The above method improves the ambiguity fixing efficiency and the ambiguity fixing rate. In addition, the present disclosure uses the SLAM positioning result to provide auxiliary optimization for the RTK solution in the RTK solution. 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 the second preset threshold, the RTK fixed solution is downgraded to a floating point solution. The above method uses the SLAM positioning result as the initial value for the fixed solution verification, thereby improving the accuracy of the fixed solution. In summary, the solution disclosed in the present disclosure effectively improves the RTK positioning accuracy, efficiency, and robustness.
[0035] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present disclosure, nor is it intended to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0036] The accompanying drawings are used to better understand the present solution and do not constitute a limitation of the present disclosure.
[0037] Figure 1 It is one of the flow charts of the RTK positioning method assisted by SLAM positioning results according to the present disclosure;
[0038] Figure 2 It is the second flow chart of the RTK positioning method assisted by SLAM positioning results according to the present disclosure;
[0039] Figure 3 It is a structural schematic diagram of an RTK positioning device assisted by SLAM positioning results according to the present disclosure;
[0040] Figure 4 is a schematic structural diagram of an electronic device according to the present disclosure. DETAILED DESCRIPTION
[0041] The following is a description of exemplary embodiments of the present disclosure in conjunction with the accompanying drawings, including various details of the embodiments of the present disclosure to facilitate understanding, which should be considered as merely exemplary. Therefore, it should be recognized by those of ordinary skill in the art that various changes and modifications may be made to the embodiments described herein without departing from the scope and spirit of the present disclosure. Similarly, for the sake of clarity and conciseness, descriptions of well-known functions and structures are omitted in the following description.
[0042] In order to solve the defects of low accuracy and poor robustness in the current RTK solution, the present disclosure provides an RTK positioning method, device, equipment, and medium based on the assistance of SLAM positioning results. The present disclosure uses SLAM positioning results to provide auxiliary optimization for RTK solution, 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 solution in RTK solution, which improves the ambiguity fixation efficiency and ambiguity fixation rate. In addition, the present disclosure uses SLAM positioning results to provide auxiliary optimization for RTK solution in RTK solution, uses SLAM positioning results as initial values for fixed solution verification, and improves the accuracy of fixed solution. In summary, the scheme of the present disclosure effectively improves the RTK positioning accuracy, efficiency, and robustness.
[0043] The technical solution of the present disclosure is described below through specific embodiments.
[0044] like Figure 1 As shown in FIG. 1 , it is a flow chart of the RTK positioning method based on the assistance of the SLAM positioning result of this embodiment. The execution body of this embodiment at least includes an RTK positioning module and a SLAM positioning module. Specifically, the method of this embodiment may include the following steps:
[0045] S110, using the RTK positioning module to obtain the base station original positioning data and the terminal original positioning data; using the SLAM positioning module to obtain the SLAM original positioning data.
[0046] The present disclosure adds a laser radar sensor. In the GNSS+LIDAR device, the slam positioning result produced by the LIDAR can be used to assist in RTK positioning, wherein the laser slam will perform autonomous positioning and output a positioning result, and provide it to the RTK for auxiliary positioning. The RTK positioning module and the slam positioning module operate independently of each other.
[0047] The above-mentioned original terminal positioning data may be original positioning data of the mobile terminal.
[0048] S120: Using an RTK positioning module to perform positioning processing on the base station original positioning data and the terminal original positioning data to obtain an RTK initial fixed solution.
[0049] When the operation starts, the RTK positioning module first performs the solution, and the SLAM positioning module saves the original data, that is, saves the above-mentioned SLAM original positioning data, until the RTK positioning module obtains a fixed solution, that is, obtains the RTK initial fixed solution.
[0050] S130, using a SLAM positioning module to match the SLAM original positioning data with the RTK initial fixed solution to obtain a conversion matrix; and using the conversion matrix and the SLAM original positioning data to generate a SLAM positioning result.
[0051] The RTK positioning module transmits the RTK initial fixed solution to the SLAM positioning module. The SLAM positioning module matches the SLAM original positioning data and the RTK initial fixed solution and generates a transformation matrix RF. Subsequently, the SLAM positioning result is generated based on the transformation matrix RF and the SLAM original positioning data, and this result is transmitted to the RTK positioning module for RTK assisted positioning.
[0052] S140, using the RTK positioning module to construct a double-difference observation equation using the slam positioning result as an initial value, and performing filtering processing based on the double-difference observation equation to obtain an RTK floating-point solution.
[0053] The above-mentioned filtering process may be a Kalman filtering process.
[0054] The modules of RTK positioning include data conversion module, data preprocessing module, common-view star processing module, double-difference processing module, Kalman filter processing module, ambiguity search and fixation module, and ambiguity fixation solution and verification module. According to the actual application requirements of RTK positioning of GNSS measurement receivers. The algorithm mainly includes the steps of analyzing and acquiring the original observation data of the dual stations (the data includes GPS: L1L2L5 / BDS: B1I B2I B3I B1C B2A / QZSS: L1 L2 L5 / GAL: E1 E5a E5b / GLN: G1 / G2), and the original data includes pseudorange, carrier phase, Doppler, signal-to-noise ratio information, etc., single-station data preprocessing based on simplified TurboEdit, single-point positioning and single-point velocity measurement of base stations and mobile stations, pseudorange differential positioning, cycle slip detection, repair and marking based on polynomial fitting algorithm, establishment of carrier phase double difference observation and adjustment, floating point ambiguity and covariance matrix resolution, LAMBDA ambiguity search and fixation, resolution based on fixed ambiguity baseline, post-verification residual estimation analysis and result output, etc. Among them, the double difference processing module and the Kalman filter processing module are mainly used to execute this step, the ambiguity search and fixation module is mainly used to execute step S150, and the ambiguity fixed solution verification module is mainly used to execute step S160.
[0055] Using the SLAM positioning result as the initial value of the Kalman filter can improve the filtering efficiency, reduce the number of filtering iterations, and improve the floating point solution accuracy. This part is mainly reflected in the double difference processing module. When performing the double difference pseudorange and carrier phase observation equations, an initial value is required. The ordinary method uses the result of single point positioning as the initial value. This processing will affect the efficiency and accuracy of the Kalman filter. Therefore, a higher precision result is required as the initial value. Here, the SLAM positioning result can be used. The accuracy of this result is higher than that of the single point positioning result.
[0056] S150. Use the RTK positioning module to perform an ambiguity search on the RTK floating-point solution to obtain multiple search results and a ratio value corresponding to each search result; use the search result whose ratio value is greater than a preset value as the initial search result, and 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, and if the root mean square and standard deviation are both less than a first preset threshold, use 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] The SLAM positioning result is used as the auxiliary positioning result of ambiguity fixation, which improves the efficiency and rate of ambiguity fixation. This part is mainly used in the ambiguity search fixed solution module. In the ambiguity LAMBDA search, several results x will be searched out. A i ,y A i , z A i And the corresponding ratio i value, where ratio i >2 and rank them with the slam positioning result (X r , Y r , Z r ) to record the spatial difference, obtain the corresponding R and calculate the rms of these differences i and std i , if rms i and std i If it is less than the pre-set threshold, that is, the first preset threshold, the fixation is considered successful and the solution with the largest ratio value is used as the RTK fixation solution.
[0059] S160. When the generation time of the SLAM positioning result is less than the preset time, in 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; wherein the value of the second preset threshold is related to the generation time of the SLAM positioning result.
[0060] The generation time or the starting time corresponding to the preset time is the time when the base station original positioning data and the terminal original positioning data are positioned and processed by the RTK positioning module, and the fixed solution is switched to the floating point solution. It should be noted that, in the case where a fixed solution is obtained in step S120 of this epoch, the generation time of the slam positioning result in step S130 can be considered to be less than the preset time, or, in the case where a fixed solution is obtained in step S120 of this epoch, 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 in step 160, and if the second spatial position difference is greater than a second preset threshold, the RTK fixed solution is downgraded to a floating point solution; wherein the value of the second preset threshold is related to the generation time of the slam positioning result.
[0061] When the RTK positioning module is used to perform positioning processing on the base station original positioning data and the terminal original positioning data, and no RTK initial fixed solution can be obtained, the transformation matrix is the transformation matrix corresponding to the previous epoch, and the generation of the SLAM positioning result using the transformation matrix and the SLAM original positioning data, as well as subsequent steps, is performed.
[0062] When the second spatial position difference is less than the second preset threshold, the RTK fixed solution is used as the final fixed solution.
[0063] In the fixed solution verification, slam is used as the initial value of the fixed solution verification. The main method is to calculate the difference in spatial position between the slam positioning result and the RTK fixed solution to obtain the second spatial position difference R r A , (X r , Y r , Z r ) is recorded as the three-dimensional coordinates of the slam positioning result, and (X A , Y A , Z A ) is recorded as the three-dimensional coordinate of the RTK fixed solution, and a corresponding threshold threshold is set, that is, the second preset threshold mentioned above. If the difference R r A If the value is greater than the corresponding threshold, the RTK fixed solution will be downgraded to a floating point solution.
[0064] Specifically, the second spatial position difference may be calculated using the following formula:
[0065]
[0066] In the formula, (X r , Y r , Z r ) is the three-dimensional coordinate of the slam positioning result, R r A is the second spatial position difference, X A , Y A , Z A It is the 3D coordinate of the RTK fixed solution.
[0067] The value of the second preset threshold increases as the generation time of the slam positioning result is delayed. Specifically, the value of the second preset threshold can be determined by the following steps:
[0068] From each preset time period, 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] Since the SLAM positioning result diverges with the extension of time, the SLAM positioning result is not verified by this method when s = 0-10 seconds, the second preset threshold threshold = 0.2m, when s = 10-30 seconds, the second preset threshold threshold = 0.4m, when s = 30-60 seconds, the second preset threshold threshold = 0.8m, and when s>60s, the reliability of the SLAM positioning result decreases with time. If the RTK result is a fixed solution, the conversion matrix RF will be calculated once. If the RTK result is a floating point solution, the conversion matrix uses the last epoch, and s is calculated at this time. If it is not fixed, s is accumulated all the time, that is, the calculation method of s is the time when the RTK fixed solution switches to the floating point solution. This method can effectively improve the correctness of the fixed solution.
[0070] like Figure 2 It is another flow chart of the embodiment of the present disclosure, wherein the RTK positioning module mainly performs the following processing: based on the base station original data (i.e. the above-mentioned base station original positioning data) and the terminal original data (i.e. the above-mentioned terminal original positioning data), determine the GNSS pseudorange, GNSS carrier phase, GNSS Doppler, GNSS signal-to-noise ratio, and GNSS ephemeris; use the GNSS pseudorange, GNSS carrier phase, GNSS Doppler, GNSS signal-to-noise ratio, and GNSS ephemeris to detect the quality of observation data; perform single-point positioning to obtain a single-point positioning result; perform observation data cycle slip detection; extract common-view stars; form a double-difference observation equation; obtain a floating-point solution by Kalman filtering; use an ambiguity fixing algorithm, an ambiguity fixing RAIM algorithm, and a partial ambiguity fixing algorithm to fix the ambiguity, and when the fixation is successful, obtain a fixed solution, otherwise obtain a floating-point solution. The SLAM positioning module is mainly used to perform the following processing: use the RTK fixed solution to match the SLAM original data (i.e. the above-mentioned SLAM original positioning data) to generate an RT matrix, and use the RT matrix to obtain the SLAM positioning result.
[0071] When the operation starts, the RTK positioning module performs the solution, and the slam positioning module saves the slam raw data until the RTK positioning module can obtain a fixed solution and transmit the fixed solution to the slam positioning module. The slam positioning module generates a transformation matrix RF based on the matching of the slam raw data and the fixed solution data. Subsequently, the slam positioning result is generated based on the transformation matrix RF and the slam raw data, and the result is transmitted to the RTK positioning module for RTK assisted positioning.
[0072] Based on the same inventive concept, the present disclosure provides an RTK positioning device assisted by SLAM positioning results. The steps performed by the components of the device are the same or similar to those of the above method, so similar parts are not repeated. Figure 3 As shown, the RTK positioning device assisted by SLAM positioning results in this embodiment includes an RTK positioning module 310 and a SLAM positioning module 320 .
[0073] The RTK positioning module 310 is used to obtain the base station original positioning data and the terminal original positioning data; the SLAM positioning module 320 is used to obtain the SLAM original positioning data.
[0074] The RTK positioning module 310 is used to perform positioning processing on the base station original positioning data and the terminal original positioning data to obtain an RTK initial fixed solution.
[0075] The SLAM positioning module 320 is used to match the SLAM original positioning data with the RTK initial fixed solution to obtain a conversion matrix; and generate a SLAM positioning result using the conversion matrix and the SLAM original positioning data.
[0076] The RTK positioning module 310 is used to construct a double-difference observation equation using the SLAM positioning result as an initial value, and perform filtering processing based on the double-difference observation equation to obtain an RTK floating-point solution.
[0077] The RTK positioning module 310 is used to perform an ambiguity search on the RTK floating-point solution to obtain multiple search results and a ratio value corresponding to each search result; a search result whose ratio value is greater than a preset value is taken as an initial search result, and 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, and 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 taken 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 in the fixed solution verification process when the generation time of the slam positioning result is less than the preset time, and if the second spatial position difference is greater than a second preset threshold, downgrade the RTK fixed solution to a floating-point solution; wherein the value of the second preset threshold is related to the generation time of the slam positioning result; wherein 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 by using the RTK positioning module to perform positioning processing on the base station original positioning data and the terminal original positioning data.
[0079] In some embodiments, when the second spatial position difference is less than the second preset threshold, the RTK fixed solution is used as the final fixed solution.
[0080] In some embodiments, when the RTK positioning module is used to perform positioning processing on the base station raw positioning data and the terminal raw positioning data and no RTK initial fixed solution can be obtained, 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 SLAM original 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 ) is the three-dimensional coordinate of the slam positioning result, R r A is the second spatial position difference, X A , Y A , Z A It is the 3D coordinate of the RTK fixed solution.
[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 used to:
[0087] From each preset time period, determine the target time period in which the slam positioning result is 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 an embodiment of the present disclosure, the present 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 an embodiment 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 can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present disclosure described and / or required herein.
[0091] like Figure 4 As shown, the device 400 includes a computing unit 410, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 420 or a computer program loaded from a storage unit 480 into a random access memory (RAM) 430. In the RAM 430, various programs and data required for the operation of the device 400 can also be stored. The computing unit 410, the ROM 420, and the RAM 430 are connected to each other via a bus 440. An input / output (I / O) interface 450 is also connected to the bus 440.
[0092] A number of components in the device 400 are connected to the I / O interface 450, including: an input unit 460, such as a keyboard, a mouse, etc.; an output unit 470, such as various types of displays, speakers, etc.; a storage unit 480, such as a disk, an optical disk, etc.; and a communication unit 490, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 490 allows the device 400 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.
[0093] The computing unit 410 may be a variety of general and / or special 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 dedicated artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, digital signal processors (DSPs), and any appropriate processors, controllers, microcontrollers, etc. The computing unit 410 performs the various methods and processes described above. For example, in some embodiments, any of the above methods may be implemented as a computer software program, which is tangibly contained in a machine-readable medium, such as a storage unit 480. In some embodiments, part or all of the computer program may be loaded and / or installed on the device 400 via ROM 420 and / or a 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 may be performed. Alternatively, in other embodiments, the computing unit 410 may be configured to perform any of the methods described above in any other appropriate manner (e.g., by means of firmware).
[0094] Various implementations 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 chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.
[0095] The program code for implementing the method of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that the program code, when executed by the processor or controller, enables the functions / operations specified in the flow chart and / or block diagram to be implemented. The program code may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.
[0096] In the context of the present disclosure, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or equipment. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, 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 (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer. Other types of devices can also be used to provide interaction with the user; for example, the 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 acoustic input, voice input, or tactile input).
[0098] The systems and techniques described herein may be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), and the Internet.
[0099] A computer system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The relationship of client and server is generated by computer programs running on respective computers and having a client-server relationship with each other. The server may be a cloud server, a server of a distributed system, or a server combined with a blockchain.
[0100] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps recorded in this disclosure can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solutions disclosed in this disclosure can be achieved, and this document does not limit this.
[0101] The above specific implementations do not constitute a limitation on the protection scope of the present disclosure. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modification, equivalent substitution and improvement made within the spirit and principle of the present disclosure shall be included in the protection scope of the present disclosure.
Claims
1. An RTK positioning method based on SLAM positioning results, characterized in that: include: Use the RTK positioning module to obtain the base station original positioning data and the terminal original positioning data; Use the SLAM positioning module to obtain the SLAM original positioning data; Using the RTK positioning module to perform positioning processing on the base station original positioning data and the terminal original positioning data to obtain an RTK initial fixed solution; Using a SLAM positioning module to match the SLAM original positioning data with the RTK initial fixed solution to obtain a conversion matrix; using the conversion matrix and the SLAM original positioning data to generate a SLAM positioning result; Using the RTK positioning module to construct a double-difference observation equation using the slam positioning result as an initial value, and performing filtering processing based on the double-difference observation equation to obtain an RTK floating-point solution; Using the RTK positioning module to perform ambiguity search on the RTK floating point solution, multiple search results and a ratio value corresponding to each search result are obtained; the search result with a ratio value greater than a preset value is used as an initial search result, 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 position difference values corresponding to each initial search result, and if the root mean square and standard deviation are both less than a first preset threshold, take the initial search result corresponding to the largest ratio value as the RTK fixed solution; When the generation time of the SLAM positioning result is less than the preset moment, in 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, and if the second spatial position difference is greater than a second preset threshold, the RTK fixed solution is downgraded to a floating-point solution; wherein the value of the second preset threshold is related to the generation time of the SLAM positioning result; wherein the starting moment corresponding to the generation time or the preset moment is the moment when the fixed solution is switched to the floating-point solution by using the RTK positioning module to perform positioning processing on the base station original positioning data and the terminal original positioning data.
2. The method according to claim 1, characterized in that Also includes: When the second spatial position difference is less than the second preset threshold, the RTK fixed solution is used as the final fixed solution.
3. The method according to claim 1, characterized in that Also includes: When the RTK positioning module is used to perform positioning processing on the base station original positioning data and the terminal original positioning data and an RTK initial fixed solution cannot be obtained, the conversion matrix is the conversion matrix corresponding to the previous epoch.
4. The method according to claim 1, characterized in that Before matching the SLAM original positioning data with the RTK initial fixed solution using the SLAM positioning module, the method further includes: The SLAM positioning module is used to store the SLAM original positioning data.
5. The method according to claim 1, characterized in that The calculating a 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 ) is the three-dimensional coordinate of the slam positioning result, R r A is the second spatial position difference, X A , Y A , Z A It is the 3D coordinate of the RTK fixed solution.
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 each preset time period, determine the target time period in which the slam positioning result is generated; Taking the value corresponding to the target time period 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 assisted by SLAM positioning results, characterized in that: Including RTK positioning module and SLAM positioning module; The RTK positioning module is used to obtain the base station original positioning data and the terminal original positioning data; the SLAM positioning module is used to obtain the SLAM original positioning data; The RTK positioning module is used to perform positioning processing on the base station original positioning data and the terminal original positioning data to obtain an RTK initial fixed solution; The SLAM positioning module is used to match the SLAM original positioning data with the RTK initial fixed solution to obtain a conversion matrix; and generate a SLAM positioning result using the conversion matrix and the SLAM original positioning data; The RTK positioning module is used for: The SLAM positioning result is used as the initial value to construct a double difference observation equation, and filtering is performed based on the double difference observation equation to obtain an RTK floating point solution; Performing an ambiguity search on the RTK floating point solution to obtain multiple search results and a ratio value corresponding to each search result; taking the search result whose ratio value is greater than a preset value as an initial search result, and calculating, for each initial search result, a 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 values corresponding to each initial search result, and if the root mean square and standard deviation are both less than a first preset threshold, take the initial search result corresponding to the largest ratio value as the RTK fixed solution; When the generation time of the SLAM positioning result is less than the preset moment, in the fixed solution verification process, the second spatial position difference between the SLAM positioning result and the RTK fixed solution is calculated, and if the second spatial position difference is greater than a second preset threshold, the RTK fixed solution is downgraded to a floating-point solution; wherein the value of the second preset threshold is related to the generation time of the SLAM positioning result; wherein the starting moment corresponding to the generation time or the preset moment is the moment when the fixed solution is switched to the floating-point solution by using the RTK positioning module to perform positioning processing on the base station original positioning data and the terminal original positioning data.
9. An electronic device comprising a memory, a processor and a computer program stored in the memory, wherein the processor implements the method according to any one of claims 1 to 7 when executing the computer program.
10. A computer-readable storage medium, wherein a computer program is stored in the computer-readable storage medium, and when the computer program is executed by a processor, the method according to any one of claims 1 to 7 is implemented.
Citation Information
Patent Citations
Multi-scene drone locating mapping method based on three-dimensional laser radar
CN108303710A
High-precision outdoor positioning method integrating Beidou satellite system and image features
CN109901207A
Navigation and positioning method adopting Beidou navigation and positioning and SLAM positioning technologies
CN112882075A
Fusion positioning precision evaluation method and device for autonomous vehicle, and electronic equipment
CN114777813A
Real-time high-precision positioning and attitude determination method, device and system
CN115979258A