Data processing method and device, computer, storage medium and program product
By obtaining satellite positioning information and evaluating the positioning quality of terminal devices, the problem of map positioning software misjudging positioning quality in scenarios such as occlusion or urban canyons is solved, achieving more accurate positioning quality assessment and timely abnormal prompts, and improving the reliability of positioning services and user experience.
Patent Information
- Application Number
- CN202410327645.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-03-20
- Publication Date
- 2025-09-23
AI Technical Summary
Existing map positioning software may mistakenly judge the positioning quality as high-precision in scenarios such as occlusion or urban canyons, and fail to promptly prompt abnormal positioning quality, causing users to receive unreliable positioning information.
By obtaining the satellite's positioning satellite information, including altitude angle, azimuth angle and signal-to-noise ratio, the satellite's geometric distribution data and attenuation factor are determined, and integrated processing is performed based on the proportion of non-line-of-sight satellites to evaluate the positioning quality of the terminal equipment.
The accuracy of positioning quality assessment has been improved, and users can be promptly reminded of abnormal positioning quality, thereby optimizing the effectiveness of positioning services and user experience.
Smart Images

Figure CN120686292A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer technology, and in particular to a data processing method, device, computer, storage medium, and program product. Background Art
[0002] With the continuous advancement and innovation of technology, users have gradually begun to rely on map positioning software for navigation and positioning of vehicles, ships, aircraft and other means of transportation. Map positioning software can provide users with accurate positioning information, help drivers choose the best route or trajectory, and remind them of their exact location and navigation instructions at any time. However, the prerequisite for map positioning software to provide high-precision positioning information is that the positioning quality determined by the satellite signals received by the terminal device (usually a mobile phone) is high in precision and accuracy. Currently, the positioning quality of mobile phones mainly depends on the accuracy of the data output by the map positioning software installed on the mobile phone. However, sometimes when the positioning quality is abnormal, the mobile phone still determines that the current positioning quality is high-precision. In particular, in scenarios such as occlusion or urban canyons, the positioning quality of the mobile phone is abnormal, but it is still determined to be high-precision positioning quality, and the user is not prompted with the abnormal positioning quality information. Summary of the Invention
[0003] The embodiments of the present application provide a data processing method, apparatus, computer, storage medium, and program product, which can determine the positioning quality of a terminal device at a target positioning point based on positioning satellite information obtained by the terminal device, and remind the user at any time whether the positioning quality of the target positioning point at which the user is currently located is abnormal.
[0004] On the one hand, an embodiment of the present application provides a data processing method, the method comprising:
[0005] Obtaining the satellite's positioning satellite information, including the satellite's altitude angle, azimuth angle, and signal-to-noise ratio;
[0006] Determine the geometric distribution data of the satellite based on the altitude angle and azimuth angle in the positioning satellite information;
[0007] Based on the signal-to-noise ratio of the satellites, the satellites are divided into M satellite clusters, and the satellite attenuation factor is determined based on the number of satellites included in each of the M satellite clusters; M is a positive integer;
[0008] The proportion of non-line-of-sight satellites that send non-line-of-sight signals to the terminal device, the geometric distribution data and the attenuation factor are integrated and processed to obtain the positioning quality of the terminal device at the target positioning point; the target positioning point refers to the location of the positioning satellite information received from the satellite.
[0009] In one aspect, an embodiment of the present application provides a data processing device, the device comprising:
[0010] An information acquisition module is used to obtain the satellite's positioning satellite information, which includes the satellite's altitude angle, azimuth angle, and signal-to-noise ratio;
[0011] A geometric distribution determination module is used to determine the geometric distribution data of the satellite based on the altitude angle and azimuth angle in the positioning satellite information;
[0012] an attenuation factor determination module, configured to divide the satellites into M satellite clusters based on a signal-to-noise ratio of the satellites, and determine an attenuation factor of the satellite based on the number of satellites included in each of the M satellite clusters;
[0013] The data integration module is used to integrate the proportion of non-line-of-sight satellites that send non-line-of-sight signals to the terminal device, the geometric distribution data and the attenuation factor to obtain the positioning quality of the terminal device at the target positioning point; the target positioning point refers to the location of the positioning satellite information received from the satellite.
[0014] In one possible implementation, when the geometric distribution determination module is used to determine the geometric distribution data of the satellite based on the altitude angle and azimuth angle in the positioning satellite information, the geometric distribution determination module is specifically used to perform the following operations:
[0015] Generate a satellite observation matrix based on the altitude angle and azimuth angle in the positioning satellite information;
[0016] Transpose the satellite observation matrix to obtain a transposed distribution matrix, and integrate the transposed distribution matrix and the satellite observation matrix to obtain a covariance matrix;
[0017] The matrix parameters included in the covariance matrix are combined to obtain the geometric distribution data of the satellite.
[0018] In one possible implementation, when the geometric distribution determination module is used to determine the satellite observation matrix based on the altitude angle and azimuth angle in the positioning satellite information, the geometric distribution determination module is specifically used to perform the following operations:
[0019] Determine the satellite's altitude angle cosine and altitude angle sine based on the altitude angle in the positioning satellite information, and determine the satellite's azimuth angle cosine and azimuth angle sine based on the azimuth in the positioning satellite information;
[0020] The cosine value of the elevation angle and the sine value of the azimuth angle are integrated to obtain the first observation parameter, and the cosine value of the elevation angle and the cosine value of the azimuth angle are integrated to obtain the second observation parameter;
[0021] The first observation parameter, the second observation parameter, the sine value of the altitude angle, and the clock error coefficient obtained by the terminal device are spliced together to obtain a satellite observation matrix; the clock error coefficient indicates the difference coefficient between the satellite clock of the satellite and the clock of the terminal device.
[0022] In a possible implementation, the number of satellites is N, where N is a positive integer. The attenuation factor determination module is configured to divide the satellites into M satellite clusters based on a signal-to-noise ratio of the satellites, and determine the attenuation factor of the satellite based on the number of satellites included in each of the M satellite clusters. The attenuation factor determination module is specifically configured to perform the following operations:
[0023] Obtain M-1 signal-to-noise ratio thresholds corresponding to k elevation angle ranges, obtain the target elevation angle range to which the elevation angles corresponding to N satellites belong, and divide the N satellites into M satellite clusters based on the M-1 signal-to-noise ratio thresholds of the target elevation angle range corresponding to each satellite; k is a positive integer; M is less than or equal to N;
[0024] The ratio of the number of satellites included in the first satellite cluster of M satellite clusters to N is determined as the mass attenuation ratio, and the attenuation factors of the N satellites are determined based on the mass attenuation ratio; the signal-to-noise ratio of the first satellite included in the first satellite cluster is less than the signal-to-noise ratio of the second satellite included in other satellite clusters, and the altitude angle of the first satellite and the altitude angle of the second satellite belong to the same altitude angle range.
[0025] In one possible implementation, the data integration module is used to integrate the proportion of non-line-of-sight satellites that send non-line-of-sight signals to the terminal device, geometric distribution data, and attenuation factors. When obtaining the positioning quality of the terminal device at the target positioning point, the data integration module is specifically used to perform the following operations:
[0026] Obtain satellite signal information, including the number of non-line-of-sight satellites whose signal information is non-line-of-sight (NLOS) signals and the proportion of non-line-of-sight satellites in the satellite network. Non-line-of-sight signals refer to signals received by terminal devices after direct signals are reflected or diffracted.
[0027] The proportion of non-line-of-sight satellites, geometric distribution data and attenuation factors are integrated and processed to obtain the first positioning quality. The minimum value of the first positioning quality and the second positioning quality is determined as the positioning quality of the terminal device at the target positioning point; the second positioning quality is used to represent the maximum quality threshold.
[0028] In a possible implementation, the number of satellites is N, where N is a positive integer; the data integration module is used to obtain satellite signal information, and when the acquired signal information is a non-line-of-sight satellite whose signal information is a non-line-of-sight signal, the data integration module is specifically used to perform the following operations when the non-line-of-sight satellites account for a certain percentage of the satellites:
[0029] Obtain environmental data of the target positioning point;
[0030] Among N satellites, if the elevation angle and azimuth angle of the i-th satellite and the environmental data indicate that there is environmental occlusion between the i-th satellite and the target positioning point, the non-line-of-sight signal is determined to be the signal information of the i-th satellite; i is a positive integer less than or equal to N;
[0031] Among N signal information, the satellite corresponding to the non-line-of-sight signal is determined as a non-line-of-sight satellite, the number of non-line-of-sight satellites is obtained, and the ratio between the number of non-line-of-sight satellites and N is determined as the ratio of the non-line-of-sight satellites to the satellites.
[0032] In a possible implementation, when the information acquisition module is used to acquire the positioning satellite information of the satellite, the information acquisition module is specifically used to perform the following operations:
[0033] obtaining candidate satellite information of the candidate satellites, performing anomaly detection on the elevation angle, azimuth angle, and signal-to-noise ratio in the candidate satellite information of the candidate satellites, and determining an abnormal satellite among the candidate satellites;
[0034] Obtaining signal frequency values of regular satellites, and determining satellites from regular satellites based on the signal frequency values; regular satellites refer to candidate satellites excluding abnormal satellites from among the candidate satellites;
[0035] The candidate satellite information of the satellite is determined as the positioning satellite information.
[0036] In a possible implementation, the data processing device further includes an occlusion detection module, which is specifically configured to perform the following operations:
[0037] Acquire a third satellite having an elevation angle greater than an elevation angle threshold from the satellites, acquire the number of the third satellite, and a signal-to-noise ratio mean value of a signal-to-noise ratio of the third satellite;
[0038] The number of satellites and the mean signal-to-noise ratio of the third satellite are added to the sliding window, and when the storage time of the sliding window is greater than or equal to the first time threshold, the number change data of the number of satellites to be counted and the mean change data of the mean signal-to-noise ratio to be counted included in the sliding window are obtained; the number of satellites to be counted includes the number of the third satellite, and the mean signal-to-noise ratio to be counted includes the mean signal-to-noise ratio;
[0039] Based on the quantity change data and the mean change data, determine the occlusion detection result of the terminal device at the target positioning point;
[0040] Based on the occlusion detection result of the terminal device at the target positioning point and the positioning quality of the terminal device at the target positioning point, the weight coefficient of the target positioning point in the business application is determined; the weight coefficient is used to determine the positioning result of the target positioning point in the business application.
[0041] In one possible implementation, when the occlusion detection module is used to determine the occlusion detection result of the terminal device at the target positioning point based on the quantity change data and the mean change data, the occlusion detection module is specifically used to perform the following operations:
[0042] A quantity change curve is constructed based on the quantity change data, and a mean change curve is constructed based on the mean change data. If there are abnormal points in the quantity change curve or the mean change curve, the signal obstruction is determined as the obstruction detection result of the terminal device at the target positioning point; the abnormal point refers to a point where the slope is within the change threshold range;
[0043] Alternatively, the quantity change data includes the quantity growth rate between any two adjacent satellite numbers to be counted, and the mean change data includes the mean growth rate between any two adjacent signal-to-noise ratio means to be counted; if the quantity growth rate or the mean growth rate is less than the first change threshold, the signal obstruction is determined as the obstruction detection result of the terminal device at the target positioning point.
[0044] On the one hand, an embodiment of the present application provides a computer device, including a processor, a memory, and an input and output interface;
[0045] The processor is connected to the memory and the input and output interface respectively, wherein the input and output interface is used to receive and output data, the memory is used to store the computer program, and the processor is used to call the computer program so that the computer device including the processor executes the method in one aspect of the embodiment of the present application.
[0046] On one hand, an embodiment of the present application provides a computer-readable storage medium, which stores a computer program. The computer program is suitable for being loaded and executed by a processor so that a computer device having the processor executes the method in one aspect of the embodiment of the present application.
[0047] In one aspect, an embodiment of the present application provides a computer program product or computer program, which includes computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the methods provided in various optional embodiments of the present application. In other words, when the computer instructions are executed by the processor, the methods provided in various optional embodiments of the present application are implemented.
[0048] Implementing the embodiments of this application will have the following beneficial effects:
[0049] In an embodiment of the present application, positioning satellite information of a satellite is obtained, and the positioning satellite information includes the satellite's altitude angle, azimuth angle, and signal-to-noise ratio; based on the altitude angle and azimuth angle in the positioning satellite information, the geometric distribution data of the satellite is determined; based on the satellite's signal-to-noise ratio, the satellite is divided into M satellite clusters, and the satellite attenuation factor is determined based on the number of satellites included in each of the M satellite clusters; M is a positive integer; the proportion of non-line-of-sight satellites that send non-line-of-sight signals to the terminal device, the geometric distribution data, and the attenuation factor are integrated and processed to obtain the positioning quality of the terminal device at the target positioning point; the target positioning point refers to the location where the positioning satellite information of the satellite is received. Through the above process, the obtained positioning satellite information is comprehensively processed to determine the geometric distribution data of the satellite and the attenuation factor, and the positioning quality of the terminal device at the target positioning point is evaluated based on the non-line-of-sight satellite proportion. By comprehensively analyzing the satellite distribution, signal quality, and attenuation, the positioning quality of the target positioning point can be more accurately evaluated, providing a more reliable and accurate positioning result for the positioning service. The accuracy of the positioning quality assessment of the terminal device at the target positioning point is improved, and the user is reminded at any time whether the positioning quality of the current target positioning point is abnormal, while optimizing the effect and user experience of the positioning service. BRIEF DESCRIPTION OF THE DRAWINGS
[0050] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0051] Figure 1 This is a network interaction architecture diagram of a data processing method provided by an embodiment of the present application;
[0052] Figure 2 This is a scenario diagram of a data processing method provided in an embodiment of the present application;
[0053] Figure 3 This is a data processing method provided by the embodiment of the present application. Figure 1 ;
[0054] Figure 4 This is a schematic diagram of non-line-of-sight satellite detection provided by an embodiment of the present application;
[0055] Figure 5 This is a data processing method provided by the embodiment of the present application. Figure 2 ;
[0056] Figure 6 This is a data processing method provided by the embodiment of the present application. Figure 3 ;
[0057] Figure 7 This is a schematic diagram of a change curve provided in an embodiment of the present application;
[0058] Figure 8 is a schematic diagram of a data processing device provided in an embodiment of the present application;
[0059] Figure 9 It is a structural diagram of a computer device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0060] The following will be combined with the drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.
[0061] Among them, if it is necessary to collect object (such as user, etc.) data in this application, a prompt interface or pop-up window will be displayed before or during the collection. The prompt interface or pop-up window is used to remind the user that certain data is currently being collected. Only after the user confirms the prompt interface or pop-up window, the relevant steps for data acquisition will be started, otherwise the process will end. Moreover, the acquired user data will be used in reasonable and legal scenarios or purposes. Optionally, in some scenarios where user data needs to be used but has not been authorized by the user, authorization can be requested from the user, and the user data can be used when the authorization is passed.
[0062] Among them, the present application may relate to the field of artificial intelligence. Artificial Intelligence (AI) is the theory, method, technology and application system that uses digital computers or machines controlled by digital computers to simulate, extend and expand human intelligence, perceive the environment, acquire knowledge and use knowledge to obtain the best results. In other words, artificial intelligence is a comprehensive technology in computer science that attempts to understand the essence of intelligence and produce a new intelligent machine that can respond in a similar way to human intelligence. Artificial intelligence is to study the design principles and implementation methods of various intelligent machines so that the machines have the functions of perception, reasoning and decision-making. For example, the process of text annotation and text parsing is studied to generate a method that can parse text annotations and text parsing results in a similar way to human intelligence.
[0063] Artificial intelligence (AI) technology is a comprehensive discipline encompassing a wide range of fields, encompassing both hardware and software technologies. Foundational AI technologies generally include sensors, specialized AI chips, cloud computing, distributed storage, big data processing, operating / interaction systems, and mechatronics. AI software technologies primarily encompass computer vision, speech processing, natural language processing, as well as machine learning / deep learning, autonomous driving, and smart transportation.
[0064] With the research and progress of artificial intelligence technology, artificial intelligence technology has been studied and applied in many fields, such as common smart homes, smart wearable devices, virtual assistants, smart speakers, smart marketing, unmanned driving, automatic driving, drones, robots, smart medical care, smart customer service, Internet of Vehicles, automatic driving, smart transportation, etc. It is believed that with the development of technology, artificial intelligence technology will be applied in more fields and play an increasingly important role.
[0065] Urban 3D (Three Dimensional) model: Using modeling tools or methods such as satellite imagery and laser scanning, three-dimensional modeling and storage of data such as buildings, roads, and green spaces within the city are performed to obtain information such as their location and elevation.
[0066] NLOS (Non-line-of-sight) signal: Non-line-of-sight signal refers to the signal received by the terminal device after the direct signal is reflected or diffracted (there is an obstructed satellite signal).
[0067] Mobile terminals: Mobile terminals, or mobile communication terminals, refer to computing devices that can be used on the go, including mobile phones, laptops, tablets, POS terminals, and even in-vehicle computers. Most often, these refer to mobile phones, smartphones with multiple applications, and tablets. As networks and technologies evolve toward increasingly broadband connectivity, the mobile communications industry is entering a true mobile information age. The rapid advancement of integrated circuit technology has significantly increased the processing power of mobile terminals, transforming them from simple communication tools into comprehensive information processing platforms. Mobile terminals also have a wide range of communication methods. They can communicate through wireless operating networks such as GSM (Global System for Mobile Communications), CDMA (Code Division Multiple Access), WCDMA (Wideband Code Division Multiple Access), EDGE (Enhanced Data rates for GSM Evolution), 4G (4th Generation, fourth generation mobile communication technology), and 5G (5th Generation, fifth generation mobile communication technology). They can also communicate through wireless LAN, Bluetooth, and infrared. In addition, mobile terminals are integrated with global satellite navigation system positioning chips for processing satellite signals and accurately positioning users, which are currently widely used in location services. Mobile terminals include satellite positioning devices.
[0068] GNSS (Global Navigation Satellite System) navigation chip: This chip processes satellite signals and provides the user with an estimated position using the PVT (Position, Velocity, Time) algorithm. PVT is calculated based on raw observations provided by the chip, real-time navigation ephemeris, and other information.
[0069] In the examples of this application, see Figure 1 , Figure 1 This is a network interaction architecture diagram of a data processing method provided by an embodiment of the present application. The network interaction architecture diagram may include a satellite network cluster 101 (including satellites 101a, 101b, ..., satellite 101n), a terminal device cluster, wherein the terminal device cluster includes but is not limited to Figure 1The terminal devices 102a, 102b, and 102c mentioned in the above description may have communication connections with the terminal device cluster, thereby enabling data transmission between the satellites in the satellite network cluster and the terminal devices. The above communication connections may be directly or indirectly connected via wireless communication, or in other ways, which are not limited in this application. Figure 1 As shown, taking the terminal device 102a as an example, the terminal device 102a can obtain the positioning satellite information of the satellite, and the positioning satellite information includes the altitude angle, azimuth angle and signal-to-noise ratio of the satellite; based on the altitude angle and azimuth angle in the positioning satellite information, the geometric distribution data of the satellite is determined; based on the signal-to-noise ratio of the satellite, the satellite is divided into M satellite clusters, and the attenuation factor of the satellite is determined based on the number of satellites included in the M satellite clusters; the proportion of non-line-of-sight satellites that send non-line-of-sight signals to the terminal device, the geometric distribution data and the attenuation factor are integrated and processed to obtain the positioning quality of the terminal device at the target positioning point.
[0070] Through the above process, the terminal device can obtain and parse the satellite positioning satellite information of the satellite, and determine more reliable positioning quality assessment parameters (non-line-of-sight satellite ratio, geometric distribution data, attenuation factor) based on the altitude angle, azimuth angle and signal-to-noise ratio in the positioning satellite information. The positioning quality at the target positioning point is determined based on the positioning quality assessment parameters. When the positioning quality of the target positioning point is normal, that is, the accuracy of the currently provided positioning information is high, high-precision positioning information is normally provided to the user to help the user choose the best route or trajectory; when the positioning quality of the target positioning point is abnormal, that is, the accuracy of the currently provided positioning information is low, a positioning abnormality prompt message is output to the user to remind the user that the currently provided positioning information is unreliable.
[0071] For details, see Figure 2 , Figure 2 This is a scenario diagram of a data processing method provided in an embodiment of the present application. Figure 2As shown, terminal device 102a can obtain positioning satellite information 201 from a satellite. Positioning satellite information 201 includes the satellite's altitude, azimuth, and signal-to-noise ratio. The terminal device determines the satellite's geometric distribution data based on the satellite's altitude and azimuth, determines the satellite's attenuation factor based on the satellite's signal-to-noise ratio, obtains the number of non-line-of-sight satellites transmitting non-line-of-sight signals, and the percentage of non-line-of-sight satellites among the satellites. Based on the geometric distribution data, attenuation factor, and non-line-of-sight satellite percentage, the terminal device 102a determines the positioning quality of the location where the positioning satellite information 201 is received. Satellites can transmit signal information, which can be either non-line-of-sight or line-of-sight signals. Satellites transmitting non-line-of-sight signals can be designated as non-line-of-sight satellites, while satellites transmitting line-of-sight signals can be designated as line-of-sight satellites. A non-line-of-sight signal refers to a signal received by the terminal device after reflection or diffraction of a direct signal, while a line-of-sight signal refers to a direct signal.
[0072] Through the above process, based on the altitude angle, azimuth angle and signal-to-noise ratio in the positioning satellite information, the determined geometric distribution data, attenuation factor and the obtained non-line-of-sight satellite ratio can more effectively detect the positioning quality of the terminal device at the target positioning point, improve the detection accuracy of the positioning quality, and thus provide users with better positioning information services.
[0073] It is understandable that the terminal device mentioned in the embodiments of the present application can be a server or a computer device, or a system composed of a server and a computer device. Among them, the terminal device mentioned above can be an electronic device, including but not limited to mobile phones, tablet computers, desktop computers, laptop computers, PDAs, vehicle-mounted devices, augmented reality / virtual reality (AR / VR) devices, helmet displays, smart TVs, wearable devices and other mobile Internet devices (mobile internet device, MID) with network access capabilities, or terminal devices in scenarios such as trains, ships, and flights. Figure 1 As shown in , the terminal device may be a laptop (as shown by the terminal device 102b), a mobile phone (as shown by the terminal device 102a), or a tablet computer (as shown by the terminal device 102c), etc. Figure 1Only some of the devices are listed. The servers mentioned above can be independent physical servers, server clusters or distributed systems composed of multiple physical servers, or cloud servers that provide basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, vehicle-road collaboration, content delivery networks (CDNs), and big data and artificial intelligence platforms.
[0074] Optionally, the data involved in the embodiments of the present application can be stored in a computer device, or the data can be stored based on cloud storage technology or a blockchain network, which is not limited here.
[0075] Further, see Figure 3 , Figure 3 This is a data processing method provided by the embodiment of the present application. Figure 1 .like Figure 3 The data processing process is described as follows:
[0076] Step S101: Acquire positioning satellite information of a satellite, where the positioning satellite information includes the satellite's altitude angle, azimuth angle, and signal-to-noise ratio.
[0077] In an embodiment of the present application, the process of a terminal device acquiring positioning satellite information of a satellite may be: acquiring candidate satellite information of a candidate satellite, performing anomaly detection on the elevation angle, azimuth angle, and signal-to-noise ratio in the candidate satellite information of the candidate satellite, and determining an abnormal satellite among the candidate satellites. The terminal device may directly determine a regular satellite as a satellite, and determine the candidate satellite information of the satellite as positioning satellite information. Alternatively, the signal frequency value of a regular satellite may be acquired, and a satellite may be determined from the regular satellites based on the signal frequency value; a regular satellite refers to a candidate satellite among the candidate satellites excluding the abnormal satellite; and the candidate satellite information of the satellite may be determined as positioning satellite information. Specifically, based on the signal frequency type of the signal frequency value of the regular satellite, a regular satellite corresponding to a signal frequency value of a single-frequency type may be determined as a satellite. The single-frequency type is used to indicate that the signal is generated by a single frequency. The candidate satellite refers to the satellite from which the terminal device receives satellite information.
[0078] Specifically, the terminal device can obtain the candidate satellite signal of the candidate satellite based on the GNSS navigation chip, convert the received candidate satellite signal into a digital signal (that is, candidate satellite information) based on the analog-to-digital converter in the GNSS navigation chip, and perform anomaly detection on the altitude angle, azimuth angle and signal-to-noise ratio (SNR) in the candidate satellite information of the candidate satellite, determine the abnormal satellite among the candidate satellites, and eliminate the candidate satellite information corresponding to the abnormal satellite. If any one of the altitude angle, azimuth angle and signal-to-noise ratio in the candidate satellite information is abnormal, it can be determined that the candidate satellite information is abnormal. For example, in a candidate satellite information (including altitude angle, azimuth angle, signal-to-noise ratio), there are abnormal altitude angle and signal-to-noise ratio data, then the candidate satellite information is determined to be abnormal, the candidate satellite corresponding to the candidate satellite information is determined to be an abnormal satellite, and the group of candidate satellite information is eliminated. The terminal device obtains the signal frequency value of the conventional satellite and determines the satellite from the conventional satellites based on the signal frequency value; for example, the signal frequency value of the conventional satellite obtained by some terminal devices contains two signal frequency values (dual-frequency signal), and the terminal device can determine the conventional satellite with a single frequency (i.e., a single-frequency type, such as the L1 frequency band, generally the single frequency is 1575.42 MHz) as the satellite, and the conventional satellite refers to the candidate satellite among the candidate satellites except the abnormal satellite; the candidate satellite information of the satellite is determined as the positioning satellite information.
[0079] Step S102: determining the geometric distribution data of the satellite based on the altitude angle and azimuth angle in the positioning satellite information.
[0080] In an embodiment of the present application, the implementation process of the terminal device determining the geometric distribution data of the satellite based on the altitude angle and azimuth angle in the positioning satellite information can be: generating a satellite observation matrix based on the altitude angle and azimuth angle in the positioning satellite information; transposing the satellite observation matrix to obtain a transposed distribution matrix; integrating the transposed distribution matrix and the satellite observation matrix to obtain a covariance matrix; and combining the matrix parameters included in the covariance matrix to obtain the geometric distribution data of the satellite.
[0081] Specifically, the terminal device determines the satellite's altitude angle cosine and altitude angle sine based on the altitude angle in the positioning satellite information. Among them, the altitude angle refers to the angle between the terminal device (such as a mobile phone or navigation system) and the satellite, that is, the height of the satellite in the sky. The larger the altitude angle, the closer the satellite is to the terminal device, and the better the signal quality will generally be. When using a navigation system or positioning service, the altitude angle is an important parameter that can affect the stability and accuracy of the device receiving satellite signals. For example, the altitude angle el received by the terminal device iAs shown in Table 1 (the number of satellites is N, where N is a positive integer), when the terminal device receives the elevation angle el1 of satellite 1 as 30°, the cosine value of the elevation angle of satellite 1 is The sine of the altitude angle is When the terminal device receives the elevation angle el2 of satellite 2 as 45°, the cosine value of the elevation angle of satellite 2 is The sine of the altitude angle is
[0082] Table 1
[0083]
[0084] The terminal device determines the cosine value and sine value of the satellite's azimuth based on the azimuth in the positioning satellite information. Among them, the azimuth refers to the azimuth angle between the terminal device (such as a mobile phone or navigation system) and the satellite, that is, the direction angle of the satellite relative to the north in the sky. The azimuth is usually expressed in the form of 0 degrees to 360 degrees, where 0 degrees represents due north, 90 degrees represents due east, 180 degrees represents due south, and 270 degrees represents due west. According to the azimuth between the receiving device and the satellite, the position and direction of the device relative to the satellite can be determined. In the field of navigation and positioning, azimuth is also an important parameter that can help the device determine its own position and direction relative to the satellite. For example, the azimuth el received by the terminal device i As shown in Table 1, when the terminal device receives the azimuth angle az1 of satellite 1 as 60°, the azimuth cosine value of satellite 1 is The sine of the azimuth angle is When the terminal device receives the azimuth angle az2 of satellite 2 as 270°, the azimuth cosine value of satellite 2 is 0 and the azimuth sine value is -1.
[0085] The terminal device can integrate the cosine value of the altitude angle and the sine value of the azimuth angle to obtain the first observation parameter, which can be expressed as: cos(el i )sin(az i For example, the first observation parameter corresponding to satellite 1 can be cos(el1)sin(az1). When el1 is 30° and az1 is 60°, the first observation parameter corresponding to satellite 1 is
[0086] The terminal device can integrate the elevation cosine value and the azimuth cosine value to obtain the second observation parameter, which can be expressed as: cos(el i )cos(az iFor example, the second observation parameter corresponding to satellite 1 can be cos(el1)cos(az1). When el1 is 30° and az1 is 60°, the second observation parameter corresponding to satellite 1 is
[0087] The terminal device can concatenate the first observation parameter, the second observation parameter, the sine value of the altitude angle, and the clock error coefficient obtained by the terminal device to obtain a satellite observation matrix G; wherein the number of satellites is N, N is a positive integer, and the satellite observation matrix G composed of N satellites can be expressed as shown in formula ①:
[0088]
[0089] As shown in formula ①, cos(el i )sin(az i ) is used to represent the first observation parameter corresponding to the i-th satellite; cos(el i )cos(az i ) represents the second observation parameter corresponding to the i-th satellite; sin(el i ) is used to represent the sine of the elevation angle corresponding to the i-th satellite; i is a positive integer less than or equal to N. For example, when i = 1, cos(el1)sin(az1) represents the first observation parameter corresponding to the first satellite (i.e., satellite 1); where the clock error coefficient in the satellite observation matrix G indicates the difference coefficient between the satellite clock and the terminal device clock, such as "1" in formula ①.
[0090] The terminal device transposes the satellite observation matrix to obtain a transposed distribution matrix, integrates the transposed distribution matrix and the satellite observation matrix to obtain a covariance matrix, and combines the matrix parameters included in the covariance matrix to obtain the satellite's geometric distribution data. The covariance matrix can be obtained by referring to the method shown in formula ②:
[0091]
[0092] As shown in formula ②, G T It is used to represent the transposed distribution matrix obtained by transposing the satellite observation matrix G; the superscript “-1” is used to represent the transposed distribution matrix obtained by transposing the matrix G. T G performs inverse operation processing; x, y, z can be the corresponding position components of the three axes x, y, and z in the spatial coordinate system, t is the clock error parameter, q xx ,q yy ,q zz ,q ttThe diagonal elements in the covariance matrix represent the variance of the same variable (observation), and the remaining elements are the off-diagonal elements in the covariance matrix, which represent the covariance between different variables (observations), that is, the cross covariance.
[0093] The terminal device combines the matrix parameters included in the covariance matrix Q to obtain the satellite's geometric distribution data. Specifically, the square root of the sum of the matrix parameters located on the diagonal of the covariance matrix can be used to determine the satellite's geometric distribution data. This geometric distribution data is used to represent the distribution of N satellites. A possible calculation formula for the geometric distribution data can be found in Formula ③:
[0094]
[0095] As shown in formula ③, GDOP is used to represent the geometric distribution data of satellites, q xx ,q yy ,q zz ,q tt are the matrix parameters located on the diagonal included in the covariance matrix Q.
[0096] Step S103 : Based on the signal-to-noise ratio of the satellites, the satellites are divided into M satellite clusters, and the attenuation factors of the satellites are determined based on the number of satellites included in each of the M satellite clusters; M is a positive integer.
[0097] In an embodiment of the present application, a terminal device divides satellites into M satellite clusters based on their signal-to-noise ratios (SNRs), and determines the satellite attenuation factors based on the number of satellites included in each of the M satellite clusters. The implementation process may include: dividing the satellites into M satellite clusters based on the SNRs, with the SNRs of the satellites included in each satellite cluster belonging to the same SNR range. Alternatively, the terminal device may obtain M-1 SNR thresholds corresponding to k elevation angle ranges, obtain a target elevation angle range to which the elevation angles corresponding to N satellites belong, and divide N satellites into M satellite clusters based on the M-1 SNR thresholds for the target elevation angle range corresponding to each satellite; k is a positive integer; M is less than or equal to N; the SNR of a first satellite included in a first satellite cluster is less than the SNR of a second satellite included in another satellite cluster, and the elevation angles of the first satellite and the second satellite belong to the same elevation angle range. Furthermore, the ratio between the number of satellites included in the first satellite cluster of the M satellite clusters and N is determined as a mass attenuation ratio, and the attenuation factors of the N satellites are determined based on the mass attenuation ratio.
[0098] Specifically, the number of satellites is N, where N is a positive integer. The terminal device can divide the elevation angles corresponding to the N satellites into k elevation angle ranges and obtain M-1 signal-to-noise ratio thresholds corresponding to each of the k elevation angle ranges. For example, if k = 3, the three elevation angle ranges are [0, 30°], [30°, 60°], and [60°, 90°], where 30° belongs to the first elevation angle range, 60° belongs to the second elevation angle range, and 90° belongs to the third elevation angle range. The M-1 signal-to-noise ratio thresholds in the first elevation angle range can be 10dB and 30dB; the M-1 signal-to-noise ratio thresholds in the second elevation angle range can be 20dB and 40dB; and the M-1 signal-to-noise ratio thresholds in the third elevation angle range can be 30dB and 50dB. The signal-to-noise ratio refers to the ratio of the signal power received by the satellite to the background noise power. In satellite communications, the signal-to-noise ratio is used to measure the quality of the signal. Generally, a higher signal-to-noise ratio indicates better signal quality, and vice versa. The signal-to-noise ratio directly affects the reliability and quality of data transmission.
[0099] The terminal device can obtain the target elevation angle range to which the elevation angles corresponding to the N satellites belong, and divide the N satellites into M satellite clusters based on M-1 signal-to-noise ratio thresholds of the target elevation angle range corresponding to each satellite. For example, k=3, M=3, the terminal device can divide N satellites into 3 satellite clusters; the 3 elevation angle ranges can be [0, 30°], [30°, 60°], [60°, 90°], where 30° belongs to the first elevation angle range, 60° belongs to the second elevation angle range, and 90° belongs to the third elevation angle range; the M-1 signal-to-noise ratio thresholds in the first elevation angle range can be 10db and 30db. When the SNR of a satellite in the first elevation angle range is less than or equal to 10db, it is determined that the satellite belongs to the first satellite cluster; the M-1 signal-to-noise ratio thresholds in the second elevation angle range can be 20db and 40db. When the SNR of a satellite in the second elevation angle range is less than or equal to 20db, it is determined that the satellite belongs to the first satellite cluster; the M-1 signal-to-noise ratio thresholds in the third elevation angle range can be 30db and 50db. When the SNR of a satellite in the third elevation angle range is less than or equal to 30db, it is determined that the satellite belongs to the first satellite cluster. As shown in Table 1, the elevation angle of satellite 1 is 30° and the signal-to-noise ratio SNR is 10db. It is determined that the target elevation angle range corresponding to satellite 1 can be the first elevation angle range, and satellite 1 can be determined as a satellite in the first satellite cluster. In the first elevation angle range, as shown in Table 1, the elevation angle of satellite 2 is 45° and the signal-to-noise ratio SNR is 20db. It is determined that the target elevation angle range corresponding to satellite 2 can be the second elevation angle range, and satellite 2 can be determined as a satellite in the first satellite cluster.
[0100] The terminal device may determine the ratio between the number of satellites included in the first satellite cluster in the M satellite clusters and N as the mass attenuation ratio, perform an exponential function operation on the mass attenuation ratio to obtain an operation result, and determine the operation result as the attenuation factor of the N satellites; wherein, a possible calculation formula for the attenuation factor of the N satellites can be seen in formula 4:
[0101]
[0102] As shown in formula ④, SnrDecrease is used to represent the attenuation factor of N satellites; It is used to indicate the mass attenuation ratio; nLow is used to indicate the number of satellites included in the first satellite cluster among the M satellite clusters.
[0103] It is understandable that the signal-to-noise ratio of the first satellite included in the first satellite cluster divided by the terminal device is lower than the signal-to-noise ratio of the second satellite included in other satellite clusters, and the elevation angle of the first satellite and the elevation angle of the second satellite belong to the same elevation angle range. For example, the elevation angles and SNRs of 6 satellites in N satellites are shown in Table 2:
[0104] Table 2
[0105] satellite Altitude angle (degrees) SNR (dB) Satellite A 15 10 Satellite b 30 30 Satellite c 45 20 Satellite d 60 50 Satellite e 75 40 Satellite f 90 50
[0106] Among the six satellites shown in Table 2, the terminal device can divide satellite a and satellite c into the first satellite cluster, and divide satellite b, satellite d, satellite e, and satellite f into other satellite clusters. The signal-to-noise ratio of the first satellite (for example, satellite a) included in the first satellite cluster is lower than the signal-to-noise ratio of the second satellite (for example, satellite b) included in the other satellite clusters, and the altitude angle of satellite a and the altitude angle of satellite b belong to the same altitude angle range.
[0107] Step S104: Integrate and process the proportion of non-line-of-sight satellites that send non-line-of-sight signals to the terminal device, the geometric distribution data, and the attenuation factor to obtain the positioning quality of the terminal device at the target positioning point; the target positioning point refers to the location of the positioning satellite information received from the satellite.
[0108] In an embodiment of the present application, the terminal device integrates and processes the proportion of non-line-of-sight satellites that send non-line-of-sight signals to the terminal device, the geometric distribution data, and the attenuation factor, and obtains the positioning quality of the terminal device at the target positioning point. The implementation process can be: obtaining satellite signal information, obtaining non-line-of-sight satellites whose signal information is non-line-of-sight signals, and the proportion of non-line-of-sight satellites among the satellites; non-line-of-sight signals refer to signals received by the terminal device after the direct signal is reflected or diffracted; the proportion of non-line-of-sight satellites, the geometric distribution data, and the attenuation factor are integrated and processed to obtain a first positioning quality, and the minimum value of the first positioning quality and the second positioning quality is determined as the positioning quality of the terminal device at the target positioning point; the second positioning quality is used to represent the maximum quality threshold.
[0109] Specifically, the terminal device can obtain satellite signal information, obtain non-line-of-sight satellites whose signal information is non-line-of-sight signals, and the proportion of non-line-of-sight satellites in the satellites. The implementation process can be: obtaining environmental data of the target positioning point; among N satellites, if the altitude angle and azimuth angle of the i-th satellite and the environmental data indicate that there is environmental occlusion between the i-th satellite and the target positioning point, then the non-line-of-sight signal is determined to be the signal information of the i-th satellite; i is a positive integer less than or equal to N; among the N signal information, the satellite corresponding to the signal information being a non-line-of-sight signal is determined as a non-line-of-sight satellite, the number of non-line-of-sight satellites is obtained, and the ratio between the number of non-line-of-sight satellites and N is determined as the proportion of non-line-of-sight satellites in the satellites.
[0110] The terminal device can obtain the longitude and latitude coordinates of the target positioning point (i.e., the location information of the current location of the terminal device) through GPS (Global Positioning System) or other positioning technologies; send a data acquisition request to the API (Application Programming Interface) of the map service provider (such as Google Maps, OpenStreetMap, etc.) through the acquired location information, and obtain the environmental data of the location information based on the information indicated by the data acquisition request, or obtain the environmental data of the location information through the city 3D model. The environmental data includes information such as the location and height of the buildings around the location information. Among the N satellites, if the altitude angle and azimuth angle of the i-th satellite and the environmental data indicate that there is environmental occlusion between the i-th satellite and the target positioning point, the non-line-of-sight signal is determined to be the signal information of the i-th satellite. The terminal device can calculate whether each satellite is in a directly visible (LOS, Line of Sight) state through a geographic information system or a geometric calculation method. If the satellite signal is not affected by the surrounding environment, that is, within the visible range, it is determined to be a LOS signal; otherwise, it is determined to be an NLOS signal. For example, see Figure 4 , Figure 4 This is a schematic diagram of non-line-of-sight satellite detection provided by an embodiment of the present application. Figure 4As shown, taking satellites 101a and 101b as an example, the terminal device 102a determines that there is no environmental obstruction (no building obstruction) between the satellite 101b and the terminal device 102a based on the azimuth angle of the satellite 101b and the environmental data, that is, the satellite signal sent by the satellite 101b to the terminal device 102a is a direct signal (line-of-sight signal), and the line-of-sight signal is determined as the signal information of the satellite 101b; the terminal device 102a determines that there is a building 401 between the satellite 101a and the terminal device 102a based on the azimuth angle of the satellite 101a and the environmental data. At this time, based on the altitude angle el3 of the satellite 101a, the height CD of the building 401 and the altitude of the satellite 101a The terminal device can obtain the straight-line distance DE between the building 401 and the terminal device 102a (point E), and the straight-line distance BE between the satellite 101a and the terminal device 102a (point E). Based on the above data, the height (DF) of the building 401 on the signal line connecting the satellite 101a and the terminal device 102a is determined. If the building height CD is less than DF, it is determined that there is no environmental obstruction between the satellite 101a and the terminal device 102a (no obstruction by the building 401), that is, the satellite signal sent by the satellite 101a to the terminal device 102a is a direct signal (line-of-sight signal), and the line-of-sight signal is determined to be the signal information of the satellite 101a. If the building height CD is greater than or equal to DF, it is determined that there is environmental obstruction between the satellite 101a and the terminal device 102a (the building 401 is obstructing), that is, the satellite signal sent by the satellite 101a to the terminal device 102a is a non-direct signal (non-line-of-sight signal), and the non-line-of-sight signal is determined to be the signal information of the satellite 101a.
[0111] When the terminal device obtains signal information of N satellites, among the N signal information, the satellite corresponding to the non-line-of-sight signal is determined as a non-line-of-sight satellite, the number of non-line-of-sight satellites is obtained, and the ratio between the number of non-line-of-sight satellites and N is determined as the ratio of non-line-of-sight satellites to the number of satellites.
[0112] The terminal device can integrate the non-line-of-sight satellite ratio, geometric distribution data, and attenuation factor to obtain a first positioning quality, and determine the minimum value of the first positioning quality and the second positioning quality as the positioning quality of the terminal device at the target positioning point. Among them, a possible calculation formula for the positioning quality of the terminal device at the target positioning point can be seen in Formula ⑤:
[0113]
[0114] As shown in formula ⑤, score is used to indicate the positioning quality of the terminal device at the target positioning point. The larger the score value, the better the positioning quality of the terminal device at the target positioning point. Used to indicate the first positioning quality; 1 is the second positioning quality; NlosRatio is the ratio of non-line-of-sight satellites, SnrDecrease is the attenuation factor; GDOP is the geometric distribution data.
[0115] Further, see Figure 5 , Figure 5 This is a data processing method provided by the embodiment of the present application. Figure 2 .like Figure 5 The data processing process is described as follows:
[0116] Step S201: Acquire positioning satellite information of a satellite, wherein the positioning satellite information includes the altitude angle, azimuth angle, and signal-to-noise ratio of the satellite.
[0117] In the embodiment of the present application, the specific implementation process of step S201 can be found in Figure 3 The specific description process of step S101 is not repeated here.
[0118] Step S202: Acquire a third satellite whose elevation angle is greater than an elevation angle threshold from the satellites, acquire the number of the third satellites, and acquire the signal-to-noise ratio mean of the signal-to-noise ratio of the third satellites.
[0119] In an embodiment of the present application, a terminal device may detect a satellite's elevation angle. When the satellite's elevation angle is greater than or equal to an elevation angle threshold, the terminal device may determine the satellite as a third satellite. The number of third satellites and the signal-to-noise ratio of the third satellite are obtained, and the mean signal-to-noise ratio of the third satellite is determined based on the signal-to-noise ratio of the third satellite. For example, the elevation angle threshold may be 50 degrees, and a satellite with an elevation angle greater than 50 degrees is determined as a third satellite.
[0120] Step S203: Add the number of satellites and the mean signal-to-noise ratio of the third satellite to the sliding window. When the storage time of the sliding window is greater than or equal to the first time threshold, obtain the number change data of the number of satellites to be counted and the mean change data of the mean signal-to-noise ratio to be counted included in the sliding window; the number of satellites to be counted includes the number of the third satellite, and the mean signal-to-noise ratio to be counted includes the mean signal-to-noise ratio.
[0121] In an embodiment of the present application, the terminal device can add the satellite count and signal-to-noise ratio mean of the third satellite to a sliding window. The sliding window is a technique commonly used when processing continuous data streams or sequence data. It is typically used for real-time, continuous analysis and processing of data streams. This technique can implement functions such as real-time monitoring, aggregated statistics, and pattern recognition of data streams. The terminal device can calculate various statistical indicators, such as average, maximum, and minimum values, in real time within the sliding window to determine data trends. The terminal device continues to acquire a fourth satellite whose elevation angle is greater than the elevation angle threshold, acquires the satellite number of the fourth satellite and the signal-to-noise ratio mean of the signal-to-noise ratio of the fourth satellite, and stores the satellite number of the fourth satellite and the signal-to-noise ratio mean of the fourth satellite in the sliding window until the storage time of the sliding window is greater than or equal to the first time threshold, at which time the terminal device acquires the number change data of the number of satellites to be counted and the mean change data of the mean signal-to-noise ratio to be counted included in the sliding window; the number of satellites to be counted includes the satellite number of the third satellite and the number of the fourth satellite, and the mean signal-to-noise ratio to be counted includes the mean signal-to-noise ratio and the mean signal-to-noise ratio of the fourth satellite.
[0122] For example, the first time threshold may be 20 seconds, and the number change data of the number of satellites to be counted and the mean change data of the mean signal-to-noise ratio to be counted stored in the sliding window may be as shown in Table 3:
[0123] Table 3
[0124]
[0125]
[0126] As shown in Table 3, the number of satellites to be counted 60 and the average signal-to-noise ratio to be counted 30 corresponding to the 0th second may be the number of satellites and the average signal-to-noise ratio of the third satellite.
[0127] Step S204: determining an occlusion detection result of the terminal device at the target positioning point based on the quantity change data and the mean change data.
[0128] In an embodiment of the present application, the specific implementation process of the terminal device determining the occlusion detection result of the terminal device at the target positioning point based on the quantity change data and the mean change data can be: constructing a quantity change curve based on the quantity change data, and constructing a mean change curve based on the mean change data. If there are abnormal points in the quantity change curve or the mean change curve, the signal occlusion is determined as the occlusion detection result of the terminal device at the target positioning point; the abnormal point refers to a point whose slope is in the change threshold range.
[0129] Specifically, the terminal device draws a quantity change curve based on the quantity change data of the number of satellites to be counted, and draws a mean change curve based on the mean change data of the mean signal-to-noise ratio to be counted. For example, Figure 7 , Figure 7 This is a schematic diagram of a change curve provided in an embodiment of the present application. The quantity change curve can be as follows: Figure 7 The quantity change curve 701 shown, the mean change curve can be as follows Figure 7 The mean change curve 702 shown in FIG. 1 is shown. If the slope of the data point for the number of satellites to be counted corresponding to the xth second in the number change curve 701 is within the change threshold interval, that is, the slope of the data point for the number of satellites to be counted is less than or equal to -0.5, then the point is considered an outlier. Similarly, if the slope of the data point for the mean signal-to-noise ratio to be counted corresponding to the xth second in the mean change curve 702 is within the change threshold interval, that is, the slope of the data point for the mean signal-to-noise ratio to be counted is less than or equal to -0.5, then the point is considered an outlier, where x is a positive integer and the value range of x is between [0, 20]. If there is an outlier in either the number change curve or the mean change curve, signal obstruction is determined as the obstruction detection result of the terminal device at the target positioning point. If there is no outlier in either the number change curve or the mean change curve, non-signal obstruction is determined as the obstruction detection result of the terminal device at the target positioning point.
[0130] Optionally, the specific implementation process of the terminal device determining the occlusion detection result of the terminal device at the target positioning point based on the quantity change data and the mean change data can also be: the quantity change data includes the quantity growth rate between any two adjacent satellite numbers to be counted, and the mean change data includes the mean growth rate between any two adjacent signal-to-noise ratio means to be counted; if the quantity growth rate or the mean growth rate is less than the first change threshold, the signal occlusion is determined as the occlusion detection result of the terminal device at the target positioning point.
[0131] Specifically, the terminal device can obtain any two adjacent numbers of satellites to be counted in the number change data, determine the difference between the latter number of satellites to be counted and the former number of satellites to be counted, and determine the ratio between the difference and the former number of satellites to be counted as the number growth rate between the two adjacent numbers of satellites to be counted. It can also obtain any two adjacent mean values of signal-to-noise ratios to be counted in the mean change data, determine the difference between the latter mean value of signal-to-noise ratio to be counted and the former mean value of signal-to-noise ratio to be counted, and determine the ratio between the difference and the former mean value of signal-to-noise ratio to be counted as the mean growth rate between the two adjacent mean values of signal-to-noise ratio to be counted. If the number growth rate or the mean growth rate is less than a first change threshold, signal obstruction is determined as the obstruction detection result of the terminal device at the target positioning point; otherwise, non-signal obstruction is determined as the obstruction detection result of the terminal device at the target positioning point. The first change threshold can be -0.5, that is, when the number growth rate or the mean growth rate is less than -0.5, signal obstruction is determined as the obstruction detection result of the terminal device at the target positioning point.
[0132] Step S205: Based on the occlusion detection result of the terminal device at the target positioning point and the positioning quality of the terminal device at the target positioning point, a weight coefficient of the target positioning point in the business application is determined; the weight coefficient is used to determine the positioning result of the target positioning point in the business application.
[0133] In the embodiment of the present application, the terminal device may execute the signal blocking detection result when determining that the blockage detection result of the terminal device at the target positioning point is signal blocking. Figure 3 The steps shown determine the positioning quality of the terminal device at the target positioning point. Based on the positioning quality of the terminal device at the target positioning point, a weight coefficient of the target positioning point in the service application is determined. Specifically, the positioning quality of the terminal device at the target positioning point ranges from [0, 1]. The terminal device can directly determine the positioning quality score at the target positioning point as the weight coefficient of the target positioning point in the service application.
[0134] Alternatively, the terminal device may determine a first weight coefficient of the target positioning point based on the occlusion detection result of the terminal device at the target positioning point; and determine a second weight coefficient of the target positioning point based on the positioning quality of the terminal device at the target positioning point. The first weight coefficient and the second weight coefficient are integrated to obtain the weight coefficient of the target positioning point. Specifically, the terminal device may determine the first weight coefficient of the target positioning point based on the occlusion detection result of the terminal device at the target positioning point. If the occlusion detection result is non-signal occlusion, the first weight coefficient of the target positioning point is set to a first weight value (such as 1); if the occlusion detection result is signal occlusion, the first weight coefficient of the target positioning point is set to a second weight value (such as 0). The first weight value is greater than the second weight value. The first weight value and the second weight value can be empirical values or manually set. The terminal device can obtain a score value of the positioning quality of the terminal device at the target positioning point, and directly determine the score value as the second weight coefficient of the target positioning point. Optionally, if the score value of the positioning quality of the terminal device at the target positioning point is less than the quality score threshold (for example, it can be 0.5), the terminal device can set the second weight coefficient to the second weight value (such as 0); otherwise, the second weight coefficient is set to the first weight value (such as 1). The terminal device can determine the first weight parameter and the second weight parameter (for example, the first weight parameter and the second weight parameter can both be 50%, or the user can set the ratio between the two according to the importance of the occlusion detection result and the positioning quality, and the first weight parameter plus the second weight parameter is equal to 100%). The terminal device integrates the first weight coefficient with the first weight parameter, and the second weight coefficient with the second weight parameter, respectively, to obtain the weight coefficient of the target positioning point. The weight coefficient of the target positioning point can be expressed as "weight coefficient = first weight coefficient * first weight parameter + second weight coefficient * second weight parameter".
[0135] In an embodiment of the present application, after obtaining the weight coefficient of the target positioning point, the terminal device can combine it with other factors such as road restriction information to help the user determine the best navigation solution. If the positioning quality value of a positioning point is less than the quality score threshold, or there are problems such as signal obstruction, the terminal device can directly adjust the weight coefficient to reduce the weight of the positioning point to reduce the impact of the positioning point on the navigation solution. For positioning points with a positioning quality value close to 1, their weight coefficients can be increased, and the terminal device can give priority to determining the route where the positioning point is located as the best navigation solution when determining the navigation solution. For example, if the user needs to go from point A to point B, if the weight coefficient of a positioning point located on one of the routes from point A to point B indicates that the reliability of the positioning point is good (the larger the weight coefficient, the better the reliability of the point), then the route where the target positioning point is located can be determined as the best navigation solution.
[0136] Optionally, the terminal device determines the weight coefficients of the target positioning points, collects them, and sends them to the mapping software provider, who can use them to guide map updates. By collecting the signal quality of the positioning points, inaccuracies in the map can be identified, and the map data can be optimized to improve the map's precision and accuracy.
[0137] Optionally, if the user encounters navigation errors, delays, and other problems during use, the terminal device can determine the changes in the weight coefficients of the positioning points through the collected weight coefficients of the positioning points, prompt the navigation system or map software failure, and improve user satisfaction.
[0138] For further information, see Figure 6 , Figure 6 This is a data processing method provided by the embodiment of the present application. Figure 3 ,like Figure 6 As shown, the terminal device obtains the positioning satellite information of the satellite, the positioning satellite information includes the altitude angle, azimuth angle and signal-to-noise ratio of the satellite, obtains the third satellite with an altitude angle greater than the altitude angle threshold from the satellite based on the altitude angle of the satellite, obtains the number of the third satellite and the signal-to-noise ratio mean of the signal-to-noise ratio of the third satellite, and stores the number of the third satellite and the signal-to-noise ratio mean of the third satellite in the sliding window. The terminal device can detect whether the storage time of the sliding window meets the first time threshold. If the storage time of the sliding window does not meet the first time threshold, that is, the storage time of the sliding window is less than the first time threshold, continue to execute the process of obtaining the third satellite with an altitude angle greater than the altitude angle threshold from the satellite until the storage time of the sliding window meets the first time threshold; if the sliding window storage time does not meet the first time threshold, that is, the storage time of the sliding window is less than the first time threshold, continue to execute the process of obtaining the third satellite with an altitude angle greater than the altitude angle threshold from the satellite until the storage time of the sliding window meets the first time threshold; When the storage time of the window meets the first time threshold, that is, the storage time of the sliding window is greater than or equal to the first time threshold, the terminal device obtains the quantity change data of the number of satellites to be counted included in the sliding window, and the mean change data of the mean signal-to-noise ratio to be counted, initiates occlusion detection, and detects whether there is data anomaly based on the quantity change data and the mean change data. The occlusion detection result of the terminal device at the target positioning point is determined based on the data detection result. If there is data anomaly in the quantity change data or the mean change data, signal occlusion is determined as the occlusion detection result of the terminal device at the target positioning point; if there is no data anomaly in the quantity change data and the mean change data, non-signal occlusion is determined as the occlusion detection result of the terminal device at the target positioning point.
[0139] Further, see Figure 8 , Figure 8Schematic diagram of a data processing device provided in an embodiment of the present application. The data processing device may be a computer program (including program code, etc.) running on a computer device, for example, the data processing device may be an application software; the data processing device may be used to execute the corresponding steps of the method provided in an embodiment of the present application. Figure 8 As shown, the data processing device 800 can be used to Figure 3 and Figure 5 The terminal device in the corresponding embodiment may specifically include: an information acquisition module 11 , a geometric distribution determination module 12 , an attenuation factor determination module 13 , a data integration module 14 , and an occlusion detection module 15 .
[0140] The information acquisition module 11 is used to obtain the positioning satellite information of the satellite, the positioning satellite information includes the satellite's altitude angle, azimuth angle and signal-to-noise ratio;
[0141] A geometric distribution determination module 12 is configured to determine geometric distribution data of satellites based on the altitude angle and azimuth angle in the positioning satellite information;
[0142] an attenuation factor determination module 13, configured to divide the satellites into M satellite clusters based on a signal-to-noise ratio of the satellites, and determine an attenuation factor of the satellites based on the number of satellites included in each of the M satellite clusters;
[0143] The data integration module 14 is used to integrate the proportion of non-line-of-sight satellites that send non-line-of-sight signals to the terminal device, the geometric distribution data and the attenuation factor to obtain the positioning quality of the terminal device at the target positioning point; the target positioning point refers to the location of the positioning satellite information received from the satellite.
[0144] In one possible implementation, when the geometric distribution determination module 12 is configured to determine the geometric distribution data of the satellite based on the altitude angle and azimuth angle in the positioning satellite information, the geometric distribution determination module 12 is specifically configured to perform the following operations:
[0145] Generate a satellite observation matrix based on the altitude angle and azimuth angle in the positioning satellite information;
[0146] Transpose the satellite observation matrix to obtain a transposed distribution matrix, and integrate the transposed distribution matrix and the satellite observation matrix to obtain a covariance matrix;
[0147] The matrix parameters included in the covariance matrix are combined to obtain the geometric distribution data of the satellite.
[0148] In a possible implementation, when the geometric distribution determination module 12 is configured to determine the satellite observation matrix based on the altitude angle and azimuth angle in the positioning satellite information, the geometric distribution determination module 12 is specifically configured to perform the following operations:
[0149] Determine the satellite's altitude angle cosine and altitude angle sine based on the altitude angle in the positioning satellite information, and determine the satellite's azimuth angle cosine and azimuth angle sine based on the azimuth in the positioning satellite information;
[0150] The cosine value of the elevation angle and the sine value of the azimuth angle are integrated to obtain the first observation parameter, and the cosine value of the elevation angle and the cosine value of the azimuth angle are integrated to obtain the second observation parameter;
[0151] The first observation parameter, the second observation parameter, the sine value of the altitude angle, and the clock error coefficient obtained by the terminal device are spliced together to obtain a satellite observation matrix; the clock error coefficient indicates the difference coefficient between the satellite clock of the satellite and the clock of the terminal device.
[0152] In a possible implementation, the number of satellites is N, where N is a positive integer. The attenuation factor determination module 13 is configured to divide the satellites into M satellite clusters based on a signal-to-noise ratio of the satellites, and to determine the attenuation factor of the satellites based on the number of satellites included in each of the M satellite clusters. The attenuation factor determination module 13 is specifically configured to perform the following operations:
[0153] Obtain M-1 signal-to-noise ratio thresholds corresponding to k elevation angle ranges, obtain the target elevation angle range to which the elevation angles corresponding to N satellites belong, and divide the N satellites into M satellite clusters based on the M-1 signal-to-noise ratio thresholds of the target elevation angle range corresponding to each satellite; k is a positive integer; M is less than or equal to N;
[0154] The ratio of the number of satellites included in the first satellite cluster of M satellite clusters to N is determined as the mass attenuation ratio, and the attenuation factors of the N satellites are determined based on the mass attenuation ratio; the signal-to-noise ratio of the first satellite included in the first satellite cluster is less than the signal-to-noise ratio of the second satellite included in other satellite clusters, and the altitude angle of the first satellite and the altitude angle of the second satellite belong to the same altitude angle range.
[0155] In one possible implementation, the data integration module 14 is configured to integrate the proportion of non-line-of-sight satellites that send non-line-of-sight signals to the terminal device, geometric distribution data, and attenuation factors, and obtain the positioning quality of the terminal device at the target positioning point. The data integration module 14 is specifically configured to perform the following operations:
[0156] Obtain satellite signal information, including the number of non-line-of-sight satellites whose signal information is non-line-of-sight (NLOS) signals and the proportion of non-line-of-sight satellites in the satellite network. Non-line-of-sight signals refer to signals received by terminal devices after direct signals are reflected or diffracted.
[0157] The proportion of non-line-of-sight satellites, geometric distribution data and attenuation factors are integrated and processed to obtain the first positioning quality. The minimum value of the first positioning quality and the second positioning quality is determined as the positioning quality of the terminal device at the target positioning point; the second positioning quality is used to represent the maximum quality threshold.
[0158] In a possible implementation, the number of satellites is N, where N is a positive integer; the data integration module 14 is configured to obtain satellite signal information, and the acquired signal information is a non-line-of-sight satellite whose signal information is a non-line-of-sight signal. When the non-line-of-sight satellite ratio among the satellites is large, the data integration module 14 is specifically configured to perform the following operations:
[0159] Obtain environmental data of the target positioning point;
[0160] Among N satellites, if the elevation angle and azimuth angle of the i-th satellite and the environmental data indicate that there is environmental occlusion between the i-th satellite and the target positioning point, the non-line-of-sight signal is determined to be the signal information of the i-th satellite; i is a positive integer less than or equal to N;
[0161] Among N signal information, the satellite corresponding to the non-line-of-sight signal is determined as a non-line-of-sight satellite, the number of non-line-of-sight satellites is obtained, and the ratio between the number of non-line-of-sight satellites and N is determined as the ratio of the non-line-of-sight satellites to the satellites.
[0162] In a possible implementation, when the information acquisition module 11 is used to acquire the positioning satellite information of the satellite, the information acquisition module 11 is specifically used to perform the following operations:
[0163] obtaining candidate satellite information of the candidate satellites, performing anomaly detection on the elevation angle, azimuth angle, and signal-to-noise ratio in the candidate satellite information of the candidate satellites, and determining an abnormal satellite among the candidate satellites;
[0164] Obtaining signal frequency values of regular satellites, and determining satellites from regular satellites based on the signal frequency values; regular satellites refer to candidate satellites excluding abnormal satellites from among the candidate satellites;
[0165] The candidate satellite information of the satellite is determined as the positioning satellite information.
[0166] In a possible implementation, the data processing device 800 further includes an occlusion detection module 15, which is specifically configured to perform the following operations:
[0167] Acquire a third satellite having an elevation angle greater than an elevation angle threshold from the satellites, acquire the number of the third satellite, and a signal-to-noise ratio mean value of a signal-to-noise ratio of the third satellite;
[0168] The number of satellites and the mean signal-to-noise ratio of the third satellite are added to the sliding window, and when the storage time of the sliding window is greater than or equal to the first time threshold, the number change data of the number of satellites to be counted and the mean change data of the mean signal-to-noise ratio to be counted included in the sliding window are obtained; the number of satellites to be counted includes the number of the third satellite, and the mean signal-to-noise ratio to be counted includes the mean signal-to-noise ratio;
[0169] Based on the quantity change data and the mean change data, determine the occlusion detection result of the terminal device at the target positioning point;
[0170] Based on the occlusion detection result of the terminal device at the target positioning point and the positioning quality of the terminal device at the target positioning point, the weight coefficient of the target positioning point in the business application is determined; the weight coefficient is used to determine the positioning result of the target positioning point in the business application.
[0171] In one possible implementation, when the occlusion detection module 15 is configured to determine an occlusion detection result of the terminal device at the target positioning point based on the quantity change data and the mean change data, the occlusion detection module 15 is specifically configured to perform the following operations:
[0172] A quantity change curve is constructed based on the quantity change data, and a mean change curve is constructed based on the mean change data. If there are abnormal points in the quantity change curve or the mean change curve, the signal obstruction is determined as the obstruction detection result of the terminal device at the target positioning point; the abnormal point refers to a point where the slope is within the change threshold range;
[0173] Alternatively, the quantity change data includes the quantity growth rate between any two adjacent satellite numbers to be counted, and the mean change data includes the mean growth rate between any two adjacent signal-to-noise ratio means to be counted; if the quantity growth rate or the mean growth rate is less than the first change threshold, the signal obstruction is determined as the obstruction detection result of the terminal device at the target positioning point.
[0174] See Figure 9 , Figure 9 This is a schematic diagram of the structure of a computer device provided in an embodiment of the present application. Figure 9As shown, the computer device in the embodiment of the present application may include: a processor 901, a network interface 904 and a memory 905. In addition, the above-mentioned computer device 900 may also include: a user interface 903, and at least one communication bus 902. Among them, the communication bus 902 is used to realize the connection and communication between these components. Among them, the user interface 903 may include a display screen (Display), a keyboard (Keyboard), and the user interface 903 may optionally include a standard wired interface and a wireless interface. The network interface 904 may optionally include a standard wired interface and a wireless interface (such as a WI-FI interface). The memory 905 may be a high-speed RAM memory, or it may be a non-volatile memory (non-volatile memory), such as at least one disk storage. The memory 905 may optionally also be at least one storage device located away from the aforementioned processor 901. As Figure 9 As shown, the memory 905 as a computer-readable storage medium may include an operating system, a network communication module, a user interface module, and a device control application.
[0175] The network interface 904 may provide a network communication element; the user interface 903 may be used to provide an input interface for the user; and the processor 901 may be used to call the device control application stored in the memory 905 to perform the following operations:
[0176] Obtaining the satellite's positioning satellite information, including the satellite's altitude angle, azimuth angle, and signal-to-noise ratio;
[0177] Determine the geometric distribution data of the satellite based on the altitude angle and azimuth angle in the positioning satellite information;
[0178] Based on the signal-to-noise ratio of the satellites, the satellites are divided into M satellite clusters, and the satellite attenuation factor is determined based on the number of satellites included in each of the M satellite clusters; M is a positive integer;
[0179] The proportion of non-line-of-sight satellites that send non-line-of-sight signals to the terminal device, the geometric distribution data and the attenuation factor are integrated and processed to obtain the positioning quality of the terminal device at the target positioning point; the target positioning point refers to the location of the positioning satellite information received from the satellite.
[0180] In one possible implementation, the processor 901 determines the geometric distribution data of the satellites based on the altitude angle and azimuth angle in the positioning satellite information, and performs the following operations:
[0181] Generate a satellite observation matrix based on the altitude angle and azimuth angle in the positioning satellite information;
[0182] Transpose the satellite observation matrix to obtain a transposed distribution matrix, and integrate the transposed distribution matrix and the satellite observation matrix to obtain a covariance matrix;
[0183] The matrix parameters included in the covariance matrix are combined to obtain the geometric distribution data of the satellite.
[0184] In one possible implementation, the processor 901 determines a satellite observation matrix based on the altitude angle and the azimuth angle in the positioning satellite information, and is configured to perform the following operations:
[0185] Determine the satellite's altitude angle cosine and altitude angle sine based on the altitude angle in the positioning satellite information, and determine the satellite's azimuth angle cosine and azimuth angle sine based on the azimuth in the positioning satellite information;
[0186] The cosine value of the elevation angle and the sine value of the azimuth angle are integrated to obtain the first observation parameter, and the cosine value of the elevation angle and the cosine value of the azimuth angle are integrated to obtain the second observation parameter;
[0187] The first observation parameter, the second observation parameter, the sine value of the altitude angle, and the clock error coefficient obtained by the terminal device are spliced together to obtain a satellite observation matrix; the clock error coefficient indicates the difference coefficient between the satellite clock of the satellite and the clock of the terminal device.
[0188] In one possible implementation, the number of satellites is N, where N is a positive integer. The processor 901 divides the satellites into M satellite clusters based on a signal-to-noise ratio of the satellites, determines a satellite attenuation factor based on the number of satellites included in each of the M satellite clusters, and performs the following operations:
[0189] Obtain M-1 signal-to-noise ratio thresholds corresponding to k elevation angle ranges, obtain the target elevation angle range to which the elevation angles corresponding to N satellites belong, and divide the N satellites into M satellite clusters based on the M-1 signal-to-noise ratio thresholds of the target elevation angle range corresponding to each satellite; k is a positive integer; M is less than or equal to N;
[0190] The ratio of the number of satellites included in the first satellite cluster of M satellite clusters to N is determined as the mass attenuation ratio, and the attenuation factors of the N satellites are determined based on the mass attenuation ratio; the signal-to-noise ratio of the first satellite included in the first satellite cluster is less than the signal-to-noise ratio of the second satellite included in other satellite clusters, and the altitude angle of the first satellite and the altitude angle of the second satellite belong to the same altitude angle range.
[0191] In one possible implementation, the processor 901 integrates the percentage of non-line-of-sight satellites that send non-line-of-sight signals to the terminal device, geometric distribution data, and attenuation factors to obtain the positioning quality of the terminal device at the target positioning point, and performs the following operations:
[0192] Obtain satellite signal information, including the number of non-line-of-sight satellites whose signal information is non-line-of-sight (NLOS) signals and the proportion of non-line-of-sight satellites in the satellite network. Non-line-of-sight signals refer to signals received by terminal devices after direct signals are reflected or diffracted.
[0193] The proportion of non-line-of-sight satellites, geometric distribution data and attenuation factors are integrated and processed to obtain the first positioning quality. The minimum value of the first positioning quality and the second positioning quality is determined as the positioning quality of the terminal device at the target positioning point; the second positioning quality is used to represent the maximum quality threshold.
[0194] In one possible implementation, the number of satellites is N, where N is a positive integer; the processor 901 obtains satellite signal information, obtains non-line-of-sight satellites whose signal information is non-line-of-sight signals, and a proportion of non-line-of-sight satellites among the satellites, and is used to perform the following operations:
[0195] Obtain environmental data of the target positioning point;
[0196] Among N satellites, if the elevation angle and azimuth angle of the i-th satellite and the environmental data indicate that there is environmental occlusion between the i-th satellite and the target positioning point, the non-line-of-sight signal is determined to be the signal information of the i-th satellite; i is a positive integer less than or equal to N;
[0197] Among N signal information, the satellite corresponding to the non-line-of-sight signal is determined as a non-line-of-sight satellite, the number of non-line-of-sight satellites is obtained, and the ratio between the number of non-line-of-sight satellites and N is determined as the ratio of the non-line-of-sight satellites to the satellites.
[0198] In one possible implementation, the processor 901 obtains positioning satellite information of a satellite, and is configured to perform the following operations:
[0199] obtaining candidate satellite information of the candidate satellites, performing anomaly detection on the elevation angle, azimuth angle, and signal-to-noise ratio in the candidate satellite information of the candidate satellites, and determining an abnormal satellite among the candidate satellites;
[0200] Obtaining signal frequency values of regular satellites, and determining satellites from regular satellites based on the signal frequency values; regular satellites refer to candidate satellites excluding abnormal satellites from among the candidate satellites;
[0201] The candidate satellite information of the satellite is determined as the positioning satellite information.
[0202] In a possible implementation, the processor 901 is further configured to perform the following operations:
[0203] Acquire a third satellite having an elevation angle greater than an elevation angle threshold from the satellites, acquire the number of the third satellite, and a signal-to-noise ratio mean value of a signal-to-noise ratio of the third satellite;
[0204] The number of satellites and the mean signal-to-noise ratio of the third satellite are added to the sliding window, and when the storage time of the sliding window is greater than or equal to the first time threshold, the number change data of the number of satellites to be counted and the mean change data of the mean signal-to-noise ratio to be counted included in the sliding window are obtained; the number of satellites to be counted includes the number of the third satellite, and the mean signal-to-noise ratio to be counted includes the mean signal-to-noise ratio;
[0205] Based on the quantity change data and the mean change data, determine the occlusion detection result of the terminal device at the target positioning point;
[0206] Based on the occlusion detection result of the terminal device at the target positioning point and the positioning quality of the terminal device at the target positioning point, the weight coefficient of the target positioning point in the business application is determined; the weight coefficient is used to determine the positioning result of the target positioning point in the business application.
[0207] In one possible implementation, the processor 901 determines an occlusion detection result of the terminal device at the target positioning point based on the quantity change data and the mean change data, and is configured to perform the following operations:
[0208] A quantity change curve is constructed based on the quantity change data, and a mean change curve is constructed based on the mean change data. If there are abnormal points in the quantity change curve or the mean change curve, the signal obstruction is determined as the obstruction detection result of the terminal device at the target positioning point; the abnormal point refers to a point where the slope is within the change threshold range;
[0209] Alternatively, the quantity change data includes the quantity growth rate between any two adjacent satellite numbers to be counted, and the mean change data includes the mean growth rate between any two adjacent signal-to-noise ratio means to be counted; if the quantity growth rate or the mean growth rate is less than the first change threshold, the signal obstruction is determined as the obstruction detection result of the terminal device at the target positioning point.
[0210] In addition, it should be noted that: the embodiment of the present application also provides a computer-readable storage medium, the computer-readable storage medium stores a computer program, the computer program is suitable for being loaded and executed by the processor Figure 3 or Figure 5 For details on the methods provided in each step, please refer to the Figure 3 or Figure 5The implementation methods provided in each step will not be repeated here. In addition, the description of the beneficial effects of adopting the same method will not be repeated. For technical details not disclosed in the computer-readable storage medium embodiment involved in this application, please refer to the description of the method embodiment of this application. As an example, the computer program can be deployed to be executed on one computer device, or on multiple computer devices located in one location, or on multiple computer devices distributed in multiple locations and interconnected by a communication network.
[0211] The computer-readable storage medium may be the device provided in any of the aforementioned embodiments or the internal storage unit of the computer device, such as the hard disk or memory of the computer device. The computer-readable storage medium may also be an external storage device of the computer device, such as a plug-in hard disk, a smart memory card (SMC), a secure digital (SD) card, a flash card, etc. equipped on the computer device. Furthermore, the computer-readable storage medium may also include both the internal storage unit of the computer device and an external storage device. The computer-readable storage medium is used to store the computer program and other programs and data required by the computer device. The computer-readable storage medium may also be used to temporarily store data that has been output or is to be output.
[0212] The present application also provides a computer program product or computer program, which includes computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device performs Figure 3 or Figure 5 The methods provided in the various optional methods are therefore not described in detail here.
[0213] The terms "first", "second", etc. in the description, claims, and drawings of the embodiments of the present application are used to distinguish different objects, rather than to describe a specific order. In addition, the terms "comprising" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, apparatus, product, or device comprising a series of steps or units is not limited to the listed steps or modules, but may optionally include steps or modules not listed, or may optionally include other step units inherent to these processes, methods, apparatuses, products, or devices.
[0214] In the embodiments of the present application, the term "module" or "unit" refers to a computer program or a part of a computer program that has a predetermined function and works together with other related parts to achieve a predetermined goal, and can be implemented in whole or in part by using software, hardware (such as processing circuits or memories) or a combination thereof. Similarly, a processor (or multiple processors or memories) can be used to implement one or more modules or units. In addition, each module or unit can be part of an overall module or unit that includes the function of the module or unit.
[0215] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the composition and steps of each example have been generally described in this description according to their functions. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.
[0216] The methods and related devices provided in the embodiments of the present application are described with reference to the method flow charts and / or structural diagrams provided in the embodiments of the present application. Specifically, each process and / or block in the method flow charts and / or structural diagrams, as well as the combination of processes and / or blocks in the flow charts and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable device to generate a machine, so that the instructions executed by the processor of the computer or other programmable device generate instructions for implementing the steps in the process. Figure 1 Schematic diagram of one or more processes and / or structures Figure 1 These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable device to work in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture including the instruction device, or are transmitted through a computer-readable storage medium. Computer instructions can be transmitted from one website, computer, server or data center to another website, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The instruction device is implemented in the process Figure 1 Schematic diagram of one or more processes and / or structures Figure 1These computer program instructions can also be loaded onto a computer or other programmable device so that a series of operation steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process in the computer or other programmable device. Figure 1 The flow or flows and / or structures illustrate the steps of the functions specified in one block or multiple blocks.
[0217] The steps in the method of the embodiment of the present application can be adjusted in order, combined and deleted according to actual needs.
[0218] The modules in the device of the embodiment of the present application can be merged, divided and deleted according to actual needs.
[0219] The above disclosure is only a preferred embodiment of the present application, and certainly cannot be used to limit the scope of rights of the present application. Therefore, equivalent changes made according to the claims of the present application are still within the scope covered by the present application.
Claims
1. A data processing method, characterized in that: The method comprises: Acquire positioning satellite information of a satellite, wherein the positioning satellite information includes an altitude angle, an azimuth angle, and a signal-to-noise ratio of the satellite; Determining the geometric distribution data of the satellite based on the altitude angle and azimuth angle in the positioning satellite information; Based on the signal-to-noise ratio of the satellite, the satellite is divided into M satellite clusters, and the attenuation factor of the satellite is determined based on the number of satellites included in each of the M satellite clusters; M is a positive integer; The proportion of non-line-of-sight satellites that send non-line-of-sight signals to the terminal device, the geometric distribution data, and the attenuation factor are integrated to obtain the positioning quality of the terminal device at the target positioning point; the target positioning point refers to the location where the positioning satellite information of the satellite is received.
2. The method according to claim 1, characterized in that The step of determining the geometric distribution data of the satellite based on the altitude angle and the azimuth angle in the positioning satellite information comprises: Generate a satellite observation matrix based on the altitude angle and azimuth angle in the positioning satellite information; Transposing the satellite observation matrix to obtain a transposed distribution matrix, and integrating the transposed distribution matrix and the satellite observation matrix to obtain a covariance matrix; The matrix parameters included in the covariance matrix are combined to obtain the geometric distribution data of the satellite.
3. The method according to claim 2, characterized in that The determining of the satellite observation matrix based on the altitude angle and the azimuth angle in the positioning satellite information includes: Determine the satellite's altitude angle cosine and altitude angle sine based on the altitude angle in the positioning satellite information, and determine the satellite's azimuth angle cosine and azimuth angle sine based on the azimuth in the positioning satellite information; Integrating the elevation cosine value and the azimuth sine value to obtain a first observation parameter, and integrating the elevation cosine value and the azimuth cosine value to obtain a second observation parameter; The first observation parameter, the second observation parameter, the sine value of the altitude angle, and the clock error coefficient obtained by the terminal device are spliced together to obtain a satellite observation matrix; the clock error coefficient indicates the difference coefficient between the satellite clock of the satellite and the clock of the terminal device.
4. The method according to claim 1, wherein The number of satellites is N, where N is a positive integer; dividing the satellites into M satellite clusters based on the signal-to-noise ratio of the satellites, and determining the attenuation factors of the satellites based on the number of satellites included in each of the M satellite clusters, including: Obtain M-1 signal-to-noise ratio thresholds corresponding to k elevation angle ranges, obtain target elevation angle ranges to which the elevation angles corresponding to N satellites belong, and divide the N satellites into M satellite clusters based on the M-1 signal-to-noise ratio thresholds of the target elevation angle range corresponding to each satellite; k is a positive integer; and M is less than or equal to N; The ratio of the number of satellites included in the first satellite cluster of the M satellite clusters to N is determined as the mass attenuation ratio, and the attenuation factors of the N satellites are determined based on the mass attenuation ratio; the signal-to-noise ratio of the first satellite included in the first satellite cluster is less than the signal-to-noise ratio of the second satellite included in other satellite clusters, and the altitude angle of the first satellite and the altitude angle of the second satellite belong to the same altitude angle range.
5. The method according to claim 1, wherein The integrating and processing the proportion of non-line-of-sight satellites among the satellites that transmit non-line-of-sight signals to the terminal device, the geometric distribution data, and the attenuation factor to obtain the positioning quality of the terminal device at the target positioning point includes: Acquire signal information of the satellite, acquire non-line-of-sight satellites whose signal information is non-line-of-sight signals, and a proportion of non-line-of-sight satellites among the satellites; the non-line-of-sight signal refers to a signal received by the terminal device after a direct signal is reflected or diffracted; The proportion of non-line-of-sight satellites, the geometric distribution data and the attenuation factor are integrated to obtain a first positioning quality, and the minimum value of the first positioning quality and the second positioning quality is determined as the positioning quality of the terminal device at the target positioning point; the second positioning quality is used to represent the maximum quality threshold.
6. The method according to claim 5, characterized in that The number of satellites is N, where N is a positive integer; and the acquiring of signal information of the satellites, acquiring non-line-of-sight satellites whose signal information is non-line-of-sight signals, and a proportion of non-line-of-sight satellites among the satellites include: Acquiring environmental data of the target positioning point; Among the N satellites, if the elevation angle and azimuth angle of the i-th satellite and the environmental data indicate that environmental occlusion exists between the i-th satellite and the target positioning point, then determining the non-line-of-sight signal as the signal information of the i-th satellite; i is a positive integer less than or equal to N; Among N signal information, a satellite corresponding to a non-line-of-sight signal of the signal information is determined as a non-line-of-sight satellite, the number of the non-line-of-sight satellites is obtained, and a ratio between the number of the non-line-of-sight satellites and N is determined as a non-line-of-sight satellite ratio among the satellites.
7. The method according to claim 1, wherein The obtaining of the positioning satellite information of the satellite includes: Acquire candidate satellite information of the candidate satellites, perform abnormality detection on the altitude angle, azimuth angle, and signal-to-noise ratio in the candidate satellite information of the candidate satellites, and determine abnormal satellites among the candidate satellites; Acquiring a signal frequency value of a regular satellite, and determining a satellite from the regular satellites based on the signal frequency value; the regular satellite refers to a candidate satellite among the candidate satellites excluding the abnormal satellite; The candidate satellite information of the satellite is determined as the positioning satellite information.
8. The method according to claim 1, characterized in that The method further comprises: Acquire a third satellite having an elevation angle greater than an elevation angle threshold from the satellites, acquire the number of the third satellites, and a signal-to-noise ratio mean of the signal-to-noise ratios of the third satellites; adding the number of satellites of the third satellite and the mean signal-to-noise ratio to a sliding window, and acquiring, when a storage time of the sliding window is greater than or equal to a first time threshold, number change data of the number of satellites to be counted and mean change data of the mean signal-to-noise ratio to be counted included in the sliding window; the number of satellites to be counted includes the number of satellites of the third satellite, and the mean signal-to-noise ratio to be counted includes the mean signal-to-noise ratio; Determining an occlusion detection result of the terminal device at the target positioning point based on the quantity change data and the mean change data; Based on the occlusion detection result of the terminal device at the target positioning point and the positioning quality of the terminal device at the target positioning point, a weight coefficient of the target positioning point in the business application is determined; the weight coefficient is used to determine the positioning result of the target positioning point in the business application.
9. The method according to claim 8, characterized in that The determining, based on the quantity change data and the mean change data, an occlusion detection result of the terminal device at the target positioning point includes: Constructing a quantity change curve based on the quantity change data, and constructing a mean change curve based on the mean change data, and if there is an abnormal point in the quantity change curve or the mean change curve, determining the signal obstruction as an obstruction detection result of the terminal device at the target positioning point; the abnormal point is a point whose slope is within a change threshold range; Alternatively, the quantity change data includes the quantity growth rate between any two adjacent satellite numbers to be counted, and the mean change data includes the mean growth rate between any two adjacent signal-to-noise ratio means to be counted; if the quantity growth rate or the mean growth rate is less than the first change threshold, the signal obstruction is determined as the obstruction detection result of the terminal device at the target positioning point.
10. A data processing device, characterized in that: The device comprises: An information acquisition module is used to acquire positioning satellite information of a satellite, wherein the positioning satellite information includes the altitude angle, azimuth angle and signal-to-noise ratio of the satellite; A geometric distribution determination module, configured to determine the geometric distribution data of the satellite based on the altitude angle and azimuth angle in the positioning satellite information; an attenuation factor determination module, configured to divide the satellites into M satellite clusters based on a signal-to-noise ratio of the satellites, and determine an attenuation factor of the satellite based on the number of satellites included in each of the M satellite clusters; The data integration module is used to integrate the proportion of non-line-of-sight satellites that send non-line-of-sight signals to the terminal device, the geometric distribution data, and the attenuation factor to obtain the positioning quality of the terminal device at the target positioning point; the target positioning point refers to the location where the positioning satellite information of the satellite is received.
11. A computer device, characterized in that: Includes processor, memory, input and output interfaces; The processor is connected to the memory and the input / output interface respectively, wherein the input / output interface is used to receive and output data, the memory is used to store a computer program, and the processor is used to call the computer program so that the computer device executes the method according to any one of claims 1 to 9.
12. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program, which is suitable for being loaded and executed by a processor, so that a computer device having the processor executes the method according to any one of claims 1 to 9.
13. A computer program product comprising a computer program / instructions, characterized in that When the computer program / instructions are executed by a processor, the method according to any one of claims 1 to 9 is implemented.