Mobile phone end shadow matching positioning method and system in urban complex environment

By extracting satellite SNR distribution characteristics in complex urban environments and using multi-source data to generate candidate location sets, combined with the weighted average positioning method, the problem of insufficient single-point positioning accuracy of GNSS pseudorange on mobile phones is solved, and positioning accuracy and dynamic performance are improved.

CN120334976AActive Publication Date: 2025-07-18CHINA UNIV OF MINING & TECH

Patent Information

Application Number
CN202510773271.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-11
Publication Date
2025-07-18
Estimated Expiration
2045-06-11

AI Technical Summary

Technical Problem

In complex urban environments, the single-point positioning accuracy of GNSS pseudorange on mobile phones is insufficient, especially under dynamic conditions, the positioning performance is unstable, making it difficult to meet pedestrian positioning needs.

Method used

By extracting three-dimensional models of building boundaries and road area blocks, satellite SNR distribution characteristics are obtained, combined with accelerometer, magnetometer and gyroscope data, candidate location sets are generated, and satellite visibility and SNR distribution characteristics are used for weighted average positioning to reduce noise impact.

Benefits of technology

The positioning accuracy of the shadow matching algorithm in complex urban environments and the street positioning performance under dynamic conditions is significantly improved, and the impact of noise on the positioning results is reduced.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120334976A_ABST
    Figure CN120334976A_ABST
Patent Text Reader

Abstract

The invention provides a mobile phone side shadow matching positioning method and system in a city complex environment, and the method comprises the steps: extracting building boundaries and road region blocks, and carrying out the statistics of satellite SNR distribution characteristics; gNSS observation data and broadcast ephemeris of a mobile phone terminal are obtained, SNR is smoothed through low-pass filtering, and the absolute position of a pedestrian and the position of a satellite are obtained; acquiring data of an accelerometer, a magnetometer and a gyroscope, and acquiring a pedestrian step length and a course angle according to observation data; generating an initial candidate position set according to the initial absolute position of the pedestrian, and updating candidate positions according to the step length and the course angle of the pedestrian; predicting satellite visibility characteristics according to the satellite position and the building boundary; scoring the candidate position and determining the weight according to the SNR distribution characteristics, the satellite visibility, the elevation angle, the azimuth angle and the distance between the candidate position and the absolute position of the pedestrian, and determining the position of the pedestrian according to a weighted average method. According to the method, the dynamic positioning precision of the shadow matching algorithm in the urban complex environment can be remarkably improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of satellite navigation and positioning, and specifically to a method and system for mobile phone shadow matching positioning in complex urban environments. Background Art

[0002] With the development of society and the construction of cities, positioning in complex urban environments has received more extensive attention. The Global Navigation Satellite System (GNSS) plays an important role in urban navigation with its all-weather and all-time characteristics. Its pseudo-range single-point positioning accuracy in open areas can reach the meter level. At the same time, as a low-cost satellite signal receiving device, the mobile phone also occupies a dominant position in general civilian scenarios due to its portability, low price, and high civilian use. However, in complex urban environments, the propagation of satellite signals is easily affected by multipath effects and will be reflected, diffracted, and refracted during propagation. Therefore, the GNSS satellite signals received by the mobile phone include not only line-of-sight (LOS) signals, but also non-line-of-sight (NLOS) signals and multipath signals, etc., and the signal-to-noise ratio (SNR) of the satellite signals will also fluctuate greatly. In addition, due to volume limitations, the mobile phone cannot add hardware devices such as choke coils to weaken the impact of environmental factors on its positioning accuracy. Therefore, the error of mobile phone pseudo-range single-point positioning can reach dozens or even hundreds of meters. However, the mobile phone occupies a dominant position in daily urban scenarios, and users also have certain accuracy requirements for positioning. Therefore, it is necessary to improve the accuracy of mobile phone pseudo-range single-point positioning at the algorithm level. The shadow matching technology can effectively improve the positioning accuracy of GNSS pseudo-range single-point positioning in the cross-street direction in complex urban environments. The shadow matching technology considering local optimality improves the utilization efficiency of satellites and increases the scoring difference between different candidate positions, further improving the positioning accuracy of shadow matching. However, its positioning performance in dynamic environments is insufficient, and its positioning performance in the along-street direction is not stable enough to meet the needs of pedestrian dynamic positioning. Summary of the Invention

[0003] The present invention proposes a method and system for mobile phone shadow matching positioning in complex urban environments to solve the problem of insufficient positioning performance of GNSS shadow matching considering local optimality at the mobile phone end under dynamic conditions, further improve the algorithm's utilization ability for SNR data, and at the same time reduce the impact of SNR noise on the scoring of candidate positions. The technical solutions provided by the present invention are as follows: In a first aspect, the present invention provides a method for mobile phone shadow matching positioning in complex urban environments, including the following steps: Step 101: Extract the building boundaries and road area blocks from the 3D model of the target area, and statistically analyze the satellite SNR distribution characteristics of the target area; Step 102: Obtain the GNSS observation data and broadcast ephemeris on the mobile device. The GNSS observation data includes GNSS pseudorange and satellite SNR data. Smooth the satellite SNR data using low-pass filtering. Obtain the initial position of the pedestrian, the absolute position of the pedestrian, and the satellite positions based on the GNSS observation data and the broadcast ephemeris; Step 103: Obtain the accelerometer, magnetometer, and gyroscope data on the mobile device, and obtain the pedestrian step length and heading angle based on these data; Step 104: Generate an initial candidate position set based on the initial position of the pedestrian, and update the candidate positions based on the pedestrian step length and heading angle; Step 105: Update the coordinates of the candidate positions according to the topological relationship between each candidate position and the road area blocks. Calculate the satellite elevation angle and azimuth angle based on the satellite positions and the building boundaries, and predict the satellite visibility at the candidate positions; Step 106: Score the candidate positions and determine the weights according to the satellite SNR distribution characteristics, satellite SNR data, satellite visibility, elevation angle, azimuth angle, and the distance between the candidate positions and the absolute position of the pedestrian, and determine the pedestrian position according to the weighted average method.

