Method, device and storage medium for determining a following path
By generating the following path through a simple algorithm based on Bezier curve, the problems of low efficiency and cumbersome steps in the prior art are solved, and efficient and simplified follow path generation is achieved.
Patent Information
- Application Number
- CN202111318235.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-11-09
- Publication Date
- 2025-02-25
- Estimated Expiration
- 2041-11-09
AI Technical Summary
When generating the route of the working vehicle following the staff, the prior art needs to go through complex algorithms such as difference smoothing, which is less efficient and requires the collection of scene maps in advance, and the steps are cumbersome.
A simple algorithm based on the Bezier curve is used to generate a follow path. By determining at least four target points, fitting the Bezier curve, and dynamically adjusting the global navigation path to determine the follow path where the vehicle follows the target object.
The steps of generating follow paths are simplified, efficiency is improved, and the need to collect scene maps in advance is avoided, and the algorithm is simple and easy to use.
Smart Images

Figure CN114092907B_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the field of vehicle navigation technology, and more particularly to a method, device and storage medium for determining a following path. Background Art
[0002] In some public places (such as parks, scenic spots or industrial parks, etc.) or highways, at least two workers are generally required to work together to maintain public facilities or roads. For example, one worker can perform public facility maintenance or road maintenance, while another worker drives the work vehicle forward.
[0003] At present, in order to save labor costs, work vehicles can be improved to be intelligent so that they have the function of automatically following the staff, so that workers performing public facility maintenance or road maintenance can concentrate on their work and do not worry about the work vehicle driving out of the work area when heading to the next target work point.
[0004] Currently, the scene map of the application scene can be collected in advance, and the route for the working vehicle to follow the staff is generated based on the lane lines or road boundaries in the application scene. The existing generated route needs to be processed by complex algorithms such as difference smoothing before it can be applied, which is inefficient. Therefore, it is urgent to propose a method for determining the following path with a simple algorithm to improve the rate of generating the following path. Summary of the invention
[0005] The present application provides a method, device and storage medium for determining a following path, which can quickly generate a following path based on a Bezier curve with a relatively simple algorithm.
[0006] In order to achieve the above objectives, this application adopts the following technical solutions:
[0007] In a first aspect, the present application provides a method for determining a following path, comprising: determining at least four target points based on an initial position of a target object and an initial position of a vehicle; fitting a Bezier curve using the at least four target points as control points; determining a global navigation path based on the Bezier curve; dynamically adjusting the global navigation path based on a current position of the target object and a current position of the vehicle while the vehicle is traveling along the global navigation path, and determining a following path for the vehicle to follow the target object based on the dynamically adjusted global navigation path.
[0008] In the technical solution provided by the present application, when it is determined that the target object needs to be followed, at least four target points can be determined according to the initial position of the target object and the vehicle, and a Bezier curve can be obtained by fitting the at least four target points, and then the global navigation path can be determined with the Bezier curve as the reference line for path planning. After that, the vehicle can first travel along the global navigation path, and during the driving process, the global navigation path can be dynamically adjusted in real time according to the real-time position of the target object and the vehicle (i.e., the current position in the present application) to obtain the following path. It can be seen that in the technical solution provided by the present application, the initial following path (i.e., the global navigation path in the present application) can be adjusted in real time according to the real-time position of the target object and the vehicle to obtain the following path, without the need to collect the scene map of the application scene in advance, so the step of generating the following path in the technical solution provided by the present application is simpler. In addition, the global navigation path in the present application is determined based on the Bezier curve, and the generation of the Bezier curve only requires a simple determination of a few control points, without the need to process complex algorithms such as difference smoothing, so the global navigation path can be quickly generated based on the Bezier curve. Therefore, the algorithm of the technical solution provided by the present application is simpler, and the rate of generating the following path can be increased.
[0009] Optionally, in a possible design, the above-mentioned “dynamically adjusting the global navigation path according to the current position of the target object and the current position of the vehicle” may include:
[0010] Dynamically adjusting at least four target points based on the current position of the target object and the current position of the vehicle;
[0011] Dynamically adjusting the Bezier curve using at least four dynamically adjusted target points as control points;
[0012] The global navigation path is dynamically adjusted based on a dynamically adjusted Bezier curve.
[0013] Optionally, in another possible design, the above “determining at least four target points according to the initial position of the target object and the initial position of the vehicle” may include:
[0014] Determine the relative position between the vehicle and the target object according to the initial position of the target object and the initial position of the vehicle; the relative position includes a relative distance and a relative direction;
[0015] At least four target points are determined according to an initial position of the target object, an initial position of the vehicle, an initial driving direction of the vehicle, and a relative position.
[0016] Optionally, in another possible design, the above “determining at least four target points according to the initial position of the target object, the initial position of the vehicle, the initial driving direction of the vehicle, and the relative position” may include:
[0017] Determining a first target point based on an initial position of the vehicle, and determining a second target point based on an initial position of the target object;
[0018] Determining a third target point based on an initial position of the vehicle, an initial driving direction of the vehicle, and a relative distance, and determining a fourth target point based on an initial position and a relative position of the target object;
[0019] The Bezier curve is obtained by fitting with at least four target points as control points, including: the Bezier curve is obtained by fitting with a first target point, a second target point, a third target point and a fourth target point as control points.
[0020] Optionally, in another possible design, the above “determining a following path for the vehicle to follow the target object based on the dynamically adjusted global navigation path” may include:
[0021] Determine the obstacle boundary based on the collected image within the first preset area;
[0022] The following path is determined based on obstacle boundaries and the dynamically adjusted global navigation path.
[0023] Optionally, in another possible design, the above “determining the obstacle boundary based on the collected image within the first preset area” may include:
[0024] When the vehicle travels a preset distance each time, a first obstacle boundary point and a second obstacle boundary point are determined according to obstacles in the collected image within the first preset area;
[0025] Determine a first obstacle boundary according to at least two first obstacle boundary points, and determine a second obstacle boundary according to at least two second obstacle boundary points;
[0026] The method comprises determining a following path according to the obstacle boundary and the dynamically adjusted global navigation path, and comprising dynamically adjusting the following path based on the first obstacle boundary and the second obstacle boundary determined each time and the dynamically adjusted global navigation path.
[0027] Optionally, in another possible design, before the above “determining at least four target points according to the initial position of the target object and the initial position of the vehicle”, the method for determining the following path provided by the present application may also include:
[0028] Acquire an image within a second preset area;
[0029] When it is determined that the image within the second preset area includes a person, extracting posture features of the person in the image within the second preset area;
[0030] When it is determined that the posture features meet the preset conditions, the person is determined as the target object.
[0031] In a second aspect, the present application provides a device for determining a following path, comprising: a determination module and a fitting module;
[0032] A determination module, used to determine at least four target points according to an initial position of the target object and an initial position of the vehicle;
[0033] A fitting module, used for fitting a Bezier curve by using at least four target points determined by the determination module as control points;
[0034] The determination module is further used to determine the global navigation path based on the Bezier curve fitted by the fitting module;
[0035] The determination module is also used to dynamically adjust the global navigation path according to the current position of the target object and the current position of the vehicle when the vehicle is traveling along the global navigation path, and determine the following path of the vehicle following the target object based on the dynamically adjusted global navigation path.
[0036] Optionally, in a possible design, the determination module is specifically used for:
[0037] Dynamically adjusting at least four target points based on the current position of the target object and the current position of the vehicle;
[0038] Dynamically adjusting the Bezier curve using at least four dynamically adjusted target points as control points;
[0039] The global navigation path is dynamically adjusted based on a dynamically adjusted Bezier curve.
[0040] Optionally, in another possible design, the determination module is specifically used for:
[0041] Determine the relative position between the vehicle and the target object according to the initial position of the target object and the initial position of the vehicle; the relative position includes a relative distance and a relative direction;
[0042] At least four target points are determined according to an initial position of the target object, an initial position of the vehicle, an initial driving direction of the vehicle, and a relative position.
[0043] Optionally, in another possible design, the determination module is specifically used for:
[0044] Determining a first target point based on an initial position of the vehicle, and determining a second target point based on an initial position of the target object;
[0045] Determining a third target point based on an initial position of the vehicle, an initial driving direction of the vehicle, and a relative distance, and determining a fourth target point based on an initial position and a relative position of the target object;
[0046] A Bezier curve is obtained by fitting with the first target point, the second target point, the third target point and the fourth target point as control points.
[0047] Optionally, in another possible design, the determination module is specifically used for:
[0048] Determine the obstacle boundary based on the collected image within the first preset area;
[0049] The following path is determined based on obstacle boundaries and the dynamically adjusted global navigation path.
[0050] Optionally, in another possible design, the determination module is specifically used for:
[0051] When the vehicle travels a preset distance each time, a first obstacle boundary point and a second obstacle boundary point are determined according to obstacles in the collected image within the first preset area;
[0052] Determine a first obstacle boundary according to at least two first obstacle boundary points, and determine a second obstacle boundary according to at least two second obstacle boundary points;
[0053] The following path is dynamically adjusted based on the first obstacle boundary and the second obstacle boundary determined each time and the dynamically adjusted global navigation path.
[0054] Optionally, in another possible design, the device for determining a following path provided by the present application may further include a collection module and an extraction module;
[0055] A collection module, used for collecting images in a second preset area before the determination module determines at least four target points according to the initial position of the target object and the initial position of the vehicle;
[0056] An extraction module, configured to extract posture features of the person in the image within the second preset area when the determination module determines that the image within the second preset area includes a person;
[0057] The determination module is used to determine the person as the target object when the posture features extracted by the determination extraction module meet the preset conditions.
[0058] In a third aspect, the present application provides a device for determining a following path, comprising a memory, a processor, a bus and a communication interface; the memory is used to store computer execution instructions, and the processor is connected to the memory through a bus; when the device for determining a following path is running, the processor executes the computer execution instructions stored in the memory, so that the device for determining a following path performs the method for determining a following path provided in the first aspect above.
[0059] Optionally, the device for determining the following path may be the vehicle itself, or may be a part of the device in the vehicle, for example, a chip system in the vehicle. The chip system is used to support the device for determining the following path to implement the functions involved in the first aspect, for example, receiving, sending or processing the data and / or information involved in the above-mentioned method for determining the following path. The chip system includes a chip and may also include other discrete devices or circuit structures.
[0060] In a fourth aspect, the present application provides a computer-readable storage medium, in which instructions are stored. When a computer executes the instructions, the computer executes the method for determining a following path as provided in the first aspect.
[0061] In a fifth aspect, the present application provides a computer program product, which includes computer instructions. When the computer instructions are executed on a computer, the computer executes the method for determining a following path as provided in the first aspect.
[0062] It should be noted that the above computer instructions may be stored in whole or in part on a computer-readable storage medium. The computer-readable storage medium may be packaged together with the processor of the device for determining the path to be followed, or may be packaged separately from the processor of the device for determining the path to be followed, and this application does not limit this.
[0063] The description of the second, third, fourth and fifth aspects of the present application can refer to the detailed description of the first aspect; and the beneficial effects of the description of the second, third, fourth and fifth aspects can refer to the beneficial effect analysis of the first aspect, which will not be repeated here.
[0064] In this application, the name of the above-mentioned device for determining the follow-up path does not limit the device or functional module itself. In actual implementation, these devices or functional modules may appear with other names. As long as the functions of each device or functional module are similar to those of this application, they belong to the scope of the claims of this application and their equivalent technologies.
[0065] These and other aspects of the present application will become more apparent from the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0066] Figure 1 A flowchart of a method for determining a following path provided in an embodiment of the present application;
[0067] Figure 2 A schematic diagram of a Bezier curve provided in an embodiment of the present application;
[0068] Figure 3 A schematic diagram of an application scenario provided in an embodiment of the present application;
[0069] Figure 4 A flowchart of another method for determining a following path provided in an embodiment of the present application;
[0070] Figure 5 A flowchart of another method for determining a following path provided in an embodiment of the present application;
[0071] Figure 6 A flowchart of another method for determining a following path provided in an embodiment of the present application;
[0072] Figure 7 A schematic diagram of the structure of a device for determining a following path provided in an embodiment of the present application;
[0073] Figure 8 A schematic diagram of the structure of another device for determining a following path provided in an embodiment of the present application. DETAILED DESCRIPTION
[0074] The following is a detailed description of the method, device and storage medium for determining a follow-up path provided in the embodiments of the present application with reference to the accompanying drawings.
[0075] The term "and / or" in this article is merely a description of the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone.
[0076] The terms "first" and "second" and the like in the specification and drawings of this application are used to distinguish different objects, or to distinguish different processing of the same object, rather than to describe a specific order of objects.
[0077] In addition, the terms "including" and "having" and any variations thereof mentioned in the description of the present application are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or units is not limited to the listed steps or units, but may optionally include other steps or units that are not listed, or may optionally include other steps or units that are inherent to these processes, methods, products or devices.
[0078] It should be noted that, in the embodiments of the present application, words such as "exemplary" or "for example" are used to indicate examples, illustrations or descriptions. Any embodiment or design described as "exemplary" or "for example" in the embodiments of the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "exemplary" or "for example" is intended to present related concepts in a specific way.
[0079] In the description of the present application, unless otherwise specified, “plurality” means two or more.
[0080] In some public places or highways, at least two workers are usually required to work together to maintain public facilities or roads. For example, one worker can perform public facility maintenance or road maintenance, while another worker drives the work vehicle forward.
[0081] At present, in order to save labor costs, work vehicles can be improved to be intelligent so that they have the function of automatically following the staff, so that workers performing public facility maintenance or road maintenance can concentrate on their work and do not worry about the work vehicle driving out of the work area when heading to the next target work point.
[0082] Currently, the scene map of the application scene can be collected in advance, and the route for the working vehicle to follow the staff is generated based on the lane lines or road boundaries in the application scene. The existing generated route needs to be processed by complex algorithms such as difference smoothing before it can be applied, which is inefficient. Therefore, it is urgent to propose a method for determining the following path with a simple algorithm to improve the efficiency of determining the following path.
[0083] In view of the problems existing in the above-mentioned prior art, the embodiment of the present application provides a method for determining a follow-up path, which can first generate a global navigation path based on a Bezier curve, and then adjust the global navigation path in real time according to the real-time positions of the target object and the vehicle to obtain a follow-up path. Since there is no need to collect a scene map of the application scene in advance, and the Bezier curve generation algorithm is relatively simple, the method for determining a follow-up path provided in the embodiment of the present application can increase the rate of generating a follow-up path.
[0084] The method for determining the following path provided in the embodiment of the present application can be applied to a vehicle or a chip system of a vehicle. The vehicle can be a vehicle used for public facility maintenance or road maintenance, and of course, in other application scenarios, it can also be other vehicles, which is not limited in the embodiment of the present application.
[0085] The following is a detailed description of the method for determining the following path provided in the embodiment of the present application.
[0086] Reference Figure 1 The method for determining a follow path provided in the embodiment of the present application includes S101-S104:
[0087] S101. Determine at least four target points according to an initial position of a target object and an initial position of a vehicle.
[0088] The following path determination method provided in the embodiment of the present application can be applied to the following scenarios: when performing public facility maintenance or road maintenance operations in certain public places (such as parks, scenic spots or industrial parks, etc.) or highways, a following path can be planned for the operating vehicle so that the operating vehicle can automatically follow the staff. It is understandable that in actual application, the following path determination method provided in the embodiment of the present application can also be applied to other scenarios where a following path needs to be planned for a vehicle so that the vehicle can automatically follow a person, and the embodiment of the present application does not limit this.
[0089] The target object is the person that the vehicle needs to follow.
[0090] In the embodiment of the present application, the following path can be determined based on the Bezier curve. The control points need to be determined to generate the Bezier curve, so the target point as the control point can be determined first. In addition, it is impossible to generate an "S"-type curve based on the second-order Bezier curve, and third-order and higher Bezier curves can be generated. Since it is easier to dynamically adjust the "S"-type curve as the global navigation path to obtain the following path, the Bezier curve in the embodiment of the present application can be a third-order and higher Bezier curve. At least four control points are required to generate a third-order and higher Bezier curve, so at least four target points can be determined in the embodiment of the present application.
[0091] Optionally, before determining at least four target points based on the initial position of the target object and the initial position of the vehicle, the method for determining the following path provided in an embodiment of the present application can determine the target object in the following manner: capturing an image within a second preset area; when it is determined that the image within the second preset area includes a person, extracting posture features of the person in the image within the second preset area; when it is determined that the posture features meet preset conditions, determining the person as the target object.
[0092] Illustratively, in an embodiment of the present application, a collection device such as a camera or a lidar may be provided on the vehicle, and the camera or the lidar may collect images within the second preset area.
[0093] The second preset area may be an area within the collection field of view of the collection device that is manually determined in advance.
[0094] Optionally, the preset condition may be that the posture feature is a preset posture within a certain period of time. In this way, the contingency can be reduced and the accuracy of determining the target object can be improved.
[0095] Taking the acquisition device as a laser radar as an example, the laser radar can collect point cloud images within the 180° field of view directly in front in real time or at a certain interval. Afterwards, the device for determining the following path can perform feature analysis on the point clusters in the point cloud image collected by the laser radar. When it is determined that the features of the point clusters meet the point cluster features of a person, the person can be tracked based on the laser radar to obtain continuous frame point cloud images of the person. If the posture features of the person in the continuous frame point cloud images are all preset postures, the person can be determined as a target object.
[0096] The preset posture may be a posture determined in advance. For example, the preset posture may be with arms spread out. For example, in actual application, a worker may stand in front of the vehicle with arms spread out for a certain period of time, so that the device for determining the follow-up path may determine the worker as the target object.
[0097] Optionally, after determining the target object, the vehicle may start the automatic driving mode, and after the automatic driving mode is started, the following path determination device begins to plan the following path.
[0098] It can be seen that in the method for determining the follow-up path provided in the embodiment of the present application, the staff can interact with the device for determining the follow-up path based on the preset posture so that the device for determining the follow-up path can lock the target object. Compared with the existing method for determining the target object based on technologies such as face recognition, there is no need to save the user's face information in advance. As long as the staff knows the preset posture, they can interact with the device for determining the follow-up path, which is more suitable for application scenarios where the staff are not fixed. In other words, the embodiment of the present application is more suitable for scenarios such as maintenance of public facilities or road maintenance in certain public places or highways.
[0099] Optionally, the method for determining the following path provided in an embodiment of the present application can determine at least four target points in the following manner: determine the relative position between the vehicle and the target object based on the initial position of the target object and the initial position of the vehicle; wherein the relative position includes a relative distance and a relative direction; and then determine at least four target points based on the initial position of the target object, the initial position of the vehicle, the initial driving direction of the vehicle, and the relative position.
[0100] Since the global navigation path is determined based on the Bezier curve, and the Bezier curve is fitted based on at least four target points, in order to ensure that the global navigation path is the direction from the initial position of the vehicle to the initial position of the target object, the selection of the target point can refer to the initial position of the target object, the initial position of the vehicle, the initial driving direction of the vehicle, and the relative position.
[0101] Optionally, the device for determining the following path can determine a first target point based on an initial position of the vehicle, and determine a second target point based on an initial position of the target object; then determine a third target point based on the initial position of the vehicle, the initial driving direction of the vehicle and a relative distance, and determine a fourth target point based on the initial position and relative position of the target object.
[0102] In a possible implementation, the initial position of the vehicle can be determined as the first target point, the initial position of the target object can be determined as the second target point, and then the distance between the first target point and the second target point can be determined as the relative distance between the vehicle and the target object. According to the relative distance, a point is taken in the initial driving direction of the vehicle with the first target point as a reference to determine the third target point. For example, the distance between the third target point and the first target point can be one-third of the relative distance. Afterwards, a point can be taken in the relative direction with the first target point as a reference to determine the fourth target point, and the relative direction is from the initial position of the vehicle to the initial position of the target object. For example, the distance between the fourth target point and the second target point can be one-third of the relative distance.
[0103] For example, refer to Figure 2 , provides a schematic diagram of a Bezier curve. Figure 2 As shown in FIG. 1 , the initial position of the vehicle is point C0, which can be determined as the first target point, and the initial position of the target object is point C3, which can be determined as the second target point. Then, point C0 and point C3 are connected, and the distance between point C0 and point C3 is the relative distance between the vehicle and the target object. Based on the relative distance, the initial driving direction of the vehicle (i.e. Figure 2 The third target point C1 is determined in the Y-axis direction, and the relative distance can be used to determine the relative direction (i.e. Figure 2 The fourth target point C2 is determined on the direction of the arrow M in the middle). In the embodiment of the present application, illustratively, the distance between the point C0 and the point C1 can be one-third of the relative distance, and the distance between the point C2 and the point C3 can also be one-third of the relative distance. It can be understood that in actual applications, the distance between the point C0 and the point C1 can also be one-quarter of the relative distance, and the distance between the point C2 and the point C3 can also be one-quarter of the relative distance, and the embodiment of the present application does not limit this.
[0104] Specifically, in practical applications, the target point can be determined by establishing a coordinate system. For example, Figure 2As shown, after the initial position C0 of the vehicle is determined as the first target point, a coordinate system can be established with C0 as the origin, the initial driving direction of the vehicle as the Y-axis direction, and the direction perpendicular to the initial driving direction of the vehicle as the X-axis direction. Then, the coordinates of the first target point C0, the second target point C3, the third target point C1, and the fourth target point C2 can be determined according to expression (1):
[0105]
[0106] in, represents the horizontal coordinate of C0, represents the ordinate of C0; represents the horizontal coordinate of C1, represents the ordinate of C1; represents the horizontal coordinate of C2, represents the ordinate of C2; represents the horizontal coordinate of C3, Represents the ordinate of C3. CPdistance = relative distance * preset coefficient, the relative distance is the straight-line distance between points C0 and C3, the preset coefficient can be a coefficient greater than 0 and less than 1 determined in advance by humans, for example, the preset coefficient can be one third. target = relative distance * sin(θ), y target = relative distance * cos(θ). θ is the initial driving direction of the vehicle and the relative direction (i.e. Figure 2 The angle (the direction of the arrow M in the figure).
[0107] S102: Using at least four target points as control points, a Bezier curve is obtained by fitting.
[0108] Optionally, the Bezier curve in the embodiment of the present application may be a third-order Bezier curve, that is, the Bezier curve may be fitted using the first target point, the second target point, the third target point and the fourth target point as control points.
[0109] For example, it can be determined according to expression (1) Figure 2 The coordinates of C0, C1, C2 and C3 are fitted to obtain a Bezier curve, and the curve equation of the Bezier curve is expressed by expression (2):
[0110]
[0111] Wherein, x represents the horizontal coordinate of the point on the Bezier curve, y represents the vertical coordinate of the point on the Bezier curve, t is a preset parameter, and t∈[0,1].
[0112] S103: Determine a global navigation path based on the Bezier curve.
[0113] For example, Figure 2 Taking the provided Bezier curve as an example, the global navigation path can be obtained by taking the C0 point of the Bezier curve as the starting point and the C3 point as the destination point.
[0114] The Bezier curve obtained in the embodiment of the present application is a coordinate in a rectangular coordinate system, and the coordinate of the navigation path of the vehicle may not be a rectangular coordinate system. Therefore, in practical applications, the coordinate system can be converted as needed.
[0115] S104. When the vehicle is traveling along the global navigation path, the global navigation path is dynamically adjusted according to the current position of the target object and the current position of the vehicle, and a following path for the vehicle to follow the target object is determined based on the dynamically adjusted global navigation path.
[0116] Optionally, the device for determining the following path can dynamically adjust at least four target points according to the current position of the target object and the current position of the vehicle; then dynamically adjust the Bezier curve using the at least four dynamically adjusted target points as control points; and then dynamically adjust the global navigation path based on the dynamically adjusted Bezier curve.
[0117] Since the position of the target object can be updated in real time, when the vehicle is traveling along the global navigation path, the at least four initially determined target points can be dynamically adjusted in real time according to the current position of the target object and the current position of the vehicle, and the initially determined Bezier curve can be dynamically adjusted with the at least four dynamically adjusted target points as control points. At the same time, the initially determined global navigation path can be dynamically adjusted based on the dynamically adjusted Bezier curve. In this way, the follow-up path determined based on the global navigation path is a path that changes dynamically with the movement of the target object, so that the vehicle can follow the target object during its movement and ensure that it will not be lost.
[0118] Specifically, the method for dynamically adjusting at least four target points according to the current position of the target object and the current position of the vehicle can refer to the method for determining at least four target points according to the initial position of the target object and the initial position of the vehicle. The method for dynamically adjusting the Bezier curve using the dynamically adjusted at least four target points as control points can refer to the method for fitting the Bezier curve according to at least four target points, and the embodiments of the present application will not be repeated here.
[0119] Optionally, the device for determining the following path may determine the obstacle boundary based on the collected image within the first preset area; and then determine the following path according to the obstacle boundary and the dynamically adjusted global navigation path.
[0120] The first preset area may be an area within the collection field of view of the collection device that is manually determined in advance. The first preset area may be the same as the second preset area, or may be different from the second preset area.
[0121] Since the vehicle may encounter some obstacles (such as walls, road boundaries, other people or other vehicles, etc.) when following the target object, in order to avoid collision with these obstacles, the following path determination device can determine the following path based on the obstacle boundary and the dynamically adjusted global navigation path.
[0122] Optionally, in a possible implementation, each time the vehicle travels a preset distance, the acquisition device may capture an image within the first preset area once, and the device for determining the following path may determine a first obstacle boundary point and a second obstacle boundary point based on the obstacles in the image within the first preset area captured each time; then, determine the first obstacle boundary based on at least two first obstacle boundary points, and determine the second obstacle boundary based on at least two second obstacle boundary points; thereafter, the following path may be dynamically adjusted based on the first obstacle boundary and the second obstacle boundary determined each time and the dynamically adjusted global navigation path.
[0123] The preset distance may be a distance determined in advance by humans. Generally, to ensure that the vehicle does not lose track and does not collide with the target object, the distance between the vehicle and the target object may be maintained at about 60 meters, and the preset distance may be 1 meter.
[0124] For example, refer to Figure 3 , provides a schematic diagram of an application scenario. Figure 3 As shown, when the vehicle is traveling along the dynamically adjusted global navigation path L1, an image within the first preset area may be collected once every preset distance traveled. Figure 3 In the application scenario, the image collected at the beginning of the vehicle's driving includes lane lines on the left and right sides. The first obstacle boundary point can be sampled on the left lane line every preset distance, and the second obstacle boundary point can be sampled on the right lane line. After driving for a period of time, an obstacle other than a lane line appears on the right side of the collected image, and the obstacle is between the left lane line and the right lane line. The left boundary point of the obstacle in the collected image can be used as the second obstacle boundary point, and the first obstacle boundary point is still sampled and determined on the left lane line. The vehicle passes by Figure 3After the obstacle in the lane, continue to sample obstacle boundary points on the left lane line and the right lane line. During the vehicle driving process, the first obstacle boundary can be determined according to the first obstacle boundary point collected in real time and the first obstacle boundary point collected last time, and the second obstacle boundary can be determined according to the second obstacle boundary point collected in real time and the second obstacle boundary point collected last time, and the following path can be dynamically adjusted according to the first obstacle boundary and the second obstacle boundary determined each time and L1.
[0125] When the application scenario is an open area such as a square, the image collected in the first preset area may have no obstacles. At this time, there is no need to determine the obstacle boundary, and the vehicle can directly drive according to the dynamically adjusted global navigation path.
[0126] In the technical solution provided by the embodiment of the present application, when it is determined that the target object needs to be followed, at least four target points can be determined according to the initial position of the target object and the vehicle, and a Bezier curve can be obtained based on the fitting of the at least four target points, and then the global navigation path can be determined with the Bezier curve as the reference line for path planning. After that, the vehicle can first travel according to the global navigation path, and during the driving process, the global navigation path can be dynamically adjusted in real time according to the real-time position of the target object and the vehicle (i.e., the current position in the present application) to obtain the following path. It can be seen that in the technical solution provided by the embodiment of the present application, the initial following path (i.e., the global navigation path in the present application) can be adjusted in real time according to the real-time position of the target object and the vehicle to obtain the following path, without the need to collect the scene map of the application scene in advance, so the step of generating the following path in the technical solution provided by the present application is simpler. In addition, in the embodiment of the present application, the global navigation path is determined based on the Bezier curve, and the generation of the Bezier curve only requires a simple determination of a few control points, without the need to process complex algorithms such as difference smoothing, so the global navigation path can be quickly generated based on the Bezier curve. Therefore, the technical solution algorithm provided by the embodiment of the present application is simpler, and the rate of generating the following path can be improved.
[0127] Based on the above description, Figure 4 As shown, Figure 1 Step S104 in can be replaced by S1041:
[0128] S1041. When the vehicle is traveling along the global navigation path, at least four target points are dynamically adjusted according to the current position of the target object and the current position of the vehicle, and the Bezier curve is dynamically adjusted using the at least four dynamically adjusted target points as control points. The global navigation path is dynamically adjusted based on the dynamically adjusted Bezier curve, and a following path for the vehicle to follow the target object is determined based on the dynamically adjusted global navigation path.
[0129] Optional, such as Figure 5 As shown, Figure 1 Step S101 in can be replaced by S1011-S1012:
[0130] S1011. Determine the relative position between the vehicle and the target object according to the initial position of the target object and the initial position of the vehicle.
[0131] S1012. Determine a first target point according to an initial position of the vehicle, determine a second target point according to an initial position of the target object, determine a third target point according to the initial position of the vehicle, the initial driving direction of the vehicle and a relative distance, and determine a fourth target point according to the initial position and relative position of the target object.
[0132] Correspondingly, Figure 1 Step S102 in can be replaced by:
[0133] S1021. Use the first target point, the second target point, the third target point, and the fourth target point as control points to obtain a Bezier curve by fitting.
[0134] Optional, such as Figure 6 As shown, Figure 1 Step S104 in can be replaced by S1042-S1045:
[0135] S1042: When the vehicle is traveling along the global navigation path, the global navigation path is dynamically adjusted according to the current position of the target object and the current position of the vehicle.
[0136] S1043. When the vehicle travels a preset distance each time, determine a first obstacle boundary point and a second obstacle boundary point according to obstacles in the collected image within the first preset area.
[0137] S1044: Determine a first obstacle boundary according to at least two first obstacle boundary points, and determine a second obstacle boundary according to at least two second obstacle boundary points.
[0138] S1045: Dynamically adjust the following path based on the first obstacle boundary and the second obstacle boundary determined each time and the dynamically adjusted global navigation path.
[0139] It is understandable that the embodiment of the present application does not limit the sequence of steps S1042-S1045, and S1042-S1045 can be executed in parallel.
[0140] like Figure 7 As shown, an embodiment of the present application further provides a device for determining a follow path, and the device for determining a follow path may include: a determination module 11 and a fitting module 12.
[0141] The determination module 11 executes S101, S103 and S104 in the above method embodiment, and the fitting module 12 executes S102 in the above method embodiment.
[0142] Specifically, the determination module 11 is used to determine at least four target points according to the initial position of the target object and the initial position of the vehicle;
[0143] A fitting module 12 is used to fit the Bezier curve by using at least four target points determined by the determination module 11 as control points;
[0144] The determination module 11 is further used to determine the global navigation path based on the Bezier curve fitted by the fitting module 12;
[0145] The determination module 11 is also used to dynamically adjust the global navigation path according to the current position of the target object and the current position of the vehicle when the vehicle is traveling along the global navigation path, and determine the following path of the vehicle following the target object based on the dynamically adjusted global navigation path.
[0146] Optionally, in a possible implementation manner, the determining module 11 is specifically configured to:
[0147] Dynamically adjusting at least four target points based on the current position of the target object and the current position of the vehicle;
[0148] Dynamically adjusting the Bezier curve using at least four dynamically adjusted target points as control points;
[0149] The global navigation path is dynamically adjusted based on a dynamically adjusted Bezier curve.
[0150] Optionally, in another possible implementation, the determining module 11 is specifically configured to:
[0151] Determine the relative position between the vehicle and the target object according to the initial position of the target object and the initial position of the vehicle; the relative position includes a relative distance and a relative direction;
[0152] At least four target points are determined according to an initial position of the target object, an initial position of the vehicle, an initial driving direction of the vehicle, and a relative position.
[0153] Optionally, in another possible implementation, the determining module 11 is specifically configured to:
[0154] Determining a first target point based on an initial position of the vehicle, and determining a second target point based on an initial position of the target object;
[0155] Determining a third target point based on an initial position of the vehicle, an initial driving direction of the vehicle, and a relative distance, and determining a fourth target point based on an initial position and a relative position of the target object;
[0156] A Bezier curve is obtained by fitting with the first target point, the second target point, the third target point and the fourth target point as control points.
[0157] Optionally, in another possible implementation, the determining module 11 is specifically configured to:
[0158] Determine the obstacle boundary based on the collected image within the first preset area;
[0159] The following path is determined based on obstacle boundaries and the dynamically adjusted global navigation path.
[0160] Optionally, in another possible implementation, the determining module 11 is specifically configured to:
[0161] When the vehicle travels a preset distance each time, a first obstacle boundary point and a second obstacle boundary point are determined according to obstacles in the collected image within the first preset area;
[0162] Determine a first obstacle boundary according to at least two first obstacle boundary points, and determine a second obstacle boundary according to at least two second obstacle boundary points;
[0163] The following path is dynamically adjusted based on the first obstacle boundary and the second obstacle boundary determined each time and the dynamically adjusted global navigation path.
[0164] Optionally, in another possible implementation, the device for determining a following path provided by the present application may further include a collection module and an extraction module;
[0165] A collection module, used for collecting images in a second preset area before the determination module 11 determines at least four target points according to the initial position of the target object and the initial position of the vehicle;
[0166] An extraction module, configured to extract posture features of the person in the image within the second preset area when the determination module 11 determines that the image within the second preset area includes a person;
[0167] The determination module 11 is used to determine the person as the target object when the posture features extracted by the determination extraction module meet the preset conditions.
[0168] Optionally, the device for determining a follow-up path may further include a storage module, and the storage module is used to store program codes of the device for determining a follow-up path, etc.
[0169] like Figure 8As shown, an embodiment of the present application also provides a device for determining a following path, including a memory 41, a processor 42 (42-1 and 42-2), a bus 43 and a communication interface 44; the memory 41 is used to store computer execution instructions, and the processor 42 is connected to the memory 41 through the bus 43; when the device for determining a following path is running, the processor 42 executes the computer execution instructions stored in the memory 41, so that the device for determining a following path executes the method for determining a following path provided in the above embodiment.
[0170] In a specific implementation, as an embodiment, the processor 42 may include one or more central processing units (CPUs), such as Figure 8 As an embodiment, the following path determination device may include multiple processors 42, such as Figure 8 42-1 and processor 42-2 are shown in FIG. Each CPU in these processors 42 may be a single-core processor (single-CPU) or a multi-core processor (multi-CPU). The processor 42 here may refer to one or more devices, circuits, and / or processing cores for processing data (e.g., computer program instructions).
[0171] The memory 41 may be a read-only memory (ROM) or other types of static storage devices that can store static information and instructions, a random access memory (RAM) or other types of dynamic storage devices that can store information and instructions, or an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical disc, laser disc, optical disc, digital versatile disc, Blu-ray disc, etc.), a magnetic disk storage medium or other magnetic storage device, or any other medium that can be used to carry or store the desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto. The memory 41 may exist independently and be connected to the processor 42 via a bus 43. The memory 41 may also be integrated with the processor 42.
[0172] In a specific implementation, the memory 41 is used to store the data in the present application and the computer execution instructions corresponding to the software program for executing the present application. The processor 42 can perform various functions of the path determination device by running or executing the software program stored in the memory 41 and calling the data stored in the memory 41.
[0173] The communication interface 44 uses any transceiver or other device for communicating with other devices or communication networks, such as a control system, a radio access network (RAN), a wireless local area network (WLAN), etc. The communication interface 44 may include a receiving unit to implement a receiving function, and a sending unit to implement a sending function.
[0174] The bus 43 may be an industry standard architecture (ISA) bus, a peripheral component interconnect (PCI) bus, or an extended industry standard architecture (EISA) bus. The bus 43 may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 8 Only one thick line is used in the diagram, but this does not mean that there is only one bus or only one type of bus.
[0175] As an example, combining Figure 7 , the function of the acquisition module in the following path determination device is the same as Figure 8 The receiving unit in the following path has the same function as that implemented by the determining module in the determining device. Figure 8 The functions implemented by the processor in the following path determination device are the same as those implemented by the storage module in the following path determination device. Figure 8 The memory in implements the same function.
[0176] The explanation of the relevant contents in this embodiment can refer to the above method embodiment, which will not be repeated here.
[0177] Through the description of the above implementation methods, technicians in the relevant field can clearly understand that for the convenience and simplicity of description, only the division of the above functional modules is used as an example. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. The specific working process of the system, device and unit described above can refer to the corresponding process in the aforementioned method embodiment, and will not be repeated here.
[0178] The embodiment of the present application further provides a computer-readable storage medium, in which instructions are stored. When a computer executes the instructions, the computer executes the method for determining a following path provided in the above embodiment.
[0179] Among them, the computer-readable storage medium, for example, can be but is not limited to an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples (non-exhaustive list) of computer-readable storage media include: an electrical connection with one or more wires, a portable computer disk, a hard disk, RAM, ROM, an erasable programmable read only memory (EPROM), a register, a hard disk, an optical fiber, a CD-ROM, an optical storage device, a magnetic storage device, or any suitable combination of the above, or any other form of computer-readable storage medium known in the art. An exemplary storage medium is coupled to a processor so that the processor can read information from the storage medium and write information to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and the storage medium can be located in an application-specific integrated circuit (ASIC). In an embodiment of the present application, the computer-readable storage medium can be any tangible medium containing or storing a program, which can be used by or in combination with an instruction execution system, device or device.
[0180] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any changes or substitutions within the technical scope disclosed in the present application should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.
Claims
1. A method for determining a following path, characterized in that: include: Determine at least four target points based on the initial position of the target object and the initial position of the vehicle; Using the at least four target points as control points, fitting a Bezier curve; Determining a global navigation path based on the Bezier curve; In the process of the vehicle traveling along the global navigation path, dynamically adjusting the global navigation path according to the current position of the target object and the current position of the vehicle, and determining a following path for the vehicle to follow the target object based on the dynamically adjusted global navigation path; The dynamically adjusting the global navigation path according to the current position of the target object and the current position of the vehicle includes: Dynamically adjusting the at least four target points according to the current position of the target object and the current position of the vehicle; Dynamically adjusting the Bezier curve using at least four dynamically adjusted target points as control points; The global navigation path is dynamically adjusted based on the dynamically adjusted Bezier curve.
2. The method for determining a following path according to claim 1, characterized in that: The step of determining at least four target points according to the initial position of the target object and the initial position of the vehicle comprises: Determining the relative position between the vehicle and the target object according to the initial position of the target object and the initial position of the vehicle; the relative position includes a relative distance and a relative direction; The at least four target points are determined according to an initial position of the target object, an initial position of the vehicle, an initial driving direction of the vehicle, and the relative position.
3. The method for determining a following path according to claim 2, characterized in that: The determining of the at least four target points according to the initial position of the target object, the initial position of the vehicle, the initial driving direction of the vehicle and the relative position comprises: Determining a first target point according to an initial position of the vehicle, and determining a second target point according to an initial position of the target object; Determining a third target point according to the initial position of the vehicle, the initial driving direction of the vehicle and the relative distance, and determining a fourth target point according to the initial position of the target object and the relative position; The fitting of a Bezier curve using the at least four target points as control points includes: fitting the Bezier curve using the first target point, the second target point, the third target point and the fourth target point as control points.
4. The method for determining a following path according to claim 1, characterized in that: The method of determining a following path for the vehicle to follow the target object based on the dynamically adjusted global navigation path includes: Determine the obstacle boundary based on the collected image within the first preset area; The following path is determined according to the obstacle boundary and the dynamically adjusted global navigation path.
5. The method for determining a following path according to claim 4, characterized in that: The step of determining the obstacle boundary based on the collected image within the first preset area includes: When the vehicle travels a preset distance each time, determining a first obstacle boundary point and a second obstacle boundary point according to obstacles in the collected image within the first preset area; determining a first obstacle boundary according to at least two of the first obstacle boundary points, and determining a second obstacle boundary according to at least two of the second obstacle boundary points; The determining the following path according to the obstacle boundary and the dynamically adjusted global navigation path includes: dynamically adjusting the following path based on the first obstacle boundary and the second obstacle boundary determined each time and the dynamically adjusted global navigation path.
6. The method for determining a following path according to any one of claims 1 to 5, characterized in that: Before determining at least four target points according to the initial position of the target object and the initial position of the vehicle, the method further includes: Acquire an image within a second preset area; When it is determined that the image within the second preset area includes a person, extracting posture features of the person in the image within the second preset area; When it is determined that the posture feature meets a preset condition, the person is determined as the target object.
7. A device for determining a following path, characterized in that: include: A determination module, used to determine at least four target points according to an initial position of the target object and an initial position of the vehicle; A fitting module, configured to obtain a Bezier curve by fitting the at least four target points determined by the determination module as control points; The determining module is further used to determine a global navigation path based on the Bezier curve fitted by the fitting module; The determination module is further configured to dynamically adjust the global navigation path according to the current position of the target object and the current position of the vehicle during the process of the vehicle traveling along the global navigation path, and determine a following path for the vehicle to follow the target object based on the dynamically adjusted global navigation path; The determination module is specifically used to: dynamically adjust at least four target points according to the current position of the target object and the current position of the vehicle; dynamically adjust the Bezier curve using the at least four dynamically adjusted target points as control points; The global navigation path is dynamically adjusted based on a dynamically adjusted Bezier curve.
8. A device for determining a following path, characterized in that: It includes a memory, a processor, a bus and a communication interface; the memory is used to store computer-executable instructions, and the processor is connected to the memory via the bus; When the device for determining a following path is running, the processor executes the computer-executable instructions stored in the memory, so that the device for determining a following path executes the method for determining a following path as described in any one of claims 1 to 6.
9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores instructions, and when a computer executes the instructions, the computer executes the method for determining a following path as described in any one of claims 1 to 6.
Citation Information
Patent Citations
A system and method for autonomous navigation of a tracked or skid-steer vehicle
CA2774163A1
Path planning method, electronic device, robot and computer-readable storage medium
WO2020215901A1