The invention relates to the field of methods for detecting boundaries of traffic lanes for motor vehicles. The invention also relates to the field of methods for determining the position of a vehicle on a road. The invention relates lastly to a motor vehicle equipped with means for implementing such methods.
Traffic lane boundary detection plays an essential role in the development of autonomous vehicles. Correct detection is needed to construct an exact representation of the environment of the vehicle and to make appropriate decisions regarding control of the vehicle. In particular, a false detection of a traffic lane boundary, commonly referred to as a “false positive”, may have harmful consequences such as for example an incorrect orientation of the vehicle or an untimely braking maneuver.
Traffic lane boundaries may take many forms, such as painted lines on the ground, road surface boundaries, barriers, sidewalks, etc. These boundaries are therefore particularly complex to detect. To detect these boundaries, environment detection means such as cameras, radars or lidars are conventionally used. Although these detection means are becoming more and more sophisticated, the data that they provide sometimes contain uncertainties or errors. The complexity of the detection means, which are generally based on neural networks, makes it particularly difficult to understand or analyze false positives. Such defects limit the deployment of autonomous vehicles.
In order to improve traffic lane boundary detection, methods that consist in combining data received by environment detection means with map data are known. Document US20210004017A1 discloses one example of such a method. However, the known methods are still not efficient enough. In particular, they do not always make it possible to avoid the detection of false positives.
A first subject of the invention is a method for detecting a boundary of a traffic lane for a motor vehicle that makes it possible to avoid the detection of false positives.
A second subject of the invention is a detection method that makes it possible to improve the determination of the position of a vehicle on a given road.
The invention relates to a method for detecting a boundary of a traffic lane for a motor vehicle, the method comprising:
The first vectors and the second vectors may be formulated in the same reference frame tied to the vehicle.
Each first vector may comprise:
Each first vector may be determined such that its origin is within a range of the detection means.
The data relating to the uncertainty of each of the first vectors may be computed on the basis of uncertainty values regarding the current positioning and orientation of the vehicle and on the basis of uncertainty values regarding the map data.
The data relating to the uncertainty of each of the second vectors may be computed by the detection means.
The detection method may comprise a step of computing the maximum Mahalanobis distance among the Mahalanobis distances computed between each first vector and each second vector resulting from the orthogonal projection of the first vector under consideration, the step of classifying the second traffic lane boundary as a true positive or as a false positive being carried out on the basis of the computed maximum Mahalanobis distance.
The invention also relates to a method for detecting a plurality of boundaries of traffic lanes for a motor vehicle, the method comprising:
The method for detecting a plurality of boundaries may comprise a step of comparing a type of each boundary of the first set with a type of each boundary of the second set, and, in the step of computing the matrix of Mahalanobis distances, only elements of the matrix that satisfy a type comparison may be computed.
The invention also relates to a method for determining the position of a vehicle on a road, the method comprising:
The invention also relates to a computer program product comprising program code instructions recorded on a computer-readable medium for implementing the steps of the methods as defined above.
The invention also relates to a computer-readable data recording medium on which there is recorded a computer program comprising program code instructions for implementing the methods as defined above.
The invention also relates to a motor vehicle comprising a detection means for detecting the environment of the vehicle, a geolocation means for geolocating the vehicle, a determination means for determining the orientation of the vehicle, a memory or a means for accessing a memory in which map data are recorded, and a computing unit equipped with a data recording medium as defined above.
The detection means 3 may be for example a camera, a radar or a lidar. The detection means 3 may also be formed by the association of one or more cameras, radars or lidars. It is able to detect objects present in the environment of the vehicle, such as for example boundary lines painted on the ground, barriers, sidewalks or even any other form of boundary demarcating edges of a traffic lane. Advantageously, the detection means 3 is an intelligent detection means, that is to say it is able to interpret the signals that it perceives and to transmit data resulting from initial processing of these signals to the computing unit.
The geolocation means 4 is able to provide information regarding the geographical position of the vehicle 1, such as GPS coordinates. It may for example comprise a GPS sensor. The determination means 5 for determining the orientation of the vehicle is able to provide a datum relating to the orientation of the vehicle about an axis perpendicular to the plane on which the vehicle is resting. To simplify the description, it will be considered that the vehicle is resting on horizontal ground. The determination means 5 for determining the orientation of the vehicle is therefore able to provide a datum relating to the orientation of the vehicle about a vertical axis. The datum relating to the orientation of the vehicle may be equal to, or established on the basis of, a heading or azimuth followed by the vehicle. This datum may be provided for example by a GPS sensor, a gyroscope or else by a compass housed on board the vehicle.
The memory 6 is a data recording medium storing high-definition map data. These map data comprise positioning and orientation information regarding the boundaries of traffic lanes in a given territory. Each boundary of a traffic lane may in particular be stored in the form of a plurality of vectors, the composition of which will be described in detail below. The map data may in particular be presented in the form of the ADASISv3 standard. As a variant, the memory 6 could be outside the vehicle 1, the vehicle then comprising a means for accessing this memory, such as for example a 4 G or 5 G communication means. The memory 6 may also be integrated into the computing unit 2.
The computing unit 2 comprises in particular a memory 7 and a microprocessor 8. The memory 7 is a data recording medium on which there is recorded a computer program comprising program code instructions for implementing a boundary detection method according to one embodiment of the invention. The microprocessor 8 is able to execute said computer program.
The detection means 3, the location means 4 and the determination means 5 for determining the orientation of the vehicle are sensors housed on board the vehicle. They are able to provide information with a given uncertainty, or, in other words, with a given resolution. Similarly, the map data recorded in the memory 6 have a given uncertainty. The uncertainty therefore characterizes the precision of the information transmitted. These uncertainties are quantifiable. They may be presented in the form of a covariance matrix specific to each item of information provided by the various sensors, or specific to each map datum. Advantageously, and as will be explained below, these uncertainty values are utilized in the detection method to achieve better detection of said boundaries. It will be assumed hereinafter that the uncertainty associated with each item of information is unbiased and obeys a Gaussian law.
A first reference frame, referred to as global reference frame, which is fixed with respect to the traffic lanes and independent of the vehicle 1, is defined. This first reference frame is formed by the axes X1 and Y1. The axis X1 may for example be oriented along the North-South axis, and the axis Y1 may be oriented along the East-West axis. A second reference frame, referred to as vehicle reference frame, which is tied to the vehicle 1 and formed by the axes X2 and Y2, is also defined. The axis X2 corresponds to the longitudinal axis of the vehicle (that is to say the axis along which the vehicle moves in a straight line). The axis Y2 corresponds to the transverse axis of the vehicle and is perpendicular to the longitudinal axis X2.
The detection means 3 comprises a certain range, represented schematically by a dashed line ZP ahead of the vehicle. The range of the detection means is delimited in particular by a minimum longitudinal range Xmin and a maximum longitudinal range Xmax. In some cases, the minimum longitudinal range may be considered to be equal to zero. The maximum range Xmax may for example be of the order of a few tens of meters or a few hundred meters.
The detection method aims to check whether the detection of a boundary carried out by the detection means 3 corresponds to a true positive (that is to say the detected boundary does actually exist) or to a false positive (that is to say the detected boundary results from an incorrect interpretation of the signals received by the detection means 3 and does not correspond to any real boundary). The various steps of one particular embodiment of this method will now be described.
In a first step E1, the detection means 3 detects the portion of a boundary within its range. It provides digital data characterizing the detected boundary to the computing unit 2 at a preset frequency. The boundary is characterized by a function of the type y=f(x) defined by the detection means 3. In particular, this function is a polynomial function, in particular a third-degree polynomial function. As a variant, the function could be a polynomial function of a different degree, or even any other mathematical function.
For each boundary Mi detected by the detection means 3, these digital data may be transmitted in the following form:
Mi=[c0, c1, c2, c3, xmin, xmax, MΣP,Mtype]
where:
Each boundary is thus defined in the vehicle reference frame by a curve y=P(x), with:
The polynomial function P(x) characterizes the shape of the boundary under consideration. This function is definite for any value of x between Xmin and Xmax. At a given instant, a boundary detected by the detection means 3 is therefore characterized by four coefficients of a polynomial function. Such a way of representing a boundary makes it possible to reduce the amount of data exchanged between the detection means 3 and the computing unit 2 compared to a model in which all points belonging to a boundary would be transmitted to the computing unit 2.
The covariance matrix MΣP may be expressed in the following form:
where σxx, σc0c0, σc1c1, σc2c2, σc3c3 are standard deviation parameters.
In a second step E2, the geolocation means 4 and the determination means 5 for determining the orientation of the vehicle respectively determine the current position and orientation of the vehicle 1, in the global reference frame. They provide digital data to the computing unit 2 at a preset frequency. These digital data may be represented in the following form:
where:
In a third step E3, the measurement uncertainty of the geolocation means 4 and of the determination means 5 for determining the orientation of the vehicle is determined. This uncertainty may be quantified by the geolocation means 4 and the determination means 5 for determining the orientation of the vehicle and transmitted to the computing unit 2. This uncertainty may for example depend on the quality of the GPS signal received by the geolocation means 4, or on any other factor likely to influence the operation of the geolocation means 4 and/or of the determination means 5 for determining the orientation of the vehicle. As a variant, this uncertainty could also be computed by the computing unit 2 or be set to a predetermined value. This uncertainty may be expressed in the form of a covariance matrix OΣM of dimension 3×3, the form of which is as follows:
In a fourth step E4, a plurality of first vectors MXi characteristic of a boundary are determined based on map data and based on data regarding the current position and orientation of the vehicle. Advantageously, the set of first vectors MXi that are determined is circumscribed in a given perimeter around the vehicle. This perimeter, also called e-horizon or electronic horizon, may correspond to the range of the detection means 3. It will therefore be understood that the first vectors come from the map database and are circumscribed in a zone defined by the current position and orientation of the vehicle.
In a fifth step E5, data relating to the uncertainty of each of the first vectors MXi are determined.
More precisely, the memory 6 provides the computing unit 2 with digital data regarding the various boundaries present within a given perimeter around the vehicle. The memory 6 containing the map data may be seen as a sensor housed on board the vehicle and providing information with a given precision. Each boundary is defined by a set of first vectors MXi. The map data therefore provide discrete information for defining each of the boundaries. Each boundary MLI present within a perimeter around the vehicle may be defined in the following form:
where:
Each of the first vectors MXi may be expressed, in the vehicle reference frame, in the following form:
where:
Each covariance matrix Var(OXi) of the set of covariance matrices Var(OXi=1. . . Ni) is a matrix of dimension 3×3 and may be expressed in the following form:
These matrices represent the uncertainty associated with the map data for each vector MXi. This uncertainty may stem from the means used to develop the map data. The data characterizing the uncertainty of the map data are also stored in the memory 6.
Advantageously, the first vectors MXi are formulated in the vehicle reference frame, and the covariance matrices Var(OXi) characterizing the uncertainty of the first vectors MXi are formulated in the global reference frame. Since the map data initially available in the memory 6 are formulated in the global reference frame, the fourth step E4 advantageously comprises a sub-step E41 of computing the first vectors in the vehicle reference frame on the basis of the first vectors expressed in the global reference frame. In this sub-step, each first vector MXi is computed on the basis of the data regarding the position and orientation of the vehicle that were determined in step E2. In particular, the following formula may be used:
where:
The rotation matrix MRo may be expressed as follows:
where θ=OθM and designates the orientation of the vehicle in the global reference frame.
Similarly, the fifth step E5 comprises a sub-step E51 of computing the set of covariance matrices Var(OXi) in the vehicle reference frame. This computing may be carried out using the following formula:
where:
The Jacobian matrix δMXi/δOX6 may be defined by the following formula:
where:
Ultimately, at this stage of the detection method, a vector model of a boundary based on map data is available, on the one hand. The boundary is characterized by a set of first vectors MXi expressed in the vehicle reference frame. Data characterizing the uncertainty of this set of first vectors are also available. This uncertainty is also expressed in the vehicle reference frame.
In a sixth step E6, a plurality of second vectors Fj characteristic of the boundary as identified by the detection means 3 are determined. Each second vector Fj is determined by an orthogonal projection of a vector MXi from the set of first vectors onto the function y=P(x) defined above. In other words, each second vector Fj is determined such that its origin belongs to the function y=P(x), and such that the straight line passing through the origin of the vector Fj and through the origin of the vector MXi is perpendicular to the function y=P(x), and such that the orientation of the vector Fj is equal to the orientation of a tangent to the function y=P(x) at the origin of the vector Fj. It should be noted that the function y=P(x) generally has radii of curvature that are large enough for there to be a single orthogonal projection of the vector MXi onto the function y=P(x). In the very rare hypothesis where there might be multiple possible orthogonal projections of the vector MXi onto the function y=P(x), one of these projections, for example the first projection that is found, may be used arbitrarily, that is to say the search for an orthogonal projection would be stopped as soon as one is found.
The model of the boundary as detected by the detection means 3 is thus discretized. Discretizing this model involves representing each boundary not by a function (which is definite at any point between Xmin and Xmax), but by a finite set of vectors Fj. Each vector Fj locally characterizes a boundary with the coordinates of a point of the boundary in the vehicle reference frame and a component characterizing the orientation of the boundary under consideration at this point. For a given boundary, the vector Fj may therefore be expressed as follows in the vehicle reference frame:
where:
In a seventh step E7, the uncertainty associated with each of the second vectors Fj is determined. Indeed, the uncertainty of the detection means 3 with regard to the detection of each of the boundaries may also be discretized. For each vector F(j), the measurement uncertainty may be computed using the following formula:
where:
In
In an eighth step E8, the Mahalanobis distances between each first vector MXi and each second vector Fj resulting from the orthogonal projection of the first vector MXi under consideration are computed. The computing of a Mahalanobis distance is based not only on the components of the vectors MXi and Fj, but also on the data relating to the uncertainty of these two vectors. The Mahalanobis distance between the vectors Fj and MXi may be computed using the following formula:
where:
The Mahalanobis distance thus computed is a value representative of the similarity between the vector Fj and the vector MXi. This Mahalanobis distance may be computed for each vector MXi the origin of which is within range of the detection means 3.
In a ninth step E9, the maximum Mahalanobis distance among the Mahalanobis distances computed between each first vector of one and the same boundary and each second vector associated with the first vector under consideration is computed. This maximum value is an indicator of the similarity between a boundary as detected by the detection means 3 and a boundary as identified in the map data. The lower the maximum value, the closer the boundary as detected by the detection means 3 will be considered to be to the boundary as identified in the map data. The Mahalanobis distance between a boundary as detected by the detection means 3 and a boundary as identified in the map data may be defined as equal to this maximum value.
In a tenth step E10, the boundary of the traffic lane as detected by the detection means 3 is classified as a true positive or as a false positive on the basis of the maximum distance computed in step E9. To this end, it is possible for example to compare the previously computed maximum value with a predefined threshold, determined in a calibration phase of the method.
As a variant, the classification of the boundary of the traffic lane as detected by the detection means 3 as a true positive or as a false positive could be based on other indicators, which are themselves based on the set of previously computed Mahalanobis distances. For example, a mean value or a minimum value of the set of Mahalanobis distances computed between the vectors MXi and Fj could be compared with a threshold. However, a comparison of the maximum value is easy to implement and allows reliable classification as a true positive or as a false positive.
With reference to
According to a first variant embodiment of the invention, the method P1 as defined by steps E1 to E10 may be executed for each possible pair formed by a boundary of the first set and by a boundary of the second set. If there is a number N1 of boundaries detected by the detection means 3 and a number M1 of boundaries identified in the map data, the method P1 is repeated a number of times equal to N1×M1. Such a variant may require a particularly large amount of computing resources.
According to a second, more advantageous variant embodiment of the invention, the detection method may comprise a step E03 of comparing a type of boundary detected by the detection means 3 with a type of boundary identified in the map data. The method is then implemented only in order to compute the Mahalanobis distance between boundaries of the same type, and possibly between a boundary of any type and a boundary of unknown type. For example, the detection means may detect three boundaries M1, M2 and M3 of the type “painted line on the ground”, of unknown type and of barrier type, respectively. At the same time, the map data may identify three boundaries ML1, ML2 and ML3 of the type “painted line on the ground”, of unknown type and of “barrier” type, respectively. In this case, the method will be used to compute the Mahalanobis distance between the following pairs of boundaries:
The method will not be used to compute the Mahalanobis distance between the following pairs of boundaries:
Implementing this comparison step therefore makes it possible to reduce the number of computing operations executed by the computing unit 2.
Next, in an eleventh step E11, the method P1 as defined by steps E1 to E10 is implemented for each identified pair of boundaries and leads to the determination of a maximum Mahalanobis distance for each of these pairs. Next, in a twelfth step E12, a matrix of Mahalanobis distances between each boundary of the first set and each boundary of the second set is computed, each element of the matrix being equal to the maximum Mahalanobis distance computed by implementing the method P1 with a boundary of the first set of boundaries and a boundary of the second set of boundaries. Of course, assuming that step E03 of comparing the types of boundaries is performed beforehand, only elements of the matrix that satisfy the type comparison as explained above are computed.
Next, in a thirteenth step E13, the boundaries of the second set are classified as a true positive or as a false positive by way of the matrix of Mahalanobis distances, by implementing a nearest neighbor determination algorithm on the matrix of Mahalanobis distances. Such an algorithm is also commonly referred to as a “Global Nearest Neighbor (GNN)” algorithm. It makes it possible to obtain the best possible association between a boundary of the second set and a boundary of the first set.
If it is impossible to associate a boundary of the first set with a boundary of the second set, it is possible to deduce therefrom that the boundary of the first set corresponds to a false positive, that is to say it results from a false detection carried out by the detection means 3.
The method for detecting a plurality of traffic lane boundaries may also be used in a method P3 for determining the position of a vehicle on a road. One embodiment of such a method is illustrated in
In a first step E21, at least two positioning hypotheses for the vehicle are determined. For example, if it is assumed that the vehicle 1 is on a road, such as a freeway, comprising three parallel traffic lanes, a first hypothesis H1 consists in assuming that the vehicle 1 is positioned on the rightmost traffic lane. A second hypothesis H2 consists in assuming that the vehicle 1 is positioned on the central traffic lane. A third hypothesis H3 consists in assuming that the vehicle 1 is positioned on the leftmost traffic lane.
Next, in a second step E22, the above-described method P2 for detecting a plurality of traffic lane boundaries is implemented for each positioning hypothesis H1, H2, H3 for the vehicle. In successive implementations of the method P2, the current position of the vehicle as determined by the geolocation means 4 is modified so as to position the vehicle in accordance with each of the positioning hypotheses. In this case, the determined current position of the vehicle is corrected so as to position the vehicle successively in the center of the right-hand traffic lane, then in the center of the central lane, and then in the center of the left-hand traffic lane. This correction may be made by applying an offset to the component Myi, corresponding to the coordinate, along the axis Y2, of the origin of each vector MXi.
Next, in a third step E23, a precision index is computed on the basis of the number of true positives and false positives determined for each hypothesis H1, H2, H3. For example, the precision index may be computed using the following formula:
where:
The invention provides a method for detecting one or more boundaries of a traffic lane that makes it possible to identify the detection of false positives by the detection means for detecting the environment that is housed on board the vehicle. This detection method may advantageously be implemented in a method for determining the position of a vehicle on a road in order to determine the position of the vehicle with greater reliability.
It should be noted that enumerating terms such as first, second, etc. are intended solely to distinguish between the various steps of the method. These terms do not characterize any order relationship between the various steps, which may be performed in any order provided that the data needed at input are available. The block diagrams shown in
Number | Date | Country | Kind |
---|---|---|---|
2110938 | Oct 2021 | FR | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/EP2022/078053 | 10/10/2022 | WO |