[0004] Preferably, in Step 102, collect the GNSS pseudorange and satellite SNR data, record the collection time in UTC, and obtain the corresponding broadcast ephemeris; calculate the position of each satellite at the corresponding epoch based on the time information of the GNSS observation data and the broadcast ephemeris, and store the satellite positions in the form of geodetic coordinates; Adopt the least squares method to calculate the absolute position of the pedestrian in each epoch according to the GNSS pseudorange and the satellite positions, and store it in the form of geodetic coordinates (B, L, H); Take the pedestrian position in the initial epoch as the station center, and calculate the station center coordinates (E, N, U) of the pedestrian in each epoch.

[0005] Preferably, the process of obtaining the pedestrian step length and heading angle in Step 103 is as follows: collect the accelerometer, magnetometer, and gyroscope data, record the collection time in UTC, and perform time series alignment on the multi-source data based on the time series of the GNSS observation data; Adopt the wave peak detection method to detect the step frequency of the accelerometer data, and use the Weinberg algorithm to calculate the step length; Adopt the Mahony algorithm to correct the accelerometer, magnetometer, and gyroscope data with each other, and calculate the heading angle based on the corrected data.

[0006] Preferably, in step 104, a set of candidate positions conforming to a Gaussian distribution is generated with the pedestrian's initial position station center coordinates as the center, and the coordinates of the candidate positions in the geodetic coordinate system and the station center coordinate system are stored; based on the Gaussian random process, the coordinates of each candidate position in each epoch are updated according to the pedestrian's step length and heading angle.

[0007] Preferably, the specific update formula for updating the coordinates of the candidate positions is as follows:

[0008]

[0009]

[0010]

[0011] In the formula, i is the current epoch, L i is the step length, is the step length with process random error added, is the process random error of the step length, which follows distribution, is the step length measurement error; θ i is the heading angle, is the heading angle with process random error added, is the process random error of the heading angle, which follows distribution, is the heading angle measurement error; E i is the E coordinate after the candidate position state is updated, E i-1 is the E coordinate before the candidate position state is updated, N i is the N coordinate after the candidate position state is updated, N i-1 is the N coordinate before the candidate position state is updated; Calculate the coordinates of the updated candidate position in the geodetic coordinate system.

[0012] Preferably, step 105 is specifically as follows: According to the geodetic coordinates of the candidate position and the road area block, calculate the projected coordinates on the Gaussian plane, and use the ray method to determine whether the candidate position is within the road area. If the candidate position is located inside the road, mark the candidate position, and at the same time, interpolate the geodetic H coordinate of the candidate position according to the geodetic height of the characteristic points of the road area block where the candidate position is located, and update the station center U coordinate; Convert the building boundary and satellite position to the topocentric coordinates with the pedestrian's initial position as the reference center; calculate the azimuth and elevation angles of the building feature points and satellites relative to each candidate position based on the converted topocentric coordinates. Predict satellite visibility based on the satellite azimuth and the azimuth of the building feature points, classify invisible satellites as NLOS satellites, and classify visible satellites as LOS satellites.

[0013] Preferably, in step 106, specifically: Judge the measured satellite visibility according to the satellite SNR data; At each candidate position, compare the predicted satellite visibility with the measured satellite visibility, and obtain the score of each candidate position according to the comparison result, the satellite SNR distribution characteristics, the satellite elevation angle and azimuth; assign 0 points to the candidate positions outside the road. Calculate the distance between each candidate position and the pedestrian's absolute position according to the pedestrian's absolute position, and determine the weight of the candidate position according to the distance and the score of the candidate position; Normalize the weights of the candidate positions, and perform weighted average calculation according to the geodetic coordinates of the candidate positions and the normalized weights to obtain the final position of the pedestrian.

[0014] Preferably, satellites with satellite SNR data greater than 31.91 dB-Hz are identified as LOS satellites, satellites with satellite SNR data less than 26.79 dB-Hz are identified as NLOS satellites, and if the satellite SNR data is between the two, these satellites will be discarded in the subsequent scoring.

