Parking path planning method and device and storage medium
By selecting the planning starting point and end point according to the parking scene type and performing path planning, the problem of low parking path planning efficiency and low success rate is solved, and more efficient parking path planning is achieved.
Patent Information
- Application Number
- CN202411253288.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-06
- Publication Date
- 2025-01-14
AI Technical Summary
During the parking process, the parking path planning efficiency is low and the success rate is low. How to improve the path planning efficiency on the basis of ensuring the success rate is an important issue.
By determining the target scene type to which the current parking scene belongs, select the position point associated with the target scene type from the current position of the vehicle and the parking end point as the planning starting point, and use another position point between the current position and the parking end point as the planning end point. , perform path planning based on the planned starting point and planned end point, and obtain the path planning result between the current position and the parking end point.
This method can improve the efficiency of parking path planning, better suit actual parking needs, and enhance the parking success rate.
Smart Images

Figure CN119309579A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of intelligent driving technology, and in particular to a parking path planning method, device and storage medium. Background Art
[0002] During parking, it is necessary to plan the path from the current position to the parking destination in advance, and then park according to the path. However, in some parking scenarios, the planning efficiency of the parking trajectory is low, and the parking success rate is low. How to improve the planning efficiency of the path while ensuring the success rate has a significant impact on intelligent driving. Summary of the invention
[0003] The main technical problem solved by the present application is to provide a parking path planning method, device and storage medium, which can improve the efficiency of parking path planning.
[0004] In order to solve the above technical problems, a technical solution adopted in the present application is: to provide a parking path planning method, the method comprising: determining the target scene type to which the current parking scene belongs; selecting a position point associated with the target scene type from the current position of the vehicle and the parking end point as the planning starting point, and taking another position point between the current position and the parking end point as the planning end point; performing path planning based on the planning starting point and the planning end point to obtain a path planning result between the current position and the parking end point.
[0005] Among them, path planning is performed based on a planned starting point and a planned end point to obtain a path planning result between the current position and the parking end point, including: selecting a position point from the current parking scene as the middle point; respectively determining a first planned path between the planned starting point and the middle point, and a second planned path between the middle point and the planned end point; splicing the first planned path and the second planned path to obtain a path planning result.
[0006] Among them, selecting a position point as the middle point from the current parking scene includes: making a prediction based on the target scene type to obtain a predicted middle point; using an area within a preset range of the predicted middle point as a candidate area; and selecting a position point as the middle point from the candidate area.
[0007] Among them, predicting based on the target scene type to obtain a predicted midpoint includes: predicting based on the scene characteristics of the target scene type to obtain a predicted midpoint; or, taking the planning starting point as the first search end point, and taking the planning end point as the first search starting point; performing a node search based on the first search starting point and the first search end point to obtain a plurality of first nodes between the first search starting point and the first search end point; selecting from the plurality of first nodes a plurality of second nodes whose posture differences with the first search end point meet a first preset requirement; and determining the predicted midpoint based on the postures corresponding to the plurality of second nodes.
[0008] Among them, the first preset requirement includes: the distance is less than a preset distance threshold, and the heading angle difference is greater than a preset difference; and / or, based on the postures corresponding to multiple second nodes, the predicted intermediate point is determined, including: based on the postures corresponding to multiple second nodes, the posture representative values of multiple second nodes are determined, and the position point corresponding to the posture representative value in the current parking scene is used as the predicted intermediate point; the posture representative value is the average position of multiple second nodes.
[0009] Among them, selecting a location point from the candidate area as the middle point includes: taking the planned starting point as the second search starting point, and taking the predicted middle point as the second search end point; using the first preset search algorithm to search in sequence for each target search node between the second search starting point and the second search end point, until the currently searched target search node is located in the candidate area, and taking the target search node searched for the last time as the middle point.
[0010] Among them, the first preset search algorithm is used to search in sequence to obtain each target search node between the second search starting point and the second search end point until the currently searched target search node is located in the candidate area, including: taking the second search starting point as the search reference point; obtaining nodes within a preset range of the search reference point as several initial search nodes; obtaining the first generation value and the second generation value of each initial search node, wherein the first generation value is related to the posture difference between the initial search node and the second search end point; determining the target cost value of each initial search node based on the first generation value and the second generation value of each initial search node; selecting an initial search node whose target cost value meets the second preset requirement from several initial search nodes to determine it as a target search node, and taking the currently searched target search point as a new search reference point, and repeatedly executing the steps of obtaining nodes within the preset range of the search reference point as several initial search nodes and its subsequent steps until the currently searched target search node is located in the candidate area.
[0011] Among them, obtaining the first generation value of the initial search node includes: obtaining the first pose difference between the initial search node and the second search end point; performing a first preset operation on the first pose difference to obtain the first generation value of the initial search node; and / or obtaining the second generation value of the initial search node includes: when a gear shifting behavior of the vehicle is detected, obtaining the second pose difference between the initial search node and its adjacent searched target search node; performing a second preset operation on the second pose difference to obtain the second generation value of the initial search node; and / or, the second preset requirement is to minimize the target cost value.
[0012] Among them, a first preset operation is performed on the first pose difference to obtain the first generation value of the initial search node, including: normalizing the first pose difference to obtain the processed first pose difference; obtaining a first product of a first constant and the first pose difference, and using it as the first generation value; a second preset operation is performed on the second pose difference to obtain the second generation value of the initial search node, including: obtaining a second product of the first constant and the second pose difference; obtaining a third product of the second constant and the second product, and using it as the second generation value.
[0013] Among them, the first constant is the minimum turning radius of the vehicle; and / or the second constant is less than a preset constant; and / or the second posture difference is the maximum heading angle difference between the initial search node and the adjacent searched target search node; the maximum heading angle difference is positively correlated with the maximum turning curvature of the vehicle.
[0014] Among them, determining the planned path between the planning starting point and the middle point includes: connecting the planning starting point, the middle point, and the path formed by each target search node searched in sequence by using the first preset search algorithm as the first planned path between the planning starting point and the middle point; and / or determining the second planned path between the middle point and the planning end point, including: using one of the middle point and the planning end point as the third search starting point, and using the other of the middle point and the planning end point as the third search end point; using the second preset search algorithm to perform a path search based on the third search starting point and the third search end point to obtain the second planned path between the middle point and the planning end point; wherein the last node searched by the second preset search algorithm has the same posture as the third search end point.
[0015] Among them, after performing path planning based on the planning starting point and the planning end point to obtain the path planning result between the current position and the parking end point, it also includes: in response to the number of nodes contained in the path planning result being greater than a preset threshold, swapping the planning starting point and the planning end point; performing path planning based on the swapped planning starting point and the planning end point to obtain the path planning result between the current position and the parking end point; and / or, the target scene type includes one of a dead-end road scene, a reverse herringbone scene, a custom parking space scene and a narrow road scene; the orientation angle between the current position and the parking end point in the custom parking space scene is greater than a preset angle threshold; the position point associated with the dead-end road scene, the reverse herringbone scene and the custom parking space scene is the current position, and the position point associated with the narrow road scene is the parking end point.
[0016] To solve the above technical problems, another technical solution adopted in the present application is: to provide an electronic device, comprising a memory and a processor coupled to each other, the memory storing program instructions; the processor is used to execute the program instructions stored in the memory to implement the above method.
[0017] In order to solve the above technical problem, another technical solution adopted by the present application is: providing a computer-readable storage medium for storing program instructions, which can be executed to implement the above method.
[0018] In the above scheme, after determining the target scene type to which the current parking scene belongs, the location point associated with the target scene type is selected from the current position of the vehicle and the parking end point as the planning starting point, and another location point between the current position and the parking end point is selected as the planning end point, and then the path planning is performed based on the planning starting point and the planning end point to obtain the path planning result between the current position and the parking end point. It can be seen that this case selects the planning starting point and the planning end point according to the current parking scene, and does not fixedly use the current position or the parking end point as the planning starting point for path planning. Compared with the method of not distinguishing the parking scene and fixing the current position or the parking end point as the planning starting point for path planning, the method of selecting the planning starting point and the planning end point according to the current parking scene in this application is more in line with actual parking needs and can improve the efficiency of parking path planning. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] Figure 1 It is a flowchart of an embodiment of a parking path planning method provided by the present application;
[0020] Figure 2 is a schematic diagram of different scenario types provided by this application;
[0021] Figure 3 yes Figure 1 The flowchart of step S13 is shown as an embodiment;
[0022] Figure 4 yes Figure 3 The flowchart of step S31 is shown as an embodiment;
[0023] Figure 5 This is a flow chart of an embodiment of determining a prediction intermediate point provided by the present application;
[0024] Figure 6 yes Figure 4 The flowchart of step S43 is shown as an embodiment;
[0025] Figure 7 It is a schematic diagram of a framework of an embodiment of a parking path planning device provided by the present application;
[0026] Figure 8 It is a schematic diagram of the framework of an embodiment of an electronic device provided by the present application;
[0027] Fig. 9 It is a schematic diagram of the framework of the computer-readable storage medium provided by this application. DETAILED DESCRIPTION
[0028] In order to make the purpose, technical solution and effect of the present application clearer and more specific, the present application is further described in detail below with reference to the accompanying drawings and examples.
[0029] In addition, if there are descriptions involving "first", "second", etc. in the embodiments of the present application, the descriptions of "first", "second", etc. are only used for descriptive purposes and cannot be understood as indicating or suggesting their relative importance or implicitly indicating the number of technical features indicated. Therefore, the features defined as "first" and "second" may explicitly or implicitly include at least one of the features. In addition, the technical solutions between the various embodiments can be combined with each other, but they must be based on the ability of ordinary technicians in the field to implement them. When the combination of technical solutions is contradictory or cannot be implemented, it should be deemed that such combination of technical solutions does not exist and is not within the scope of protection required by this application.
[0030] See also Figure 1 , Figure 1 is a flow chart of an embodiment of the parking path planning method provided by the present application. It should be noted that if there are substantially the same results, this embodiment does not necessarily use Figure 1 The process sequence shown is limited. Figure 1 As shown, this embodiment includes:
[0031] S11: Determine the target scene type to which the current parking scene belongs.
[0032] This embodiment is used to distinguish scenes, and according to the target scene type to which the current parking scene belongs, a suitable planning starting point and a planning end point are selected for path planning, so as to obtain a path planning result between the current position and the parking end point.
[0033] In this embodiment, the target scene type to which the current parking scene belongs may be determined by using an existing scene determination method. For example, the scene type may be determined by using the geometric relationship between the parking space and the obstacle.
[0034] S12: From the current position of the vehicle and the parking end point, a position point associated with the target scene type is selected as a planning starting point, and another position point between the current position and the parking end point is selected as a planning end point.
[0035] S13: Perform path planning based on the planned starting point and the planned end point to obtain a path planning result between the current position and the parking end point.
[0036] In this embodiment, taking the parking space as a vertical (oblique split) parking space as an example, the target scene type includes one of a dead end road scene, a reverse fishbone scene, a custom parking scene, and a narrow road scene. Among them, the orientation angle between the current position and the parking end point in the custom parking scene is greater than a preset angle threshold. The specific preset angle threshold can be determined according to actual experience.
[0037] For example, see Figure 2 , Figure 2 is a schematic diagram of different scene types provided by this application. Figure 2 As shown in the figure, in the dead-end road scenario, the space on the right side of the target parking space is occupied and the vehicle cannot use this space for parking. Therefore, the vehicle needs to turn around first and then choose the space on the left side of the target parking space for parking. Figure 2 In the reverse herringbone scenario and the custom parking space scenario shown, the angle between the orientation angle of the parking start point and the orientation angle of the parking end point is large, and it is necessary to maneuver the vehicle several times outside the target parking space to adjust the vehicle orientation before planning the parking entry. Figure 2 In the narrow road scenario shown, there is not much space for the vehicle to adjust outside the target parking space, so the parking maneuvering action needs to be performed in the target parking space. Therefore, the starting point / end point of the parking adjustment can be reversely planned in the narrow road scenario. Among them, the above-mentioned dead-end road scenario, reverse fishbone scenario and custom parking space scenario are more suitable for using the current position of the vehicle as the planning starting point, and the above-mentioned narrow road scenario is more suitable for using the parking end point of the vehicle as the planning starting point.
[0038] In this embodiment, the target scene type can be associated with the planning starting point in advance, and then after determining the target scene type to which the current parking scene belongs, a position point associated with the target scene type is selected from the current position of the vehicle and the parking end point as the planning starting point, and another position point between the current position and the parking end point is selected as the planning end point for path planning.
[0039] In one embodiment, path planning may be performed directly based on the planned starting point and the planned end point to obtain a path planning result between the current position and the parking end point.
[0040] In another embodiment, considering that directly performing path planning based on the planning starting point and the planning end point may greatly increase the search space of the path, resulting in low search efficiency; in addition, directly planning a path from the current position to the parking end point is prone to fall into a local optimum, so in order to speed up the efficiency of path planning and avoid falling into a local optimal solution, an intermediate point can be selected from the current parking scene to divide the path planning between the planning starting point and the planning end point into two sections, one section is the path planning between the planning starting point and the intermediate point, and the other section is the path planning between the intermediate point and the planning end point. Using this method, the posture of the planning starting point can be first adjusted to an intermediate posture that is easy to handle, thereby reducing the search range of each path segment, thereby improving the planning efficiency of the path. In addition, by planning the path in segments, the path can be re-evaluated and adjusted in each path planning, thereby avoiding falling into a local optimum, thereby improving the global optimality of the path.
[0041] Specifically, you can first select a location point from the current parking scene as the middle point; then determine the first planned path between the planning starting point and the middle point, and the second planned path between the middle point and the planning end point; finally, splice the first planned path and the second planned path to obtain the path planning result. For specific implementation details, please refer to the following Figure 3 The relevant description of the illustrated embodiment will not be repeated here.
[0042] In the above scheme, after determining the target scene type to which the current parking scene belongs, the location point associated with the target scene type is selected from the current position of the vehicle and the parking end point as the planning starting point, and another location point between the current position and the parking end point is selected as the planning end point, and then the path planning is performed based on the planning starting point and the planning end point to obtain the path planning result between the current position and the parking end point. It can be seen that this case selects the planning starting point and the planning end point according to the current parking scene, and does not fixedly use the current position or the parking end point as the planning starting point for path planning. Compared with the method of not distinguishing the parking scene and fixing the current position or the parking end point as the planning starting point for path planning, the method of selecting the planning starting point and the planning end point according to the current parking scene in this application is more in line with actual parking needs and can improve the efficiency of parking path planning.
[0043] See also Figure 3 , Figure 3 yes Figure 1 The flowchart of step S13 is shown as an embodiment. Figure 3 As shown, path planning is performed based on the planned starting point and the planned end point to obtain the path planning result between the current position and the parking end point, including:
[0044] S31: Select a location point from the current parking scene as the middle point.
[0045] Specifically, see Figure 4 , Figure 4 yes Figure 3 The flowchart of step S31 is shown as an embodiment. Figure 4 As shown, selecting a position point as the middle point from the current parking scene includes:
[0046] S41: Predicting based on the target scene type to obtain a predicted midpoint.
[0047] In one embodiment, prediction can be performed based on the scene characteristics of the target scene type to obtain a predicted midpoint. In this embodiment, the determination logic of the predicted midpoint under each target scene type can be pre-stored, and then, after determining the target scene type to which the current scene belongs, the processing logic corresponding to the target scene type is extracted to perform the determination of the predicted midpoint. Figure 2In the dead-end road scenario shown in the figure, during parking, it is generally desired to adjust the direction of the starting point to the opposite direction of the dead-end road, and adjust the coordinates of the starting point to near the center line of the road. Figure 2 The center point of the middle point drivable area of the dead-end road scene shown is used as the predicted middle point. Figure 2 In the narrow road scenario shown in the figure, it is generally desired to adjust the direction of the parking end point to a direction close to the road during path planning, and adjust the coordinates of the parking end point to the right side of the target parking space. Figure 2 The center point of the middle point drivable area of the narrow road scene shown is used as the predicted middle point.
[0048] In another embodiment, please refer to Figure 5 , Figure 5 It is a flowchart of an embodiment of determining the predicted intermediate point provided by the present application. In this embodiment, the planning starting point can also be used as the first search end point, and the planning end point can be used as the first search starting point. A node search is performed based on the first search starting point and the first search end point to obtain a number of first nodes between the first search starting point and the first search end point; then, a plurality of second nodes whose posture difference with the first search end point meets the first preset requirement are selected from the plurality of first nodes; and then, based on the postures corresponding to the plurality of second nodes, the predicted intermediate point is determined. Among them, the first preset requirement includes: the distance is less than the preset distance threshold, and the heading angle difference is greater than the preset difference. That is, in this embodiment, among the selection of multiple second nodes, a node whose distance with the first search end point is less than the preset distance threshold, and whose heading angle difference is greater than the preset difference should be selected as the second node. Among them, this selection is to select an intermediate point that is convenient for the first search end point (planned location) to reach.
[0049] It should be noted that, in this embodiment, the first search starting point and the first search end point are respectively one of the vehicle's current position and the parking end point, wherein the planning end point is the starting point of the search, and the planning starting point is the end point of the search. Exemplarily, in the case where the current position is used as the planning starting point and the parking end point is used as the planning end point, in the process of searching for the predicted intermediate point, the parking end point is used as the search starting point and the current position of the vehicle is used as the search end point to search for the predicted intermediate point, so that the predicted intermediate point determined based on the searched second node is a position point that is easy for the planning starting point to reach. That is, the search in this embodiment is performed based on the target scene type to which the current scene belongs.
[0050] In a specific embodiment, based on the postures corresponding to the plurality of second nodes, determining the predicted intermediate point includes: based on the postures corresponding to the plurality of second nodes, determining the posture representative values of the plurality of second nodes, and taking the position point corresponding to the posture representative value in the current parking scene as the predicted intermediate point; wherein the posture representative value is the average of the positions of the plurality of second nodes. That is, the heading angles and positions of the plurality of second nodes are averaged, and the position point at the average in the current parking scene is taken as the predicted intermediate point.
[0051] In another embodiment, a method of predicting based on the scene characteristics of the target scene type can be used to obtain a first predicted midpoint, and based on the above-mentioned method of taking the planning starting point as the first search end point and the planning end point as the first search starting point, a node search is performed based on the first search starting point and the first search end point to determine the second predicted midpoint, and then the first predicted midpoint and the second midpoint are combined and fused using preset weight parameters to obtain a predicted midpoint.
[0052] S42: taking an area within a first preset range of the predicted midpoint as a candidate area.
[0053] The specific preset range can be determined according to actual needs and is not specifically limited here.
[0054] For example, after determining the coordinates and heading angle of the predicted middle point, the area where the position point with a preset distance from the coordinate and a heading angle difference less than the angle difference threshold is located can be determined as the candidate area. In an implementation scenario, considering that the path planning from the planning starting point to the middle point is mainly to adjust the planning starting point to a better angle suitable for parking, the angle difference threshold can be set to a smaller angle value.
[0055] S43: Select a position point from the candidate area as the middle point.
[0056] In this embodiment, a first preset search algorithm may be used to search for the middle point.
[0057] Specifically, see Figure 6 , Figure 6 yes Figure 4 The flowchart of step S43 is shown as an embodiment. Figure 6 As shown, a position point is selected from the candidate area as the middle point, including:
[0058] S61: Taking the planned starting point as the second search starting point, and taking the predicted middle point as the second search end point.
[0059] S62: Use the first preset search algorithm to sequentially search for each target search node between the second search starting point and the second search end point until the currently searched target search node is located in the candidate area, and use the last searched target search node as the middle point.
[0060] Specifically, firstly, the second search starting point (planning starting point) is used as the search reference point for searching; the nodes located within the second preset range of the search reference point are obtained as several initial search nodes; then the first generation value and the second generation value of each initial search node are obtained; based on the first generation value and the second generation value of each initial search node, the target cost value of each initial search node is determined; the initial search node whose target cost value meets the second preset requirement is selected from the several initial search nodes to be determined as a target search node, and the currently searched target search point is used as a new search reference point, and the nodes located within the second preset range of the search reference point are obtained as several initial search nodes and the subsequent steps are repeated until the currently searched target search node is located in the candidate area. Among them, the first generation value is related to the posture difference between the initial search node and the second search end point, and the second preset requirement is that the target cost value is the smallest, that is, the target search node is the initial search node corresponding to the minimum target cost value among the several initial search nodes.
[0061] It should be noted that, in this embodiment, considering that the middle point is a position point in a rough range, it is not necessary to determine its precise position. Therefore, in the process of sequentially searching for each target search node between the second search starting point and the second search end point using the first preset search algorithm, as long as the currently searched target search node is located in the candidate area, the search is determined to be completed, and the last searched target search node is used as the middle point. Among them, the middle point may not be a predicted middle point.
[0062] Among them, the sum of the first generation value and the second cost value of the initial search node can be used as the target cost value of the initial search node; of course, the preset weights corresponding to the first generation value and the second generation value can also be used to perform weighted summation, and the result of the weighted summation can be used as the target cost value of the initial search node.
[0063] In a specific embodiment, obtaining the first generation value of the initial search node includes the following steps:
[0064] First, obtain the first position difference between the initial search node and the second search end point.
[0065] Second, perform a first preset operation on the first pose difference to obtain the first generation value of the initial search node.
[0066] In this embodiment, the first cost value is the heuristic value of the initial search node, and the first preset operation is performed on the first pose difference to obtain the first generation value of the initial search node, including: after obtaining the first pose difference between the initial search node and the second search end point, first normalizing the first pose difference to obtain the processed first pose difference; then obtaining the first product of the first constant and the first pose difference, and using it as the first generation value. That is, in this embodiment, the heuristic value is mainly related to the first pose difference between the initial search node and the second search end point.
[0067] In a specific embodiment, the first pose difference is the heading angle difference between the initial search node and the second search end point, and the corresponding heuristic value is calculated as follows:
[0068] H node =K H *|normalize(θ node -θ end )|
[0069] In the formula, H node represents the heuristic value (first generation value) of the initial search node, θ node and θ end They represent the heading angle of the initial search node and the heading angle of the second search endpoint, respectively. The normalize() function represents the regularization function for the angle, which is used to project the angle within [-π, π]. K H Represents the first constant, which is used to adjust the weight of the heuristic value.
[0070] For example, K H =R, which is the minimum turning radius used to generate a new node.
[0071] In this embodiment, the heuristic value of each initial search node is determined by using the heading angle difference between the initial search node and the second search end point, wherein the smaller the heading angle difference, the smaller the heuristic value, and the smaller the corresponding first-generation value. When selecting a target search node from several initial search nodes, the priority of the initial search node with a smaller first-generation value will be increased. When searching for other target search nodes subsequently, the heading angle difference will become smaller and smaller, which can guide the heading angle of the target search node to converge quickly to the second search end point. Therefore, using the above-mentioned heuristic function can guide the heading angle of the target search node to converge quickly to the second search end point, thereby improving the search efficiency of each target search node.
[0072] In a specific embodiment, obtaining the second generation value of the initial search node includes the following steps:
[0073] Step 1: When a gear shifting behavior of the vehicle is detected, a second posture difference between the initial search node and its adjacent searched target search node is obtained.
[0074] Step 2: Perform a second preset operation on the second posture difference to obtain the second generation value of the initial search node.
[0075] In this embodiment, the second cost value is a gear shift penalty value of the initial search node. When a gear shift behavior of the vehicle is detected, the second cost value is calculated to suppress the gear shift behavior during the search for each target search node.
[0076] In step two, a second preset operation is performed on the second posture difference to obtain the second generation value of the initial search node, including: first obtaining the second product of the first constant and the second posture difference; then obtaining the third product of the second constant and the second product, and using the third product as the second generation value.
[0077] In a specific embodiment, the second posture difference is the maximum heading angle difference between the initial search node and the adjacent searched target search node, and the second constant is less than the preset constant. The corresponding shift penalty is calculated as follows:
[0078] G node =γ*K H *Δθ node
[0079] In the formula, G node represents the shift penalty of the initial search node, γ is the second constant, Δθ node It represents the maximum heading angle difference between the search reference point and the current searched initial search node. The maximum heading angle difference is positively correlated with the maximum turning curvature of the vehicle, and the maximum turning curvature is determined by the minimum turning radius.
[0080] Preferably, in order to associate the gear shift penalty with the above-mentioned heuristic function, so as to suppress the gear shift behavior in the process of searching each target search node to a certain extent, and to encourage the gear shift behavior when the gear shift behavior exists, but the heuristic value of the initial search node searched under the gear shift behavior is better than the heuristic value of all the initial search nodes, and use the better initial search node searched under the gear shift behavior as the target search node, the second constant can be set to a constant less than 1, so as to use the second constant less than 1 to make the difference between the maximum heuristic value of the current searched initial search node and the corresponding search reference point (the adjacent searched target search node) greater than the corresponding gear shift penalty, that is:
[0081] max(ΔH node )=K H *Δθ node >G node
[0082] To ensure the priority of the initial search nodes that achieve convergence of the heuristic function by shifting gears.
[0083] Above Figure 4 The illustrated embodiment is based on the prediction of the target scene type, and the predicted middle point and the middle point are obtained. In another embodiment, the target scene type to which the current scene belongs may be ignored, and the current position may be directly used as the search starting point, and the parking end point may be used as the search end point. A relevant search algorithm may be used to roughly search the nodes based on the search starting point and the search end point, and a number of first nodes between the search starting point and the search end point are obtained, and then a number of second nodes whose posture differences with the search end point meet the first preset requirements are selected from the first nodes; based on the postures corresponding to the plurality of second nodes, the predicted middle point is determined, and then the area within the preset range of the predicted middle point is used as a candidate area, and a position point is selected from the candidate area as the middle point. The specific method of determining the predicted middle point based on the postures corresponding to the plurality of second nodes, and selecting a position point as the middle point from the candidate area can be referred to the previous description, and no further elaboration is made here.
[0084] S32: Determine a first planned path between the planned starting point and the middle point, and a second planned path between the middle point and the planned end point, respectively.
[0085] S33: Connect the first planned path and the second planned path to obtain a path planning result.
[0086] It should be noted that after the last target search node (midpoint) is searched in sequence using the first preset search algorithm, the path between the planning starting point and the midpoint has been determined. Therefore, in one embodiment, the path formed by the above-mentioned planning starting point and the target search nodes searched in sequence using the first preset search algorithm is directly used as the first planning path between the planning starting point and the midpoint.
[0087] Among them, from the above process of selecting a position point from the candidate area as the middle point, it can be known that in the process of determining the middle point using the first prediction search algorithm, the planning starting point is used as the second search starting point, and the predicted middle point is used as the second search end point to search for the middle point, but the final determination condition of the middle point is that in the process of searching each target search node in sequence, as long as the target search node currently searched is located in the candidate area, the target search node searched this time is used as the middle point. Among them, the candidate area is the area within the first preset range of the predicted middle point, so the determined middle point may not be the predicted middle point, but a position point closer to the predicted middle point, that is, the predicted middle point is used as the search end point, but the actually determined search end point (corresponding to the above middle point) may not be the preset determined search end point (corresponding to the above predicted middle point).
[0088] In summary, the end point actually searched by the first preset search algorithm is a position point close to the preset search end point. The first preset search algorithm is mainly used to adjust the target search node to a suitable angle and cannot accurately search the preset search end point. Therefore, if the first preset algorithm is continued to be used to plan the second planned path between the intermediate point and the planned end point, the end point of the second planned path may not be a position point between the intermediate point and the planned end point, causing the vehicle to fail to accurately reach the planned end point.
[0089] Based on this, the second preset search algorithm can be used to search for the second planned path between the middle point and the planned end point. In the process of using the second preset search algorithm to search for a path based on the third search starting point and the third search end point, one of the middle point and the planned end point can be used as the third search starting point, and the other of the middle point and the planned end point can be used as the third search end point to search for a path, so as to search for the second planned path between the middle point and the planned end point. It should be clear that the last node searched by the second preset search algorithm has the same posture as the third search end point, that is, the last node searched by the second preset search algorithm is the third search end point.
[0090] The second preset search algorithm may be an existing search algorithm that can accurately search for a preset search endpoint position, such as an existing hybrid A-star algorithm.
[0091] In other embodiments, when the algorithm execution efficiency meets the preset requirements, after searching the middle point using the first preset search algorithm, the second preset search algorithm can be used to search for the first planned path between the planned starting point and the middle point, and the second planned path between the middle point and the planned end point.
[0092] In some embodiments, in step S13, after path planning is performed based on the planning starting point and the planning end point to obtain the path planning result between the current position and the parking end point, if the number of nodes contained in the path planning result is greater than a preset threshold, the planning starting point and the planning end point are swapped, and path planning is performed based on the swapped planning starting point and the planning end point to obtain the path planning result between the current position and the parking end point.
[0093] In a specific embodiment, after obtaining any one of the first planned path and the second planned path, if the number of nodes contained in the path is greater than a preset threshold, a step is performed in which the planned starting point and the planned end point are swapped, and path planning is performed based on the swapped planned starting point and the planned end point to obtain a path planning result between the current position and the parking end point.
[0094] See also Figure 7 , Figure 7: is a schematic diagram of a parking path planning device according to an embodiment of the present application. In this embodiment, the parking path planning device 70 includes a type determination module 71, a selection module 72 and a path planning module 73. The type determination module 71 is used to determine the target scene type to which the current parking scene belongs; the selection module 72 is used to select a position point associated with the target scene type from the current position of the vehicle and the parking end point as the planning starting point, and another position point from the current position and the parking end point as the planning end point; the path planning module 73 is used to perform path planning based on the planning starting point and the planning end point, and obtain the path planning result between the current position and the parking end point.
[0095] In some embodiments, the path planning module 73 performs path planning based on the planning starting point and the planning end point to obtain a path planning result between the current position and the parking end point, including: selecting a position point from the current parking scene as the middle point; respectively determining a first planned path between the planning starting point and the middle point, and a second planned path between the middle point and the planning end point; splicing the first planned path and the second planned path to obtain a path planning result.
[0096] In some embodiments, selecting a location point as the midpoint from the current parking scene includes: making a prediction based on the target scene type to obtain a predicted midpoint; using an area within a first preset range of the predicted midpoint as a candidate area; and selecting a location point as the midpoint from the candidate area.
[0097] In some embodiments, a prediction is performed based on the target scene type to obtain a predicted midpoint, including: performing a prediction based on the scene characteristics of the target scene type to obtain a predicted midpoint; or, taking the planning starting point as the first search end point, and taking the planning end point as the first search starting point; performing a node search based on the first search starting point and the first search end point to obtain a plurality of first nodes between the first search starting point and the first search end point; selecting from the plurality of first nodes a plurality of second nodes whose posture differences with the first search end point meet a first preset requirement; and determining the predicted midpoint based on the postures corresponding to the plurality of second nodes.
[0098] In some embodiments, the first preset requirement includes: the distance is less than a preset distance threshold, and the heading angle difference is greater than a preset difference; and / or, based on the postures corresponding to multiple second nodes, a predicted intermediate point is determined, including: based on the postures corresponding to multiple second nodes, representative posture values of multiple second nodes are determined, and the position point corresponding to the posture representative value in the current parking scene is used as the predicted intermediate point; the posture representative value is the average position of multiple second nodes.
[0099] In some embodiments, a location point is selected from the candidate area as the midpoint, including: taking the planned starting point as the second search starting point, and taking the predicted midpoint as the second search end point; using the first preset search algorithm to search in sequence for each target search node between the second search starting point and the second search end point, until the currently searched target search node is located in the candidate area, and taking the target search node searched for the last time as the midpoint.
[0100] In some embodiments, a first preset search algorithm is used to sequentially search for each target search node between a second search starting point and a second search end point until the currently searched target search node is located in the candidate area, including: taking the second search starting point as a search reference point; obtaining nodes within a second preset range of the search reference point as a number of initial search nodes; obtaining a first generation value and a second generation value of each initial search node, wherein the first generation value is related to the posture difference between the initial search node and the second search end point; determining a target cost value of each initial search node based on the first generation value and the second generation value of each initial search node; selecting an initial search node whose target cost value meets the second preset requirement from a number of initial search nodes as a target search node, and using the currently searched target search point as a new search reference point, and repeatedly executing the steps of obtaining nodes within the second preset range of the search reference point as a number of initial search nodes and subsequent steps until the currently searched target search node is located in the candidate area.
[0101] In some embodiments, obtaining a first generation value of an initial search node includes: obtaining a first pose difference between the initial search node and a second search endpoint; performing a first preset operation on the first pose difference to obtain a first generation value of the initial search node; and / or obtaining a second generation value of the initial search node includes: when a gear shifting behavior of the vehicle is detected, obtaining a second pose difference between the initial search node and an adjacent searched target search node; performing a second preset operation on the second pose difference to obtain a second generation value of the initial search node; and / or, the second preset requirement is to minimize the target cost value.
[0102] In some embodiments, a first preset operation is performed on the first pose difference to obtain a first generation value of the initial search node, including: normalizing the first pose difference to obtain the processed first pose difference; obtaining a first product of a first constant and the first pose difference, and using it as the first generation value; performing a second preset operation on the second pose difference to obtain a second generation value of the initial search node, including: obtaining a second product of the first constant and the second pose difference; obtaining a third product of the second constant and the second product, and using it as the second generation value.
[0103] In some embodiments, the first constant is the minimum turning radius of the vehicle; and / or, the second constant is less than a preset constant; and / or, the second posture difference is the maximum heading angle difference between the initial search node and the adjacent searched target search node; the maximum heading angle difference is positively correlated with the maximum turning curvature of the vehicle.
[0104] In some embodiments, the path planning module 73 determines the planned path between the planning starting point and the midpoint, including: taking the planning starting point and the path formed by each target search node searched in sequence using the first preset search algorithm as the first planned path between the planning starting point and the midpoint; and / or determining the second planned path between the midpoint and the planning end point, including: taking one of the midpoint and the planning end point as the third search starting point, and taking the other of the midpoint and the planning end point as the third search end point; using the second preset search algorithm to perform a path search based on the third search starting point and the third search end point to obtain the second planned path between the midpoint and the planning end point; wherein the last node searched by the second preset search algorithm has the same posture as the third search end point.
[0105] In some embodiments, after the path planning module 73 performs path planning based on the planning starting point and the planning end point to obtain the path planning result between the current position and the parking end point, it also includes: in response to the number of nodes contained in the path planning result being greater than a preset threshold, swapping the planning starting point and the planning end point; performing path planning based on the swapped planning starting point and the planning end point to obtain the path planning result between the current position and the parking end point; and / or, the target scene type includes one of a dead-end road scene, a reverse herringbone scene, a custom parking space scene and a narrow road scene; the orientation angle between the current position and the parking end point in the custom parking space scene is greater than a preset angle threshold; the position point associated with the dead-end road scene, the reverse herringbone scene and the custom parking space scene is the current position, and the position point associated with the narrow road scene is the parking end point.
[0106] See also Figure 8 , Figure 8 1 is a schematic diagram of a framework of an electronic device according to an embodiment of the present application. In this embodiment, the electronic device 80 includes a memory 81 and a processor 82 coupled to each other.
[0107] The memory 81 stores program instructions, and the processor 82 is used to execute the program instructions stored in the memory 81 to implement the steps of any of the above method implementations. In a specific implementation scenario, the electronic device 80 may include, but is not limited to: a microcomputer, a server, and in addition, the electronic device 80 may also include a mobile device such as a laptop computer and a tablet computer, which is not limited here.
[0108] Specifically, the processor 82 is used to control itself and the memory 81 to implement the steps of any of the above-mentioned embodiments. The processor 82 can also be called a CPU (Central Processing Unit). The processor 82 may be an integrated circuit chip with signal processing capabilities. The processor 82 can also be a general-purpose processor, a digital signal processor (Digital Signal Processor, DSP), an application-specific integrated circuit (Application Specific Integrated Circuit, ASIC), a field-programmable gate array (Field-Programmable Gate Array, FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor, etc. In addition, the processor 82 can be implemented by an integrated circuit chip.
[0109] See also Fig. 9 , Fig. 9 It is a schematic diagram of the framework of the computer-readable storage medium provided by the present application. The computer-readable storage medium 90 of the embodiment of the present application stores a program instruction 91, and when the program instruction 91 is executed, the method provided by any embodiment of the above method and any non-conflicting combination is implemented. Among them, the program instruction 91 can form a program file and be stored in the above-mentioned computer-readable storage medium 90 in the form of a software product, so that a computer device (which can be a personal computer, a server, or a network device, etc.) executes all or part of the steps of each implementation method of the present application. The aforementioned computer-readable storage medium 90 includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM, Read-Only Memory), a random access memory (RAM, Random Access Memory), a disk or an optical disk, or a terminal device such as a computer, a server, a mobile phone, and a tablet.
[0110] In the above scheme, after determining the target scene type to which the current parking scene belongs, the location point associated with the target scene type is selected from the current position of the vehicle and the parking end point as the planning starting point, and another location point between the current position and the parking end point is selected as the planning end point, and then the path planning is performed based on the planning starting point and the planning end point to obtain the path planning result between the current position and the parking end point. It can be seen that this case selects the planning starting point and the planning end point according to the current parking scene, and does not fixedly use the current position or the parking end point as the planning starting point for path planning. Compared with the method of not distinguishing the parking scene and fixing the current position or the parking end point as the planning starting point for path planning, the method of selecting the planning starting point and the planning end point according to the current parking scene in this application is more in line with actual parking needs and can improve the efficiency of parking path planning.
[0111] In some embodiments, the functions or modules included in the device provided by the embodiments of the present disclosure can be used to execute the method described in the above method embodiments. The specific implementation can refer to the description of the above method embodiments, and for the sake of brevity, it will not be repeated here.
[0112] The above description of various embodiments tends to emphasize the differences between the various embodiments. The same or similar aspects can be referenced to each other, and for the sake of brevity, they will not be repeated herein.
[0113] In the several embodiments provided in the present application, it should be understood that the disclosed methods and devices can be implemented in other ways. For example, the device implementation described above is only schematic. For example, the division of modules or units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, and the indirect coupling or communication connection of devices or units can be electrical, mechanical or other forms.
[0114] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the present embodiment.
[0115] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.
[0116] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, server, or network device, etc.) or a processor (processor) to perform all or part of the steps of each implementation method of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk and other media that can store program code.
[0117] The above description is only an implementation method of the present application, and does not limit the patent scope of the present application. Any equivalent structure or equivalent process transformation made using the contents of the present application specification and drawings, or directly or indirectly used in other related technical fields, are also included in the patent protection scope of the present application.
Claims
1. A parking path planning method, characterized in that: The method comprises: Determine the target scene type to which the current parking scene belongs; From the current position of the vehicle and the parking end point, a position point associated with the target scene type is selected as a planning starting point, and another position point between the current position and the parking end point is selected as a planning end point; Path planning is performed based on the planned starting point and the planned end point to obtain a path planning result between the current position and the parking end point.
2. The method according to claim 1, characterized in that The performing path planning based on the planned starting point and the planned end point to obtain a path planning result between the current position and the parking end point includes: Selecting a location point from the current parking scene as a middle point; Determine respectively a first planned path between the planned starting point and the intermediate point, and a second planned path between the intermediate point and the planned end point; The first planned path and the second planned path are concatenated to obtain the path planning result.
3. The method according to claim 2, characterized in that The selecting a position point from the current parking scene as the middle point includes: Perform prediction based on the target scene type to obtain a prediction midpoint; Taking the area within the first preset range of the predicted midpoint as a candidate area; A position point is selected from the candidate area as the middle point.
4. The method according to claim 3, characterized in that The step of performing prediction based on the target scene type to obtain a prediction intermediate point includes: Perform prediction based on the scene characteristics of the target scene type to obtain the predicted midpoint; Alternatively, the planning starting point is used as the first search end point, and the planning end point is used as the first search starting point; a node search is performed based on the first search starting point and the first search end point to obtain a plurality of first nodes between the first search starting point and the first search end point; a plurality of second nodes whose posture differences with the first search end point meet a first preset requirement are selected from the plurality of first nodes; and the predicted intermediate point is determined based on the postures corresponding to the plurality of second nodes.
5. The method according to claim 4, characterized in that The first preset requirement includes: the distance is less than a preset distance threshold, and the heading angle difference is greater than a preset difference; And / or, determining the predicted intermediate point based on the postures respectively corresponding to the plurality of second nodes comprises: Based on the postures corresponding to the plurality of second nodes respectively, the posture representative values of the plurality of second nodes are determined, and the position point corresponding to the posture representative value in the current parking scene is used as the predicted intermediate point; the posture representative value is the average position value of the plurality of second nodes.
6. The method according to claim 3, characterized in that The selecting a position point from the candidate area as the middle point comprises: Taking the planned starting point as the second search starting point, and taking the predicted middle point as the second search end point; The target search nodes between the second search starting point and the second search end point are searched in sequence using the first preset search algorithm until the currently searched target search node is located in the candidate area, and the target search node searched last is used as the intermediate point.
7. The method according to claim 6, characterized in that The step of sequentially searching for each target search node between the second search starting point and the second search end point by using the first preset search algorithm until the currently searched target search node is located in the candidate area includes: Taking the second search starting point as a search reference point; Acquire nodes located within a second preset range of the search reference point as a number of initial search nodes; Obtaining a first generation value and a second generation value of each of the initial search nodes, wherein the first generation value is related to a posture difference between the initial search node and the second search end point; Determine a target cost value of each of the initial search nodes based on the first generation value and the second generation value of each of the initial search nodes; An initial search node whose target cost value meets the second preset requirement is selected from the several initial search nodes and determined as a target search node, and the currently searched target search point is used as a new search reference point, and the steps of obtaining nodes within the second preset range of the search reference point as several initial search nodes and subsequent steps are repeated until the currently searched target search node is located in the candidate area.
8. The method according to claim 7, characterized in that Obtaining the first generation value of the initial search node, including: Obtaining a first position difference between the initial search node and the second search end point; Performing a first preset operation on the first posture difference to obtain the first generation value of the initial search node; And / or, obtaining the second generation value of the initial search node, comprising: When a gear shifting behavior of the vehicle is detected, obtaining a second posture difference between the initial search node and an adjacent searched target search node; Performing a second preset operation on the second posture difference to obtain the second generation value of the initial search node; And / or, the second preset requirement is that the target cost value is minimized.
9. The method according to claim 8, characterized in that The performing a first preset operation on the first posture difference to obtain the first generation value of the initial search node includes: performing a normalization process on the first posture difference to obtain a processed first posture difference; obtaining a first product of a first constant and the first posture difference as the first generation value; The second preset operation is performed on the second posture difference to obtain the second generation value of the initial search node, including: obtaining the second product of the first constant and the second posture difference; obtaining the third product of the second constant and the second product, and using it as the second generation value.
10. The method according to claim 9, characterized in that The first constant is the minimum turning radius of the vehicle; And / or, the second constant is smaller than a preset constant; And / or, the second posture difference is the maximum heading angle difference between the initial search node and the adjacent searched target search node; the maximum heading angle difference is positively correlated with the maximum turning curvature of the vehicle.
11. The method according to claim 6, characterized in that Determining a planned path between the planned starting point and the intermediate point includes: The planning starting point and a path formed by the target search nodes sequentially searched using the first preset search algorithm are used as the first planning path between the planning starting point and the intermediate point; And / or, determining a second planned path between the intermediate point and the planned end point comprises: Using one of the intermediate point and the planned end point as a third search starting point, and using the other of the intermediate point and the planned end point as a third search end point; A second preset search algorithm is used to perform a path search based on the third search starting point and the third search end point to obtain a second planned path between the intermediate point and the planned end point; wherein the last node searched by the second preset search algorithm has the same posture as the third search end point.
12. The method according to claim 1, characterized in that After performing path planning based on the planned starting point and the planned end point to obtain a path planning result between the current position and the parking end point, the method further includes: In response to the number of nodes included in the path planning result being greater than a preset threshold, swapping the planning starting point and the planning end point; Performing path planning based on the swapped planned starting point and planned end point to obtain a path planning result between the current position and the parking end point; And / or, the target scene type includes one of a dead-end road scene, a reverse herringbone scene, a custom parking space scene and a narrow road scene; the included angle of the orientation angle between the current position and the parking end point in the custom parking space scene is greater than a preset angle threshold; the position point associated with the dead-end road scene, the reverse herringbone scene and the custom parking space scene is the current position, and the position point associated with the narrow road scene is the parking end point.
13. An electronic device, characterized in that: comprising a memory and a processor coupled to each other, The memory stores program instructions; The processor is used to execute the program instructions stored in the memory to implement the method according to any one of claims 1 to 12.
14. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores program instructions that can be run by a processor, and the program instructions can be executed by the processor to implement the method according to any one of claims 1 to 12.