Reference line processing method and apparatus

By generating fitted arcs in the autonomous driving system for curvature optimization, the problem of vehicle lateral control jitter caused by sudden changes in local curvature or angle jumps in the original reference line is solved, achieving optimization of curvature constraints and preservation of road topology features.

CN120740629BActive Publication Date: 2025-12-02ZHEJIANG LINGAI FUTURE TECHNOLOGY CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202511234445.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-09-01
Publication Date
2025-12-02
Estimated Expiration
2045-09-01

AI Technical Summary

Technical Problem

In autonomous driving systems, the original reference line may experience sudden changes in curvature or angle due to factors such as sensor noise, map errors, or environmental occlusion, resulting in lateral control jitter in the vehicle.

Method used

By acquiring the vehicle's first reference line, determining the first and second reference points, generating a fitted arc, optimizing the curvature of the target line segment based on the fitted arc, generating a second reference line, determining the vehicle's target reference line based on the second reference line, optimizing abnormal curvature line segments, and satisfying curvature constraints.

Benefits of technology

It effectively avoids vehicle lateral control vibration caused by sudden changes in local curvature or angle, while preserving the real road topology characteristics of the original reference line and avoiding the reference line deviating from the actual road due to excessive smoothing.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120740629B_ABST
    Figure CN120740629B_ABST
Patent Text Reader

Abstract

This application provides a reference line processing method and apparatus, relating to the field of path planning technology. The method includes: acquiring a first reference line for the vehicle; determining a first reference point and a second reference point within the first reference line when a target line segment exists, wherein at least some reference points in the target line segment do not satisfy curvature constraints, the first reference point is located in front of the target line segment and satisfies curvature constraints, and the second reference point is located behind the target line segment along the direction from the start point to the end point of the first reference line and satisfies curvature constraints; generating a fitted arc using the first and second reference points as the beginning and end points of an arc, and optimizing the curvature of the target line segment based on the fitted arc to obtain a second reference line after curvature optimization; and determining the target reference line for the vehicle based on the second reference line. This effectively optimizes line segments with abnormal curvature, satisfies curvature constraints, and avoids lateral control jitter caused by sudden changes in local curvature or angle jumps.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of path planning technology, and in particular to a reference line processing method and apparatus. Background Technology

[0002] In autonomous driving decision-making and planning systems, reference line generation is a core component of path planning, directly impacting the smoothness, safety, and ride comfort of the vehicle. Reference lines are typically derived from lane centerlines in high-precision maps or road boundaries detected in real-time by perception modules. However, due to factors such as sensor noise, map errors, or environmental occlusion, the original reference lines often exhibit issues like sudden changes in curvature or angle jumps, leading to lateral control jitter in the vehicle. Summary of the Invention

[0003] This application provides a reference line processing method and apparatus that can effectively optimize abnormal curvature line segments, meet curvature constraints, and avoid vehicle lateral control vibration caused by sudden changes in local curvature or angle jumps.

[0004] In a first aspect, embodiments of this application provide a reference line processing method, including:

[0005] Obtain the vehicle's first reference line;

[0006] When a target line segment exists on the first reference line, a first reference point and a second reference point are determined on the first reference line. At least some reference points in the target line segment do not satisfy curvature constraints. Along the direction from the start point to the end point of the first reference line, the first reference point is located in front of the target line segment and satisfies curvature constraints, and the second reference point is located behind the target line segment and satisfies curvature constraints.

[0007] Using the first and second reference points as the beginning and end of the arc, a fitted arc is generated, and the curvature of the target line segment is optimized based on the fitted arc to obtain the second reference line.

[0008] Based on the second reference line, determine the target reference line for the vehicle.

[0009] In one implementation, obtaining a first reference line for the vehicle includes:

[0010] Obtain the vehicle's original reference line;

[0011] The original reference line is denoised to generate the first reference line.

[0012] In one implementation, denoising the original reference line to generate a first reference line includes:

[0013] Add the starting reference point of the original reference line to the target container;

[0014] Starting from the next reference point after the starting reference point, determine the distance between each third reference point in the original reference line (excluding the starting reference point) and the reference point newly added to the target container, and add the third reference point to the target container if the distance is less than or equal to the distance threshold.

[0015] A first reference line is generated based on the reference points within the target container.

[0016] In one implementation, a first reference line is generated based on reference points within the target container, including:

[0017] If the angle difference between any two adjacent reference points in the target container exceeds a set value, a fourth reference point is determined among the reference points in the target container that are in front of the target reference point, based on a preset step size. The reference points in the target container that are located between the fourth reference point and the target reference point are then subjected to average interpolation. The target reference point is the next reference point among these adjacent reference points.

[0018] A first reference line is generated based on the reference points within the target container after average interpolation.

[0019] In one implementation, the target line segment is a broken line;

[0020] Determining the first reference point and the second reference point within the first reference line includes:

[0021] The reference point that is closest to the polyline and satisfies the curvature constraint in front of the polyline is determined as the first reference point;

[0022] The reference point that is closest to the polyline and satisfies the curvature constraint behind the polyline is determined as the second reference point.

[0023] In one implementation, the target line segment is a turning segment;

[0024] Determining the first reference point and the second reference point within the first reference line includes:

[0025] The reference point closest to the turning segment and satisfying the curvature constraint is determined as the first initial point, and based on a preset distance, a reference point located in front of the first initial point is selected from the first reference line as the first reference point.

[0026] The reference point closest to the turning segment and satisfying the curvature constraint behind the turning segment is determined as the second initial point. Based on a preset distance, a reference point located behind the second initial point is selected from the first reference line as the second reference point.

[0027] In one implementation, determining the target reference line for the vehicle based on the second reference line includes:

[0028] The second reference line is optimized to generate the third reference line;

[0029] Determine the target reference line based on the third reference line.

[0030] In one implementation, optimizing the second reference line to generate a third reference line includes:

[0031] The second reference line is converted into a B-spline curve. Based on the B-spline curve and the obstacle distance map, the initial trajectory corresponding to the B-spline curve is determined by dynamic programming.

[0032] Based on the initial trajectory and a preset spatial construction method, the safe space in which the vehicle can drive is obtained;

[0033] Based on the initial trajectory, a cost function is constructed by setting cost terms and constraint terms;

[0034] The cost function is iteratively optimized using the iterative linear quadratic regulator algorithm until convergence or the maximum number of iterations is reached, thus obtaining the optimized trajectory.

[0035] A third reference line is generated based on the optimized trajectory.

[0036] In one implementation, determining the target reference line based on the third reference line includes:

[0037] If the third reference line passes the validity check, the previous global reference line and the third reference line are spliced ​​together to generate the target reference line.

[0038] Secondly, embodiments of this application provide a reference line processing apparatus, including:

[0039] The acquisition unit is configured to acquire the first reference line of the vehicle;

[0040] The first determining unit is configured to determine a first reference point and a second reference point in the first reference line when a target line segment exists in the first reference line. At least some of the reference points in the target line segment do not satisfy curvature constraints. Along the direction from the start point to the end point of the first reference line, the first reference point is located in front of the target line segment and satisfies curvature constraints, and the second reference point is located behind the target line segment and satisfies curvature constraints.

[0041] The optimization unit is configured to generate a fitted arc with the first reference point and the second reference point as the beginning and end of the arc, and to optimize the curvature of the target line segment based on the fitted arc to obtain the second reference line.

[0042] The second determining unit is configured to determine the target reference line of the vehicle based on the second reference line.

[0043] The solution provided in this application can obtain a first reference line for the vehicle. Then, if a target line segment exists on the first reference line, a first reference point and a second reference point are determined within the first reference line. At least some reference points in the target line segment do not satisfy curvature constraints. Along the direction from the start point to the end point of the first reference line, the first reference point is located in front of the target line segment and satisfies curvature constraints, while the second reference point is located behind the target line segment and satisfies curvature constraints. Then, using the first and second reference points as the beginning and end points of an arc, a fitted arc is generated. Based on the fitted arc, the curvature of the target line segment is optimized to obtain a second reference line. Based on the second reference line, the target reference line for the vehicle is determined. By generating a fitted arc using the first and second reference points as the beginning and end points of an arc, and optimizing the curvature of the target line segment based on the fitted arc, abnormal curvature line segments can be effectively optimized, curvature constraints can be satisfied, and lateral control vibrations of the vehicle caused by sudden changes in local curvature or angle jumps can be avoided. In addition, by optimizing the curvature of only the abnormal curvature segments, the true road topology features reflected by the original reference line are preserved, avoiding the reference line from deviating from the actual road due to excessive smoothing. Attached Figure Description

[0044] The technical solution and other beneficial effects of this application will become apparent from the following detailed description of specific embodiments in conjunction with the accompanying drawings.

[0045] Figure 1 This is a flowchart of a reference line processing method provided in an embodiment of this application;

[0046] Figure 2 This is a comparison diagram of the effects before and after polyline processing provided in the embodiments of this application;

[0047] Figure 3 This is a comparison diagram of the effects before and after the turning section processing provided in the embodiments of this application;

[0048] Figure 4 This is a schematic diagram of the reference line splicing logic provided in an embodiment of this application;

[0049] Figure 5 This is another flowchart of the reference line processing method provided in the embodiments of this application;

[0050] Figure 6 This is a schematic diagram of the reference line processing device provided in the embodiments of this application.

[0051] Reference numerals: 601-Acquisition unit, 602-First determination unit, 603-Optimization unit, 604-Second determination unit. Detailed Implementation

[0052] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of them. All other embodiments obtained by those skilled in the art based on the embodiments of this application without creative effort are within the scope of protection of this application.

[0053] In the description of this application, it should be noted that, unless otherwise expressly specified and limited, the term "and / or" in this document is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, or B existing alone. Furthermore, the character " / " in this document, unless otherwise specified, generally indicates that the preceding and following related objects have an "or" relationship.

[0054] As mentioned earlier, reference lines are usually derived from the lane center line of a high-precision map or the road boundary detected in real time by the perception module. However, due to factors such as sensor noise, map errors, or environmental occlusion, the original reference lines often have problems such as sudden changes in local curvature or angle jumps, which can cause lateral control vibration of the vehicle.

[0055] This application provides a reference line processing method and apparatus that can effectively optimize abnormal curvature line segments, meet curvature constraints, and avoid vehicle lateral control vibration caused by sudden changes in local curvature or angle jumps.

[0056] Figure 1 This is a flowchart of a reference line processing method provided in an embodiment of this application. Figure 1 As shown, the reference line processing method includes the following steps:

[0057] S101: Obtain the vehicle's first reference line;

[0058] S103: When a target line segment exists on the first reference line, a first reference point and a second reference point are determined in the first reference line. At least some reference points in the target line segment do not satisfy curvature constraints. Along the direction from the start point to the end point of the first reference line, the first reference point is located in front of the target line segment and satisfies curvature constraints, and the second reference point is located behind the target line segment and satisfies curvature constraints.

[0059] S105: Using the first reference point and the second reference point as the beginning and end of the arc, generate a fitted arc, and optimize the curvature of the target line segment based on the fitted arc to obtain the second reference line.

[0060] S107: Determine the target reference line for the vehicle based on the second reference line.