[0015] In a second aspect, the present invention provides a mobile phone shadow matching positioning system in a complex urban environment, including the following modules: A positioning assistance data acquisition module, used to extract the building boundary and road area blocks from the three-dimensional model of the target area, and count the satellite SNR distribution characteristics of the target area; A GNSS data preprocessing module, used to obtain the mobile phone GNSS observation data and broadcast ephemeris, smooth the satellite SNR data using low-pass filtering, and obtain the pedestrian's absolute position and satellite position according to the GNSS observation data and broadcast ephemeris; A PDR data preprocessing module, used to obtain the mobile phone accelerometer, magnetometer, and gyroscope data, and obtain the pedestrian's step length and heading angle according to the data; A candidate position generation and update module, used to generate an initial candidate position set according to the pedestrian's initial absolute position, and update the candidate positions according to the pedestrian's step length and heading angle; A satellite visibility prediction module, which is used to update the elevation of candidate positions according to the topological relationship between each candidate position and the road area block, and predict the satellite visibility at the candidate positions according to the satellite positions and building boundaries; A candidate position weighting and pedestrian positioning module, which scores and determines the weights of candidate positions according to the satellite SNR distribution characteristics, predicted satellite visibility, measured satellite visibility, elevation angle, azimuth angle, and the distance between the candidate position and the pedestrian's absolute position, and determines the pedestrian position according to the weighted average method.

[0016] Compared with the prior art, the beneficial effects achieved by the present invention are as follows: The present invention provides a mobile phone shadow matching positioning method and system in a complex urban environment. By collecting prior information in the target area and applying the prior probability distribution information of SNR to the scoring, the shadow matching method is made more effective in the target area; By weighting with SNR, the positioning error of shadow matching in the street direction is effectively restricted; Using the prior probability of SNR, satellite elevation angle and azimuth angle to score the satellites is more effective in reducing the influence of satellites with poor quality on the positioning result; In addition, the present invention also introduces PDR data, which effectively improves the problem of insufficient street positioning performance of the shadow matching algorithm under dynamic conditions. Description of the Drawings

[0017] The drawings are used to provide a further understanding of the present invention and constitute a part of the specification. Together with the embodiments of the present invention, they are used to explain the present invention and do not constitute a limitation to the present invention. In the drawings: Figure 1 It is a flowchart of the mobile phone shadow matching positioning method in a complex urban environment provided by the present invention; Figure 2 It is a flowchart of the shadow matching positioning provided by the present invention; Figure 3 It is a prior probability density graph of SNR provided by the present invention; Figure 4 It is a prior probability distribution graph of SNR provided by the present invention; Figure 5 It is a structural diagram of the mobile phone shadow matching positioning system in a complex urban environment provided by the present invention. Detailed Embodiments

[0018] Next, the technical solutions in the embodiments of the present invention will be clearly and completely described in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present invention.

[0019] To make the objectives, features, and effects of the present invention more obvious and understandable, the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments.

[0020] Embodiment 1: As Figure 1 and Figure 2 shown, a mobile phone shadow matching positioning method in a complex urban environment includes: Step 101: Extract building boundaries and road area blocks from the three-dimensional model of the target area, and statistically analyze the satellite SNR distribution characteristics of the target area.

[0021] Within the target area, a three-dimensional model is established based on the oblique photogrammetry method; in the three-dimensional model, the building boundary dataset is divided by building; the road boundary points are segmented at the road corner positions to divide the road area block dataset; the above datasets are stored, and the stored coordinate form is the geodetic coordinates (B, L, H) under the WGS-84 reference ellipsoid.

[0022] Within the target area, satellite SNR data of LOS and NLOS signals are collected in open and shaded areas respectively, and the data is fitted to obtain the satellite SNR distribution characteristics of the target area, including the probability density curve and the probability distribution curve, as Figure 3 and Figure 4 shown. Taking 0.98 as the confidence level, a Z-test is performed on the probability density curve, a right-sided test is performed on the NLOS curve, and a left-sided test is performed on the LOS curve. The lower and upper bounds of the rejection region are respectively taken as the SNR scoring thresholds.

[0023] Step 102: Obtain the mobile phone GNSS observation data and broadcast ephemeris. The GNSS observation data includes GNSS pseudorange and satellite SNR data. The satellite SNR data is smoothed using low-pass filtering, and the pedestrian's initial position, absolute position, and satellite positions are obtained based on the GNSS observation data and the broadcast ephemeris.

[0024] Specifically, the mobile phone is used to collect GNSS pseudorange and satellite SNR data, and the collection time is recorded in UTC time to obtain the corresponding broadcast ephemeris; under the WGS-84 reference ellipsoid, according to the epoch time series and the broadcast ephemeris, the position of each satellite in each epoch is solved, and based on the solved satellite positions and the GNSS pseudorange, the least squares method is used to solve the pedestrian's absolute position in each epoch. The position in the initial epoch is the pedestrian's initial position, and the above positions are stored in the form of geodetic coordinates; the calculation formulas for the pedestrian's absolute position and the least squares are as follows:

[0025]

[0026]

[0027] In the formula is the pseudorange measurement value, is the true distance between the satellite and the mobile phone, is the receiver clock error, is the satellite clock error, is the tropospheric error, is the ionospheric error, is the measurement noise, V is the correction of the observation value, B is the coefficient matrix, X is the coordinate correction, L is the constant vector, T is the transpose symbol, is the speed of light, is the weight matrix of the observation value.

[0028] Taking the pedestrian's initial position as the station center, calculate the station center coordinates (E, N, U) in each epoch.

[0029] In practical applications, the satellite SNR data collected by the mobile phone has serious noise and large fluctuations, which affect the scoring of subsequent shadow matching. Since this noise is white noise, low-pass filtering is used to filter the satellite SNR data. The specific formula is as follows:

[0030]

[0031] In the formula is the smoothing factor (0.1 - 0.2), is the SNR data of the k-th satellite in the i-th epoch, is the smoothed SNR data of the k-th satellite in the i-th epoch, is the i-th epoch, is the epoch when the signal is lost, T is the time threshold for filter reset.

[0032] Step 103: Obtain the accelerometer, magnetometer, and gyroscope data of the mobile phone, and obtain the pedestrian's step length and heading angle based on these data.

[0033] Specifically, set the sampling frequency to 50 Hz, and use the mobile phone to collect the accelerometer, magnetometer, and gyroscope data, denoted as (a x , a y , a z ), (m x , m y , m z ), (ω x , ω y , ωz ) Record the acquisition time in UTC, and based on the time sequence of GNSS observation data, perform time sequence alignment on multi-source data; According to the accelerometer data, calculate the modulus of acceleration, and use a Butterworth filter to filter out pseudo peaks and pseudo valleys. Detect the peaks and valleys of the acceleration modulus using the peak detection method. Take a set of peaks and valleys as one step, and record the pedestrian step frequency; Based on the peaks and valleys, calculate the single-step length according to the Weinberg empirical model. The specific formula is as follows:

[0034] Where L i is the step length of the step, K is an empirical constant, a max is the peak, a min is the valley.

[0035] According to the Mahony algorithm, correct the accelerometer, magnetometer, and gyroscope data with each other, calculate the attitude quaternion (q0, q1, q2, q3) based on the corrected data, and then solve the heading angle from it , starting from the N direction.

[0036] Step 104: Generate an initial candidate position set according to the pedestrian's initial position, and update the candidate positions according to the pedestrian's step length and heading angle.

[0037] Specifically, centered on the geocentric coordinates of the pedestrian's initial position, with a radius of 10 - 20m (or the measurement error of GNSS pseudorange single-point positioning in the target area), generate M (such as 1000) candidate positions that conform to the Gaussian distribution, and calculate the coordinates of the candidate positions in the geocentric coordinate system; After obtaining the final positioning result, in the next epoch, it is necessary to update the status of the candidate positions, and the update process conforms to the Gaussian random process. The specific update formula is as follows:

[0038]

[0039]

[0040]

[0041] In the formula, is the step length with added process random error, is the process random error of the step length, which follows distribution, is the step length measurement error; is the heading angle with the process random error added, is the random error of the heading angle, obeying distributed, is the heading angle measurement error; E i is the E coordinate after the candidate position status is updated, E i-1 is the E coordinate of the candidate position before the state is updated, N i is the N coordinate after the candidate position status is updated, N i-1 is the N coordinate of the candidate location before the state is updated.

[0042] It is also necessary to calculate the coordinates of the updated candidate position in the geodetic coordinate system.

[0043] Step 105: updating the coordinates of the candidate positions according to the topological relationship between each candidate position and the road area block, and predicting the satellite visibility at the candidate positions according to the satellite positions and the building boundaries.

[0044] Specifically, based on the geodetic coordinates of the candidate position and the road area block, their projection coordinates on the Gaussian plane are calculated, and the ray method is used to determine whether the candidate position is within the road area. If the candidate position is located inside the road, the candidate position is marked. At the same time, based on the geodetic height of the feature point of the road area block where the candidate position is located, the geodetic height of the candidate position is interpolated and the U coordinate is updated.

[0045] Before predicting satellite visibility, the building boundaries and satellite positions need to be converted into station center coordinates with the pedestrian's initial position as the station center. At the current epoch, the building feature points and the azimuth and altitude angles of the satellite relative to each candidate position are calculated based on the converted station center coordinates. The specific calculation formula is as follows:

[0046]

[0047] In the formula, el is the altitude angle, az is the azimuth.

[0048] Based on the satellite azimuth and the azimuth of the building feature point, determine whether there is a building in the direction of the satellite. If not, the satellite is predicted as a LOS satellite for the candidate position. Otherwise, the elevation angle is interpolated according to the azimuth of the satellite and the building feature point to obtain the elevation angle of the building boundary in the direction of the satellite relative to the candidate position, and compare it with the satellite elevation angle. If it is greater than the satellite elevation angle, the satellite is positioned as an NLOS satellite, otherwise, it is a LOS satellite.

[0049] Step 106: Score the candidate positions and determine weights based on satellite SNR data, satellite visibility, elevation angle, azimuth angle, and the distance between the candidate position and the pedestrian's absolute position, and determine the pedestrian's position according to the weighted average method.

[0050] Specifically, before scoring, it is necessary to first determine whether the candidate position is marked as an in-road candidate position. If so, enter the candidate position scoring step; otherwise, assign 0 points to the candidate position. Determine the measured satellite visibility based on the satellite SNR data, and combine with the Figure 3 SNR scoring threshold obtained from Figure 4 to identify satellites with SNR greater than 31.91 dB-Hz as LOS satellites and satellites with SNR less than 26.79 dB-Hz as NLOS satellites. If the satellite SNR is between the two, discard this part of the satellites in subsequent scoring. At each candidate position, compare the predicted satellite visibility with the measured satellite visibility, and combine with

[0051]

