Data processing method, apparatus and vehicle
Patent Information
- Application Number
- CN202310612007.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-05-26
- Publication Date
- 2026-10-23
- Estimated Expiration
- 2043-05-26
AI Technical Summary
[0004]然而,A*算法是一种静态路网中求解最短路径的直接搜索方法,在复杂已知局部空间,传统的A*算法进行路径规划,动态避障效果差
[0041]由上述技术方案可知,在对车辆进行路径规划时,获取地图、车辆定位信息和障碍物预测轨迹;基于地图和障碍物预测轨迹,得到时间预测价值地图,时间预测价值地图用于表示不同时间下的障碍物位置,,基于时间预测价值地图所述地图和所述障碍物预测轨迹进行路径规划,可以使规划出的路径尽量接近可行驶区域的中间位置,以远离障碍物,提高行驶安全性。基于车辆定位信息、时间预测价值地图和车辆状态,根据阿克曼底盘模型的运动约束和阈值约束,进行局部路径规划,得到第一规划路径前瞻性更好,避障效果更好。对第一规划路径进行轨迹平滑,得到第二规划路径,使得规划的路径更加平稳。基于第二规划路径进行轨迹跟踪,得到轨迹跟踪结果,通过轨迹跟踪结果优化路径规划过程,使得路径规划后的行驶体验更舒适。
Smart Images