[0061] Figure 1The corresponding embodiment provides a solution that obtains a first reference line for the vehicle. Then, if a target line segment exists on the first reference line, a first reference point and a second reference point are determined within the first reference line. At least some reference points on the target line segment do not satisfy curvature constraints. Along the direction from the start point to the end point of the first reference line, the first reference point is located in front of the target line segment and satisfies curvature constraints, while the second reference point is located behind the target line segment and satisfies curvature constraints. Then, using the first and second reference points as the beginning and end points of an arc, a fitted arc is generated. Based on the fitted arc, the curvature of the target line segment is optimized to obtain a second reference line. Based on the second reference line, the target reference line for the vehicle is determined. By generating a fitted arc using the first and second reference points as the beginning and end points of an arc, and optimizing the curvature of the target line segment based on the fitted arc, abnormal curvature line segments can be effectively optimized, curvature constraints can be satisfied, and lateral control vibrations of the vehicle caused by sudden changes in local curvature or angle jumps can be avoided. In addition, by optimizing the curvature of only the abnormal curvature segments, the true road topology features reflected by the original reference line are preserved, avoiding the reference line from deviating from the actual road due to excessive smoothing.

[0062] Steps S101 to S107 will be explained below.

[0063] In step S101, the first reference line of the vehicle is obtained. In practice, the reference line is a set of ordered reference points, with the reference points arranged from the starting point to the ending point.

[0064] When obtaining the vehicle's first reference line, the vehicle's original reference line can be obtained, and the first reference line can be determined based on the original reference line. It should be understood that this original reference line is the vehicle's original reference line at the current moment. It should be noted that this original reference line can be a local reference line; for example, the vehicle's initial global reference line at the current moment can be obtained, and the last N meters of the line segment in this initial global reference line can be used as the original reference line. Here, N meters is a preset reference line optimization length. N is an integer greater than 1, such as 9, 10, or 11, and can be set according to actual needs; no specific limitation is made here. Other line segments in this initial global reference line besides the original reference line have previously undergone reference line processing; these other line segments can be called the previous global reference line of the original reference line. Taking N=10 as an example, by setting the reference line optimization length to 10m, a curve that converges more easily can be obtained at this distance.

[0065] Considering that there are bound to be errors when collecting data to generate the original reference line, the original reference line can be denoised to generate the first reference line.

[0066] Further, the original reference line is denoised to generate the first reference line, including:

[0067] Add the starting reference point of the original reference line to the target container;

[0068] Starting from the next reference point after the initial reference point, sequentially determine the distance between each third reference point (excluding the initial reference point) on the original reference line and the reference point of the most recently added target container, and set a distance less than or equal to a distance threshold. In this case, add the third reference point to the target container;

[0069] A first reference line is generated based on the reference points within the target container.

[0070] The target container can be an array container. Furthermore, the target container can be a dynamic array container (such as a vector). The vector is a dynamic array container provided by the Standard Template Library (STL), which can store a series of elements of the same type and supports dynamic resizing.

[0071] It should be noted that the distance between the third reference point and the reference point of the most recently added target container is less than or equal to the distance threshold. In this case, the third reference point is added after the reference point of the newly added target container. The distance threshold is... For example, it could be 4.5m, 5m, or 5.5m, etc. It should be understood that this is a distance threshold. It can be set according to actual needs, and no specific restrictions are made here.

[0072] By adding the starting reference point of the original reference line to the target container, starting from the next reference point after the starting reference point, the distance between each third reference point in the original reference line (excluding the starting reference point) and the most recently added reference point in the target container is determined sequentially, and the distance is set to a threshold value. In this case, adding a third reference point to the target container can effectively eliminate noise interference in the original reference line and ensure that the corrected reference line has no points that are far away from the reference line.

[0073] When generating the first reference line based on each reference point within the target container, one implementation method is to directly generate the first reference line based on each reference point within the target container, such as using the reference point sequence formed by each reference point within the target container as the first reference line.

[0074] As another implementation method, it is considered that there may be angular differences within the target container that exceed the set value. Adjacent reference points can cause abrupt angle changes. To ensure that the corrected reference line has no points far from the reference line or whose angle changes exceed the threshold, the following steps can be performed to generate a first reference line based on the reference points within the target container:

[0075] The angular difference between any two adjacent reference points within the target container exceeds a set value. In the case of a target reference point, based on the preset step size max_step, a fourth reference point is determined among the reference points in the target container that are in front of the target reference point. The reference points in the target container that are between the fourth reference point and the target reference point are then subjected to average interpolation. The target reference point is the next reference point among the adjacent reference points.

[0076] A first reference line is generated based on the reference points within the target container after average interpolation.

[0077] The preset step size, `max_step`, can be, for example, 4 or 5, and the unit can be units. (Setting value) The unit is rad (radians), and the value can be 0.14 rad, 0.15 rad, or 0.16 rad, etc. It should be understood that the preset step size `max_step` and the set value... This setting can be adjusted according to actual needs; no specific limitations are specified here. Taking `max_step=4` as an example, within the target container, the fourth reference point can be determined by counting backwards four points from the target reference point. Assuming the target container includes reference points Q0, Q1, Q2, Q3, Q4, and Q5, and the target reference point is Q5, counting backwards four points from Q5 determines Q1 as the fourth reference point. Therefore, average interpolation can be performed on Q2, Q3, and Q4. For example, a straight line can be formed connecting Q1 and Q5, and this line can be divided into four equal parts. The resulting three division points are Q2, Q3, and Q4, ensuring that the angular difference between any two adjacent reference points from Q1 to Q5 is less than or equal to a set value. .

[0078] When generating the first reference line based on each reference point within the target container after average interpolation, the sequence of reference points formed by these reference points can be used as the first reference line.

[0079] In step S103, if a target line segment exists on the first reference line, a first reference point and a second reference point are determined on the first reference line. At least some reference points on the target line segment do not satisfy curvature constraints. Along the direction from the start point to the end point of the first reference line, the first reference point is located in front of the target line segment and satisfies the curvature constraint, and the second reference point is located behind the target line segment and satisfies the curvature constraint. The curvature constraint can be, for example, that the curvature of the reference point is less than or equal to a curvature threshold. The curvature threshold can be, for example, 0.2 rad / m (radians per meter) or 0.3 rad / m, etc., and can be set according to actual needs; no specific limitation is made here.