[0052] In the formula, is the score of the k-th satellite in the i-th epoch, is the visibility matching situation of the k-th satellite in the i-th epoch. If the visibility is the same, it is 1; otherwise, it is -1. is the smoothed SNR of the k-th satellite in the i-th epoch, is the corresponding value of the k-th satellite on the probability distribution curve of LOS signals, is the corresponding value of the k-th satellite on the probability distribution curve of NLOS signals; score using the corresponding formula according to whether the measured satellite visibility is LOS or NLOS.

[0053] Assign weights to the scores of the satellites according to the azimuth angle and elevation angle of the satellites. The specific formula is as follows:

[0054]

[0055] In the formula is the score weight of the k-th satellite in the i-th epoch, is the elevation angle of the k-th satellite in the i-th epoch, is the azimuth angle of the k-th satellite in the i-th epoch, is the heading angle smoothed at the i-th epoch. When the measured satellite visibility judged according to the satellite SNR data is LOS, the above formula is adopted; otherwise, the following formula is adopted. At the candidate position, the fractional weighted sum of the satellites is calculated to obtain the score of the candidate position. The specific formula is as follows:

[0056] In the formula, is the score of the m-th candidate position in the i-th epoch.

[0057] After obtaining the candidate position score, the weight of the candidate position is determined according to the 2D distance between the candidate position and the GNSS pseudorange positioning result and the candidate position score. The specific formula is as follows:

[0058] In the formula, is the weight of the m-th candidate position in the i-th epoch, is the score of the m-th candidate position in the i-th epoch, is the plane coordinate (E, N) of the GNSS pseudorange single-point positioning result in the local-level coordinate system at the i-th epoch, is the plane coordinate (E, N) of the m-th candidate position in the local-level coordinate system at the i-th epoch, R is the measurement error of the GNSS pseudorange single-point positioning.

[0059] Normalize the candidate position weights, and perform weighted average calculation according to the geodetic coordinates of the candidate positions and the normalized weights to obtain the final position of the pedestrian. The specific formula is as follows:

[0060]

[0061] In the formula, is the normalized weight of the m-th candidate position in the i-th epoch, is the coordinate (B, L, H) of the pedestrian in the geodetic coordinate system at the i-th epoch, is the coordinate (B, L, H) of the m-th candidate position in the geodetic coordinate system at the i-th epoch.

[0062] Embodiment 2: In order to execute the method corresponding to the above Embodiment 1 to achieve the corresponding functions and technical effects, a mobile phone shadow matching positioning system in a complex urban environment is provided below.

[0063] As Figure 5 shown, a mobile phone shadow matching positioning system in a complex urban environment includes: The positioning assistance data acquisition module 501 is used to extract building boundaries and road area blocks from the 3D model of the target area, and statistically analyze the satellite SNR distribution characteristics of the target area.

[0064] The GNSS data preprocessing module 502 is used to obtain the GNSS observation data and broadcast ephemeris on the mobile phone side, smooth the satellite SNR data using low-pass filtering, and obtain the absolute position of the pedestrian and the satellite position according to the GNSS observation data and broadcast ephemeris.

[0065] The GNSS data preprocessing module specifically includes: a GNSS data acquisition unit that uses the mobile phone to collect GNSS observation data, including GNSS pseudorange and the corresponding satellite SNR data, and obtains the broadcast ephemeris corresponding to the observation data; an SNR smoothing unit that smooths the collected satellite SNR data using low-pass filtering; a satellite coordinate calculation unit that calculates the position of each satellite at the corresponding epoch according to the time information of the GNSS observation data and the broadcast ephemeris, and stores the geodetic coordinates of the satellite; a pedestrian coordinate calculation unit that, based on the least squares method, calculates and stores the coordinates of the pedestrian in the geodetic coordinate system according to the GNSS observation data and the satellite position, and calculates the topocentric coordinates of the pedestrian at each epoch with the pedestrian's initial position as the topocenter.

[0066] The PDR data preprocessing module 503 is used to obtain the accelerometer, magnetometer, and gyroscope data on the mobile phone side, and obtain the pedestrian step length and heading angle according to the data.

[0067] The PDR data preprocessing module specifically includes: a PDR data acquisition and preprocessing unit that uses the mobile phone to collect accelerometer, magnetometer, and gyroscope data, and performs time series alignment of multi-source data according to the time information of the data and the time information of the GNSS observation data; a PDR step length calculation unit that, based on the peak detection method, detects the step frequency of the accelerometer data and calculates the step length using the Weinberg algorithm; a PDR heading angle calculation unit that, based on the mahony algorithm, calculates the heading angle according to the accelerometer, magnetometer, and gyroscope data.

[0068] The candidate position generation and update module 504 is used to generate an initial candidate position set according to the initial absolute position of the pedestrian, and update the candidate positions according to the pedestrian step length and heading angle.

[0069] The candidate position generation and update module specifically includes: an initial candidate position generation unit that generates a candidate position set that conforms to the Gaussian distribution based on the pedestrian's initial position, and stores the coordinates of the candidate positions in the geodetic coordinate system and the topocentric coordinate system; a candidate position update unit that updates the coordinates of each candidate position at each epoch based on the Gaussian random process according to the pedestrian step length and heading angle.

