Voting-based vehicle map data fusion method
The central computer receives and aligns different map data sets, determines public lane lines and generates a fused map data set, which solves the problem of map data differences in autonomous driving vehicles and improves the accuracy of positioning and path planning.
Patent Information
- Application Number
- CN202410569571.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-10-25
- Filing Date
- 2024-05-09
- Publication Date
- 2025-04-25
AI Technical Summary
There are differences between map data in the prior art, resulting in challenges in tasks such as positioning, drawing and path planning.
Different map data sets are received through one or more central computers, and the crowdsourcing map data is aligned with other map data sets using a map matching and registration algorithm, public lane lines are determined, and fusion map data sets are generated based on these data sets.
The problem of map data difference is solved, the positioning accuracy and path planning of autonomous vehicles are improved, and the dependence on ground real-time data is reduced.
Smart Images

Figure CN119879891A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to a system and method for resolving map data discrepancies. Background Art
[0002] Autonomous vehicles perform various tasks such as, but not limited to, perception, localization, mapping, path planning, decision making, and motion control. Autonomous vehicles rely on map data to perform many tasks such as localization, mapping, and path planning. It should be understood that different versions of map data representing the same geographic area can be generated, wherein each version of the map data is generated by a different data source. An example of a map data version is crowdsourced map data. Crowdsourced map data is generated based on global positioning system (GPS) data and data collected by vehicles on the road. Some examples of data collected by vehicles include image data collected by onboard cameras, vehicle speed, and yaw sensor data. Although crowdsourced maps provide real-time information for constructing lane lines and clear lane line attributes, crowdsourced maps may face challenges due to calibration issues of onboard cameras. In addition, GPS data may introduce bias and random noise to crowdsourced maps.
[0003] Map data based on telemetry data, such as high-speed vehicle telemetry (HSVT) sources, is highly reliable and is generally relatively easy to obtain. However, telemetry-based map data does not provide lane attributes, such as color and type. In addition, telemetry-based map data is determined based on the behavior of individual drivers driving the vehicle. Aerial map data based on satellite image data can provide higher accuracy. However, aerial map data may not consistently provide lane attributes. In addition, aerial maps are time-consuming to create, may be outdated depending on the time of image acquisition, and may contain areas that are obscured due to issues such as tree cover. Finally, high-definition map data is generated based on data collected by detection vehicles and can provide higher accuracy as well as lane attributes. However, updating high-definition map data is time-consuming.
[0004] Therefore, while vehicle maps achieve their intended purpose, there is a need in the art for an improved method to resolve discrepancies in map data to mitigate the above challenges. Summary of the invention
[0005] According to several aspects, a system for resolving map data discrepancies is provided. The system may include one or more central computers that wirelessly communicate with one or more vehicles. The one or more central computers are programmed to receive a first map data set and a second map data set. The first map data set and the second map data set both represent a predefined geographic area. The one or more central computers are also programmed to receive multiple crowdsourced map data sets. Each of the multiple crowdsourced map data sets represents a predefined geographic area. The one or more central computers are also programmed to compare each of the multiple crowdsourced map data sets with the first map data set and the second map data set to determine one or more common lane lines. The one or more central computers are also programmed to determine a fused map data set based at least in part on the first map data set, the second map data set, the multiple crowdsourced map data sets, and the one or more common lane lines.
[0006] In another aspect of the present disclosure, the predefined geographic area is a road segment including one or more lane lines.
[0007] In another aspect of the present disclosure, in order to compare each of the plurality of crowdsourced map data sets with the first map data set and the second map data set, the one or more central computers are further programmed to generate a plurality of aligned map data sets. The plurality of aligned map data sets include a first subset and a second subset. The first subset is generated by aligning each of the plurality of crowdsourced map data sets with the first map data set by executing a map matching registration algorithm. The second subset is generated by aligning each of the plurality of crowdsourced map data sets with the second map data set by executing a map matching registration algorithm. In order to compare each of the plurality of crowdsourced map data sets with the first map data set and the second map data set, the one or more central computers are further programmed to determine one or more common lane lines based at least in part on the plurality of aligned map data sets.
[0008] In another aspect of the present disclosure, each of the first map dataset, the second map dataset, and the plurality of crowdsourced map datasets includes a plurality of points representing one or more lane lines. In order to perform a map matching registration algorithm on a first crowdsourced map dataset in the plurality of crowdsourced map datasets, one or more central computers are also programmed to determine a plurality of associated point pairs. The first point of each of the plurality of associated point pairs is one of the plurality of points in the first map dataset, wherein the second point of each of the plurality of associated point pairs is one of the plurality of points in the first crowdsourced map dataset in the plurality of crowdsourced map datasets. In order to perform a map matching registration algorithm on a first crowdsourced map dataset in the plurality of crowdsourced map datasets, the one or more central computers are also programmed to apply a transformation to the first crowdsourced map dataset in the plurality of crowdsourced map datasets to generate a first aligned map dataset in a first subset of the plurality of aligned map datasets. The transformation is selected to minimize the lateral offset and color distance between the first point and the second point of each of the plurality of associated point pairs.
[0009] In another aspect of the present disclosure, the lateral offset is the total lateral distance between the first point and the second point of each of the plurality of associated point pairs, and the color distance is the total color difference between the first point and the second point of each of the plurality of associated point pairs.
[0010] In another aspect of the present disclosure, in order to determine one or more common lane lines, one or more central computers are also programmed to identify multiple detected lane lines. Each of the multiple detected lane lines is present in at least one of the first map data set and the second map data set. In order to determine one or more common lane lines, one or more central computers are also programmed to determine the number of votes for each of the multiple detected lane lines based at least in part on the multiple detected lane lines, multiple crowdsourced map data sets, and multiple aligned map data sets. In order to determine one or more common lane lines, one or more central computers are also programmed to determine one or more common lane lines based at least in part on the number of votes for each of the multiple detected lane lines. The one or more common lane lines include one or more lane lines among the multiple detected lane lines that have greater than or equal to a predetermined number of votes.
[0011] In another aspect of the disclosure, to determine the number of votes for one of the plurality of detected lane lines, the one or more central computers are further programmed to determine a first number of a plurality of crowdsourced map data sets that include one of the plurality of detected lane lines based at least in part on the plurality of aligned map data sets. To determine the number of votes for one of the plurality of detected lane lines, the one or more central computers are further programmed to determine the number of votes for one of the plurality of detected lane lines. The number of votes is the first number.
[0012] In another aspect of the present disclosure, to determine the fused map data set, one or more central computers are further programmed to generate a first plurality of lateral offset histograms based on a first subset of the plurality of aligned map data sets. Each of the first plurality of lateral offset histograms corresponds to one of the one or more common lane lines. To determine the fused map data set, one or more central computers are further programmed to generate a second plurality of lateral offset histograms based on a second subset of the plurality of aligned map data sets. Each of the second plurality of lateral offset histograms corresponds to one of the one or more common lane lines. To determine the fused map data set, one or more central computers are further programmed to determine the fused map data set based at least in part on the first plurality of lateral offset histograms and the second plurality of lateral offset histograms.
[0013] In another aspect of the present disclosure, each of the first plurality of lateral offset histograms includes a first plurality of lateral offsets of one of the one or more common lane lines. Each of the first plurality of lateral offsets is determined based on one of a first subset of a plurality of aligned map data sets. Each of the second plurality of lateral offset histograms includes a second plurality of lateral offsets of one of the one or more common lane lines, wherein each of the second plurality of lateral offsets is determined based on one of a second subset of a plurality of aligned map data sets.
[0014] In another aspect of the present disclosure, in order to determine a fused map data set based at least in part on a first plurality of lateral offset histograms and a second plurality of lateral offset histograms, one or more central computers are also programmed to calculate a first plurality of probability distribution parameter sets based at least in part on the first plurality of lateral offset histograms. Each of the first plurality of probability distribution parameter sets corresponds to one of the one or more common lane lines. In order to determine the fused map data set, one or more central computers are also programmed to calculate a second plurality of probability distribution parameter sets based at least in part on the second plurality of lateral offset histograms. Each of the second plurality of probability distribution parameter sets corresponds to one of the one or more common lane lines. In order to determine the fused map data set, one or more central computers are also programmed to calculate a plurality of fused point sets based at least in part on the first plurality of probability distribution parameter sets and the second plurality of probability distribution parameter sets. Each of the plurality of fused point sets corresponds to one of the one or more common lane lines. In order to determine the fused map data set, one or more central computers are also programmed to determine the fused map data set. The fused map data set includes at least a plurality of fused point sets.
[0015] According to several aspects, a method for resolving map data discrepancies is provided. The method may include using one or more central computers to compare each of a plurality of crowdsourced map data sets with a first map data set and a second map data set to determine one or more common lane lines. The plurality of crowdsourced map data sets, the first map data set, and the second map data set represent a predefined geographic area, wherein each of the plurality of crowdsourced map data sets, the first map data set, and the second map data set includes a plurality of points representing one or more lane lines. The method may also include using one or more central computers to determine a fused map data set based at least in part on the first map data set, the second map data set, the plurality of crowdsourced map data sets, and the one or more common lane lines.
[0016] In another aspect of the present disclosure, comparing each of the plurality of crowdsourced map data sets with the first map data set and the second map data set may further include, using one or more central computers, generating a plurality of aligned map data sets. The plurality of aligned map data sets include a first subset and a second subset. The first subset is generated by aligning each of the plurality of crowdsourced map data sets with the first map data set by executing a map matching registration algorithm. The second subset is generated by aligning each of the plurality of crowdsourced map data sets with the second map data set by executing a map matching registration algorithm. Comparing each of the plurality of crowdsourced map data sets with the first map data set and the second map data set may further include, using one or more central computers, determining one or more common lane lines based at least in part on the plurality of aligned map data sets.
[0017] In another aspect of the present disclosure, performing a map matching registration algorithm on a first crowdsourced map dataset in a plurality of crowdsourced map datasets may further include, using one or more central computers, determining a plurality of associated point pairs. A first point of each of the plurality of associated point pairs is one of a plurality of points in the first map dataset, wherein a second point of each of the plurality of associated point pairs is one of a plurality of points in the first crowdsourced map dataset in the plurality of crowdsourced map datasets. Performing a map matching registration algorithm on a first crowdsourced map dataset in a plurality of crowdsourced map datasets may further include, using one or more central computers, applying a transformation to the first crowdsourced map dataset in the plurality of crowdsourced map datasets to generate a first aligned map dataset in a first subset of the plurality of aligned map datasets. The transformation is selected to minimize a lateral offset and a color distance between a first point and a second point of each of the plurality of associated point pairs.
[0018] In another aspect of the present disclosure, determining one or more common lane lines may also include using one or more central computers to identify multiple detected lane lines. Each of the multiple detected lane lines is present in at least one of the first map data set and the second map data set. Determining one or more common lane lines may also include using one or more central computers to determine the number of votes for each of the multiple detected lane lines based at least in part on the multiple detected lane lines, multiple crowdsourced map data sets, and multiple aligned map data sets. Determining one or more common lane lines may also include using one or more central computers to determine one or more common lane lines based at least in part on the number of votes for each of the multiple detected lane lines. The one or more common lane lines include one or more lane lines among the multiple detected lane lines that have a number of votes greater than or equal to a predetermined number.
[0019] In another aspect of the present disclosure, determining the number of votes for each of the plurality of detected lane lines may further include: using one or more central computers to determine a first number of a plurality of crowdsourced map data sets including one of the plurality of detected lane lines based at least in part on the plurality of aligned map data sets. Determining the number of votes for each of the plurality of detected lane lines may further include: using one or more central computers to determine the number of votes for one of the plurality of detected lane lines. The number of votes is the first number.
[0020] In another aspect of the present disclosure, determining the fused map dataset may also include generating a first plurality of lateral offset histograms based on a first subset of the plurality of aligned map datasets using one or more central computers. Each of the first plurality of lateral offset histograms corresponds to one of the one or more common lane lines. Determining the fused map dataset may also include generating a second plurality of lateral offset histograms based on a second subset of the plurality of aligned map datasets using one or more central computers. Each of the second plurality of lateral offset histograms corresponds to one of the one or more common lane lines. Determining the fused map dataset may also include determining the fused map dataset based at least in part on the first plurality of lateral offset histograms and the second plurality of lateral offset histograms using one or more central computers.
[0021] In another aspect of the present disclosure, determining the fused map data set may further include calculating a first plurality of probability distribution parameter sets using one or more central computers at least in part based on a first plurality of lateral offset histograms. Each of the first plurality of probability distribution parameter sets corresponds to one of the one or more common lane lines. Determining the fused map data set may further include calculating a second plurality of probability distribution parameter sets using one or more central computers at least in part based on a second plurality of lateral offset histograms. Each of the second plurality of probability distribution parameter sets corresponds to one of the one or more common lane lines. Determining the fused map data set may further include calculating a plurality of fused point sets using one or more central computers at least in part based on the first plurality of probability distribution parameter sets and the second plurality of probability distribution parameter sets. Each of the plurality of fused point sets corresponds to one of the one or more common lane lines. Determining the fused map data set may further include determining the fused map data set using one or more central computers. The fused map data set includes at least a plurality of fused point sets.
[0022] According to several aspects, a system for resolving map data discrepancies is provided. The system may include one or more central computers that wirelessly communicate with one or more vehicles. The one or more central computers are programmed to receive a first map data set and a second map data set. The first map data set and the second map data set both represent a predefined geographic area. The predefined geographic area is a road segment containing one or more lane lines. The one or more central computers are also programmed to receive multiple crowdsourced map data sets. Each of the multiple crowdsourced map data sets represents a predefined geographic area. The one or more central computers are also programmed to generate multiple aligned map data sets. The multiple aligned map data sets include a first subset and a second subset. The first subset is generated by aligning each of the multiple crowdsourced map data sets with the first map data set by executing a map matching registration algorithm. The second subset is generated by aligning each of the multiple crowdsourced map data sets with the second map data set by executing a map matching registration algorithm. The one or more central computers are also programmed to determine one or more common lane lines based at least in part on the multiple aligned map data sets. The one or more central computers are further programmed to determine a fused map dataset based at least in part on the first map dataset, the second map dataset, the plurality of crowdsourced map datasets, and the one or more common lane lines.
[0023] In another aspect of the present disclosure, in order to determine one or more common lane lines, one or more central computers are also programmed to identify multiple detected lane lines. Each of the multiple detected lane lines exists in at least one of the first map data set and the second map data set. In order to determine one or more common lane lines, one or more central computers are also programmed to determine the number of votes for each of the multiple detected lane lines based at least in part on the multiple detected lane lines, multiple crowdsourced map data sets, and multiple aligned map data sets. In order to determine one or more common lane lines, one or more central computers are also programmed to determine one or more common lane lines based at least in part on the number of votes for each of the multiple detected lane lines. The one or more common lane lines include one or more lane lines among the multiple detected lane lines that have a number of votes greater than or equal to a predetermined number.
[0024] In another aspect of the present disclosure, to determine the fused map data set, one or more central computers are further programmed to generate a first plurality of lateral offset histograms based on a first subset of the plurality of aligned map data sets. Each of the first plurality of lateral offset histograms corresponds to one of the one or more common lane lines. To determine the fused map data set, one or more central computers are further programmed to generate a second plurality of lateral offset histograms based on a second subset of the plurality of aligned map data sets. Each of the second plurality of lateral offset histograms corresponds to one of the one or more common lane lines. To determine the fused map data set, one or more central computers are further programmed to determine the fused map data set based at least in part on the first plurality of lateral offset histograms and the second plurality of lateral offset histograms.
[0025] Further areas of applicability will become apparent from the description provided herein.It should be understood that the description and specific examples are intended for purposes of illustration only and are not intended to limit the scope of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS
[0026] The drawings described herein are for illustration purposes only and are not intended to limit the scope of the present disclosure in any way.
[0027] Figure 1 is a schematic diagram of a system for resolving map data discrepancies according to an exemplary embodiment;
[0028] Figure 2 is a flow chart of a method for resolving map data discrepancies according to an exemplary embodiment;
[0029] Figure 3 is an illustration of a portion of a first road network according to an exemplary embodiment;
[0030] Figure 4 According to an exemplary embodiment Figure 3Schematic diagram of a portion of the road network with bounding boxes in ;
[0031] Figure 5 According to an exemplary embodiment Figure 4 an illustration of one of the bounding boxes shown;
[0032] Fig. 6A is an illustration of an exemplary bounding box including a first plurality of points from a first map dataset and a second plurality of points from one of a plurality of crowdsourced map datasets according to an exemplary embodiment;
[0033] Figure 6B According to an exemplary embodiment Fig. 6A An illustration of an exemplary bounding box shown after executing a map matching registration algorithm;
[0034] Figure 7 is a graphical representation of an exemplary lateral offset histogram according to an exemplary embodiment;
[0035] Figure 8 is a diagram of a portion of a second road network according to an exemplary embodiment; and
[0036] Fig. 9 yes Figure 8 An enlarged view of a portion of a second road network is shown. DETAILED DESCRIPTION
[0037] The following description is merely exemplary in nature and is not intended to limit the present disclosure, application, or uses.
[0038] It may be necessary to resolve differences between different map data sets to ensure accurate and precise map data for use by vehicle systems, such as advanced driver assistance systems (ADAS), automated driving systems (ADS), etc. Known ground truth map data can be used to reconcile differences between map data sets. However, ground truth data may be sparse and resource intensive. Therefore, the present disclosure provides a new and improved system and method for resolving map data differences, including a voting method for identifying common features.
[0039] refer to Figure 1 , an exemplary system 10 for resolving map data discrepancies is shown. The system 10 includes one or more central computers 20 located in a back office 22, wherein the one or more central computers 20 communicate wirelessly with one or more vehicles 26.
[0040] The one or more central computers 20 are used to implement the method 100 for resolving map data discrepancies as will be described below. The one or more central computers 20 include at least one processor, a non-transitory computer readable storage device or medium, and a central computer communication system.
[0041] The processor can be a custom or commercially available processor, a central processing unit (CPU), a graphics processing unit (GPU), an auxiliary processor of several processors associated with one or more central computers 20, a semiconductor-based microprocessor (in the form of a microchip or chipset), a macroprocessor, a combination thereof, or a device generally used to execute instructions.
[0042] The computer readable storage device or medium may include volatile storage devices, and non-volatile storage devices, such as read-only memory (ROM), random access memory (RAM), and keep-alive memory (KAM). KAM is a persistent or non-volatile memory that can be used to store various operating variables when the processor is shut down. The computer readable storage device or medium can be implemented using a plurality of storage devices, such as PROM (programmable read-only memory), EPROM (electrical PROM), EEPROM (electrically erasable PROM), flash memory, or other electrical, magnetic, optical or combination storage devices capable of storing data, some of which represent executable instructions that can be used by one or more central computers 20 to execute method 100.
[0043] The one or more central computers 20 use the central computer communication system to communicate with other systems external to the one or more central computers 20 (e.g., to establish wireless communication between the one or more central computers 20 and one or more vehicles 26). For example, the central computer communication system includes functionality for communicating with vehicles (“V2I” communication). In certain embodiments, the central computer communication system is a wireless communication system that is configured to communicate via a wireless local area network (WLAN) using the IEEE 802.11 standard or by using cellular data communication (e.g., using GSMA standards such as SGP.02, SGP.22, SGP.32, etc.). Thus, the central computer communication system may also include an embedded universal integrated circuit card (eUICC) configured to store at least one cellular connection profile, such as an embedded subscriber identity module (eSIM) profile.
[0044] The central computer communication system is also configured to communicate via a personal area network (e.g., Bluetooth), near field communication (NFC), and / or any other type of radio frequency communication. Thus, the central computer communication system may include one or more antennas and / or communication transceivers for receiving and / or transmitting signals. The central computer communication system is configured to wirelessly transmit information between one or more vehicles 26 and one or more central computers 20. In addition, the central computer communication system is configured to wirelessly transmit information between one or more central computers 20 and an external communication network (e.g., the Internet). It should be understood that the central computer communication system may be integrated with one or more central computers 20 (e.g., on the same circuit board as one or more central computers 20 or otherwise integrated with a portion of one or more central computers 20) without departing from the scope of the present disclosure.
[0045] refer to Figure 2 , a flow chart of a method 100 for resolving map data discrepancies is shown. The method 100 begins at box 102 and proceeds to boxes 104, 106, and 108. At box 104, one or more central computers 20 receive a first map data set. Within the scope of the present disclosure, the first map data set can be obtained from any source, including, for example, global positioning system (GPS) data, image data collected by a vehicle's onboard camera, high-speed vehicle telemetry (HSVT) sources, aerial and / or satellite image data, and / or data collected from a survey vehicle. Some examples of map data set versions include, but are not limited to, crowdsourced map data, telemetry-based map data, and aerial map data. After box 104, the method 100 proceeds to box 110, as will be discussed in more detail below.
[0046] At box 106, one or more central computers 20 receive a second map data set. Within the scope of the present disclosure, the second map data set can be obtained from any source, including, for example, global positioning system (GPS) data, image data collected by a vehicle's onboard camera, high-speed vehicle telemetry (HSVT) sources, satellite image data, and / or data collected from a survey vehicle. Some examples of map data set versions include, but are not limited to, crowd-sourced map data, telemetry-based map data, and aerial map data. After box 106, method 100 proceeds to box 110, as will be discussed in more detail below.
[0047] At box 108 , the one or more central computers 20 receive a plurality of crowdsourced map data sets from one or more vehicles 26 using a central computer communication system. Within the scope of the present disclosure, the plurality of crowdsourced map data sets may differ from the first map data set and the second map data set due to, for example, differences in equipment precision / accuracy, changes in road conditions since the first map data set and the second map data set were measured, adverse weather conditions during the measurement of the first map data set, the second map data set, and / or the plurality of crowdsourced map data sets, etc. After box 108 , the method 100 proceeds to box 110 .
[0048] At block 110 , the one or more central computers 20 segment the first map data set received at block 104 , the second map data set received at block 106 , and the plurality of crowdsourced map data sets received at block 108 into a plurality of predefined geographic regions.
[0049] refer to Figure 3 , an exemplary illustration of a portion of a first road network 30a is shown. Within the scope of the present disclosure, the first road network 30a is a graph that models a road based on a plurality of road segments 32, a plurality of nodes 34, a plurality of line strings 36, and relative road edges 38. The plurality of nodes 34 each represent an endpoint of one of the road segments 32, wherein each line string 36 connects two of the plurality of nodes 34 together. It should be understood that the relative road edges 38 represent theoretical lanes or road edges, rather than relative topological graph edges. One or more central computers 20 calculate a plurality of points 40 arranged along the plurality of line strings 36. Each of the plurality of points 40 is positioned at a predetermined distance from each other. The plurality of points 40 divides the individual road segments 32 into a plurality of segments 42. The predetermined distance represents the perception range of a vehicle traveling along the road represented by the first road network 30a. In a non-limiting embodiment, the predetermined distance is approximately fifty meters. However, it should be understood that other dimensions may also be used.
[0050] In an exemplary embodiment, the one or more central computers 20 determine the plurality of points 40 by starting from a first node N1 of an initial road segment 32 and placing a first predetermined point P1 at the first node N1. The one or more central computers 20 then determine a subsequent point P2 at a predetermined distance along the line string 36. The one or more central computers 20 continue to determine the predetermined points [P3, P4 ... Pi] over the entire length of the road segment 32. In the event that the last point Pi is disposed less than the predetermined distance from the end node N2 where the road segment 32 terminates, the length of the last segment 42 is less than the predetermined distance.
[0051] refer to Figure 4 , showing Figure 3Schematic diagram of a portion of a first road network 30a with bounding boxes 50 in FIG. Within the scope of the present disclosure, the plurality of bounding boxes 50 each represent a single unit (i.e., a predefined geographical area) for performing the method 100, as will be disclosed in more detail below. Each bounding box 50 includes a lateral dimension (i.e., width W) perpendicular to the road segment 32 and a longitudinal dimension (i.e., height H) aligned with the road segment 32, which corresponds to the perception range of a vehicle traveling along the road (represented by the first road network 30a). Specifically, in Figure 4 In the example shown, a width W of the bounding box 50 is defined between points P1 and P2 , and the width W is a predetermined distance between the plurality of points 40 .
[0052] refer to Figure 5 , showing Figure 4 One of the bounding boxes 50 shown in . Figure 5 A vehicle coordinate system x'y' is shown, wherein the x' axis is parallel to the road edge 38 ( Figure 4 ), the y' axis is perpendicular to the road edge 38. The heading angle θ represents the vehicle's heading along the road segment 32 ( Figure 4 ), the coordinates x1, y1 represent the coordinates of the first point P1, the coordinates x2, y2 represent the coordinates of the second point P2, the distance d represents half of the height H of the bounding box 50, and Q1, Q2, Q3, Q4 represent the corner points of the bounding box 50. Therefore, in order to determine the width W and height H of the bounding box 50, one or more central computers 20 calculate the coordinates of each corner point Q1, Q2, Q3, Q4 of the bounding box 50. In the example shown in the figure, the coordinates of the upper left corner point Q1 are expressed as Q1 = (x1, y1 + d), the coordinates of the upper right corner point Q2 are expressed as Q2 = (x2, y2 + d), the coordinates of the lower left corner point Q3 are expressed as Q3 = (x1, y1-d), and the coordinates of the lower right corner point Q4 are expressed as Q4 = (x2, y2-d).
[0053] Within the scope of the present disclosure, each bounding box 50 is considered to be a predefined geographic area. The method 100 iteratively processes each predefined geographic area (i.e., bounding box 50), as will be discussed in more detail below. The process for segmenting and determining the bounding box 50 is performed on each of the first map dataset received at box 104, the second map dataset received at box 106, and the multiple crowdsourced map datasets received at box 108, such that each bounding box 50 represents the same predefined geographic area across the first map dataset, the second map dataset, and each of the multiple crowdsourced map datasets. In other words, the first bounding box of the first map dataset, the first bounding box of the second map dataset, and the first bounding box of each of the multiple crowdsourced map datasets represent the same physical location in the first road network 30a. Referring again to Figure 2 , after frame 110 , method 100 proceeds to frames 112 and 114 .
[0054] At box 112, one or more central computers 20 identify multiple detected lane lines in the first map data set received at box 104 and the second map data set received at box 106. Each of the multiple detected lane lines is present in at least one of the first map data set and the second map data set. Within the scope of the present disclosure, lane lines are markings arranged (e.g., painted) on a road to provide position information about a driving lane on the road by depicting the boundaries of the driving lane on the road. In an exemplary embodiment, multiple detected lane lines are identified in the first map data set and the second map data set using a rule-based algorithm, a machine learning algorithm, a computer vision algorithm, etc. After box 112, method 100 proceeds to box 116, as will be discussed in more detail below.
[0055] At box 114, the one or more central computers 20 generate a plurality of aligned map data sets. The plurality of aligned map data sets include a first subset and a second subset. The first subset is generated by aligning each of the plurality of crowd-sourced map data sets with the first map data set. The second subset is generated by aligning each of the plurality of crowd-sourced map data sets with the second map data set. In an exemplary embodiment, each of the plurality of crowd-sourced map data sets is aligned with the first map data set and the second map data set using a map matching registration algorithm.
[0056] refer to Fig. 6A , an exemplary bounding box 50 is shown, which includes a first plurality of points 52 from a first map dataset and a second plurality of points 54 from one of a plurality of crowdsourced map datasets. The first plurality of points 52 and the second plurality of points 54 represent one or more lane lines. In an exemplary embodiment, the map matching registration algorithm is an iterative closest point (ICP) algorithm. However, other types of algorithms may also be used.
[0057] The map matching registration algorithm uses a k-nearest neighbor algorithm to identify a set of closest matching points, referred to as associated point pairs, between each of the first plurality of points 52 and each of the second plurality of points 54. Each associated point pair includes a first point that is one of the first plurality of points 52 and a second point that is one of the second plurality of points 54.
[0058] refer to Figure 6B , shows an exemplary bounding box 50 including a first plurality of points 52 from a first map dataset and a second plurality of points 54 from one of a plurality of crowdsourced map datasets after executing a map matching registration algorithm. Figure 6BAs shown, point P1 in the first plurality of points 52 and P1' in the second plurality of points 54 represent associated point pairs. The map matching registration algorithm aligns the first plurality of points 52 and the second plurality of points 54 with each other by applying a transformation (i.e., translation and / or rotation) to the second plurality of points 54 to be located, for example, to minimize an objective function. In a non-limiting example, the objective function is:
[0059]
[0060] Where f is the objective function; d c,i is the color distance of the i-th associated point pair among multiple associated point pairs; w c is the color weight; d g,i is the lateral offset of the i-th associated point pair among multiple associated point pairs.
[0061] The color distance is a discrete binary value (i.e., 0 or 1) indicating whether the colors of the two points of the ith associated point pair in the plurality of associated point pairs are the same (e.g., both yellow, both white, etc.). If the colors are the same, the color distance is 0. If the colors are different, the color distance is 1. The color weight is a continuous value between 0 and 1 that is used to adjust the weight of the color distance in the objective function (Equation 1). The lateral offset is the lateral distance between the first point and the second point of the ith associated point pair in the plurality of associated point pairs.
[0062] It should be understood that the objective function equation 1 may also include additional factors for increasing the matching accuracy between point pairs, including, for example, line type distance and line type weight. In an exemplary embodiment, the line type distance is a discrete binary value (i.e., 0 or 1) indicating whether the line types (e.g., single line, double line, solid line, dashed line, etc.) of the two points of the i-th associated point pair in the plurality of associated point pairs are the same. If the line types are the same, the line type distance is 0. If the line types are different, the line type distance is 1. The line type weight is a continuous value between 0 and 1 that adjusts the weight of the line type distance in the objective function (Equation 1).
[0063] The result of the map matching registration algorithm is one of several aligned map datasets, such as Figure 6B Repeating the map matching registration algorithm to align each of the plurality of crowdsourced map datasets with the first map dataset and the second map dataset to generate a plurality of aligned map datasets. Figure 2 , after frame 114 , method 100 proceeds to frame 116 .
[0064] At box 116, the one or more central computers 20 determine the number of votes for each of the multiple detected lane lines identified at box 112. In the scope of the present disclosure, a vote is an indication that the detected lane line exists in one of the multiple crowdsourced map data sets. In an exemplary embodiment, to determine the number of votes for one of the multiple detected lane lines, the one or more central computers 20 determine a first number of multiple crowdsourced map data sets that include one of the multiple detected lane lines. The number of votes for one of the multiple detected lane lines is considered to be the first number of multiple crowdsourced map data sets that include the multiple detected lane lines. In a non-limiting example, the multiple aligned map data sets determined at box 114 are used to identify matching lane lines between the multiple detected lane lines and the multiple crowdsourced map data sets. The process is repeated for each of the multiple detected lane lines to determine the number of votes for each of the multiple detected lane lines. After box 116, the method 100 proceeds to box 118.
[0065] At frame 118, one or more central computers 20 determine one or more common lane lines based at least in part on the number of votes for each of the multiple detected lane lines determined at frame 116. In an exemplary embodiment, the one or more common lane lines include one or more lane lines having a number of votes greater than or equal to a predetermined number. In a non-limiting example, the predetermined number of votes is a simple majority (i.e., fifty percent) of the total votes. It should be understood that the predetermined number of votes can be any absolute number of votes or relative number of votes. After frame 118, method 100 proceeds to frame 120.
[0066] At block 120 , a first plurality of lateral offset histograms and a second plurality of lateral offset histograms are generated. Each of the first plurality of lateral offset histograms and the second plurality of lateral offset histograms corresponds to one of the one or more common lane lines determined at block 118 .
[0067] Each of the first plurality of lateral offset histograms includes a first plurality of lateral offsets of a common lane line in the one or more common lane lines. Each of the first plurality of lateral offsets is: the sum of the lateral offset of each of the plurality of associated point pairs of the first map data set and the lateral offset of one of the plurality of crowdsourced map data sets corresponding to the one of the one or more common lane lines. Thus, each of the first plurality of lateral offsets is determined based on one of the first subsets of the plurality of aligned map data sets.
[0068] Each of the second plurality of lateral offset histograms includes a second plurality of lateral offsets of one of the one or more common lane lines. Each of the second plurality of lateral offsets is: the sum of the lateral offset of each of the plurality of associated point pairs of the second map data set and the lateral offset of one of the plurality of crowdsourced map data sets corresponding to the one of the one or more common lane lines. Thus, each of the second plurality of lateral offsets is determined based on one of the second subsets of the plurality of aligned map data sets.
[0069] refer to Figure 7 , shows an exemplary lateral offset histogram 60. The x-axis of the exemplary lateral offset histogram 60 indicates the distance between associated point pairs. The y-axis of the exemplary lateral offset histogram 60 indicates the amount of lateral offset with each distance indicated on the x-axis.
[0070] Each of the first plurality of lateral offset histograms and the second plurality of lateral offset histograms is also referred to as a sensor noise model. Figure 2 , after frame 120 , method 100 proceeds to frame 122 .
[0071] At block 122, the one or more central computers 20 calculate a first plurality of probability distribution parameter sets. Each of the first plurality of probability distribution parameter sets corresponds to one of the first plurality of lateral offset histograms generated at block 120. The one or more central computers 20 also calculate a second plurality of probability distribution parameter sets. Each of the second plurality of probability distribution parameter sets corresponds to one of the second plurality of lateral offset histograms generated at block 120.
[0072] In an exemplary embodiment, each of the first plurality of probability distribution parameter sets and each of the second plurality of probability distribution parameter sets include the following, as shown in Equation 2-5:
[0073] e h ~N(μ h ,σ h ) (2)
[0074] e m ~N(μ m ,σ m ) (3)
[0075]
[0076] Among them, e h is the Gaussian random variable of the first plurality of points 52; e m is the Gaussian random variable of the second plurality of points 54; μ h represents an average of a first plurality of lateral offsets; represents the variance of the first plurality of lateral offsets; μ m represents an average of the second plurality of lateral offsets; represents the variance of the second plurality of lateral offsets; ρ represents the correlation coefficient between the first plurality of lateral offsets and the second plurality of lateral offsets; E represents the expected value; ∑ represents e h and e m The covariance matrix between .
[0077] In one non-limiting example, a maximum likelihood estimation algorithm is used to determine the first plurality of probability distribution parameter sets and the second plurality of probability distribution parameter sets. Within the scope of the present disclosure, the maximum likelihood estimation algorithm implements a method of estimating probability distribution parameters (i.e., the first plurality of lateral offsets and the second plurality of lateral offsets) given some observation data (i.e., the first plurality of lateral offsets and the second plurality of lateral offsets). After block 122, method 100 proceeds to block 124.
[0078] At box 124, one or more central computers 20 determine a fused map data set. In the scope of the present disclosure, the fused map data set is a fusion of a first map data set and a second map data set based at least in part on a plurality of crowdsourced map data sets. The fused map data set includes a plurality of fused point sets. Each of the plurality of fused point sets corresponds to one of the one or more common lane lines.
[0079] refer to Figure 8 , an exemplary diagram of a portion of the second road network 30b is shown. It should be understood that the second road network 30b is shown only to illustrate the determination of the fused map data set, and the principles explained below are also applicable to the first road network 30a. The second road network 30b includes a discrete random curve 70 representing lane lines arranged along the road. The discrete random curve 70 is defined by a series of discrete arc segments 72, which are connected by a plurality of nodes 74 and include a plurality of state vectors s k , where k represents the state vector s k The total number of, k = 1, ..., N, N represents the state vector s k The total number of plus one. The discrete random curve 70 is a broken line or a Markov random curve, in which only the state vectors s located one after another are k The series of state vectors s k A step size Δs is defined, where the step size Δs represents the distance between two consecutive state vectors s located directly adjacent to each other along the discrete random curve 70. k The distance between them and represents the spatial equivalent of the standard time series Δt of the Kalman filter.
[0080] Each node 74 is located between two adjacent state vectors sk The state vector s k is the state variable l k ,φ k A two-dimensional vector is defined, where l k Denotes the corresponding state vector s k The position of k ,y k ) indicates that φ k Represents each state vector s k As described below, one or more central computers 20 estimate each state vector s k Location i and the tangent angle φ i , where each state vector s k Location i and the tangent angle φ i Indicates the fusion point of the fused map dataset. Figure 8 As shown, a first plurality of points 52 and a second plurality of points 54 are also superimposed on the road network.
[0081] The first plurality of points 52 is a portion of a first straight line curve M(s), wherein each of the first plurality of points 52 is represented as a first series of points o with k=1, ..., N. m,k =M(s k ), the second plurality of points 54 are part of the second straight line curve H(s), wherein each of the second plurality of points 54 is represented by a second series of points o with k=0, ..., N h,k =H(s k ). refer to Fig. 9 , showing Figure 8 The discrete random curve 70 shown is derived from the state vector s k-2 Start to state vector s k+1 A magnified view of a portion of the end. Figure 8 and Fig. 9 , random variable L k ( Figure 4 ) corresponds to each node 74 of the discrete random curve 70 and represents each state vector s k Location k The one or more central computers 20 determine the first plurality of points 52o m,i The corresponding points of the second plurality of points 54o h,i The lateral offset d between the corresponding points i , where the lateral offset d i including from the first plurality of points 52o m,k The first perpendicular distance (d m,k and from the second multiple point 54o h,kThe second perpendicular distance d measured from the corresponding point to the discrete random curve 70 h,k , or d i =(d m,k ,d h,k )).
[0082] One or more central computers 20 determine the lateral displacement d i and by minimizing the spatial Kalman filter cost function based on the lateral offset d i and the tangent angle φ k To estimate k state vectors s as part of a discrete random curve 70 k Location k It should be understood that the spatial Kalman cost function represents the cost function that leads to the determination of the cost function for estimating the position l k The objective solution of the best fitting solution of . It should be understood that because the step size Δs of the discrete random curve 70 represents the spatial equivalent of the standard time series Δt, a spatial Kalman filtering technique is used to fuse the first map data set and the second map data set together to create a fused map data set. The spatial Kalman filter cost function is expressed by equation 6 as:
[0083]
[0084] in, Represents the corresponding state vector s k The estimated position of v represents the average value of the measurement noise; φ i Denotes the corresponding state vector s k The tangent angle of u represents the variance of additive white Gaussian noise; ∑ represents e as described above h and e m In a non-limiting example, the measurement noise μ v The average value is based on the first plurality of lateral displacements μ h The average value of the second multiple lateral displacement μ m is determined by the average value.
[0085] It should be understood that the spatial Kalman filter cost function is represented by a discrete random curve 70 ( Figure 8 ) to filter the state vector s k One or more central computers 20 determine the state vector s k Then, one or more central computers 20 use the discrete random curve 70 to recursively calculate the state vector s. k Perform the Kalman smoothing function, where the backward recursion includes the most recent state vector s k The Kalman smoothing function is expressed in Equation 7 as:
[0086]
[0087] in, Denotes the corresponding state vector s k The estimated position of; Kalman smoothing function estimates N state vectors s as part of a discrete random curve 70 k Location k and the tangent angle φ k , where the state vector s k Each represents a fusion point of the fused map dataset.
[0088] It is worth noting that the cost of executing the Kalman smoothing function described in Equation 7 increases with the number of k state vectors s k Whenever one or more central computers 20 detect a state vector s representing a new state k The Kalman smoothing function needs to be executed when a data point is introduced into the discrete random curve 70 ( Figure 8 ). Thus, one or more central computers 20 respond to introducing a new state vector s into the discrete random curve 70 k To estimate the updated state vector Among them, the updated state vector Indicates the location of the new data point l k and the tangent angle φ k The updated state vector This is expressed in Equation 8 as:
[0089]
[0090] in, Indicates the predicted state; d k represents a matrix indicating lateral offsets and longitudinal distances of corresponding points in the first plurality of points 52 and lateral offsets and longitudinal distances of corresponding points in the second plurality of points 54; represents the covariance matrix.
[0091] In general, the fused map dataset only includes one or more common lane lines. The location of the one or more common lane lines in the fused map dataset is determined based on a statistical analysis of the differences between the first map dataset, the second map dataset, and the plurality of crowdsourced map datasets. After frame 124, method 100 proceeds to frame 126.
[0092] At block 126, the one or more central computers 20 determine whether each bounding box 50 (i.e., predefined geographic area) segmented at block 110 has been processed by the method 100. If each bounding box 50 has not been processed, the method 100 returns to block 110 to select another bounding box 50. If each bounding box 50 has been processed, the method 100 continues to enter the standby state at block 128.
[0093] In an exemplary embodiment, one or more central computers 20 repeatedly exit the standby state 128 and restart the method 100 at block 102. In a non-limiting example, one or more central computers 20 exit the standby state 128 and restart the method 100 based on a timer, such as once every three hundred milliseconds.
[0094] The systems and methods of the present disclosure have several advantages. By identifying common lane lines using the voting method described above, the difference between the first map dataset and the second map dataset is resolved based on multiple crowdsourced map datasets. In addition, the method proposed in this article for calculating the sensor noise model (i.e., lateral offset histogram) for each bounding box 50 is scalable to large road networks without relying on ground truth data. The fused map dataset is distributed to one or more vehicles 26 to improve the operation of advanced driver assistance systems (ADAS), autonomous driving systems (ADS), etc.
[0095] The description of the present disclosure is merely exemplary in nature, and variations that do not depart from the gist of the present disclosure are intended to fall within the scope of the present disclosure. These variations should not be regarded as departing from the spirit and scope of the present disclosure.
Claims
1. A system for resolving map data discrepancies, the system comprising: One or more central computers that communicate wirelessly with one or more vehicles, wherein the one or more central computers are programmed to: Receiving a first map data set and a second map data set, wherein the first map data set and the second map data set both represent a predefined geographic area; receiving a plurality of crowd-sourced map data sets, wherein each of the plurality of crowd-sourced map data sets represents the predefined geographic area; comparing each of the plurality of crowdsourced map data sets with the first map data set and the second map data set to determine one or more common lane lines; and A fused map dataset is determined based at least in part on the first map dataset, the second map dataset, the plurality of crowdsourced map datasets, and the one or more common lane lines.
2. The system according to claim 1, wherein: The predefined geographical area is a road segment including one or more lane lines.
3. The system according to claim 2, wherein: To compare each of the plurality of crowd-sourced map data sets with the first map data set and the second map data set, the one or more central computers are further programmed to: generating a plurality of aligned map datasets, wherein the plurality of aligned map datasets include a first subset and a second subset, wherein the first subset is generated by executing a map matching registration algorithm to align each of the plurality of crowd-sourced map datasets with the first map dataset, wherein the second subset is generated by executing the map matching registration algorithm to align each of the plurality of crowd-sourced map datasets with the second map dataset; and The one or more common lane markings are determined based at least in part on the plurality of aligned map data sets.
4. The system according to claim 3, wherein: Each of the first map dataset, the second map dataset, and the plurality of crowd-sourced map datasets includes a plurality of points representing the one or more lane lines, wherein, in order to perform the map matching registration algorithm on a first crowd-sourced map dataset among the plurality of crowd-sourced map datasets, the one or more central computers are further programmed to: determining a plurality of associated point pairs, wherein a first point of each associated point pair in the plurality of associated point pairs is one of a plurality of points in the first map dataset, wherein a second point of each associated point pair in the plurality of associated point pairs is one of a plurality of points in a first crowdsourced map dataset in the plurality of crowdsourced map datasets; and Applying a transformation to a first crowdsourced map dataset in the plurality of crowdsourced map datasets to generate a first aligned map dataset in a first subset of the plurality of aligned map datasets, wherein the transformation is selected to minimize a lateral offset and a color distance between the first point and the second point of each associated point pair in the plurality of associated point pairs.
5. The system according to claim 4, wherein: The lateral offset is a total lateral distance between the first point and the second point of each of the plurality of associated point pairs, and the color distance is a total color difference between the first point and the second point of each of the plurality of associated point pairs.
6. The system according to claim 4, wherein: In order to determine the one or more common lane lines, the one or more central computers are further programmed to: identifying a plurality of detected lane markings, wherein each of the plurality of detected lane markings is present in at least one of the first map dataset and the second map dataset; determining a number of votes for each of the plurality of detected lane markings based at least in part on the plurality of detected lane markings, the plurality of crowdsourced map datasets, and the plurality of aligned map datasets; and The one or more common lane lines are determined at least in part based on the number of votes for each lane in the multiple detected lane lines, wherein the one or more common lane lines include one or more lane lines in the multiple detected lane lines having a number of votes greater than or equal to a predetermined number.
7. The system according to claim 6, wherein: To determine the number of tickets for a lane line among the plurality of detected lane lines, the one or more central computers are further programmed to: Determining a first number based at least in part on the plurality of aligned map datasets, the first number being a number of crowdsourced map datasets in the plurality of crowdsourced map datasets that include the one lane line in the plurality of detected lane lines; and Determine a number of votes for the one lane line among the plurality of detected lane lines, wherein the number of votes is the first number.
8. The system according to claim 4, wherein: In order to determine the fused map data set, the one or more central computers are further programmed to: Generating a first plurality of lateral offset histograms based on the first subset of the plurality of aligned map data sets, wherein each of the first plurality of lateral offset histograms corresponds to a common lane line of the one or more common lane lines; generating a second plurality of lateral offset histograms based on the second subset of the plurality of aligned map data sets, wherein each of the second plurality of lateral offset histograms corresponds to a common lane line of the one or more common lane lines; and The fused map data set is determined based at least in part on the first plurality of lateral offset histograms and the second plurality of lateral offset histograms.
9. The system according to claim 8, wherein: Each of the first plurality of lateral offset histograms includes a first plurality of lateral offsets of a common lane line among the one or more common lane lines, wherein each of the first plurality of lateral offsets is determined based on one of the first subsets of the multiple aligned map data sets, wherein each of the second plurality of lateral offsets includes a second plurality of lateral offsets of a common lane line among the one or more common lane lines, wherein each of the second plurality of lateral offsets is determined based on one of the second subsets of the multiple aligned map data sets.
10. The system according to claim 8, wherein: To determine the fused map data set based at least in part on the first plurality of lateral offset histograms and the second plurality of lateral offset histograms, the one or more central computers are further programmed to: Calculating a first plurality of probability distribution parameter sets based at least in part on the first plurality of lateral offset histograms, wherein each of the first plurality of probability distribution parameter sets respectively corresponds to a common lane marking of the one or more common lane markings; Calculating a second plurality of probability distribution parameter sets based at least in part on the second plurality of lateral offset histograms, wherein each of the second plurality of probability distribution parameter sets respectively corresponds to a common lane marking of the one or more common lane markings; Calculating a plurality of fused point sets based at least in part on the first plurality of probability distribution parameter sets and the second plurality of probability distribution parameter sets, wherein each of the plurality of fused point sets corresponds to a common lane line of the one or more common lane lines; and The fused map data set is determined, wherein the fused map data set at least includes the plurality of fused point sets.