Path planning method, device, electronic device and storage medium
By calculating the generation value of candidate paths in the obstacle cost map and the wall cost map, and selecting the path with the least value as the optimal path, the collision problem of intelligent robots when traveling along the wall is solved, and the path planning performance is improved.
Patent Information
- Application Number
- CN202210794740.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-07-07
- Publication Date
- 2025-03-21
- Estimated Expiration
- 2042-07-07
AI Technical Summary
The prior art is difficult for intelligent robots to travel along the wall without colliding with the wall, resulting in the inability to complete related tasks.
By determining several candidate paths, obtaining the value of each raster in the obstacle cost map and the wall cost map, calculating the candidate path's generation value, and finally selecting the path with the smallest value as the optimal path.
It realizes that the intelligent robot travels as close to the wall as possible without collision, improving the path planning performance of the intelligent robot.
Smart Images

Figure CN115437369B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of intelligent robot technology, and in particular to a path planning method, device, electronic device and storage medium. Background Art
[0002] With the development of science and technology, intelligent robots have gradually entered people's daily lives. Intelligent robots can effectively reduce labor costs and improve the quality of life. In this process, the performance of intelligent robots is particularly important, and a major indicator for evaluating their performance is whether the intelligent robot can move along the wall and complete related tasks without colliding with the wall. Especially for sweeping robots, being able to move along the wall and clean the edge of the wall is very important.
[0003] In the current related technologies, the conventional path planning method used when planning the travel path of the intelligent robot will cause the intelligent robot to directly regard the wall as an obstacle, so that the planned path is far away from the wall, resulting in the intelligent robot being unable to move along the wall and thus unable to complete the relevant tasks. Summary of the invention
[0004] The present application provides a path planning method, device, electronic device and storage medium, aiming to provide a more optimized path planning method and improve the performance of an intelligent robot.
[0005] In a first aspect, the present application provides a path planning method, comprising:
[0006] Determine several candidate paths;
[0007] For each candidate path, obtain the value of each grid occupied by the candidate path in the obstacle cost map and the value of each grid occupied by the candidate path in the wall cost map; the value of each grid in the obstacle cost map reflects the possibility of the target object colliding with the obstacle when it is located in the grid; the value of each grid in the wall cost map reflects the difference between the actual value and the expected value of the distance along the wall when the target object is located in the grid;
[0008] For each candidate path, combining the value of each grid occupied by the candidate path in the obstacle cost map and the value of each grid occupied by the candidate path in the wall cost map, calculate a cost value corresponding to the candidate path; the cost value is proportional to the value of each grid occupied by the candidate path in the obstacle cost map; the cost value is proportional to the value of each grid occupied by the candidate path in the wall cost map;
[0009] The candidate path with the smallest replacement value is selected as the optimal path.
[0010] For each candidate path, the present application can calculate the cost value corresponding to the candidate path by obtaining the value of each grid occupied by the path in the obstacle cost map and the wall cost map. Since the value of each grid of the obstacle cost map can reflect the possibility of the target object colliding with the obstacle in the grid, and the value of each grid of the wall cost map can reflect the difference between the actual value and the expected value of the distance along the wall of the target object in the grid, the smaller the value of the grid occupied by a candidate path in the obstacle cost map and the grid occupied in the wall cost map, the smaller the possibility of the target object colliding, and the smaller the difference between the actual value and the expected value of the distance along the wall, the smaller the cost value. At this time, the path corresponding to the minimum cost value is the optimal path. Under this path, the target object can move as close to the wall as possible without colliding.
[0011] Optionally, the determining of a plurality of candidate paths includes:
[0012] Determine the position and posture of the target object at a first moment, the motion parameters at the first moment, and the motion adjustment parameters, and determine several groups of motion parameters; the first moment is the path planning start moment;
[0013] For each set of motion parameters, based on the position and motion parameters of the target object at the first moment, combined with the set of motion parameters and a preset sampling frequency, multiple sampling positions and poses of the target object during the motion from the first moment to the second moment are estimated; the second moment is the end moment of path planning;
[0014] For each set of motion parameters, a corresponding candidate path is determined according to the multiple sampled postures.
[0015] By determining several groups of motion adjustment parameters, the first moment, the second moment and the sampling frequency, the path corresponding to each group of motion adjustment parameters can be estimated more accurately. The estimated path is used as a candidate path, which can intuitively reflect the movement of the target object on the candidate path to check whether a collision will occur during the movement.
[0016] Optionally, for each candidate path, obtaining the value of each grid occupied by the candidate path in the obstacle cost map and the value of each grid occupied by the candidate path in the wall cost map includes:
[0017] According to the pre-established obstacle cost function and wall cost function, respectively calculating the value of each grid in the obstacle cost map and the value of each grid in the wall cost map;
[0018] For each candidate path, determine the value of each grid occupied by the candidate path in the obstacle cost map and the value of each grid occupied by the candidate path in the wall cost map.
[0019] Each candidate path is mapped to the obstacle cost map and the wall cost map respectively, and the value of the grid occupied by the path is determined. Each candidate path can be quantified to facilitate subsequent calculations and comparisons, so as to select the optimal path.
[0020] Optionally, for each candidate path, combining the value of each grid occupied by the candidate path in the obstacle cost map and the value of each grid occupied by the candidate path in the wall cost map, calculating the cost value corresponding to the candidate path, including: for each candidate path, sampling and calculating the pose of the target object at a preset node of the candidate path to obtain a node sampling pose;
[0021] Determine the absolute value of the angular difference between the direction of the node sampling pose and the direction of the nearest wall;
[0022] For each candidate path, calculate the weighted average of the linear velocity and angular velocity of the target object during the sampling period;
[0023] Based on the value of each grid occupied by the candidate path in the obstacle cost map, the value of each grid occupied by the candidate path in the wall cost map, the absolute value of the difference between the direction of the sampling posture and the direction of the wall, and the weighted average of the linear velocity and angular velocity of the target object in the sampling time period, the cost value corresponding to the candidate path is calculated.
[0024] By calculating the absolute value of the difference between the direction of the sampling posture and the direction of the wall and the weighted average of the linear velocity and angular velocity of the target object in the sampling time period, more factors affecting the cost value are added, so that the cost value can better represent the quality of the candidate path, thereby making the path planning more accurate.
[0025] Optionally, the method further includes:
[0026] Use scanning technology to obtain obstacle point cloud;
[0027] Generate obstacle cost map based on obstacle point cloud;
[0028] Performing line segment detection on the obstacle point cloud, and determining the detected multiple line segments as candidate walls;
[0029] Determine the candidate walls that meet the preset threshold as valid walls;
[0030] According to the effective wall, determine the wall point cloud;
[0031] Generate wall cost map based on wall point cloud.
[0032] The effective walls required for the planned path are selected and converted into wall point cloud projections to obtain a wall cost map, which makes the subsequent planned path more accurate.
[0033] Optionally, determining a candidate wall that meets a preset threshold as a valid wall includes:
[0034] Plan the initial global path based on the pre-established environmental grid map;
[0035] Dividing the initial global path into a plurality of local sub-paths;
[0036] For each local sub-path, feature extraction is performed to determine the feature value of the local sub-path;
[0037] For each section of the candidate wall, feature extraction is performed to determine the feature value of the candidate wall;
[0038] The characteristic value of the local sub-path is compared with the characteristic value of the candidate wall, and the candidate wall whose characteristic value meets a preset threshold is determined as a valid wall.
[0039] By taking the local sub-path as a reference, extracting the characteristic values of the local sub-path and the candidate wall path, and determining the candidate wall whose characteristic value meets the preset threshold as a valid wall, the wall required for this path planning can be extracted, making the subsequent generation of the wall point cloud more accurate.
[0040] Optionally, the method further includes:
[0041] For each candidate path, performing collision detection on a preset section in the candidate path;
[0042] Eliminate the paths that fail the collision detection among the candidate paths.
[0043] Through collision detection, some paths that may collide can be eliminated first, thereby reducing the amount of data processing and improving data processing efficiency.
[0044] In a second aspect, the present application provides a path planning device, comprising:
[0045] A candidate path determination module, used to determine a number of candidate paths;
[0046] The grid value acquisition module is used to obtain the value of each grid occupied by the candidate path in the obstacle cost map and the value of each grid occupied by the candidate path in the wall cost map for each candidate path; the value of each grid in the obstacle cost map reflects the possibility of the target object colliding with the obstacle when it is located in the grid; the value of each grid in the wall cost map reflects the difference between the actual value and the expected value of the distance along the wall when the target object is located in the grid;
[0047] a cost value calculation module, for each candidate path, combining the value of each grid occupied by the candidate path in the obstacle cost map and the value of each grid occupied by the candidate path in the wall cost map, to calculate the cost value corresponding to the candidate path; the cost value is proportional to the value of each grid occupied by the candidate path in the obstacle cost map; the cost value is proportional to the value of each grid occupied by the candidate path in the wall cost map;
[0048] The optimal path selection module is used to select the candidate path with the smallest replacement value as the optimal path.
[0049] Optionally, the candidate path determination module is specifically used to:
[0050] Determine the position and posture of the target object at a first moment, the motion parameters at the first moment, and the motion adjustment parameters, and determine several groups of motion parameters; the first moment is the path planning start moment;
[0051] For each set of motion parameters, based on the position and motion parameters of the target object at the first moment, combined with the set of motion parameters and a preset sampling frequency, multiple sampling positions and poses of the target object during the motion from the first moment to the second moment are estimated; the second moment is the end moment of path planning;
[0052] For each set of motion parameters, a corresponding candidate path is determined according to the multiple sampled postures.
[0053] Optionally, the grid value acquisition module is specifically used to:
[0054] According to the pre-established obstacle cost function and wall cost function, respectively calculating the value of each grid in the obstacle cost map and the value of each grid in the wall cost map;
[0055] For each candidate path, determine the value of each grid occupied by the candidate path in the obstacle cost map and the value of each grid occupied by the candidate path in the wall cost map.
[0056] Optionally, the cost value calculation module is specifically used to:
[0057] For each candidate path, the pose of the target object is sampled and calculated at a preset node of the candidate path to obtain a node sampling pose;
[0058] Determine the absolute value of the angular difference between the direction of the node sampling pose and the direction of the nearest wall;
[0059] For each candidate path, calculate the weighted average of the linear velocity and angular velocity of the target object during the sampling period;
[0060] Based on the value of each grid occupied by the candidate path in the obstacle cost map, the value of each grid occupied by the candidate path in the wall cost map, the absolute value of the difference between the direction of the sampling posture and the direction of the wall, and the weighted average of the linear velocity and angular velocity of the target object in the sampling time period, the cost value corresponding to the candidate path is calculated.
[0061] Optionally, the device further includes a point cloud projection module, which is used to:
[0062] Use scanning technology to obtain obstacle point cloud;
[0063] Generate obstacle cost map based on obstacle point cloud;
[0064] Performing line segment detection on the obstacle point cloud, and determining the detected multiple line segments as candidate walls;
[0065] Determine the candidate walls that meet the preset threshold as valid walls;
[0066] According to the effective wall, determine the wall point cloud;
[0067] Generate wall cost map based on wall point cloud.
[0068] Optionally, when determining a candidate wall that meets a preset threshold as a valid wall, the point cloud projection module is specifically used to:
[0069] Plan the initial global path based on the pre-established environmental grid map;
[0070] Dividing the initial global path into a plurality of local sub-paths;
[0071] For each local sub-path, feature extraction is performed to determine the feature value of the local sub-path;
[0072] For each section of the candidate wall, feature extraction is performed to determine the feature value of the candidate wall;
[0073] The characteristic value of the local sub-path is compared with the characteristic value of the candidate wall, and the candidate wall whose characteristic value meets a preset threshold is determined as a valid wall.
[0074] Optionally, the device further includes a collision detection module, which is used to:
[0075] For each candidate path, performing collision detection on a preset section in the candidate path;
[0076] Eliminate the paths that fail the collision detection among the candidate paths.
[0077] In a third aspect, the present application provides an electronic device, comprising: a memory and a processor, wherein the memory stores a computer program that can be loaded by the processor and execute any method of the first aspect.
[0078] In a fourth aspect, the present application provides a computer-readable storage medium storing a computer program that can be loaded by a processor and execute any method of the first aspect.
[0079] For each candidate path, the present application can calculate the cost value corresponding to the candidate path by obtaining the value of each grid occupied by the path in the obstacle cost map and the wall cost map. Since the value of each grid of the obstacle cost map can reflect the possibility of the target object colliding with the obstacle in the grid, and the value of each grid of the wall cost map can reflect the difference between the actual value and the expected value of the distance along the wall of the target object in the grid, the smaller the value of the grid occupied by a candidate path in the obstacle cost map and the grid occupied in the wall cost map, the smaller the possibility of the target object colliding, and the smaller the difference between the actual value and the expected value of the distance along the wall, the smaller the cost value. At this time, the path corresponding to the minimum cost value is the optimal path. Under this path, the target object can move as close to the wall as possible without colliding. BRIEF DESCRIPTION OF THE DRAWINGS
[0080] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, a brief introduction will be given below to the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.
[0081] Figure 1 A schematic diagram of an application scenario provided for an embodiment of the present application;
[0082] Figure 2 A flow chart of a path planning method provided in one embodiment of the present application;
[0083] Figure 3 A flowchart of another path planning method provided in one embodiment of the present application;
[0084] Figure 4 A schematic diagram of the relative position of a target object and an obstacle point cloud when the target object moves along a candidate path provided by an embodiment of the present application;
[0085] Figure 5 A schematic diagram of the structure of a path planning device provided in one embodiment of the present application;
[0086] Figure 6A schematic diagram of the structure of an electronic device provided in one embodiment of the present application. DETAILED DESCRIPTION
[0087] In order to make the purpose, technical scheme and advantages of the embodiments of the present application clearer, the technical scheme in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0088] In addition, the term "and / or" in this article is only a description of the association relationship of associated objects, indicating that there can be three relationships. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. In addition, the character " / " in this article, unless otherwise specified, generally means that the associated objects before and after are in an "or" relationship.
[0089] The embodiments of the present application are further described in detail below in conjunction with the drawings in the specification.
[0090] Figure 1 A schematic diagram of an application scenario provided for the present application, in this scenario, the intelligent robot needs to move as close to the wall as possible without colliding with the wall, so the path of the intelligent robot needs to be planned. In order to make the planned path more accurate, the method provided by the present application can be used to plan the path of the intelligent robot. Specifically, the path planning method of the present application can be deployed in the management device (server) of the intelligent robot. When an intelligent robot has a demand for the path to move close to the wall, the server executes the method of the present application, plans the path of the intelligent robot, determines the optimal path and sends it to the intelligent robot, so that the intelligent robot can move along the wall without colliding with the wall.
[0091] In this application, "traveling along a wall" means that when the intelligent robot moves along the route, the distance between the body of the intelligent robot and the wall is always less than a preset value. At this time, the intelligent robot is close to the wall and has the effect of traveling along the wall when walking.
[0092] The implementation method of the specific processing process at the server can refer to the following embodiments.
[0093] Figure 2A flow chart of a path planning method provided in one embodiment of the present application. The method of this embodiment is used to plan the travel path of an intelligent robot, and can be applied to the management device of the intelligent robot (for example, the server in the above scenario, or other electronic devices with computing capabilities), and can also be applied to the intelligent robot. Figure 2 As shown, the method of this embodiment includes:
[0094] S201. Determine several candidate paths.
[0095] The candidate paths of the target object can be determined based on some conventional path planning methods, such as the dynamic window method, etc. When performing path planning based on these conventional path planning methods, multiple paths may be planned. These paths can be determined as candidate paths.
[0096] The target object refers to an object (intelligent robot) for which path planning is performed using the method of this embodiment, for example, a sweeping robot, a sweeping and mopping robot, a service robot, etc.
[0097] In some scenarios, the path planning method of this embodiment can be applied to the moving process of the target object. Specifically, the moving path of the target object can be planned in real time, and the determined optimal path is sent to the target object so that the target object can move along the determined optimal path.
[0098] In other scenarios, the path planning method of this embodiment can be applied before the target object starts to move. Specifically, the overall moving path of the target object can be planned first, and the determined optimal path is sent to the target object so that the target object can move along the determined optimal path.
[0099] S202. For each candidate path, obtain the value of each grid occupied by the candidate path in the obstacle cost map and the value of each grid occupied by the candidate path in the wall cost map; the value of each grid in the obstacle cost map reflects the possibility of the target object colliding with the obstacle when it is located in the grid, and the value of each grid in the wall cost map reflects the difference between the actual value and the expected value of the distance along the wall when the target object is located in the grid.
[0100] Among them, the actual value of the distance along the wall refers to the minimum distance between the target object and the wall when the target object is located in a certain grid; the expected value of the distance along the wall refers to the optimal distance between the target object and the wall that is preset before the path is planned; therefore, when the target object is located in a certain grid in the wall cost map, the smaller the difference between the actual value of the distance along the wall and the expected value, the smaller the value of the grid, indicating that the current actual value is closer to the optimal distance. When the target object is located in a certain grid in the obstacle cost map, the smaller the value of the grid, the less likely the target object will encounter an obstacle when it is located in the grid.
[0101] In some embodiments, the target object may be a relatively large machine. In this scenario, the actual value of the distance along the wall refers to the distance between the outer edge of the target object and the wall; the expected value of the distance along the wall refers to the optimal distance between the outer edge of the target object and the wall that is pre-set before planning the path.
[0102] Specifically, for each candidate path, the candidate path is projected into the obstacle cost map to determine the grid occupied by the candidate path in the obstacle cost map, so that for each grid occupied by the candidate path, the value of each grid occupied by the candidate path in the obstacle cost map is obtained; for each candidate path, the candidate path is projected into the wall cost map to determine the grid occupied by the candidate path in the wall cost map, so that for each grid occupied by the candidate path, the value of each grid occupied by the candidate path in the wall cost map is obtained.
[0103] Among them, the value of each grid in the obstacle cost map and the wall cost map can be set in advance. For example, when the travel environment of the target object hardly changes, the obstacle cost map and the wall cost map can be set in advance. Correspondingly, the grid values of the obstacle cost map and the wall cost map can also be calculated in advance. In some embodiments, the wall cost map can be a set of maps, each map containing information about one of the walls in the current place and the value of the grid related to this wall. When calculating the cost value of a candidate path, it is only necessary to call the corresponding wall cost map and obstacle cost map.
[0104] The value of each grid in the obstacle cost map and the wall cost map can also be calculated in real time during the path planning process. For example, when the target object's travel environment changes frequently, each time the target object's travel path is planned, the obstacle cost map and the wall cost map can be constructed in real time, so that the planned path is more accurate. Correspondingly, for the obstacle cost map and the wall cost map constructed in real time, the value of each grid can be calculated in real time synchronously.
[0105] In some scenarios, the generation process of the obstacle cost map and the wall cost map includes: using scanning technology to obtain an obstacle point cloud; generating an obstacle cost map based on the obstacle point cloud; performing line segment detection on the obstacle point cloud, and determining the detected multiple line segments as candidate walls; determining the candidate walls that meet a preset threshold as valid walls; determining a wall point cloud based on the valid walls; and generating a wall cost map based on the wall point cloud.
[0106] The obstacle point cloud can be two-dimensional or three-dimensional.
[0107] In some embodiments, a laser radar can be used to scan the current traveling environment to obtain an obstacle point cloud, thereby performing line segment detection on the obstacle point cloud, and determining the detected multiple line segments as candidate walls. In some specific implementations, the obstacle point cloud can be represented by polar coordinates, which include angles and distances, and points with adjacent angles are adjacent points. Since the distances and vectors of adjacent points of the same section of the wall are very close, several wall segments can be extracted by calculating the distances and vectors of the adjacent points. These wall segments are the multiple line segments obtained by line segment detection; then, the principal component analysis method or the least squares method is used to perform straight line fitting calculations to determine the direction of the wall corresponding to each wall segment, and the direction of the wall and the wall segment point cloud are combined together to obtain the candidate wall corresponding to the wall segment.
[0108] Then, a candidate wall that meets a preset threshold is selected and determined as a valid wall. From the obstacle point cloud, the wall segment point cloud data corresponding to the valid wall is extracted to determine the wall point cloud. Based on the obstacle point cloud and the wall point cloud, the corresponding obstacle cost map and wall cost map are generated respectively.
[0109] In other embodiments, the process of determining a valid wall includes: planning an initial global path based on a pre-established environmental grid map; dividing the initial global path into a number of local sub-paths; performing feature extraction on each local sub-path to determine a feature value of the local sub-path; performing feature extraction on each section of a candidate wall to determine a feature value of the candidate wall; comparing the feature value of the local sub-path with the feature value of the candidate wall, and determining the candidate wall whose feature value meets a preset threshold as a valid wall.
[0110] Specifically, an environment grid map can be established based on a cartography algorithm or a gmapping algorithm, so that an initial global path can be planned based on a pre-established environment grid map. In some specific implementations, the environment grid map can be expanded, and after the expansion edge is extracted, the initial global path is obtained, and the initial global path is divided into a number of local sub-paths connected end to end according to the gradient direction of the expansion edge. Therefore, for each local sub-path, feature extraction is performed to determine the feature value of the current local sub-path, for example, the angle of the current local sub-path, the distance relative to the center position, etc., and then for each section of the candidate wall, feature extraction is performed to determine the feature value of the candidate wall, for example, the angle of the candidate wall, the distance relative to the center position, the length, etc., and finally the feature value of the local sub-path is compared with the feature value of the candidate wall, and the valid wall corresponding to the current local sub-path is determined from the candidate wall whose feature value meets the preset threshold. In some implementations, there can be multiple preset thresholds, for example, the angle difference between the current local sub-path and the candidate wall is less than 5°, the average distance is 30 cm, the length of the candidate wall is greater than 1 meter, etc.
[0111] S203. For each candidate path, calculate a cost value corresponding to the candidate path by combining the value of each grid occupied by the candidate path in the obstacle cost map and the value of each grid occupied by the candidate path in the wall cost map.
[0112] Specifically, based on a candidate path, each grid occupied by the candidate path in the obstacle cost map can be determined, and the maximum value is selected from the values of the occupied grids as the obstacle cost of the candidate path. Then, the average value of the grid values occupied by the candidate path is selected from the values of each grid occupied by the wall cost map as the wall cost of the candidate path. Furthermore, weight coefficients are assigned to the obstacle cost and the wall cost respectively, and the weighted obstacle cost and the wall cost are added to obtain the cost value corresponding to the candidate path. Similarly, the cost values corresponding to all candidate paths can be obtained based on this method.
[0113] In some embodiments, the target object may be a relatively large machine. In this case, a circumscribed convex polygon may be used to represent the outer edge of the machine, and multiple vertices are set on the outer edge of the target object machine.
[0114] As the angle of the target object is adjusted during its movement, the orientation of these vertices may change, but there will always be at least one vertex that is closest to the wall and occupies the largest grid value in the obstacle cost map (for the convenience of description, this nearest vertex is referred to as the nearest vertex below). Therefore, as long as the nearest vertex at any time does not collide with an obstacle during the movement of the target object along the candidate path, then this path is a better path. Therefore, the obstacle cost corresponding to the candidate path can be determined based on the grid value of the nearest vertex at any time. Specifically, the maximum grid value can be selected from the grid values of the nearest vertex corresponding to all times, and this maximum grid value can be determined as the obstacle cost corresponding to the candidate path.
[0115] Correspondingly, there will always be at least one vertex with the smallest difference from the expected value of the distance along the wall and the smallest grid value in the wall cost map (for the convenience of description, the vertex with the smallest difference is referred to as the best vertex below). Therefore, as long as the difference between the best vertex and the expected value of the distance along the wall at each moment is relatively small during the target object's movement along the candidate path, then this path is a better path. Therefore, the cost along the wall corresponding to the candidate path can be determined based on the grid value of the best vertex at each moment. Specifically, the average value of the grid value of the best vertex at each moment can be calculated, and this average value can be determined as the cost along the wall corresponding to the candidate path.
[0116] S204: Select the candidate path with the smallest replacement value as the optimal path.
[0117] According to the above method, the smaller the value of the grid in the obstacle cost map, the smaller the possibility of collision, the smaller the value of the grid in the wall cost map, the more the distance between the target object and the wall is in line with the expected value of the distance along the wall, and the obstacle cost and the wall cost are positively correlated with the grid values of the candidate path in the obstacle cost map and the wall cost map, while the cost value and the obstacle path and the wall path are positively correlated. Therefore, the candidate path with the smallest cost value is selected as the optimal path.
[0118] In this embodiment, for each candidate path, by obtaining the value of each grid occupied by the path in the obstacle cost map and the wall cost map, the cost value corresponding to the candidate path can be calculated. Since the value of each grid of the obstacle cost map can reflect the possibility of the target object colliding with the obstacle in the grid, and the value of each grid of the wall cost map can reflect the difference between the actual value and the expected value of the distance along the wall of the target object in the grid, the smaller the value of the grid occupied by a candidate path in the obstacle cost map and the grid occupied by the wall cost map, the smaller the possibility of the target object colliding, and the smaller the difference between the actual value and the expected value of the distance along the wall, the smaller the cost value. At this time, the path corresponding to the minimum cost value is the optimal path. Under this path, the target object can move as close to the wall as possible without colliding.
[0119] In some embodiments, the process of determining several candidate paths includes: determining the position and posture of the target object at a first moment, the motion parameters and motion adjustment parameters at the first moment, and determining several groups of motion parameters; the first moment is the start time of path planning; for each group of motion parameters, based on the position and posture of the target object at the first moment and the motion parameters at the first moment, combined with the group of motion parameters and a preset sampling frequency, multiple sampling postures of the target object during the movement from the first moment to the second moment are estimated; the second moment is the end time of path planning; for each group of motion parameters, the corresponding candidate path is determined according to the multiple sampling postures.
[0120] The motion adjustment parameters refer to parameters used to adjust the motion parameters, and the motion parameters refer to parameters that may be used when the target object moves in the planned path, for example, linear velocity and angular velocity.
[0121] Specifically, the direction of the target object's posture at the first moment and the motion parameters at the first moment are determined, and the motion state of the target object is adjusted by combining the motion adjustment parameters, and several groups of parameters that may be used by the target object when moving in the planned path are determined. For each group of motion parameters, combined with the posture of the target object at the first moment and a pre-set sampling frequency, multiple sampling postures of the target object during the movement from the first moment to the second moment are estimated. Based on the multiple sampled postures obtained, a posture sequence can be obtained, thereby determining the corresponding candidate path.
[0122] In some specific implementations, the path of the target object can be planned based on the DWA dynamic window method. For example, the pose cur_pose = (cur_x, cur_y, cur_yaw) of the target object at the first moment is determined, where x, y are world coordinates, yaw are machine directions, and speed cur_vel = (cur_lv, cur_av) lv is the linear velocity, av is the angular velocity, wherein the linear velocity cur_lv = 0.3 m / s, the angular velocity cur_av = 0.0 rad / s, by setting the trajectory time window ds = 3s, the trajectory sampling time sample_ds = 0.1s, the acceleration acc_lv = 1.0 m / s^2, acc_av = 1.0 rad / s^2, Control the time window ctrl_ds = 0.1s, speed sampling step: lv_step = 0.02m / s, av_step = 0.02rad / s, then the optional speed range of the candidate path is: lv = [0.2, 0.4]m / s, av = [-0.1, 0.1]rad / s, and sample the speed within this range to get a set of speeds: {(lv, av)} = {(0.2, -0.1), (0.2, -0.08), ..., (0.4, 0.08), (0.4, 0.1)}. Starting from the current posture, sample each linear velocity and angular velocity combination in the trajectory time window according to the preset sampling frequency to get a set of posture sequences, that is, the candidate path set {Traj i}, one of the candidate paths is Traj i ={pose i,j}.
[0123] In some embodiments, according to S203 above, when the target object is a relatively large machine, in the process of calculating the obstacle cost, the obstacle cost corresponding to the candidate path can be determined according to the grid value of the nearest vertex at any moment, or the obstacle cost corresponding to the candidate path can be determined according to the grid value of the nearest vertex in each posture. Specifically, the maximum grid value can be selected from the grid values of the nearest vertices corresponding to all postures, and this maximum grid value is determined as the obstacle cost corresponding to the candidate path. Similarly, in the process of calculating the cost along the wall, the cost along the wall corresponding to the candidate path can be determined according to the grid value of the best vertex in each posture. Specifically, the average value of the grid values of the best vertex in each posture can be calculated, and this average value can be determined as the cost along the wall corresponding to the candidate path.
[0124] The specific calculation process is as follows:
[0125] Using the circumscribed convex polygon C robot Indicates the outer edge of the machine, C robot A set of vertices {C i}, namely C robotThe vertex.
[0126] Collision detection and path cost involve the following calculations:
[0127] Cost obs (pose i,j , C i ) represents vertex C i In the sampling pose i,j The value of the corresponding grid projected to CostMap_obs, the obstacle cost of the sampling pose in the path: Cost obs (pose i,j , C robot )=max(Cost obs (pose i,j , C i )), the obstacle cost of the path: Cost obs (Traj i )=max(Cost obs ( p ose i,j, C robot ));
[0128] Cost wall (pose i,j , C i ) represents vertex C i In the sampling pose i,j The value projected to the corresponding grid in CostMap_wall, the cost along the wall of the sampling pose in the path: Cost wall (pose i,j , C robot )=min(Cost wall (pose i,j , C i ), the cost along the wall of the path:
[0129] Where n is Traj i The number of sampled poses.
[0130] In some embodiments, the process of determining the value of each grid in the obstacle cost map and the wall cost map includes: calculating the value of each grid in the obstacle cost map and the value of each grid in the wall cost map respectively according to a pre-established obstacle cost function and a wall cost function; for each candidate path, determining the value of each grid occupied by the candidate path in the obstacle cost map and the value of each grid occupied by the candidate path in the wall cost map.
[0131] In some implementations, the obstacle cost function may be:
[0132]
[0133] Among them, G x,y Represents the value of the grid, d x,y is the distance between the center of the grid and the nearest obstacle point cloud, x, y are the coordinates of the grid, D0 is generally set to twice the width of the target object, D crash The collision distance is the distance at which the target object collides with the wall. It is set according to parameters such as sensor accuracy and data processing delay, and can generally be set to 0.05 meters.
[0134] The wall cost function can be
[0135] G x,y =0.5*(d x,y -D along ) 2
[0136] Among them, G x,y Represents the value of the grid, d x,y The distance between the target object and the nearest wall point cloud at the center of the grid. x and y are the coordinates of the grid. D along In some embodiments, φ is the distance along the wall, that is, the distance between the desired target object and the wall.
[0137] Among them, although the above G x,y Both represent the value of the grid, but they have different meanings in different cost maps. Specifically, the obstacle cost map reflects the possibility of the target object colliding with the obstacle when it is located in the grid, and the wall cost map reflects the difference between the actual value and the expected value of the distance along the wall when the target object is located in the grid. Similarly, the above d x,y The obstacle cost map represents the distance between the target object and the nearest obstacle point cloud at the center of the grid. The wall cost map represents the distance between the target object and the nearest wall point cloud at the center of the grid.
[0138] In some embodiments, for each planned path, the calculation process of the corresponding cost value includes: for each candidate path, sampling and calculating the posture of the target object at a preset node of the candidate path to obtain a node sampling posture; determining the absolute value of the angular difference between the direction of the node sampling posture and the direction of the nearest wall; for each candidate path, calculating the weighted average of the linear velocity and angular velocity of the target object in the sampling time period; based on the value of each grid occupied by the candidate path in the obstacle cost map, the value of each grid occupied by the candidate path in the wall cost map, the absolute value of the difference between the direction of the sampling posture and the direction of the wall, and the weighted average of the linear velocity and angular velocity of the target object in the sampling time period, calculate the cost value corresponding to the candidate path.
[0139] The preset nodes may be selected according to the distance, time, or extracted from the pose sequence. In some embodiments, for a candidate path, a sampling pose at one-half of the candidate path may be selected to obtain the node sampling pose. In other embodiments, the weighted average of the linear velocity and angular velocity of the target object during the sampling time period may be calculated according to the formula:
[0140] Cost vel (Traj i )=p*lv i +(1.0-p)*av i , (p>1.0)
[0141] Among them, Cost vel (Traj i ) is the weighted average of the linear velocity and angular velocity of the target object in the sampling time period, and p is generally taken as 1.5, which means that the greater the linear velocity and the smaller the angular velocity, the smaller the cost value.
[0142] In some embodiments, the above obstacle cost, wall cost, absolute value of the difference between the direction of the sampling posture and the direction of the wall, and weighted average of the linear velocity and angular velocity of the target object in the sampling time period can be added together, and weights can be configured for them according to the actual engineering situation, based on which the cost value corresponding to the candidate path can be calculated. The specific calculation process is as follows:
[0143] Cost(Traj i )=k1*Cost obs (Traj i )+k2*Cost wall (Traj i )+k3*Cost heading (Traj i )+k4*Cost vel (Traj i )
[0144] Among them, Cost obs (Traj i ) is the obstacle cost, Cost wall (Traj i ) is the cost along the wall, Cost heading (Traj i ) is the absolute value of the difference between the direction of the sampling pose and the direction of the wall, Cost vel (Traj i ) is the weighted average of the linear velocity and angular velocity of the target object in the sampling time period, k1~k4 are weights, which can be configured according to the actual project.
[0145] In some embodiments, the determined candidate paths may also be screened, and the screening process is: for each candidate path, a collision detection is performed on a preset section in the candidate path; and paths that fail the collision detection are eliminated from the candidate paths.
[0146] The selection of the preset section can be made according to the distance. For example, the first half of a candidate path is selected as the preset section, collision detection is performed within the preset section, and paths that fail the collision detection are eliminated from several candidate paths. Here, "half" is only used as an example, and other lengths can be selected according to actual accuracy requirements, such as one third, two thirds, etc. In some special scenarios, preferably, the entire section of the candidate path can be used as the preset section for collision detection.
[0147] The selection of preset sections can also be based on time. For example, starting from the starting point of a candidate path, the section where the target object travels in the next 1 second is selected as the preset section, collision detection is performed in the preset section, and some candidate paths that fail the collision detection are eliminated from several candidate paths.
[0148] In some embodiments, the collision detection method may be a collision detection based on an obstacle cost map. Specifically, a collision distance may be pre-set. When the distance between the target object and a point in the obstacle point cloud is less than the collision distance, it means that the target object may collide here. The target object is simulated to move along a preset section of a candidate path. During this process, if a point less than the collision distance is detected, it means that the target object may collide in this candidate path, and the paths that may collide in the candidate paths are eliminated accordingly.
[0149] Figure 3Another path planning method of an embodiment of the present application. Specifically, firstly, an initial global path is planned based on a pre-established environment grid map, and the initial global path is divided into several local sub-paths. Starting from the first local sub-path, feature extraction is performed for the current local sub-path to determine its feature value, and feature extraction is performed for each section of the candidate wall to determine the feature value of the candidate wall, and the feature value of the local sub-path is compared with the feature value of the candidate wall, and it is detected from the candidate walls whether there is a candidate wall that meets the preset threshold, that is, whether there is a wall that matches the current local sub-path. If it does not exist, the general path planning method is used to plan the current local sub-path; if it exists, the value of each grid occupied by the candidate path in the obstacle cost map and the value of each grid occupied by the candidate path in the wall cost map are obtained, and several candidate paths are generated based on the dynamic window method (DWA), and the cost value corresponding to each candidate path is calculated by combining the value of each grid occupied by the candidate path in the obstacle cost map and the value of each grid occupied by the candidate path in the wall cost map, and the candidate path with the smallest cost value is selected as the optimal path. At this time, check whether the target object has reached the end point of the last local sub-path. If so, end the path planning; if not, as the target object moves along the optimal path, continue to calculate the cost value of each candidate path corresponding to the next local sub-path, and select the candidate path with the smallest cost value as the optimal path, so that the target object continues to move until it reaches the end point of the last local sub-path, and end the path planning.
[0150] Figure 5 A schematic diagram of a path planning device provided in one embodiment of the present application is shown in FIG. Figure 5 As shown, the path planning device 400 of this embodiment includes: a candidate path determination module 401 , a grid value acquisition module 402 , a cost value calculation module 403 and an optimal path selection module 404 .
[0151] A candidate path determination module 401 is used to determine a number of candidate paths;
[0152] The grid value acquisition module 402 is used to acquire, for each candidate path, the value of each grid occupied by the candidate path in the obstacle cost map and the value of each grid occupied by the candidate path in the wall cost map; the value of each grid in the obstacle cost map reflects the possibility of the target object colliding with the obstacle when it is located in the grid; the value of each grid in the wall cost map reflects the difference between the actual value and the expected value of the distance along the wall when the target object is located in the grid;
[0153] The cost value calculation module 403 is used to calculate the cost value corresponding to each candidate path by combining the value of each grid occupied by the candidate path in the obstacle cost map and the value of each grid occupied by the candidate path in the wall cost map for each candidate path; the cost value is proportional to the value of each grid occupied by the candidate path in the obstacle cost map; the cost value is proportional to the value of each grid occupied by the candidate path in the wall cost map;
[0154] The optimal path selection module 404 is used to select the candidate path with the smallest replacement value as the optimal path.
[0155] Optionally, the candidate path determination module 401 is specifically configured to:
[0156] Determine the position and posture of the target object at a first moment, the motion parameters at the first moment, and the motion adjustment parameters, and determine several groups of motion parameters; the first moment is the path planning start moment;
[0157] For each set of motion parameters, based on the position and motion parameters of the target object at the first moment, combined with the set of motion parameters and a preset sampling frequency, multiple sampling positions and poses of the target object during the motion from the first moment to the second moment are estimated; the second moment is the end moment of path planning;
[0158] For each set of motion parameters, a corresponding candidate path is determined according to the multiple sampled postures.
[0159] Optionally, the grid value acquisition module 402 is specifically used to:
[0160] According to the pre-established obstacle cost function and wall cost function, respectively calculating the value of each grid in the obstacle cost map and the value of each grid in the wall cost map;
[0161] For each candidate path, determine the value of each grid occupied by the candidate path in the obstacle cost map and the value of each grid occupied by the candidate path in the wall cost map.
[0162] Optionally, the cost value calculation module 403 is specifically used to:
[0163] For each candidate path, the pose of the target object is sampled and calculated at a preset node of the candidate path to obtain a node sampling pose;
[0164] Determine the absolute value of the angular difference between the direction of the node sampling pose and the direction of the nearest wall;
[0165] For each candidate path, calculate the weighted average of the linear velocity and angular velocity of the target object during the sampling period;
[0166] Based on the value of each grid occupied by the candidate path in the obstacle cost map, the value of each grid occupied by the candidate path in the wall cost map, the absolute value of the difference between the direction of the sampling posture and the direction of the wall, and the weighted average of the linear velocity and angular velocity of the target object in the sampling time period, the cost value corresponding to the candidate path is calculated.
[0167] Optionally, the device further includes a point cloud projection module 405, which is used to:
[0168] Use scanning technology to obtain obstacle point cloud;
[0169] Generate obstacle cost map based on obstacle point cloud;
[0170] Performing line segment detection on the obstacle point cloud, and determining the detected multiple line segments as candidate walls;
[0171] Determine the candidate walls that meet the preset threshold as valid walls;
[0172] According to the effective wall, determine the wall point cloud;
[0173] Generate wall cost map based on wall point cloud.
[0174] Optionally, when determining a candidate wall that meets a preset threshold as a valid wall, the point cloud projection module 405 is specifically configured to:
[0175] Plan the initial global path based on the pre-established environmental grid map;
[0176] Dividing the initial global path into a plurality of local sub-paths;
[0177] For each local sub-path, feature extraction is performed to determine the feature value of the local sub-path;
[0178] For each section of the candidate wall, feature extraction is performed to determine the feature value of the candidate wall;
[0179] The characteristic value of the local sub-path is compared with the characteristic value of the candidate wall, and the candidate wall whose characteristic value meets a preset threshold is determined as a valid wall.
[0180] Optionally, the device further includes a collision detection module 406, which is used to:
[0181] For each candidate path, performing collision detection on a preset section in the candidate path;
[0182] Eliminate the paths that fail the collision detection among the candidate paths.
[0183] The device of this embodiment can be used to execute the method of any of the above embodiments. Its implementation principle and technical effects are similar and will not be described in detail here.
[0184] Figure 6 A schematic diagram of the structure of an electronic device provided in one embodiment of the present application is shown in FIG. Figure 6 As shown, the electronic device 500 of this embodiment may include: a memory 501 and a processor 502 .
[0185] The memory 501 stores a computer program that can be loaded by the processor 502 and execute the method in the above embodiment.
[0186] The processor 502 and the memory 501 are connected, for example, via a bus.
[0187] Optionally, the electronic device 500 may further include a transceiver. It should be noted that in actual applications, the number of transceivers is not limited to one, and the structure of the electronic device 500 does not constitute a limitation on the embodiments of the present application.
[0188] Processor 502 may be a CPU (Central Processing Unit), a general purpose processor, a DSP (Digital Signal Processor), an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array) or other programmable logic devices, transistor logic devices, hardware components or any combination thereof. It may implement or execute various exemplary logic blocks, modules and circuits described in conjunction with the disclosure of this application. Processor 602 may also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of a DSP and a microprocessor, etc.
[0189] The bus may include a path to transmit information between the above components. The bus may be a PCI (Peripheral Component Interconnect) bus or an EISA (Extended Industry Standard Architecture) bus. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one thick line is used in the figure, but it does not mean that there is only one bus or one type of bus.
[0190] The memory 501 can be a ROM (Read Only Memory) or other types of static storage devices that can store static information and instructions, a RAM (Random Access Memory) or other types of dynamic storage devices that can store information and instructions, or an EEPROM (Electrically Erasable Programmable Read Only Memory), a CD-ROM (Compact Disc Read Only Memory) or other optical disk storage, optical disk storage (including compressed optical disk, laser disk, optical disk, digital versatile disk, Blu-ray disk, 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 to these.
[0191] The memory 501 is used to store the application code for executing the solution of the present application, and the execution is controlled by the processor 502. The processor 502 is used to execute the application code stored in the memory 501 to implement the contents shown in the above method embodiment.
[0192] The electronic devices include, but are not limited to, mobile terminals such as mobile phones, laptop computers, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), vehicle-mounted terminals (such as vehicle-mounted navigation terminals), and fixed terminals such as digital TVs, desktop computers, etc. It can also be a server, etc. Figure 6 The electronic device shown is merely an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.
[0193] The electronic device of this embodiment can be used to execute the method of any of the above embodiments, and its implementation principle and technical effect are similar, which will not be described in detail here.
[0194] The present application also provides a computer-readable storage medium storing a computer program that can be loaded by a processor and execute the method in the above embodiment.
[0195] Those skilled in the art can understand that all or part of the steps of implementing the above-mentioned method embodiments can be completed by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When the program is executed, the steps of the above-mentioned method embodiments are executed; and the aforementioned storage medium includes: ROM, RAM, disk or optical disk and other media that can store program codes.
Claims
1. A path planning method, characterized in that: include: Determine several candidate paths; For each candidate path, obtain the value of each grid occupied by the candidate path in the obstacle cost map and the value of each grid occupied by the candidate path in the wall cost map; The value of each grid in the obstacle cost map reflects the possibility of the target object colliding with an obstacle when it is located in that grid; The value of each grid in the wall cost map reflects the difference between the actual value and the expected value of the distance along the wall when the target object is located in that grid; For each candidate path, combining the value of each grid occupied by the candidate path in the obstacle cost map and the value of each grid occupied by the candidate path in the wall cost map, calculate a cost value corresponding to the candidate path; the cost value is proportional to the value of each grid occupied by the candidate path in the obstacle cost map; the cost value is proportional to the value of each grid occupied by the candidate path in the wall cost map; Select the candidate path with the smallest replacement value as the optimal path; The determining of a plurality of candidate paths comprises: Determine the position and posture of the target object at a first moment, the motion parameters at the first moment, and the motion adjustment parameters, and determine several groups of motion parameters; the first moment is the path planning start moment; For each set of motion parameters, based on the position and motion parameters of the target object at the first moment, combined with the set of motion parameters and a preset sampling frequency, multiple sampling positions and poses of the target object during the motion from the first moment to the second moment are estimated; the second moment is the end moment of path planning; For each set of motion parameters, a corresponding candidate path is determined according to the multiple sampled postures.
2. The method according to claim 1, characterized in that For each candidate path, obtaining the value of each grid occupied by the candidate path in the obstacle cost map and the value of each grid occupied by the candidate path in the wall cost map includes: According to the pre-established obstacle cost function and wall cost function, respectively calculating the value of each grid in the obstacle cost map and the value of each grid in the wall cost map; For each candidate path, determine the value of each grid occupied by the candidate path in the obstacle cost map and the value of each grid occupied by the candidate path in the wall cost map.
3. The method according to claim 1, characterized in that The step of calculating the cost value corresponding to each candidate path by combining the value of each grid occupied by the candidate path in the obstacle cost map and the value of each grid occupied by the candidate path in the wall cost map for each candidate path includes: For each candidate path, the pose of the target object is sampled and calculated at a preset node of the candidate path to obtain a node sampling pose; Determine the absolute value of the angular difference between the direction of the node sampling pose and the direction of the nearest wall; For each candidate path, calculate the weighted average of the linear velocity and angular velocity of the target object during the sampling period; Based on the value of each grid occupied by the candidate path in the obstacle cost map, the value of each grid occupied by the candidate path in the wall cost map, the absolute value of the difference between the direction of the sampling posture and the direction of the wall, and the weighted average of the linear velocity and angular velocity of the target object in the sampling time period, the cost value corresponding to the candidate path is calculated.
4. The method according to claim 1 or 2, characterized in that: Also includes: Use scanning technology to obtain obstacle point cloud; Generate obstacle cost map based on obstacle point cloud; Performing line segment detection on the obstacle point cloud, and determining the detected multiple line segments as candidate walls; Determine the candidate walls that meet the preset threshold as valid walls; According to the effective wall, determine the wall point cloud; Generate wall cost map based on wall point cloud.
5. The method according to claim 4, characterized in that The step of determining the candidate wall that meets the preset threshold as a valid wall includes: Plan the initial global path based on the pre-established environmental grid map; Dividing the initial global path into a plurality of local sub-paths; For each local sub-path, feature extraction is performed to determine the feature value of the local sub-path; For each local sub-path, extract features of each section of the candidate wall corresponding to the local sub-path to determine the feature value of the candidate wall; For each local sub-path, the characteristic value of the local sub-path is compared with the characteristic value of the candidate wall corresponding to the local sub-path, and the candidate wall whose characteristic value meets a preset threshold is determined as the valid wall corresponding to the local sub-path.
6. The method according to claim 1 or 2, characterized in that: Also includes: For each candidate path, performing collision detection on a preset section in the candidate path; Eliminate the paths that fail the collision detection among the candidate paths.
7. A path planning device, characterized in that: include: A candidate path determination module, used to determine a number of candidate paths; A grid value acquisition module, used for acquiring, for each candidate path, the value of each grid occupied by the candidate path in the obstacle cost map and the value of each grid occupied by the candidate path in the wall cost map; The value of each grid in the obstacle cost map reflects the possibility of the target object colliding with an obstacle when it is located in that grid; The value of each grid in the wall cost map reflects the difference between the actual value and the expected value of the distance along the wall when the target object is located in that grid; a cost value calculation module, for each candidate path, combining the value of each grid occupied by the candidate path in the obstacle cost map and the value of each grid occupied by the candidate path in the wall cost map, to calculate the cost value corresponding to the candidate path; the cost value is proportional to the value of each grid occupied by the candidate path in the obstacle cost map; the cost value is proportional to the value of each grid occupied by the candidate path in the wall cost map; The optimal path selection module is used to select the candidate path with the smallest replacement value as the optimal path; The candidate path determination module is specifically used to determine the position and posture of the target object at the first moment, the motion parameters at the first moment, and the motion adjustment parameters, and determine several groups of motion parameters; the first moment is the start time of path planning; for each group of motion parameters, based on the position and posture of the target object at the first moment and the motion parameters at the first moment, combined with the group of motion parameters and a preset sampling frequency, multiple sampling postures of the target object during the movement from the first moment to the second moment are estimated; the second moment is the end time of path planning; for each group of motion parameters, according to the multiple sampling postures, the corresponding candidate path is determined.
8. An electronic device, characterized in that: include: Memory and processor; The memory is used to store program instructions; The processor is used to call and execute the program instructions in the memory to perform the method according to any one of claims 1-6.
9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program; when the computer program is executed by a processor, the method according to any one of claims 1 to 6 is implemented.
Citation Information
Patent Citations
Track evaluation method, track evaluation device and mobile robot
CN111123934A
Rectangular sweeping robot control method and device and rectangular sweeping robot
CN114489076A