GNSS positioning method, device, electronic device, chip and storage medium
By combining shadow matching method and pseudorange correction technology, NLOS satellites are identified and processed, and the problem of positioning accuracy degradation caused by GNSS signal occlusion in high-rise buildings in urban areas is solved, and high-precision GNSS positioning is achieved.
Patent Information
- Application Number
- CN202311287811.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-10-07
- Publication Date
- 2025-04-08
AI Technical Summary
In high-rise buildings in urban areas, GNSS signals are easily blocked, resulting in a decrease in GNSS positioning accuracy of drones, mobile phones, autonomous vehicles, etc., which cannot meet user communication needs.
By obtaining three-dimensional building maps, GNSS initial locations and GNSS observation data, using shadow matching method and inversion-based pseudorange correction technology, NLOS satellites and LOS satellites are identified, the errors in the initial location of GNSS are corrected, and pseudorange corrections are performed, and the GNSS positioning results are finally optimized.
Improves GNSS positioning accuracy, especially in urban canyon environments, meeting the needs of high-precision positioning.
Smart Images

Figure CN119780977A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of GNSS positioning technology, and in particular to a GNSS positioning method, device, electronic device, chip and storage medium. Background Art
[0002] With urban construction, there are more and more buildings, and they are getting taller and taller. In areas with dense high-rise buildings in cities, GNSS signals are easily blocked, and the GNSS positioning accuracy of drones, mobile phones, self-driving vehicles, etc. decreases, which cannot meet the communication needs of users. Summary of the invention
[0003] Based on this, it is necessary to provide a GNSS positioning method, device, electronic device, chip and storage medium that can improve the GNSS positioning accuracy in urban canyons in response to the above technical problems.
[0004] In a first aspect, the present application provides a GNSS positioning method, the method comprising:
[0005] respectively obtaining a three-dimensional building map, a GNSS initial position and GNSS observation data, wherein the GNSS observation data includes characteristic data of a preset frequency band;
[0006] A satellite visibility observation result is used to determine whether the observed satellite is an NLOS satellite based on characteristic data of a preset frequency band;
[0007] The shadow matching method is used to correct the error of the GNSS initial position based on the GNSS initial position, 3D building map and satellite visibility observation results;
[0008] In the case that there are NLOS satellites among the observed satellites, the pseudorange correction of the NLOS satellite in the preset frequency band is determined based on the inversion of the three-dimensional building map;
[0009] The GNSS positioning result is determined based on the GNSS initial position after pseudorange correction and error correction.
[0010] In a second aspect, a GNSS positioning device is provided, the device comprising:
[0011] An information acquisition module, used to respectively acquire a three-dimensional building map, a GNSS initial position and GNSS observation data, wherein the GNSS observation data includes characteristic data of a preset frequency band;
[0012] A satellite visibility observation module, used to determine the satellite visibility observation result of whether the observed satellite is an NLOS satellite based on the characteristic data of a preset frequency band;
[0013] An error correction module is used to correct the error of the GNSS initial position according to the GNSS initial position, the three-dimensional building map and the satellite visibility observation results by using a shadow matching method;
[0014] A pseudorange correction determination module is used to determine the pseudorange correction of the NLOS satellite in a preset frequency band based on the inversion of the three-dimensional building map when there is an NLOS satellite among the observed satellites;
[0015] The positioning optimization module is used to determine the GNSS positioning result based on the GNSS initial position after pseudorange correction and error correction.
[0016] According to a third aspect, an electronic device is provided, which includes an antenna and a GNSS receiver; the GNSS receiver includes a memory and a processor, the memory stores a computer program, and the processor implements the steps of the above-mentioned GNSS positioning method when executing the computer program.
[0017] In a fourth aspect, a chip is provided, comprising:
[0018] The processor is used to call and run the computer program from the memory, so that the electronic device equipped with the chip executes the steps of the above-mentioned GNSS positioning method.
[0019] In a fifth aspect, a non-volatile computer-readable storage medium is provided, on which a computer program is stored, and when the computer program is executed by a processor, the steps of the above-mentioned GNSS positioning method are implemented.
[0020] The above-mentioned GNSS positioning method, device, electronic device, chip and storage medium classify and identify the observed satellite based on the characteristic data of the preset frequency band to determine whether it is an NLOS satellite or a LOS satellite, and refer to the obtained visibility observation results in the shadow matching method, and combine the GNSS initial position and the three-dimensional building map to correct the error of the GNSS initial position. In addition, the pseudorange correction of the NLOS satellite can be determined based on the inversion, and the GNSS positioning calculation is re-performed based on the pseudorange correction and the error-corrected GNSS initial position to determine the optimized GNSS positioning result. By combining the shadow matching method and the inversion-based pseudorange correction in the GNSS positioning optimization process, the GNSS positioning accuracy can be improved. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] Figure 1 A diagram showing an application environment of a GNSS positioning method in an embodiment;
[0022] Figure 2 This is one of the flowcharts of a GNSS positioning method in one embodiment;
[0023] Figure 3A schematic flow chart of the steps of performing error correction on the GNSS initial position according to the GNSS initial position, the three-dimensional building map and the satellite visibility observation result by using the shadow matching method in one embodiment;
[0024] Figure 4 A schematic flow chart of steps for correcting the error of the GNSS initial position based on the matching of the satellite visibility prediction result and the satellite visibility observation result at each candidate point in an embodiment;
[0025] Figure 5 A schematic diagram of a flow chart of steps for determining a GNSS positioning result based on a GNSS initial position after pseudorange correction and error correction in one embodiment;
[0026] Figure 6 The second flowchart of the GNSS positioning method in one embodiment;
[0027] Figure 7 A schematic diagram of the steps for constructing a satellite classification model in one embodiment;
[0028] Figure 8 A schematic diagram of a flow chart of steps for obtaining sample data in an embodiment;
[0029] Fig. 9 A schematic diagram of satellite signals received between an electronic device to be positioned and a reference station in one embodiment;
[0030] Fig.10 is a structural block diagram of a GNSS positioning device in one embodiment;
[0031] Fig.11 is a diagram of the internal structure of an electronic device in one embodiment;
[0032] Fig.12 It is a structural schematic diagram of an embodiment in which the electronic device is a mobile phone. DETAILED DESCRIPTION
[0033] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
[0034] The GNSS positioning method provided in the embodiment of the present application can be applied to Figure 1In the application environment shown. The electronic device 102 communicates with the satellite 104 through the network. The electronic device 102 may first perform GNSS observation, obtain GNSS observation data, and determine a GNSS initial position, and obtain a three-dimensional building map of the environment in which the electronic device 102 is located through map software and other means. The electronic device 102 may further determine whether the observed satellite 104 is an NLOS (Non Line of Sight) satellite based on the characteristic data of the preset frequency band in the GNSS observation data, and use the shadow matching method to perform error correction on the GNSS initial position according to the determined result and the three-dimensional building map. In addition, when there is an NLOS satellite in the observed satellite, the electronic device determines the pseudorange correction based on the inversion of the three-dimensional building map, and determines a more accurate GNSS positioning result by combining the pseudorange correction and the error-corrected GNSS initial position to meet the high-precision positioning requirements in the urban canyon environment.
[0035] The electronic device 102 may be, but is not limited to, various personal computers, laptops, smart phones, tablet computers, IoT devices, and portable wearable devices. The IoT devices may be smart speakers, smart TVs, smart air conditioners, smart car devices, etc. The portable wearable devices may be smart watches, smart bracelets, head-mounted devices, etc.
[0036] In one embodiment, Figure 2 As shown, a GNSS positioning method is provided, which is applied in Figure 1 Taking the electronic device 104 as an example, the method includes:
[0037] S202, respectively obtaining a three-dimensional building map, a GNSS initial position and GNSS observation data, wherein the GNSS observation data includes characteristic data of a preset frequency band.
[0038] Among them, the GNSS initial position refers to the result of preliminary positioning, that is, the positioning result that has not been optimized. Optionally, the GNSS initial position can be directly obtained based on the electronic device. For example, the positioning result reported by the GNSS chip in the electronic device can be directly used as the GNSS initial position, which can be specifically extracted in NMEA0183. The three-dimensional building map can be a map of the distribution of buildings in the environment in which the electronic device is located. For example, the three-dimensional building map may include specific information such as the location of the building (including longitude and latitude), the elevation of the building, etc. Optionally, the three-dimensional building map can be obtained from a variety of sources including but not limited to map navigation software databases, local building planning departments or urban planning agencies, aerial laser radars, satellite remote sensing, surveying and mapping data, etc. Among them, the three-dimensional building map can be deployed directly on the electronic device side, or on the background server side, and the electronic device can obtain it by accessing the server.
[0039] GNSS observation data refers to data observed by an electronic device (which may include a GNSS receiver) when receiving satellite signals. GNSS observation data may include characteristic data of a preset frequency band.
[0040] S204, based on the characteristic data of the preset frequency band, determining whether the observed satellite is a satellite visibility observation result of an NLOS satellite. That is, the satellite visibility observation result is used to reflect whether the observed satellite is an NLOS satellite or a LOS (line of sight) satellite.
[0041] Among them, the characteristic data of the preset frequency band may include sequence sampling values. The preset frequency band can be configured based on communication requirements. For example, the preset frequency band can be the L5 frequency band. The L5 frequency band is one of the frequency bands in the global satellite navigation system, with a center frequency of 1176.45MHz, which can include GPS L5, BDS B2a, Galileo E5a, etc. The signal in the L5 frequency band has a higher bandwidth and lower multipath effect. From the perspective of single satellite ranging error, the ranging accuracy of L5 can reach 30 meters, while L1 C / A is only 300 meters. Therefore, L5 can improve the accuracy of positioning solution and further improve the accuracy of GNSS positioning results. Optionally, when the preset frequency band is the L5 frequency band, the sequence sampling value may include a data sequence involving a correlation peak of the L5 frequency band, etc.
[0042] S206, using a shadow matching method, according to the GNSS initial position, the three-dimensional building map and the satellite visibility observation result, the error correction of the GNSS initial position is performed.
[0043] Among them, the shadow matching method is a method that uses the satellite visibility obtained according to the signal-to-noise ratio judgment standard (which can be represented by the satellite visibility observation results) as a reference benchmark, and scores the satellite spatial visibility (which can be represented by the satellite visibility prediction results) obtained based on the three-dimensional building map, satellite ephemeris and satellite azimuth, elevation and other information at the possible position of the receiver in the urban canyon (which can be one or more positions in a search range determined by the GNSS initial position), and determines the receiver positioning position based on the score. For example, the one with the highest score (visibility matching degree) among all possible positions can be used as the receiver positioning position. By applying the satellite visibility observation results obtained in the previous sequence to the shadow matching method, the error correction of the GNSS initial position can be achieved. Optionally, it can be the error correction of the GNSS initial position in the cross-street direction, which refers to the direction in the urban canyon that has a non-zero angle with the street extension direction, such as the direction perpendicular to the street extension direction.
[0044] S208, when there is an NLOS satellite among the observed satellites, based on the inversion of the three-dimensional building map, determine the pseudorange correction of the NLOS satellite in the preset frequency band. The pseudorange correction is used to represent the amount by which the distance from the electronic device to the satellite needs to be increased or decreased.
[0045] Among them, the implementation process of determining the pseudo-range correction based on the inversion of the three-dimensional building map can be: first, according to the three-dimensional building map, a satellite signal propagation model is established, and the signal of each satellite is propagated using the established signal propagation model to obtain the result of the signal propagation analysis, and then according to the result of the signal propagation analysis, the path delay of the satellite signal during the propagation process is calculated, and the path delay is converted into the value of the pseudo-range correction. Optionally, the signal propagation model can be a model determined based on the height of the terrain, the height and position of the building, and the reflection, refraction and other influencing factors of the signal. Optionally, the implementation of the propagation analysis of the signal of each satellite using the signal propagation model can be to use the position of the satellite, the position of the GNSS receiver, the information of the terrain and the building as the input data of the model to obtain the model output such as the path length, propagation time and propagation loss of the satellite signal during the propagation process, and the output of the model as the result of the signal propagation analysis.
[0046] S210, determining a GNSS positioning result based on the GNSS initial position after pseudorange correction and error correction.
[0047] The GNSS positioning result can be determined by applying the pseudorange correction value to the error-corrected GNSS initial position. For example, the pseudorange value observed by the electronic device can be added or subtracted from the pseudorange correction value to obtain the corrected pseudorange observation value. Then, the GNSS positioning solution is performed using the corrected pseudorange observation value and the GNSS initial position to obtain the GNSS positioning result. The GNSS positioning solution method can be, but is not limited to, the least squares method, the extended Kalman filter, etc.
[0048] The GNSS positioning method provided in the embodiment of the present application classifies and identifies the observed satellite based on the characteristic data of the preset frequency band, determines whether the observed satellite is an NLOS satellite or a LOS satellite, and references the obtained visibility observation result in the shadow matching method, combines the GNSS initial position and the three-dimensional building map, and performs error correction on the GNSS initial position. In addition, the pseudorange correction of the NLOS satellite can be determined based on the inversion, and the GNSS positioning calculation is re-performed based on the pseudorange correction and the error-corrected GNSS initial position to determine the optimized GNSS positioning result. By combining the shadow matching method and the inversion-based pseudorange correction in the GNSS positioning optimization process, the GNSS positioning accuracy can be improved.
[0049] In one embodiment, if Figure 3 As shown, step S206 of performing error correction on the GNSS initial position according to the GNSS initial position, the three-dimensional building map and the satellite visibility observation result by using the shadow matching method includes:
[0050] S303, obtaining the satellite ephemeris of the observed satellite.
[0051] Among them, satellite ephemeris is used to describe satellite orbit information, including parameters such as the satellite's position, speed, and clock error. Satellite ephemeris can be obtained from multiple sources. For example, satellite ephemeris can be obtained through the broadcast signal of the satellite navigation system, and can also be obtained through the ground control station of the satellite navigation system or the Internet. Electronic devices usually obtain the latest satellite ephemeris before starting positioning to ensure the accuracy of positioning. The update frequency of satellite ephemeris is usually low, so electronic devices can update satellite ephemeris regularly to maintain positioning accuracy.
[0052] S304, determine one or more candidate points corresponding to the observed satellite according to the GNSS initial position. The candidate point refers to one or more points within a distance range determined based on the GNSS initial position. For example, a circular search area with a radius of X can be determined with the GNSS initial position as the center, and the candidate points are on a grid point with an interval of Y. X can be 50m and Y can be 1m.
[0053] S306, determining the satellite visibility prediction result of the observation satellite at each candidate point according to the three-dimensional building map and the satellite ephemeris.
[0054] At each candidate point determined in step S304, the satellite ephemeris can be used to calculate the satellite's altitude and azimuth at the current moment, and the three-dimensional building map can be used to calculate the building's boundary altitude at the same azimuth. If the satellite's altitude is greater than the building's boundary altitude, it is predicted that the satellite is visible, that is, the satellite visibility prediction result is a LOS satellite. Conversely, if the satellite's altitude is less than the building's boundary altitude, it is predicted that the satellite is invisible, that is, the satellite visibility prediction result is a NLOS satellite.
[0055] Among them, the satellite visibility observation results and satellite visibility prediction results can be reflected by signal marking. When the result is a LOS satellite, it is marked as a LOS signal; otherwise, the satellite is marked as a NLOS signal.
[0056] S308, based on the matching of the satellite visibility prediction result and the satellite visibility observation result at each candidate point, correct the error of the GNSS initial position.
[0057] For each candidate point, the higher the matching degree between the satellite visibility prediction result and the satellite visibility observation result, the closer the candidate point is to the actual position of the electronic device. The lower the matching degree between the satellite visibility prediction result and the satellite visibility observation result, the farther the candidate point is from the actual position of the electronic device. Based on this, each candidate point can be evaluated. The candidate point is determined based on the GNSS initial position, so it can characterize the matching situation of the distance between the candidate point and the actual position, and also characterize the error situation between the GNSS initial position and the actual position. Based on this association, the error of the GNSS initial position can be corrected by determining the matching situation between the satellite visibility prediction result and the satellite visibility observation result.
[0058] Optionally, for multiple observation satellites, if the matching degree between the satellite visibility prediction results and the observation results of most satellites (e.g., exceeding a preset ratio) is greater than or equal to the matching degree threshold, it can be considered that the GNSS initial position error is small. If the matching degree between the satellite visibility prediction results and the observation results of most satellites (e.g., exceeding a preset ratio) is less than the matching degree threshold, it can be considered that the GNSS initial position error is large. Different correction strategies can be adopted according to the size of the GNSS initial position error. For example, if the error of the GNSS initial position is small, the GNSS initial position can be directly used as the final positioning result. If the error of the GNSS initial position is large, the position can be corrected by differential positioning, filtering algorithm and other methods to improve the accuracy and reliability of positioning. Among them, the matching degree can be specifically characterized by parameters such as matching probability, and the preset ratio can be set based on the positioning accuracy. The higher the positioning accuracy, the larger the preset ratio. Conversely, the lower the positioning accuracy, the smaller the preset ratio.
[0059] In one embodiment, if Figure 4 As shown, step S308 of correcting the error of the GNSS initial position based on the matching of the satellite visibility prediction result and the satellite visibility observation result at each candidate point includes:
[0060] S402: Determine a score for each candidate point based on a match between a satellite visibility prediction result and a satellite visibility observation result at each candidate point.
[0061] The score of each candidate point can be determined based on the matching probability between the satellite visibility prediction result and the satellite visibility observation result of each candidate point. m It can be determined based on the following formula:
[0062]
[0063] Among them, p j,LOS is the satellite visibility observation result of the jth observed satellite at the current candidate point, pj,BB is the satellite visibility prediction result of the jth observed satellite at the current candidate point. n is the number of observed satellites.
[0064] S404, determine the target candidate point according to the score of each candidate point; the target candidate point is one or more candidate points among the candidate points. The higher the matching probability, the closer the candidate point position is to the real position. Therefore, the target candidate point can be the first or the first few candidate points in the descending order of scores.
[0065] S406, based on the position of the target candidate point, correct the error of the GNSS initial position. If there is only one candidate point with the highest score, the candidate point can be determined as the target candidate point, and the position of the candidate point is used as the GNSS initial position after error correction. However, in the process, there are often more than one candidate point with high scores, so the K-NearestNeighbor (KNN) algorithm can be used to obtain a shadow matching positioning solution, and the solution is used as the corrected GNSS initial position.
[0066] In one embodiment, if Figure 5 As shown, step S210 of determining the GNSS positioning result based on the GNSS initial position after pseudorange correction and error correction includes:
[0067] S502, update the GNSS observation data of the observation satellite, and determine the target satellite based on the updated GNSS observation data, wherein the target satellite is a satellite in the quadrant where the satellite visibility observation result only includes NLOS satellites. Optionally, the GNSS observation data may include the altitude and azimuth of the satellite, and the GNSS observation data of the observation satellite and the quadrant division result of the observation satellite may be updated by recalculating the altitude and azimuth of the satellite. The division of the quadrant may be achieved based on the azimuth, and specifically, the observation satellite may be divided into four quadrants clockwise according to the azimuth.
[0068] Optionally, the target satellite can be determined from the observed satellites by taking the intersection of NLOS satellites and LOS satellites in each quadrant. If a quadrant has both NLOS and LOS satellites, the NLOS satellite is removed and does not participate in the positioning solution. If there are only NLOS satellites but no LOS satellites in a quadrant, since the signals of NLOS satellites may be affected by obstacles such as buildings and trees, their measurement errors are large and are not suitable for accurate positioning solutions. Therefore, NLOS satellites are still involved in the positioning solution, but their weights are reduced according to the carrier-to-noise ratio (C / N0) to reduce the impact of NLOS satellites on the accuracy of GNSS positioning results. For other cases, that is, there are neither NLOS nor LOS satellites in a quadrant, or there are only LOS satellites but no NLOS satellites in a quadrant, no special processing is performed and all satellites participate in the positioning solution.
[0069] S504, determining the GNSS positioning result according to the pseudorange correction and error-corrected GNSS initial position of the target satellite. The GNSS positioning method provided in the embodiment of the present application can effectively screen out reliable LOS satellites based on step S503, and reduce the impact of NLOS satellites on the GNSS positioning result, thereby improving the accuracy and reliability of positioning.
[0070] In one embodiment, if Figure 6 As shown, step S204 of determining whether the observed satellite is a satellite visibility observation result of an NLOS satellite based on the characteristic data of the preset frequency band includes:
[0071] S602, obtaining satellite visibility observation results according to the characteristic data of the preset frequency band and the satellite classification model. The satellite classification model is a model for identifying whether a satellite is an NLOS satellite. The training of the satellite classification model can be implemented based on deep learning.
[0072] The characteristic data of the preset frequency band is used as the input of the satellite classification model. During the GNSS positioning process, characteristic data such as the L5 correlation sequence sampling value can be used as the input of the model to quickly obtain satellite visibility observation results, providing a data basis for correcting the error of the GNSS initial position.
[0073] Since the width of the GPS-L1 C / A code correlation peak is about 600m, the correlation peaks will overlap when there is an NLOS satellite signal. The L5 (GPS-L5, BDS B2a, Galileo E5a) signal has a code rate 10 times that of the L1 C / A signal, so the correlation peak is narrower. In the presence of an NLOS satellite signal, its multiple correlation peaks are separated and the characteristics are more obvious. Based on this, the satellite visibility observation results can be determined by deep learning methods.
[0074] In one embodiment, if Figure 7 As shown in the figure, the steps for building a satellite classification model include:
[0075] S702, obtain a sample data set, the sample data set includes LOS sample data and NLOS sample data; LOS sample data is GNSS observation data calibrated as LOS satellites, and NLOS sample data is GNSS observation data calibrated as NLOS satellites. Training sample data can be formed by collecting feature data within a period of time (such as 24 hours) and satellite visibility calibration results. In order to ensure the recognition accuracy of NLOS satellites and LOS satellites, the number of samples calibrated as LOS satellites and NLOS satellites in the sample data can be roughly the same. Optionally, the sample data set can be divided into a test set and a training set in a ratio of 2:8. During the model training process, model training can be performed based on the sample data in the training set, and model testing and model optimization can be performed based on the sample data in the test set.
[0076] S704, input the sample data into the neural network model to obtain the satellite classification prediction result, and update the neural network model based on the cross entropy loss between the satellite classification prediction result and the sample label (calibrated as LOS satellite or NLOS satellite) to obtain the satellite classification model.
[0077] The sample data can be sent to the neural network model for training, the satellite classification prediction results (NLOS satellite or LOS satellite) of each observed satellite and the cross entropy loss between the sample labels are calculated, the entire neural network is back-propagated, and the parameters of the neural network model are updated. Optionally, the training process can be repeated in multiple training cycles until the loss function fully converges, and the trained neural network model is used as the satellite classification model.
[0078] The direct output of the satellite classification model can be the probability of the observed satellite being a LOS satellite and a NLOS satellite. If the probability of a NLOS satellite is close to 1, it means that the satellite is a NLOS satellite, otherwise it is a LOS satellite. A probability threshold can be set, for example, a value between 0.9 and 1. When the probability of a satellite being a NLOS satellite is greater than or equal to this probability threshold, the probability of the satellite being a NLOS satellite is considered to be close to 1.
[0079] In the GNSS positioning process, taking the characteristic data as the L5 correlation sequence sampling value as an example, the clock frequency is 26MHz, and the sampling value with 27 sampling points within positive and negative one code chip can be selected as the input of the satellite classification model. The correlation duration is 20ms, that is, the input size is 27*20*1 data. According to the probability of the satellite classification model output under this input, it is determined whether the satellite is an NLOS satellite.
[0080] The model training process can be based on the Pytorch framework, the optimizer uses adam, and the initial learning rate is set to 1E-3. The neural network model can be:
[0081]
[0082] Among them, y is the satellite type of the calibrated sample data (NLOS satellite and LOS satellite), is the satellite type of the predicted sample data, and L represents the probability that the satellite is an NLOS satellite.
[0083] Optionally, a double convolutional layer neural network model can be used to train the satellite classification model. The L5 correlation sequence sampling value is input to the first convolutional layer (which can be a convolutional layer with 64 cores, 3*3 cores, and a step size of 1), after the first convolutional layer, it is input to the first pooling layer (which can be a pooling layer with 64 cores, 2*2 cores, and a step size of 2), through the first pooling layer to the second convolutional layer (which can be a convolutional layer with 32 cores, 2*2 cores, and a step size of 1), the second pooling layer (which can be a pooling layer with 32 cores, 2*2 cores, and a step size of 2), and then after being processed in the fully connected layer (which can be 256 neurons), it enters the softmax classifier for classification to obtain the probability of the satellite being an NLOS satellite and the probability of being a LOS satellite.
[0084] In the sample data, the calibration of LOS / NLOS is an important part. Among them, the calibration of LOS / NLOS can be performed by the pseudorange double difference residual method.
[0085] In one embodiment, if Figure 8 As shown, the steps for obtaining sample data include:
[0086] S802, obtaining first GNSS observation data of the mobile station and second GNSS observation data of the reference station, wherein the coordinates of the mobile station need to be calibrated in advance.
[0087] S804, determining a pseudorange double difference residual between the first GNSS observation data and the second GNSS observation data.
[0088] Among them, the pseudorange double difference residual The calculation formula is:
[0089]
[0090] in The quadratic difference between the pseudoranges between stations and between satellites (one observation satellite and one reference satellite) is expressed as It represents the quadratic difference of the geometric distance between stations and satellites.
[0091] S806: Calibrate the observed satellite as an NLOS satellite or a LOS satellite according to the pseudorange double residual and a preset threshold.
[0092] By comparing the pseudo-range double difference residuals after two differences between satellites and stations (mobile station and base station) with the threshold, it can be determined whether it is an NLOS satellite. For example, if the threshold is set to 1, the pseudo-range double difference residual is greater than or equal to 1, then it is an NLOS satellite; if the pseudo-range double difference residual is less than 1, then it is a LOS satellite.
[0093] The reference satellite can be selected as the satellite with the largest average carrier-to-noise ratio within a period of time (such as 24 hours), and the default is the LOS satellite, such as Fig. 9 It is a schematic diagram of satellite signals received between the electronic device to be positioned (such as Receiver r in the figure) and the reference station (such as Receiver b in the figure). Baseline represents the baseline between the electronic device and the reference station. Satellite j and satellite k are the satellites whose satellite types (i.e., satellite visibility) need to be determined and the reference satellites, respectively.
[0094] It should be understood that, although the various steps in the flowcharts involved in the above-mentioned embodiments are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence according to the order indicated by the arrows. Unless there is a clear explanation in this article, the execution of these steps does not have a strict order restriction, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above-mentioned embodiments can include multiple steps or multiple stages, and these steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a part of the steps or stages in other steps.
[0095] Based on the same inventive concept, the embodiment of the present application also provides a GNSS positioning device for implementing the GNSS positioning method involved above. The implementation scheme for solving the problem provided by the device is similar to the implementation scheme recorded in the above method, so the specific limitations in one or more GNSS positioning device embodiments provided below can refer to the limitations of the GNSS positioning method above, and will not be repeated here.
[0096] In one embodiment, Fig.10 As shown, a GNSS positioning device is provided, comprising: an information acquisition module 1002, a satellite visibility observation module 1004, an error correction module 1006, a pseudorange correction determination module 1008, and a positioning optimization module 1010. Among them:
[0097] The information acquisition module 1002 is used to respectively obtain the three-dimensional building map, the GNSS initial position and the GNSS observation data, and the GNSS observation data includes the characteristic data of the preset frequency band. The satellite visibility observation module 1004 determines the satellite visibility observation result of whether the observed satellite is an NLOS satellite based on the characteristic data of the preset frequency band. The error correction module 1006 uses the shadow matching method to perform error correction on the GNSS initial position according to the GNSS initial position, the three-dimensional building map and the satellite visibility observation results. The pseudorange correction determination module 1008 determines the pseudorange correction of the NLOS satellite in the preset frequency band based on the inversion of the three-dimensional building map when there is an NLOS satellite in the observed satellite. The positioning optimization module 1010 determines the GNSS positioning result based on the pseudorange correction and the error-corrected GNSS initial position.
[0098] For the definitions of terms and function implementation processes in the GNSS positioning device, please refer to the introduction in the above method embodiment, which will not be elaborated here.
[0099] In one embodiment, the preset frequency band is the L5 frequency band.
[0100] In one embodiment, the error correction module 1006 includes:
[0101] A satellite ephemeris acquisition unit, used to acquire the satellite ephemeris of the observed satellite;
[0102] A candidate point determination unit, used to determine one or more candidate points corresponding to the observation satellite according to the GNSS initial position;
[0103] A practicable prediction result determination unit is used to determine the satellite visibility prediction result of the observation satellite at each candidate point according to the three-dimensional building map and the satellite ephemeris;
[0104] The error correction unit is used to correct the error of the GNSS initial position based on the matching of the satellite visibility prediction result and the satellite visibility observation result at each candidate point.
[0105] In one embodiment, the error correction unit includes:
[0106] A candidate point scoring unit, used to determine a score for each candidate point based on a match between a satellite visibility prediction result and a satellite visibility observation result at each candidate point;
[0107] A target candidate point determination unit, used to determine a target candidate point according to the score of each candidate point; the target candidate point is one or more candidate points among the candidate points;
[0108] The correction unit is used to correct the error of the GNSS initial position based on the position of the target candidate point.
[0109] In one embodiment, the positioning optimization module 1010 includes:
[0110] an observation data updating unit, configured to update the GNSS observation data of the observation satellite, and determine the target satellite based on the updated GNSS observation data, wherein the GNSS observation data includes an azimuth, the observation satellite is divided into four quadrants clockwise according to the azimuth, and the target satellite is a satellite in a quadrant where the satellite visibility observation result includes only NLOS satellites;
[0111] The repositioning unit is used to determine the GNSS positioning result according to the pseudorange correction of the target satellite and the GNSS initial position after error correction.
[0112] In one embodiment, the satellite visibility observation module includes:
[0113] A model component unit is used to construct a satellite classification model; wherein the satellite classification model is a model used to identify whether a satellite is a NLOS satellite;
[0114] The prediction execution unit is used to obtain satellite visibility observation results based on the characteristic data of the preset frequency band and the satellite classification model.
[0115] In one embodiment, the GNSS positioning device further includes:
[0116] The sample data set acquisition module is used to acquire the sample data set, and the sample data includes LOS sample data and NLOS sample data; the LOS sample data is the GNSS observation data calibrated as the LOS satellite, and the NLOS sample data is the GNSS observation data calibrated as the NLOS satellite;
[0117] The iterative training module is used to iteratively input sample data into the neural network model to obtain satellite classification prediction results, and update the neural network model based on the cross entropy loss between the satellite classification prediction results and the sample labels until the training end condition is reached, and the trained neural network model is used as the satellite classification model.
[0118] In one embodiment, the sample data set acquisition module includes:
[0119] An observation data acquisition unit, used to acquire first GNSS observation data of the mobile station and second GNSS observation data of the reference station;
[0120] a pseudorange double difference residual determination unit, configured to determine a pseudorange double difference residual between the first GNSS observation data and the second GNSS observation data;
[0121] The satellite visibility calibration unit is used to calibrate the observed satellite as an NLOS satellite or a LOS satellite according to the pseudorange double residual and a preset threshold.
[0122] Each module in the above GNSS positioning device can be implemented in whole or in part by software, hardware or a combination thereof. Each module can be embedded in or independent of a processor in an electronic device in the form of hardware, or can be stored in a memory in an electronic device in the form of software, so that the processor can call and execute operations corresponding to each module.
[0123] In one embodiment, an electronic device is provided. The electronic device may be a terminal, and its internal structure diagram may be as follows: Fig.11 As shown. The electronic device includes a processor, a memory, an input / output interface, a communication interface, a display unit and an input device. The processor, the memory and the input / output interface are connected via a system bus, and the communication interface, the display unit and the input device are connected to the system bus via the input / output interface. The processor of the electronic device is used to provide computing and control capabilities. The memory of the electronic device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The input / output interface of the electronic device is used to exchange information between the processor and an external device. The communication interface of the electronic device is used to communicate with an external terminal in a wired or wireless manner, and the wireless manner can be implemented through WIFI, a mobile cellular network, NFC (near field communication) or other technologies. When the computer program is executed by the processor, a GNSS positioning method is implemented.
[0124] Those skilled in the art will understand that Fig.11 The structure shown in the figure is merely a block diagram of a partial structure related to the scheme of the present application, and does not constitute a limitation on the electronic device to which the scheme of the present application is applied. The specific electronic device may include more or fewer components than shown in the figure, or combine certain components, or have a different arrangement of components.
[0125] In one embodiment, an electronic device is provided, including an antenna and a GNSS receiver. The GNSS receiver includes a memory and a processor, and the processor implements some or all of the steps in the above GNSS positioning method embodiment when executing a computer program, and achieves the beneficial effects achieved during the execution of some or all of the steps, which will not be described in detail here.
[0126] Electronic devices can be Fig.12 In addition to the mobile phone shown, it can also be other devices with GNSS positioning function.
[0127] In one embodiment, the present application further provides a chip, including a processor. The processor is used to call and run a computer program from a memory, so that an electronic device equipped with the chip executes the steps of the above GNSS positioning method and achieves corresponding beneficial effects, which will not be described in detail here.
[0128] In one embodiment, a non-volatile computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, some or all of the steps in the above-mentioned GNSS positioning method embodiment are implemented, and the beneficial effects achieved during the execution of some or all of the steps are achieved.
[0129] In one embodiment, a computer program product is provided, including a computer program, which, when executed by a processor, implements some or all of the steps in the above-mentioned GNSS positioning method embodiment and achieves the beneficial effects achieved during the execution of some or all of the steps.
[0130] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to the memory, database or other medium used in the embodiments provided in the present application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetoresistive random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The database involved in each embodiment provided in this application may include at least one of a relational database and a non-relational database. Non-relational databases may include distributed databases based on blockchains, etc., but are not limited to this. The processor involved in each embodiment provided in this application may be a general-purpose processor, a central processing unit, a graphics processor, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, etc., but are not limited to this.
[0131] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0132] The above-described embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the present application. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the attached claims.
Claims
1. A GNSS positioning method, characterized in that: The method comprises: Respectively obtaining a three-dimensional building map, a GNSS initial position, and GNSS observation data, wherein the GNSS observation data includes characteristic data of a preset frequency band; Determine, based on the characteristic data of the preset frequency band, a satellite visibility observation result of whether the observed satellite is an NLOS satellite; Using a shadow matching method, according to the GNSS initial position, the three-dimensional building map and the satellite visibility observation result, the error correction of the GNSS initial position is performed; In the case where there is an NLOS satellite among the observation satellites, determining a pseudorange correction of the NLOS satellite in a preset frequency band based on the inversion of the three-dimensional building map; Based on the pseudorange-corrected and error-corrected GNSS initial position, a GNSS positioning result is determined.
2. The method according to claim 1, characterized in that The preset frequency band is the L5 frequency band.
3. The method according to claim 1, characterized in that The method of using the shadow matching method to perform error correction on the GNSS initial position according to the GNSS initial position, the three-dimensional building map and the satellite visibility observation result includes: Obtaining satellite ephemeris of the observation satellite; Determine one or more candidate points corresponding to the observation satellite according to the GNSS initial position; Determining a satellite visibility prediction result of the observation satellite at each of the candidate points according to the three-dimensional building map and the satellite ephemeris; Based on the matching of the satellite visibility prediction result and the satellite visibility observation result at each of the candidate points, the error of the GNSS initial position is corrected.
4. The method according to claim 3, characterized in that The correcting the error of the GNSS initial position based on the matching of the satellite visibility prediction result and the satellite visibility observation result at each candidate point includes: Determining a score for each candidate point based on a match between a satellite visibility prediction result and a satellite visibility observation result at each candidate point; Determine a target candidate point according to the score of each candidate point; the target candidate point is one or more candidate points among the candidate points; Based on the position of the target candidate point, the error of the GNSS initial position is corrected.
5. The method according to any one of claims 1 to 4, characterized in that: The determining of the GNSS positioning result based on the GNSS initial position after the pseudorange correction and error correction includes: updating the GNSS observation data of the observation satellite, and determining a target satellite based on the updated GNSS observation data, wherein the target satellite is a satellite in a quadrant in which the satellite visibility observation result includes only NLOS satellites; The GNSS positioning result is determined according to the pseudorange correction and error-corrected GNSS initial position of the target satellite.
6. The method according to claim 1, characterized in that The satellite visibility observation result of determining whether the observed satellite is an NLOS satellite based on the characteristic data of the preset frequency band includes: The satellite visibility observation result is obtained according to the characteristic data of the preset frequency band and the satellite classification model.
7. The method according to claim 6, characterized in that The steps of constructing the satellite classification model include: Acquire a sample data set, the sample data including LOS sample data and NLOS sample data; the LOS sample data is GNSS observation data calibrated as a LOS satellite, and the NLOS sample data is GNSS observation data calibrated as a NLOS satellite; The sample data is input into a neural network model to obtain a satellite classification prediction result, and based on the cross entropy loss between the satellite classification prediction result and the sample label, the neural network model is updated to obtain the satellite classification model.
8. The method according to claim 7, characterized in that The step of obtaining the sample data comprises: Acquire first GNSS observation data of the mobile station and second GNSS observation data of the reference station; Determine a pseudorange double difference residual of the first GNSS observation data and the second GNSS observation data; The observed satellite is calibrated as an NLOS satellite or a LOS satellite according to the pseudorange double residual and a preset threshold.
9. A GNSS positioning device, characterized in that: The device comprises: An information acquisition module, used to respectively acquire a three-dimensional building map, a GNSS initial position, and GNSS observation data, wherein the GNSS observation data includes characteristic data of a preset frequency band; A satellite visibility observation module, used for determining a satellite visibility observation result of whether the observed satellite is an NLOS satellite based on the characteristic data of the preset frequency band; an error correction module, configured to perform error correction on the GNSS initial position according to the GNSS initial position, the three-dimensional building map and the satellite visibility observation result by using a shadow matching method; A pseudorange correction determination module, configured to determine the pseudorange correction of the NLOS satellite in a preset frequency band based on the inversion of the three-dimensional building map when there is an NLOS satellite among the observation satellites; The positioning optimization module is used to determine the GNSS positioning result based on the GNSS initial position after the pseudorange correction and error correction.
10. An electronic device, characterized in that: The electronic device comprises an antenna and a GNSS receiver; the GNSS receiver comprises a memory and a processor, the memory stores a computer program, and the processor implements the steps of the method according to any one of claims 1 to 8 when executing the computer program.
11. A chip, characterized in that: include: A processor, used to call and run a computer program from a memory, so that an electronic device equipped with the chip executes the steps of the method as described in any one of claims 1 to 8.
12. A non-volatile computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 8 are implemented.