[0080] It should be noted that in trajectory analysis, curvature is a physical quantity describing the degree of bending of a curve (trajectory). It quantifies the rate of change of the tangent direction at a point on the trajectory with respect to the arc length. The greater the curvature, the more pronounced the bending of the trajectory at that point; the smaller the curvature (approaching 0), the closer the trajectory is to a straight line. Since the method for calculating curvature is a well-known technique, the calculation process for the curvature of each reference point in the first reference line will not be elaborated here.

[0081] As mentioned earlier, the target line segment can be a broken line or a turning segment. A broken line refers to a line segment within the reference line where there is a sudden change in angle, causing a sharp increase in local curvature. Due to factors such as sensor noise, map errors, or environmental occlusion, the original reference line may exhibit discontinuous angles. A turning segment refers to a curved portion of the reference line where the curvature exceeds a curvature threshold, usually due to an excessively small turning radius, causing the overall curvature to exceed vehicle dynamics constraints or comfort requirements.

[0082] When the target line segment is a polyline, determine the first reference point and the second reference point within the first reference line, including:

[0083] The reference point that is closest to the polyline and satisfies the curvature constraint in front of the polyline is determined as the first reference point;

[0084] The reference point that is closest to the polyline and satisfies the curvature constraint behind the polyline is determined as the second reference point.

[0085] When the target line segment is a turning segment, determine the first reference point and the second reference point in the first reference line, including:

[0086] The reference point closest to the turning segment and satisfying the curvature constraint is determined as the first initial point, and based on the preset distance Dis fowrord Select a reference point located in front of the first initial point from the first reference line as the first reference point;

[0087] The reference point closest to the turning segment and satisfying the curvature constraint behind the turning segment is determined as the second initial point, and based on the preset distance Dis fowrord Select a reference point located behind the second initial point from the first reference line as the second reference point.

[0088] Among them, the preset distance Dis fowrord For example, it can be 0.5m or 0.6m, etc., which can be set according to actual needs; no specific limitation is made here. (Based on Dis...) fowrord Taking 0.5m as an example, based on the preset distance Dis fowrordWhen selecting a reference point located in front of the first initial point from the first reference line as the first reference point, the nearest reference point is obtained by moving forward 0.5m from the first initial point. Similarly, based on a preset distance Dis... fowrord When selecting a reference point located behind the second initial point from the first reference line as the second reference point, push back 0.5m from the second initial point to obtain the nearest reference point as the second reference point.

[0089] In step S105, a fitted arc (hereinafter referred to as the first fitted arc) is generated using the first reference point and the second reference point as the beginning and end of the arc. The curvature of the target line segment is then optimized based on the first fitted arc to obtain the second reference line. For example, coordinate points can be sampled from the first fitted arc, and the sampled coordinate points can be used to replace the reference points in the target line segment to achieve curvature optimization of the target line segment.

[0090] When generating the first fitted arc, since the reference points all have orientations, when the target line segment is a broken line, the center of the circle can be determined based on the first reference point and the second reference point, and then the first fitted arc can be generated based on the first reference point, the second reference point and the center of the circle.

[0091] Additionally, when the target polyline is a turning segment, it can be based on the target curvature Curve and the preset distance Dis. fowrord The orientations of the first and second reference points are adjusted. Then, based on the adjusted orientations of the first and second reference points, a first fitted arc is generated. For example, the center of a circle is determined based on the adjusted orientations of the first and second reference points, and then the first fitted arc is generated based on the adjusted orientations of the first and second reference points and the center of the circle. Let h1 represent the orientation of the first reference point and h2 represent the orientation of the second reference point, as an example. , The target curvature, Curve, is the curvature of the second fitted arc, which is generated using the first and second initial points as described above as the beginning and end points of the arc. This achieves appropriate outward expansion of the reference line at the turning point, increasing the turning radius to meet the curvature requirements.

[0092] As an example, when the target line segment is a polyline, the comparison of the effects before and after processing the polyline can be shown as follows: Figure 2 As shown. When the target line segment is a turning segment, the comparison of the effects before and after processing the turning segment can be seen as follows. Figure 3 As shown. Among them, Figure 2 This is a comparison diagram of the effects before and after polyline processing provided in the embodiments of this application. Figure 3 This is a comparison diagram of the effects before and after the turning section processing provided in the embodiments of this application.

[0093] In step S107, the target reference line of the vehicle is determined based on the second reference line.

[0094] Specifically, the second reference line is optimized to generate a third reference line, and the target reference line is determined based on the third reference line.

[0095] The second reference line is optimized to generate the third reference line, including:

[0096] The second reference line is converted into a B-spline curve. Based on the B-spline curve and the obstacle distance map, the initial trajectory corresponding to the B-spline curve is determined by dynamic programming.

[0097] Based on the initial trajectory and a preset spatial construction method, the safe space in which the vehicle can drive is obtained;

[0098] Based on the initial trajectory, a cost function is constructed by setting cost terms and constraint terms;

[0099] The cost function is iteratively optimized using the iterative linear quadratic regulator algorithm until convergence or the maximum number of iterations is reached, thus obtaining the optimized trajectory.

[0100] A third reference line is generated based on the optimized trajectory.

[0101] Furthermore, when converting the second reference line into a B-spline curve, a 5th-order B-spline curve can be used to spline the second reference line, thus transforming it into a B-spline curve. In practice, a B-spline curve is a curve defined by piecewise polynomials, and its order reflects the smoothness and continuity of the curve. A 5th-order B-spline curve has high continuity (continuous curvature and rate of change of curvature), which can well meet the "smoothness" requirements of reference lines for autonomous vehicles.

