Fault Modeling for Geographic Navigation Satellite System
The system improves GNSS accuracy in vehicles by generating a GNSS error model from local maps and sensor data, addressing inaccuracies from multipath and signal blocking, resulting in enhanced positioning precision.
Patent Information
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- GM GLOBAL TECHNOLOGY OPERATIONS LLC
- Filing Date
- 2024-11-01
- Publication Date
- 2026-05-21
AI Technical Summary
Existing vehicle navigation systems face challenges in accurately determining GNSS position due to varying sensor accuracies and discrepancies caused by factors like multipath and signal blocking, which current systems fail to adequately address.
A system that generates a GNSS error model by comparing vehicle sensor data with local maps to determine relative positions, dividing the map into spatial areas, and applying variable weights based on expected GNSS errors, using interpolation methods to refine the error model.
Enhances the accuracy of GNSS positioning by compensating for location-dependent errors, providing a more precise vehicle location determination in environments prone to multipath and signal blocking.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
INTRODUCTION
[0001] The present invention relates to vehicles and in particular to the determination of weight values in order to assign them to the positioning of a geographic navigation satellite system (GNSS) within a sensor fusion system of a vehicle.
[0002] US 2021 / 0264224A1 describes a vehicle controller with a positioning module for a global navigation system satellite and a sensor fusion module. Multiple vehicle sensors are connected to the controller, and the sensor fusion module is configured to fuse the sensor data from these multiple vehicle sensors.
[0003] Vehicles with built-in autonomous and / or semi-autonomous navigation systems incorporate multiple sources of sensor information. This sensor information provides fixed positioning information of the vehicle, relative positioning information of the vehicle and its surroundings, and information regarding the vehicle's operations. This sensor information is then used by various vehicle systems to support these operations.
[0004] In some cases, one or more sensor types on and in conjunction with the vehicle may provide conflicting values for the same data point. For example, a GNSS system might indicate that the vehicle is at one location, while the map data and sensor data might indicate a different location. To account for these discrepancies, as well as varying margins of error between different sensors, a sensor fusion system combines the sensor outputs, applying a weight to each similar data point.
[0005] Accordingly, it is desirable to provide a system for determining the expected accuracy of a GNSS position data point and to assign a weight to the GNSS position according to the expected accuracy. SUMMARY
[0006] According to the invention, a vehicle is presented which is characterized by the features of claim 1.
[0007] The vehicle contains a controller with a global navigation system satellite positioning module (GNSS positioning module) and a sensor fusion module. Several vehicle sensors are connected to the controller. The sensor fusion module contains software configured to merge sensor data from the multiple vehicle sensors and a GNSS position by applying an error weight to each data element from the multiple vehicle sensors and the GNSS position. The error weight of the GNSS position is variable depending on a GNSS error model map.
[0008] In addition to one or more of the features described here, the GNSS error model map is divided into several spatial areas, with each spatial area having a corresponding expected GNSS error.
[0009] In addition to one or more of the features described here, the corresponding expected GNSS error takes into account at least one of the GNSS signal blocking and GNSS multipath errors.
[0010] In addition to one or more of the features described here, the corresponding expected GNSS error is based on a variation between a relative position of the vehicle, determined by the multiple vehicle sensors, and a GNSS position of the vehicle, determined by the GNSS positioning module.
[0011] In addition to one or more of the features described here, the relative position of the vehicle is determined by comparing an output from the multiple vehicle sensors with a point cloud map of an area in which a vehicle is operating.
[0012] In addition to one or more of the features described here, the relative position of the vehicle is determined by comparing an output from the multiple vehicle sensors with a semantic map of an area in which a vehicle is operating.
[0013] In addition to one or more of the features described here, the expected GNSS error of each spatial area is based on a discrepancy variance of the observation points within the spatial area.
[0014] In addition to one or more of the features described here, the expected GNSS error of each spatial area is interpolated over multiple observation points within the spatial area.
[0015] In addition to one or more of the features described here, the interpolation is at least a spline-based interpolation, a kriging-based interpolation, a nearest neighbor-based interpolation, or a natural neighbor-based interpolation.
[0016] In addition to one or more of the features described here, the GNSS error model map is derived from multiple vehicles.
[0017] Furthermore, a method for merging sensor data in a vehicle is described, which involves applying an error weight to each data element from multiple vehicle sensors and a GNSS position. The error weight of the GNSS position is variable depending on a GNSS error model map and the vehicle's location.
[0018] According to a further exemplary embodiment, the GNSS error model map is divided into several spatial areas, each spatial area having a corresponding expected GNSS error.
[0019] According to a further exemplary embodiment, the corresponding expected GNSS error takes into account at least one of the GNSS signal blocking and GNSS multipath errors.
[0020] According to a further exemplary embodiment, the corresponding expected GNSS error is based on a variation between a relative position of the vehicle, which is determined via the multiple vehicle sensors, and a GNSS position of the vehicle, which is determined by the GNSS positioning module.
[0021] According to a further exemplary embodiment, the relative position of the vehicle is determined by comparing an output from the multiple vehicle sensors with a point cloud map of an area in which a vehicle is operated.
[0022] According to a further exemplary embodiment, the relative position of the vehicle is determined by comparing an output from the multiple vehicle sensors with a semantic map of an area in which a vehicle is operated.
[0023] According to yet another exemplary embodiment, the expected GNSS error of each spatial area is based on a discrepancy variance of the observation points within the spatial area.
[0024] According to yet another exemplary embodiment, the expected GNSS error of each spatial area is interpolated over several observation points within the spatial area.
[0025] According to a further exemplary embodiment, the interpolation is at least one of a spline-based interpolation, a kriging-based interpolation, a nearest neighbor-based interpolation, or a natural neighbor-based interpolation.
[0026] According to yet another exemplary embodiment, the GNSS fault model map is derived from several vehicles.
[0027] The above features and advantages and other features and advantages of the invention are readily apparent from the following detailed description when considered in conjunction with the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0028] Further features, advantages and details appear in the following detailed description only as examples, the detailed description referring to the drawings; they show: Fig. 1 a vehicle containing a controller and multiple sensor systems; Fig. 2 a sensor fusion architecture for the vehicle according to Fig. 1; Fig. 3. An illustration of potential errors of a global navigation satellite system (GNSS errors) resulting from an urban canyon environment; Fig. 4 a general process for generating a GNSS error map; Fig. 5 a first embodiment of the general process according to Fig. 4; Fig. 6 one within the process after Fig. 5 generated point cloud maps; Fig. 7. Mapping a relative local positioning using a point cloud according to Fig. 6; Fig. 8 spatial areas within the point cloud data according to Fig. 7; Fig. 9 a second embodiment of the general process according to Fig. 4; Fig. 10 in the process after Fig. 9 generated semantic map data; and Fig. 11 a mapping of the relative local positioning of the semantic map data according to Fig. 10. DETAILED DESCRIPTION
[0029] In one exemplary embodiment, a fleet of vehicles provides distributed sensor data and global navigation satellite (GNSS) position data to a central system. The central system effectively uses local maps to determine the positions of each vehicle in the fleet relative to the local maps (referred to as the relative positions). The relative positions are mapped to the GNSS positions determined simultaneously by the GNSS. Based on the differences between the relative positions and the mapped GNSS positions, the central system creates an error model that identifies the probability of a GNSS position error. The central system then divides the map into spatial regions based on the expected GNSS error determined by the error model.The combined set of spatial areas is called a fault map and is distributed by the central system to one or more vehicles.
[0030] According to alternative embodiments, the GNSS fault map can be generated entirely at the vehicle's location by a controller using relative positions and GNSS positions generated by the vehicle over multiple passes in the same map area.
[0031] According to further alternative embodiments, the GNSS fault map can be generated by a controller at the location of the vehicle using a data set of relative positions and associated GNSS positions received from the central system.
[0032] To explain some embodiments in detail, illustrations are provided. Fig. 1. A vehicle 10, comprising a body 12 and a passenger compartment 14. Inside the vehicle 10 is a controller 20. The controller 20 contains a communication system 22, which is connected to a central computing system 30 and a set of GNSS satellites 40. According to some examples, the communication system consists of several receivers and transmitters configured to communicate with various external systems. Additionally, the controller 20 is connected to several vehicle sensors 50, configured to provide information about the vehicle's relative positioning. A sensor fusion module 24 and a GNSS fault mapping module 26 are included within the controller 20.
[0033] The vehicle sensors 50 can include inertial motion units, wheel odometers, cameras, lighting, and any number of additional sensors and sensor types that can contribute to determining a relative position of the vehicle 10. The vehicle 10 can be part of a fleet of similar vehicles, each vehicle 10 in the fleet having similar detection, positioning, and processing capabilities.
[0034] Furthermore regarding Fig. 1 illustrates Fig. Figure 2 shows an exemplary architecture of the sensor fusion module 24. The sensor fusion module 24 receives data from multiple sources, including GNSS positioning from the GNSS satellites 40 and sensor outputs from each of the vehicle sensors 50, and combines the multiple data sources to provide a single position of the vehicle. This position is then provided to one or more downstream modules 60, such as modules for autonomous or semi-autonomous vehicle operation.
[0035] In order to correctly synthesize potentially inconsistent data (e.g., different vehicle positions) from the multiple data sources, the sensor fusion module 24 applies a weight to each data source for a given part of the information (e.g., each data source providing vehicle location information), with a heavier weight corresponding to a higher degree of accuracy expected from that particular source.
[0036] Sources such as the vehicle sensors 50 generally exhibit consistent accuracy, with the specific weight of the data from this source fixed in the sensor fusion module 24. However, the accuracy of GNSS position data varies considerably based on a number of factors, including orbital errors, satellite clock errors, ionospheric delay, tropospheric delay, multipath effect, signal blocking, and receiver noise. Existing systems for estimating GNSS accuracy typically focus on accounting for orbital errors, satellite clock errors, ionospheric delay, and tropospheric delay, as the amount and magnitude of multipath and signal blocking errors are highly location-dependent.
[0037] Furthermore regarding the Fig. 1 and Fig. 2 illustrates Fig. 3. The vehicle 10 is traveling through a canyon environment 302. A canyon environment is a location where a road 306 is flanked on both sides by buildings 308, creating a canyon-like environment. The GNSS operates by measuring the travel time of a signal from a satellite 40 with a known orbital position to the vehicle 10. If the signal is direct and unobstructed, such as the middle signal 310, an accurate position of the vehicle 10 relative to the satellite 40 producing the signal 310 can be determined. Using at least three such signals, an absolute geospatial position of the vehicle 10 can be calculated to a degree of accuracy comparable to that of the GNSS positioning system.
[0038] If a building 308 blocks a signal (e.g., the signals 320), a signal blocking error occurs, with the reduced number of available GNSS signals causing a decrease in the accuracy of the determined position.
[0039] If a signal 330 is reflected by a building 308 or another object and then received by the vehicle 10, the travel time of the signal 330 is artificially increased, with a similar reduction in the accuracy of the determined position.
[0040] To compensate for the reduced accuracy resulting from blocked signals 320 and multipath signals 330, the sensor data from the vehicle sensors 50 are provided to the central computing system 30 to generate a local map of the location. The local map contains both landmarks (e.g., lane lines, traffic signs, images of buildings, trees, and other fixed structures) and vehicle trajectories. For each given pair of data points (e.g., a pair of vehicles 10 traversing the area, or multiple trips by a single vehicle 10 through the same area), the relative positions of the vehicles 10 can be calculated from the local map and using GNSS positioning. Assuming the accuracy of the local map, a geographic GNSS error model is generated based on the discrepancy between the relative positions on the local map and the relative positions from the GNSS measurements.
[0041] Furthermore regarding the Fig. 1-3 illustrate Fig. 4. A process 400 is used to generate the local fault map. Initially, a fleet of vehicles generates the map, with the vehicle 10 following. Fig. 1 contains paired location points, using both the vehicle sensors 50 and a local map as well as GNSS positioning. In a first step, the paired location points are provided to the central computing system 30.
[0042] Once the data has been provided to the central computing system 30, in step 420 a new local map is generated based on the data from the vehicle sensors 50 for the specific location.
[0043] According to some examples, a high-resolution map (HD map) of the area may already exist and be available, in which case the vehicle sensor data 50 are applied to the existing HD map to further improve the local map, rather than creating a new map.
[0044] The local map contains reference images and sensor data that enable a vehicle 10 to be accurately positioned in one step 430 to calculate relative positions using the local map by comparing the images and sensor data from the vehicle sensor 50 with the locations of the reference images and sensor data.
[0045] Simultaneously with determining the relative position using the local map, process 400 calculates the GNSS position based on the GNSS measurements in step 440 to calculate GNSS positions.
[0046] After the two sets of positions have been generated in steps 430 and 440, the central computing system 30 divides the local map in step 450 to divide the map into spatial areas. The spatial areas can be evenly distributed geographic blocks, traffic blocks, areas of a city, or any other existing division of the local map.
[0047] A GNSS error model is calculated in step 460 to generate a GNSS error model for each spatial area of the local map, with the GNSS error model being distributed to each vehicle 10 that is configured to use the local map.
[0048] Furthermore regarding the Fig. 1-4 illustrate the Fig. 5-8 a process 500 to execute process 400 after Fig. 4 using high-precision point cloud maps generated by the vehicle sensors 50, wherein Fig. 5 illustrates a flowchart of the process, Fig. Figure 6 illustrates a point cloud map 602 generated by steps 510 and 520 of the process. Fig. 7 illustrates the calculations of the relative positional offset of steps 530, 540 and Fig. Figure 8 illustrates the division of the point cloud and the local map 602 into the spatial areas 810, 820.
[0049] Initially, in step 510, raw images and a simultaneous localization and mapping (SLAM) algorithm are used to generate a point cloud map 602, which is aligned to a real-world coordinate system, such as latitude and longitude. The SLAM algorithms can include, for example, OrbSLAM, VinsFusion, Structure from Motion (SFM), or a similar SLAM algorithm. The map 602 contains at least two vehicles 604 and 606 and defines the vehicle trajectories 610 (corresponding to vehicle 604) and 612 (corresponding to vehicle 606). The map 602 also contains several reference points 614 and the vehicle positions 616 and 618 along the corresponding trajectories 610 and 612.
[0050] In an alignment step 520, process 500 aligns the point cloud map 602 to the world coordinate system and, in a position calculation step 530 using the point cloud map 602 and in a position calculation step 540 using the GNSS measurements, calculates the relative positions of the vehicles 604 and 606. The relative positions are defined by an offset 702 between a vehicle position and a nearby vehicle position, such that for each given point P i,j , where the given point has the relative position to a neighboring point, which is P i,j - P l,m can be, and for every given point P i,j the relative position of the corresponding GNSS position G i,j to the GNSS position of a neighboring point G i,j - G l,m is.
[0051] After determining the relative positions, the point cloud map 602 is used in step 550 to divide local maps into spatial areas 810, 820, Fig. 8, divided.
[0052] After dividing the map into spatial areas, the discrepancy in the relative positions from steps 530 and 540 is used in step 560 to generate a GNSS error model for each spatial area and calculate the GNSS error within that area. For example, the GNSS error model is calculated as follows: discrepency(i,j)−(l,m)=(Gi,j−Gl,m)−(Pi,j−Pl,m) discrepency_variance=Variancei,lj,m(discrepency(i,j)−(l,m)) GNSS_error_variance=discrepency_variance2
[0053] Where the discrepancy is the difference between each relative position and the corresponding GNSS position, the discrepancy variance is the variation of discrepancies throughout the spatial ranges 810, 820, and the GNSS error variance is the error value assigned to the ranges 810, 820 in the GNSS error model.
[0054] Again regarding the Fig. 1-4 illustrate the Fig. 9-11 a process 900 to execute process 400 after Fig. 4 using semantically based local maps. Initially, process 900 receives the local crowd-sourced data from the vehicles 10, where in step 910 it generates a semantic map (in Fig. (10 illustrated) a new semantic map 1002 is generated. The semantic map can be generated using any existing semantic mapping algorithm and tracks the semantic features of the road on which vehicle 10 is traveling, such as the lane lines 1004, 1008, the curbs 1006, 1010, and the like. In the example according to Fig. 10 a first vehicle 1020 follows a first set of semantic features (the lane lines 1004 and the curbs 1006) and a second vehicle 1022 follows a second set of semantic features (the lane lines 1008 and the curbs 1010).
[0055] In cases where an existing HD map, created using semantic features, is available, the existing map can be effectively used in combination with the new data from the vehicle sensors 50 to generate an updated local map.
[0056] Based on the semantic map 1002, the relative positions of the vehicles 1020, 1022 are determined in step 912 to calculate the relative positions using semantic maps, and in step 914 a GNSS position is determined using GNSS signals to calculate the position using GNSS measurements.
[0057] After identifying both the relative position and the GNSS position, the semantic map 1002 is used in step 916 to divide local maps into spatial areas 1102, 1104, 1106, Fig. 11, divided, wherein in step 918 a GNSS error model is generated for each spatial area.
[0058] The calculation of the GNSS error model for an example point is in Fig. Figure 11, the spatial area 1104, illustrates this. For the given point P i,jA transverse track offset to a neighboring point P will be introduced. i,j by P i,j - P i,j calculated. Then, for point P i,j the corresponding GNSS offset to a neighboring point P i,j by P i,j - P i,j calculated. The GNSS error model is based on these reference points: discrepency(i,j)−(l−m)=(Gi,j−Gl,m)−(Pi,j−Pl,m) discrepency_variance=Variancei,lj,m(discrepency(i,j)−(l,m)) GNSS_cross_track_error_variance=discrepency_variance2
[0059] Where the discrepancy is the difference between each relative position and the corresponding GNSS position, the discrepancy variance is the variation of discrepancies throughout the spatial range 810, 820, and the GNSS error variance is the error value assigned to the range 810, 820 in the GNSS error model.
[0060] For both Process 500 and Process 900, given a minimum threshold for the granularity of the error measurements, one or more algorithms can be used to interpolate the error measurements between the observation points, thus providing a more complete GNSS error map. The interpolation can take the form of one or more spline-based algorithms, kriging-based algorithms (alternatively referred to as Gaussian process regression), nearest-neighbor-based algorithms, and / or natural-neighbor-based algorithms. Interpolating the observation points improves the output of the GNSS error map by incorporating the weight given to error estimates from different observation points.
[0061] While the GNSS error map in the Fig. 4 and Fig. As described and illustrated in 9 as separate examples, it is recognized that they use a combination of both the point cloud-based process 500 after Fig. 4 as well as the process based on a semantic map 900 after Fig. 9 can be generated.
[0062] While the systems and features have been described here with regard to driving through a canyon environment, it is recognized that they are applicable to an environment in which a vehicle 10 drives through an environment where a multipath and / or signal blocking positioning error is likely to occur.
Claims
[1] Vehicle (10, 604, 606, 1020, 1022) comprising: a controller (20), with a positioning module of a global navigation system satellite (GNSS positioning module) and a sensor fusion module (24); several vehicle sensors (50) connected to the controller (20); wherein the sensor fusion module (24) contains software configured to fuse the sensor data from the multiple vehicle sensors (50) and a GNSS position by applying an error weight to each data element from the multiple vehicle sensors (50) and the GNSS position, and wherein the error weight of the GNSS position is variable depending on a GNSS error model map. [2] Vehicle (10, 604, 606, 1020, 1022) according to claim 1, wherein the GNSS error model map is divided into several spatial areas (810, 820, 1102, 1104, 1106) and wherein each spatial area (810, 820, 1102, 1104, 1106) has a corresponding expected GNSS error. [3] Vehicle (10, 604, 606, 1020, 1022) according to claim 2, wherein the corresponding expected GNSS error takes into account at least one of GNSS signal blocking (320) and GNSS multipath errors (330). [4] Vehicle (10, 604, 606, 1020, 1022) according to claim 2, wherein the corresponding expected GNSS error is based on a variation between a relative position of the vehicle (10, 604, 606, 1020, 1022) determined via the multiple vehicle sensors (50) and a GNSS position of the vehicle (10, 604, 606, 1020, 1022) determined by the GNSS positioning module. [5] Vehicle (10, 604, 606) according to claim 4, wherein the relative position of the vehicle (10, 604, 606) is determined by comparing an output of the multiple vehicle sensors (50) with a point cloud map (602) of an area (810, 820) in which a vehicle (10, 604, 606) is operated. [6] Vehicle (10, 1020, 1022) according to claim 4, wherein the relative position of the vehicle (10, 1020, 1022) is determined by comparing an output of the multiple vehicle sensors (50) with a semantic map (1002) of an area (1102, 1104, 1106) in which a vehicle (10, 1020, 1022) is operated. [7] Vehicle (10, 604, 606, 1020, 1022) according to claim 2, wherein the expected GNSS error of each spatial area (810, 820, 1102, 1104, 1106) is based on a discrepancy variance of the observation points within the spatial area (810, 820, 1102, 1104, 1106). [8] Vehicle (10, 604, 606, 1020, 1022) according to claim 7, wherein the expected GNSS error of each spatial area (810, 820, 1102, 1104, 1106) is interpolated over multiple observation points within the spatial area (810, 820, 1102, 1104, 1106). [9] Vehicle (10, 604, 606, 1020, 1022) according to claim 8, wherein the interpolation is at least one of a spline-based interpolation, a kriging-based interpolation, a nearest neighbor-based interpolation or a natural neighbor-based interpolation. [10] Vehicle (10, 604, 606, 1020, 1022) according to claim 1, wherein the GNSS fault model map is derived from several vehicles (10, 604, 606, 1020, 1022).
Citation Information
Patent Citations
Information processing device and information processing method, imaging device, computer program, information processing system, and moving body device
US20210264224A1