Obstacle avoidance method and device for automatic driving and terminal equipment

By detecting the obstacle avoidance space on both sides of the obstacle and determining the Bezier curve, a candidate obstacle avoidance curve is generated to determine the target obstacle avoidance curve, the problem that the obstacle avoidance driving direction in the prior art is affected by subjective factors, and a more objective and reasonable obstacle avoidance driving direction is achieved.

CN119882709APending Publication Date: 2025-04-25CHANGSHA INTELLIGENT DRIVING INST CORP LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311330305.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-10-13
Publication Date
2025-04-25

AI Technical Summary

Technical Problem

When determining the vehicle's obstacle avoidance direction, existing autonomous driving technology is affected by the subjective weight coefficient, resulting in unreasonable direction.

Method used

By detecting whether there is a space for obstacle avoidance on both sides of the blocked obstacle, if present, the obstacle avoidance Bezier curve and exit obstacle avoidance Bezier curve are determined based on the starting position, end position and position and size of the obstacle, a candidate obstacle avoidance curve is generated, and the target obstacle avoidance curve is determined according to the length of the curve to determine the driving direction.

Benefits of technology

The objective rationality of the direction of obstacle avoidance driving is improved, the influence of subjective factors is avoided, and the rationality of the direction of driving is ensured.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119882709A_ABST
    Figure CN119882709A_ABST
Patent Text Reader

Abstract

The invention provides an obstacle avoidance method and device for automatic driving and terminal equipment, and the method comprises the steps: determining whether the two sides of a blocked obstacle have obstacle avoidance driving spaces or not when a vehicle detects the blocked obstacle; if the obstacle avoidance driving spaces exist on the two sides of the obstructed obstacle, determining obstacle avoidance Bezier curves corresponding to the obstacle avoidance driving spaces on the two sides of the obstructed obstacle according to the starting position of the vehicle and the near-end position of the obstructed obstacle, determining an obstacle avoidance exit Bezier curve corresponding to the obstacle avoidance driving spaces on the two sides of the blocked obstacle according to the far-end position of the blocked obstacle and the end position of the vehicle; generating at least two candidate obstacle avoidance curves according to the obstacle avoidance Bezier curve and the exit obstacle avoidance Bezier curve; and determining a target obstacle avoidance curve from the candidate obstacle avoidance curves according to the curve lengths of the candidate obstacle avoidance curves, and determining the obstacle avoidance driving direction of the vehicle according to the target obstacle avoidance curve. The obstacle avoidance driving direction determined according to the method is more objective and reasonable.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of autonomous driving technology, and in particular to an obstacle avoidance method, apparatus and terminal device for autonomous driving. Background Art

[0002] In recent years, the application of autonomous driving technology has become more and more popular; among them, autonomous obstacle avoidance is a key factor affecting the driving safety of the autonomous driving process. By determining the feasible space and obstacle avoidance direction of obstacle avoidance, autonomous protection is achieved in combination with path planning. When determining the obstacle avoidance driving direction, the current technical solution is to determine the influencing factors affecting the obstacle avoidance driving direction and the weight coefficients corresponding to each influencing factor, including lane shape, vehicle position, and heading angle; then, weighted calculations are performed for each candidate obstacle avoidance driving direction, and the target obstacle avoidance driving direction of the vehicle is determined from the candidate obstacle avoidance driving directions according to the calculation results. However, in this technical solution, the weight coefficients set are different, and the target obstacle avoidance driving direction finally determined will also correspond to different ones. In other words, when determining the obstacle avoidance driving direction of the vehicle, this technical solution is affected by the subjective factors of setting the weight coefficients, resulting in unreasonable obstacle avoidance driving direction of the vehicle finally determined.

[0003] Therefore, how to improve the objectivity and rationality of determining the obstacle avoidance driving direction of a vehicle is a technical problem that technical personnel in this field currently need to solve. Summary of the invention

[0004] The purpose of this application is to provide an obstacle avoidance method, device, terminal equipment and computer-readable storage medium for autonomous driving, aiming to improve the objectivity and rationality of determining the obstacle avoidance driving direction of the vehicle.

[0005] In a first aspect, the present application provides an obstacle avoidance method for autonomous driving. The method comprises:

[0006] When the vehicle detects a blocking obstacle, determining whether there is obstacle avoidance driving space on both sides of the blocking obstacle;

[0007] If the obstacle avoidance driving spaces exist on both sides of the blocking obstacle, determining obstacle avoidance Bezier curves corresponding to the obstacle avoidance driving spaces on both sides of the blocking obstacle according to the starting position of the vehicle and the proximal position of the blocking obstacle, and determining exit obstacle avoidance Bezier curves corresponding to the obstacle avoidance driving spaces on both sides of the blocking obstacle according to the distal position of the blocking obstacle and the ending position of the vehicle;

[0008] generating at least two candidate obstacle avoidance curves according to the obstacle avoidance Bezier curve and the exit obstacle avoidance Bezier curve;

[0009] A target obstacle avoidance curve is determined from the candidate obstacle avoidance curves according to the curve lengths of the candidate obstacle avoidance curves, and an obstacle avoidance driving direction of the vehicle is determined according to the target obstacle avoidance curve.

[0010] In one embodiment, determining the obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving space on both sides of the blocking obstacle according to the starting position of the vehicle and the proximal position of the blocking obstacle includes:

[0011] For the obstacle avoidance driving space on each side of the blocking obstacle, determining a starting position of the vehicle and a proximal position corresponding to the obstacle avoidance driving space of the blocking obstacle;

[0012] Determine at least two first position points according to the starting position and the proximal position; the at least two first position points are between the starting position and the proximal position;

[0013] An obstacle avoidance Bezier curve is generated according to the starting position, the proximal position and the at least two first position points.

[0014] In one embodiment, determining the exit obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving space on both sides of the blocking obstacle according to the distal position of the blocking obstacle and the end position of the vehicle includes:

[0015] For the obstacle avoidance driving space on each side of the blocking obstacle, determining an end position of the vehicle and a distal position corresponding to the obstacle avoidance driving space of the blocking obstacle;

[0016] Determine at least two second position points according to the end position and the distal position; the at least two second position points are between the distal position and the end position;

[0017] An exit obstacle avoidance Bezier curve is generated according to the end position, the far-end position and the at least two second position points.

[0018] In one embodiment, when the vehicle detects a blocking obstacle, determining whether there is obstacle avoidance driving space on both sides of the blocking obstacle includes:

[0019] When the vehicle detects at least two blocking obstacles, if the longitudinal distance between the at least two blocking obstacles is within a preset distance range, determining whether there is obstacle avoidance driving space on both sides of the at least two blocking obstacles;

[0020] Correspondingly, if the obstacle avoidance driving space exists on both sides of the blocking obstacle, determining the obstacle avoidance Bezier curves corresponding to the obstacle avoidance driving space on both sides of the blocking obstacle according to the starting position of the vehicle and the proximal position of the blocking obstacle, and determining the exit obstacle avoidance Bezier curves corresponding to the obstacle avoidance driving space on both sides of the blocking obstacle according to the distal position of the blocking obstacle and the ending position of the vehicle, including:

[0021] If the obstacle avoidance driving spaces exist on both sides of the at least two blocking obstacles, an obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving spaces on both sides of the first blocking obstacle is determined according to the starting position of the vehicle and the proximal position of the first blocking obstacle, and an exit obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving spaces on both sides of the second blocking obstacle is determined according to the distal position of the second blocking obstacle and the ending position of the vehicle; wherein, among the at least two blocking obstacles, the blocking obstacle close to the vehicle along the center line of the lane is the first blocking obstacle, and the blocking obstacle far away from the vehicle along the center line of the lane is the second blocking obstacle;

[0022] Correspondingly, generating at least two candidate obstacle avoidance curves according to the obstacle avoidance Bezier curve and the exit obstacle avoidance Bezier curve includes:

[0023] Determining a corresponding continuous obstacle avoidance Bezier curve according to the distal position of the first blocking obstacle and the proximal position of the second blocking obstacle;

[0024] At least two candidate obstacle avoidance curves are determined according to the obstacle avoidance Bezier curve, the continuous obstacle avoidance Bezier curve, and the exit obstacle avoidance Bezier curve.

[0025] In one embodiment, when the vehicle detects a blocking obstacle, determining whether there is obstacle avoidance driving space on both sides of the blocking obstacle includes:

[0026] When the vehicle detects at least two blocking obstacles, if the longitudinal distance between the at least two blocking obstacles is less than the minimum continuous obstacle avoidance distance, the at least two blocking obstacles are set as an integral blocking obstacle, and it is determined whether there is obstacle avoidance driving space on both sides of the integral blocking obstacle.

[0027] In one embodiment, when the vehicle detects a blocking obstacle, determining whether there is obstacle avoidance driving space on both sides of the blocking obstacle includes:

[0028] When the vehicle detects an obstacle, determine the lateral boundary of the obstacle and the driving space boundary; the lateral boundary includes the coordinates of the left boundary of the obstacle and the coordinates of the right boundary of the obstacle; the driving space boundary includes the coordinates of the left boundary of the driving space and the coordinates of the right boundary of the driving space;

[0029] If the right boundary coordinate of the obstacle is smaller than the left boundary coordinate of the driving space, and the left boundary coordinate of the obstacle is larger than the right boundary coordinate of the driving space, or the left boundary coordinate of the obstacle is smaller than the right boundary coordinate of the driving space, and the right boundary coordinate of the obstacle is larger than the left boundary coordinate of the driving space, then the obstacle is determined to be a blocking obstacle, and it is determined whether there is obstacle avoidance driving space on both sides of the blocking obstacle.

[0030] In one embodiment, when the vehicle detects a blocking obstacle, determining whether there is obstacle avoidance driving space on both sides of the blocking obstacle includes:

[0031] When the vehicle detects a blocking obstacle, determine the boundary point closest to the driving space boundary in the boundary corresponding to the candidate obstacle avoidance side of the blocking obstacle, and determine the first boundary point and the second boundary point according to the boundary point; the first boundary point is a virtual boundary point determined according to the horizontal coordinate of the boundary point and the vertical coordinate of the proximal position of the blocking obstacle; the second boundary point is a virtual boundary point determined according to the horizontal coordinate of the boundary point and the vertical coordinate of the distal position of the blocking obstacle;

[0032] Determine a lane centerline intersection point based on the first boundary point and the vehicle's minimum turning radius;

[0033] Determine, according to the vehicle obstacle avoidance distance, a first reference point, a second reference point, and a third reference point corresponding to the lane centerline intersection, the first boundary point, and the second boundary point, respectively;

[0034] It is determined whether there is an obstacle avoidance driving space on the candidate obstacle avoidance side of the blocking obstacle according to the first reference point, the second reference point, and the third reference point.

[0035] In one embodiment, determining a target obstacle avoidance curve from each of the candidate obstacle avoidance curves according to the curve lengths of each of the candidate obstacle avoidance curves, and determining the obstacle avoidance driving direction of the vehicle according to the target obstacle avoidance curve includes:

[0036] Determining the obstacle avoidance cost corresponding to each of the candidate obstacle avoidance curves according to the curve length of each of the candidate obstacle avoidance curves and the passable widths corresponding to both sides of the blocking obstacle;

[0037] A target obstacle avoidance curve is determined from the candidate obstacle avoidance curves according to the obstacle avoidance cost values, and an obstacle avoidance driving direction of the vehicle is determined according to the target obstacle avoidance curve.

[0038] In a second aspect, the present application also provides an obstacle avoidance device for autonomous driving. The device comprises:

