Method for detecting road branch point

The method efficiently detects road forks by analyzing positional transition curves from vehicles, eliminating the need for image data and improving detection accuracy and speed.

JP2025071012APending Publication Date: 2025-05-02ROBERT BOSCH GMBH
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2024180718
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-10-18
Filing Date
2024-10-16
Publication Date
2025-05-02

AI Technical Summary

Technical Problem

Existing methods for detecting road forks rely on image data, which can be cumbersome and inefficient, whereas the proposed method utilizes positional transition curves from vehicles to efficiently detect road forks without the need for image data.

Method used

The method involves receiving position data describing the positional transition curves of vehicles passing through road forks, calculating curvature transition curves, and detecting road junctions by analyzing the differentials of these curves, thereby identifying road forks based on changes in curvature.

Benefits of technology

This approach allows for efficient detection of road forks by analyzing positional transition curves, eliminating the need for image data and enhancing the accuracy and speed of road fork identification.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025071012000001_ABST
    Figure 2025071012000001_ABST
Patent Text Reader

Abstract

To provide a method for detecting a road branch point.SOLUTION: The present invention relates to a method for detecting a road branch point, including: a step of receiving position data describing respective position transition curves of a vehicle traveling on a road including a road branch point and passing through the road branch point; a step of calculating the respective curvature transition curves of the position transition curves; a step of calculating the respective derivatives of the curvature transition curves, in particular numerical derivatives, to obtain respective changes in the curvature transition curves over the respective position transition curves; and a step of detecting a road branch point based on the respective calculated derivatives of the curvature transition curves. The present invention also relates to a device, a computer program, and a machine-readable storage medium.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a method, an apparatus, a computer program, and a machine-readable storage medium for detecting a road branch. [Background technology]

[0002] US Patent Application Publication No. 2021 / 0001877 discloses a method for determining track connectivity at traffic junctions for high-resolution maps. US Patent Application Publication No. 2022 / 0057231A1 discloses a method for recognizing map calibration errors.

[0003] US Patent Application Publication No. 2022 / 0383024 discloses a method for recognizing and encoding road intersections based on image data. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] U.S. Patent Application Publication No. 2021 / 0001877 [Patent Document 2] US Patent Application Publication No. 2022 / 0057231A1 [Patent Document 3] U.S. Patent Application Publication No. 2022 / 0383024 Summary of the Invention [Problem to be solved by the invention]

[0005] The object of the present invention is to provide a concept for efficient detection of road branches. [Means for solving the problem]

[0006] This problem is solved by the subject matter of the respective independent claims. Advantageous configurations of the invention are respectively the subject matter of the dependent claims. According to a first aspect, there is provided a method for detecting a road branch, comprising the steps of: receiving position data describing a position transition curve of each vehicle traveling along a road including the road branch and passing through the road branch; calculating a curvature transition curve for each of the position transition curves; calculating a derivative, in particular a numerical derivative, of each of the curvature transition curves in order to obtain a respective change of the curvature transition curve over the respective position transition curve; detecting road forks based on the respective calculated derivatives of the curvature transition curves; A method is provided that includes:

[0007] According to a second aspect, there is provided an apparatus designed to perform all the steps of the method according to the first aspect. According to a third aspect there is provided a computer program comprising instructions which cause a computer to perform a method according to the first aspect when the computer program is executed by a computer, for example by an apparatus according to the second aspect.

[0008] According to a fourth aspect, there is provided a machine-readable storage medium having stored thereon a computer program according to the third aspect. The present invention is based on and includes the recognition that the above problem is solved by detecting a road branch point from a plurality of vehicles that travel on a road including the road branch point and pass the road branch point using the respective position transition curves of the vehicles. In particular, it is contemplated that a curvature transition curvature of each of the position transition curves is calculated. That is, this means that a first derivative of the position transition curve is calculated. Then, a derivative of the curvature transition curve is calculated in order to obtain a respective change of the curvature transition curve over the respective position transition curve. In other words, a second derivative of the position transition curve is calculated respectively. A road branch point is detected based on the respectively calculated derivative of the curvature transition curve.