[0102] After converting the second reference line into a B-spline curve, the initial trajectory corresponding to the B-spline curve can be determined using dynamic programming based on the B-spline curve and the obstacle distance map. This initial trajectory can be a comprehensive optimal trajectory considering obstacle distances and angular and distance deviations from the second reference line; it can be called the initial optimal trajectory. For example, in the natural coordinate system, each search_ds (0.6m) on the s-axis (vertical) is considered a layer. On the l-axis (horizontal) between -max_lateral_range and max_lateral_range (6m), a coordinate point is sampled every lateral_spaceing (0.4m) to obtain the sampling points for each layer. Using the idea of ​​dynamic programming, the optimal trajectory is calculated. The initial layer has a cost for the difference from the initial state. Through the connection of adjacent layers, the cost of state transition is calculated, including the connection distance, the change in connection angle, and the cost of the distance between the sampling point and the obstacle (the closer to the obstacle, the higher the cost, which is a quadratic function). The route with the minimum cost is obtained when reaching the final layer, and this route is taken as the initial optimal trajectory.

[0103] After determining the initial trajectory corresponding to the B-spline curve, a safe driving space for the vehicle is obtained based on the initial trajectory and a preset spatial construction method. As an example, this spatial construction method includes: projecting from at least some points (such as sampling points) in the initial trajectory to both sides of the vertical axis perpendicular to the natural coordinate system, stopping upon encountering an obstacle or reaching a target distance, thereby obtaining the safe driving space for the vehicle. The target distance can be 20m or 21m, etc., and can be set according to actual needs; no specific limitation is made here. It should be noted that projecting to both sides of the vertical axis perpendicular to the natural coordinate system can be understood as projecting to the positive and negative directions of the l-axis (horizontal) of the natural coordinate system. Taking a target distance of 20m as an example, the projection to the positive and negative directions of the l-axis (horizontal) of the natural coordinate system uses the obstacle position as the maximum safe boundary; when no obstacle is encountered, the boundary is -20m or 20m.

[0104] This application's embodiments formalize the reference line optimization problem into the ILQR (Iterative Linear Quadratic Regulator) format. CILQR (Constrained Iterative Linear Quadratic Regulator) introduces a constraint handling mechanism based on LQR (Linear Quadratic Regulator), making it suitable for real-time optimization of nonlinear systems. Through iterative linearization and constrained projection, hard constraints such as dynamics and obstacles are satisfied while ensuring computational efficiency.

[0105] After obtaining the safe driving space for the vehicle, the cost function Cost is then constructed based on the initial trajectory by setting cost terms and constraint terms. total Specifically, the target trajectory is obtained by performing forward dynamics calculations on at least some points (such as sampling points) in the initial trajectory. Based on the target trajectory, a cost function Cost is constructed by setting cost terms and constraint terms. total .

[0106] The cost terms include ref_l_cost, kappa_cost, kappa_rate_cost, start_state_cost, and end_state_cost; where cost represents the cost. ref_l_cost, where ref_l is short for reference_line, can represent the reference line. ref_l_cost can be called the lateral offset cost, representing the lateral distance between the optimized point and the second reference line, indicating the distance the vehicle deviates from the second reference line when traveling along the optimized reference line. kappa_cost, where kappa can represent curvature, can be called the curvature cost, representing the curvature cost of the optimized point, indicating the vehicle's turning radius, i.e., the steering wheel angle. kappa_rate_cost, where rate can represent the rate of change, can be called the curvature change cost, indicating the rate of steering wheel rotation. start_state_cost, where start can represent the starting point (or starting point for short), and state can represent the state, can be called the starting state difference cost, constraining the optimized starting state to be as consistent as possible with the expected starting state (such as angle, lateral distance). In `end_state_cost`, `end` can represent the endpoint (or simply end point), and `end_state_cost` can be called the endpoint state difference cost. After constraint optimization, the endpoint state should be as consistent as possible with the expected endpoint state (such as angle or lateral distance). Constraints include `front_boundary_constraint`, `rear_boundary_constraint`, and `kappa_constraint`; each `constraint` represents a constraint. In `front_boundary_constraint`, `front` can represent the front axle, and `boundary` can represent the boundary; `front_boundary_constraint` can be called the front axle boundary constraint. In `rear_boundary_constraint`, `rear` can represent the rear axle; `rear_boundary_constraint` can be called the rear axle boundary constraint. Both the front and rear axle boundary constraints are determined based on the aforementioned safety space, indicating that the vehicle geometry should be within this safety space to ensure collision avoidance. `kappa_constraint` can be called a curvature constraint, representing the upper limit of the vehicle's cornering control capability.

[0107] Finally, the cost equation, i.e., the specific expression of the cost function, is obtained. The format of the cost equation is as follows, where W can represent the weight, l can represent the lateral offset, kappa can represent the curvature, Rate can represent the rate of change, and Diff can represent the difference:

[0108]

[0109] in, Cost of lateral offset Specific manifestations, It can represent The corresponding weight, l rel It can represent the distance by which the optimized reference line deviates from the second reference line. Cost of curvature Specific manifestations, It can represent The corresponding weights. Cost of curvature change Specific manifestations, It can represent The corresponding weights It can represent the rate of change of curvature.

[0110] The specific representation of the starting state difference cost, start_state_cost, is as follows: W can represent the distance cost. start_l The weight can represent the distance cost, l start This can represent the distance between the optimized starting point and the starting point of the second reference line. W can represent the angular cost. start_heading_diff The Diff can represent the weights corresponding to the cost at that angle. start_state_heading It can represent the difference between the optimized starting point orientation and the expected starting point orientation.

[0111] The specific representation of the end-state difference cost, where W can represent the distance cost. end_l The weight can represent the distance cost, l end This can represent the distance by which the optimized endpoint deviates from the endpoint of the second reference line. W can represent the angular cost. end_heading_diff The Diff can represent the weights corresponding to the cost at that angle. end_state_heading It can represent the difference between the optimized endpoint orientation and the expected endpoint orientation.

[0112] Next, the cost function is iteratively optimized using an iterative linear quadratic regulator algorithm until convergence or the maximum number of iterations is reached, resulting in an optimized trajectory. A third reference line is then generated based on the optimized trajectory.

[0113] As described above, the embodiments of this application can use B-spline curves, combined with dynamic constraints, obstacle hard constraints, start and end state constraints and lateral offset constraints, to optimize the safety and comfort of the reference line and the controllability of the vehicle while ensuring that the deviation from the second reference line is within a limited range.