[0039] An obstacle avoidance driving space determination module, used to determine whether there is obstacle avoidance driving space on both sides of the blocking obstacle when the vehicle detects the blocking obstacle;

[0040] A first curve determination module is used to determine, if the obstacle avoidance driving spaces exist on both sides of the blocking obstacle, obstacle avoidance Bezier curves corresponding to the obstacle avoidance driving spaces on both sides of the blocking obstacle according to the starting position of the vehicle and the proximal position of the blocking obstacle, and to determine an exit obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving spaces on both sides of the blocking obstacle according to the distal position of the blocking obstacle and the ending position of the vehicle;

[0041] A second curve determination module, configured to generate at least two candidate obstacle avoidance curves according to the obstacle avoidance Bezier curve and the exit obstacle avoidance Bezier curve;

[0042] The obstacle avoidance driving direction determination module is used to determine a target obstacle avoidance curve from each of the candidate obstacle avoidance curves according to the curve lengths of each of the candidate obstacle avoidance curves, and determine the obstacle avoidance driving direction of the vehicle according to the target obstacle avoidance curve.

[0043] In a third aspect, the present application further provides a terminal device, wherein the terminal device comprises a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the above method when executing the computer program.

[0044] In a fourth aspect, the present application further provides a computer-readable storage medium. The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the above method are implemented.

[0045] The present application provides an obstacle avoidance method for automatic driving. When there is obstacle avoidance driving space on both sides of a blocking obstacle, obstacle avoidance Bezier curves corresponding to the obstacle avoidance driving spaces on both sides of the blocking obstacle are determined according to the starting position of the vehicle and the proximal position of the blocking obstacle, and exit obstacle avoidance Bezier curves corresponding to the obstacle avoidance driving spaces on both sides of the blocking obstacle are determined according to the distal position of the blocking obstacle and the ending position of the vehicle; that is, factors such as the starting position, ending position of the vehicle, and the position and size of the blocking obstacle are considered when setting the obstacle avoidance Bezier curve and the exit obstacle avoidance Bezier curve, and then after at least two candidate obstacle avoidance curves are generated according to the obstacle avoidance Bezier curve and the exit obstacle avoidance Bezier curve, a target obstacle avoidance curve is determined from each candidate obstacle avoidance curve according to the curve length of each candidate obstacle avoidance curve, and the obstacle avoidance driving direction of the vehicle is determined according to the target obstacle avoidance curve; therefore, the present method avoids the process of subjectively setting weight coefficients corresponding to each factor, and the obstacle avoidance driving direction determined according to the present method is more objective and reasonable.

[0046] It can be understood that the obstacle avoidance device, terminal equipment and computer-readable storage medium for autonomous driving provided in the embodiments of the present application have the same beneficial effects as the above-mentioned obstacle avoidance method for autonomous driving, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS

[0047] In order to more clearly illustrate the specific implementation methods of the present application or the technical solutions in the prior art, the drawings required for use in the specific implementation methods or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are some implementation methods of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.

[0048] Figure 1 A flowchart of an obstacle avoidance method for autonomous driving provided in an embodiment of the present application;

[0049] Figure 2 A schematic diagram of a candidate obstacle avoidance curve provided in an embodiment of the present application;

[0050] Figure 3 A schematic diagram of a process for generating an obstacle avoidance Bezier curve corresponding to an obstacle avoidance driving space on the left side of a blocked obstacle provided in an embodiment of the present application;

[0051] Figure 4 A schematic diagram of a process for generating an exit obstacle avoidance Bezier curve on the left side of a blocked obstacle provided in an embodiment of the present application;

[0052] Figure 5 A schematic diagram of a process for generating a continuous obstacle avoidance Bezier curve provided in an embodiment of the present application;

[0053] Figure 6 A schematic diagram of another candidate obstacle avoidance curve provided in an embodiment of the present application;

[0054] Figure 7 A schematic diagram of another candidate obstacle avoidance curve provided in an embodiment of the present application;

[0055] Figure 8 A schematic diagram of a lateral impact obstacle provided in an embodiment of the present application;

[0056] Fig. 9 A schematic diagram of an updated driving space provided in an embodiment of the present application;

[0057] Fig.10 A schematic diagram of determining whether there is obstacle avoidance driving space on both sides of the blocking obstacle provided in an embodiment of the present application;

[0058] Fig.11 A schematic diagram of the structure of an obstacle avoidance device for autonomous driving provided in an embodiment of the present application;

[0059] Fig.12 A schematic diagram of the structure of a terminal device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0060] In the following description, specific details such as specific system structures, technologies, etc. are provided for the purpose of illustration rather than limitation, so as to provide a thorough understanding of the embodiments of the present application. However, it should be clear to those skilled in the art that the present application may also be implemented in other embodiments without these specific details. In other cases, detailed descriptions of well-known systems, devices, circuits, and methods are omitted to prevent unnecessary details from obstructing the description of the present application.

[0061] It should be understood that when used in the present specification and the appended claims, the term "comprising" indicates the presence of described features, integers, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components and / or combinations thereof.

[0062] It should also be understood that the term “and / or” used in the specification and appended claims refers to any and all possible combinations of one or more of the associated listed items, and includes these combinations.

[0063] As used in the specification and appended claims of this application, the term "if" can be interpreted as "when" or "uponce" or "in response to determining" or "in response to detecting", depending on the context. Similarly, the phrase "if it is determined" or "if [described condition or event] is detected" can be interpreted as meaning "uponce it is determined" or "in response to determining" or "uponce [described condition or event] is detected" or "in response to detecting [described condition or event]", depending on the context.

[0064] In addition, in the description of the present application specification and the appended claims, the terms "first", "second", "third", etc. are only used to distinguish the descriptions and cannot be understood as indicating or implying relative importance.

[0065] References to "one embodiment" or "some embodiments" etc. described in the specification of this application mean that one or more embodiments of the present application include specific features, structures or characteristics described in conjunction with the embodiment. Therefore, the statements "in one embodiment", "in some embodiments", "in some other embodiments", "in some other embodiments", etc. that appear in different places in this specification do not necessarily refer to the same embodiment, but mean "one or more but not all embodiments", unless otherwise specifically emphasized in other ways. The terms "including", "comprising", "having" and their variations all mean "including but not limited to", unless otherwise specifically emphasized in other ways. "Multiple" means "two or more".

[0066] An obstacle avoidance method for autonomous driving provided in an embodiment of the present application can be executed by a processor of a terminal device when running a corresponding computer program.

[0067] Figure 1 This is a flowchart of an obstacle avoidance method for autonomous driving provided in an embodiment of the present application. For ease of explanation, only the part related to this embodiment is shown. The method provided in this embodiment includes the following steps:

[0068] S100: When the vehicle detects a blocking obstacle, it is determined whether there is obstacle avoidance driving space on both sides of the blocking obstacle.

[0069] Among them, the blocking obstacle refers to an obstacle located in the driving space that affects the vehicle's driving along the current path; the driving space refers to the driving space corresponding to the lane. In this embodiment, the preset driving space has excluded the impassable and currently unsafe areas; the obstacle avoidance driving space refers to the driving space on the side of the blocking obstacle that allows the vehicle to pass.

[0070] In actual applications, the vehicle uses its own sensors such as radar, millimeter-wave radar, image acquisition device, etc. to detect whether there is an obstacle in the direction of travel of the vehicle, and determines whether the obstacle is a blocking obstacle; when a blocking obstacle is detected, it determines whether there is obstacle avoidance driving space on both sides of the blocking obstacle, that is, determines whether the vehicle can pass through the driving space on the side of the blocking obstacle to achieve obstacle avoidance driving.

[0071] S200: If there are obstacle avoidance driving spaces on both sides of the blocking obstacle, determine the obstacle avoidance Bezier curves corresponding to the obstacle avoidance driving spaces on both sides of the blocking obstacle according to the starting position of the vehicle and the proximal position of the blocking obstacle, and determine the exit obstacle avoidance Bezier curves corresponding to the obstacle avoidance driving spaces on both sides of the blocking obstacle according to the distal position of the blocking obstacle and the ending position of the vehicle.

[0072] It should be noted that if there is obstacle avoidance driving space on only one side of the blocking obstacle, that is, only one side allows obstacle avoidance driving, then the side with the obstacle avoidance driving space (the side where obstacle avoidance driving is allowed) will be used as the vehicle's obstacle avoidance driving direction (passing direction); if there is no obstacle avoidance driving space on both sides of the blocking obstacle, that is, obstacle avoidance driving is not allowed on both sides, then it is determined that the blocking obstacle does not allow obstacle avoidance driving, and therefore a stop wall is set up in front of the blocking obstacle, and the vehicle is not allowed to pass from any side of the blocking obstacle; if there is obstacle avoidance driving space on both sides of the blocking obstacle, then it is necessary to determine the vehicle's obstacle avoidance driving direction, that is, determine which side of the blocking obstacle the vehicle should travel for obstacle avoidance.

[0073] Specifically, this embodiment determines the obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving space on both sides of the blocking obstacle based on the starting position of the vehicle and the proximal position of the blocking obstacle, and determines the exit obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving space on both sides of the blocking obstacle based on the distal position of the blocking obstacle and the ending position of the vehicle; wherein, the starting position of the vehicle refers to the current position of the vehicle when it is necessary to determine the obstacle avoidance driving direction of the vehicle; the ending position of the vehicle refers to the position where the vehicle returns to the center line of the lane after obstacle avoidance driving. When determining the starting position and ending position of the vehicle, the position of the center point of the vehicle is generally used to determine the starting position and ending position of the vehicle; in actual application, it is necessary to unify the setting method of the starting position and ending position of the vehicle so as to subsequently determine an accurate obstacle avoidance Bezier curve.

[0074] Among them, the proximal position of the blocking obstacle refers to the position corresponding to the boundary of one end of the blocking obstacle close to the starting position of the vehicle along the lane centerline direction; generally speaking, according to the shape of the blocking obstacle, the boundary of one end of the blocking obstacle close to the vehicle along the lane centerline direction includes at least two endpoints, which correspond to the two sides of the blocking obstacle respectively. In a specific implementation, the ordinate of the proximal position is the minimum coordinate value of the boundary of the end of the blocking obstacle close to the vehicle, and the abscissa is the coordinate value of the lateral boundary of the blocking obstacle after extending outward a certain distance. The distal position of the blocking obstacle refers to the position corresponding to the boundary of one end of the blocking obstacle away from the starting position of the vehicle along the lane centerline direction; generally speaking, according to the shape of the blocking obstacle, the boundary of one end of the blocking obstacle away from the vehicle along the lane centerline direction also includes at least two endpoints, which correspond to the two sides of the blocking obstacle respectively; in a specific implementation, the ordinate of the distal position is the maximum coordinate value of the boundary of the end of the blocking obstacle away from the vehicle, and the abscissa is the coordinate value of the lateral boundary of the blocking obstacle after extending outward a certain distance.

[0075] In this embodiment, a Bezier curve connecting the starting position of the vehicle before obstacle avoidance to the proximal position of the blocking obstacle is defined as an obstacle avoidance Bezier curve, and a Bezier curve exiting obstacle avoidance from the distal position of the blocking obstacle back to the center of the lane is defined as an exit obstacle avoidance Bezier curve.

[0076] Specifically, the starting position and the ending position of the vehicle are determined, the proximal position and the distal position of the blocking obstacle are determined, and then the obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving space on both sides of the blocking obstacle is determined according to the starting position of the vehicle and the proximal position of the blocking obstacle, and the exit obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving space on both sides of the blocking obstacle is determined according to the distal position of the blocking obstacle and the ending position of the vehicle.

