Dynamic obstacle prediction trajectory correction method, electronic equipment and storage medium
By determining the travelable area and static obstacle enclosure box in the frenet coordinate system to correct the dynamic obstacle prediction trajectory, the problem of dynamic obstacle prediction in the prior art is solved, and the real-time and trajectory quality of autonomous driving vehicles are improved.
Patent Information
- Application Number
- CN202510480782.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-16
- Publication Date
- 2025-07-04
AI Technical Summary
The existing trajectory prediction model is difficult to ensure the rationality and safety of the prediction trajectory of dynamic obstacles around autonomous driving vehicles, resulting in dynamic obstacles that may unreasonably cross static obstacles, affecting the safety and smoothness of autonomous driving vehicles.
By obtaining the initial predicted trajectory of dynamic obstacles around the autonomous driving vehicle, the travelable area and static obstacle enclosure box are determined in the frenet coordinate system, and whether a collision occurs, and the predicted trajectory of dynamic obstacles is corrected based on the travelable area and static obstacle enclosure box, their longitudinal and lateral positions are optimized, and the rationality and quality of the predicted trajectory are improved.
It improves the real-time performance of autonomous driving vehicles and the rationality of predicted trajectories, avoids unnecessary corrections, and ensures the safety and smoothness of the autonomous driving system.
Smart Images