[0070] The satellite visibility prediction module 505 is used to update the elevation of each candidate location according to the topological relationship between each candidate location and the road area block, and predict the satellite visibility at the candidate location according to the satellite position and the building boundary.

[0071] The satellite visibility prediction module specifically includes: a candidate location coordinate update unit, which interpolates the elevation for the candidate locations inside the road based on the topological relationship between the candidate locations and the road area block and according to the elevation information of the road area block, and stores it as the geodetic height and the U coordinate; a coordinate conversion unit, which converts the building boundary and the satellite coordinates into the topocentric coordinates with the pedestrian's initial position as the station center; a satellite visibility prediction unit, which predicts the visibility of each satellite at the candidate locations inside the road according to the building boundary and the satellite coordinates, classifies the invisible satellites as NLOS satellites, and classifies the visible satellites as LOS satellites.

[0072] The candidate location weighting and pedestrian positioning module 506 scores and determines the weight for each candidate location according to the satellite SNR distribution characteristics, the predicted satellite visibility, the measured satellite visibility, the elevation angle, the azimuth angle, and the distance between the candidate location and the pedestrian's absolute position, and determines the pedestrian position according to the weighted average method.

[0073] The candidate location weighting and pedestrian positioning module specifically includes: a measured satellite visibility determination unit, which determines the visibility of each satellite according to the measured satellite SNR data; a satellite scoring unit, which performs satellite visibility matching according to the predicted and measured satellite visibility situations at the candidate locations inside the road, and scores the satellites at each candidate location according to the matching result, the satellite SNR distribution characteristics, the satellite elevation angle, and the azimuth angle; a candidate location scoring unit, which calculates the candidate location score based on the satellite scores, the elevation angle, and the azimuth angle at the candidate locations, and assigns 0 points to the candidate locations outside the road; a candidate location weighting unit, which calculates the distance between each candidate location and the pedestrian position according to the pedestrian position, and determines the weight for each candidate location according to the distance and the candidate location score; a pedestrian positioning unit, which normalizes the candidate location weights and obtains the pedestrian position coordinates at the current epoch according to the geodetic coordinates of the candidate locations.

[0074] Embodiment 3: An embodiment of the present invention provides an electronic device including a memory and a processor. The memory is used to store a computer program, and the processor runs the computer program to enable the electronic device to execute the mobile phone shadow matching positioning method in a complex urban environment provided in Embodiment 1.

[0075] In practical applications, the above-mentioned electronic device can be a server.

[0076] In practical applications, an electronic device includes: at least one processor, a memory, a bus, and a communications interface.

[0077] Among them, the processor, the communications interface, and the memory communicate with each other through the communication bus.

[0078] The communications interface is used to communicate with other devices.

[0079] The processor is used to execute a program, and specifically can execute the method described in the above embodiments.

[0080] Specifically, the program may include program code, and the program code includes computer operation instructions.

[0081] The processor may be a central processing unit (CPU), or a specific integrated circuit (ASIC), or one or more integrated circuits configured to implement the embodiments of the present invention. One or more processors included in the electronic device may be of the same type of processor, such as one or more CPUs; or may be of different types of processors, such as one or more CPUs and one or more ASICs.

[0082] The memory is used to store the program. The memory may include high-speed RAM memory, and may also include non-volatile memory, such as at least one disk memory.

[0083] Based on the description of the above embodiments, an embodiment of the present application provides a storage medium, on which computer program instructions are stored, and the computer program instructions can be executed by a processor to implement the method described in any embodiment. The mobile phone end shadow matching positioning system in the urban complex environment provided by the embodiments of the present application exists in various forms, including but not limited to: (1) Mobile communication devices: The characteristics of such devices are that they have mobile communication functions and mainly aim to provide voice and data communications. Such terminals include: smart phones (such as iPhone), multimedia phones, functional phones, and low-end phones, etc.

[0084] (2) Ultra-mobile personal computer devices: Such devices belong to the category of personal computers, have computing and processing functions, and generally also have mobile Internet access performance. Such terminals include: PDA, MID, and UMPC devices, etc., such as iPad.

[0085] (3) Portable entertainment devices: Such devices can display and play multimedia content. This type of device includes: audio and video players (such as iPods), handheld game consoles, e-books, as well as smart toys and portable in-vehicle navigation devices.

[0086] (4) Other electronic devices with data interaction functions.

[0087] Thus far, specific embodiments of this subject matter have been described. Other embodiments are within the scope of the appended claims. In some cases, the actions recited in the claims may be performed in a different order and still achieve the desired result. Additionally, the processes depicted in the drawings do not necessarily require the specific order or sequential order shown to achieve the desired result. In certain embodiments, multitasking and parallel processing may be advantageous.

[0088] The systems, devices, modules, or units illustrated in the above embodiments may be specifically implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, the computer may be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or any combination of these devices.

[0089] For the convenience of description, the above devices are described by dividing them into various units according to their functions. Of course, when implementing this application, the functions of each unit may be implemented in the same or multiple software and / or hardware. Those skilled in the art should understand that the embodiments of this application may be provided as a method, a system, or a computer program product. Therefore, this application may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, this application may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk memories, CD-ROMs, optical memories, etc.) containing computer-usable program code.