[0077] S300: Generate at least two candidate obstacle avoidance curves according to the obstacle avoidance Bezier curve and the obstacle avoidance exit Bezier curve.

[0078] Specifically, after determining the obstacle avoidance Bezier curve and the exit obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving space on both sides of the blocking obstacle, the end of the obstacle avoidance Bezier curve of the blocking obstacle is connected to the beginning of the exit obstacle avoidance Bezier curve to obtain candidate obstacle avoidance curves corresponding to both sides of the blocking obstacle, that is, at least two candidate obstacle avoidance curves are obtained.

[0079] Figure 2 A schematic diagram of a candidate obstacle avoidance curve provided for an embodiment of the present application; wherein Bezier curve 1 and Bezier curve 2 represent two obstacle avoidance Bezier curves determined according to the starting position of the vehicle and the proximal position of the blocking obstacle; Bezier curve 3 and Bezier curve 4 represent two exit obstacle avoidance Bezier curves determined according to the distal position of the blocking obstacle and the ending position of the vehicle; the end of the obstacle avoidance Bezier curve (Bezier curve 1) on the left side of the blocking obstacle is connected to the beginning of the exit obstacle avoidance Bezier curve (Bezier curve 3) on the left side of the blocking obstacle to obtain a candidate obstacle avoidance curve corresponding to the left side of the blocking obstacle; correspondingly, the end of the obstacle avoidance Bezier curve (Bezier curve 2) on the right side of the blocking obstacle is connected to the beginning of the exit obstacle avoidance Bezier curve (Bezier curve 4) on the right side of the blocking obstacle to obtain a candidate obstacle avoidance curve corresponding to the right side of the blocking obstacle.

[0080] S400: Determine a target obstacle avoidance curve from among the candidate obstacle avoidance curves according to the curve lengths of the candidate obstacle avoidance curves, and determine an obstacle avoidance driving direction of the vehicle according to the target obstacle avoidance curve.

[0081] Specifically, after determining at least two candidate obstacle avoidance curves, the curve lengths of the candidate obstacle avoidance curves are determined respectively, the curve lengths of the candidate obstacle avoidance curves are compared, and the candidate obstacle avoidance curve with the shortest curve length is determined as the target obstacle avoidance curve, and the obstacle avoidance driving direction of the vehicle is determined according to the target obstacle avoidance curve. In a specific example, the curve length can be used as the obstacle avoidance cost value of the corresponding candidate obstacle avoidance curve; the magnitude relationship of the obstacle avoidance cost values ​​is compared, and the candidate obstacle avoidance curve with the smallest obstacle avoidance cost value, that is, the shortest curve length, is determined as the target obstacle avoidance curve, and the obstacle avoidance driving direction of the vehicle is determined according to the target obstacle avoidance curve.

[0082] The embodiment of the present application provides an obstacle avoidance method for autonomous driving. When there is obstacle avoidance driving space on both sides of a blocking obstacle, obstacle avoidance Bezier curves corresponding to the obstacle avoidance driving spaces on both sides of the blocking obstacle are determined according to the starting position of the vehicle and the proximal position of the blocking obstacle, and exit obstacle avoidance Bezier curves corresponding to the obstacle avoidance driving spaces on both sides of the blocking obstacle are determined according to the distal position of the blocking obstacle and the ending position of the vehicle; that is, factors such as the starting position, ending position of the vehicle, and the position and size of the blocking obstacle are considered when setting the obstacle avoidance Bezier curve and the exit obstacle avoidance Bezier curve, and after at least two candidate obstacle avoidance curves are generated according to the obstacle avoidance Bezier curve and the exit obstacle avoidance Bezier curve, a target obstacle avoidance curve is determined from each candidate obstacle avoidance curve according to the curve length of each candidate obstacle avoidance curve, and the obstacle avoidance driving direction of the vehicle is determined according to the target obstacle avoidance curve; therefore, the method avoids the process of subjectively setting weight coefficients corresponding to each factor, and the obstacle avoidance driving direction determined according to the method is more objective and reasonable.

[0083] Based on the above embodiment, this embodiment further illustrates and optimizes the technical solution. Specifically, in this embodiment, an obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving space on both sides of the blocking obstacle is determined according to the starting position of the vehicle and the proximal position of the blocking obstacle, including:

[0084] For the obstacle avoidance driving space on each side of the blocking obstacle, determining a starting position of the vehicle and a proximal position corresponding to the obstacle avoidance driving space of the blocking obstacle;

[0085] Determine at least two first position points according to the starting position and the proximal position; the at least two first position points are between the starting position and the proximal position;

[0086] An obstacle avoidance Bezier curve is generated according to the starting position, the proximal position and at least two first position points.

[0087] In this embodiment, a corresponding obstacle avoidance Bezier curve is generated for the obstacle avoidance driving space on each side of the blocking obstacle. It should be noted that the third-order Bezier curve generates the corresponding curve graph by controlling four control points; corresponding to this embodiment, the four control points corresponding to the obstacle avoidance Bezier curve include the starting position of the vehicle, the proximal position of the blocking obstacle, and at least two first position points determined according to the starting position and the proximal position.

[0088] Specifically, the starting position of the vehicle is determined, and for the obstacle avoidance driving space on each side of the blocking obstacle, the proximal position corresponding to the obstacle avoidance driving space of the blocking obstacle is determined; at least two first position points are determined according to the starting position and the proximal position; the starting position of the vehicle and the proximal position of the blocking obstacle are correspondingly set as the starting point and end point of the Bezier curve; a third-order interpolation method is used to generate a scattered point sequence according to the order of the starting position, the proximal position and the at least two first position points to obtain the obstacle avoidance Bezier curve.

[0089] In a specific embodiment, in combination Figure 3 A schematic diagram of the process of generating an obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving space on the left side of a blocked obstacle is shown. Specifically, a Frenet coordinate system (also known as the sl coordinate system) and a vehicle body xy coordinate system are established; wherein the lane centerline is the s coordinate direction of the Frenet coordinate system, and the direction perpendicular to the lane centerline is the l coordinate direction; wherein start_s represents the minimum value of the vertical coordinate of the blocking obstacle boundary in the Frenet coordinate system; end_s represents the maximum value of the vertical coordinate of the blocking obstacle boundary in the Frenet coordinate system; start_l represents the minimum value of the horizontal coordinate of the blocking obstacle boundary in the Frenet coordinate system; end_l represents the maximum value of the horizontal coordinate of the blocking obstacle boundary in the Frenet coordinate system. Correspondingly, the lateral distance refers to the distance component in the l coordinate direction; the longitudinal distance refers to the distance component in the s direction; the vehicle body xy coordinate system takes the vehicle body as the coordinate origin, the front direction of the vehicle is the x direction, and the left direction perpendicular to the front direction of the vehicle is the y direction.

[0090] Specific, combined Figure 3 As shown in the figure, a process of generating an obstacle avoidance Bezier curve is as follows:

[0091] Step 3.1: Determine the center point of the vehicle as the starting position of the vehicle (the first control point of the obstacle avoidance Bezier curve);

[0092] Step 3.2: The position at which the left lateral distance between the blocking obstacle and the vertical coordinate start_s is the first preset distance is determined as the proximal position of the blocking obstacle (the fourth control point of the obstacle avoidance Bezier curve); wherein the first preset distance can be set to 0.5*adc_width+lat_buffer; adc_width represents the width of the vehicle, and lat_buffer represents the lateral buffer distance of the blocking obstacle; wherein the lateral buffer distance is a preset distance to avoid collision between the vehicle and the blocking obstacle;

[0093] Step 3.3: Convert the vehicle's starting position (the first control point of the obstacle avoidance Bezier curve) and the near-end position of the blocking obstacle (the fourth control point of the obstacle avoidance Bezier curve) to the xy coordinate system, and calculate the first straight-line distance distance1 between the starting position and the near-end position;

[0094] Step 3.4: Based on the starting position of the vehicle (the first control point of the obstacle avoidance Bezier curve), extend the second preset distance along the direction of the vehicle in the xy coordinate system to determine a first position point (the second control point of the obstacle avoidance Bezier curve); wherein the second preset distance can be set to extend_ratio*distance1; extend_ratio is a preset ratio;

[0095] Step 3.5: Based on the proximal position of the blocking obstacle (the fourth control point of the obstacle avoidance Bezier curve), in the xy coordinate system, the lane tangent direction of the proximal position (the fourth control point of the obstacle avoidance Bezier curve) is extended in the negative direction of the s coordinate direction by a second preset distance to determine a first position point (the third control point of the obstacle avoidance Bezier curve); wherein the second preset distance can be set to extend_ratio*distance1;

[0096] Step 3.6: After determining the four control points, substitute the starting position (the first control point of the obstacle avoidance Bezier curve), the proximal position (the fourth control point of the obstacle avoidance Bezier curve) and at least two first position points (the second control point of the obstacle avoidance Bezier curve and the third control point of the obstacle avoidance Bezier curve) into the standard curve expression of the third-order Bezier curve, and generate the corresponding Bezier curve according to the order of the points to be fitted, so as to obtain the obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving space on the left side of the blocked obstacle.

[0097] According to the method of this embodiment, the obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving space on both sides of the blocked obstacle can be determined efficiently and conveniently.

[0098] Based on the above embodiment, this embodiment further illustrates and optimizes the technical solution. Specifically, in this embodiment, the exit obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving space on both sides of the blocking obstacle is determined according to the far end position of the blocking obstacle and the end position of the vehicle, including:

[0099] According to the far end position of the blocking obstacle and the end position of the vehicle, an exit obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving space on both sides of the blocking obstacle is determined, including:

[0100] For the obstacle avoidance driving space on each side of the blocking obstacle, determining an end position of the vehicle and a distal position corresponding to the obstacle avoidance driving space of the blocking obstacle;

[0101] Determine at least two second position points according to the end position and the distal position; the at least two second position points are between the distal position and the end position;

[0102] An exit obstacle avoidance Bezier curve is generated according to the end position, the far-end position and at least two second position points.

[0103] In this embodiment, corresponding exit obstacle avoidance Bezier curves are generated for the obstacle avoidance driving space on each side of the blocking obstacle. It should be noted that the at least four control points corresponding to the exit obstacle avoidance Bezier curve in this embodiment include the end position of the vehicle, the far end position of the blocking obstacle, and at least two second position points determined according to the end position and the far end position.

[0104] Specifically, the end position of the vehicle is determined, and for the obstacle avoidance driving space on each side of the blocking obstacle, the distal position corresponding to the obstacle avoidance driving space of the blocking obstacle is determined; at least two second position points are determined according to the end position and the distal position; the distal position of the blocking obstacle and the end position of the vehicle are correspondingly set as the starting point and end point of the Bezier curve, and a scattered point sequence is generated according to the sequence of the distal position, the end position and the at least two second position points using a third-order interpolation method to obtain an exit obstacle avoidance Bezier curve.

[0105] In a specific embodiment, in combination Figure 4 A schematic diagram of a process for generating an exit obstacle avoidance Bezier curve on the left side of a blocked obstacle is shown; Figure 4 As shown, based on the establishment of the Frenet coordinate system (also known as the sl coordinate system) and the rectangular coordinate system (xy coordinate system), a process of generating an exit obstacle avoidance Bezier curve is as follows:

[0106] Step 4.1: The position at which the left lateral distance between the blocking obstacle and the vertical coordinate end_s is the first preset distance is determined as the far end position of the blocking obstacle (the first control point of the exit obstacle avoidance Bezier curve); wherein the first preset distance can be set to 0.5*adc_width+lat_buffer; adc_width represents the width of the vehicle, and lat_buffer represents the lateral buffer distance of the blocking obstacle; wherein the lateral buffer distance is a preset distance to avoid collision between the vehicle and the blocking obstacle;

[0107] Step 4.2: Determine the position on the lane centerline that is a third preset distance from the vertical coordinate end_s of the blocking obstacle in the s coordinate direction as the end position of the vehicle (the fourth control point of the exit obstacle avoidance Bezier curve); wherein the third preset distance is the minimum obstacle avoidance distance min_lane_borrow_distance;

[0108] Step 4.3: Convert the far end position of the blocking obstacle (the first control point of exiting the obstacle avoidance Bezier curve) and the end position of the vehicle (the fourth control point of exiting the obstacle avoidance Bezier curve) to the xy coordinate system, and calculate the second straight-line distance distance2 between the far end position and the end position;

[0109] Step 4.4: Based on the far end position of the blocking obstacle (the first control point of exiting the obstacle avoidance Bezier curve), a position extending a third preset distance in the positive direction of the s coordinate direction along the lane tangent direction of the far end position (the first control point of exiting the obstacle avoidance Bezier curve) in the xy coordinate system is determined as a second position point (the second control point of exiting the obstacle avoidance Bezier curve); wherein the third preset distance can be set to extend_ratio * distance2, where extend_ratio represents a ratio;

[0110] Step 4.5: Based on the end position of the vehicle (the fourth control point of exiting the obstacle avoidance Bezier curve), a position extending a third preset distance in the negative direction of the s coordinate direction along the lane tangent direction of the end position (the fourth control point of exiting the obstacle avoidance Bezier curve) in the xy coordinate system is determined as a second position point (the third control point of exiting the obstacle avoidance Bezier curve); wherein the third preset distance can be set to extend_ratio * distance2, and extend_ratio represents a ratio;

[0111] Step 4.6: After determining at least four points to be fitted, substitute the far position (the first control point of the exit obstacle avoidance Bezier curve), the end position (the fourth control point of the exit obstacle avoidance Bezier curve) and at least two second position points (the second control point of the exit obstacle avoidance Bezier curve and the third control point of the exit obstacle avoidance Bezier curve) into the standard curve expression of the third-order Bezier curve, generate the corresponding Bezier curve according to the order of the points to be fitted, and obtain the exit obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving space on the left side of the blocked obstacle.

[0112] According to the method of this embodiment, the exit obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving space on both sides of the blocking obstacle can be determined efficiently and conveniently.

[0113] Based on the above embodiment, this embodiment further illustrates and optimizes the technical solution. Specifically, in this embodiment, when the vehicle detects a blocking obstacle, determining whether there is obstacle avoidance driving space on both sides of the blocking obstacle includes:

[0114] When the vehicle detects at least two blocking obstacles, if the longitudinal distance between the at least two blocking obstacles is within a preset distance range, determining whether there is obstacle avoidance driving space on both sides of the at least two blocking obstacles;

[0115] Correspondingly, if there are obstacle avoidance driving spaces on both sides of the blocking obstacle, the obstacle avoidance Bezier curves corresponding to the obstacle avoidance driving spaces on both sides of the blocking obstacle are determined according to the starting position of the vehicle and the proximal position of the blocking obstacle, and the exit obstacle avoidance Bezier curves corresponding to the obstacle avoidance driving spaces on both sides of the blocking obstacle are determined according to the distal position of the blocking obstacle and the ending position of the vehicle, including:

[0116] If there are obstacle avoidance driving spaces on both sides of at least two blocking obstacles, an obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving spaces on both sides of the first blocking obstacle is determined according to the starting position of the vehicle and the proximal position of the first blocking obstacle, and an exit obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving spaces on both sides of the second blocking obstacle is determined according to the distal position of the second blocking obstacle and the ending position of the vehicle; wherein, among the at least two blocking obstacles, the blocking obstacle close to the vehicle along the center line of the lane is the first blocking obstacle, and the blocking obstacle far away from the vehicle along the center line of the lane is the second blocking obstacle;

[0117] Correspondingly, at least two candidate obstacle avoidance curves are generated according to the obstacle avoidance Bezier curve and the exit obstacle avoidance Bezier curve, including:

[0118] Determine a corresponding continuous obstacle avoidance Bezier curve according to the distal position of the first blocking obstacle and the proximal position of the second blocking obstacle;

[0119] At least two candidate obstacle avoidance curves are determined according to the obstacle avoidance Bezier curve, the continuous obstacle avoidance Bezier curve, and the exit obstacle avoidance Bezier curve.

[0120] It should be noted that if the vehicle detects at least two blocking obstacles, and the longitudinal distance between the at least two blocking obstacles is within a preset distance range, that is, the longitudinal distance between the two blocking obstacles is less than the maximum continuous obstacle avoidance distance and greater than the minimum continuous obstacle avoidance distance; then first determine whether there is obstacle avoidance driving space on both sides of the two blocking obstacles, that is, whether there is obstacle avoidance driving space for both the first blocking obstacle and the second blocking obstacle; if there is obstacle avoidance driving space on both sides of at least two blocking obstacles, the vehicle needs to perform continuous obstacle avoidance for the two blocking obstacles; and generate a corresponding obstacle avoidance curve for each blocking obstacle, that is, reduce the dimension to the process of performing obstacle avoidance driving for the two blocking obstacles respectively.

[0121] Specifically, an obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving space on both sides of the first blocking obstacle is determined according to the starting position of the vehicle and the proximal position of the first blocking obstacle, and an exit obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving space on both sides of the second blocking obstacle is determined according to the distal position of the second blocking obstacle and the ending position of the vehicle; a corresponding continuous obstacle avoidance Bezier curve is determined according to the distal position of the first blocking obstacle and the proximal position of the second blocking obstacle, that is, a curve connecting the distal position of the first blocking obstacle to the proximal position of the next blocking obstacle is called a continuous obstacle avoidance Bezier curve; the obstacle avoidance Bezier curve, the continuous obstacle avoidance Bezier curve and the exit obstacle avoidance Bezier curve are sequentially connected to obtain at least four candidate obstacle avoidance curves.

[0122] It should be noted that the connecting line connecting the obstacle avoidance Bezier curve corresponding to the same side of the blocking obstacle and the exit obstacle avoidance Bezier curve can be determined as a continuous obstacle avoidance Bezier curve, and the continuous obstacle avoidance Bezier curve connecting the obstacle avoidance Bezier curve corresponding to different sides of the blocking obstacle and the exit obstacle avoidance Bezier curve can also be determined as a continuous obstacle avoidance Bezier curve. It needs to be determined according to the shape and position of the first blocking obstacle and the second blocking obstacle, and this embodiment does not limit this.

[0123] In a specific embodiment, in combination Figure 5 A schematic diagram of a process for generating a continuous obstacle avoidance Bezier curve is shown in FIG. Figure 5 As shown in FIG. 1 , the blocking obstacle close to the vehicle along the center line of the lane is the first blocking obstacle, and the blocking obstacle far away from the vehicle along the center line of the lane is the second blocking obstacle; based on the establishment of the Frenet coordinate system (also known as the sl coordinate system) and the rectangular coordinate system (xy coordinate system), a process of generating a continuous obstacle avoidance Bezier curve is as follows:

[0124] Step 5.1: The position at which the left lateral distance between the first blocking obstacle and the vertical coordinate end_s is the first preset distance is determined as the far end position of the first blocking obstacle (the first control point of the continuous obstacle avoidance Bezier curve); wherein the first preset distance can be set to 0.5*adc_width+lat_buffer; adc_width represents the width of the vehicle, and lat_buffer represents the lateral buffer distance of the blocking obstacle; wherein the horizontal line buffer distance is the preset distance to avoid collision between the vehicle and the blocking obstacle;

[0125] Step 5.2: Determine the position of the second blocking obstacle whose right lateral distance from the vertical coordinate start_s is the first preset distance as the proximal position of the second blocking obstacle (the fourth control point of the continuous obstacle avoidance Bezier curve); wherein the first preset distance can be set to 0.5*adc_width+lat_buffer;

[0126] Step 5.3: Convert the far end position of the first blocking obstacle (the first control point of the continuous obstacle avoidance Bezier curve) and the near end position of the second blocking obstacle (the fourth control point of the continuous obstacle avoidance Bezier curve) to the xy coordinate system, and calculate the third straight-line distance distance3 between the far end position of the first blocking obstacle (the first control point of the continuous obstacle avoidance Bezier curve) and the near end position of the second blocking obstacle (the fourth control point of the continuous obstacle avoidance Bezier curve);

[0127] Step 5.4: Based on the far end position of the first blocking obstacle (the first control point of the continuous obstacle avoidance Bezier curve), in the xy coordinate system, the lane tangent direction of the s coordinate direction of the far end position of the first blocking obstacle (the first control point of the continuous obstacle avoidance Bezier curve) is extended in the positive direction of the s coordinate direction by a second preset distance to determine the first third position point (the second control point of the continuous obstacle avoidance Bezier curve); wherein the second preset distance can be set to extend_ratio*distance3;

[0128] Step 5.5: Based on the proximal position of the second blocking obstacle (the fourth control point of the continuous obstacle avoidance Bezier curve), the lane tangent direction of the proximal position of the second blocking obstacle (the fourth control point of the continuous obstacle avoidance Bezier curve) in the s coordinate direction is extended by a second preset distance in the negative direction of the s coordinate direction to determine the second third position point (the third control point of the continuous obstacle avoidance Bezier curve); wherein the second preset distance can be set to extend_ratio*distance3;

[0129] Step 5.6: After determining at least four points to be fitted, substitute the distal position of the first blocking obstacle (the first control point of the continuous obstacle avoidance Bezier curve), the proximal position of the second blocking obstacle (the fourth control point of the continuous obstacle avoidance Bezier curve), and at least two third position points (the second control point of the continuous obstacle avoidance Bezier curve and the third control point of the continuous obstacle avoidance Bezier curve) into the standard curve expression of the third-order Bezier curve, generate the corresponding Bezier curve according to the order of the points to be fitted, and obtain the continuous obstacle avoidance Bezier curve.

[0130] Specific, combined Figure 6 The schematic diagram of another candidate obstacle avoidance curve shown in FIG. 1 shows a process of determining at least four candidate obstacle avoidance curves according to the obstacle avoidance Bezier curve, the continuous obstacle avoidance Bezier curve and the exit obstacle avoidance Bezier curve as follows:

[0131] Step 6.1: Determine the corresponding obstacle avoidance Bezier curves according to the starting position of the vehicle and the proximal positions on the left and right sides of the first blocking obstacle;

[0132] Step 6.2: Determine the corresponding continuous obstacle avoidance Bezier curves according to the far-end positions on the left and right sides of the first blocking obstacle and the near-end positions on the left and right sides of the second blocking obstacle;

[0133] Step 6.3: Determine the corresponding exit obstacle avoidance Bezier curve according to the far-end positions on the left and right sides of the second blocking obstacle and the end position of the vehicle;