Figure CN120246013A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of autonomous driving technology, and in particular, to a method for correcting a predicted trajectory of a dynamic obstacle, an electronic device, and a storage medium. Background Art
[0002] Trajectory prediction utilizes a high-precision map output by an environment perception module and dynamic and static obstacle information, and predicts the future trajectories of dynamic obstacles around an autonomous driving vehicle based on rules or machine learning and deep learning models, so as to ensure safe and reasonable decision-making and planning of the autonomous driving vehicle in a complex dynamic environment.
[0003] There are many types of obstacles around an autonomous driving vehicle, and there are large differences in their motion patterns, and there are complex interaction relationships between obstacles. Both rule-driven and data-driven trajectory prediction models are difficult to ensure the output of high-quality predicted trajectories of dynamic obstacles. For example, there are many situations where the predicted trajectories of dynamic obstacles unreasonably cross static obstacles, which will seriously affect the safety and smoothness of autonomous driving vehicles. Summary of the Invention
[0004] To solve the above technical problems or at least partially solve the above technical problems, embodiments of the present disclosure provide a method for correcting a predicted trajectory of a dynamic obstacle, an electronic device, and a storage medium, which only corrects the predicted trajectory of a dynamic obstacle that affects the driving of an autonomous driving vehicle, improves real-time performance, and decouples the longitudinal and lateral directions of the correction of the predicted trajectory of the dynamic obstacle by combining the bounding boxes of each static obstacle in the drivable area, thereby improving rationality and the quality of the corrected predicted trajectory.
[0005] In a first aspect, embodiments of the present disclosure provide a method for correcting a predicted trajectory of a dynamic obstacle, the method including:
[0006] Obtaining an initial predicted trajectory of a dynamic obstacle around an autonomous driving vehicle;
[0007] When it is predicted that the dynamic obstacle affects the driving of the autonomous driving vehicle, perform:
[0008] Determining a drivable area when the dynamic obstacle bypasses static obstacles around it in a frenet coordinate system constructed based on the initial predicted trajectory;
[0009] Determining a bounding box of a static obstacle around the dynamic obstacle in the frenet coordinate system according to the drivable area;
[0010] Based on the static obstacle bounding box, determine whether the dynamic obstacle collides with any of the static obstacles when moving along the initial predicted trajectory. If so, determine the end position of the corrected predicted trajectory of the dynamic obstacle according to the static obstacle bounding box and the drivable area;
[0011] Optimize the initial predicted trajectory according to the starting position of the initial predicted trajectory, the end position of the corrected predicted trajectory, the static obstacle bounding box, and the drivable area to obtain the corrected predicted trajectory of the dynamic obstacle.
[0012] In a second aspect, an embodiment of the present disclosure further provides an electronic device, which includes: one or more processors; a storage device for storing one or more programs; when the one or more programs are executed by the one or more processors, the one or more processors implement the dynamic obstacle predicted trajectory correction method as described above.
[0013] In a third aspect, an embodiment of the present disclosure further provides a computer-readable storage medium, on which a computer program is stored, and when the program is executed by a processor, the dynamic obstacle predicted trajectory correction method as described above is implemented.
[0014] A method for correcting a predicted trajectory of a dynamic obstacle provided by an embodiment of the present disclosure obtains an initial predicted trajectory of a dynamic obstacle around an autonomous vehicle. When it is determined that the dynamic obstacle affects the driving of the autonomous vehicle, the initial predicted trajectory of the dynamic obstacle is corrected, avoiding unnecessary correction processing to ensure the real-time performance of the autonomous driving system. Furthermore, in the frenet coordinate system constructed based on the initial predicted trajectory, a drivable area when the dynamic obstacle bypasses static obstacles around it is determined; according to the drivable area, a static obstacle bounding box of the static obstacles around the dynamic obstacle in the frenet coordinate system is determined. According to the static obstacle bounding box, it is judged whether a collision occurs with any static obstacle when the dynamic obstacle moves along the initial predicted trajectory. If so, according to the static obstacle bounding box and the drivable area, the longitudinal position of the end position of the corrected predicted trajectory of the dynamic obstacle in the frenet coordinate system is determined; furthermore, according to the longitudinal position of the starting position of the initial predicted trajectory in the frenet coordinate system, the longitudinal position of the end position of the corrected predicted trajectory, the static obstacle bounding box, and the drivable area, the initial predicted trajectory is optimized to obtain a lateral position sequence of the dynamic obstacle in the frenet coordinate system, and then the corrected predicted trajectory is determined; by only correcting the predicted trajectory of the dynamic obstacle that affects the driving of the autonomous vehicle, the real-time performance of autonomous driving is improved, and the longitudinal and lateral decoupling of the predicted trajectory correction of the dynamic obstacle is combined with the static obstacle bounding boxes in the drivable area, improving the rationality of the predicted trajectory correction and the quality of the predicted trajectory. BRIEF DESCRIPTION OF THE DRAWINGS
[0015] In combination with the accompanying drawings and with reference to the following specific embodiments, the above and other features, advantages, and aspects of the embodiments of the present disclosure will become more apparent. Throughout the drawings, the same or similar reference numerals denote the same or similar elements. It should be understood that the drawings are schematic, and the original elements and elements are not necessarily drawn to scale.
[0016] Figure 1 It is a flowchart of a method for correcting a predicted trajectory of a dynamic obstacle in an embodiment of the present disclosure;
[0017] Figure 2 It is a schematic diagram of a process for correcting a predicted trajectory of a dynamic obstacle in an embodiment of the present disclosure;
[0018] Figure 3 It is a schematic structural diagram of a device for correcting a predicted trajectory of a dynamic obstacle in an embodiment of the present disclosure;
[0019] Figure 4 It is a schematic structural diagram of an electronic device in an embodiment of the present disclosure. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0020] Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although some embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. On the contrary, these embodiments are provided to more thoroughly and completely understand the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are only for exemplary purposes and are not used to limit the protection scope of the present disclosure.
[0021] It should be noted that the concepts such as "first" and "second" mentioned in the present disclosure are only used to distinguish different devices, modules or units, and are not used to define the order of functions executed by these devices, modules or units or their interdependent relationships.
[0022] The names of the messages or information exchanged between multiple devices in the embodiments of the present disclosure are only for illustrative purposes and are not used to limit the scope of these messages or information.
[0023] The embodiments of the present disclosure provide a method for correcting the predicted trajectory of dynamic obstacles, which only corrects the predicted trajectory of dynamic obstacles that affect the driving of an autonomous vehicle, improves real-time performance, and decouples the longitudinal and lateral directions of the correction of the predicted trajectory of dynamic obstacles in the frenet coordinate system by combining the bounding boxes of each static obstacle in the drivable area, thereby improving the rationality and the quality of the corrected predicted trajectory.
[0024] Figure 1 It is a flowchart of a method for correcting the predicted trajectory of dynamic obstacles in the embodiments of the present disclosure. This method can be executed by a device for correcting the predicted trajectory of dynamic obstacles, and this device can be implemented in a software and / or hardware manner and can be configured in an electronic device. As Figure 1 shown, the method can specifically include the following steps:
[0025] S110. Obtain the initial predicted trajectory of the dynamic obstacles around the autonomous vehicle.
[0026] Among them, the autonomous vehicle is the vehicle currently performing the correction of the predicted trajectory of dynamic obstacles. The dynamic obstacles around the autonomous vehicle are the obstacles in motion within a certain range near the autonomous vehicle. The initial predicted trajectory is the preliminary prediction result of the future trajectory of the dynamic obstacle, and can be the trajectory output by the upstream prediction module.
[0027] Specifically, the obstacles in motion within a certain range of the autonomous vehicle can be used as the dynamic obstacles around the autonomous vehicle, and the prediction module is used to predict the motion trajectories of these dynamic obstacles. Therefore, the motion trajectories of these dynamic obstacles can be obtained from the prediction module as the initial predicted trajectory, which is the basis for the subsequent correction of the predicted trajectory.
[0028] Based on the above example, after obtaining the initial predicted trajectory of the dynamic obstacles around the autonomous vehicle, it is also possible to predict whether each dynamic obstacle will affect the driving of the autonomous vehicle. Specifically, it can be as follows:
[0029] Determine the closest distance between the two trajectories according to the planned trajectory of the autonomous vehicle at the previous moment and the initial predicted trajectory of the dynamic obstacle;
[0030] If the closest distance is greater than the preset distance threshold, it is predicted that the dynamic obstacle does not affect the driving of the autonomous vehicle;
[0031] If the closest distance is less than or equal to the preset distance threshold, it is predicted that the dynamic obstacle affects the driving of the autonomous vehicle.
[0032] Among them, the planned trajectory is the trajectory obtained by performing motion planning on the autonomous vehicle. The closest distance is the distance between the position points with the closest distance between the planned trajectory and the initial predicted trajectory. The preset distance threshold is a preset distance value used to predict whether a dynamic obstacle will affect the driving of the autonomous vehicle.
[0033] Specifically, obtain the planned trajectory of the autonomous vehicle at the previous moment. For each dynamic obstacle, discretize the planned trajectory and the initial predicted trajectory of the dynamic obstacle into piecewise broken lines respectively, and use the distance between the position points with the closest distance between the two piecewise broken lines as the closest distance between the two trajectories. Furthermore, judge the size relationship between the closest distance and the preset distance threshold. If the closest distance is greater than the preset distance threshold, it means that the two trajectories are far apart, and it is determined that the future movement of the dynamic obstacle has no impact on the driving task of the autonomous vehicle, that is, it is predicted that the dynamic obstacle does not affect the driving of the autonomous vehicle, and there is no need to correct the initial predicted trajectory of the dynamic obstacle subsequently. If the closest distance is less than or equal to the preset distance threshold, it means that the two trajectories are close, and it is predicted that the dynamic obstacle affects the driving of the autonomous vehicle, and subsequent correction of the initial predicted trajectory is required.
[0034] The above example introduces a selective post-processing mechanism for the predicted trajectory of dynamic obstacles based on task association, and only corrects the initial predicted trajectory of dynamic obstacles associated with the driving task of the autonomous vehicle (dynamic obstacles that affect the driving of the autonomous vehicle), improving the quality of the predicted trajectory while ensuring the real-time performance of the autonomous driving system.
[0035] S120. When it is predicted that a dynamic obstacle affects the driving of the autonomous vehicle, in the frenet coordinate system constructed with the initial predicted trajectory, determine the drivable area when the dynamic obstacle bypasses the surrounding static obstacles.
[0036] Among them, the drivable area is the maximum area that can be driven when a dynamic obstacle bypasses the surrounding static obstacles.
[0037] Specifically, for each dynamic obstacle, when it is predicted that the dynamic obstacle affects the driving of the autonomous vehicle, taking the initial predicted trajectory of the dynamic obstacle as the longitudinal axis (s-axis) of the frenet coordinate system and the position of the dynamic obstacle at the current moment as the origin of the coordinate system, a frenet coordinate system is established. In the constructed frenet coordinate system, in combination with the maximum range of the vehicle's lateral deviation from the initial predicted trajectory in the lateral direction, the drivable area when the dynamic obstacle bypasses the surrounding static obstacles is determined.
[0038] Based on the above example, the drivable area when a dynamic obstacle bypasses the surrounding static obstacles can be determined in the frenet coordinate system constructed with the initial predicted trajectory in the following way:
[0039] Determine the maximum lateral offset of the dynamic obstacle;
[0040] In the frenet coordinate system constructed with the initial predicted trajectory, determine the drivable area according to the width of the dynamic obstacle, the maximum lateral offset, and the length of the initial predicted trajectory.
[0041] Among them, the maximum lateral offset is the maximum value that can be offset in the lateral direction preset for the dynamic obstacle. For example, the maximum lateral offset can be related to the type and speed of the dynamic obstacle, and a corresponding relationship table between the type and speed of the dynamic obstacle and the maximum lateral offset can be established, etc.
[0042] Specifically, the maximum lateral offset of the preset dynamic obstacle can be obtained, or the maximum lateral offset of the dynamic obstacle can be determined by looking up a table in combination with the type of the dynamic obstacle and the speed at the current moment. In the frenet coordinate system constructed with the initial predicted trajectory, the lateral range of the drivable area is constructed according to the width and the maximum lateral offset of the dynamic obstacle, and the longitudinal range of the drivable area is constructed according to the length of the initial predicted trajectory of the dynamic obstacle. Accordingly, the drivable area can be obtained.
[0043] Exemplarily, Figure 2 is a schematic diagram of a dynamic obstacle prediction trajectory correction process in an embodiment of the present disclosure. The length of the dynamic obstacle can also be considered when constructing the longitudinal range of the drivable area. For example, the maximum lateral offset of a certain dynamic obstacle is l offset , the width is w obj , the length is l obj , and the length of the corresponding initial predicted trajectory is s max, then, in the frenet coordinate system constructed based on the initial predicted trajectory, the drivable area Area roi can be expressed as: and the schematic diagram of the drivable area is as shown in Figure 2 .
[0044] S130. Determine the static obstacle bounding box of the static obstacles around the dynamic obstacle in the frenet coordinate system according to the drivable area.
[0045] Among them, the static obstacle bounding box is the bounding box formed by the maximum longitudinal position, the minimum longitudinal position, the maximum lateral position, and the minimum lateral position of the vertices of the static obstacle polygon in the frenet coordinate system. It can be a rectangular bounding box. It can be understood that the static obstacle bounding box can completely contain the static obstacle polygon, as shown in Figure 2 .
[0046] Specifically, project each static obstacle around the autonomous vehicle onto the frenet coordinate system to obtain multiple bounding boxes, and use the bounding boxes that intersect with the drivable area as the static obstacle bounding boxes.
[0047] Based on the above example, the static obstacle bounding box of the static obstacles around the dynamic obstacle in the frenet coordinate system can be determined by the following method according to the drivable area:
[0048] Determine the candidate obstacle bounding box of the static obstacles around the autonomous vehicle in the frenet coordinate system constructed based on the initial predicted trajectory;
[0049] Determine the candidate obstacle bounding box that intersects with the drivable area as the static obstacle bounding box of the static obstacles around the dynamic obstacle in the frenet coordinate system constructed based on the initial predicted trajectory.
[0050] Among them, the candidate obstacle bounding box is a rectangular bounding box formed by the maximum longitudinal position, the minimum longitudinal position, the maximum lateral position, and the minimum lateral position of the static obstacle polygon around the autonomous vehicle in the frenet coordinate system.
[0051] Specifically, project each static obstacle around the autonomous vehicle into the frenet coordinate system constructed based on the initial predicted trajectory, determine the maximum longitudinal position, minimum longitudinal position, maximum lateral position, and minimum lateral position after the projection of each static obstacle, and construct a candidate obstacle bounding box corresponding to each static obstacle, which can be a rectangular bounding box. For each candidate obstacle bounding box, determine whether there is an intersection between the candidate obstacle bounding box and the drivable area. If so, use the candidate obstacle bounding box as the static obstacle bounding box of the static obstacles around the dynamic obstacle in the frenet coordinate system constructed based on the initial predicted trajectory.
[0052] S140. According to the static obstacle bounding box, determine whether the dynamic obstacle collides with any static obstacle when moving along the initial predicted trajectory. If so, determine the end position of the corrected predicted trajectory of the dynamic obstacle based on the static obstacle bounding box and the drivable area.
[0053] Among them, the end position is the cut-off position of the dynamic obstacle in the longitudinal direction after the prediction trajectory is corrected.
[0054] Specifically, in the frenet coordinate system constructed based on the initial predicted trajectory, construct the lateral range of the collision area according to the width of the dynamic obstacle, and construct the longitudinal range of the collision area according to the length of the initial predicted trajectory of the dynamic obstacle. Based on this, the collision area can be obtained, as Figure 2 shown. For each static obstacle bounding box, it can be determined whether there is an intersection between the static obstacle bounding box and the collision area. If there is, it is determined that the dynamic obstacle collides with the static obstacle when moving along the initial predicted trajectory. Furthermore, starting from the position where the collision with the static obstacle occurs, and judging in the order from the closest to the farthest longitudinal distance from the dynamic obstacle, whether there is a detour space within the drivable area. If there is, continue to judge further away. If not, use the position where the collision occurs as the end position of the corrected predicted trajectory of the dynamic obstacle.
[0055] Exemplarily, the width of a certain dynamic obstacle is w obj , and the length is l obj , and the length of the corresponding initial predicted trajectory is s max , then, in the frenet coordinate system constructed based on the initial predicted trajectory, the collision area Area conflict is expressed as: It is understandable that when the static obstacle bounding box appears within the collision area of the dynamic obstacle, the dynamic obstacle may take two measures: one is to correct the initial predicted trajectory of the dynamic obstacle when it can detour within the drivable area to detour around the corresponding static obstacle, and the other is to decelerate to a stationary state when approaching the corresponding static obstacle when it cannot detour within the drivable area.
[0056] Based on the above example, the end position of the corrected predicted trajectory of the dynamic obstacle can be determined in the following way according to the static obstacle bounding box and the drivable area:
[0057] Determine a discrete position sequence from the starting position and the end position of the initial predicted trajectory;
[0058] According to the initial predicted trajectory of the dynamic obstacle, the static obstacle bounding box, and the drivable area, judge in turn whether the dynamic obstacle is passable at each discrete position in the discrete position sequence in the order from near to far from the starting position;
[0059] If the dynamic obstacle is not passable at a discrete position, take the discrete position as the end position of the corrected predicted trajectory and stop the judgment;
[0060] If the dynamic obstacle is passable at each discrete position, retain the end position of the initial predicted trajectory as the end position of the corrected predicted trajectory.
[0061] Among them, the starting position can be the current position of the dynamic obstacle, and the end position is the farthest position of the initially predicted trajectory obtained by prediction. The discrete positions are the positions determined at a fixed distance step between the starting position and the end position of the initial trajectory. The discrete position sequence is the sequence composed of each discrete position.
[0062] Specifically, between the starting position and the end position of the initial predicted trajectory, multiple discrete positions are obtained at a fixed distance step, and these discrete positions form a discrete position sequence. Judging in turn whether the dynamic obstacle is passable at the discrete positions in the discrete position sequence in the order from near to far from the starting position can be directly passable, or can detour within the drivable area. If it is passable, judge the discrete position adjacent to and farther from the starting position than this discrete position until it is not passable at a certain discrete position, or until it is passable at each discrete position. If the dynamic obstacle is not passable at a discrete position, take this discrete position as the end position of the corrected predicted trajectory and stop the subsequent judgment of the discrete positions farther from the starting position. If the dynamic obstacle is passable at each discrete position, there is no need to correct in the longitudinal direction, and retain the end position of the initial predicted trajectory as the end position of the corrected predicted trajectory.
[0063] Based on the above example, the following method can be used to sequentially determine whether a dynamic obstacle is passable at each discrete position in the discrete position sequence according to the initial predicted trajectory of the dynamic obstacle, the static obstacle bounding box, and the drivable area, in the order from near to the starting position to far from the starting position:
[0064] Sequentially for each discrete position in the discrete position sequence, in the order from near to the starting position to far from the starting position, determine whether there is a collision with any static obstacle bounding box when the dynamic obstacle is at the discrete position;
[0065] If there is no collision, it is determined that the dynamic obstacle is passable at the discrete position;
[0066] If there is a collision, take each static obstacle bounding box whose longitudinal position of the bounding box is within the corresponding longitudinal range of the dynamic obstacle bounding box as each target static obstacle bounding box, and determine the occupied interval corresponding to the discrete position according to each target static obstacle bounding box and the width of the dynamic obstacle. According to the occupied interval, the lateral range corresponding to the drivable area, and the width of the dynamic obstacle, determine whether there is a passable space in the drivable area for the dynamic obstacle to bypass the static obstacle bounding box with which there is a collision. If there is a passable space, it is determined that the dynamic obstacle is passable at the discrete position. If there is no passable space, it is determined that the dynamic obstacle is not passable at the discrete position, and the judgment is stopped.
[0067] Among them, the dynamic obstacle bounding box is the bounding box obtained by projecting the dynamic obstacle onto the frenet coordinate system. The corresponding longitudinal range of the dynamic obstacle bounding box is the position area between the longitudinal minimum value and the longitudinal maximum value of the dynamic obstacle bounding box at the discrete position. Exemplarily, when the dynamic obstacle is at the discrete position (the longitudinal position of the discrete position is s k ), its occupied area is Among them, l obj and w obj are the length and width of the dynamic obstacle respectively. The target static obstacle bounding box is each static obstacle bounding box whose longitudinal position of the bounding box is within the corresponding longitudinal range of the dynamic obstacle bounding box. It can be understood that each static obstacle bounding box that needs to be considered when the dynamic obstacle makes a detour at the discrete position. The occupied interval is each lateral interval in the drivable area where the dynamic obstacle cannot pass.
[0068] Specifically, in the order from near to far from the starting position, for each discrete position in the discrete position sequence, it is determined whether there is a collision with any static obstacle bounding box when the dynamic obstacle is at the discrete position, that is, whether there is an intersection between the static obstacle bounding box and the dynamic obstacle bounding box of the dynamic obstacle. If there is no collision, it means that the dynamic obstacle can continue to travel along the initial predicted trajectory. Therefore, it is determined that the dynamic obstacle is passable at this discrete position. If there is a collision, it is necessary to further determine whether the dynamic obstacle can complete a detour within the drivable area. Compare in turn whether the longitudinal positions of the bounding boxes of each static obstacle bounding box are within the corresponding longitudinal range of the dynamic obstacle bounding box. If so, take this static obstacle bounding box as the target static obstacle bounding box for subsequent judgment. Take the lateral range of each target static obstacle bounding box as the occupied interval, and when the adjacent occupied intervals cannot accommodate the passage of the dynamic obstacle, merge the adjacent occupied intervals to obtain one or more occupied intervals. Furthermore, in combination with the width of the dynamic obstacle, it is determined whether there is a space for the dynamic obstacle to travel within the lateral range of the drivable area excluding each occupied interval within the corresponding longitudinal range of the dynamic obstacle bounding box, that is, whether there is a passable space for the dynamic obstacle to bypass the static obstacle bounding box with which there is a collision within the drivable area. If there is a passable space, it is determined that the dynamic obstacle is passable at this discrete position. If there is no passable space, it is determined that the dynamic obstacle is not passable at this discrete position, and the subsequent judgment processes are stopped. The longitudinal position of the discrete position determined to be non-passable is the longitudinal position of the end point of the corrected predicted trajectory, and its lateral position is 0.
[0069] Based on the above example, the occupied interval corresponding to the discrete position can be determined by the following method according to each target static obstacle bounding box and the width of the dynamic obstacle:
[0070] Take the lateral range of each target static obstacle bounding box as the occupied interval, and sort each occupied interval based on the first endpoint of each occupied interval;
[0071] If there is an intersection between two adjacent occupied intervals after sorting, merge the two adjacent occupied intervals with an intersection into a new occupied interval;
[0072] If there is no intersection between two adjacent occupied intervals after sorting but the lateral distance between the two adjacent occupied intervals is less than the width of the dynamic obstacle, merge the two adjacent occupied intervals without an intersection into a new occupied interval;
[0073] If the lateral distance between two adjacent occupied intervals after sorting is greater than or equal to the width of the dynamic obstacle, retain the two adjacent occupied intervals without an intersection.
[0074] Among them, the lateral range of the target static obstacle bounding box is the range occupied by the target static obstacle bounding box in the lateral direction at the longitudinal coordinate corresponding to the discrete position. The first endpoint is the left boundary point in the lateral range, that is, the endpoint with a smaller value in the lateral range. The lateral spacing is the spacing between the second endpoint of the occupancy interval with a smaller first endpoint and the first endpoint of the occupancy interval with a larger first endpoint. The second endpoint is the right boundary point in the lateral range, that is, the endpoint with a larger value in the lateral range.
[0075] Specifically, for each target static obstacle bounding box, the lateral range corresponding to its discrete position is used as the occupancy interval of the target static obstacle bounding box. The left boundary points of the occupancy intervals are used as the first endpoints, and the occupancy intervals are sorted in ascending order according to the first endpoints (descending order is also possible, which will not be elaborated here). If there is an intersection between two adjacent occupancy intervals after sorting, then the space between these two adjacent occupancy intervals cannot be passed by the dynamic obstacle. Therefore, the two adjacent occupancy intervals with an intersection are merged into a new occupancy interval, and the judgment continues. If there is no intersection between two adjacent occupancy intervals after sorting but the lateral spacing between the two adjacent occupancy intervals is less than the width of the dynamic obstacle, it means that the gap between the two adjacent occupancy intervals is small and cannot provide space for the dynamic obstacle to pass. Therefore, the two adjacent occupancy intervals with no intersection are merged into a new occupancy interval. If the lateral spacing between two adjacent occupancy intervals after sorting is greater than or equal to the width of the dynamic obstacle, it means that the dynamic obstacle can pass through the space between these two adjacent occupancy intervals. Therefore, the two adjacent occupancy intervals with no intersection are retained.
[0076] Exemplarily, calculate all static obstacle bounding boxes whose longitudinal positions are within the longitudinal range corresponding to the dynamic obstacle bounding box as the target static obstacle bounding boxes. The lateral ranges of the target static obstacle bounding boxes in the drivable area are [l min (Polygon i ), l max (Polygon i )], which are used as the occupancy intervals. Among them, s k is the longitudinal position of the current discrete position, l obj is the length of the dynamic obstacle, l min (Polygon i ) is the first endpoint (left boundary) of the occupancy interval, l max (Polygon i ) is the second endpoint (right boundary) of the occupancy interval, Polygon iis the bounding box of the i-th target static obstacle. The occupancy intervals corresponding to each target static obstacle bounding box are sorted in ascending order according to the first endpoint, and the obtained set of occupancy intervals is denoted as: {[l min (Polygon k ),l max (Polygon k )]}, k = 1, 2, …, N static , where N static is the number of target static obstacle bounding boxes whose longitudinal positions are between the longitudinal ranges of the dynamic obstacle bounding box. Furthermore, according to a specific merging rule, the occupancy intervals in the above set are merged to obtain several non-overlapping new occupancy intervals: Rule 1: If two adjacent occupancy intervals cross, or do not cross but the lateral spacing between the two adjacent occupancy intervals is less than the width of the dynamic obstacle, then the two adjacent occupancy intervals are merged into a new occupancy interval, that is, the left boundary of the merged new occupancy interval is the minimum value of the left boundaries of the original two adjacent occupancy intervals, and the right boundary of the merged new occupancy interval is the maximum value of the right boundaries of the original two adjacent occupancy intervals. For example: The original two adjacent occupancy intervals are [0, 1] and [0.5, 2], and the width of the dynamic obstacle is 0.5. It can be seen that the two adjacent occupancy intervals cross, so the merged new occupancy interval is [0, 2]. Rule 2: If two adjacent occupancy intervals do not cross and the lateral spacing is greater than the width of the dynamic obstacle, then the original two adjacent occupancy intervals are still retained. For example: The original two adjacent occupancy intervals are [0, 1], [2, 3], the width of the dynamic obstacle is 0.5, the original two adjacent occupancy intervals do not cross, and the lateral spacing is 2 - 1 = 1. Since 1 > 0.5, it can be seen that the lateral spacing is greater than the width of the dynamic obstacle, so the original two adjacent occupancy intervals [0, 1], [2, 3] are retained.
[0077] Based on the above example, the following method can be used to determine whether there is a passable space for the dynamic obstacle to bypass the static obstacle bounding box with collision according to the occupancy interval, the lateral range corresponding to the drivable area, and the width of the dynamic obstacle:
[0078] If there is no intersection between any two adjacent occupancy intervals and the lateral spacing between the two adjacent occupancy intervals is greater than or equal to the width of the dynamic obstacle, then there is a passable space for the dynamic obstacle at the discrete position;
[0079] If the minimum spacing between any occupancy interval and the first endpoint and / or the second endpoint of the lateral range corresponding to the drivable area is greater than or equal to the width of the dynamic obstacle, then there is a passable space for the dynamic obstacle at the discrete position.
[0080] Among them, the lateral range corresponding to the drivable area is the coverage range of the drivable area in the lateral direction. The minimum distance corresponding to the first endpoint is the difference between the first endpoint of the occupied section and the first endpoint of the drivable area, and the minimum distance corresponding to the second endpoint is the difference between the second endpoint of the occupied section and the second endpoint of the drivable area.
[0081] Specifically, if any two adjacent occupied sections have no intersection and the lateral distance between the two adjacent occupied sections is greater than or equal to the width of the dynamic obstacle, it means that the dynamic obstacle can pass through the unoccupied range between the two adjacent occupied sections, that is, there is a passable space at the discrete position. If the minimum distance between any occupied section and the first endpoint of the lateral range corresponding to the drivable area is greater than or equal to the width of the dynamic obstacle, it means that the dynamic obstacle can pass between the left boundary of the drivable area and the left boundary of the occupied section adjacent to the left boundary, that is, it is determined that there is a passable space for the dynamic obstacle at the discrete position. If the minimum distance between any occupied section and the second endpoint of the lateral range corresponding to the drivable area is greater than or equal to the width of the dynamic obstacle, it means that the dynamic obstacle can pass between the right boundary of the drivable area and the right boundary of the occupied section adjacent to the right boundary, that is, it is determined that there is a passable space for the dynamic obstacle at the discrete position.
[0082] Exemplarily, if any of the following rules is satisfied, there is a passable space for the dynamic obstacle at the discrete position: Rule 1: If two adjacent occupied sections in the new set of occupied sections do not cross and the lateral distance is greater than or equal to the width of the dynamic obstacle, there is a passable space; Rule 2: Take the distance between the left boundary (first endpoint) of the first occupied section in the new set of occupied sections and the left boundary (first endpoint) of the drivable area as the minimum distance. If the minimum distance is greater than or equal to the width of the dynamic obstacle, there is a passable space; Rule 3: Take the distance between the right boundary (second endpoint) of the last occupied section in the new set of occupied sections and the right boundary (second endpoint) of the drivable area as the minimum distance. If the minimum distance is greater than or equal to the width of the dynamic obstacle, there is a passable space.
[0083] If there is no passable space for the dynamic obstacle at a certain discrete position, the initial predicted trajectory of the dynamic obstacle needs to be truncated. The longitudinal position of this discrete position is the longitudinal position of the end position of the corrected predicted trajectory. Take the longitudinal position of this end position as the longitudinal position of the target position at the end moment in the predicted time domain, and correct the longitudinal movement based on the uniform deceleration motion mode.
[0084] There is a special case. If there is no passable space at a certain discrete position of the dynamic obstacle and there is only one static obstacle bounding box whose collision area with the dynamic obstacle has an intersection, then no lateral motion correction is required after the longitudinal motion correction of the initial predicted trajectory.
[0085] S150. Optimize the initial predicted trajectory according to the starting position of the initial predicted trajectory, the end position of the corrected predicted trajectory, the static obstacle bounding boxes, and the drivable area to obtain the corrected predicted trajectory of the dynamic obstacle.
[0086] Among them, the corrected predicted trajectory is the predicted trajectory obtained by avoiding collisions with the surrounding static obstacles on the basis of the initial predicted trajectory of the dynamic obstacle.
[0087] Specifically, between the longitudinal position of the starting position of the initial predicted trajectory and the longitudinal position of the end position of the corrected predicted trajectory and within the range of the drivable area, the lateral motion of the initial predicted trajectory is optimized according to the ability of the dynamic obstacle to effectively avoid each static obstacle bounding box to avoid collisions, and the obtained trajectory is the corrected predicted trajectory of the dynamic obstacle.
[0088] On the basis of the above example, the initial predicted trajectory can be optimized according to the starting position of the initial predicted trajectory, the end position of the corrected predicted trajectory, the static obstacle bounding boxes, and the drivable area in the following way to obtain the corrected predicted trajectory of the dynamic obstacle:
[0089] Determine the longitudinal positions of the dynamic obstacle at each discrete moment according to the starting position and the end position of the corrected predicted trajectory of the initial predicted trajectory, the prediction time domain, and the prediction time step;
[0090] For each longitudinal position corresponding to the dynamic obstacle, determine each occupied interval corresponding to the longitudinal position according to the static obstacle bounding boxes of the target static obstacles corresponding to the longitudinal position among the static obstacles around the dynamic obstacle and the width of the dynamic obstacle. According to each occupied interval corresponding to the longitudinal position and the width of the dynamic obstacle, determine the set of candidate drivable intervals within the drivable area;
[0091] Determine the optimal drivable interval from each candidate drivable interval according to the width of each candidate drivable interval in the set of candidate drivable intervals, the obstacle-free passing length along each candidate drivable interval, and the distance between the center position of each candidate drivable interval and the initial predicted trajectory.
[0092] Taking the lateral positions of the dynamic obstacle at each discrete moment within the prediction time domain as design variables, the optimal drivable intervals corresponding to the dynamic obstacle at each discrete moment as constraint conditions, and minimizing the preset objective function as the goal, solve the constrained optimization problem, and use the obtained design variables as the lateral positions at each discrete moment within the prediction time domain;
[0093] Convert the coordinate points composed of the longitudinal position and lateral position of the dynamic obstacle at each discrete moment in the frenet coordinate system within the prediction time domain to the Cartesian coordinate system to obtain the corrected predicted trajectory of the dynamic obstacle.
[0094] Among them, the prediction time domain is the time domain range for predicting the trajectory of the dynamic obstacle. The prediction time step is the preset time prediction interval. The discrete moments are the moments obtained by sampling according to the prediction time step within the prediction time domain. The target static obstacle is the static obstacle within the drivable area covered by the corresponding static obstacle bounding box at the longitudinal position of the dynamic obstacle at a certain discrete moment. The candidate drivable interval is the lateral interval within the drivable area that can allow the dynamic obstacle to pass through. The obstacle-free driving length is the distance from the corresponding candidate drivable interval to the next static obstacle that will cause a collision. The optimal drivable interval is the candidate drivable interval selected for bypassing at the longitudinal position at the discrete moment. The design variable is the variable to be solved, that is, the lateral position at each discrete moment. The constraint condition is the range that restricts the lateral position at each discrete moment. The preset objective function is a weighted function of the lateral position deviation, the center deviation of the lateral drivable area, the slope, and the curvature.
[0095] Exemplarily, the preset objective function J is: J = w lat,pos ·J lat,pos + w mid,offset· J mid,offset + w slope ·J slope + w curvature ·J curvature , where, w lat,pos , w mid,offset , w slope and w curvature are the weights corresponding to the lateral position deviation, the center deviation of the lateral drivable area, the slope, and the curvature respectively. The lateral position deviation is characterized as The center deviation of the lateral drivable area is characterized as The slope is characterized as The curvature is characterized as Among them, the longitudinal position sequence at each discrete moment is {s0, s1, …, s M-1}, and the lateral position sequence is {l0, l1, …, l M-1} The lateral position sequence is the design variable to be solved. M is the total number of discrete time instants. The optimal drivable interval corresponding to the longitudinal position is [l min (s k ), l max (s k ). Δs is the distance between the longitudinal positions between adjacent discrete time instants.
[0096] Specifically, according to the prediction horizon with the prediction time step as the interval, each discrete time instant is determined. Between the starting position of the initial prediction trajectory and the ending position of the corrected prediction trajectory, the longitudinal positions of the dynamic obstacles at each discrete time instant are determined. For each longitudinal position corresponding to the dynamic obstacle, the static obstacles around the dynamic obstacle at this longitudinal position are used as the target static obstacles. Combining the lateral range of the static obstacle bounding boxes of each target static obstacle and the width of the dynamic obstacle, each occupied interval corresponding to the longitudinal position is determined. It can be understood that this process is similar to the process of determining the occupied interval corresponding to the discrete position in the above example and will not be elaborated here. Furthermore, within the regional restrictions of the drivable area, combining the occupied intervals of each target static obstacle corresponding to the longitudinal position, the interval between adjacent occupied intervals is determined as the candidate drivable interval. If the distance between the first endpoint of the lateral range of the drivable area and the first endpoint of the adjacent occupied interval is greater than or equal to the width of the dynamic obstacle, the interval between the above two first endpoints is used as a candidate drivable interval. If the distance between the second endpoint of the lateral range of the drivable area and the second endpoint of the adjacent occupied interval is greater than or equal to the width of the dynamic obstacle, the interval between the above two second endpoints is used as a candidate drivable interval. The above candidate drivable intervals are combined into a set to obtain the candidate drivable interval set within the drivable area. A scoring function considering the width of each candidate drivable interval in the candidate drivable interval set, the obstacle-free driving length along each candidate drivable interval, and the distance between the center position of each candidate drivable interval and the initial prediction trajectory is pre-constructed. For example: scores are assigned to different consideration factors, and the weighted sum of each scoring result is obtained to get the score of each candidate drivable interval. The candidate drivable interval with the optimal score is used as the optimal drivable interval. Using the lateral positions of the dynamic obstacle at each discrete time instant within the prediction horizon as the design variables, with the optimal drivable intervals corresponding to the dynamic obstacle at each discrete time instant as the constraint conditions, and with the goal of minimizing the preset objective function, the constrained optimization problem is solved, and the obtained design variables are used as the lateral positions at each discrete time instant within the prediction horizon. Finally, the coordinate points formed by the longitudinal and lateral positions of the dynamic obstacle at each discrete time instant within the prediction horizon in the frenet coordinate system are transformed into the Cartesian coordinate system to obtain the corrected prediction trajectory of the dynamic obstacle.
[0097] Exemplarily, if the initial predicted trajectory of the dynamic obstacle crosses a static obstacle (collides with any static obstacle), then taking the starting position on the initial predicted trajectory of the dynamic obstacle and the end position of the corrected predicted trajectory as endpoints, discretize at equal prediction time steps along the longitudinal axis (s-axis) of the frenet coordinate system to generate each discrete time, and determine the longitudinal position sequence {s0, s1, …, s M-1}, and subsequently, it is necessary to solve the corresponding lateral position sequence {l0, l1, …, l M-1} generated at each discrete time. Furthermore, from the longitudinal and lateral position sequences, the corrected predicted trajectory of the dynamic obstacle is determined. Of course, if discrete times are not used and discrete positions are directly used to replace the longitudinal and lateral positions corresponding to the discrete times, this solution can also be implemented.
[0098] First, at the longitudinal position s k at each discrete time, the initial lateral drivable interval is determined by the drivable area of the dynamic obstacle, and then according to the bounding boxes of each static obstacle within the drivable area, the optimal drivable interval [l min (s k ), l max (s k )] corresponding to the longitudinal position at each discrete time is determined. Specifically, it can be: all candidate drivable intervals of the dynamic obstacle at the longitudinal position s k at each discrete time are determined by the bounding box of the dynamic obstacle, the bounding box of the target static obstacle, and the drivable area. A scoring function is constructed based on the width of each candidate drivable interval, the obstacle-free passing length along each candidate drivable interval, and the distance of the center position of each candidate drivable interval from the initial predicted trajectory, and the optimal drivable interval is selected from all candidate drivable intervals. Considering the influence of the width of the dynamic obstacle, the above-obtained optimal drivable interval can be shrunk to obtain the final optimal drivable interval [l min (s k ), l max (s k )].
[0099] Furthermore, a weighted synthesis of multiple objectives is performed to minimize the lateral position deviation, minimize the deviation of the center of the drivable area, minimize the slope, and minimize the curvature, as the optimization objective of the detour trajectory point sequence. The upper and lower boundaries of the optimal drivable interval at the longitudinal position at each discrete time are determined as the constraint terms of the detour trajectory point sequence, that is, l k ∈ [l min (s k ), l max (s k)]. Solve the above constrained optimization problem through optimization methods (such as sequential quadratic programming, etc.) to obtain the lateral position corresponding to the longitudinal position at each discrete moment, so as to determine the sequence of detour trajectory points {(s k , l k )}.
[0100] Finally, transform the sequence of detour trajectory points in the Frenet coordinate system to the global coordinate system (Cartesian coordinate system) to obtain the corrected predicted trajectory of the dynamic obstacle, which is used to support the subsequent decision-making and planning tasks of the autonomous driving vehicle.
[0101] In the above example, the predicted trajectory correction of the dynamic obstacle is decoupled sequentially in the Frenet coordinate system into rule-based longitudinal motion correction and optimization-based lateral motion correction. Different trajectory correction methods are adaptively selected according to the occupancy of multiple static obstacles, thereby improving the rationality of the predicted trajectory. Among them, the lateral motion correction based on the optimization method shows consideration of trajectory smoothness in the optimization objective, significantly improving the quality of the predicted trajectory when the dynamic obstacle bypasses the obstacle.
[0102] The method for correcting the predicted trajectory of a dynamic obstacle provided in this embodiment obtains the initial predicted trajectory of the dynamic obstacle around the autonomous driving vehicle. When it is determined that the dynamic obstacle affects the driving of the autonomous driving vehicle, the initial predicted trajectory of the dynamic obstacle is corrected to avoid unnecessary correction processing to ensure the real-time performance of the autonomous driving system. Furthermore, in the Frenet coordinate system constructed with the initial predicted trajectory, determine the drivable area when the dynamic obstacle bypasses the static obstacles around it; according to the drivable area, determine the static obstacle bounding box of the static obstacles around the dynamic obstacle in the Frenet coordinate system. According to the static obstacle bounding box, determine whether a collision occurs with any static obstacle when the dynamic obstacle moves along the initial predicted trajectory. If so, according to the static obstacle bounding box and the drivable area, determine the longitudinal position of the end position of the corrected predicted trajectory of the dynamic obstacle in the Frenet coordinate system; furthermore, according to the longitudinal position of the starting position of the initial predicted trajectory in the Frenet coordinate system, the longitudinal position of the end position of the corrected predicted trajectory, the static obstacle bounding box, and the drivable area, optimize the initial predicted trajectory to obtain the lateral position sequence of the dynamic obstacle in the Frenet coordinate system, and then determine the corrected predicted trajectory; by only correcting the predicted trajectory of the dynamic obstacle that affects the driving of the autonomous driving vehicle, the real-time performance of the autonomous driving is improved, and the longitudinal and lateral decoupling of the predicted trajectory correction of the dynamic obstacle is combined with the static obstacle bounding boxes in the drivable area, improving the rationality of the predicted trajectory correction and the quality of the predicted trajectory.
[0103] Figure 3The figure is a schematic structural diagram of a dynamic obstacle prediction trajectory correction device in an embodiment of the present disclosure. As Figure 3 shown, the device includes: an initial prediction trajectory acquisition module 310 and a prediction trajectory correction module 320.
[0104] Among them, the initial prediction trajectory acquisition module 310 is configured to acquire an initial prediction trajectory of a dynamic obstacle around an autonomous vehicle; the prediction trajectory correction module 320 is configured to, when it is predicted that the dynamic obstacle affects the driving of the autonomous vehicle, perform: determining a drivable area when the dynamic obstacle bypasses static obstacles around it in a frenet coordinate system constructed based on the initial prediction trajectory; determining a static obstacle bounding box of the static obstacles around the dynamic obstacle in the frenet coordinate system according to the drivable area; judging whether a collision occurs with any of the static obstacles when the dynamic obstacle moves along the initial prediction trajectory, and if so, determining an end position of a corrected prediction trajectory of the dynamic obstacle according to the static obstacle bounding box and the drivable area; optimizing the initial prediction trajectory according to a starting position of the initial prediction trajectory, the end position of the corrected prediction trajectory, the static obstacle bounding box, and the drivable area to obtain a corrected prediction trajectory of the dynamic obstacle.
[0105] Based on the above example, optionally, the prediction trajectory correction module 320 is further configured to determine a maximum lateral offset amount of the dynamic obstacle; and determine the drivable area in the frenet coordinate system constructed based on the initial prediction trajectory according to the width of the dynamic obstacle, the maximum lateral offset amount, and the length of the initial prediction trajectory.
[0106] Based on the above example, optionally, the prediction trajectory correction module 320 is further configured to determine a candidate obstacle bounding box of the static obstacles around the autonomous vehicle in the frenet coordinate system constructed based on the initial prediction trajectory; and determine a static obstacle bounding box of the static obstacles around the dynamic obstacle in the frenet coordinate system constructed based on the initial prediction trajectory by using a candidate obstacle bounding box having an intersection with the drivable area.
[0107] Based on the above example, optionally, the predicted trajectory correction module 320 is further configured to determine a discrete position sequence from the starting position and the ending position of the initial predicted trajectory; according to the initial predicted trajectory of the dynamic obstacle, the static obstacle bounding box, and the drivable area, sequentially determine whether the dynamic obstacle is passable at each discrete position in the discrete position sequence in the order from near to far from the starting position; if the dynamic obstacle is not passable at a discrete position, use the discrete position as the ending position of the corrected predicted trajectory and stop the determination; if the dynamic obstacle is passable at each discrete position, retain the ending position of the initial predicted trajectory as the ending position of the corrected predicted trajectory.
[0108] Based on the above example, optionally, the predicted trajectory correction module 320 is further configured to sequentially determine, for each discrete position in the discrete position sequence in the order from near to far from the starting position, whether there is a collision with any of the static obstacle bounding boxes when the dynamic obstacle is at the discrete position; if there is no collision, determine that the dynamic obstacle is passable at the discrete position; if there is a collision, use each static obstacle bounding box whose longitudinal position of the bounding box is within the corresponding longitudinal range of the dynamic obstacle bounding box as each target static obstacle bounding box, and determine the occupied interval corresponding to the discrete position according to each target static obstacle bounding box and the width of the dynamic obstacle, and determine whether there is a passable space for the dynamic obstacle to bypass the static obstacle bounding box with the collision in the drivable area according to the occupied interval, the lateral range corresponding to the drivable area, and the width of the dynamic obstacle. If there is a passable space, determine that the dynamic obstacle is passable at the discrete position. If there is no passable space, determine that the dynamic obstacle is not passable at the discrete position and stop the determination.
[0109] Based on the above examples, optionally, the predicted trajectory correction module 320 is further configured to use the lateral range of each target static obstacle bounding box as an occupied interval, and sort each occupied interval based on the first endpoint of each occupied interval; if there is an intersection between two adjacent occupied intervals after sorting, merge the two adjacent occupied intervals with an intersection into a new occupied interval; if there is no intersection between two adjacent occupied intervals after sorting but the lateral distance between the two adjacent occupied intervals is less than the width of the dynamic obstacle, merge the two adjacent occupied intervals without an intersection into a new occupied interval; if the lateral distance between two adjacent occupied intervals after sorting is greater than or equal to the width of the dynamic obstacle, retain the two adjacent occupied intervals without an intersection; correspondingly, the predicted trajectory correction module 320 is further configured to, if there is no intersection between any two adjacent occupied intervals and the lateral distance between the two adjacent occupied intervals is greater than or equal to the width of the dynamic obstacle, there is a passable space for the dynamic obstacle at the discrete position; if the minimum distance between any occupied interval and the first endpoint and / or the second endpoint of the lateral range corresponding to the drivable area is greater than or equal to the width of the dynamic obstacle, there is a passable space for the dynamic obstacle at the discrete position.
[0110] Based on the above example, optionally, the predicted trajectory correction module 320 is further configured to determine the longitudinal position of the dynamic obstacle at each discrete time according to the starting position of the initial predicted trajectory, the end position of the corrected predicted trajectory, the prediction time domain, and the prediction time step; for each longitudinal position corresponding to the dynamic obstacle, according to the static obstacle bounding boxes of each target static obstacle corresponding to the longitudinal position among the static obstacles around the dynamic obstacle and the width of the dynamic obstacle, determine each occupancy interval corresponding to the longitudinal position, and according to each occupancy interval corresponding to the longitudinal position and the width of the dynamic obstacle, determine a set of candidate drivable intervals in the drivable area; according to the widths of the candidate drivable intervals in the set of candidate drivable intervals, the obstacle-free driving lengths along the candidate drivable intervals, and the distances of the central positions of the candidate drivable intervals from the initial predicted trajectory, determine the optimal drivable interval from the candidate drivable intervals; using the lateral positions of the dynamic obstacle at each discrete time in the prediction time domain as design variables, using the optimal drivable intervals corresponding to the dynamic obstacle at each discrete time as constraints, and aiming at minimizing a preset objective function, solve the constrained optimization problem, and use the obtained design variables as the lateral positions at each discrete time in the prediction time domain; wherein, the preset objective function is a weighted function of lateral position deviation, lateral drivable area center deviation, slope, and curvature; convert the coordinate points formed by the longitudinal position and the lateral position of the dynamic obstacle at each discrete time in the frenet coordinate system in the prediction time domain into the Cartesian coordinate system to obtain the corrected predicted trajectory of the dynamic obstacle.
[0111] Based on the above example, optionally, after obtaining the initial predicted trajectory of the dynamic obstacle around the autonomous vehicle, it further includes: an autonomous vehicle impact determination module, configured to determine the closest distance between the two trajectories according to the planned trajectory of the autonomous vehicle at the previous moment and the initial predicted trajectory of the dynamic obstacle; if the closest distance is greater than a preset distance threshold, predict that the dynamic obstacle does not affect the driving of the autonomous vehicle; if the closest distance is less than or equal to the preset distance threshold, predict that the dynamic obstacle affects the driving of the autonomous vehicle.
[0112] The dynamic obstacle predicted trajectory correction device provided by the embodiments of the present disclosure can execute the steps in the dynamic obstacle predicted trajectory correction method provided by the method embodiments of the present disclosure, and the implementation steps and beneficial effects are not described herein again.
[0113] Figure 4 It is a schematic structural diagram of an electronic device in an embodiment of the present disclosure. Specifically, refer to Figure 4 which shows a schematic structural diagram of an electronic device 400 suitable for implementing the present disclosure.Figure 4 The illustrated electronic device is merely an example and should not impose any limitation on the functions and usage scope of the embodiments of the present disclosure.
[0114] As Figure 4 shown, the electronic device 400 may include a processing device 401, a read-only memory (ROM) 402, a random access memory (RAM) 403, a bus 404, an input / output (I / O) interface 405, an input device 406, an output device 407, a storage device 408, and a communication device 409. The processing device (such as a central processing unit, a graphics processing unit, etc.) 401 may perform various appropriate actions and processes according to the program in the ROM 402 or the program loaded from the storage device 408 into the RAM 403 to implement the method of the embodiments as described in the present disclosure. In the RAM 403, various programs and data required for the operation of the electronic device 400 are also stored. The processing device 401, the ROM 402, and the RAM 403 are connected to each other through the bus 404. The input / output (I / O) interface 405 is also connected to the bus 404.
[0115] Specifically, according to the embodiments of the present disclosure, the processes described above with reference to the flowcharts may be implemented as computer software programs. For example, the embodiments of the present disclosure include a computer program product that includes a computer program carried on a non-transitory computer-readable medium, and the computer program includes program codes for executing the method shown in the flowchart, thereby implementing the dynamic obstacle prediction trajectory correction method as described above. In such an embodiment, the computer program may be downloaded and installed from the network through the communication device 409, or installed from the storage device 408, or installed from the ROM 402. When the computer program is executed by the processing device 401, the above-mentioned functions defined in the method of the embodiments of the present disclosure are executed.
[0116] It should be noted that the above-mentioned computer-readable medium in the present disclosure may be a computer-readable signal medium, a computer-readable storage medium, or any combination of the two. The computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the above. More specific examples of the computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present disclosure, the computer-readable storage medium may be any tangible medium that contains or stores a program, and this program can be used by or in combination with an instruction execution system, apparatus, or device. In the present disclosure, the computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, which carries computer-readable program code. Such a propagated data signal may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. The computer-readable signal medium may also be any computer-readable medium other than the computer-readable storage medium, and this computer-readable signal medium can send, propagate, or transmit a program for use by or in combination with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted by any appropriate medium, including but not limited to: wires, optical cables, RF (radio frequency), etc., or any suitable combination of the above.
[0117] The above-mentioned computer-readable medium may be included in the above-mentioned electronic device; it may also exist separately without being assembled into the electronic device. The above-mentioned computer-readable medium carries one or more programs, and when the above-mentioned one or more programs are executed by the electronic device, the electronic device is caused to:
[0118] Obtain an initial predicted trajectory of a dynamic obstacle around an autonomous vehicle;
[0119] When it is predicted that the dynamic obstacle affects the driving of the autonomous vehicle, perform:
[0120] In the frenet coordinate system constructed based on the initial predicted trajectory, determine the drivable area when the dynamic obstacle bypasses static obstacles around it;
[0121] According to the drivable area, determine the static obstacle bounding box of the static obstacles around the dynamic obstacle in the frenet coordinate system;
[0122] Based on the static obstacle bounding box, determine whether the dynamic obstacle collides with any of the static obstacles when moving along the initial predicted trajectory. If so, determine the end position of the corrected predicted trajectory of the dynamic obstacle according to the static obstacle bounding box and the drivable area;
[0123] Optimize the initial predicted trajectory according to the starting position of the initial predicted trajectory, the end position of the corrected predicted trajectory, the static obstacle bounding box, and the drivable area to obtain the corrected predicted trajectory of the dynamic obstacle.
[0124] Optionally, when one or more of the above programs are executed by the electronic device, the electronic device may also execute the other steps described in the above embodiments.
[0125] In the context of the present disclosure, a machine-readable medium may be a tangible medium that can contain or store a program for use by or in connection with an instruction execution system, apparatus, or device. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0126] The above description is only a preferred embodiment of the present disclosure and an explanation of the applied technical principles. Those skilled in the art should understand that the scope of disclosure involved in the present disclosure is not limited to the technical solutions formed by the specific combination of the above technical features, and should also cover other technical solutions formed by any combination of the above technical features or their equivalent features without departing from the above disclosure concept. For example, the technical solutions formed by mutually replacing the above features with the (but not limited to) technical features having similar functions disclosed in the present disclosure.
Claims
1. A method for correcting the predicted trajectory of dynamic obstacles, characterized in that, The method includes: Obtaining an initial predicted trajectory of a dynamic obstacle around an autonomous vehicle; When it is predicted that the dynamic obstacle affects the driving of the autonomous vehicle, execute: In a frenet coordinate system constructed based on the initial predicted trajectory, determining a drivable area when the dynamic obstacle bypasses static obstacles around it; According to the drivable area, determining a static obstacle bounding box of the static obstacles around the dynamic obstacle in the frenet coordinate system; According to the static obstacle bounding box, determining whether a collision occurs between the dynamic obstacle and any of the static obstacles when the dynamic obstacle moves along the initial predicted trajectory. If so, according to the static obstacle bounding box and the drivable area, determining an end position of a corrected predicted trajectory of the dynamic obstacle; Optimizing the initial predicted trajectory according to the start position of the initial predicted trajectory, the end position of the corrected predicted trajectory, the static obstacle bounding box, and the drivable area to obtain a corrected predicted trajectory of the dynamic obstacle.
2. The method according to claim 1, wherein The determining, in a frenet coordinate system constructed based on the initial predicted trajectory, of a drivable area when the dynamic obstacle bypasses static obstacles around it includes: Determining a maximum lateral offset amount of the dynamic obstacle; In a frenet coordinate system constructed based on the initial predicted trajectory, determining the drivable area according to the width of the dynamic obstacle, the maximum lateral offset amount, and the length of the initial predicted trajectory.
3. The method according to claim 1, wherein The determining, according to the drivable area, of a static obstacle bounding box of the static obstacles around the dynamic obstacle in the frenet coordinate system includes: Determining a candidate obstacle bounding box of the static obstacles around the autonomous vehicle in a frenet coordinate system constructed based on the initial predicted trajectory; Determining, as the static obstacle bounding box of the static obstacles around the dynamic obstacle in a frenet coordinate system constructed based on the initial predicted trajectory, a candidate obstacle bounding box that has an intersection with the drivable area.
4. The method according to claim 1, wherein The determining, according to the static obstacle bounding box and the drivable area, of an end position of a corrected predicted trajectory of the dynamic obstacle includes: Determining a discrete position sequence from the start position and the end position of the initial predicted trajectory; According to the initial predicted trajectory of the dynamic obstacle, the static obstacle bounding box, and the drivable area, sequentially determining whether the dynamic obstacle is passable at each discrete position in the discrete position sequence in the order from near to the start position; If the dynamic obstacle is not passable at a discrete position, using the discrete position as the end position of the corrected predicted trajectory and stopping the determination; If the dynamic obstacle is passable at each discrete position, retaining the end position of the initial predicted trajectory as the end position of the corrected predicted trajectory.
5. The method according to claim 4, wherein According to the initial predicted trajectory of the dynamic obstacle, the static obstacle bounding box, and the drivable area, in the order from near to the starting position to far from the starting position, it is sequentially determined whether the dynamic obstacle is passable at each discrete position in the discrete position sequence, including: In the order from near to the starting position to far from the starting position, for each discrete position in the discrete position sequence, it is determined whether there is a collision with any of the static obstacle bounding boxes when the dynamic obstacle is located at the discrete position; If there is no collision, it is determined that the dynamic obstacle is passable at the discrete position; If there is a collision, the static obstacle bounding boxes whose longitudinal positions of the bounding boxes are within the corresponding longitudinal range of the dynamic obstacle bounding box are used as the target static obstacle bounding boxes, and according to the target static obstacle bounding boxes and the width of the dynamic obstacle, the occupied interval corresponding to the discrete position is determined. According to the occupied interval, the lateral range corresponding to the drivable area, and the width of the dynamic obstacle, it is determined whether there is a passable space in the drivable area for the dynamic obstacle to bypass the static obstacle bounding box with which there is a collision. If there is a passable space, it is determined that the dynamic obstacle is passable at the discrete position. If there is no passable space, it is determined that the dynamic obstacle is not passable at the discrete position, and the judgment is stopped.
6. The method according to claim 5, wherein The determining the occupied interval corresponding to the discrete position according to the target static obstacle bounding boxes and the width of the dynamic obstacle includes: Taking the lateral ranges of the target static obstacle bounding boxes as the occupied intervals, and sorting the occupied intervals based on the first endpoints of the occupied intervals; If there is an intersection between two adjacent occupied intervals after sorting, the two adjacent occupied intervals with an intersection are merged into a new occupied interval; If there is no intersection between two adjacent occupied intervals after sorting but the lateral distance between the two adjacent occupied intervals is less than the width of the dynamic obstacle, the two adjacent occupied intervals without an intersection are merged into a new occupied interval; If the lateral distance between two adjacent occupied intervals after sorting is greater than or equal to the width of the dynamic obstacle, the two adjacent occupied intervals without an intersection are retained; Correspondingly, the determining whether there is a passable space in the drivable area for the dynamic obstacle to bypass the static obstacle bounding box with which there is a collision includes: If there is no intersection between any two adjacent occupied intervals and the lateral distance between the two adjacent occupied intervals is greater than or equal to the width of the dynamic obstacle, there is a passable space for the dynamic obstacle at the discrete position; If the minimum distance between any occupied interval and the first endpoint and / or the second endpoint of the lateral range corresponding to the drivable area is greater than or equal to the width of the dynamic obstacle, there is a passable space for the dynamic obstacle at the discrete position.
7. The method according to claim 1, wherein Optimizing the initial predicted trajectory according to the starting position of the initial predicted trajectory, the end position of the corrected predicted trajectory, the static obstacle bounding box, and the drivable area to obtain the corrected predicted trajectory of the dynamic obstacle, including: Determining the longitudinal position of the dynamic obstacle at each discrete moment according to the starting position of the initial predicted trajectory, the end position of the corrected predicted trajectory, the prediction time domain, and the prediction time step; For each longitudinal position corresponding to the dynamic obstacle, determining each occupied interval corresponding to the longitudinal position according to the static obstacle bounding boxes of each target static obstacle corresponding to the longitudinal position among the static obstacles around the dynamic obstacle and the width of the dynamic obstacle, and determining a set of candidate drivable intervals within the drivable area according to each occupied interval corresponding to the longitudinal position and the width of the dynamic obstacle; Determining the optimal drivable interval from each candidate drivable interval according to the width of each candidate drivable interval in the set of candidate drivable intervals, the obstacle-free driving length along each candidate drivable interval, and the distance of the center position of each candidate drivable interval from the initial predicted trajectory; Taking the lateral position of the dynamic obstacle at each discrete moment within the prediction time domain as a design variable, taking the optimal drivable interval corresponding to each discrete moment of the dynamic obstacle as a constraint condition, and aiming at minimizing a preset objective function, solving a constrained optimization problem, and taking the obtained design variables as the lateral positions at each discrete moment within the prediction time domain; wherein, the preset objective function is a weighted function of lateral position deviation, lateral drivable area center deviation, slope, and curvature; Converting the coordinate points formed by the longitudinal position and the lateral position of the dynamic obstacle at each discrete moment in the frenet coordinate system within the prediction time domain into the Cartesian coordinate system to obtain the corrected predicted trajectory of the dynamic obstacle.
8. The method according to any one of claims 1-7, characterized in that, After obtaining the initial predicted trajectory of the dynamic obstacle around the autonomous vehicle, it further includes: Determining the closest distance between the two trajectories according to the planned trajectory of the autonomous vehicle at the previous moment and the initial predicted trajectory of the dynamic obstacle; If the closest distance is greater than a preset distance threshold, predicting that the dynamic obstacle does not affect the driving of the autonomous vehicle; If the closest distance is less than or equal to the preset distance threshold, predicting that the dynamic obstacle affects the driving of the autonomous vehicle.
9. An electronic device, characterized in that, The electronic device includes: One or more processors; A storage device for storing one or more programs; When the one or more programs are executed by the one or more processors, enabling the one or more processors to implement the method for correcting the predicted trajectory of the dynamic obstacle as described in any one of claims 1-8.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the program is executed by the processor, it implements the method for correcting the predicted trajectory of the dynamic obstacle as described in any one of claims 1-8.
Citation Information
Cited By
Vehicle collision prediction method, readable storage medium, program product and electronic device
CN121191360A