[0090] This application is described with reference to the flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to the embodiments of this application. It should be understood that each flow and / or block in the flowchart and / or block diagram, as well as the combination of flows and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing devices to generate a machine, such that the instructions executed by the processor of the computer or other programmable data processing devices generate for implementing in the process Figure 1 one process or multiple processes and / or blocksFigure 1 means for the functions specified in one or more boxes.

[0091] These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to work in a particular manner, such that the instructions stored in the computer-readable memory produce a manufacture including an instruction means that implements the functions specified in one Figure 1 one or more processes and / or boxes Figure 1 means for the functions specified in one or more boxes.

[0092] These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus, such that a series of operational steps are performed on the computer or other programmable apparatus to produce a computer-implemented process, whereby the instructions executed on the computer or other programmable apparatus provide steps for implementing the functions specified in one Figure 1 one or more processes and / or boxes Figure 1 means for the functions specified in one or more boxes.

[0093] In a typical configuration, a computing device includes one or more processors (CPUs), an input / output interface, a network interface, and memory.

[0094] The memory may include non-permanent memory in the computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of, for example, read-only memory (ROM) or flash memory (flash RAM). The memory is an example of a computer-readable medium.

[0095] Computer-readable media includes both permanent and non-permanent, removable and non-removable media implemented by any method or technology for storing information. The information may be computer-readable instructions, data structures, program modules, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined in this invention, computer-readable media does not include transitory media such as modulated data signals and carrier waves.

[0096] It should also be noted that the term "comprise", "include" or any other variant thereof is intended to cover non-exclusive inclusion, such that a process, method, commodity or device comprising a series of elements not only includes those elements but also includes other elements not expressly listed, or further includes elements inherent to such process, method, commodity or device. Without further limitation, an element defined by the statement "comprising an..." does not exclude the existence of additional identical elements in the process, method, commodity or device comprising said element.

[0097] This application can be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform specific tasks or implement specific abstract data types. This application can also be practiced in a distributed computing environment where tasks are performed by remote processing devices connected through a communication network. In a distributed computing environment, program modules can be located in local and remote computer storage media including storage devices.

[0098] In this specification, the various embodiments are described in a progressive manner. Each embodiment focuses on the differences from other embodiments, and the same or similar parts among the embodiments can be referred to each other. For the system disclosed in the embodiments, since it corresponds to the method disclosed in the embodiments, the description is relatively simple, and the relevant parts can be referred to the description of the method part.

[0099] The above are only the preferred embodiments of the present invention and are not used to limit the present invention. Although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art can still modify the technical solutions recorded in the foregoing embodiments or perform equivalent replacements for some of the technical features. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention shall be included in the protection scope of the present invention.

Claims

1. A method for mobile phone shadow matching positioning in a complex urban environment, characterized in that, Including the following steps: Step 101: Extract the building boundary and road area blocks from the 3D model of the target area, and statistically analyze the satellite SNR distribution characteristics of the target area; Step 102: Obtain the GNSS observation data and broadcast ephemeris on the mobile phone. The GNSS observation data includes GNSS pseudorange and satellite SNR data. Smooth the satellite SNR data using low-pass filtering. Obtain the initial position of the pedestrian, the absolute position of the pedestrian, and the satellite position according to the GNSS observation data and the broadcast ephemeris; Step 103: Obtain the accelerometer, magnetometer, and gyroscope data on the mobile phone, and obtain the pedestrian step length and heading angle according to these data; Step 104: Generate an initial candidate position set according to the initial position of the pedestrian, and update the candidate positions according to the pedestrian step length and heading angle; Step 105: Update the coordinates of the candidate positions according to the topological relationship between each candidate position and the road area block. Calculate the satellite elevation angle and azimuth angle according to the satellite position and the building boundary, and predict the satellite visibility at the candidate positions; Step 106: Score and determine the weight for the candidate positions according to the satellite SNR distribution characteristics, satellite SNR data, satellite visibility, elevation angle, azimuth angle, and the distance between the candidate position and the absolute position of the pedestrian, and determine the pedestrian position according to the weighted average method.

2. The method for mobile phone shadow matching positioning in a complex urban environment according to claim 1, wherein In step 102, collect the GNSS pseudorange and satellite SNR data, record the acquisition time in UTC, and obtain the corresponding broadcast ephemeris; Calculate the position of each satellite at the corresponding epoch according to the time information of the GNSS observation data and the broadcast ephemeris, and store the satellite position in the form of geodetic coordinates; Adopt the least squares method to calculate the absolute position of the pedestrian in each epoch according to the GNSS pseudorange and the satellite position, and store it in the form of geodetic coordinates (B, L, H); Take the pedestrian position in the initial epoch as the station center, and calculate the station center coordinates (E, N, U) of the pedestrian in each epoch.

3. The mobile phone end shadow matching positioning method in an urban complex environment according to claim 2, wherein, The process of obtaining the pedestrian step length and heading angle in step 103 is as follows: Collect the accelerometer, magnetometer, and gyroscope data, record the acquisition time in UTC, and perform time series alignment on the multi-source data based on the time series of the GNSS observation data; Adopt the peak detection method to detect the step frequency of the accelerometer data, and adopt the Weinberg algorithm to calculate the step length; Adopt the Mahony algorithm to correct the accelerometer, magnetometer, and gyroscope data with each other, and calculate the heading angle according to the corrected data.