[0114] After generating the third reference line, the target reference line is determined based on it. For example, if the third reference line passes the validity check, the previous global reference line and the third reference line are concatenated to generate the target reference line. Here, the third reference line is a local reference line, and the target reference line is a global reference line.

[0115] Figure 4 This is a schematic diagram of the reference line splicing logic provided in an embodiment of this application. Based on Figure 4 As illustrated in the diagram, the solution provided in this application adopts a dynamic update mechanism. By verifying the legality of the third reference line and considering the availability of the previous global reference line, it decides whether to reuse the previous global reference line or splice reference lines. For example, the lateral offset *l* and curvature *kappa* of the reference points in the third reference line can be verified. If all reference points satisfy the upper limit constraint, the reference line is legal. When the third reference line passes the legality verification, the previous global reference line and the third reference line can be spliced ​​to obtain the target reference line. When the third reference line fails the legality verification, it can be determined whether the previous global reference line is available. For example, if the vehicle has not yet left the range of the previous global reference line, such as if the distance traveled by the vehicle from the generation time of the original reference line to the current time does not exceed the aforementioned *N* meters, then the previous global reference line is determined to be available; otherwise, the previous global reference line is determined to be unavailable. If the third reference line fails the legality verification and the previous global reference line is available, then the previous global reference line is used as the target reference line. If the third reference line fails the validity check and the previous global reference line is unavailable, then the previous global reference line and the second reference line are spliced ​​together to obtain the target reference line.

[0116] In one implementation, the target reference line obtained through splicing has state constraints set at the splicing segment, and noise reduction processing is performed again to achieve seamless connection and continuity of the trajectory. These state constraints include position constraints, angle constraints, and curvature constraints. The position constraint indicates that the endpoint of the previous global reference line and the starting point of the local reference line (such as the second or third reference line) are at the same position. The angle constraint indicates that the endpoint of the previous global reference line and the starting point of the local reference line have the same angle. The curvature constraint indicates that the endpoint of the previous global reference line and the starting point of the local reference line have the same curvature. As described above, the optimized reference line length can be set to 10m; at this distance, a curve that converges more easily can be obtained. By setting the starting point position and attitude constraints, it can be ensured that the endpoint state of the previous global reference line is the starting state of the next local reference line. Smooth transitions are achieved through curvature constraints.

[0117] Figure 5 This is another flowchart of the reference line processing method provided in the embodiments of this application. For example... Figure 5 As shown, the reference line processing method includes the following steps:

[0118] S501: Obtain the vehicle's original reference line;

[0119] S503: Add the starting reference point of the original reference line to the target container;

[0120] S505: Starting from the next reference point after the initial reference point, sequentially determine the distance between each third reference point in the original reference line (excluding the initial reference point) and the reference point of the most recently added target container, and set a distance less than or equal to a distance threshold. In this case, add the third reference point to the target container;

[0121] S507: The angular difference between any two adjacent reference points within the target container exceeds a set value. In the case of a target reference point, based on the preset step size max_step, a fourth reference point is determined among the reference points in the target container that are in front of the target reference point. The reference points in the target container that are between the fourth reference point and the target reference point are then subjected to average interpolation. The target reference point is the next reference point among the adjacent reference points.

[0122] S509: Generate a first reference line based on each reference point within the target container after average interpolation;

[0123] S511: When a target line segment exists in the first reference line, a first reference point and a second reference point are determined in the first reference line. At least some reference points in the target line segment do not satisfy curvature constraints. Along the direction from the start point to the end point of the first reference line, the first reference point is located in front of the target line segment and satisfies curvature constraints, and the second reference point is located behind the target line segment and satisfies curvature constraints.

[0124] S513: Using the first reference point and the second reference point as the beginning and end of the arc, generate a fitted arc, and optimize the curvature of the target line segment based on the fitted arc to obtain the second reference line;

[0125] S515: Convert the second reference line into a B-spline curve. Based on the B-spline curve and the obstacle distance map, use dynamic programming to determine the initial trajectory corresponding to the B-spline curve.

[0126] S517: Obtain the safe space for vehicle travel based on the initial trajectory and a preset spatial construction method;

[0127] S519: Based on the initial trajectory, a cost function is constructed by setting cost terms and constraint terms;

[0128] S521: Use the iterative linear quadratic regulator algorithm to iteratively optimize the cost function until it converges or reaches the maximum number of iterations, and obtain the optimized trajectory.

[0129] S523: Generate a third reference line based on the optimized trajectory;

[0130] S525: If the third reference line passes the validity check, the previous global reference line and the third reference line are spliced ​​together to generate the target reference line.

[0131] For an explanation of steps S510 to S525, please refer to the relevant descriptions above, and they will not be repeated here.

[0132] Figure 5 The solutions provided in the corresponding embodiments can achieve the following objectives:

[0133] 1) Based on the original reference line tracing, errors caused by real-time positioning and vehicle position and attitude estimation are avoided. Considering that there are bound to be errors when collecting data during the generation of the original reference line, the denoising algorithm can effectively eliminate sensor noise and unreasonable inflection points in the original reference line (such as lane center line and perception generation line), avoid vehicle lateral control jitter caused by sudden changes in local curvature or angle jumps, and at the same time retain the real road topology feature map;

[0134] 2) The reference line optimization algorithm is scene-independent and has stable optimization results in various scenarios. Under the premise of strictly satisfying the time-varying obstacle constraints, it ensures the high-order continuity of the curvature of the reference line, solving the problem of curvature discontinuity or excessive smoothing that weakens obstacle avoidance caused by hard constraint optimization in traditional methods.

[0135] 3) Verify the splicing reference lines and control the generation quality of the reference lines; during vehicle movement, through a local optimization and global splicing collaborative strategy, ensure that the curvature difference between adjacent frame reference lines at the splicing point is within a certain range; seamlessly integrate the local reference lines with the historical trajectory and ensure that the time consumed by a single local optimization is within 10ms.