[0134] Step 6.4: For the left and right sides of the two blocking obstacles, the obstacle avoidance Bezier curve, the continuous obstacle avoidance Bezier curve and the exit obstacle avoidance Bezier curve are respectively connected as candidate obstacle avoidance curves, and the end of the former is connected to the beginning of the latter by a line segment to obtain at least four candidate obstacle avoidance curves; specifically, the end of the obstacle avoidance Bezier curve is connected to the beginning of the continuous obstacle avoidance Bezier curve, and the end of the continuous obstacle avoidance Bezier curve is connected to the beginning of the exit obstacle avoidance Bezier curve to obtain at least four candidate obstacle avoidance curves.

[0135] It should be noted that, in actual applications, taking into account the influence of vehicle detection range and obstacle occlusion, the vehicle may have inaccurate detection of the shape or position of the blocking obstacle when detecting a blocking obstacle at a farther distance. In order to avoid the negative impact of meaningless calculations or inaccurate detected data on the setting of the obstacle avoidance Bezier curve, this embodiment no longer considers the exit obstacle avoidance Bezier curve of the blocking obstacle farthest from the vehicle when a preset number (such as 3) of blocking obstacles are detected.

[0136] Figure 7 A schematic diagram of another candidate obstacle avoidance curve provided in an embodiment of the present application; Figure 7As shown, when there is obstacle avoidance driving space on both sides of the blocking obstacle farthest from the vehicle (hereinafter referred to as the third blocking obstacle), the side closer to the lane centerline is selected as the obstacle avoidance driving direction.

[0137] The specific calculation method is: compare the absolute value of the start_l coordinate and the absolute value of the end_l coordinate of the third blocking obstacle. If the absolute value of the start_l coordinate is smaller than the absolute value of the end_l coordinate, the right side of the third blocking obstacle is selected as the obstacle avoidance driving direction of the third blocking obstacle, otherwise the left side of the third blocking obstacle is selected as the obstacle avoidance driving direction of the third blocking obstacle; after determining the obstacle avoidance driving direction, the position at which the left lateral distance of the third blocking obstacle corresponding to the longitudinal coordinate end_s is the first preset distance is determined as the position at the fourth preset distance as the proximal position of the third blocking obstacle, and the end point of the candidate obstacle avoidance curve is modified to the proximal position of the third obstacle; wherein the fourth preset distance can be set to 0.5*adc_width+lat_buffer; adc_width represents the width of the vehicle, and lat_buffer represents the lateral buffer distance of the blocking obstacle.

[0138] If only one of the two sides of the third blocking obstacle has obstacle avoidance driving space (obstacle avoidance driving is allowed), the side with the obstacle avoidance driving space is determined as the obstacle avoidance driving direction.

[0139] According to the method of this embodiment, it is possible to perform continuous obstacle avoidance for at least two blocking obstacles whose longitudinal distances are within a preset distance range. When setting the candidate obstacle avoidance curve, the influence of the second blocking obstacle on the first blocking obstacle is further considered, which is more conducive to handling continuous obstacle avoidance and can further improve the objectivity and rationality of determining the obstacle avoidance driving direction.

[0140] Based on the above embodiment, this embodiment further illustrates and optimizes the technical solution. Specifically, in this embodiment, when the vehicle detects a blocking obstacle, determining whether there is obstacle avoidance driving space on both sides of the blocking obstacle includes:

[0141] When the vehicle detects at least two blocking obstacles, if the longitudinal distance between the at least two blocking obstacles is less than the minimum continuous obstacle avoidance distance, the at least two blocking obstacles are set as an overall blocking obstacle, and it is determined whether there is obstacle avoidance driving space on both sides of the overall blocking obstacle.

[0142] It should be noted that if the vehicle detects at least two blocking obstacles, and the longitudinal distance between the at least two blocking obstacles is less than the minimum continuous obstacle avoidance distance, a corresponding obstacle avoidance curve is generated for the entire obstacle to perform obstacle avoidance driving.

[0143] Specifically, an obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving space on both sides of the overall blocking obstacle is determined according to the starting position of the vehicle and the proximal position of the overall blocking obstacle; an exit obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving space on both sides of the overall blocking obstacle is determined according to the distal position of the overall blocking obstacle and the ending position of the vehicle; and then a corresponding candidate obstacle avoidance curve is determined according to the obstacle avoidance Bezier curve and the exit obstacle avoidance Bezier curve.

[0144] In this embodiment, in the case where the longitudinal distance between at least two blocking obstacles is less than the minimum continuous obstacle avoidance distance, the at least two blocking obstacles are directly set as an overall blocking obstacle for obstacle avoidance processing, which can efficiently and conveniently determine the candidate obstacle avoidance curve, thereby improving the efficiency of determining the obstacle avoidance driving direction.

[0145] Based on the above embodiment, this embodiment further illustrates and optimizes the technical solution. Specifically, in this embodiment, when the vehicle detects a blocking obstacle, determining whether there is obstacle avoidance driving space on both sides of the blocking obstacle includes:

[0146] When the vehicle detects an obstacle, the lateral boundary and the driving space boundary of the obstacle are determined; the lateral boundary includes the coordinates of the left boundary of the obstacle and the coordinates of the right boundary of the obstacle; the driving space boundary includes the coordinates of the left boundary of the driving space and the coordinates of the right boundary of the driving space;

[0147] If the right boundary coordinate of the obstacle is smaller than the left boundary coordinate of the driving space, and the left boundary coordinate of the obstacle is larger than the right boundary coordinate of the driving space, or the left boundary coordinate of the obstacle is smaller than the right boundary coordinate of the driving space, and the right boundary coordinate of the obstacle is larger than the left boundary coordinate of the driving space, then the obstacle is determined to be a blocking obstacle, and it is determined whether there is obstacle avoidance driving space on both sides of the blocking obstacle.

[0148] Among them, the vehicle detects whether there are obstacles in the direction of travel of the vehicle through its own sensors such as radar, millimeter-wave radar, image acquisition device, etc.; when the vehicle detects an obstacle, it first eliminates the obstacles outside the driving space, including fixed obstacles, dynamic obstacles and virtual obstacles, etc.; then determines the type of obstacles in the driving space, including blocking obstacles that need to be avoided and lateral obstacles that affect obstacle avoidance.

[0149] Specifically, the process of determining the type of obstacle in the driving space includes: determining the lateral boundary of the obstacle, which includes the coordinates of the left boundary of the obstacle and the coordinates of the right boundary of the obstacle; determining the driving space boundary, which includes the coordinates of the left boundary of the driving space and the coordinates of the right boundary of the driving space. If the coordinates of the right boundary of the obstacle are smaller than the coordinates of the left boundary of the driving space, and the coordinates of the left boundary of the obstacle are larger than the coordinates of the right boundary of the driving space; or if the coordinates of the left boundary of the obstacle are smaller than the coordinates of the right boundary of the driving space, and the coordinates of the right boundary of the obstacle are larger than the coordinates of the left boundary of the driving space, it means that the obstacle will affect the normal driving of the vehicle in the driving space, and the vehicle may rub or collide with the obstacle, so the obstacle is determined to be a blocking obstacle, and the vehicle needs to avoid the obstacle, so it is further determined whether there is obstacle avoidance driving space on both sides of the blocking obstacle.

[0150] Otherwise, it means that the vehicle will not rub or collide with the obstacle when driving in the driving space; therefore, it is further determined whether there is a blocking obstacle in the s coordinate direction (lane centerline direction) of the obstacle within the detection range (detection_distance) at the last detection moment; if there is a blocking obstacle, it is determined that the obstacle is a lateral obstacle; if there is no blocking obstacle, the obstacle can be filtered out.

[0151] In actual operation, the type of obstacle in the driving space can also be determined in combination with the obstacle buffer distance: determine the lateral boundary of the obstacle, which includes the coordinates of the left boundary of the obstacle and the coordinates of the right boundary of the obstacle; determine the driving space boundary, which includes the coordinates of the left boundary of the driving space and the coordinates of the right boundary of the driving space; extend the obstacle buffer distance to the left based on the coordinates of the left boundary of the driving space to obtain the coordinates of the left boundary of the virtual driving space, and extend the obstacle buffer distance to the right based on the coordinates of the right boundary of the driving space to obtain the coordinates of the virtual right driving space; if the coordinates of the right boundary of the obstacle are smaller than the coordinates of the left boundary of the virtual driving space, and the coordinates of the left boundary of the obstacle are larger than the coordinates of the right boundary of the virtual driving space; or if the coordinates of the left boundary of the obstacle are smaller than the coordinates of the right boundary of the virtual driving space, and the coordinates of the right boundary of the obstacle are larger than the coordinates of the left boundary of the virtual driving space, it means that the obstacle will affect the normal driving of the vehicle in the driving space, and the vehicle may rub or collide with the obstacle, so it is determined that the obstacle is a blocking obstacle, and the vehicle needs to avoid the obstacle, so it is further determined whether there is obstacle avoidance driving space on both sides of the blocking obstacle.

[0152] In this embodiment, if it is determined that the obstacle is a lateral impact obstacle, it is necessary to further determine whether the lateral impact obstacle will affect the obstacle avoidance driving of the vehicle.

[0153] Specifically, the corresponding expansion direction is first determined according to the position of the lateral obstacle in the driving space. Figure 8 A schematic diagram of a lateral obstacle provided in an embodiment of the present application. When the lateral obstacle is on the left side of the driving space (the left side of the lane centerline), the lateral buffer distance is expanded in the l coordinate direction on the right side of the lateral obstacle to obtain the expanded occupied space corresponding to the lateral obstacle; the obstacle influence range of the lateral obstacle is determined according to the expanded occupied space, the left boundary of the driving space, and the occupied space of the lateral obstacle (start_s to end_l range), the obstacle influence range is removed in the driving space, and it is determined whether the vehicle can pass through the driving space after the obstacle influence range is removed.

[0154] Correspondingly, if the lateral obstacle is on the right side of the lane (right side of the lane centerline), the lateral buffer distance is expanded in the l coordinate direction on the left side of the lateral obstacle, and the corresponding obstacle influence range is determined, the obstacle influence range is removed in the driving space, and it is determined whether the vehicle can pass through the driving space after the obstacle influence range is removed.

[0155] It should be noted that after determining the obstacle avoidance driving direction of a single blocking obstacle or the obstacle avoidance driving direction of consecutive blocking obstacles, the driving space needs to be modified accordingly. Specifically, after determining the obstacle avoidance driving direction corresponding to the blocking obstacle, the side corresponding to the obstacle avoidance driving direction is determined as the pass side, and the other side is determined as the prohibited side.

[0156] Fig. 9 A schematic diagram of an updated driving space provided in an embodiment of the present application. Fig. 9 , modify the driving space according to the following rules for the blocking obstacle:

[0157] The lateral buffer distance is expanded in the l coordinate direction of the passage side of the blocking obstacle to obtain the expanded occupied space corresponding to the blocking obstacle; the obstacle influence range of the blocking obstacle is determined according to the expanded occupied space, the driving space boundary corresponding to the prohibited side of the blocking obstacle and the occupied space of the blocking obstacle (start_s to end_l range), the obstacle influence range is removed in the driving space, and it is determined whether the vehicle can pass through the driving space after the obstacle influence range is removed.

[0158] In this embodiment, obstacles whose obstacle types are blocking obstacles are screened out so that driving avoidance can be performed for the blocking obstacles later.

[0159] Based on the above embodiment, this embodiment further illustrates and optimizes the technical solution. Specifically, in this embodiment, when the vehicle detects a blocking obstacle, determining whether there is obstacle avoidance driving space on both sides of the blocking obstacle includes:

[0160] When the vehicle detects a blocking obstacle, determine the boundary point closest to the driving space boundary in the boundary corresponding to the candidate obstacle avoidance side of the blocking obstacle, and determine the first boundary point and the second boundary point according to the boundary point; the first boundary point is a virtual boundary point determined according to the horizontal coordinate of the boundary point and the vertical coordinate of the proximal position of the blocking obstacle; the second boundary point is a virtual boundary point determined according to the horizontal coordinate of the boundary point and the vertical coordinate of the distal position of the blocking obstacle;

[0161] Determine the intersection point of the lane centerline according to the first boundary point and the minimum turning radius of the vehicle;

[0162] Determine, according to the vehicle obstacle avoidance distance, a first reference point, a second reference point, and a third reference point corresponding to the lane centerline intersection, the first boundary point, and the second boundary point, respectively;

[0163] It is determined whether there is obstacle avoidance driving space on the candidate obstacle avoidance side of the blocking obstacle according to the first reference point, the second reference point and the third reference point.

[0164] The candidate obstacle avoidance side refers to the side of the obstructing obstacle for which the obstacle avoidance driving space is currently being determined. In actual operation, the left and right sides of the obstructing obstacle are respectively determined as candidate obstacle avoidance sides and it is determined whether there is obstacle avoidance driving space on the candidate obstacle avoidance sides.

[0165] Among them, the boundary corresponding to the candidate obstacle avoidance side refers to the contour line corresponding to the blocking obstacle on the candidate obstacle avoidance side. The contour line can be a straight line or a curve, which is determined according to the type of the blocking obstacle. It can be understood that if the contour line and the driving space boundary are both straight lines, then the distances from each point in the boundary corresponding to the candidate obstacle avoidance side of the blocking obstacle to the driving space boundary are equal, that is, any point in the boundary can be determined as a boundary point; if the contour line is a curve, it is necessary to determine the boundary point in the boundary corresponding to the candidate obstacle avoidance side of the blocking obstacle that is closest to the driving space boundary.

[0166] After the boundary point is determined, the first boundary point and the second boundary point are determined based on the boundary point; wherein the first boundary point is a virtual boundary point determined based on the horizontal coordinate of the boundary point and the vertical coordinate of the proximal position of the blocking obstacle; and the second boundary point is a virtual boundary point determined based on the horizontal coordinate of the boundary point and the vertical coordinate of the distal position of the blocking obstacle.

[0167] Among them, the vehicle's minimum turning radius refers to the minimum distance from the vehicle's steering center to the vehicle's outer steering wheel track (sometimes also refers to the outer edge of the front fender) when the vehicle turns. The vehicle's minimum turning radius is related to the vehicle type.

[0168] Among them, the vehicle obstacle avoidance distance can be determined according to the sum of the vehicle width and the lateral buffer distance of the blocking obstacle, which is not limited in this embodiment.

[0169] In this embodiment, the first reference point, the second reference point and the third reference point respectively corresponding to the intersection of the lane centerline, the first boundary point and the second boundary point are determined according to the vehicle's obstacle avoidance distance; then, it is determined whether there is obstacle avoidance driving space on the candidate obstacle avoidance side of the blocked obstacle according to the first reference point, the second reference point and the third reference point.

[0170] In a specific embodiment, Fig.10 A schematic diagram of determining whether there is obstacle avoidance driving space on both sides of a blocking obstacle is shown; Fig.10 As shown, it is assumed that the candidate obstacle avoidance side of the blocking obstacle is the left side; the process of determining whether there is obstacle avoidance driving space on both sides of the blocking obstacle is as follows:

[0171] Determine the boundary point corresponding to the left side of the blocking obstacle, determine the first boundary point A according to the horizontal coordinate of the boundary point and the vertical coordinate of the proximal position of the blocking obstacle, and determine the second boundary point A' according to the horizontal coordinate of the boundary point and the vertical coordinate of the distal position of the blocking obstacle;

[0172] Extend a minimum turning radius r of the vehicle from the first boundary point A to the direction of the lane perpendicular to the lane to determine the target point;

[0173] Draw an arc with the target point as the center and the vehicle's minimum turning radius r as the radius. The intersection of the arc and the lane centerline is determined as the lane centerline intersection point B.

[0174] Determine the vehicle obstacle avoidance distance adc_width+lat_buffer based on the vehicle width and the lateral buffer distance of the blocking obstacle;

[0175] Taking the first boundary point A, the lane centerline intersection point B and the second boundary point A' as starting points, respectively, the vehicle obstacle avoidance distance is extended in the lateral direction of the candidate obstacle avoidance side to obtain a first reference point D corresponding to the first boundary point A, a second reference point C corresponding to the lane centerline intersection point B and a third reference point E corresponding to the second boundary point A';

[0176] Connecting adjacent first reference point C, second reference point D and third reference point E respectively to obtain at least two reference lines, namely, reference line CD and reference line DE;

[0177] Determine whether the reference line CD and the reference line DE are both within the driving space, that is, whether they exceed the boundary of the driving space;

[0178] If they are all within the driving space, it means that the vehicle can pass through the left side of the blocking obstacle, so it is determined that there is obstacle avoidance driving space on the left side of the blocking obstacle;

[0179] If any one of the reference lines CD and DE exceeds the driving space, it means that the vehicle cannot pass through the left side of the blocking obstacle, so it is determined that there is no obstacle avoidance driving space on the left side of the blocking obstacle.

[0180] According to the method of this embodiment, it is possible to efficiently and accurately determine whether there is obstacle avoidance driving space on both sides of the blocking obstacle, thereby improving the efficiency and accuracy of determining the obstacle avoidance driving direction.

[0181] Based on the above embodiment, this embodiment further illustrates and optimizes the technical solution. Specifically, in this embodiment, a target obstacle avoidance curve is determined from each candidate obstacle avoidance curve according to the curve length of each candidate obstacle avoidance curve, and an obstacle avoidance driving direction of the vehicle is determined according to the target obstacle avoidance curve, including:

[0182] Determine the obstacle avoidance cost corresponding to each candidate obstacle avoidance curve according to the curve length of each candidate obstacle avoidance curve and the passable width corresponding to both sides of the blocking obstacle;

[0183] A target obstacle avoidance curve is determined from each candidate obstacle avoidance curve according to each obstacle avoidance cost value, and an obstacle avoidance driving direction of the vehicle is determined according to the target obstacle avoidance curve.

[0184] The passable width of the blocking obstacle refers to the remaining driving space corresponding to the side of the blocking obstacle. Specifically, for each side of the blocking obstacle, the minimum straight-line distance from the side of the blocking obstacle to the driving space boundary on the corresponding side is determined as the passable width of the blocking obstacle on that side. More specifically, within the coordinate range of start_s to end_s of the blocking obstacle, the distance from the boundaries of the left and right driving spaces to the start_l coordinate and end_l coordinate of the blocking obstacle is determined, and the distances correspond to the passable widths corresponding to the left and right sides of the blocking obstacle, respectively, and are recorded as left_remain_l and right_remain_l.

[0185] In a specific embodiment, for each candidate obstacle avoidance curve, the passable width on one side of the blocked obstacle corresponding to the candidate obstacle avoidance curve is determined; the obstacle avoidance cost value corresponding to the candidate obstacle avoidance curve is determined according to the curve length of the candidate obstacle avoidance curve and the corresponding passable width; after determining the obstacle avoidance cost values ​​corresponding to each candidate obstacle avoidance curve, the size relationship of the obstacle avoidance cost values ​​corresponding to each candidate obstacle avoidance curve is compared, and the candidate obstacle avoidance curve with the smallest obstacle avoidance cost value is determined as the target obstacle avoidance curve, and the obstacle avoidance driving direction and obstacle avoidance state corresponding to the blocked obstacle are determined according to the target obstacle avoidance curve, so that obstacle avoidance path planning can be performed subsequently according to the obstacle avoidance driving direction and obstacle avoidance state.

[0186] In addition, when calculating the obstacle avoidance cost corresponding to the candidate obstacle avoidance curve, weight coefficients corresponding to the curve length and the passable width can be set respectively, and the corresponding obstacle avoidance cost can be obtained by weighted calculation based on the curve length and the passable width and the corresponding weight coefficients.

[0187] When the application scenario is that the vehicle is driving in the park and the vehicle is allowed to cross the yellow line in the park, the calculation formula of the obstacle avoidance cost value on the left side of the blocking obstacle is as follows:

[0188] LeftCost=ω0*left_virtual_length-ω1*left_remain_l+ω2*out_lane_distance; where,

[0189] left_virtual_length indicates the length of the candidate obstacle avoidance curve on the left side of the blocked obstacle; left_remain_l indicates the passable width on the left side of the blocked obstacle; ω0~ω2 are the weight coefficients of the length of the candidate obstacle avoidance curve, the weight coefficient of the passable width on the left side, and the weight coefficient of the penalty value for crossing the yellow line, respectively; out lanedistance represents the distance that the vehicle crosses the center yellow line of the road, and out_lane_distance = max(ob_end_l + adc_width + lat_buffer - yellow_lane_l, 0); where ob_start_l and ob_end_l represent the width of the blocking obstacle, ob_start_l represents the start_l value of the blocking obstacle in the sl coordinate system, and ob_end_l represents the end_l value of the blocking obstacle in the sl coordinate system; adc_width represents the width of the vehicle; lat_buffer represents the lateral buffer distance of the blocking obstacle; yellow_lane_l represents the penalty value calculated for crossing the yellow line when the vehicle is allowed to cross the yellow line in the park, specifically the coordinate of the l coordinate direction of the yellow line on the ordinate corresponding to ob_start_s.

[0190] Correspondingly, the calculation formula for the obstacle avoidance cost value on the right side of the blocked obstacle is as follows:

[0191] RightCost=ω0*right_virtual_length-ω1*right_remain_l;

[0192] Among them, right_virtual_length represents the curve length of the candidate obstacle avoidance curve on the right side of the blocking obstacle, right_remain_l represents the right side passable width of the blocking obstacle; ω0~ω1 are the weight coefficients of the curve length of the candidate obstacle avoidance curve and the weight coefficients of the right side passable width respectively.

[0193] After calculating the obstacle avoidance costs corresponding to both sides of the blocking obstacle, namely, the left obstacle avoidance cost LeftCost and the right obstacle avoidance cost RightCost, the left obstacle avoidance cost LeftCost and the right obstacle avoidance cost RightCost are compared, and the candidate obstacle avoidance curve with the smallest obstacle avoidance cost is determined as the target obstacle avoidance curve, and the obstacle avoidance driving direction and obstacle avoidance state corresponding to the blocking obstacle are determined according to the target obstacle avoidance curve, so that obstacle avoidance path planning can be performed subsequently according to the obstacle avoidance driving direction and obstacle avoidance state.

[0194] In another embodiment, when the longitudinal distance between at least two blocking obstacles is within a preset distance range, the four candidate obstacle avoidance curves are determined, and the process of determining the obstacle avoidance driving direction according to the four candidate obstacle avoidance curves includes:

[0195] Determine the curve lengths corresponding to each candidate obstacle avoidance curve, recorded as virtual_length[0] to virtual_length[3];

[0196] For each candidate obstacle avoidance curve, determine the sum of the passable widths corresponding to the candidate obstacle avoidance curve during two obstacle avoidances; the sum of the passable widths corresponding to each candidate obstacle avoidance curve is recorded as total_remain_l[0] to total_remain_l[3] respectively;

[0197] For each candidate obstacle avoidance curve, determine the total distance that the vehicle travels across the yellow line when avoiding obstacles based on the candidate obstacle avoidance curve; the total distance that the vehicle travels across the yellow line for each candidate obstacle avoidance curve is recorded as out_lane_distance[0] to out_lane_distance[3] respectively; among them, it is only possible to cross the double yellow line when avoiding obstacles to the left, and the distance of crossing the double yellow line when avoiding obstacles to the right is fixed to 0;