[0009] By way of background, the change in the curvature transition curve indicates whether the road is curving or straightening again. In other words, the beginning of the road curve and the end of the road curve can therefore be efficiently recognized. Thus, when passing a road branch from different directions, each vehicle will drive a curve. This means that the presence of multiple curves within a defined small region or area strongly suggests the presence of a road branch at that location or within that area. Thus, the road branch can be efficiently detected based on the calculated derivative of the curvature transition curve.

[0010] Therefore, unlike the above-mentioned prior art, the method does not require image data to recognize road branches. It is sufficient to use the respective position transition curves. The position transition curves therefore describe or represent the positions of the vehicle during each of its travels on one or more roads and when it passes through the road branch. The position data is also called trajectory data (sometimes translated into English as "trace data"). Since the data describes the vehicle trajectory traveled by the vehicle, it can be called trajectory data.

[0011] A road junction in this specification is a junction in road traffic. A junction in road traffic is a structural facility used to connect roads. This means that at a road junction, multiple roads intersect and / or one road merges into another road.

[0012] A road branch point is, for example, a road intersection, a roundabout, a junction, an entrance to a general road, a national road, or an expressway, an exit from a general road, a national road, or an expressway, or an interchange.

[0013] In one embodiment of the method it is provided that a road curve is detected based on the respectively calculated derivative of the curvature transition curve and a road branch is detected based on the detected road curve.

[0014] This provides the technical advantage, as already mentioned above, that, for example, road curves can be efficiently detected and, based thereon, road branch points can be efficiently detected.

[0015] Whenever the term "curve" is used in this specification, it is to be understood that this is a road curve, even if not explicitly stated. In one embodiment of the method, it is contemplated that for each road curve, the number of entrances and exits of the road curve are calculated, and road branches are detected based on the calculated number of entrances and exits.

[0016] This provides the technical advantage that, for example, road branches can be detected efficiently. This embodiment is based on the recognition that a road branch typically has a different number of entrances and exits compared to a simple road curve.

[0017] In one embodiment of the method, it is contemplated that when the number of entrances and exits is greater than or equal to three, the road curve is determined to belong to a road branch. This provides a technical advantage, for example, in that road forks can be detected efficiently.

[0018] That is, this means that if a road curve is detected in which the number of entrances and exits is greater than or equal to three, then this road curve is determined to be a road branch, and thus the road branch is efficiently detected.

[0019] A road curve usually has only one exit and one entrance, which means that it is possible to enter the road curve and exit it again. On the other hand, when there is also a third possibility to enter the detected road curve, the curve is thereby necessarily a branch point, since further roads merge or intersect there.

[0020] Therefore, it is possible to efficiently determine whether a detected road curve is a road branch point or not depending on the number of entrances and exits. In one embodiment of the method, it is proposed that detected road curves having anomalous transitions are filtered out and road branches are detected based on the unfiltered road curves.

[0021] This provides the technical advantage that road branch detection can be more reliably achieved, for example by filtering out low likelihood results and therefore not using them to detect the road branch.

[0022] For example, a road curve with a distance between its entrance and exit that is equal to or greater than a predetermined distance threshold has a low likelihood. In one embodiment of the method, it is contemplated that for each (non-filtered) road curve, a polygon representing the respective road curve is calculated and road junctions are detected based on the calculated polygons.

[0023] This provides the technical advantage that, for example, road curves can be efficiently represented and, based on this, road branching points can be efficiently detected. The representation of road curves by polygons allows the corresponding calculations to be performed particularly efficiently.

[0024] The advantage of describing road curves by polygons can be seen in particular in that the polygons only describe the spatial perimeter of the road junctions and therefore make the road junctions independent of a strict reference to the passes used for their detection. This makes it possible, among other things, to also assign other spatially defined structures to the detected road junctions, such as roads (e.g. defined by lines) that run through such polygons.

[0025] In one embodiment of the method, it is provided that for each calculation of the number of entrances and exits of a road curve, the number of entrances and exits of a corresponding polygon is calculated, respectively, and road branching points are detected based on the calculated number of entrances and exits of the corresponding polygon.

[0026] This provides the technical advantage that, for example, road forks can be detected efficiently. The general statements made above in relation to the number of entrances and exits of a road curve apply equally to the number of entrances and exits of a polygon describing the road curve.

