The present disclosure relates to a system and method for resolving discrepancies in map data.
An autonomous vehicle executes various tasks such as, but not limited to, perception, localization, mapping, path planning, decision making, and motion control. Autonomous vehicles rely upon map data for many of the tasks that are executed such as localization, mapping, and path planning. It is to be appreciated that different versions of map data representing the same geographical area may be generated, where each version of the map data is generated from different data sources. One example of a version of map data 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 the data collected by the vehicles include image data collected by an on-board camera, vehicle speed, and yaw sensor data. While crowdsourced maps provide real-time information for constructing lane lines as well as clear lane line attributes, crowdsourced maps may face challenges because of calibration issues with the on-board camera. Also, the GPS data may introduce bias and random noise to the crowdsourced map.
Map data based on telemetry data, such as a high-speed vehicle telemetry (HSVT) source, provides a high confidence level and is usually relatively easy to procure. However, telemetry-based map data does not provide lane line attributes such as color and type. Also, telemetry-based map data is determined based on the behavior of individual drivers who operate the vehicles. Aerial map data, which is based on satellite image data, may provide a high degree of precision. However, aerial map data may not consistently provide lane line attributes. Moreover, aerial maps are time-consuming to create, may be outdated depending on when images were collected, and may contain regions that are occluded due to issues such as tree cover. Finally, high-definition map data is generated based on data collected from survey vehicles and may provide a high degree of precision as well as lane line attributes. However, high-definition map data is time-consuming to update.
Thus, while maps for vehicles achieve their intended purpose, there is a need in the art for an improved approach for resolving discrepancies in map data that alleviates the above-mentioned challenges.
According to several aspects, a system for resolving discrepancies in map data is provided. The system may include one or more central computers in wireless communication with one or more vehicles. The one or more central computers are programmed to receive a first map dataset and a second map dataset. Both the first map dataset and the second map dataset represent a predefined geographical area. The one or more central computers are further programmed to receive a plurality of crowdsourced map datasets. Each of the plurality of crowdsourced map datasets represents the predefined geographical area. The one or more central computers are further programmed to compare each of the plurality of crowdsourced map datasets with the first map dataset and the second map dataset to determine one or more common lane lines. 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.
In another aspect of the present disclosure, the predefined geographical area is a segment of a roadway containing one or more lane lines.
In another aspect of the present disclosure, to compare each of the plurality of crowdsourced map datasets with the first map dataset and the second map dataset, the one or more central computers are further programmed to generate a plurality of aligned map datasets. The plurality of aligned map datasets includes a first subset and a second subset. The first subset is generated by aligning each of the plurality of crowdsourced map datasets with the first map dataset by executing a map-matching registration algorithm. The second subset is generated by aligning each of the plurality of crowdsourced map datasets with the second map dataset by executing the map-matching registration algorithm. To compare each of the plurality of crowdsourced map datasets with the first map dataset and the second map dataset, the one or more central computers are further programmed to determine the one or more common lane lines based at least in part on the plurality of aligned map datasets.
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 the one or more lane lines. To execute the map-matching registration algorithm for a first of the plurality of crowdsourced map datasets, the one or more central computers are further programmed to determine a plurality of associated point pairs. A first point of each of the plurality of associated point pairs is one of the plurality of points in the first map dataset, and where a second point of each of the plurality of associated point pairs is one of the plurality of points in the first of the plurality of crowdsourced map datasets. To execute the map-matching registration algorithm for a first of the plurality of crowdsourced map datasets, the one or more central computers are further programmed to apply a transformation to the first of the plurality of crowdsourced map datasets to generate a first aligned map dataset of the first subset of the plurality of aligned map datasets. The transformation is chosen to minimize a lateral offset and a color distance between the first point and the second point of each of the plurality of associated point pairs.
In another aspect of the present disclosure, 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 difference in color between the first point and the second point of each of the plurality of associated point pairs.
In another aspect of the present disclosure, to determine the one or more common lane lines, the one or more central computers are further programmed to identify a plurality of detected lane lines. Each of the plurality of detected lane lines is present in at least one of the first map dataset and the second map dataset. To determine the one or more common lane lines, the one or more central computers are further programmed to determine a quantity of votes for each of the plurality of detected lane lines based at least in part on the plurality of detected lane lines, the plurality of crowdsourced map datasets, and the plurality of aligned map datasets. To determine the one or more common lane lines, the one or more central computers are further programmed to determine the one or more common lane lines based at least in part on the quantity of votes for each of the plurality of detected lane lines. The one or more common lane lines includes one or more of the plurality of detected lane lines having greater than or equal to a predetermined quantity of votes.
In another aspect of the present disclosure, to determine the quantity of votes for one of the plurality of detected lane lines, the one or more central computers are further programmed to determine a first quantity of the plurality of crowdsourced map datasets including the one of the plurality of detected lane lines based at least in part on the plurality of aligned map datasets. To determine the quantity of votes for one of the plurality of detected lane lines, the one or more central computers are further programmed to determine the quantity of votes for the one of the plurality of detected lane lines. The quantity of votes is the first quantity.
In another aspect of the present disclosure, to determine the fused map dataset, the one or more central computers are further programmed to generate a first plurality of lateral offset histograms based on the first subset of the plurality of aligned map datasets. 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 dataset, the one or more central computers are further programmed to generate a second plurality of lateral offset histograms based on the second subset of the plurality of aligned map datasets. 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 dataset, the one or more central computers are further programmed to determine 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.
In another aspect of the present disclosure, each of the first plurality of lateral offset histograms includes a first plurality of lateral offsets for one of the one or more common lane lines. Each of the first plurality of lateral offsets is determined from one of the first subset of the plurality of aligned map datasets. Each of the second plurality of lateral offset histograms includes a second plurality of lateral offsets for one of the one or more common lane lines, and where each of the second plurality of lateral offsets is determined from one of the second subset of the plurality of aligned map datasets.
In another aspect of the present disclosure, to determine 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, the one or more central computers are further 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. To determine the fused map dataset, the one or more central computers are further 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. To determine the fused map dataset, the one or more central computers are further 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. To determine the fused map dataset, the one or more central computers are further programmed to determine the fused map dataset. The fused map dataset includes at least the plurality of fused point sets.
According to several aspects, a method for resolving discrepancies in map data is provided. The method may include comparing each of a plurality of crowdsourced map datasets with a first map dataset and a second map dataset to determine one or more common lane lines using one or more central computers. The plurality of crowdsourced map datasets, the first map dataset, and the second map dataset represent a predefined geographical area, and where each of the plurality of crowdsourced map datasets, the first map dataset, and the second map dataset includes a plurality of points representing one or more lane lines. The method further may include determining a fused map dataset using the one or more central computers 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.
In another aspect of the present disclosure, comparing each of the plurality of crowdsourced map datasets with the first map dataset and the second map dataset further may include generating a plurality of aligned map datasets using the one or more central computers. The plurality of aligned map datasets includes a first subset and a second subset. The first subset is generated by aligning each of the plurality of crowdsourced map datasets with the first map dataset by executing a map-matching registration algorithm. The second subset is generated by aligning each of the plurality of crowdsourced map datasets with the second map dataset by executing the map-matching registration algorithm. Comparing each of the plurality of crowdsourced map datasets with the first map dataset and the second map dataset further may include determining the one or more common lane lines using the one or more central computers based at least in part on the plurality of aligned map datasets.
In another aspect of the present disclosure, executing the map-matching registration algorithm for a first of the plurality of crowdsourced map datasets further may include determining a plurality of associated point pairs using the one or more central computers. A first point of each of the plurality of associated point pairs is one of the plurality of points in the first map dataset, and where a second point of each of the plurality of associated point pairs is one of the plurality of points in the first of the plurality of crowdsourced map datasets. Executing the map-matching registration algorithm for a first of the plurality of crowdsourced map datasets further may include applying a transformation to the first of the plurality of crowdsourced map datasets to generate a first aligned map dataset of the first subset of the plurality of aligned map datasets using the one or more central computers. The transformation is chosen to minimize a lateral offset and a color distance between the first point and the second point of each of the plurality of associated point pairs.
In another aspect of the present disclosure, determining the one or more common lane lines further may include identifying a plurality of detected lane lines using the one or more central computers. Each of the plurality of detected lane lines is present in at least one of the first map dataset and the second map dataset. Determining the one or more common lane lines further may include determining a quantity of votes for each of the plurality of detected lane lines based at least in part on the plurality of detected lane lines, the plurality of crowdsourced map datasets, and the plurality of aligned map datasets using the one or more central computers. Determining the one or more common lane lines further may include determining the one or more common lane lines based at least in part on the quantity of votes for each of the plurality of detected lane lines using the one or more central computers. The one or more common lane lines includes one or more of the plurality of detected lane lines having greater than or equal to a predetermined quantity of votes.
In another aspect of the present disclosure, determining the quantity of votes for each of the plurality of detected lane lines further may include determining a first quantity of the plurality of crowdsourced map datasets including the one of the plurality of detected lane lines using the one or more central computers based at least in part on the plurality of aligned map datasets. Determining the quantity of votes for each of the plurality of detected lane lines further may include determining the quantity of votes for the one of the plurality of detected lane lines using the one or more central computers. The quantity of votes is the first quantity.
In another aspect of the present disclosure, determining the fused map dataset further may include generating a first plurality of lateral offset histograms based on the first subset of the plurality of aligned map datasets using the 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 further may include generating a second plurality of lateral offset histograms based on the second subset of the plurality of aligned map datasets using the 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 further may include determining the fused map dataset using the one or more central computers based at least in part on the first plurality of lateral offset histograms and the second plurality of lateral offset histograms.
In another aspect of the present disclosure, determining the fused map dataset further may include calculating a first plurality of probability distribution parameter sets based at least in part on the first plurality of lateral offset histograms using the one or more central computers. 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 dataset further may include calculating a second plurality of probability distribution parameter sets based at least in part on the second plurality of lateral offset histograms using the one or more central computers. 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 dataset further may include 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 using the one or more central computers. Each of the plurality of fused point sets corresponds to one of the one or more common lane lines. Determining the fused map dataset further may include determining the fused map dataset using the one or more central computers. The fused map dataset includes at least the plurality of fused point sets.
According to several aspects, a system for resolving discrepancies in map data is provided. The system may include one or more central computers in wireless communication with one or more vehicles. The one or more central computers are programmed to receive a first map dataset and a second map dataset. Both the first map dataset and the second map dataset represent a predefined geographical area. The predefined geographical area is a segment of a roadway containing one or more lane lines. The one or more central computers are further programmed to receive a plurality of crowdsourced map datasets. Each of the plurality of crowdsourced map datasets represents the predefined geographical area. The one or more central computers are further programmed to generate a plurality of aligned map datasets. The plurality of aligned map datasets includes a first subset and a second subset. The first subset is generated by aligning each of the plurality of crowdsourced map datasets with the first map dataset by executing a map-matching registration algorithm. The second subset is generated by aligning each of the plurality of crowdsourced map datasets with the second map dataset by executing the map-matching registration algorithm. 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 datasets. 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.
In another aspect of the present disclosure, to determine the one or more common lane lines, the one or more central computers are further programmed to identify a plurality of detected lane lines. Each of the plurality of detected lane lines is present in at least one of the first map dataset and the second map dataset. To determine the one or more common lane lines, the one or more central computers are further programmed to determine a quantity of votes for each of the plurality of detected lane lines based at least in part on the plurality of detected lane lines, the plurality of crowdsourced map datasets, and the plurality of aligned map datasets. To determine the one or more common lane lines, the one or more central computers are further programmed to determine the one or more common lane lines based at least in part on the quantity of votes for each of the plurality of detected lane lines. The one or more common lane lines includes one or more of the plurality of detected lane lines having greater than or equal to a predetermined quantity of votes.
In another aspect of the present disclosure, to determine the fused map dataset, the one or more central computers are further programmed to generate a first plurality of lateral offset histograms based on the first subset of the plurality of aligned map datasets. 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 dataset, the one or more central computers are further programmed to generate a second plurality of lateral offset histograms based on the second subset of the plurality of aligned map datasets. 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 dataset, the one or more central computers are further programmed to determine 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.
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.
The drawings described herein are for illustration purposes only and are not intended to limit the scope of the present disclosure in any way.
The following description is merely exemplary in nature and is not intended to limit the present disclosure, application, or uses.
Discrepancies between differing sets of map data may need to be resolved in order to ensure accurate and precise map data for use by vehicle systems such as, for example, advanced driver assistance systems (ADAS), automated driving systems (ADS), and/or the like. Known ground truth map data may be used to reconcile differences between map data sets. However, ground truth data may be sparse and resource intensive to obtain. Therefore, the present disclosure provides a new and improved system and method for resolving discrepancies in map data, involving a voting method for identifying common features.
Referring to
The one or more central computers 20 are used to implement a method 100 for resolving discrepancies in map data, 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 media, and a central computer communication system.
The processor may be a custom made or commercially available processor, a central processing unit (CPU), a graphics processing unit (GPU), an auxiliary processor among several processors associated with the one or more central computers 20, a semiconductor-based microprocessor (in the form of a microchip or chip set), a macroprocessor, a combination thereof, or generally a device for executing instructions.
The computer readable storage device or media may include volatile and nonvolatile storage in read-only memory (ROM), random-access memory (RAM), and keep-alive memory (KAM), for example. KAM is a persistent or non-volatile memory that may be used to store various operating variables while the processor is powered down. The computer-readable storage device or media may be implemented using a number of memory devices such as PROMs (programmable read-only memory), EPROMS (electrically PROM), EEPROMs (electrically erasable PROM), flash memory, or another electric, magnetic, optical, or combination memory devices capable of storing data, some of which represent executable instructions, used by the one or more central computers 20 to perform the method 100.
The central computer communication system is used by the one or more central computers 20 to communicate with other systems external to the one or more central computers 20 (e.g., to establish the wireless communication between one or more central computers 20 and the one or more vehicles 26). For example, the central computer communication system includes capabilities for communication with vehicles (“V2I” communication). In certain embodiments, the central computer communication system is a wireless communication system configured to communicate via a wireless local area network (WLAN) using IEEE 802.11 standards or by using cellular data communication (e.g., using GSMA standards, such as, for example, SGP.02, SGP.22, SGP.32, and the like). Accordingly, the central computer communication system may further include an embedded universal integrated circuit card (eUICC) configured to store at least one cellular connectivity configuration profile, for example, an embedded subscriber identity module (eSIM) profile.
The central computer communication system is further configured to communicate via a personal area network (e.g., BLUETOOTH), near-field communication (NFC), and/or any additional type of radiofrequency communication. Accordingly, 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 communicate information between the one or more vehicles 26 and the one or more central computers 20. Further, the central computer communication system is configured to wirelessly communicate information between the one or more central computers 20 and external communication networks, such as, for example, the internet. It should be understood that the central computer communication system may be integrated with the one or more central computers 20 (e.g., on a same circuit board with the one or more central computers 20 or otherwise a part of the one or more central computers 20) without departing from the scope of the present disclosure.
Referring to
At block 106, the one or more central computers 20 receives a second map dataset. In the scope of the present disclosure, the second map dataset may be obtained from any source, including, for example, global positioning system (GPS) data, image data collected by an on-board camera of a vehicle, a high-speed vehicle telemetry (HSVT) source, satellite image data, and/or data collected from survey vehicles. Some examples of versions of map datasets include, but are not limited to, crowdsourced map data, telemetry-based map data, and aerial map data. After block 106, the method 100 proceeds to block 110, as will be discussed in greater detail below.
At block 108, the one or more central computers 20 receives a plurality of crowdsourced map datasets from the one or more vehicles 26 using the central computer communication system. In the scope of the present disclosure, the plurality of crowdsourced map datasets may differ from the first map dataset and the second map dataset due to, for example, variations in equipment precision/accuracy, changes in road conditions since measurement of the first map dataset and the second map dataset, adverse weather conditions during measurement of the first map dataset, the second map dataset, and/or the plurality of crowdsourced map datasets, and/or the like. After block 108, the method 100 proceeds to block 110.
At block 110, the one or more central computers 20 segments the first map dataset received at block 104, the second map dataset received at block 106, and the plurality of crowdsourced map datasets received at block 108 into a plurality of predefined geographical areas.
Referring to
In an exemplary embodiment, the one or more central computers 20 determine the plurality of points 40 by starting at 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 the predetermined distance along the line string 36. The one or more central computers 20 continue to determine the predetermined points [P3, P4 . . . . Pi] for the entire length of the road segment 32. In the event the last point Pi is disposed at a distance less than the predetermined distance from an end node N2 where the road segment 32 terminates, then the length of the last segment 42 is less than the predetermined distance.
Referring to
Referring to
In the scope of the present disclosure, each of the bounding boxes 50 are considered to be a predefined geographical area. The method 100 iteratively processes each predefined geographical area (i.e., bounding box 50), as will be discussed in greater detail below. The process for segmenting and determining the bounding boxes 50 is performed on each of the first map dataset received at block 104, the second map dataset received at block 106, and each of the plurality of crowdsourced map datasets received at block 108 such that each bounding box 50 represents a same predefined geographical area across each of the first map dataset, the second map dataset, and each of the plurality of crowdsourced map datasets. In other words, a first bounding box of the first map dataset, first bounding box of the second map dataset, and a first bounding box of each of the plurality of crowdsourced map datasets represents a same physical location in the first road network 30a. Referring again to
At block 112, the one or more central computers 20 identify a plurality of detected lane lines in the first map dataset received at block 104 and the second map dataset received at block 106. Each of the plurality of detected lane lines is present in at least one of the first map dataset and the second map dataset. In the scope of the present disclosure, a lane line is a marking disposed (e.g., painted) on a roadway to provide information about a location of lanes of travel on the roadway by delineating the boundaries of lanes of travel on the roadway. In an exemplary embodiment, the plurality of detected lane lines is identified in the first map dataset and the second map dataset using a rule-based algorithm, a machine learning algorithm, a computer vision algorithm, and/or the like. After block 112, the method 100 proceeds to block 116, as will be discussed in greater detail below.
At block 114, the one or more central computers 20 generates a plurality of aligned map datasets. The plurality of aligned map datasets includes a first subset and a second subset. The first subset is generated by aligning each of the plurality of crowdsourced map datasets with the first map dataset. The second subset is generated by aligning each of the plurality of crowdsourced map datasets with the second map dataset. In an exemplary embodiment, each of the plurality of crowdsourced map datasets are aligned with the first map dataset and the second map dataset using a map-matching registration algorithm.
Referring to
The map-matching registration algorithm uses a k-nearest neighbor algorithm to identify sets of closest matched points between each of the first plurality of points 52 and each of the second plurality of points 54, referred to as associated point pairs. Each of the associated point pairs includes a first point and a second point. The first point is one of the first plurality of points 52 and the second point is one of the second plurality of points 54.
Referring to
wherein ƒ is the objective function, dc,i is a color distance for an ith associated point pair of the plurality of associated point pairs, wc is a color weight, and dg,i is a lateral offset for the ith associated point pair of the plurality of associated point pairs.
The color distance is a discrete binary value (i.e., either zero or one) indicating whether a color of two points in the ith associated point pair of the plurality of associated point pairs is the same (e.g., both yellow, both white, and/or the like). If the color is the same, the color distance is zero. If the color is different, the color distance is one. The color weight is a continuous value between zero and one which adjusts a weighting of the color distance in the objective function (Equation 1). The lateral offset is a lateral distance between the first point and the second point of the ith associated point pair of the plurality of associated point pairs.
It should be understood that the objective function Equation 1 may further include additional factors used to increase matching accuracy between point pairs, including, for example, a line type distance and a line type weight. In an exemplary embodiment, the line type distance is a discrete binary value (i.e., either zero or one) indicating whether a line type (e.g., single line, double line, solid line, dashed line, and/or the like) of two points in the ith associated point pair of the plurality of associated point pairs is the same. If the line type is the same, the line type distance is zero. If the line type is different, the line type distance is one. The line type weight is a continuous value between zero and one which adjusts a weighting of the line type distance distance in the objective function (Equation 1).
The result of the map-matching registration algorithm is one of the plurality of aligned map datasets, as shown in
At block 116, the one or more central computers 20 determines a quantity of votes for each of the plurality of detected lane lines identified at block 112. In the scope of the present disclosure, a vote is an indication that a detected lane line is present in one of the plurality of crowdsourced map datasets. In an exemplary embodiment, to determine the quantity of votes for one of the plurality of detected lane lines, the one or more central computers 20 determines a first quantity of the plurality of crowdsourced map datasets including the one of the plurality of detected lane lines. The quantity of votes for the one of the plurality of detected lane lines is considered to be the first quantity of the plurality of crowdsourced map datasets including the one of the plurality of detected lane lines. In a non-limiting example, the plurality of aligned map datasets determined at block 114 are used to identify matching lane lines between the plurality of detected lane lines and the plurality of crowdsourced map datasets. This process is repeated for each of the plurality of detected lane lines to determine the quantity of votes for each of the plurality of detected lane lines. After block 116, the method 100 proceeds to block 118.
At block 118, the one or more central computers 20 determines one or more common lane lines based at least in part on the quantity of votes for each of the plurality of detected lane lines determined at block 116. In an exemplary embodiment, the one or more common lane lines includes one or more of the plurality of detected lane lines having greater than or equal to a predetermined quantity of votes. In a non-limiting example, the predetermined quantity of votes is a simple majority (i.e., fifty percent) of the total votes. It should be understood that the predetermined quantity of votes may be any absolute or relative quantity of votes. After block 118, the method 100 proceeds to block 120.
At block 120, generates a first plurality of lateral offset histograms and a second plurality of lateral offset histograms. 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.
Each of the first plurality of lateral offset histograms includes a first plurality of lateral offsets for one of the one or more common lane lines. Each of the first plurality of lateral offsets is a sum of the lateral offset for each of the plurality of associated point pairs of the first map dataset and one of the plurality of crowdsourced map datasets corresponding to the one of the one or more common lane lines. Therefore, each of the first plurality of lateral offsets is determined from one of the first subset of the plurality of aligned map datasets.
Each of the second plurality of lateral offset histograms includes a second plurality of lateral offsets for one of the one or more common lane lines. Each of the second plurality of lateral offsets is a sum of the lateral offset for each of the plurality of associated point pairs of the second map dataset and one of the plurality of crowdsourced map datasets corresponding to the one of the one or more common lane lines. Therefore, each of the second plurality of lateral offsets is determined from one of the second subset of the plurality of aligned map datasets.
Referring to
Each of the first plurality of lateral offset histograms and the second plurality of lateral offset histograms are also referred to as a sensor noise model. Referring again to
At block 122, the one or more central computers 20 calculates 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 further calculates 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.
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 includes the following, as shown in Equations 2-5:
wherein eh is a Gaussian random variable for the first plurality of points 52, em is a Gaussian random variable for the second plurality of points 54, μh, represents a mean value of the first plurality of lateral offsets, σh2 represents a variance of the first plurality of lateral offsets, μm represents a mean value of the second plurality of lateral offsets, σm2 represents a variance of the second plurality of lateral offsets, ρ represents a correlation coefficient between the first plurality of lateral offsets and the second plurality of lateral offsets, E represents expectation, and Σ represents a covariance matrix between eh and em.
In a non-limiting example, the first plurality of probability distribution parameter sets and the second plurality of probability distribution parameter sets are determined using a maximum likelihood estimation algorithm. In the scope of the present disclosure, the maximum likelihood estimation algorithm implements a method of estimating the parameters of a probability distribution (i.e., the first plurality of lateral offset histograms and the second plurality of lateral offset histograms), given some observed data (i.e., the first plurality of lateral offsets and the second plurality of lateral offsets). After block 122, the method 100 proceeds to block 124.
At block 124, the one or more central computers 20 determines a fused map dataset. In the scope of the present disclosure, the fused map dataset is a fusion of the first map dataset and the second map dataset based at least in part on the plurality of crowdsourced map datasets. The fused map dataset 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.
Referring to
Each node 74 is positioned between two consecutive state vectors sk. The state vectors sk are two-dimensional vectors that are defined by state variables lk, ϕk, where lk represents a position of a respective state vector sk, which is expressed in Cartesian coordinates (xk, yk) and ϕk represents a tangent angle of a respective state vector sk. As explained below, one or more central computers 20 estimate the position li and the tangent angle ϕi for each state vector sk, where the position li and the tangent angle ϕi for each state vector sk represents a fused point of the fused map dataset. As seen in
The first plurality of points 52 are part of a first line curve M(s), where each of the first plurality of points 52 are expressed as first series points om,k=M(sk) for k=1, . . . , N and the second plurality of points 54 are part of a second line curve H(s), where each of the second plurality of points 54 are expressed as second series points oh,k=H(sk) for k=0, . . . , N. Referring to
The one or more central computers 20 determines the lateral offset di and estimates the position lk for the k number of state vectors sk that are part of the discrete random curve 70 based on the lateral offset di and the tangent angle ϕk by minimizing a spatial Kalman filter cost function. It is to be appreciated that the spatial Kalman cost function represents an objective solution that results in determining the best fit solution for estimating the position lk. It is to be appreciated that because the step Δs of the discrete random curve 70 represents a spatial equivalent of the standard time series Δt, a spatial Kalman filtering technique is employed to fuse the first map dataset and the second map dataset together to create the fused map dataset. The spatial Kalman filter cost function is expressed in Equation 6 as:
where {circumflex over (l)}1:k represents an estimated position of the respective state vector sk, μv represents the mean of measurement noise, ϕi represents a tangent angle of a respective state vector sk, qu represents the variance of additive white Gaussian noise, and Σ represents the covariance matrix between eh and em, as discussed above. In a non-limiting example, the mean of the measurement noise μv is determined based on the mean value of the first plurality of lateral offsets μh and the mean value of the second plurality of lateral offsets μm.
It is to be appreciated that the spatial Kalman filter cost function filters the state vectors sk by forward recursion through the discrete random curve 70 (
where {circumflex over (l)}1:N represents an estimated position of the respective state vector sk, the Kalman smoothening function estimates the position lk and the tangent angle ϕx for the N number of state vectors sk that are part of the discrete random curve 70, where the state vectors sk each represent a fused point of the fused map dataset.
It is to be appreciated that the cost of performing the Kalman smoothening function as described in Equation 7 increases cubically with the size of the k number of state vectors sk, and it is required to execute the Kalman smoothing function each time the one or more central computers 20 detects a data point representing a new state vector sk that is introduced to the discrete random curve 70 (
where {tilde over (s)}k represents a predicted state, dk represents a matrix indicating the lateral offset and a longitudinal distance for a respective point of the first plurality of points 52 and the lateral offset and a longitudinal distance for a respective point of the second plurality of points 54, and {tilde over (P)}k−1 represents a covariance matrix.
In summary, the fused map dataset includes only the 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 statistical analysis of differences between the first map dataset, the second map dataset, and the plurality of crowdsourced map datasets. After block 124, the method 100 proceeds to block 126.
At block 126, the one or more central computers 20 determines whether each of the bounding boxes 50 (i.e., predefined geographical areas) segmented at block 110 has been processed by the method 100. If each of the bounding boxes 50 has not been processed, the method 100 returns to block 110 to select another bounding box 50. If each of the bounding boxes 50 has been processed, the method 100 proceeds to enter a standby state at block 128.
In an exemplary embodiment, the one or more central computers 20 repeatedly exits the standby state 128 and restarts the method 100 at block 102. In a non-limiting example, the one or more central computers 20 exits the standby state 128 and restarts the method 100 on a timer, for example, every three hundred milliseconds.
The system and method of the present disclosure offer several advantages. By identifying the common lane lines using the voting method described above, discrepancies between the first map dataset and the second map dataset are resolved based on the plurality of crowdsourced map datasets. Furthermore, the method presented herein for calculating the sensor noise model (i.e., the lateral offset histogram) for each of the bounding boxes 50 is scalable to large road networks, without dependency on ground truth data. The fused map dataset is distributed to the one or more vehicles 26 to improve the operation of advanced driver assistance systems (ADAS), automated driving systems (ADS), and/or the like.
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 be within the scope of the present disclosure. Such variations are not to be regarded as a departure from the spirit and scope of the present disclosure.