[0136] As described above, embodiments of this application provide a reference line denoising method that can remove noise points in the original reference line whose distances and angles do not meet expectations, and perform smoothing, with excellent algorithm performance. Embodiments of this application also provide a reference line polyline and curve preprocessing method that can optimize the curvature of polylines and curves in the original reference line based on curvature, effectively reducing curvature. Embodiments of this application provide a reference line optimization method that comprehensively considers a weighted cost function that takes into account obstacle distance hard constraints, curvature hard constraints, lateral distance hard constraints, and start / end point state constraints, conforming to obstacle constraints and dynamic constraints, and exhibiting excellent optimization performance. Embodiments of this application provide a method for splicing local reference lines and preceding reference lines, including reference line validity verification and reference line splicing and splicing segment smoothing, with good real-time performance, high reliability, and stable characteristics in many scenarios.

[0137] In some embodiments, the arc fitting method described above can be replaced by spline curve fitting, polynomial curve fitting, etc.

[0138] Figure 6 This is a schematic diagram of the reference line processing apparatus provided in an embodiment of this application. The reference line processing apparatus includes:

[0139] Acquisition unit 601 is configured to acquire the first reference line of the vehicle;

[0140] The first determining unit 602 is configured to determine a first reference point and a second reference point in the first reference line when a target line segment exists in the first reference line. At least some of the reference points in the target line segment do not satisfy curvature constraints. Along the direction from the start point to the end point of the first reference line, the first reference point is located in front of the target line segment and satisfies curvature constraints, and the second reference point is located behind the target line segment and satisfies curvature constraints.

[0141] The optimization unit 603 is configured to generate a fitted arc with the first reference point and the second reference point as the beginning and end of the arc, and to optimize the curvature of the target line segment based on the fitted arc to obtain the second reference line.

[0142] The second determining unit 604 is configured to determine the target reference line of the vehicle based on the second reference line.

[0143] In one embodiment, the acquisition unit 601 is configured to acquire a first reference line of the vehicle, including:

[0144] Obtain the vehicle's original reference line;

[0145] The original reference line is denoised to generate the first reference line.

[0146] In one embodiment, the acquisition unit 601 is configured to perform noise reduction processing on the original reference line to generate a first reference line, including:

[0147] Add the starting reference point of the original reference line to the target container;

[0148] Starting from the next reference point after the starting reference point, determine the distance between each third reference point in the original reference line (excluding the starting reference point) and the reference point newly added to the target container, and add the third reference point to the target container if the distance is less than or equal to the distance threshold.

[0149] A first reference line is generated based on the reference points within the target container.

[0150] In one implementation, the acquisition unit 601 is configured to generate a first reference line based on reference points within the target container, including:

[0151] If the angle difference between any two adjacent reference points in the target container exceeds a set value, a fourth reference point is determined among the reference points in the target container that are in front of the target reference point, based on a preset step size. The reference points in the target container that are located between the fourth reference point and the target reference point are then subjected to average interpolation. The target reference point is the next reference point among these adjacent reference points.

[0152] A first reference line is generated based on the reference points within the target container after average interpolation.

[0153] In one implementation, the target line segment is a broken line;

[0154] The first determining unit 602 is configured to determine a first reference point and a second reference point in a first reference line, including:

[0155] The reference point that is closest to the polyline and satisfies the curvature constraint in front of the polyline is determined as the first reference point;

[0156] The reference point that is closest to the polyline and satisfies the curvature constraint behind the polyline is determined as the second reference point.

[0157] In one implementation, the target line segment is a turning segment;

[0158] The first determining unit 602 is configured to determine a first reference point and a second reference point in a first reference line, including:

[0159] The reference point closest to the turning segment and satisfying the curvature constraint is determined as the first initial point, and based on a preset distance, a reference point located in front of the first initial point is selected from the first reference line as the first reference point.

[0160] The reference point closest to the turning segment and satisfying the curvature constraint behind the turning segment is determined as the second initial point. Based on a preset distance, a reference point located behind the second initial point is selected from the first reference line as the second reference point.

[0161] In one implementation, the second determining unit 604 is configured to determine a target reference line for the vehicle based on a second reference line, including:

[0162] The second reference line is optimized to generate the third reference line;

[0163] Determine the target reference line based on the third reference line.

[0164] In one embodiment, the second determining unit 604 is configured to optimize the second reference line to generate a third reference line, including:

[0165] The second reference line is converted into a B-spline curve. Based on the B-spline curve and the obstacle distance map, the initial trajectory corresponding to the B-spline curve is determined by dynamic programming.

[0166] Based on the initial trajectory and a preset spatial construction method, the safe space in which the vehicle can drive is obtained;

[0167] Based on the initial trajectory, a cost function is constructed by setting cost terms and constraint terms;

[0168] The cost function is iteratively optimized using the iterative linear quadratic regulator algorithm until convergence or the maximum number of iterations is reached, thus obtaining the optimized trajectory.

[0169] A third reference line is generated based on the optimized trajectory.

[0170] In one implementation, the second determining unit 604 is configured to determine a target reference line based on a third reference line, including:

[0171] If the third reference line passes the validity check, the previous global reference line and the third reference line are spliced ​​together to generate the target reference line.

[0172] It should be noted that other aspects and implementation details of the reference line processing apparatus provided in this application embodiment are the same as or similar to the reference line processing method described above, and will not be repeated here.

[0173] This application embodiment also provides a computer device, which includes a memory and a processor. The memory stores a computer program, and when the processor executes the computer program, it implements, for example, […]. Figure 1 or Figure 5 The described method for handling reference lines.

[0174] This application embodiment also provides a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the following... Figure 1 or Figure 5The described method for handling reference lines.

[0175] This application also provides a computer program product, including a computer program / instructions, which, when executed by a processor, implements the following: Figure 1 or Figure 5 The described method for handling reference lines.