[0027] Correspondingly, for example, when the number of entrances and exits of a polygon is greater than or equal to three, the polygon is intended to belong to a road junction. In an embodiment of the method according to the first aspect, it is provided that a respective statistical dispersion of the values ​​of the respectively calculated derivatives of the curvature transition curve is calculated, values ​​of the respectively calculated derivatives of the curvature transition curve that exceed the respective statistical dispersions are calculated, the values ​​that exceed the respective statistical dispersions are grouped into intervals having positive and negative curvature changes, respectively, and the road curve is determined as a pair of immediately consecutive intervals having positive and negative curvature changes, respectively.

[0028] This provides the technical advantage that, for example, curves in the road course can be recognized efficiently. The reason being that in the case of a positive curvature change, it can be assumed that the road is curved, i.e. it is curved. In the case of a negative curvature change, it can be assumed that the curved road becomes straight again in its course.

[0029] In this specification, a curved road means that the road has a curvature in its course, i.e. the road course has a curvature. Straight heading or going straight means that the curved road course becomes straight again.

[0030] In an embodiment of the method according to the first aspect, it is provided that a respective standard deviation of each calculated differential value of the curvature transition curve is calculated and a respective statistical variability is calculated based on the respective standard deviation.

[0031] This provides a technical advantage, for example, in that the respective statistical variances can be calculated efficiently. For example, each statistical variability is the standard deviation of each calculated derivative value of the curvature transition curve.

[0032] In an embodiment of the method according to the first aspect, it is contemplated that each standard deviation is scaled by a predetermined scaling factor other than 1 to obtain a respective scaled standard deviation, and each statistical variation is calculated based on the respective scaled standard deviation.

[0033] This therefore provides the technical advantage that, for example, a specific standard deviation can be adapted, thereby allowing fine-tuning of the detection. However, in production embodiments, this can be deactivated, for example a defined fixed threshold is used.

[0034] For example, the statistical variability is equal to the scaled standard deviation. In an embodiment of the method according to the first aspect, it is contemplated that points are clustered within road curves and corresponding polygons are created to include all points of each cluster.

[0035] This provides technical advantages, for example, in that the corresponding polygons can be created efficiently. Clustering advantageously first enables the creation of defined intersections (usually road forks) since multiple individual detections of possible intersections (usually road forks) based on individual traversals can be stitched together.

[0036] It is contemplated that an embodiment of an apparatus according to the second aspect is programmed to execute a computer program according to the third aspect. The technical functions of the apparatus arise analogously from the corresponding technical functions of the method and vice versa. Accordingly, the method features arise analogously from the corresponding apparatus features and vice versa.

[0037] The method may be carried out, for example, by an apparatus. The method is, for example, a computer-implemented method. In this specification, a location may refer, for example, to latitude and longitude. A location may refer, for example, to altitude, in particular altitude relative to sea level or to mean sea level (Normalnull).

[0038] The embodiments and example embodiments described herein can be combined with each other in any way, even if not explicitly stated. The invention will now be explained in more detail based on preferred exemplary embodiments. [Brief description of the drawings]

[0039] [Figure 1] FIG. 2 is a flow diagram of a method according to a first embodiment. [Diagram 2] FIG. 2 shows an apparatus according to a second embodiment. [Diagram 3] FIG. 10 illustrates a computer program according to a fourth aspect. [Figure 4] 1 is a graph showing a curvature transition curve and a derivative of the curvature transition curve. [Diagram 5] FIG. 5 is an enlarged partial view of the graph from FIG. [Figure 6] FIG. 2 shows a detected road curve belonging to a road branch point. [Figure 7] FIG. 2 shows a detected road curve belonging to a road branch point. [Figure 8] FIG. 2 is a diagram showing detected road branch points. [Figure 9] FIG. 2 is a diagram showing detected road branch points. [Figure 10] FIG. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0040] FIG. 1 shows a method for detecting a road branch, comprising: receiving 101 position data describing a position transition curve of each vehicle traveling along a road including a road branch and passing through the road branch; Step 103 of calculating the curvature transition curves of each of the position transition curves; a step 105 of calculating the derivatives, in particular the numerical derivatives, of each of the curvature transition curves in order to obtain the respective change of the curvature transition curve over the respective position transition curve; Step 107 detects road forks based on the calculated derivatives of the curvature transition curves. 1 shows a flow diagram of a method including:

[0041] For example, with respect to the detected road junction, the location of the detected road junction is determined. The detected road branches are added to, for example, a digital road map. FIG. 2 shows an apparatus 201 designed to carry out all the steps of the method according to the first aspect.

[0042] Figure 3 shows a machine-readable storage medium 301 on which is stored a computer program 303. The computer program 303 comprises instructions which, when the computer program 303 is executed by a computer, cause the computer to perform the method according to the first aspect.

[0043] FIG. 4 shows a graph 401 that represents a curvature transition curve and the derivative of the curvature transition curve over distance, ie, over a position transition curve. On the horizontal axis 403 of the graph 401, the distance traveled by the associated vehicle is plotted in meters. On the vertical axis 405 of the graph 401, the curvature transition curve and the derivative of the curvature transition curve are plotted in arbitrary units.

[0044] The distance, i.e. the distance traveled, can be calculated based on the position data, for example. Reference numeral 407 denotes the curvature transition curve, which has been further smoothed, and the smoothed curvature transition curve is identified with reference numeral 409 .

[0045] Reference numeral 411 indicates the change in the curvature transition curve according to the smoothed curvature transition curve 409 . FIG. 5 shows an expanded view of the graph 401 according to FIG.

[0046] Reference numeral 415 denotes an interval having values ​​with a positive curvature change. Reference numeral 417 denotes a second interval having values ​​with a negative curvature change. Intervals 415, 417 form in each case a pair of immediately successive intervals with respectively positive and negative curvature changes, such that the associated road section represents a curve.

[0047] Near the x-coordinate "1350" there is also a pair of intervals immediately following each other, with positive and negative curvature changes respectively, and so it can be considered as if the relevant road section represents a curve. However, here the distance between the positive and negative intervals is too large, so it was assumed that this traversal is unlikely to occur. The threshold for "too large" can be an adaptable parameter.

[0048] Fig. 6 shows a road map 601 with detected road curves superimposed. For the sake of clarity, not all road curves shown in Fig. 6 are individually numbered. For some, the reference number 603 is used. Correspondingly, the detected road curve 603 belongs to multiple road junctions, which can be calculated from the fact that the number of exits and entrances of the road curve 603 is greater than or equal to three.

[0049] Fig. 7 shows a further road map 701, similar to Fig. 6, on which a number of detected road curves 703 are superimposed. As an example, a roundabout 705 is shown, which is clearly represented by the detected road curves 703. Here, the number of entrances and exits of the detected road curves 703 is, for example, three, and thus the detected road curves 703 can be defined or determined as belonging to a road branch, whereby here a road branch, namely a roundabout 705, is detected.

[0050] Figure 8 shows a further road map 801. Reference numeral 803 denotes a region (sometimes also called a geographical area) within which road junctions 805 have been detected in accordance with the concepts described herein.

[0051] FIG. 9 shows a further road map 901 where, similar to FIG. 8, several geographical regions 903 are marked in which road junctions 905 have been detected in accordance with the concepts described herein.

[0052] FIG. 10 shows a block diagram 1001 that illustrates, by way of example, the concepts described herein. A plurality of trajectory data 1003 is received from a plurality of vehicles that have traveled along a road that includes one or more road branches, where the vehicles have at least partially passed through the road branch. These trajectory data 1003 are position data in this specification.

[0053] According to function block 1005, trajectory data pre-processing is performed. For example, in the trajectory data 1003, data on the curvature angle, i.e. the curvature of the position transition curve, is accumulated. Furthermore, a smoothing of the curvature transition curve is performed. The correspondingly accumulated trajectory data is further processed according to function block 1007. For example, the derivative of the rotation angle with respect to the trajectory data is calculated. Furthermore, for example, an outlier or deviation value of the curvature change is defined as a value of the curvature change that exceeds the standard deviation scaled with a predefined scaling factor of all data. The deviation values ​​are then grouped in order to detect road curves. The detected road curves are then divided into time boxes (in German "Zeitbox" or "Zeitabschnitt") with a length of less than or equal to a user-defined number of seconds.

