A NURBS-based global path smoothing method and system for vehicles
By adopting the NURBS-based vehicle global path smoothing method in the autonomous driving system, the problem that existing topological paths cannot meet the kinematic requirements of autonomous driving vehicles is solved, and path smoothing processing with higher accuracy and higher efficiency is achieved.
Patent Information
- Application Number
- CN202311460885.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-11-06
- Publication Date
- 2025-06-27
- Estimated Expiration
- 2043-11-06
AI Technical Summary
The existing topological paths cannot meet the kinematic requirements of autonomous vehicles, and the commonly used Bezier curves and B-spline curves have shortcomings in local trimming and precise representation of quadratic curves.
The vehicle global path smoothing method based on NURBS is used to determine the optimal global path by performing node identification and weight evaluation on the lidar point cloud map, and the path is smoothed by NURBS curve.
It realizes better smoothing of the global vehicle path without losing accuracy, meets the kinematic requirements of autonomous driving vehicles, and reduces the processing volume of the planning system.
Smart Images

Figure CN117369469B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of autonomous driving, and specifically to a method and system for smoothing the global path of a vehicle based on NURBS. Background Art
[0002] Commonly used autonomous driving environment maps mainly include grid maps, topological maps, and high-precision maps. Grid maps are easy to construct and save, have a unique representation of positions, but have low planning efficiency, waste space, and are not conducive to real-time processing by autonomous driving vehicles; the production process of high-precision maps is cumbersome. Currently, only some domestic manufacturers have relatively mature high-precision map data, and it is difficult for ordinary users to customize and use them for specific needs; topological maps have a simple structure, low spatial complexity, are easy to produce, and can greatly reduce the implementation threshold of autonomous driving in general scenarios.
[0003] A topological path consists of nodes and line segments, and there are inflection points at the connections of each line segment, which does not meet the requirements of vehicle kinematics and cannot directly meet the driving needs of autonomous driving vehicles. Therefore, after obtaining the topological global path of the vehicle, it needs to be smoothed to meet the needs of subsequent trajectory planning.
[0004] Commonly used vehicle global path smoothing methods are Bezier curves and B-spline curves. Bezier curves are fitted based on control points, but changing the control points will cause changes in the entire curve, which is not conducive to local trimming; B-spline curves solve the problem that Bezier curves cannot be locally trimmed and can support node insertion, but they cannot accurately represent quadratic curves other than parabolic curves and cannot fully meet the needs of engineering applications. Summary of the Invention
[0005] To solve the above technical problems in the background, based on the topological map, this application proposes a method for smoothing the global path of a vehicle based on NURBS, which can, without losing accuracy, use a very convenient and simple environment map to perform better smoothing on the global path of the vehicle and endow the global path of the autonomous driving vehicle with new functions.
[0006] To achieve the above object, this application provides a method for smoothing the global path of a vehicle based on NURBS, and the steps include:
[0007] Survey the surrounding environment of the autonomous driving scenario to obtain the lidar point cloud map of the autonomous driving scenario;
[0008] Perform node identification on the lidar point cloud map to complete the drawing of the topological map;
[0009] Evaluate the weights of the identified nodes to obtain weight coefficients;
[0010] Determine the optimal global path on the topological map based on the weight coefficients;
[0011] Perform NURBS curve smoothing on the global path to obtain a NURBS path;
[0012] Update the NURBS path according to the requirements of the autonomous driving vehicle until the autonomous driving task is completed.
[0013] Preferably, the method for performing the weight evaluation includes:
[0014] Initialize the weights of the marked nodes;
[0015] Design a weight constraint function for the initialized weights;
[0016] Calculate the constrained weights to complete the weight evaluation.
[0017] Preferably, the method for performing the weight initialization includes:
[0018] Initialize the weight ω i :
[0019] Initialize the weight of the "default node" to 1;
[0020] Initialize the weight of the "must-pass node" to "pass";
[0021] Initialize the weight of the "node to be docked or approached" to "close";
[0022] Initialize the weight of the "node that cannot affect the global path" to "unaffected";
[0023] Initialize the weight of the "node that needs dynamic adjustment" to "dynamic";
[0024] Initialize the weight of the "newly added node" to 1.
[0025] Preferably, the method for designing the weight constraint function includes:
[0026]
[0027]
[0028] Among them, f(v) is the weight constraint function of the vehicle at a vehicle speed of v; ν is the vehicle driving speed; L is the vehicle wheelbase; μ is the static friction coefficient; g is the acceleration due to gravity; R is the minimum turning radius of the vehicle; r(ν) is the turning radius of the vehicle at a vehicle speed of ν.
[0029] Preferably, the method for calculating the weights includes:
[0030] When the weight is initialized to 1:
[0031] ω i = 1
[0032] When the weight is initialized to "pass":
[0033] ω i = mf(ν)
[0034] When the weight is initialized to "close":
[0035] ω i = 1 + nf(ν)
[0036] When the weight is initialized to "dynamic":
[0037] ω i = af(ν)
[0038] Wherein, m and n are constants; a is a dynamic adjustment factor.
[0039] Preferably, the method for determining the optimal global path includes: checking whether there is a node P i with a weight value of "pass", if so, according to the starting point, node P i , the end point, and all nodes with weight values not being "unaffected", determine the optimal global path.
[0040] Preferably, the method for obtaining the NURBS path includes:
[0041] Determine the number of control points and the curve order according to the identified nodes;
[0042] Based on the number of control points and the curve order, calculate the knot vector;
[0043] Define the basis function according to de Boor-Cox;
[0044] Based on the basis function, according to the weight coefficients and the knot vector, calculate the NURBS curve to obtain the NURBS path.
[0045] This application also provides a vehicle global path smoothing system based on NURBS, including: a surveying and mapping module, a drawing module, an evaluation module, a determination module, an optimization module, and an update module;
[0046] The surveying and mapping module is used to survey the surrounding environment of the autonomous driving scenario to obtain the lidar point cloud map of the autonomous driving scenario;
[0047] The drawing module is used to perform node identification on the lidar point cloud map to complete the drawing of the topological map;
[0048] The evaluation module is used to evaluate the weight of the identified nodes to obtain a weight coefficient;
[0049] The determination module is used to determine the optimal global path on the topological map based on the weight coefficient;
[0050] The optimization module is used to perform NURBS curve smoothing on the global path to obtain a NURBS path;
[0051] The update module is used to update the NURBS path according to the requirements of the autonomous driving vehicle until the autonomous driving task is completed.
[0052] Compared with the prior art, the beneficial effects of this application are as follows:
[0053] This application realizes the smoothing of the global path of the autonomous driving vehicle based on the NURBS curve. While using a small occupied space and ensuring good accuracy, it realizes the smoothing of the global path with higher accuracy at a higher efficiency. This application solves the problem that the topological path cannot meet the kinematic requirements of the vehicle, and at the same time proposes a new solution for the temporary requirements such as the docking of the autonomous driving vehicle, reducing the processing volume of the planning system. By introducing the weight of NURBS, the real-time processing of the global path is realized without changing the map nodes, and it has a good effect in engineering applications, reducing the threshold for the implementation of autonomous driving. Brief Description of the Drawings
[0054] In order to more clearly illustrate the technical solutions of this application, the drawings required for use in the embodiments will be briefly introduced below. Obviously, the drawings in the following description are only some embodiments of this application. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.
[0055] Figure 1 It is a schematic flowchart of the method of this application embodiment;
[0056] Figure 2 It is a schematic flowchart of the NURBS curve smoothing process of this application embodiment;
[0057] Figure 3 It is a schematic flowchart of the real-time processing of the autonomous driving task of this application embodiment;
[0058] Figure 4 It is a schematic diagram of the system structure of this application embodiment. Detailed Description of the Embodiments
[0059] Next, the technical solutions in the embodiments of the present application will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present application.
[0060] To make the above objects, features, and advantages of the present application more obvious and understandable, the present application will be further described in detail below in conjunction with the accompanying drawings and specific embodiments.
[0061] Embodiment 1
[0062] As Figure 1 shown, it is a schematic flowchart of the method in the embodiment of the present application, and the steps include:
[0063] S1. Survey the surrounding environment of the autonomous driving scenario to obtain the lidar point cloud map of the autonomous driving scenario.
[0064] Use a vehicle equipped with a lidar and an inertial measurement unit to conduct environmental surveying, and obtain the lidar point cloud map of the autonomous driving scenario through simultaneous localization and mapping.
[0065] S2. Perform node identification on the lidar point cloud map to complete the drawing of the topological map.
[0066] Based on the lidar point cloud map, manually identify the nodes. The node positions are the road points, intersections, and some important signs and buildings that the autonomous vehicle may pass through. According to the requirements of the autonomous vehicle and the characteristics of the map, describe the nodes and topological relationships on the map, and save the topological map in XML format.
[0067] S3. Evaluate the weights of the identified nodes to obtain the weight coefficients.
[0068] The specific steps include:
[0069] S3.1. Initialize the weights of the identified nodes.
[0070] Initialize the weight ω i :
[0071] Initialize the weight of the "default node" to 1;
[0072] Initialize the weight of the "node that must be passed through" to "pass";
[0073] Initialize the weight of the "node that needs to stop or approach" to "close";
[0074] Initialize the weight of "nodes that have no impact on the global path" to "unaffected".
[0075] Initialize the weight of "nodes that need to be dynamically adjusted" to "dynamic".
[0076] Initialize the weight of "newly added nodes" to 1.
[0077] S3.2. Design a weight constraint function for the initialized weights.
[0078] Design a weight constraint function according to the lateral dynamics of the autonomous vehicle;
[0079]
[0080]
[0081] Among them, f(v) is the weight constraint function of the vehicle at a vehicle speed of v; ν is the vehicle driving speed, L is the vehicle wheelbase, μ is the static friction coefficient, g is the acceleration due to gravity, R is the minimum turning radius of the vehicle, and r(ν) is the turning radius of the vehicle at a vehicle speed of ν.
[0082] S3.3. Calculate the constrained weights to complete the weight evaluation.
[0083] When the initialized weight is 1:
[0084] ω i = 1
[0085] When the initialized weight is "pass":
[0086] ω i = mf(ν)
[0087] When the initialized weight is "close":
[0088] ω i = 1 + nf(ν)
[0089] When the initialized weight is "dynamic":
[0090] ω i = af(ν)
[0091] Among them, m and n are constants; a is the dynamic adjustment factor.
[0092] S4. Based on the weight coefficients, determine the optimal global path on the topological map.
[0093] Check if there exists a node P i with a weight value of "pass". If it exists, according to the starting point and node P i, determine the optimal global path for the termination point and the nodes whose ownership weight values are not "unaffected".
[0094] S5. Smooth the global path with a NURBS curve to obtain a NURBS path.
[0095] As Figure 2 shown, the specific steps include:
[0096] S5.1. Determine the number of control points and the curve order based on the identified nodes.
[0097] Based on the existing node P i , determine the number of control points N + 1 and the curve order K. To ensure that the global path passes through the start point and the termination point after smoothing, the multiplicity of the start point and the termination point is K + 1.
[0098] S5.2. Calculate the knot vector based on the number of control points and the curve order.
[0099] Calculate the knot vector according to the Hartley-Judd algorithm:
[0100]
[0101] where g and h are real numbers; u represents the parametric knot corresponding to the control point; M = N + 1 + K.
[0102] S5.3. Define the basis function according to de Boor-Cox.
[0103]
[0104]
[0105] where represents the k-th basis function on the knot vector U; represents the 1st basis function on the knot vector U; and it is agreed that
[0106] S5.4. Calculate the NURBS curve based on the basis function, the weight coefficient, and the knot vector to obtain the NURBS path.
[0107]
[0108] where N(u) is the NURBS curve of degree k defined on the knot vector U; ω i is the weight.
[0109] S6. Update the NURBS path according to the requirements of the autonomous driving vehicle until the autonomous driving task is completed.
[0110] When S6.1 needs to dock at a certain sign or building:
[0111] S6.1.1 Check whether a new node is added. If not, execute S6.1.2; if so, add the node, change the weight to "close", and execute S6.1.3;
[0112] S6.1.2 Select a node and check whether the weight is "close". If not, change the weight to "close";
[0113] S6.1.3 Return to S3.3;
[0114] When S6.2 needs to temporarily pass by a certain sign or building:
[0115] S6.2.1 Check whether a new node is added. If not, execute S6.2.2; if so, add the node, change the weight to "pass", and execute S6.2.3;
[0116] S6.2.2 Select a node and check whether the weight is "pass". If not, change the weight to "pass", and S6.2.3 Return to S3.3;
[0117] When S6.3 needs to dynamically adjust the curve shape:
[0118] S6.3.1 Select whether to add a new node. If so, add the node, change the weight to "dynamic", and execute S6.3.3;
[0119] S6.3.2 Select a node and check whether the weight is "dynamic". If not, change the weight to "dynamic";
[0120] S6.3.3 Adjust a and return to S3.3;
[0121] S6.4 Repeat S6.1, S6.2, and S6.3 to update the NURBS path until the autonomous driving task is completed.
[0122] Embodiment 2
[0123] Next, in combination with this embodiment and Figure 3 ..., the implementation scenario of this method will be described in detail. It is mainly used to perform operations such as adding nodes and changing weight coefficients according to the tasks temporarily encountered by the autonomous driving vehicle during driving, such as temporarily docking, passing by a certain sign or building, and dynamically adjusting the global path, so as to achieve real-time processing of the global path.
[0124] When the vehicle needs to dock at a certain sign or building, the steps are as follows:
[0125] Step 1: Check if a new node is added. If not, execute Step 2; if so, add the node, change the weight to "close" and execute Step 3;
[0126] Step 2: Select a node and check if the weight is "close". If not, change the weight to "close";
[0127] Step 3: Return to calculate the weight coefficient and fit the NURBS curve;
[0128] Step 4: Repeat Steps 1 - 3 to update the NURBS path until the autonomous driving task is completed.
[0129] When the vehicle needs to temporarily pass by a certain sign or building, the steps are as follows:
[0130] Step 1: Check if a new node is added. If not, execute Step 2; if so, add the node, change the weight to "pass" and execute Step 3;
[0131] Step 2: Select a node and check if the weight is "pass". If not, change the weight to "pass";
[0132] Step 3: Return to calculate the weight coefficient and fit the NURBS curve;
[0133] Step 4: Repeat Steps 1 - 3 to update the NURBS path until the autonomous driving task is completed.
[0134] When the curve shape needs to be dynamically adjusted, the steps are as follows:
[0135] Step 1: Select whether to add a new node. If not, execute Step 2; if so, add the node, change the weight to "dynamic" and execute Step 3;
[0136] Step 2: Select a node and check if the weight is "dynamic". If not, change the weight to "dynamic";
[0137] Step 3: Adjust a, return to calculate the weight coefficient and fit the NURBS curve;
[0138] Step 4: Repeat Steps 1 - 3 to update the NURBS path until the autonomous driving task is completed.
[0139] Example 3
[0140] As Figure 4As shown in the figure, it is a schematic diagram of the system structure of an embodiment of the present application, including: a surveying and mapping module, a drawing module, an evaluation module, a determination module, an optimization module, and an update module; the surveying and mapping module is used to survey the surrounding environment of the autonomous driving scenario to obtain a lidar point cloud map of the autonomous driving scenario; the drawing module is used to perform node identification on the lidar point cloud map to complete the drawing of the topological map; the evaluation module is used to evaluate the weights of the identified nodes to obtain weight coefficients; the determination module is used to determine the optimal global path on the topological map based on the weight coefficients; the optimization module is used to perform NURBS curve smoothing processing on the global path to obtain a NURBS path; the update module is used to update the NURBS path according to the requirements of the autonomous driving vehicle until the autonomous driving task is completed.
[0141] Next, in combination with this embodiment, it will be described in detail how the present application solves technical problems in real life.
[0142] First, use the surveying and mapping module to survey the surrounding environment of the autonomous driving scenario to obtain a lidar point cloud map of the autonomous driving scenario.
[0143] Use a vehicle equipped with a lidar and an inertial measurement unit to perform environmental surveying, and obtain a lidar point cloud map of the autonomous driving scenario through simultaneous localization and mapping.
[0144] After that, use the drawing module to perform node identification on the lidar point cloud map to complete the drawing of the topological map.
[0145] Based on the lidar point cloud map, manually identify the nodes. The node positions are the road points, intersections, and some important signs and buildings that the autonomous driving vehicle may pass through. According to the requirements of the autonomous driving vehicle and the map features, describe the node and topological relationships on the map, and save the topological map in XML format.
[0146] The evaluation module evaluates the weights of the identified nodes to obtain weight coefficients.
[0147] The specific process includes:
[0148] S3.1. Initialize the weights of the identified nodes.
[0149] Initialize the weight ω i :
[0150] Initialize the weight of the "default node" to 1;
[0151] Initialize the weight of the "node that must be passed through" to "pass";
[0152] Initialize the weight of the "node that needs to stop or approach" to "close";
[0153] Initialize the weight of "nodes that have no impact on the global path" to "unaffected".
[0154] Initialize the weight of "nodes that need to be dynamically adjusted" to "dynamic".
[0155] Initialize the weight of "newly added nodes" to 1.
[0156] S3.2. Design a weight constraint function for the initialized weights.
[0157] Design a weight constraint function according to the lateral dynamics of the autonomous vehicle;
[0158]
[0159]
[0160] Among them, f(v) is the weight constraint function of the vehicle at a vehicle speed of v; ν is the vehicle driving speed, L is the vehicle wheelbase, μ is the static friction coefficient, g is the acceleration due to gravity, R is the minimum turning radius of the vehicle, and r(ν) is the turning radius of the vehicle at a vehicle speed of ν.
[0161] S3.3. Calculate the constrained weights to complete the weight evaluation.
[0162] When the initialized weight is 1:
[0163] ω i = 1
[0164] When the initialized weight is "pass":
[0165] ω i = mf(ν)
[0166] When the initialized weight is "close":
[0167] ω i = 1 + nf(ν)
[0168] When the initialized weight is "dynamic":
[0169] ω i = af(ν)
[0170] Among them, m and n are constants; a is the dynamic adjustment factor.
[0171] The determination module determines the optimal global path on the topological map based on the weight coefficients.
[0172] Check whether there is a node P i with a weight value of "pass". If so, according to the starting point and node P i, the end point, and the nodes with non - "unaffected" ownership weight values to determine the optimal global path.
[0173] The optimization module performs NURBS curve smoothing on the global path to obtain a NURBS path.
[0174] As Figure 2 shown, the specific process includes:
[0175] S5.1. Determine the number of control points and the curve order according to the identified nodes.
[0176] Based on the existing node P i , determine the number of control points N + 1 and the curve order K. To ensure that the global path passes through the start point and the end point after smoothing, the multiplicity of the start point and the end point is K + 1.
[0177] S5.2. Calculate the node vector based on the number of control points and the curve order.
[0178] Calculate the node vector according to the Hartley - Judd algorithm:
[0179]
[0180] where g, h are real numbers; u represents the parametric node corresponding to the control point; M = N + 1+K.
[0181] S5.3. Define the basis function according to de Boor - Cox.
[0182]
[0183]
[0184] where represents the k - th basis function on the node vector U; represents the 1 - st basis function on the node vector U; and it is agreed that
[0185] S5.4. Based on the basis function, calculate the NURBS curve according to the weight coefficient and the node vector to obtain the NURBS path.
[0186]
[0187] where N(u) is the NURBS curve of degree k defined on the node vector U; ω i is the weight.
[0188] The update module updates the NURBS path according to the requirements of the autonomous driving vehicle until the autonomous driving task is completed. The specific process includes:
[0189] When S6.1 needs to dock at a certain sign or building:
[0190] S6.1.1 Check whether a new node is added. If not, execute S6.1.2; if so, add the node, change the weight to "close", and execute S6.1.3;
[0191] S6.1.2 Select a node and check whether the weight is "close". If not, change the weight to "close";
[0192] S6.1.3 Return to S3.3;
[0193] When S6.2 needs to pass by a certain sign or building temporarily:
[0194] S6.2.1 Check whether a new node is added. If not, execute S6.2.2; if so, add the node, change the weight to "pass", and execute S6.2.3;
[0195] S6.2.2 Select a node and check whether the weight is "pass". If not, change the weight to "pass", and S6.2.3 Return to S3.3;
[0196] When S6.3 needs to dynamically adjust the curve shape:
[0197] S6.3.1 Select whether to add a new node. If so, add the node, change the weight to "dynamic", and execute S6.3.3;
[0198] S6.3.2 Select a node and check whether the weight is "dynamic". If not, change the weight to "dynamic";
[0199] S6.3.3 Adjust a and return to S3.3;
[0200] S6.4 Repeat S6.1, S6.2, and S6.3 to update the NURBS path until the autonomous driving task is completed.
[0201] The embodiments described above are only descriptions of the preferred embodiments of the present application, and do not limit the scope of the present application. Without departing from the design spirit of the present application, various deformations and improvements made by those of ordinary skill in the art to the technical solutions of the present application shall fall within the protection scope determined by the claims of the present application.
Claims
1. A global path smoothing method for vehicles based on NURBS, characterized in that the steps Including: Surveying and mapping the surrounding environment of the autonomous driving scenario to obtain the lidar point cloud map of the autonomous driving scenario; Performing node identification on the lidar point cloud map to complete the drawing of the topological map; Evaluating the weights of the identified nodes to obtain weight coefficients; the method for performing the weight evaluation includes: initializing the weights of the identified nodes; designing a weight constraint function for the initialized weights; calculating the constrained weights to complete the weight evaluation; Among them, the method for performing the weight initialization includes: initializing the weight ω i , initializing the weight of the "default node" to 1; initializing the weight of the "node that must be passed through" to "pass"; initializing the weight of the "node that needs to dock or approach" to "close"; initializing the weight of the "node that cannot affect the global path" to "unaffected"; initializing the weight of the "node that needs to be dynamically adjusted" to "dynamic"; initializing the weight of the "newly added node" to 1; The method for designing the weight constraint function includes: where f(v) is the weight constraint function of the vehicle at a vehicle speed of v; ν is the vehicle driving speed; L is the vehicle wheelbase; μ is the static friction coefficient; g is the acceleration due to gravity; R is the minimum turning radius of the vehicle; r(ν) is the turning radius of the vehicle at a vehicle speed of ν; The method for calculating the weights includes: When the initial weight is 1, ω i = 1 When the initial weight is "pass", ω i = mf(ν) When the initial weight is "close", ω i = 1 + nf(ν) Initializing the weight to "dynamic", ω i = af(ν) where m and n are constants; a is a dynamic adjustment factor; Determining the optimal global path on the topological map; Based on the weight coefficients, performing NURBS curve smoothing on the global path to obtain a NURBS path; According to the requirements of the autonomous driving vehicle, updating the NURBS path until the autonomous driving task is completed.
2. The NURBS-based global path smoothing method for vehicles according to claim 1, wherein The method for determining the optimal global path includes: checking whether there exists a node P i with a weight value of "pass", and if so, determining the optimal global path according to the starting point, node P i , the ending point, and all nodes with weight values not being "unaffected".
3. The NURBS-based global path smoothing method for vehicles according to claim 1, characterized in that The method for obtaining the NURBS path includes: Determining the number of control points and the curve order according to the identified nodes; Calculating the knot vector based on the number of control points and the curve order; Defining the basis function according to the de Boor-Cox; Based on the basis function, calculating the NURBS curve according to the weight coefficients and the knot vector to obtain the NURBS path.
4. A vehicle global path smoothing system based on NURBS, characterized in that, Including: A surveying and mapping module, a drawing module, an evaluation module, a determination module, an optimization module, and an update module; The surveying and mapping module is used to survey and map the surrounding environment of the autonomous driving scenario to obtain the lidar point cloud map of the autonomous driving scenario; The drawing module is used to perform node identification on the lidar point cloud map to complete the drawing of the topological map; The evaluation module is used to evaluate the weights of the identified nodes to obtain weight coefficients; The process for performing the weight evaluation includes: initializing the weights of the identified nodes; designing a weight constraint function for the initialized weights; calculating the constrained weights to complete the weight evaluation; Among them, the process of performing the weight initialization includes: initializing the weight ω i , initializing the weight of the "default node" to 1; initializing the weight of the "node that must be passed through" to "pass"; initializing the weight of the "node that needs to dock or approach" to "close"; initializing the weight of the "node that cannot affect the global path" to "unaffected"; initializing the weight of the "node that needs to be dynamically adjusted" to "dynamic"; initializing the weight of the "newly added node" to 1; The process for designing the weight constraint function includes: where f(v) is the weight constraint function of the vehicle at a vehicle speed of v; ν is the vehicle driving speed; L is the vehicle wheelbase; μ is the static friction coefficient; g is the acceleration due to gravity; R is the minimum turning radius of the vehicle; r(ν) is the turning radius of the vehicle at a vehicle speed of ν; The process for calculating the weights includes: When the initial weight is 1, ω i = 1 When the initial weight is "pass", ω i = mf(ν) When the initial weight is "close", ω i = 1 + nf(ν) Initializing the weight to "dynamic", ω i = af(ν) where m and n are constants; a is a dynamic adjustment factor; The determination module is used to determine the optimal global path on the topological map; The optimization module is used to perform NURBS curve smoothing processing on the global path based on the weight coefficient to obtain a NURBS path; The update module is used to update the NURBS path according to the requirements of the autonomous driving vehicle until the autonomous driving task is completed.
Citation Information
Patent Citations
Intelligent driving control method, device and system and storage medium
CN111367275A
Trajectory generation using non-uniform rational B-splines
US20070179685A1