Figure CN116659501B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of autonomous driving technology, and in particular to a data processing method, apparatus and vehicle. Background Technology
[0002] During autonomous driving, efficient path planning and path tracking optimization control help vehicles achieve rapid navigation tasks.
[0003] Currently, the commonly used path planning algorithm is the A*(A-Star) algorithm.
[0004] However, the A* algorithm is a direct search method for finding the shortest path in a static road network. In complex, known local spaces, the traditional A* algorithm performs poorly in path planning and dynamic obstacle avoidance. Summary of the Invention
[0005] In view of this, embodiments of this application provide a data processing method, apparatus, vehicle, and storage medium that can improve dynamic obstacle avoidance performance.
[0006] According to a first aspect of the embodiments of this application, a data processing method is provided, comprising: acquiring a map, vehicle positioning information, and obstacle prediction trajectory; obtaining a time prediction value map based on the map and obstacle prediction trajectory, the time prediction value map being used to represent the distance between the vehicle and obstacles at different times; performing local path planning based on vehicle positioning information, time prediction value map, and vehicle state, according to motion constraints and threshold constraints of an Ackerman chassis model, to obtain a first planned path; performing trajectory smoothing on the first planned path to obtain a second planned path; and performing trajectory tracking based on the second planned path to obtain a trajectory tracking result.
[0007] Optionally, the vehicle state includes vehicle coordinates, vehicle speed, vehicle heading angle, vehicle tire angle, and time information; the motion constraints and threshold constraints of the Ackerman chassis model include constraints on vehicle speed and vehicle tire angle.
[0008] Optionally, local path planning includes: obtaining the vehicle state at time i. Where x and y are the vehicle's coordinates in two dimensions, and v is the vehicle's speed. Let θ be the vehicle's heading angle, θ be the vehicle's tire angle, and t be the planning time; based on v i Based on the vehicle speed threshold and the vehicle speed change threshold, multiple sampled vehicle speeds (v1, v2, v3, ..., v) at time i+1 are obtained. n ), where n is the number of vehicle speed samples; based on θ iBased on the vehicle tire angle threshold and the vehicle tire angle change threshold, multiple sampled vehicle tire angles (θ1, θ2, θ3, ..., θ4) at time i+1 are obtained. m ), where m is the number of vehicle tire angle samples; obtain the set ((v1, θ1), (v1, θ2), ..., (v1, θ2) consisting of any sampled vehicle speed and any sampled vehicle tire angle. n θ m For each sampling combination, the vehicle state at time i+1 is obtained; among the vehicle states at time i+1 corresponding to multiple sampling combinations, the target coordinates at time i+1 are determined according to the evaluation function.
[0009] Optionally, for each sampling combination, obtaining the vehicle state at time i+1 includes: using the sampled vehicle speed of the sampling combination as v i+1 The tire angle of the sampled vehicle in the sampling combination is taken as θ. i+1 Calculate the time at time i+1.
[0010] If |θ i |<ε, where ε is a preset value, then
[0011] If |θ i |≥ε, then
[0012]
[0013] x 2 +(yR) 2 =R 2 R = l / tanθ i+1 .
[0014] Optionally, in the process of determining the target coordinates at time i+1 based on the evaluation function, the target coordinates are determined based on the weight values. The weight values are negatively correlated with the value of the coordinates in the time prediction value map, negatively correlated with the change in vehicle speed corresponding to the coordinates, and negatively correlated with the change in vehicle tire angle corresponding to the coordinates.
[0015] Optionally, the map is a 2D raster map; based on the map and the predicted obstacle trajectory, the time-predicted value map is obtained by: deleting historical rasters of dynamic obstacles according to time changes to obtain a list of 2D raster maps for time prediction; converting the 2D raster map into a value map according to the predicted obstacle trajectory, including assigning a value of 1 to the rasters occupied by obstacles in the 2D raster map and assigning a value of 0 to blank rasters, to obtain a subset of obstacle rasters and a subset of blank rasters; traversing the subset of obstacle rasters, including: if a raster occupied by an obstacle is adjacent to a blank raster, updating the value of the blank raster to the value of the obstacle raster minus a set value to obtain a new raster, deleting the new raster from the subset of blank rasters, and adding it to the new raster subset; traversing the new raster subset until the subset of blank rasters is empty, including: if a new raster is adjacent to a blank raster, updating the value of the blank raster to the value of the new raster minus a set value to obtain a new raster.
[0016] Optionally, the first planned path is smoothed to obtain the second planned path, including:
[0017] Based on the vehicle state f(x) of the trajectory points in the first planned path, the vehicle state f(x') of the next trajectory point is obtained according to the vehicle state of the historical trajectory points and the extended Kalman filter.
[0018] The state transition matrix is derived from the vehicle speed, vehicle heading angle, and vehicle tire angle.
[0019] |θ i When |<ε, the corresponding state transition matrix is:
[0020]
[0021] |θ i When |≥ε: the corresponding state transition matrix is:
[0022]
[0023] in,
[0024]
[0025]
[0026]
[0027]
[0028]
[0029]
[0030]
[0031]
[0032] Where Δt is the time interval between trajectory points after trajectory smoothing.
[0033] Based on the state transition matrix, the first planned path is smoothed by interpolating the time intervals between the trajectory points planned in the first planned path, and a second planned path is obtained.
[0034] Optionally, trajectory tracking is performed based on the second planning path, including adding a prior univariate factor based on the second planning path, the univariate factor satisfying the motion constraints of the Ackerman chassis model; adding a binary factor, the binary factor satisfying the constraints of the Ackerman chassis model motion constraints, the vehicle speed change threshold, and the vehicle tire angle change threshold.
[0035] Optionally, if a first planned path is not obtained after performing local path planning, the system stops and performs local path planning again.
[0036] Optionally, based on the obstacle prediction trajectory and trajectory tracking results, collision prediction is performed to obtain the collision prediction result; if the collision prediction result indicates a collision, the process of obtaining the time prediction value map based on the map and obstacle prediction trajectory is executed again.
[0037] Optionally, if the collision prediction result is that there will be no collision, a detection is performed to determine whether the destination has been reached, resulting in a first detection result; if the first detection result indicates that the destination has not been reached, a detection is performed to determine whether horizontal and vertical control has been implemented, resulting in a second detection result; if the second detection result indicates that horizontal and vertical control has been implemented, the process of obtaining the time prediction value map, performing local path planning, performing trajectory smoothing, and performing trajectory tracking is executed again.
[0038] According to a second aspect of the embodiments of this application, a data processing apparatus is provided, characterized in that it includes a road condition information acquisition module, a time prediction value map calculation module, a local path planning module, a trajectory smoothing module, and a trajectory tracking module, wherein the road condition information acquisition module is used to acquire a map, vehicle positioning information, and obstacle prediction trajectories; the time prediction value map calculation module is used to obtain a time prediction value map based on the map and obstacle prediction trajectories, the time prediction value map being used to represent the obstacle positions at different times; the local path planning module is used to perform local path planning based on vehicle positioning information, the time prediction value map, and vehicle status, according to the motion constraints and threshold constraints of the Ackerman chassis model, to obtain a first planned path; the trajectory smoothing module is used to smooth the first planned path to obtain a second planned path; and the trajectory tracking module is used to perform trajectory tracking based on the second planned path to obtain a trajectory tracking result.
[0039] According to a third aspect of the embodiments of this application, a vehicle is provided, including: a processor, a memory, a communication interface, and a communication bus, wherein the processor, the memory, and the communication interface communicate with each other through the communication bus; the memory is used to store at least one executable instruction, which causes the processor to perform an operation corresponding to the data processing method of the first aspect.
[0040] According to a fourth aspect of the embodiments of this application, a computer storage medium is provided, characterized in that it includes computer instructions, which, when executed on an electronic device, cause the electronic device to perform the data processing method as described in the first aspect.
[0041] As described in the above technical solution, when planning a vehicle's path, a map, vehicle positioning information, and predicted obstacle trajectories are acquired. Based on the map and the predicted obstacle trajectories, a time-predicted value map is obtained, which represents the obstacle positions at different times. Path planning based on the time-predicted value map and the predicted obstacle trajectories allows the planned path to be as close as possible to the center of the drivable area, thus avoiding obstacles and improving driving safety. Based on the vehicle positioning information, the time-predicted value map, and the vehicle state, local path planning is performed according to the motion constraints and threshold constraints of the Ackerman chassis model. The resulting first planned path has better foresight and obstacle avoidance performance. Trajectory smoothing is applied to the first planned path to obtain a second planned path, making the planned path more stable. Trajectory tracking is performed based on the second planned path to obtain the trajectory tracking results. The path planning process is optimized using the trajectory tracking results, resulting in a more comfortable driving experience after path planning. Attached Figure Description
[0042] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments recorded in the embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings.
[0043] Figure 1 A flowchart illustrating a data processing method applicable to embodiments of this application;
[0044] Figure 2 An overall logic diagram of a data processing method applicable to embodiments of this application;
[0045] Figure 3 A schematic diagram of an Ackermann chassis model for a data processing method applicable to embodiments of this application;
[0046] Figure 4A schematic diagram of a narrow-lane vehicle meeting scenario for a data processing method applicable to an embodiment of this application;
[0047] Figure 5 A schematic diagram illustrating the positional change of dynamic obstacles over time in a narrow-passage vehicle meeting scenario, for example, a data processing method applicable to an embodiment of this application.
[0048] Figure 6 A schematic diagram illustrating the constraint of vehicle speed and vehicle speed variation in local path planning according to a data processing method applicable to embodiments of this application.
[0049] Figure 7 A schematic diagram of a time-prediction value map for a data processing method applicable to embodiments of this application;
[0050] Figure 8 This is a schematic diagram illustrating the constraint applied to the trajectory tracking calculation process using a data processing method according to an embodiment of this application.
[0051] Figure 9 This is a schematic diagram of a data processing apparatus applicable to embodiments of this application;
[0052] Figure 10 This is a schematic diagram of the structure of a vehicle to which this application is applicable. Detailed Implementation
[0053] The terminology used in the implementation section of this application is for the purpose of explaining specific embodiments of this application only, and is not intended to limit this application.
[0054] Before describing the embodiments of this application, the relevant technologies and their technical problems will be introduced first. For autonomous driving of vehicles, the commonly used path planning algorithms are A* (A-Star) algorithm, DWA (Dynamic Window Method) algorithm for local path planning, and TED algorithm.
[0055] Existing path planning algorithms have the following problems:
[0056] The A* algorithm is a direct search method for finding the shortest path in a static road network. In complex known local spaces, the traditional A* algorithm is inefficient for path planning, generates many turning points and is not smooth, and cannot avoid dynamic obstacles, thus failing to meet the requirements of fast and stable navigation for vehicles with Ackerman chassis.
[0057] The DWA (Dynamic Window Method) algorithm is a local path planning algorithm that samples linear velocity and angular velocity in velocity space and predicts the trajectory of the robot in the next time interval based on the robot's kinematic model. It scores the trajectory to be evaluated, thereby obtaining a safer and smoother optimal local path. However, it lacks foresight and has poor dynamic obstacle avoidance performance when obstacles are moving in a complex manner, and is not suitable for Ackerman model vehicles.
[0058] The TED algorithm has high computational complexity, large fluctuations in speed and angle, and unstable control.
[0059] Path tracking optimization control typically uses inputs of control variables such as wheel angle, driving force, and braking force to enable the vehicle to drive stably and eventually reach the desired driving path. Examples include PID control algorithms and MPC (Model Predictive Control) algorithms.
[0060] In summary, the path planning and path tracking optimization control of related technologies ignore the vehicle's own stability during driving and have poor dynamic obstacle avoidance performance.
[0061] This application provides a data processing method that can improve stability and enhance the ability to avoid dynamic obstacles in path planning.
[0062] To enable those skilled in the art to better understand the technical solutions in the embodiments of this application, the technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art should fall within the protection scope of the embodiments of this application. The specific implementation of the embodiments of this application will be further described below with reference to the accompanying drawings.
[0063] Figure 4 and Figure 5 This is a schematic diagram of a driving scenario according to an embodiment of this application. This application includes, but is not limited to, the narrow road meeting scenario shown in the figure.
[0064] Figure 4 This is a schematic diagram of a narrow-lane vehicle meeting scenario for a data processing method applicable to an embodiment of this application, as shown below. Figure 4 As shown in the figure, 401 represents a dynamic obstacle, 403 and 404 represent static obstacles, 402 represents a vehicle on the planned path of this application, 405 represents the obstacle trajectory, and 406 represents the vehicle's trajectory when avoiding the dynamic obstacle.
[0065] Figure 5 A schematic diagram illustrating the positional change of dynamic obstacles over time in a narrow-passage vehicle meeting scenario, for example, a data processing method applicable to an embodiment of this application.
[0066] In the diagram, 401 represents a dynamic obstacle, while 403 and 404 represent static obstacles. From left to right, the diagram shows the different positions of the dynamic obstacles over time.
[0067] Figure 1 This is a flowchart of a data processing method provided in an embodiment of this application, such as... Figure 1 As shown, the method includes:
[0068] Step 1001: Obtain map, vehicle location information, and obstacle prediction trajectory;
[0069] Specifically, the methods for obtaining map, vehicle positioning information, and obstacle prediction trajectories in this application include, but are not limited to, the following: obtaining map and vehicle positioning information through a map positioning module, and obtaining obstacle prediction trajectories through an obstacle prediction and tracking module. Vehicle positioning information can be obtained, for example, through GPS positioning. Dynamic obstacle prediction trajectories can be calculated by obtaining the state of obstacles through sensors such as radar or cameras, or by obtaining the location of dynamic obstacles and calculating their prediction trajectories based on the dynamic changes in their location. This application does not limit the specific methods for obtaining the above-mentioned types of information.
[0070] Step 1002: Based on the map and obstacle prediction trajectory, obtain the time prediction value map, which is used to represent the obstacle position at different times.
[0071] Step 1003: Based on vehicle positioning information, time prediction value map and vehicle status, local path planning is performed according to the motion constraints and threshold constraints of the Ackerman chassis model to obtain the first planned path;
[0072] Specifically, vehicle positioning information indicates the vehicle's current location. On one hand, the time-predicted value map represents the distance between the vehicle and obstacles at different times. Vehicle status represents the vehicle's current driving data. Therefore, the planned path can be made as close as possible to the center of the drivable area to avoid obstacles and improve driving safety. Based on the motion constraints and threshold constraints of the Ackerman chassis model, local path planning is performed, resulting in a first planned path with better foresight and obstacle avoidance performance.
[0073] Step 1004: Smooth the trajectory of the first planned path to obtain the second planned path;
[0074] The second planned path obtained after trajectory smoothing will be smoother and more stable.
[0075] Step 1005: Perform trajectory tracking based on the second planned path to obtain the trajectory tracking results.
[0076] By optimizing the path planning process using trajectory tracking results, the resulting optimized path makes the vehicle's driving experience more comfortable.
[0077] In this embodiment, when planning a vehicle path, a map, vehicle positioning information, and obstacle prediction trajectories are acquired. Based on the map and obstacle prediction trajectories, a time prediction value map is obtained. This time prediction value map represents the distance between the vehicle and obstacles at different times. Path planning based on the time prediction value map and obstacle prediction trajectories allows the planned path to be as close as possible to the center of the drivable area, thus avoiding obstacles and improving driving safety. Based on vehicle positioning information, the time prediction value map, and vehicle status, local path planning is performed according to the motion constraints and threshold constraints of the Ackerman chassis model. The resulting first planned path has better foresight and obstacle avoidance performance. The first planned path is then smoothed to obtain a second planned path, making the planned path more stable. Trajectory tracking is performed based on the second planned path to obtain the trajectory tracking results. The path planning process is optimized using the trajectory tracking results, resulting in a more comfortable driving experience after path planning.
[0078] In one possible implementation, the vehicle state includes vehicle coordinates, vehicle speed, vehicle heading angle, vehicle tire angle, and time information; the motion constraints and threshold constraints of the Ackerman chassis model include constraints on vehicle speed and vehicle tire angle.
[0079] In this embodiment of the application, by constraining the vehicle speed and the tire angle during the local path planning process, the local path planning process incorporates the vehicle's own driving data during the driving process, resulting in a more stable path.
[0080] In one possible implementation, Figure 3 This is a schematic diagram of an Ackerman chassis model for a data processing method applicable to an embodiment of this application. In the diagram, the wheelbase of the left and right wheels of the vehicle is represented by 2d, the wheelbase of the front and rear wheels is represented by l, the tire angle θ is represented, and the turning radius of the vehicle is represented by R.
[0081] Specifically, local path planning includes: based on v i Based on the vehicle speed threshold and the vehicle speed change threshold, multiple sampled vehicle speeds (v1, v2, v3, ..., v) at time i+1 are obtained. n ), where n is the number of vehicle speed samples. A speed set (v1, v2, v3, ..., v) is obtained by sampling within the vehicle speed threshold and the vehicle speed change threshold. n ),like Figure 6 As shown, Figure 6This diagram illustrates the constraint on vehicle speed and speed change in local path planning using a data processing method applicable to an embodiment of this application. The horizontal axis represents time, and the vertical axis represents vehicle speed. The vertical axis value corresponding to the horizontal axis value t represents the vehicle speed at time i, and the vertical axis value corresponding to the horizontal axis value t+1 represents the vehicle speed at time i+1. The maximum vehicle speed threshold is denoted by vmax, and the minimum vehicle speed threshold is denoted by vmin. The constraint on the set of vehicle speed changes is represented by the slope of the oblique line shown in the diagram. Similarly, based on θ... i Based on the vehicle tire angle threshold and the vehicle tire angle change threshold, multiple sampled vehicle tire angles (θ1, θ2, θ3, ..., θ) at time i+1 are obtained. m ), where m is the number of samples for the vehicle's tire angle. Then, the velocity set (v1, v2, v3, ..., v) is... n ) and the set of vehicle tire angles (θ1,θ2,θ3,...,θ) m The search space is obtained by combining pairs of (v1, θ1), (v1, θ2), ..., (v...). n θ m )).
[0082] The vehicle state at time i+1 is obtained by constraining the set of sampled combinations of any sampled vehicle speed and any sampled vehicle tire angle.
[0083] In the vehicle state at time i+1 corresponding to multiple sampling combinations, the target coordinates at time i+1 are determined according to the evaluation function.
[0084] The local path planning process requires determining multiple coordinate positions to form the planned path. The vehicle state at time i is a known position, and obtaining the vehicle state at time i+1 is a step in the path planning process. Determining the target coordinates at time i+1 based on the evaluation function can achieve better path planning results.
[0085] In this embodiment, the vehicle state trajectory, composed of vehicle state points at different times, is sampled and searched by combining vehicle speed and tire angle. This allows the vehicle and tires to adjust their direction more effectively based on their own state during driving, thus better coping with dynamic obstacle avoidance road conditions.
[0086] In one possible implementation, for each sampling combination, the corresponding vehicle state at time i+1 includes:
[0087] The sampling vehicle speed of the sampling combination is used as v i+1The tire angle of the sampled vehicle in the sampling combination is taken as θ. i+1 Calculate the time at time i+1.
[0088] If |θ i |<ε, where ε is a preset value.
[0089] but
[0090] If |θ i |≥ε,
[0091] but
[0092]
[0093] x 2 +(yR) 2 =R 2 ,
[0094] R = l / tanθ i+1 .
[0095] Specifically, T i The state at time is T i+1 The state at time is Establish a coordinate system with T i Taking time as the origin, when θ i+1 When it is not 0, because the angle is relatively large, from T i Time to T i+1 At any given moment, the vehicle's state at the next moment can be calculated using circular motion, where the function of the circle is x. 2 +(yR) 2 =R 2 ,like Figure 3 As shown, R is the turning radius of the vehicle;
[0096] |θ i |<ε(θ i When it is close to 0, from T i Time to T i+1 Because the time interval is very short, it is calculated based on linear motion.
[0097]
[0098]
[0099]
[0100]
[0101] When |θ i When |≥ε, through (vi+1 θ i+1 ) estimation The process of circular motion:
[0102] Ackermann chassis model motion constraints:
[0103] R = l / tanθ i+1
[0104] Formula for circular motion:
[0105]
[0106]
[0107]
[0108] Coordinate system transformation:
[0109]
[0110]
[0111] Finally from T i+1 Solving for the heading angle at time:
[0112]
[0113] final,
[0114]
[0115] In this embodiment of the application, for each sampling combination, when the vehicle tire angle is less than a preset value, the vehicle is regarded as uniform linear motion, and when the vehicle tire angle is greater than the preset value, the vehicle is regarded as circular motion. According to the different sizes of the vehicle tire angle in the sampled state points, different calculation methods are used to obtain the corresponding vehicle state at the (i+1)th time more accurately.
[0116] In one possible implementation, such as Figure 7 As shown, Figure 7This is a schematic diagram of a time-predicted value map for a data processing method applicable to an embodiment of this application. The map is a 2D grid map. Obtaining the time-predicted value map based on the map and obstacle prediction trajectories includes: deleting historical grids of dynamic obstacles according to time changes to obtain a list of 2D grid maps for time prediction; converting the 2D grid map into a value map according to the obstacle prediction trajectories, including assigning a value of 1 to grids occupied by obstacles and a value of 0 to blank grids in the 2D grid map, obtaining an obstacle grid subset and a blank grid subset; traversing the obstacle grid subset, including updating the value of the blank grid to the value of the obstacle grid minus a set value if the grid occupied by an obstacle is adjacent to a blank grid, obtaining a new grid, deleting the new grid from the blank grid subset, and adding it to the new grid subset; traversing the new grid subset until the blank grid subset is empty, including updating the value of the blank grid to the value of the new grid minus a set value if the new grid is adjacent to a blank grid, obtaining a new grid.
[0117] Specifically, grids with a value of 1 at the edge of the road represent static obstacles, grids with a value of 1 in the middle of the road represent dynamic obstacles, and the remaining grids with a value less than 1 represent drivable areas. The lower the value of the grid, the farther away from the obstacle.
[0118] In this embodiment of the application, the time prediction value map obtained based on the above method can make the calculated drivable area more accurate, and the subsequently planned route can be as close as possible to the middle of the drivable area.
[0119] In one possible implementation, during the process of determining the target coordinates at time i+1 based on the evaluation function, the target coordinates are determined based on weight values. The weight values are negatively correlated with the value of the coordinates in the time prediction value map, negatively correlated with the change in vehicle speed corresponding to the coordinates, and negatively correlated with the change in vehicle tire angle corresponding to the coordinates.
[0120] Specifically, the evaluation function is a multi-objective weighted function; the smaller the value of the coordinate in the time prediction value map, the higher the score. Figure 7 As shown, grids with a value of 1 at the road edge represent static obstacles, while grids with a value of 1 in the middle of the road represent dynamic obstacles. When the value of a grid is 1, the state of that point coincides with the predicted trajectory of the obstacle, indicating that a collision will occur. This point's state cannot be used as the target coordinate at time i+1, so it is placed into a closed set. For speed scores, the smaller the speed change, the higher the score. For the angle between the wheel and the vehicle body scores, the smaller the angle change, the higher the score.
[0121] In this embodiment of the application, the planned path is evaluated from the dimensions of time prediction value map, vehicle speed change, and vehicle tire angle change by an evaluation function. Since time score, vehicle speed score, and vehicle tire angle change score are added, dynamic obstacles can be flexibly avoided based on the real-time state of the vehicle, making vehicle driving safer.
[0122] In one possible implementation, the first planned path is smoothed to obtain the second planned path, which includes obtaining the vehicle state f(x') of the next trajectory point based on the vehicle state f(x) of the trajectory point in the first planned path and the vehicle state of the historical trajectory point and the extended Kalman filter.
[0123] The state transition matrix is derived from the vehicle speed, vehicle heading angle, and vehicle tire angle.
[0124] |θ i When |<ε, the corresponding state transition matrix is:
[0125]
[0126] |θ i When |≥ε: the corresponding state transition matrix is:
[0127]
[0128] in,
[0129]
[0130]
[0131]
[0132]
[0133]
[0134]
[0135]
[0136]
[0137] Where Δt is the time interval between trajectory points after trajectory smoothing. |θ i |<ε represents θ i Approaching 0, |θ i |≥ε represents θ i Avoiding 0, the two methods use different calculations.
[0138] Based on the state transition matrix, the first planned path is smoothed by interpolating the time intervals between the trajectory points planned in the first planned path, resulting in the second planned path.
[0139] Specifically, the extended Kalman filter trajectory smoothing algorithm and the improved A* heuristic search algorithm obtain a set of points in the time series with a time interval of ΔT. After smoothing, the time interval Δt of the trajectory points becomes smaller, Δf = n*Δt, and Δt is consistent with the calculation time interval of the tracking algorithm. j With T j+n The point states at intermediate time points are predicted by extended Kalman filtering, T i The point state is obtained after updating by extended Kalman filtering, where j < i < j + n.
[0140] In this embodiment of the application, when smoothing the trajectory of the first planned path, a state transition matrix is obtained based on the vehicle speed, vehicle heading angle, and vehicle tire angle. Through the state transition matrix, the time interval of the trajectory points planned in the first planned path is interpolated, so that the time granularity of the trajectory points is reduced, and the resulting second planned path will be smoother and the driving will be more comfortable.
[0141] In one possible implementation, such as Figure 8 As shown, Figure 8 This is a schematic diagram illustrating the constraint on the trajectory tracking calculation process of a data processing method applicable to an embodiment of this application. Trajectory tracking is performed based on a second planned path, including: adding a priori univariate factors based on the second planned path, wherein the univariate factors satisfy constraints of vehicle speed change threshold and vehicle tire angle change threshold; and adding binary factors, wherein the binary factors satisfy constraints of Ackerman chassis model motion constraints, vehicle speed change threshold and vehicle tire angle change threshold.
[0142] Specifically, trajectory tracking periodically acquires vehicle status data within a fixed time window. The number of point states within the window is n, and the point states are... The current state is fixed as the first fixed point. A prior unary factor is added. The optimized state of the first vertex does not change much. A prior unary factor is added to each of the other point states, corresponding to the last n-1 point states of the trajectory window. This simultaneously satisfies the constraints of the vehicle speed change threshold and the vehicle tire angle change threshold. After optimization, the point states within the window gradually approach the smoothed trajectory points. A binary factor is added to two adjacent point states. The binary factor constraint is a constraint relationship between adjacent point states. After optimization, adjacent point states simultaneously satisfy the constraints of the Ackerman chassis model motion constraint, the vehicle speed change threshold, and the vehicle tire angle change threshold.
[0143] In this embodiment, during driving, the trajectory points of the second planned path are first constrained by the threshold values of vehicle speed change and vehicle tire angle change, and then constrained by the Ackerman chassis model motion constraints, vehicle speed change threshold values, and vehicle tire angle change threshold values. By predicting the unknown trajectory points using the known vehicle speed change and tire angle change values in the vehicle state, the error of the planned path can be continuously reduced while the vehicle is driving, making the planned path more accurate and the driving smoother and more comfortable.
[0144] In one possible implementation, such as Figure 2 As shown, if the first planned path is not obtained after performing local path planning, the second planned path is used to track the vehicle to parking, and the process of performing local path planning, trajectory smoothing, and trajectory tracking is performed again.
[0145] The system periodically and continuously acquires vehicle location information and obstacle prediction trajectories. If the first planned path is not obtained, it indicates that the path planning has failed. Possible reasons include, but are not limited to, the lack of a suitable driving route based on the current arrival point, the vehicle's current state being unsuitable for continued driving, or the driving time exceeding the limit. The system then searches for a reasonable parking point to allow the following vehicle to pass first. After changing the arrival point, the local path planning, trajectory smoothing, and trajectory tracking processes of this application can be restarted.
[0146] In the embodiments of this application, the technical solution designed to plan parking and replan the destination in a timely manner according to the needs that may occur during the driving process makes the driving process based on route planning more intelligent and safer.
[0147] In one possible implementation, such as Figure 2 As shown, Figure 2 The overall logic diagram of a data processing method applicable to the embodiments of this application is as follows: based on the obstacle prediction trajectory and trajectory tracking results, collision prediction is performed to obtain the collision prediction result; if the collision prediction result indicates a collision, the process of predicting the time prediction value map based on the map and obstacle trajectory, performing local path planning, performing trajectory smoothing, and performing trajectory tracking is executed again.
[0148] Specifically, this application does not limit the specific implementation method of collision prediction. It can be as follows: obtain the predicted trajectory of the obstacle, perform collision detection with the planned path after trajectory tracking optimization, the collision detection is based on the spatiotemporal intersection detection of the time value map, and obtain the collision prediction result. If the collision prediction result is that a collision will occur, that is, there is an intersection between the predicted trajectory of the obstacle and the planned path after trajectory tracking optimization at the same time, then the grid in the time prediction value map is reassigned to obtain a new time prediction value map to further obtain a new drivable area, and then the process of local path planning, trajectory smoothing and trajectory tracking is performed.
[0149] It could also be...
[0150] In this embodiment of the application, by updating the time prediction value map in a timely manner for possible collisions during driving, and re-planning the path, smoothing the trajectory, and tracking the trajectory, the driving process based on path planning is made safer.
[0151] In one possible implementation, such as Figure 2 As shown, if the collision prediction result is that there will be no collision, the system checks whether the destination has been reached, and obtains the first detection result. If the first detection result shows that the destination has not been reached, the system checks whether horizontal and vertical control has been performed, and obtains the second detection result. If the second detection result shows that horizontal and vertical control has been performed, the system checks whether the path needs to be replanned, and obtains the path replanning detection result. If the path replanning detection result shows that path replanning is required, the system repeats the process of obtaining the time prediction value map, performing local path planning, performing trajectory smoothing, and performing trajectory tracking.
[0152] Specifically, the system periodically and continuously acquires vehicle positioning information and obstacle prediction trajectories. If it detects that the vehicle has performed lateral and longitudinal control, it then executes the process of acquiring the time prediction value map, performing local path planning, trajectory smoothing, and trajectory tracking again.
[0153] Specifically, the process of lateral and longitudinal control is as follows: based on the vehicle's driving state points in the planned path, the physical hardware control quantities corresponding to the state points are obtained, and then the user or the vehicle's intelligent driving system executes the physical hardware control quantities. The physical hardware control quantities include, but are not limited to, control quantities such as accelerator, brake, steering wheel, gear, etc.
[0154] In this embodiment of the application, the path planning process based on lateral and longitudinal control enables the vehicle to effectively respond flexibly to real-time driving conditions.
[0155] The following is combined Figure 9 A data processing apparatus according to an embodiment of this application will be described in detail. Specifically, Figure 9This is a schematic diagram of an update device for a software development kit applied to a first terminal, as provided in an embodiment of this application. Figure 9 As shown, the device includes:
[0156] The module includes a traffic information acquisition module, a time prediction value map calculation module, a local path planning module, a trajectory smoothing module, and a trajectory tracking module.
[0157] The road condition information acquisition module is used to acquire map data, vehicle location information, and obstacle prediction trajectories.
[0158] The time-predicted value map calculation module is used to predict trajectories based on the map and obstacles to obtain a time-predicted value map, which is used to represent the location of obstacles at different times.
[0159] The local path planning module is used to perform local path planning based on vehicle positioning information, time prediction value map and vehicle status, according to the motion constraints and threshold constraints of the Ackerman chassis model, to obtain the first planned path;
[0160] The trajectory smoothing module is used to smooth the trajectory of the first planned path to obtain the second planned path.
[0161] The trajectory tracking module is used to track the trajectory based on the second planned path and obtain the trajectory tracking result.
[0162] The data processing device of this embodiment is used to implement the aforementioned data processing method applied to vehicles, and has the beneficial effects of the corresponding method embodiments, which will not be repeated here. Furthermore, the functional implementation of each module in the data processing device of this embodiment can be referred to the description of the corresponding part in the aforementioned method embodiments, which will also not be repeated here.
[0163] Reference Figure 10 This document illustrates a structural schematic diagram of a vehicle according to an embodiment of this application. The specific embodiments of this application do not limit the specific implementation of the vehicle.
[0164] like Figure 10 As shown, the vehicle may include: a processor 1002, a communications interface 1004, a memory 1006, and a communications bus 1008.
[0165] in:
[0166] The processor 1002, communication interface 1004, and memory 1006 communicate with each other via communication bus 1008.
[0167] Communication interface 1004 is used to communicate with other vehicles or servers.
[0168] The processor 1002 is used to execute program 1010, specifically to execute the relevant steps in the above-described software development kit update method embodiment.
[0169] Specifically, program 1010 may include program code that includes computer operation instructions.
[0170] The processor 1002 may be a central processing unit (CPU), an application-specific integrated circuit (ASIC), or one or more integrated circuits configured to implement the embodiments of this application. The smart device includes one or more processors, which may be processors of the same type, such as one or more CPUs; or they may be processors of different types, such as one or more CPUs and one or more ASICs.
[0171] Memory 1006 is used to store program 1010. Memory 1006 may include high-speed RAM memory, and may also include non-volatile memory, such as at least one disk storage device.
[0172] The specific implementation of each step in program 1010 can be found in the corresponding steps and units described in the above-mentioned software development kit update method embodiment, and will not be repeated here. Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working process of the devices and modules described above can be referred to the corresponding process descriptions in the foregoing method embodiments, and will not be repeated here.
[0173] This application also provides a computer program product, including computer instructions that instruct a computing device to perform an operation corresponding to any of the data processing methods in the above-described multiple method embodiments.
[0174] It should be noted that, depending on the implementation needs, the various components / steps described in the embodiments of this application can be broken down into more components / steps, or two or more components / steps or parts of the operation of components / steps can be combined into new components / steps to achieve the purpose of the embodiments of this application.
[0175] The methods described in the embodiments of this application can be implemented in hardware, firmware, or as software or computer code that can be stored in a recording medium (such as a CD-ROM, RAM, floppy disk, hard disk, or magneto-optical disk), or as computer code downloaded over a network that is originally stored in a remote recording medium or a non-transitory machine-readable medium and will be stored in a local recording medium. Thus, the methods described herein can be stored on a recording medium using a general-purpose computer, a dedicated processor, or programmable or dedicated hardware (such as an ASIC or FPGA) for such software processing. It is understood that the computer, processor, microprocessor controller, or programmable hardware includes storage components (e.g., RAM, ROM, flash memory, etc.) capable of storing or receiving software or computer code. When the software or computer code is accessed and executed by the computer, processor, or hardware, the checksum generation method described herein is implemented. Furthermore, when a general-purpose computer accesses code used to implement the checksum generation method shown herein, the execution of the code transforms the general-purpose computer into a dedicated computer for executing the checksum generation method shown herein.
[0176] Those skilled in the art will recognize that the units and method steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of the embodiments of this application.
[0177] The above embodiments are only used to illustrate the embodiments of this application, and are not intended to limit the embodiments of this application. Those skilled in the art can make various changes and modifications without departing from the spirit and scope of the embodiments of this application. Therefore, all equivalent technical solutions also fall within the scope of the embodiments of this application, and the patent protection scope of the embodiments of this application should be defined by the claims.
Claims
1. A data processing method applied to vehicles, characterized in that, include: Acquire maps, vehicle location information, and predicted obstacle trajectories; Based on the map and the predicted obstacle trajectory, a time prediction value map is obtained, which is used to represent the distance between the vehicle and the obstacle at different times. Based on the vehicle positioning information, the time prediction value map, and the vehicle status, local path planning is performed according to the motion constraints and threshold constraints of the Ackerman chassis model to obtain the first planned path. The first planned path is smoothed to obtain the second planned path; Trajectory tracking is performed based on the second planned path to obtain the trajectory tracking results; The vehicle status includes vehicle coordinates, vehicle speed, vehicle heading angle, vehicle tire angle, and time information; The motion constraints and threshold constraints of the Ackerman chassis model include constraints on vehicle speed and vehicle tire angle. The local path planning includes: Obtain the vehicle state at time i. Where x and y are the vehicle's coordinates in two dimensions, and v is the vehicle's speed. For the vehicle's heading angle, The vehicle's tire angle is t, and the planning time is t; based on Based on the vehicle speed threshold and the vehicle speed change threshold, multiple sampled vehicle speeds at time i+1 are obtained. ), where n is the number of vehicle speed samples; based on Based on the vehicle tire angle threshold and the vehicle tire angle change threshold, multiple sampled vehicle tire angles at time i+1 are obtained. ), m is the number of samples of the vehicle tire angle; Obtain a set consisting of any sampled vehicle speed and any sampled vehicle tire angle. ) ); For each of the sampling combinations, the vehicle state at the (i+1)th time is obtained; In the vehicle state at time i+1 corresponding to multiple sampling combinations, the target coordinates at time i+1 are determined according to the evaluation function; The process of obtaining the vehicle state at time i+1 for each of the sampling combinations includes: The sampling vehicle speed of the sampling combination is used as... The sampling vehicle tire angle of the sampling combination is used as... Calculate the time at time i+1. ; like , As a preset value, but ; like , but , , ; Where l is the wheelbase between the front and rear wheels.
2. The method according to claim 1, characterized in that, In the process of determining the target coordinates at time i+1 based on the evaluation function, the target coordinates are determined based on weight values. These weight values are negatively correlated with the coordinates in the time prediction value map, negatively correlated with the change in vehicle speed corresponding to the coordinates, and negatively correlated with the change in vehicle tire angle corresponding to the coordinates.
3. The method according to claim 1, characterized in that, The map is a 2D raster map; The process of obtaining a time-predicted value map based on the map and the predicted obstacle trajectory includes: deleting historical grids of dynamic obstacles according to time changes to obtain a list of 2D grid maps for time prediction; Based on the predicted obstacle trajectory, the 2D grid map is converted into a value map, including assigning a value of 1 to the grid occupied by the obstacle in the 2D grid map and a value of 0 to the blank grid, thereby obtaining an obstacle grid subset and a blank grid subset. Traversing the obstacle grid subset includes: if an obstacle occupies a grid adjacent to a blank grid, updating the value of the blank grid to the value of the obstacle grid minus a set value to obtain a new grid, deleting the new grid from the blank grid subset, and adding it to the new grid subset; Traverse the new grid subset until the blank grid subset is empty. This includes updating the value of the blank grid to the value of the new grid minus the set value if the new grid is adjacent to a blank grid, thus obtaining the new grid.
4. The method according to claim 1, characterized in that, The first planned path is smoothed to obtain the second planned path, which includes: Based on the vehicle state f(x) of the trajectory points in the first planning path, the vehicle state f(x') of the next trajectory point is obtained according to the vehicle states of the historical trajectory points and the extended Kalman filter. The state transition matrix is derived based on the vehicle speed, vehicle heading angle, and vehicle tire angle; when When the state transition matrix is: ; when At that time: the corresponding state transition matrix is: ; in, ; Where l is the wheelbase between the front and rear wheels, and v i Let φ be the vehicle speed at time i. i Let θ be the vehicle's heading angle at time i. i Let be the tire angle of the vehicle at time i. As a preset value, The time interval between trajectory points after trajectory smoothing; Based on the state transition matrix, the first planned path is smoothed by interpolating the time intervals between the trajectory points planned in the first planned path, and a second planned path is obtained.
5. The method according to claim 1, characterized in that, The trajectory tracking based on the second planned path includes, Based on the second planning path, a prior univariate factor is added, which satisfies the constraints of the vehicle speed change threshold and the vehicle tire angle change threshold. Add a binary factor that satisfies the constraints of the Ackerman chassis model motion constraints, the threshold for vehicle speed change, and the threshold for vehicle tire angle change.
6. The method according to claim 1, characterized in that, If the first planned path is not obtained after performing the local path planning, then stop the vehicle and repeat the process of performing local path planning, trajectory smoothing, and trajectory tracking.
7. The method according to claim 1, characterized in that, Based on the obstacle prediction trajectory and trajectory tracking results, collision prediction is performed to obtain the collision prediction results; If the collision prediction result indicates a collision, the process of predicting the trajectory based on the map and the obstacle is executed again to obtain a time prediction value map, perform local path planning, perform trajectory smoothing, and perform trajectory tracking.
8. The method according to claim 7, characterized in that, If the collision prediction result is that there will be no collision, a detection is performed to determine whether the destination has been reached, and a first detection result is obtained. If the first detection result indicates that the endpoint has not been reached, the system checks whether horizontal and vertical control has been performed to obtain a second detection result. If the second detection result shows that horizontal and vertical control has been performed, detect whether the path needs to be replanned and obtain the path replanning detection result; If the path replanning detection results indicate that replanning is required, the process of obtaining the time prediction value map, performing local path planning, trajectory smoothing, and trajectory tracking will be executed again.
9. A data processing apparatus, characterized in that, It includes a traffic information acquisition module, a time prediction value map calculation module, a local path planning module, a trajectory smoothing module, and a trajectory tracking module. The road condition information acquisition module is used to acquire map data, vehicle location information, and obstacle prediction trajectories. The time prediction value map calculation module is used to obtain a time prediction value map based on the map and the obstacle prediction trajectory, and the time prediction value map is used to represent the obstacle position at different times; The local path planning module is used to perform local path planning based on the vehicle positioning information, the time prediction value map, and the vehicle status, according to the motion constraints and threshold constraints of the Ackerman chassis model, to obtain the first planned path. A trajectory smoothing module is used to smooth the trajectory of the first planned path to obtain a second planned path. The trajectory tracking module is used to perform trajectory tracking based on the second planned path and obtain the trajectory tracking result. The vehicle status includes vehicle coordinates, vehicle speed, vehicle heading angle, vehicle tire angle, and time information. The motion constraints and threshold constraints of the Ackerman chassis model include constraints on vehicle speed and vehicle tire angle. The local path planning includes: Obtain the vehicle state at time i. Where x and y are the vehicle's coordinates in two dimensions, and v is the vehicle's speed. For the vehicle's heading angle, The vehicle's tire angle is t, and the planning time is t; based on Based on the vehicle speed threshold and the vehicle speed change threshold, multiple sampled vehicle speeds at time i+1 are obtained. ), where n is the number of vehicle speed samples; based on Based on the vehicle tire angle threshold and the vehicle tire angle change threshold, multiple sampled vehicle tire angles at time i+1 are obtained. ), m is the number of samples of the vehicle tire angle; Obtain a set consisting of any sampled vehicle speed and any sampled vehicle tire angle. ) ); For each of the sampling combinations, the vehicle state at the (i+1)th time is obtained; In the vehicle state at time i+1 corresponding to multiple sampling combinations, the target coordinates at time i+1 are determined according to the evaluation function; The process of obtaining the vehicle state at time i+1 for each of the sampling combinations includes: The sampling vehicle speed of the sampling combination is used as... The sampling vehicle tire angle of the sampling combination is used as... Calculate the time at time i+1. ; like , As a preset value, but ; like , but , , ; Where l is the wheelbase between the front and rear wheels.
10. A vehicle comprising: The processor, memory, communication interface, and communication bus are provided, wherein the processor, memory, and communication interface communicate with each other via the communication bus. The memory is used to store at least one executable instruction, which causes the processor to perform an operation corresponding to the data processing method as described in any one of claims 1-8.
11. A computer storage medium, characterized in that, Includes computer instructions that, when executed on an electronic device, cause the electronic device to perform the data processing method as described in any one of claims 1 to 8.
Citation Information
Patent Citations
Vehicle and vehicle path planning method and device
CN111982143A
Multi-agent path planning method and system based on search
CN113741454A