[0054] The division into time boxes (in English "Timeboxing") is intended to cut the trajectory section representing the passage of a road junction into as unique sections as possible with maximum curvature, so that the polygons generated later by clustering and observing the clusters are narrower and better represent the road junction.

[0055] The detected road curves are further processed according to function block 1009, where the points of the detected road curves are respectively clustered and the clusters are stored. The clusters are then further processed according to function block 1011. The number of entries and exits to the clusters is calculated and clusters with a number less than 3 are filtered out. Additionally, anomalous transitions of the clusters are filtered out. What remains, i.e. what has not been filtered out, are the detected road junctions 1013.

[0056] The concept described herein is particularly based on the recognition that a road junction is a geographical area where multiple roads intersect or one road merges into another. Thus, the roads belonging to a road junction are connected to each other. Thus, road traffic has a much higher curvature in such an area than outside such an area. By identifying and grouping points of the transition curves of vehicles traveling through such an area that have a high curvature angle in the transition curve, the road junction can be efficiently identified and defined.

[0057] The method according to the first aspect may, for example, comprise one or more of the following steps: 1. Data pre-processing: The trajectory data, i.e. the position curve representing the geographical position (latitude, longitude and optionally altitude), are accumulated with data, for example on the rotation angle. This means that for each position, the rotation angle (which can also be called the curvature angle) of the position curve, i.e. the first derivative of the position curve, is calculated. The rotation angle is in particular a discrete approximation of the curvature of the position curve. A value is calculated in particular for each data point, i.e. for each position.

[0058] For example, the (particularly numerical) derivative of the rotation angle, i.e. the curvature change, is calculated for the entire data set, i.e. for all positions. For example, outliers or deviations in curvature change are defined as values ​​of curvature change that exceed, for example, the standard deviation of all the data, i.e., the standard deviation scaled by a predefined scaling factor, and thus these deviations or deviations are identified within the curvature change data or values.

[0059] For example, for each curve, the outliers, i.e., abnormal or deviant values, are grouped into quasi-continuous intervals, in particular with (completely) negative or positive values, using in particular a distance metric, where the term quasi-continuous means that there can be a limited number of missing values ​​between two outliers in an interval.

[0060] For example, a curve is defined as a pair of intervals with outliers grouped according to negative and positive curvature change, respectively. Thus, a curve is specifically defined by a first interval with grouped outliers with positive curvature change, which signals that the road has started to curve, and the curve is further defined by a second interval immediately following the first interval with grouped outliers with negative curvature change, which signals that the road has become straight again. In particular, a road curve is identified by connecting these two intervals using a distance metric. The curve is then divided into time boxes that are no longer than a user-defined number of seconds in length.

[0061] For example, the points within each road curve are clustered, in particular using a standard clustering algorithm, for example by DBSCAN (Density-Based Spatial Clustering of Applications with Noise; in German, Dichtebasierte raeumliche Clusteranalyse mit Rauschen). For example, polygons are created that include all points in each cluster.

[0062] In order to distinguish road curves from road junctions, it is contemplated that, for example, road curves are filtered out based on the number of entrances and exits of the road curve, particularly within the polygon associated with the road curve: a road junction includes three or more entrances and exits, whereas a road curve has only one or two entrances and exits.

[0063] The concept described herein allows in particular to obtain knowledge about the location of road forks. The concept described herein allows in particular to distinguish between roads and road forks. Based on this knowledge and this capability, advantageously, an ADAS system (ADAS stands for Advanced Driver-Assistance System, in German "fortschrittliche Fahrerassistenzsysteme") can navigate better through roads and road forks in both scenarios. The ADAS system can benefit from knowledge about the location of road forks and the distinction between roads and road forks, because based on knowledge about how the driver behavior, described in particular by the position transition curve and the corresponding derivative, differs at the border of road forks, the ADAS system adapts its driving parameters to handle such situations better and more efficiently. [Explanation of symbols]