4. The mobile phone end shadow matching positioning method in a complex urban environment according to claim 2, wherein, In step 104, generate a candidate position set that conforms to the Gaussian distribution with the station center coordinates of the pedestrian initial position as the center, and store the coordinates of the candidate positions in the geodetic coordinate system and the station center coordinate system; Based on the Gaussian random process, update the coordinates of each candidate position in each epoch according to the pedestrian step length and heading angle.

5. A method for mobile phone shadow matching positioning in a complex urban environment according to claim 4, characterized in that, The specific update formula for updating the candidate position coordinates is as follows: ; ; ; ; where \(i\) is the current epoch, L i is the step size, is the step size with added process random error, is the process random error of the step size, which follows a distribution, is the measurement error of the step size; θ i is the heading angle, is the heading angle with added process random error, is the process random error of the heading angle, which follows a distribution, is the measurement error of the heading angle; E i is the E coordinate after the update of the candidate position state, E i-1 is the E coordinate before the update of the candidate position state, N i is the N coordinate after the update of the candidate position state, N i-1 is the N coordinate before the update of the candidate position state; Calculate the coordinates of the updated candidate position in the geodetic coordinate system.

6. The mobile phone shadow matching positioning method in a complex urban environment according to claim 4, wherein Step 105 is specifically: Calculate the projected coordinates on the Gaussian plane based on the geodetic coordinates of the candidate position and the road area block, and use the ray method to determine whether the candidate position is within the road area. If the candidate position is inside the road, mark the candidate position, and at the same time interpolate the geodetic H coordinate of the candidate position based on the geodetic height of the characteristic points of the road area block where the candidate position is located, and update the station-centered U coordinate. Convert the building boundary and satellite position to the station-centered coordinates with the pedestrian's initial position as the station center; calculate the azimuth and elevation angle of the building characteristic points and the satellite relative to each candidate position based on the converted station-centered coordinates. Predict the satellite visibility based on the satellite azimuth and the azimuth of the building characteristic points, classify the invisible satellites as NLOS satellites, and classify the visible satellites as LOS satellites.

7. A method for mobile phone shadow matching positioning in a complex urban environment according to claim 6, characterized in that Specifically in step 106: Judge the measured satellite visibility according to the satellite SNR data. At each candidate position, compare the predicted satellite visibility with the measured satellite visibility, and obtain the score at each candidate position according to the comparison result, the satellite SNR distribution characteristics, the satellite elevation angle and azimuth; assign 0 points to the candidate positions outside the road. Calculate the distance between each candidate position and the pedestrian's absolute position according to the pedestrian's absolute position, and determine the weight for the candidate position according to the distance and the score of the candidate position. Normalize the weights of the candidate positions, and perform weighted average calculation according to the geodetic coordinates of the candidate positions and the normalized weights to obtain the final position of the pedestrian.

8. A method for mobile phone shadow matching positioning in a complex urban environment according to claim 7, characterized in that, Identify the satellites with satellite SNR data greater than 31.91 dB-Hz as LOS satellites, identify the satellites with satellite SNR data less than 26.79 dB-Hz as NLOS satellites, and if the satellite SNR data is between the two, abandon this part of the satellites in the subsequent scoring.

9. A mobile phone shadow matching positioning system in a complex urban environment, which is used to execute a mobile phone shadow matching positioning method in a complex urban environment described in any one of claims 1-8, and is characterized in that, Includes the following modules: The positioning assistance data acquisition module is used to extract the building boundary and road area block from the 3D model of the target area, and count the satellite SNR distribution characteristics of the target area. The GNSS data preprocessing module is used to obtain the GNSS observation data and broadcast ephemeris of the mobile phone, smooth the satellite SNR data using low-pass filtering, and obtain the pedestrian's absolute position and satellite position according to the GNSS observation data and broadcast ephemeris. The PDR data preprocessing module is used to obtain the accelerometer, magnetometer, and gyroscope data of the mobile phone, and obtain the pedestrian's step length and heading angle according to the data. The candidate position generation and update module is used to generate an initial set of candidate positions according to the pedestrian's initial absolute position, and update the candidate positions according to the pedestrian's step length and heading angle. The satellite visibility prediction module is used to update the elevation of the candidate positions according to the topological relationship between each candidate position and the road area block, and predict the satellite visibility at the candidate positions according to the satellite position and the building boundary. The candidate position weighting and pedestrian positioning module scores and determines the weights for the candidate positions according to the satellite SNR distribution characteristics, the predicted satellite visibility, the measured satellite visibility, the elevation angle, the azimuth, and the distance between the candidate position and the pedestrian's absolute position, and determines the pedestrian position according to the weighted average method.

10. An electronic device, characterized in that, It includes a memory and a processor. The memory is used to store a computer program, and the processor runs the computer program to enable the electronic device to execute a mobile phone-side shadow matching positioning method in any one of claims 1-8 in an urban complex environment.

Citation Information

Patent Citations

  • Satellite positioning method in urban canyons based on 3D urban model assistance

    CN107966724A

  • Shadow matching improved algorithm based on a Beidou GEO satellite

    CN110579780A

  • Street-along direction positioning method, system and product in urban complex environment

    CN115629410A

  • Satellite positioning precision optimization method based on assistance of three-dimensional electronic orbit map

    CN118778083A

Cited By

  • Positioning method and device and storage medium

    CN121142589A