[0176] The above description is only a partial implementation of the embodiments of this application and is not intended to limit the application in any way. The protection scope of the embodiments of this application is not limited thereto. Any simple modifications, equivalent changes and alterations that can be easily conceived by those skilled in the art within the technical scope disclosed in the embodiments of this application should be included within the protection scope of the embodiments of this application.

Claims

1. A reference line processing method, characterized in that, include: Obtain the vehicle's first reference line; When a target line segment exists on the first reference line, a first reference point and a second reference point are determined on the first reference line. At least some reference points in the target line segment do not satisfy the curvature constraint. Along the direction from the start point to the end point of the first reference line, the first reference point is located in front of the target line segment and satisfies the curvature constraint, and the second reference point is located behind the target line segment and satisfies the curvature constraint. Using the first reference point and the second reference point as the beginning and end of the arc, a first fitted arc is generated, and the curvature of the target line segment is optimized based on the first fitted arc to obtain a second reference line; wherein, the curvature optimization of the target line segment includes: sampling coordinate points of the first fitted arc, and replacing each reference point in the target line segment with each sampled coordinate point; The second reference line is optimized to generate the third reference line; Based on the third reference line, a target reference line for the vehicle is determined; wherein, if the third reference line fails the validity check and the preceding global reference line of the third reference line is available, the preceding global reference line is used as the target reference line; if the third reference line fails the validity check and the preceding global reference line is unavailable, the preceding global reference line and the second reference line are spliced ​​together to obtain the target reference line.

2. The reference line processing method according to claim 1, characterized in that, The acquisition of the first reference line of the vehicle includes: Obtain the original reference line of the vehicle; The original reference line is denoised to generate the first reference line.

3. The reference line processing method according to claim 2, characterized in that, The original reference line is denoised to generate the first reference line, including: Add the starting reference point of the original reference line to the target container; Starting from the next reference point of the starting reference point, the distance between each third reference point in the original reference line other than the starting reference point and the reference point most recently added to the target container is determined sequentially, and if the distance is less than or equal to a distance threshold, the third reference point is added to the target container; The first reference line is generated based on each reference point within the target container.

4. The reference line processing method according to claim 3, characterized in that, Based on each reference point within the target container, the first reference line is generated, including: If the angle difference between any two adjacent reference points in the target container exceeds a set value, a fourth reference point is determined among the reference points in the target container located in front of the target reference point based on a preset step size. The reference points in the target container located between the fourth reference point and the target reference point are then subjected to average interpolation. The target reference point is the next reference point among the adjacent reference points. The first reference line is generated based on each reference point within the target container after average interpolation.

5. The reference line processing method according to claim 1, characterized in that, The target line segment is a broken line; Determining a first reference point and a second reference point within the first reference line includes: The reference point that is closest to the polyline and satisfies the curvature constraint in front of the polyline is determined as the first reference point; The reference point that is closest to the polyline behind the polyline and satisfies the curvature constraint is determined as the second reference point.

6. The reference line processing method according to claim 1, characterized in that, The target line segment is a turning segment; Determining a first reference point and a second reference point within the first reference line includes: The reference point that is closest to the turning segment and satisfies the curvature constraint in front of the turning segment is determined as the first initial point, and based on a preset distance, a reference point located in front of the first initial point is selected from the first reference line as the first reference point. The reference point that is closest to the turning segment and satisfies the curvature constraint behind the turning segment is determined as the second initial point, and based on the preset distance, a reference point located behind the second initial point is selected from the first reference line as the second reference point.

7. The reference line processing method according to claim 1, characterized in that, The second reference line is optimized to generate a third reference line, including: The second reference line is converted into a B-spline curve. Based on the B-spline curve and the obstacle distance map, a dynamic programming method is used to determine the initial trajectory corresponding to the B-spline curve. Based on the initial trajectory and the preset spatial construction method, the safe space in which the vehicle can drive is obtained; Based on the initial trajectory, a cost function is constructed by setting cost terms and constraint terms; The cost function is iteratively optimized using an iterative linear quadratic regulator algorithm until convergence or the maximum number of iterations is reached, thus obtaining the optimized trajectory. The third reference line is generated based on the optimized trajectory.

8. The reference line processing method according to claim 1, characterized in that, Determining the target reference line of the vehicle based on the third reference line includes: If the third reference line passes the validity check, the previous global reference line and the third reference line are spliced ​​together to generate the target reference line.

9. A reference line processing apparatus, characterized in that, include: The acquisition unit is configured to acquire the first reference line of the vehicle; The first determining unit is configured to determine a first reference point and a second reference point in the first reference line when a target line segment exists in the first reference line, wherein at least some reference points in the target line segment do not satisfy curvature constraints, and along the direction from the start point to the end point of the first reference line, the first reference point is located in front of the target line segment and satisfies the curvature constraints, and the second reference point is located behind the target line segment and satisfies the curvature constraints. The optimization unit is configured to generate a first fitted arc with the first reference point and the second reference point as the beginning and end of the arc, and to perform curvature optimization on the target line segment based on the first fitted arc to obtain a second reference line; wherein, the curvature optimization on the target line segment includes: sampling coordinate points on the first fitted arc, and replacing each reference point in the target line segment with each sampled coordinate point; The second determining unit is configured to optimize the second reference line to generate a third reference line; and determine the target reference line of the vehicle based on the third reference line; wherein, if the third reference line fails the validity check and the preceding global reference line of the third reference line is available, the preceding global reference line is used as the target reference line; if the third reference line fails the validity check and the preceding global reference line is unavailable, the preceding global reference line and the second reference line are spliced ​​together to obtain the target reference line.

Citation Information

Patent Citations

  • Lane reference line optimization method and device, equipment and storage medium

    CN115009284A

  • Method, device, equipment and program product for estimating curvature of driving reference line

    CN116061948A

  • Reference line smoothing optimization method and device in path planning, equipment and medium

    CN117146844A

  • Method, device and equipment for generating lane center line of virtual lane

    CN117974834A