[0064] 101 Receiving Steps 103 Calculation Step 105 Calculation Steps 107 Detecting Steps 201 Equipment 301 Machine-readable storage medium 303 Computer Programs 401 Graph showing the curvature transition curve and the derivative of the curvature transition curve over the position transition curve 403 Horizontal axis of graph 401 405 Vertical axis of graph 401 407, 409, 411 Reference numbers 415, 417 interval 601 Road map with detected road curves superimposed 603 reference number, (detected) road curve 701 a further road map on which a number of detected road curves 703 are superimposed 703 Multiple Detected Road Curves 801, 901 More Road Maps 803 Reference Number 705, 805, 809, 1013 Road Junction 903 Some geographical areas 1001 Block diagram illustrating the concepts described herein by way of example 1003 Position data, orbital data (multiple) 1005, 1007, 1009, 1011 function blocks

Claims

1. A method for detecting a road branch (705, 805, 809, 1013), comprising: receiving (101) position data (1003) describing respective position transition curves of vehicles traveling on roads including said road junctions (705, 805, 809, 1013) and passing through said road junctions (705, 805, 809, 1013); Calculating (103) a curvature transition curve for each of the position transition curves; Calculating (105) a derivative, in particular a numerical derivative, of each of said curvature transition curves in order to obtain the variation of each of said curvature transition curves over said respective position transition curve, detecting (107) said road branch points (705, 805, 809, 1013) based on said respectively calculated derivatives of said curvature transition curves; The method includes:

2. 2. The method of claim 1, wherein a road curve is detected based on the respectively calculated derivatives of the curvature transition curves, and the road branch (705, 805, 809, 1013) is detected based on the detected road curves.

3. 3. The method of claim 2, wherein for each road curve, a number of entrances and exits of the road curve is calculated, and the road branch (705, 805, 809, 1013) is detected based on the calculated number of entrances and exits.

4. The method of claim 3, wherein a road curve is determined to belong to a road branch (705, 805, 809, 1013) when the number of entrances and exits is greater than or equal to three.

5. 5. The method according to claim 2, wherein detected road curves having abnormal transitions are filtered out and the road branch (705, 805, 809, 1013) is detected based on the unfiltered road curves.

6. The method according to any one of claims 2 to 5, when dependent on claim 5, relating to said unfiltered road curves, wherein for each (unfiltered) road curve a polygon representing said respective road curve is calculated and said road branch points (705, 805, 809, 1013) are detected based on said calculated polygons.

7. The method of claim 6 when dependent on claim 3 or 4, wherein for each of the calculations of the number of entrances and exits of the road curve, respectively, the number of entrances and exits of the corresponding polygon is calculated, and the road branch (705, 805, 809, 1013) is detected based on the calculated number of entrances and exits of the corresponding polygon.

8. 8. The method according to claim 2, wherein a statistical variance of each of the values ​​of the respective calculated derivatives of the curvature transition curve is calculated, values ​​of the respective calculated derivatives of the curvature transition curve that exceed the respective statistical variances are calculated, and values ​​that exceed the respective statistical variances are grouped into intervals (415, 417) having a positive curvature change and a negative curvature change, respectively, and a road curve is determined as a pair of immediately consecutive intervals (415, 417) having a positive and a negative curvature change, respectively.

9. The method of claim 8 , further comprising calculating a standard deviation of each of the values ​​of the respective calculated derivatives of the curvature transition curves, and calculating the respective statistical variations based on the respective standard deviations.

10. 10. The method of claim 9, wherein the respective standard deviations are scaled by a predetermined scaling factor other than one to obtain a respective scaled standard deviation, and the respective statistical variations are calculated based on the respective scaled standard deviations.

11. A method according to any one of claims 2 to 10 when dependent on claim 3 or 4, in which points are clustered within road curves and the corresponding polygons are created to include all points in each cluster.

12. An apparatus (201) designed to perform all the steps of the method according to any one of the claims 1 to 11.

13. A computer program (303) comprising instructions which, when said computer program (303) is executed by a computer, cause said computer to perform the method according to any one of claims 1 to 11.

14. A machine-readable storage medium (301) having stored thereon a computer program (303) according to claim 13.

Citation Information

Patent Citations

  • Determination of lane connectivity at traffic intersections for high definition maps

    US20210001877A1

  • Methods and apparatuses for detecting map calibration errors

    US20220057231A1

  • Method, apparatus, and system for detecting and coding a road stack interchange based on image data

    US20220383024A1