Positioning updating method and apparatus, electronic device, and storage medium
By fitting a set of associated location points with pseudorange observations when the current location does not conform to the preset positioning rules, the problem of low positioning update efficiency in the prior art is solved, and efficient and flexible positioning update is achieved.
Patent Information
- Application Number
- CN202111475066.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-12-03
- Publication Date
- 2026-02-27
- Estimated Expiration
- 2041-12-03
AI Technical Summary
In existing technologies, relying on historical data to update the current location is inefficient, resulting in a cumbersome positioning update process.
The current location of the target object is obtained. If it does not meet the preset positioning rules, multiple candidate location points are determined in the associated area to which the current location point belongs. The associated location point set is obtained by fitting pseudorange observations, and the most matching candidate location point is selected from them to update the current location point.
It improves the efficiency of positioning updates, reduces computational complexity and reliance on historical data, enhances computational convenience and flexibility, and improves positioning accuracy.
Smart Images

Figure CN116224394B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of Internet communication technology, and in particular to a location update method, apparatus, electronic device and storage medium. Background Technology
[0002] With the development of internet communication technology, various internet products have emerged in an endless stream, and the services they can provide to users have become increasingly rich. Location services, or positioning services, are one such service. Due to the influence of the scenario, the determined current location point may need to be updated. In related technologies, historical data is often relied upon to update the current location point. This update process often involves cumbersome steps such as inverting the signal reception type, inverting pseudorange, making predictions using rules determined by historical data, and comparing the inversion results with the prediction results. This can easily lead to low efficiency in updating the current location point. Summary of the Invention
[0003] To address the problems of existing technologies relying on historical data and having low update efficiency when updating the current location, this application provides a location update method, apparatus, electronic device, and storage medium:
[0004] According to a first aspect of this application, a positioning update method is provided, the method comprising:
[0005] Obtain the current location of the target object; wherein the current location is determined based on satellite positioning signals;
[0006] When the current location point does not meet the preset positioning rules, multiple candidate location points are determined within the associated area to which the current location point belongs;
[0007] The pseudorange observation value between each candidate location point and the location point of the target satellite is determined respectively; wherein, the target satellite is the sender of the satellite positioning signal;
[0008] Each candidate location point is used to obtain its associated location point using the pseudorange observation value, thus obtaining a set of associated location points; wherein, the associated location points are obtained by fitting the pseudorange observation values.
[0009] The target associated location point that matches the current location point is determined from the set of associated location points, and the current location point is updated using the candidate location points corresponding to the target associated location point.
[0010] According to a second aspect of this application, a positioning update device is provided, the device comprising:
[0011] Current location point acquisition module: used to acquire the current location point of the target object; wherein, the current location point is determined based on satellite positioning signals;
[0012] Candidate location point determination module: used to determine multiple candidate location points within the associated area to which the current location point belongs when the current location point does not meet the preset positioning rules;
[0013] Pseudorange observation determination module: used to determine the pseudorange observation between each of the candidate location points and the location point of the target satellite; wherein, the target satellite is the sender of the satellite positioning signal;
[0014] The set acquisition module is used to obtain the associated location points corresponding to each candidate location point using the pseudorange observations corresponding to each candidate location point, so as to obtain the associated location point set; wherein, the associated location points are obtained by fitting based on the pseudorange observations;
[0015] Update module: used to determine a target associated location point that matches the current location point from the associated location point set, and to update the current location point using the candidate location points corresponding to the target associated location point.
[0016] According to a third aspect of this application, an electronic device is provided, the electronic device including a processor and a memory, the memory storing at least one instruction or at least one program, the at least one instruction or the at least one program being loaded and executed by the processor to implement the positioning update method as described in the first aspect.
[0017] According to a fourth aspect of this application, a computer-readable storage medium is provided, wherein at least one instruction or at least one program is stored therein, the at least one instruction or the at least one program being loaded and executed by a processor to implement the location update method as described in the first aspect.
[0018] According to a fifth aspect of this application, a computer program product or computer program is provided, comprising 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 location update method as described in the first aspect.
[0019] The positioning update method, apparatus, electronic device, and storage medium provided in this application have the following technical advantages:
[0020] This application obtains the current location of the target object; then, when the current location does not conform to a preset positioning rule, it determines multiple candidate location points within the associated region to which the current location belongs; furthermore, it determines the pseudorange observation value between each candidate location point and the location point of the target satellite; next, it uses the pseudorange observation value corresponding to each candidate location point to obtain the associated location point corresponding to each candidate location point, thus obtaining a set of associated location points; then, it determines the target associated location point that matches the current location point from the set of associated location points, and updates the current location point using the candidate location point corresponding to the target associated location point. When the current location does not conform to the preset positioning rule, this application uses points near the current location as candidate location points and fits them based on pseudorange observation values to obtain the corresponding associated location points, then matches the associated location points with the current location point, and updates the current location point using the candidate location point corresponding to the most matched associated location point. In cases where positioning is determined to be biased, using nearby points as samples to obtain associated location points that can match the current location point in the same dimension can improve the efficiency of positioning updates. Compared to related technologies that rely on a large amount of prior data and complex calculation processes, this application does not rely on historical data, and also reduces computational complexity and improves computational convenience and flexibility. Attached Figure Description
[0021] To more clearly illustrate the technical solutions and advantages in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0022] Figure 1 This is a schematic diagram of an application environment provided in an embodiment of this application;
[0023] Figure 2 This is a schematic flowchart of a positioning update method provided in an embodiment of this application;
[0024] Figure 3 This is a schematic diagram of a process for determining multiple candidate location points within the associated area to which the current location point belongs, provided in an embodiment of this application.
[0025] Figure 4 This is a schematic diagram of a process for obtaining a set of associated location points according to an embodiment of this application;
[0026] Figure 5 This is a schematic diagram showing that there are buildings between the candidate location point and the target satellite location point provided in this application embodiment;
[0027] Figure 6This is a block diagram of a positioning update device provided in an embodiment of this application;
[0028] Figure 7 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Detailed Implementation
[0029] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of this application.
[0030] It should be noted that the terms "comprising" and "having" and any variations thereof in the specification, claims and accompanying drawings of this application are intended to cover non-exclusive inclusion. For example, a process, method, system, product or server that includes a series of steps or units is not necessarily limited to those steps or units that are explicitly listed, but may include other steps or units that are not explicitly listed or that are inherent to such processes, methods, products or devices.
[0031] Please see Figure 1 , Figure 1 This is a schematic diagram of an application environment provided in an embodiment of this application. This application environment may include a client 10 and a server 20, which can be directly or indirectly connected via wired or wireless communication. The client 10 or server 20 can obtain the current location of the target object; then, if the current location does not conform to a preset positioning rule, multiple candidate location points are determined within the associated area to which the current location belongs; furthermore, pseudorange observations between each candidate location point and the location of the target satellite are determined; next, the associated location points corresponding to each candidate location point are obtained using the pseudorange observations corresponding to each candidate location point, thus obtaining a set of associated location points; subsequently, a target associated location point matching the current location point is determined from the set of associated location points, and the current location point is updated using the candidate location points corresponding to the target associated location points. It should be noted that... Figure 1 This is just one example.
[0032] Client 10 can be a physical device such as a smartphone, computer (e.g., desktop computer, tablet, laptop), augmented reality (AR) / virtual reality (VR) device, digital assistant, smart voice interaction device (e.g., smart speaker), smart wearable device, smart home appliance, in-vehicle terminal, etc., or it can be software running on the physical device, such as a computer program. The operating system corresponding to the client can be Android, iOS (a mobile operating system developed by Apple), Linux (an operating system), Microsoft Windows, etc.
[0033] The server-side component 20 can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms. The server may include network communication units, processors, and memory, etc. The server-side component can provide backend services to the corresponding clients.
[0034] In practical applications, the positioning update method provided in this application embodiment can be executed independently by the client, independently by the server, or by interaction between the client and the server.
[0035] A location update system can be built using both client and server components, and this system can fall under the category of Intelligent Transportation Systems (ITS). Intelligent Transportation Systems (ITS), also known as Intelligent Transportation Systems, effectively integrate advanced technologies (information technology, computer technology, data communication technology, sensor technology, electronic control technology, automatic control theory, operations research, artificial intelligence, etc.) into transportation, service control, and vehicle manufacturing. This strengthens the connection between vehicles, roads, and users, thereby forming a comprehensive transportation system that ensures safety, improves efficiency, enhances the environment, and conserves energy.
[0036] The determination or updating of the current location can be reflected in location services within relevant internet products. These products can include cloud technology products, artificial intelligence products, smart transportation products, driver assistance products, live streaming products, online office products, e-commerce products, gaming products, local lifestyle products, instant messaging products, and social networking products.
[0037] The current location point can be generated by a related object (such as a user, simulator, etc.) using a related Internet product. It should be noted that for the current location points, or even candidate location points and associated location points that are related to user information in the embodiments of this application, when the embodiments of this application are applied to specific products or technologies, user permission or consent is required, and the collection, use and processing of related data must comply with the relevant laws, regulations and standards of the relevant countries and regions.
[0038] The following describes a specific embodiment of a positioning update method according to this application. Figure 2 This is a flowchart illustrating a positioning update method provided in an embodiment of this application. This application provides the operational steps of the method described in the embodiment or flowchart, but based on conventional or non-inventive methods, more or fewer operational steps may be included. The order of steps listed in the embodiment is merely one possible execution order among many and does not represent the only possible execution order. In actual system or product execution, the method can be executed sequentially or in parallel (e.g., in a parallel processor or multi-threaded processing environment) as shown in the embodiment or drawings. Specifically, as... Figure 2 As shown, the method may include:
[0039] S201: Obtain the current location of the target object; wherein the current location is determined based on satellite positioning signals;
[0040] In this embodiment, the client or server obtains the current location of the target object. It is understood that the client and server are components of the location update system. The client can independently execute steps S201-S205, and the server can also independently execute steps S201-S205. The client and server can also interact to execute steps S201-S205. Both the client and server can be direct receivers of satellite positioning signals. The client (or server) can also be an indirect receiver of satellite positioning signals; in this case, the direct receiver can be the server (or client) or a third party. The current location is determined based on satellite positioning signals. The determination of the current location can be performed by the client, the server, or a third party. This embodiment does not limit the entity that receives satellite positioning signals and determines the current location. There can be at least two satellite positioning signals used to determine the current location, and these signals can originate from at least two satellites. The current location can indicate a position in a preset coordinate system (such as longitude, latitude, and elevation). The preset coordinate system can be a world coordinate system, a geocentric coordinate system, or the local horizontal coordinate system of the region. For example, if the client is an application that can provide location services and runs on a physical device such as a mobile phone, the application can use the Global Navigation Satellite System (GNSS) module integrated into the physical device to process satellite positioning signals to determine the current location.
[0041] In one exemplary embodiment, after obtaining the current location of the target object, the method further includes the following steps: first, determining the scene attribute corresponding to the current location; then, determining whether the scene attribute matches the preset location scene defined by the preset location rule; finally, when the scene attribute does not match the preset location scene, determining that the current location does not conform to the preset location rule.
[0042] The scene attributes corresponding to the current location point can indicate whether the current location point is located in an outdoor positioning environment, and if so, whether the occlusion level of the outdoor positioning environment is lower than a preset threshold. Since the preset positioning scene defined by the preset positioning rules describes an outdoor positioning environment with an occlusion level lower than the preset threshold, the judgment of whether the scene attribute matches the preset positioning scene includes the following situations: 1) Match: The scene attribute indicates that the current location point is located in an outdoor positioning environment, and the occlusion level of the outdoor positioning environment is lower than the preset threshold; 2) Mismatch: The scene attribute indicates that the current location point is located in an indoor positioning environment, such as inside a building; 3) Mismatch: The scene attribute indicates that the current location point is located in an outdoor positioning environment, but the occlusion level of the outdoor positioning environment is not lower than the preset threshold, such as between tall buildings. Taking location services for pedestrian navigation as an example, the current location point should be located on the road surface in the outdoor positioning environment. If the current location point is not on the road surface, then the current location point does not meet the preset positioning rules.
[0043] In scenarios 2) and 3) above, if the current location does not conform to the preset positioning rules, subsequent steps S202-S205 can be triggered to update the current location. However, in scenario 1), if the current location conforms to the preset positioning rules, the current location can be maintained. Determining whether to update the current location by checking if the scene attributes match the preset positioning scene effectively filters out unnecessary updates, improving the utilization of computational resources used for the update steps.
[0044] S202: When the current location point does not meet the preset positioning rules, determine multiple candidate location points within the associated area to which the current location point belongs;
[0045] In this embodiment, when the current location does not conform to a preset positioning rule, the client or server determines multiple candidate location points within the associated area to which the current location belongs. The determined candidate location points can be points near the current location.
[0046] In one exemplary implementation, such as Figure 3 As shown, determining multiple candidate location points within the associated area to which the current location point belongs includes:
[0047] S301: Determine the associated region to which the current position point belongs in the preset three-dimensional model according to the preset division parameters;
[0048] S302: Determine multiple candidate location points within the associated area based on preset selection rules; wherein, the selection information involved in the preset selection rules includes at least one of the following: distance between adjacent points, belonging to road surface points, and number of location points.
[0049] Preset partitioning parameters can be used to define the boundaries of associated regions within a preset 3D model. For example, they can define the dimensions of a space / plane constructed within the preset 3D model centered on the current location. This space / plane represents the associated region, and the unit of measurement (e.g., decimeter, meter, kilometer) can be determined according to actual needs. For instance, the dimensions of the constructed space could be 100*100*10 meters. The preset 3D model can also be a 3D model of the region to which the current location belongs. The dimensions of the region can be determined according to actual needs; for example, the region could be a province, city, or district.
[0050] Taking the distance between adjacent points as selection information as an example, the current location can be used as a reference location point, and candidate location points can be determined one by one along a preset direction according to the distance between adjacent points. Of course, multiple preset directions with "distance between adjacent points" as the interval can be included. It can be understood that if the preset directions are integrated into the associated region, multiple grids can be obtained, and candidate location points can be determined based on these grids.
[0051] Taking road surface points as the selection information as an example, if the associated region covers road surface points, then candidate location points are determined from the road surface points; if the associated region does not cover road surface points, then the projection area of the associated region on the road surface is determined, and then candidate location points are determined from the road surface points covered by the projection area.
[0052] Taking the number of location points as selection information as an example, candidate location points can be determined from multiple location points covered by the associated area according to the number of location points.
[0053] The associated region can cover multiple location points. Multiple candidate location points are determined from this region based on preset selection rules. This eliminates the need to determine corresponding associated location points from multiple location points to update the current location point, reducing the amount of data processing involved in subsequent associated location point determination and matching, thus improving the efficiency of location updates. The use of preset selection rules also ensures that the determination of candidate location points from the associated region takes into account a global perspective, thereby guaranteeing the accuracy of the determined candidate location points used for associated location point determination and matching for location updates.
[0054] S203: Determine the pseudorange observation value between each of the candidate location points and the location point of the target satellite; wherein, the target satellite is the sender of the satellite positioning signal;
[0055] In this embodiment, the client determines the pseudorange observation value between each candidate location point and the target satellite's location point; or the server determines the pseudorange observation value between each candidate location point and the target satellite's location point.
[0056] When there is an obstruction (such as a building) between the candidate location point and the target satellite's location point, the pseudorange observation needs to incorporate the distance increase caused by reflection. A preset 3D model can be used to determine whether an obstruction exists between the candidate location point and the target satellite's location point. The definition of the preset 3D model can be found in steps S301-S302 above, and will not be repeated here. The following will introduce different methods for calculating pseudorange observations based on the presence or absence of an obstruction:
[0057] 1) When there is an obstructing object, determine the first type of pseudorange observation between the candidate location point and the location point of the target satellite;
[0058]
[0059] 2) When there is an unobstructed object, determine the second type of pseudorange observation between the candidate location point and the location point of the target satellite; compared with the second type of pseudorange observation, the first type of pseudorange observation carries distance information related to reflection.
[0060]
[0061] Among them, (x w y w , z w (x) indicates the location of the target satellite. h y h , z h ) Indicates candidate location points. ε 第一类 and ε 第二类 Both indicate error, but compared to ε 第二类 , ε 第一类 Errors related to reflection are incorporated. Different calculation methods are used when determining the pseudorange observations for candidate locations depending on the presence or absence of occluding objects. This provides an accurate and effective data source for fitting subsequent associated location points, thus ensuring the accuracy of positioning updates. It should be noted that the distance increase due to reflection incorporated into the first type of pseudorange observations is determined based on the shortest reflection path.
[0062] There are generally at least two target satellites that act as transmitters of satellite positioning signals. The process of determining the pseudorange observations between each candidate location point and the location point of each target satellite may include the following steps: First, determining sub-pseudorange observations between each candidate location point and the location point of each target satellite; then, obtaining the pseudorange observations based on the sub-pseudorange observations associated with each target satellite; wherein the sub-pseudorange observations associated with each target satellite are either the first type of pseudorange observations or the second type of pseudorange observations.
[0063] Taking a scenario with n target satellites (n being a positive integer greater than or equal to 2) and m candidate location points as an example, the pseudorange observations between a candidate location point and the n target satellites can be obtained from the following system of equations:
[0064]
[0065] Where, p i This refers to the pseudorange observation between a candidate location point and a target satellite, where i ranges from 1 to n. There may be obstructing objects between a candidate location point and one target satellite, but there may be no obstructing objects between the same candidate location point and another target satellite. Therefore, p... i It can be either a Type I pseudorange observation or a Type II pseudorange observation.
[0066] There is usually more than one target satellite that serves as the transmitter of satellite positioning signals. Based on this, firstly, determine the Type I or Type II pseudorange observations between a single candidate location point and the location point of a single target satellite. Then, determine the pseudorange observations between a single candidate location point and the location points of multiple target satellites. This ensures that the determination of pseudorange observations effectively incorporates information such as the number of target satellites and whether there are any obstructing objects between the candidate and target satellite locations. This increases the amount of information carried by the determined pseudorange observations, providing effective data support for subsequent fitting to obtain associated location points.
[0067] The following sections will describe the determination of the target satellite's location and the determination of whether there are any obstructing objects:
[0068] A) "Determining the location of the target satellite"
[0069] If the client is an application that provides location services, it runs on a physical device such as a mobile phone. The physical device can acquire satellite positioning signals and satellite navigation ephemeris. It can also acquire raw data from the satellite positioning signals to obtain distance observations between the physical device and each target satellite. The physical device can determine the relevant transmission time based on the distance observations and the reception time of the satellite positioning signals; then, based on the transmission time and satellite navigation ephemeris, it can determine the position of the target satellite at the transmission time. Since there are at least two target satellites, the satellite identification number can be used to locate the target satellites in the process described above.
[0070] B) "Determination of whether an occluding object exists"
[0071] The presence of obstructing objects between a candidate location and the target satellite can be determined by comparing the satellite elevation angle and the reference elevation angle (Eld) between the candidate location and the target satellite. If the satellite elevation angle is greater than the reference elevation angle, there are no obstructing objects; if the satellite elevation angle is less than or equal to the reference elevation angle, there are obstructing objects. The reference elevation angle refers to the elevation angle between the candidate location and the intersection point of the building.
[0072] The following formula can be used to calculate the satellite elevation angle:
[0073]
[0074] Among them, t r t represents the reception time of the satellite positioning signal. s The r represents the transmission time of the satellite positioning signal. s (t s ) indicates the position of the target satellite at the time of launch, r r (t r ) represents the location of the physical device at the time of reception, ||r s (t s )-r r (t r The distance between the Earth and the satellite is represented by ||. It should be noted that this formula ignores the effect of the Earth's rotation.
[0075] Calculating the reference elevation angle requires first determining the intersection points of the buildings. See [link / reference]. Figure 5 If there are buildings between the candidate location point and the target satellite's location point, the intersection point of the buildings is determined by the reference plane and the relevant surface of the buildings. The reference plane is a plane formed by the candidate location point, the target satellite's location point, and a line perpendicular to the Earth pointing upwards. When the reference plane and the relevant surface of the buildings indicate an intersection line, the building intersection point is the highest point on the intersection line above the ground. After determining the building intersection point, the reference elevation angle can be determined using the following formulas five to seven:
[0076]
[0077] Among them, (e) e e n e u Indicates candidate location points. and The formulas for calculating azimuth and altitude are shown respectively. E r This is the transformation matrix that converts the Earth-Centered, Earth-Fixed (ECEF) coordinate system to the local horizontal coordinate system. The transformation matrix can be calculated based on the user's latitude and longitude, as shown in the following formula:
[0078]
[0079] The user's latitude and longitude can indicate the longitude λ corresponding to the candidate coordinate point. r and latitude φ r .
[0080] S204: Obtain the associated location points corresponding to each candidate location point using the pseudorange observations corresponding to each candidate location point, so as to obtain a set of associated location points; wherein, the associated location points are obtained by fitting based on the pseudorange observations;
[0081] In this embodiment, the client uses the pseudorange observations corresponding to each candidate location point to obtain the associated location points corresponding to each candidate location point, thus obtaining a set of associated location points; or the server uses the pseudorange observations corresponding to each candidate location point to obtain the associated location points corresponding to each candidate location point, thus obtaining a set of associated location points. The associated location points are obtained by fitting the pseudorange observations. It can be understood that if the current location point does not conform to the preset positioning rules, it indicates a positioning bias, and the deviation between the true location point and the current location point may be caused by scene errors. The process of obtaining the corresponding associated location points from the candidate location points can be regarded as a calculation process considering the factors causing scene errors. Therefore, the current location point and the associated location points are respectively the products of the true location point and the candidate location point under the influence of scene errors. This lays the foundation for subsequent matching of associated location points and the current location point, as well as updating the current location point using relevant candidate location points.
[0082] In one exemplary implementation, such as Figure 4 As shown, the step of obtaining the associated location points corresponding to each candidate location point by using the pseudorange observations corresponding to each candidate location point, so as to obtain the set of associated location points, includes:
[0083] S401: Using the dimensions of the candidate location point, obtain the error characterization corresponding to the candidate location point using the pseudorange observation value and reference distance corresponding to the candidate location point; wherein, the reference distance corresponding to the candidate location point describes the direct distance between the candidate location point and the location point of the target satellite;
[0084] S402: When the position correction number indicated by the difference result of the error characterization is greater than or equal to a preset threshold, a reference position point is obtained based on the position correction number and the candidate position point;
[0085] S403: Update the error representation using the pseudorange observation value corresponding to the reference position point and the reference distance;
[0086] S404: Perform differential processing on the updated error representation;
[0087] S405: When the result of the most recent differential processing is less than the preset threshold, stop repeating the above steps of obtaining the reference position point and performing differential processing on the updated error representation;
[0088] S406: Based on the result of the most recent differential processing and the most recently obtained reference position, obtain the associated position point corresponding to the candidate position point;
[0089] S407: Obtain the set of associated location points based on the associated location points corresponding to each candidate location point.
[0090] Combining the above example, at the candidate location point (x h y h , z h In the dimension of ) It can describe the pseudorange observations between a candidate location point and a target satellite. It can describe a candidate location point (x) hj y hj , z hj The sub-reference distance between (x) and a target satellite. It should be noted that j indicates the iteration number; when j is 0, (x) hj y hj , z hj (x) can be taken as (x) h y h , z h Correspondingly, sub-error characterization The position correction indicated by the difference result is (dx) hj dy hj dz hj When the position correction number is greater than or equal to a preset threshold, a reference position point (x) is obtained based on the position correction number and candidate position points. hj y hj , z hj For the reference point (x) hj y hj , z hj ), where j is a positive integer greater than or equal to 1. Therefore, at the candidate position point (x h y h , z h In the dimension of ), the error can be characterized by the following set of equations:
[0091]
[0092] The number of iterations indicates the number of differential processing steps, which in turn indicates the least squares method. The process for determining the associated location points corresponding to a candidate location point is described above. This allows for the determination of the associated location points for each candidate location point, resulting in a set of associated location points. An error characterization is obtained based on the pseudorange observations and the geometric distance (corresponding to the reference distance). Differential processing of the error characterization yields a position correction number. This position correction number is then used to progressively correct the reference location points originating from the candidate location points to obtain the associated location points. The positioning update scheme provided in this application ensures reliable and stable determination of associated location points through a highly applicable associated location point fitting step.
[0093] S205: Determine a target associated location point that matches the current location point from the associated location point set, and update the current location point using the candidate location points corresponding to the target associated location point.
[0094] In this embodiment, the client or server determines a target associated location point that matches the current location point from the set of associated location points, and updates the current location point using the candidate location points corresponding to the target associated location point.
[0095] Whether a related location point matches the current location point can be determined by the similarity between them. The similarity between them can be determined by the distance between them. Then, the related location point corresponding to the closest distance is selected as the target related location point. The steps are as follows: First, determine the distance between each related location point in the set of related location points and the current location point; then, determine the related location point corresponding to the closest distance as the target related location point that matches the current location point.
[0096] The distance here can refer to the straight-line distance. If the straight-line distance between two related location points and the current location point is the same, and this straight-line distance is the shortest distance, then the related location point that conforms to the preset positioning rules can be selected as the target related location point. Taking the current location point and related location points both indicating positions in a preset coordinate system (such as longitude, latitude, and elevation) as an example, the current location point (x d y d , z d ) and associated location point (x) gi y gi , z gi The straight-line distance between them can be determined by the following formula:
[0097]
[0098] Based on the description of scene error in step S204 above, since the current location point and the associated location point are the products of the real location point and the candidate location point under the influence of scene error, the target candidate location point for updating the current location point can be determined from multiple candidate location points by matching the current location point and the associated location point. This can improve the efficiency and accuracy of positioning update with a small amount of computation.
[0099] In practical applications, the positioning update scheme provided in this application is suitable for urban canyon areas. The candidate location points determined by matching associated location points are the locations with the highest probability of hitting the true location points. Building reflections are taken into account when determining the pseudorange observations corresponding to the candidate location points, which can reflect the multipath effect corresponding to that point. It is unnecessary to eliminate gross errors in satellite observations through methods such as signal-to-noise ratio (SNR), because even if there is significant multipath in satellite observations under building reflection conditions, the SNR observations can still be very high.
[0100] As can be seen from the technical solutions provided by the embodiments of this application above, the embodiments of this application obtain the current location point of the target object; then, when the current location point does not conform to the preset positioning rules, multiple candidate location points are determined in the associated area to which the current location point belongs; furthermore, pseudorange observation values between each candidate location point and the location point of the target satellite are determined respectively; next, associated location points corresponding to each candidate location point are obtained using the pseudorange observation values corresponding to each candidate location point, so as to obtain a set of associated location points; then, target associated location points that match the current location point are determined from the set of associated location points, and the current location point is updated using the candidate location points corresponding to the target associated location points. When the current location point does not conform to the preset positioning rules, this application uses points near the point as candidate location points and fits them based on pseudorange observation values to obtain corresponding associated location points, then matches the associated location points with the current location point, and updates the current location point using the candidate location point corresponding to the most matched associated location point. In the case of a determined positioning bias, using nearby points as samples to obtain associated location points that can be matched with the current location point in the same dimension can improve the efficiency of positioning updates. Compared to related technologies that rely on large amounts of prior data and complex calculation processes, this application does not depend on historical data, thus reducing computational complexity and improving computational convenience and flexibility. Timely positioning updates can also improve positioning accuracy.
[0101] This application also provides a location update device, such as... Figure 6 As shown, the positioning update device 60 includes:
[0102] Current location acquisition module 601: used to acquire the current location of the target object; wherein, the current location is determined based on satellite positioning signals;
[0103] Candidate location point determination module 602: used to determine multiple candidate location points within the associated area to which the current location point belongs when the current location point does not meet the preset positioning rules;
[0104] Pseudorange observation determination module 603: used to determine the pseudorange observation between each of the candidate location points and the location point of the target satellite; wherein, the target satellite is the sender of the satellite positioning signal;
[0105] The set acquisition module 604 is used to obtain the associated location points corresponding to each candidate location point using the pseudorange observations corresponding to each candidate location point, so as to obtain a set of associated location points; wherein, the associated location points are obtained by fitting based on the pseudorange observations;
[0106] Update module 605: used to determine a target associated location point that matches the current location point from the associated location point set, and to update the current location point using the candidate location points corresponding to the target associated location point.
[0107] It should be noted that the apparatus and method embodiments described in the device embodiments are based on the same inventive concept.
[0108] This application provides an electronic device including a processor and a memory. The memory stores at least one instruction or at least one program segment, which is loaded and executed by the processor to implement the positioning update method provided in the above method embodiments.
[0109] Furthermore, Figure 7 A schematic diagram of the hardware structure of an electronic device for implementing the location update method provided in the embodiments of this application is shown. The electronic device may participate in or include the location update apparatus provided in the embodiments of this application. Figure 7 As shown, the electronic device 100 may include one or more processors 1002 (shown as 1002a, 1002b, ..., 1002n in the figure) (processor 1002 may include, but is not limited to, a microprocessor MCU or a programmable logic device FPGA, etc.), a memory 1004 for storing data, and a transmission device 1006 for communication functions. In addition, it may also include: a display, an input / output interface (I / O interface), a universal serial bus (USB) port (which may be included as one of the ports of the I / O interface), a network interface, a power supply, and / or a camera. Those skilled in the art will understand that... Figure 7 The structure shown is for illustrative purposes only and does not limit the structure of the electronic device described above. For example, the electronic device 100 may also include... Figure 7The more or fewer components shown, or having the same Figure 7 The different configurations shown.
[0110] It should be noted that the aforementioned one or more processors 1002 and / or other data processing circuits are generally referred to herein as "data processing circuits". These data processing circuits may be embodied, in whole or in part, in software, hardware, firmware, or any other combination thereof. Furthermore, the data processing circuits may be a single, independent processing module, or may be wholly or partially integrated into any other element within the electronic device 100 (or mobile device). As involved in the embodiments of this application, the data processing circuit serves as a processor control mechanism (e.g., selection of a variable resistor termination path connected to an interface).
[0111] The memory 1004 can be used to store software programs and modules of application software, such as the program instructions / data storage device corresponding to the location update method described in the embodiments of this application. The processor 1002 executes various functional applications and data processing by running the software programs and modules stored in the memory 1004, thereby implementing the aforementioned location update method. The memory 1004 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 1004 may further include memory remotely located relative to the processor 1002, and these remote memories can be connected to the electronic device 100 via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.
[0112] The transmission device 1006 is used to receive or send data via a network. Specific examples of the network described above may include a wireless network provided by the communication provider of the electronic device 100. In one example, the transmission device 1006 includes a network interface controller (NIC), which can connect to other network devices via a base station to communicate with the Internet. In one embodiment, the transmission device 1006 may be a radio frequency (RF) module for wireless communication with the Internet.
[0113] The display may be, for example, a touchscreen liquid crystal display (LCD) that allows a user to interact with the user interface of the electronic device 100 (or mobile device).
[0114] Embodiments of this application also provide a computer-readable storage medium, which can be disposed in an electronic device to store at least one instruction or at least one program related to implementing a location update method in the method embodiments. The at least one instruction or the at least one program is loaded and executed by the processor to implement the location update method provided in the above method embodiments.
[0115] Optionally, in this embodiment, the storage medium may be located at at least one of the multiple network servers in a computer network. Optionally, in this embodiment, the storage medium may include, but is not limited to, various media capable of storing program code, such as USB flash drives, read-only memory (ROM), random access memory (RAM), portable hard drives, magnetic disks, or optical disks.
[0116] It should be noted that the order of the embodiments described above is merely for descriptive purposes and does not represent the superiority or inferiority of the embodiments. Furthermore, the above description focuses on specific embodiments of this application. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps described in the claims can be performed in a different order than that shown in the embodiments and still achieve the desired results. Additionally, the processes depicted in the drawings do not necessarily require a specific or sequential order to achieve the desired results. In some implementations, multitasking and parallel processing are also possible or may be advantageous.
[0117] The various embodiments in this application are described in a progressive manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, the device and electronic device embodiments are basically similar to the method embodiments, so the descriptions are relatively simple; relevant parts can be referred to the descriptions of the method embodiments.
[0118] Those skilled in the art will understand that all or part of the steps of the above embodiments can be implemented by hardware or by a program instructing related hardware. The program can be stored in a computer-readable storage medium, such as a read-only memory, a disk, or an optical disk.
[0119] The above description is only a preferred embodiment of this application and is not intended to limit this application. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.
Claims
1. A positioning update method, characterized by The method comprises: acquiring a current position point of a target object, the current position point being determined based on a satellite positioning signal sent by a target satellite; when the current position point does not conform to a preset positioning rule, determining a plurality of candidate position points in an associated region to which the current position point belongs; for each of the candidate position points, determining a pseudo-range observation value between the candidate position point and a position point of the target satellite, determining a satellite elevation angle between the candidate position point and the position point of the target satellite, when the satellite elevation angle is less than or equal to a reference elevation angle, determining a first-type pseudo-range observation value between the candidate position point and the position point of the target satellite, the reference elevation angle being an elevation angle between the candidate position point and a building intersection, the building intersection being determined by a reference plane and a relevant surface of a building, the reference plane being a plane formed based on the candidate position point, the position point of the target satellite and a line perpendicular to the earth, when the satellite elevation angle is greater than the reference elevation angle, determining a second-type pseudo-range observation value between the candidate position point and the position point of the target satellite, compared with the second-type pseudo-range observation value, the first-type pseudo-range observation value carrying distance information related to reflection; for each of the candidate position points, fitting an associated position point based on the pseudo-range observation value corresponding to the candidate position point, to obtain an associated position point set indicating the plurality of candidate position points; determining a target associated position point matching the current position point from the associated position point set, and updating the current position point by using the candidate position point corresponding to the target associated position point.
2. The method of claim 1, wherein, After the current position point of the target object is acquired, the method further comprises: determining a scene attribute corresponding to the current position point; judging whether the scene attribute matches a preset positioning scene stipulated by the preset positioning rule; wherein the preset positioning scene describes an outdoor positioning environment with an occlusion degree lower than a preset threshold; when the scene attribute does not match the preset positioning scene, determining that the current position point does not conform to the preset positioning rule.
3. The method of claim 1, wherein, The determination of the plurality of candidate position points in the associated region to which the current position point belongs comprises: determining the associated region to which the current position point belongs in a preset three-dimensional model according to a preset division parameter; wherein the preset division parameter is used to define the boundary of the associated region in the preset three-dimensional model; determining the plurality of candidate position points in the associated region based on a preset selection rule; wherein the selection information involved in the preset selection rule comprises at least one of the following: adjacent point spacing, road surface point, number of position points.
4. The method of claim 1, wherein, The target satellite has at least two; the determination of the pseudo-range observation value between the candidate position point and the position point of the target satellite comprises: determining a sub-pseudo-range observation value between the candidate position point and the position point of each of the target satellites respectively; obtaining the pseudo-range observation value based on the sub-pseudo-range observation value related to each of the target satellites; wherein the sub-pseudo-range observation value related to each of the target satellites is the first-type pseudo-range observation value or the second-type pseudo-range observation value.
5. The method of claim 1, wherein, The method comprises the following steps: For each candidate position point, an associated position point is obtained by fitting the pseudo-range observation value corresponding to the candidate position point, to obtain an associated position point set indicating the plurality of candidate position points, comprising: For each candidate position point, an error representation corresponding to the candidate position point is obtained by using the pseudo-range observation value corresponding to the candidate position point and a reference distance; wherein the reference distance describes the direct distance between the candidate position point and the position point of the target satellite; When the position correction number indicated by the differential result of the error representation is greater than or equal to a preset threshold, a reference position point is obtained based on the position correction number and the candidate position point; The error representation is updated by using the pseudo-range observation value corresponding to the reference position point and the reference distance; The updated error representation is subjected to differential processing; When the result of the last differential processing is less than the preset threshold, the steps of obtaining the reference position point to the updated error representation are stopped; The associated position point corresponding to the candidate position point is obtained based on the result of the last differential processing and the last obtained reference position point; 6. The method of claim 1, wherein, The associated position point set is obtained based on the associated position point corresponding to each candidate position point. The target associated position point matched with the current position point is determined from the associated position point set, comprising: The distance between each associated position point in the associated position point set and the current position point is determined respectively; 7. A positioning update apparatus characterized by comprising: The associated position point corresponding to the nearest distance is determined as the target associated position point matched with the current position point. The device comprises: A current position point acquisition module: configured to acquire a current position point of a target object, wherein the current position point is determined based on a satellite positioning signal sent by a target satellite; A candidate position point determination module: configured to determine a plurality of candidate position points in an associated region to which the current position point belongs when the current position point does not meet a preset positioning rule; A pseudo-range observation value determination module: configured to determine, for each candidate position point, a pseudo-range observation value between the candidate position point and a position point of the target satellite; determine a satellite elevation angle between the candidate position point and the position point of the target satellite; when the satellite elevation angle is less than or equal to a reference elevation angle, determine a first type of pseudo-range observation value between the candidate position point and the position point of the target satellite, wherein the reference elevation angle indicates an elevation angle between the candidate position point and a building intersection, and the building intersection is determined by a reference plane and a related surface of a building, wherein the reference plane is formed based on the candidate position point, the position point of the target satellite, and a line perpendicular to the earth; when the satellite elevation angle is greater than the reference elevation angle, determine a second type of pseudo-range observation value between the candidate position point and the position point of the target satellite; compared with the second type of pseudo-range observation value, the first type of pseudo-range observation value carries distance information related to reflection; The set obtaining module is configured to: for each of the candidate position points, obtain an associated position point by fitting the pseudo-range observation value corresponding to the candidate position point, so as to obtain an associated position point set indicating the plurality of candidate position points; The updating module is configured to: determine a target associated position point matched with the current position point from the associated position point set, and update the current position point by using the candidate position point corresponding to the target associated position point.
8. The apparatus of claim 7, wherein, The device is further configured to: determine a scene attribute corresponding to the current position point; determine whether the scene attribute matches a preset positioning scene stipulated by the preset positioning rule; wherein the preset positioning scene describes an outdoor positioning environment with an occlusion degree lower than a preset threshold; when the scene attribute does not match the preset positioning scene, determine that the current position point does not conform to the preset positioning rule.
9. The apparatus of claim 7, wherein, The candidate position point determining module is configured to: determine an associated region to which the current position point belongs in a preset three-dimensional model according to a preset division parameter; wherein the preset division parameter is used to define a boundary of the associated region in the preset three-dimensional model; determine a plurality of candidate position points in the associated region based on a preset selection rule; wherein selection information involved in the preset selection rule includes at least one of the following: adjacent point spacing, road surface point, and position point quantity.
10. The apparatus of claim 7, wherein, The target satellite has at least two; the pseudo-range observation value determining module is configured to: determine a sub-pseudo-range observation value between the candidate position point and a position point of each of the target satellites respectively; obtain the pseudo-range observation value based on the sub-pseudo-range observation value related to each of the target satellites; wherein the sub-pseudo-range observation value related to each of the target satellites is the first type of pseudo-range observation value or the second type of pseudo-range observation value.
11. The apparatus of claim 7, wherein, The set obtaining module is configured to: for each of the candidate position points, obtain an error representation corresponding to the candidate position point by using the pseudo-range observation value corresponding to the candidate position point and a reference distance; wherein the reference distance describes a direct distance between the candidate position point and a position point of the target satellite; when a position correction number indicated by a difference result of the error representation is greater than or equal to a preset threshold, obtain a reference position point based on the position correction number and the candidate position point; update the error representation by using a pseudo-range observation value corresponding to the reference position point and a reference distance; perform differential processing on the updated error representation; when a result of the last differential processing is less than the preset threshold, stop repeating the steps of obtaining the reference position point to performing differential processing on the updated error representation; obtain an associated position point corresponding to the candidate position point based on a result of the last differential processing and the last obtained reference position point; obtain the associated position point set based on the associated position point corresponding to each of the candidate position points.
12. The apparatus of claim 7, wherein, The updating module is configured to: determine a distance between each of the associated position points in the associated position point set and the current position point respectively; determine the associated position point corresponding to the shortest distance as the target associated position point matched with the current position point.
13. An electronic device, comprising: The electronic device comprises a processor and a memory, the memory storing at least one instruction or at least one program, the at least one instruction or the at least one program being loaded and executed by the processor to implement the positioning updating method according to any one of claims 1-6.
14. A computer-readable storage medium, characterized in that, The storage medium stores at least one instruction or at least one program, the at least one instruction or the at least one program being loaded and executed by the processor to implement the positioning updating method according to any one of claims 1-6.
15. A computer program product, characterised in that, The computer program product comprises at least one instruction or at least one program, the at least one instruction or the at least one program being loaded and executed by the processor to implement the positioning updating method according to any one of claims 1-6.
Citation Information
Patent Citations
Position detection device, position detection system, and position detection method
US20160146945A1