[0198] Calculate the obstacle avoidance cost value corresponding to each candidate obstacle avoidance curve. The obstacle avoidance cost value is calculated as follows:

[0199] Cost[i]=ω0*virtual_length[i]-ω1*total_remain_l[i]+ω2*out_lane_distance[i];

[0200] Wherein, ω0~ω2 are weight coefficients of the length of the candidate obstacle avoidance curve, the weight coefficient of the unilateral passable width, and the weight coefficient of the penalty value for crossing the yellow line; virtual_length[i] represents the length of the candidate obstacle avoidance curve i; total_remain_l[i] represents the total passable width of the candidate obstacle avoidance curve i; out_lane_distance[i] represents the total distance the vehicle travels across the yellow line when avoiding obstacles based on the candidate obstacle avoidance curve i;

[0201] After determining the obstacle avoidance cost values ​​corresponding to each candidate obstacle avoidance curve, the obstacle avoidance cost values ​​corresponding to each candidate obstacle avoidance curve are compared, and the candidate obstacle avoidance curve with the smallest obstacle avoidance cost value is determined as the target obstacle avoidance curve. The obstacle avoidance driving direction and obstacle avoidance state corresponding to each blocking obstacle are determined according to the target obstacle avoidance curve, so that obstacle avoidance path planning can be performed subsequently according to the obstacle avoidance driving direction and obstacle avoidance state.

[0202] According to the method of this embodiment, the obstacle avoidance cost values ​​corresponding to the two sides of the blocking obstacle are determined based on a variety of reference factors, so the obstacle avoidance driving direction can be determined more reasonably based on the obstacle avoidance cost values.

[0203] It should be understood that the size of the serial numbers of the steps in the above embodiments does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.

[0204] Fig.11 FIG. 1 is a schematic diagram of the structure of an obstacle avoidance device for autonomous driving provided in an embodiment of the present application. Fig.11 As shown, the obstacle avoidance device for automatic driving of this embodiment includes an obstacle avoidance driving space determination module 1110, a first curve determination module 1120, a second curve determination module 1130 and an obstacle avoidance driving direction determination module 1140; wherein,

[0205] The obstacle avoidance driving space determination module 1110 is used to determine whether there is obstacle avoidance driving space on both sides of the blocking obstacle when the vehicle detects a blocking obstacle;

[0206] The first curve determination module 1120 is used to determine, if there are obstacle avoidance driving spaces on both sides of the blocking obstacle, obstacle avoidance Bezier curves corresponding to the obstacle avoidance driving spaces on both sides of the blocking obstacle according to the starting position of the vehicle and the proximal position of the blocking obstacle, and to determine an exit obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving spaces on both sides of the blocking obstacle according to the distal position of the blocking obstacle and the ending position of the vehicle;

[0207] A second curve determination module 1130 is used to generate at least two candidate obstacle avoidance curves according to the obstacle avoidance Bezier curve and the exit obstacle avoidance Bezier curve;

[0208] The obstacle avoidance driving direction determination module 1140 is used to determine a target obstacle avoidance curve from each candidate obstacle avoidance curve according to the curve length of each candidate obstacle avoidance curve, and determine the obstacle avoidance driving direction of the vehicle according to the target obstacle avoidance curve.

[0209] An obstacle avoidance device for autonomous driving provided in an embodiment of the present application has the same beneficial effects as the above-mentioned obstacle avoidance method for autonomous driving.

[0210] In a specific embodiment, the first curve determination module 1120 includes:

[0211] A first fitting point determination submodule is used to determine, for each side of the obstacle avoidance driving space, a starting position of the vehicle and a proximal position corresponding to the obstacle avoidance driving space of the blocking obstacle;

[0212] A second fitting point determination submodule, used for determining at least two first position points according to the starting position and the proximal position;

[0213] The first curve determination submodule is used to generate an obstacle avoidance Bezier curve according to a starting position, a proximal position and at least two first position points.

[0214] In a specific embodiment, the first curve determination module 1120 includes:

[0215] A third fitting point determination submodule is used to determine, for the obstacle avoidance driving space on each side of the blocking obstacle, an end position of the vehicle and a distal position corresponding to the obstacle avoidance driving space of the blocking obstacle;

[0216] A fourth fitting point determination submodule, used to determine at least two second position points according to the end position and the far-end position;

[0217] The second curve determination submodule is used to generate an exit obstacle avoidance Bezier curve according to the end position, the far end position and at least two second position points.

[0218] In a specific embodiment, the obstacle avoidance driving space determination module 1110 includes:

[0219] A distance determination submodule, for determining whether there is obstacle avoidance driving space on both sides of the at least two blocking obstacles when the vehicle detects at least two blocking obstacles and if the longitudinal distance between the at least two blocking obstacles is within a preset distance range;

[0220] The corresponding first curve determination module 1120 includes:

[0221] The first curve determination submodule is used to determine, if there are obstacle avoidance driving spaces on both sides of at least two blocking obstacles, obstacle avoidance Bezier curves corresponding to the obstacle avoidance driving spaces on both sides of the first blocking obstacle according to the starting position of the vehicle and the proximal position of the first blocking obstacle, and to determine, according to the distal position of the second blocking obstacle and the ending position of the vehicle, an exit obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving spaces on both sides of the second blocking obstacle; wherein, among the at least two blocking obstacles, the blocking obstacle close to the vehicle along the center line of the lane is the first blocking obstacle, and the blocking obstacle far away from the vehicle along the center line of the lane is the second blocking obstacle;

[0222] Correspondingly, the second curve determination module 1130 includes:

[0223] A second curve determination submodule, configured to determine a corresponding continuous obstacle avoidance Bezier curve according to a distal position of a first blocking obstacle and a proximal position of a second blocking obstacle;

[0224] The third curve determination submodule is used to determine at least two candidate obstacle avoidance curves according to the obstacle avoidance Bezier curve, the continuous obstacle avoidance Bezier curve and the exit obstacle avoidance Bezier curve.

[0225] In a specific embodiment, the obstacle avoidance driving space determination module 1110 includes:

[0226] The first obstacle avoidance driving space determination submodule is used to, when the vehicle detects at least two blocking obstacles, if the longitudinal distance between the at least two blocking obstacles is less than the minimum continuous obstacle avoidance distance, set the at least two blocking obstacles as an overall blocking obstacle, and determine whether there is obstacle avoidance driving space on both sides of the overall blocking obstacle.

[0227] In a specific embodiment, the obstacle avoidance driving space determination module 1110 includes:

[0228] The boundary determination submodule is used to determine the lateral boundary and driving space boundary of the obstacle when the vehicle detects an obstacle; the lateral boundary includes the coordinates of the left boundary of the obstacle and the coordinates of the right boundary of the obstacle; the driving space boundary includes the coordinates of the left boundary of the driving space and the coordinates of the right boundary of the driving space;

[0229] The judgment submodule is used to determine that the obstacle is a blocking obstacle if the right boundary coordinate of the obstacle is smaller than the left boundary coordinate of the driving space, and the left boundary coordinate of the obstacle is larger than the right boundary coordinate of the driving space, or the left boundary coordinate of the obstacle is smaller than the right boundary coordinate of the driving space, and the right boundary coordinate of the obstacle is larger than the left boundary coordinate of the driving space, and determine whether there is obstacle avoidance driving space on both sides of the blocking obstacle.

[0230] In a specific embodiment, the obstacle avoidance driving space determination module 1110 includes:

[0231] A boundary point determination submodule, used to determine the boundary point closest to the boundary of the driving space in the boundary corresponding to the candidate obstacle avoidance side of the blocking obstacle, and determine the first boundary point and the second boundary point according to the boundary point; the first boundary point is a virtual boundary point determined according to the horizontal coordinate of the boundary point and the vertical coordinate of the proximal position of the blocking obstacle; the second boundary point is a virtual boundary point determined according to the horizontal coordinate of the boundary point and the vertical coordinate of the distal position of the blocking obstacle;

[0232] An intersection determination submodule, used to determine the intersection of the lane centerline according to the first boundary point and the minimum turning radius of the vehicle;

[0233] A reference point determination submodule, for determining, according to the vehicle obstacle avoidance distance, a first reference point, a second reference point, and a third reference point corresponding to the lane centerline intersection, the first boundary point, and the second boundary point, respectively;

[0234] The obstacle avoidance space judgment submodule is used to determine whether there is an obstacle avoidance driving space on the candidate obstacle avoidance side of the blocking obstacle according to the first reference point, the second reference point and the third reference point.

[0235] In a specific embodiment, the obstacle avoidance driving direction determination module 1140 includes:

[0236] A cost value determination submodule, used to determine the obstacle avoidance cost value corresponding to each candidate obstacle avoidance curve according to the curve length of each candidate obstacle avoidance curve and the passable width corresponding to both sides of the blocking obstacle;

[0237] The direction determination submodule is used to determine a target obstacle avoidance curve from each candidate obstacle avoidance curve according to each obstacle avoidance cost value, and determine the obstacle avoidance driving direction of the vehicle according to the target obstacle avoidance curve.

[0238] It should be noted that the information interaction, execution process, etc. between the above-mentioned devices / units are based on the same concept as the method embodiment of the present application. Their specific functions and technical effects can be found in the method embodiment part and will not be repeated here.

[0239] The technicians in the relevant field can clearly understand that for the convenience and simplicity of description, only the division of the above-mentioned functional units and modules is used as an example for illustration. In practical applications, the above-mentioned function allocation can be completed by different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiment can be integrated in a processing unit, or each unit can exist physically separately, or two or more units can be integrated in one unit. The above-mentioned integrated unit can be implemented in the form of hardware or in the form of software functional units. In addition, the specific names of the functional units and modules are only for the convenience of distinguishing each other, and are not used to limit the scope of protection of this application. The specific working process of the units and modules in the above-mentioned system can refer to the corresponding process in the aforementioned method embodiment, which will not be repeated here.

[0240] Fig.12 A schematic diagram of the structure of a terminal device provided in an embodiment of the present application. Fig.12 As shown, the terminal device 1200 of this embodiment includes a memory 1201, a processor 1202, and a computer program 1203 stored in the memory 1201 and executable on the processor 1202; when the processor 1202 executes the computer program 1203, the steps in the above-mentioned obstacle avoidance method embodiments of the autonomous driving are implemented; or when the processor 1202 executes the computer program 1203, the functions of the modules / units in the above-mentioned device embodiments are implemented.

[0241] Exemplarily, the computer program 1203 may be divided into one or more modules / units, one or more modules / units are stored in the memory 1201, and are executed by the processor 1202 to implement the method of the embodiment of the present application. One or more modules / units may be a series of computer program instruction segments that can perform specific functions, and the instruction segments are used to describe the execution process of the computer program 1203 in the terminal device 1200. For example, the computer program 1203 may be divided into an obstacle avoidance driving space determination module, a first curve determination module, a second curve determination module, and an obstacle avoidance driving direction determination module, and the specific functions of each module are as follows:

[0242] The obstacle avoidance driving space determination module is used to determine whether there is obstacle avoidance driving space on both sides of the blocking obstacle when the vehicle detects a blocking obstacle;

[0243] The first curve determination module is used to determine the obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving space on both sides of the blocking obstacle according to the starting position of the vehicle and the proximal position of the blocking obstacle, and determine the exit obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving space on both sides of the blocking obstacle according to the distal position of the blocking obstacle and the ending position of the vehicle;

[0244] A second curve determination module, configured to generate at least two candidate obstacle avoidance curves according to the obstacle avoidance Bezier curve and the exit obstacle avoidance Bezier curve;

[0245] The obstacle avoidance driving direction determination module is used to determine a target obstacle avoidance curve from each candidate obstacle avoidance curve according to the curve length of each candidate obstacle avoidance curve, and determine the obstacle avoidance driving direction of the vehicle according to the target obstacle avoidance curve.

[0246] In application, the terminal device 1200 may be a computing device such as a desktop computer, a notebook, a PDA, or a cloud server. The terminal device 1200 may include but is not limited to a memory 1201 and a processor 1202. Those skilled in the art will appreciate that Fig.12 It is only an example of a terminal device and does not constitute a limitation of the terminal device. It may include more or fewer components than shown in the figure, or a combination of certain components, or different components. For example, the terminal device may also include input and output devices, network access devices, buses, etc.; among which, the input and output devices may include cameras, audio acquisition / playback devices, display screens, etc.; the network access device may include a communication module for wireless communication with external devices.

[0247] In applications, the processor may be a central processing unit (CPU), other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor, etc.

[0248] In applications, the memory can be an internal storage unit of a terminal device, such as a hard disk or memory of the terminal device; it can also be an external storage device of the terminal device, such as a plug-in hard disk equipped on the terminal device, a smart media card (SMC), a secure digital (SD) card, a flash card, etc.; it can also include both the internal storage unit and the external storage device of the terminal device. The memory is used to store operating systems, applications, boot loaders, data, and other programs, such as program codes of computer programs. The memory can also be used to temporarily store data that has been output or is about to be output.

[0249] The embodiment of the present application further provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, the steps in the above-mentioned method embodiments can be implemented.

[0250] A computer-readable storage medium provided in an embodiment of the present application has the same beneficial effects as the above-mentioned obstacle avoidance method for autonomous driving.

[0251] The present application implements all or part of the processes in the above-mentioned embodiment method, which can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a computer-readable storage medium. When the computer program is executed by the processor, the steps of each of the above-mentioned method embodiments can be implemented. Among them, the computer program includes computer program code, and the computer program code can be in source code form, object code form, executable file or some intermediate form. The computer-readable medium may at least include: any entity or device capable of carrying the computer program code to a terminal device, a recording medium, a computer memory, a read-only memory (ROM), a random access memory (RAM), an electric carrier signal, a telecommunication signal, and a software distribution medium. For example, a USB flash drive, a mobile hard disk, a magnetic disk or an optical disk.

[0252] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described or recorded in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0253] Those of ordinary skill in the art will appreciate that the devices and algorithm steps of each example 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 performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0254] In the embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interface, indirect coupling or communication connection of devices, which can be electrical, mechanical or other forms.

[0255] The embodiments described above are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, a person skilled in the art should understand that the technical solutions described in the aforementioned embodiments may still be modified, or some of the technical features may be replaced by equivalents. Such modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application, and should all be included in the protection scope of the present application.

Claims

1. An obstacle avoidance method for autonomous driving, characterized in that: The method comprises: When the vehicle detects a blocking obstacle, determining whether there is obstacle avoidance driving space on both sides of the blocking obstacle; If the obstacle avoidance driving spaces exist on both sides of the blocking obstacle, determining obstacle avoidance Bezier curves corresponding to the obstacle avoidance driving spaces on both sides of the blocking obstacle according to the starting position of the vehicle and the proximal position of the blocking obstacle, and determining exit obstacle avoidance Bezier curves corresponding to the obstacle avoidance driving spaces on both sides of the blocking obstacle according to the distal position of the blocking obstacle and the ending position of the vehicle; generating at least two candidate obstacle avoidance curves according to the obstacle avoidance Bezier curve and the exit obstacle avoidance Bezier curve; A target obstacle avoidance curve is determined from the candidate obstacle avoidance curves according to the curve lengths of the candidate obstacle avoidance curves, and an obstacle avoidance driving direction of the vehicle is determined according to the target obstacle avoidance curve.

2. The method according to claim 1, characterized in that The determining, according to the starting position of the vehicle and the proximal position of the blocking obstacle, an obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving space on both sides of the blocking obstacle comprises: For the obstacle avoidance driving space on each side of the blocking obstacle, determining a starting position of the vehicle and a proximal position corresponding to the obstacle avoidance driving space of the blocking obstacle; Determine at least two first position points according to the starting position and the proximal position; the at least two first position points are between the starting position and the proximal position; An obstacle avoidance Bezier curve is generated according to the starting position, the proximal position and the at least two first position points.

3. The method according to claim 1, characterized in that The step of determining the exit obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving space on both sides of the blocking obstacle according to the distal position of the blocking obstacle and the end position of the vehicle comprises: For the obstacle avoidance driving space on each side of the blocking obstacle, determining an end position of the vehicle and a distal position corresponding to the obstacle avoidance driving space of the blocking obstacle; Determine at least two second position points according to the end position and the distal position; the at least two second position points are between the distal position and the end position; An exit obstacle avoidance Bezier curve is generated according to the end position, the far-end position and the at least two second position points.

4. The method according to claim 1, characterized in that: When the vehicle detects a blocking obstacle, determining whether there is obstacle avoidance driving space on both sides of the blocking obstacle includes: When the vehicle detects at least two blocking obstacles, if the longitudinal distance between the at least two blocking obstacles is within a preset distance range, determining whether there is obstacle avoidance driving space on both sides of the at least two blocking obstacles; Correspondingly, if the obstacle avoidance driving space exists on both sides of the blocking obstacle, determining the obstacle avoidance Bezier curves corresponding to the obstacle avoidance driving space on both sides of the blocking obstacle according to the starting position of the vehicle and the proximal position of the blocking obstacle, and determining the exit obstacle avoidance Bezier curves corresponding to the obstacle avoidance driving space on both sides of the blocking obstacle according to the distal position of the blocking obstacle and the ending position of the vehicle, including: If the obstacle avoidance driving spaces exist on both sides of the at least two blocking obstacles, an obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving spaces on both sides of the first blocking obstacle is determined according to the starting position of the vehicle and the proximal position of the first blocking obstacle, and an exit obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving spaces on both sides of the second blocking obstacle is determined according to the distal position of the second blocking obstacle and the ending position of the vehicle; wherein, among the at least two blocking obstacles, the blocking obstacle close to the vehicle along the center line of the lane is the first blocking obstacle, and the blocking obstacle far away from the vehicle along the center line of the lane is the second blocking obstacle; Correspondingly, generating at least two candidate obstacle avoidance curves according to the obstacle avoidance Bezier curve and the exit obstacle avoidance Bezier curve includes: Determining a corresponding continuous obstacle avoidance Bezier curve according to the distal position of the first blocking obstacle and the proximal position of the second blocking obstacle; At least two candidate obstacle avoidance curves are determined according to the obstacle avoidance Bezier curve, the continuous obstacle avoidance Bezier curve, and the exit obstacle avoidance Bezier curve.

5. The method according to claim 1, characterized in that When the vehicle detects a blocking obstacle, determining whether there is obstacle avoidance driving space on both sides of the blocking obstacle includes: When the vehicle detects at least two blocking obstacles, if the longitudinal distance between the at least two blocking obstacles is less than the minimum continuous obstacle avoidance distance, the at least two blocking obstacles are set as an integral blocking obstacle, and it is determined whether there is obstacle avoidance driving space on both sides of the integral blocking obstacle.

6. The method according to claim 1, characterized in that When the vehicle detects a blocking obstacle, determining whether there is obstacle avoidance driving space on both sides of the blocking obstacle includes: When the vehicle detects an obstacle, determine the lateral boundary of the obstacle and the driving space boundary; the lateral boundary includes the coordinates of the left boundary of the obstacle and the coordinates of the right boundary of the obstacle; the driving space boundary includes the coordinates of the left boundary of the driving space and the coordinates of the right boundary of the driving space; If the right boundary coordinate of the obstacle is smaller than the left boundary coordinate of the driving space, and the left boundary coordinate of the obstacle is larger than the right boundary coordinate of the driving space, or the left boundary coordinate of the obstacle is smaller than the right boundary coordinate of the driving space, and the right boundary coordinate of the obstacle is larger than the left boundary coordinate of the driving space, then the obstacle is determined to be a blocking obstacle, and it is determined whether there is obstacle avoidance driving space on both sides of the blocking obstacle.

7. The method according to claim 1, characterized in that When the vehicle detects a blocking obstacle, determining whether there is obstacle avoidance driving space on both sides of the blocking obstacle includes: When the vehicle detects a blocking obstacle, determine the boundary point closest to the driving space boundary in the boundary corresponding to the candidate obstacle avoidance side of the blocking obstacle, and determine the first boundary point and the second boundary point according to the boundary point; the first boundary point is a virtual boundary point determined according to the horizontal coordinate of the boundary point and the vertical coordinate of the proximal position of the blocking obstacle; the second boundary point is a virtual boundary point determined according to the horizontal coordinate of the boundary point and the vertical coordinate of the distal position of the blocking obstacle; Determine a lane centerline intersection point based on the first boundary point and the vehicle's minimum turning radius; Determine, according to the vehicle obstacle avoidance distance, a first reference point, a second reference point, and a third reference point corresponding to the lane centerline intersection, the first boundary point, and the second boundary point, respectively; It is determined whether there is an obstacle avoidance driving space on the candidate obstacle avoidance side of the blocking obstacle according to the first reference point, the second reference point, and the third reference point.

8. The method according to any one of claims 1 to 7, characterized in that: The step of determining a target obstacle avoidance curve from each of the candidate obstacle avoidance curves according to the curve lengths of each of the candidate obstacle avoidance curves, and determining the obstacle avoidance driving direction of the vehicle according to the target obstacle avoidance curve comprises: Determining the obstacle avoidance cost corresponding to each of the candidate obstacle avoidance curves according to the curve length of each of the candidate obstacle avoidance curves and the passable widths corresponding to both sides of the blocking obstacle; A target obstacle avoidance curve is determined from the candidate obstacle avoidance curves according to the obstacle avoidance cost values, and an obstacle avoidance driving direction of the vehicle is determined according to the target obstacle avoidance curve.

9. An obstacle avoidance device for automatic driving, characterized in that: The device comprises: An obstacle avoidance driving space determination module, used to determine whether there is obstacle avoidance driving space on both sides of the blocking obstacle when the vehicle detects the blocking obstacle; A first curve determination module is used to determine, if the obstacle avoidance driving spaces exist on both sides of the blocking obstacle, obstacle avoidance Bezier curves corresponding to the obstacle avoidance driving spaces on both sides of the blocking obstacle according to the starting position of the vehicle and the proximal position of the blocking obstacle, and to determine an exit obstacle avoidance Bezier curve corresponding to the obstacle avoidance driving spaces on both sides of the blocking obstacle according to the distal position of the blocking obstacle and the ending position of the vehicle; A second curve determination module, configured to generate at least two candidate obstacle avoidance curves according to the obstacle avoidance Bezier curve and the exit obstacle avoidance Bezier curve; The obstacle avoidance driving direction determination module is used to determine a target obstacle avoidance curve from each of the candidate obstacle avoidance curves according to the curve lengths of each of the candidate obstacle avoidance curves, and determine the obstacle avoidance driving direction of the vehicle according to the target obstacle avoidance curve.

10. A terminal device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 8 are implemented.