Path planning method and device for skeleton key points extracted based on free region

By extracting the key points of the skeleton in the environment grid map and building the skeleton diagram structure, and introducing the A* algorithm for path planning, the problem of excessive tortuous and redundant path planning in the existing technology is solved, and a more streamlined and efficient robot path planning is achieved.

CN120176706APending Publication Date: 2025-06-20WUHAN UNIV OF SCI & TECH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510300438.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-14
Publication Date
2025-06-20

AI Technical Summary

Technical Problem

When searching for global paths, the existing Voronoi graphs, the planned paths are too tortuous and redundant, making it difficult to apply to robot navigation.

Method used

Skeleton extraction is performed by extracting free areas in the environment raster map, skeleton key points are obtained, and the skeleton map structure is constructed based on these key points, and it is introduced into the A* algorithm to search for the mobile path of the robot.

Benefits of technology

This method effectively avoids accessing invalid areas, accelerates the node expansion speed of the A* algorithm, reduces the path length during the robot's operation, and solves the global path redundancy problem caused by the Voronoi algorithm.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120176706A_ABST
    Figure CN120176706A_ABST
Patent Text Reader

Abstract

The invention provides a path planning method and device for skeleton key points extracted based on a free region, and the method comprises the steps: carrying out the skeleton extraction based on the free region in an environment grid map of a robot, obtaining a map skeleton, and determining skeleton pixel points; skeleton key points are obtained through screening in the skeleton pixel points, a skeleton graph structure is constructed based on the skeleton key points and the connection relation between the skeleton key points, and the skeleton key points comprise skeleton end points and skeleton bifurcation points; and adding the skeleton graph structure into an evaluation function of an A * algorithm to obtain an improved A * algorithm, and searching by using the improved A * algorithm to obtain a moving path of the robot. According to the method, the skeleton key points of the map skeleton are extracted, the skeleton graph structure is constructed based on the skeleton key points and the connection relation between the skeleton key points, A * algorithm nodes are expanded and limited between the skeleton key points, access to invalid areas is effectively avoided, and the path length in the running process of the robot is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of robots, and particularly to a path planning method and device for skeleton key points based on free area extraction. Background Art

[0002] The path planning of a mobile robot needs to plan a global path based on the starting point, the target point and the surrounding environment, and then use local planning to avoid obstacles on the local path during walking. Since most of the current global paths obtained by path planning algorithms based on the grid method are relatively close to the obstacles, there is a risk of hitting obstacles during the actual operation of the mobile robot, and the occurrence of the risk of collision accidents is not allowed.

[0003] Therefore, global path planning based on the Voronoi diagram has been widely studied. The Voronoi diagram is a typical spatial planning method. An important characteristic of the Voronoi diagram is that it generates a boundary around each obstacle. The robot can regard these boundaries as a "safe distance", that is, the path of the robot should try to keep a certain distance from the obstacles. The robot can plan a global path far from the obstacles through the constructed Voronoi diagram, which can ensure the safety of the robot walking on the global path. This path search method does not need to search the entire environmental map during global path search, reduces the search calculation amount, and at the same time can ensure the safety of the final path, far from the obstacles, and has good safety.

[0004] The path planning algorithm based on the Voronoi diagram usually includes three parts. The first part is to search for the shortest path from the starting point to the skeleton, the second part is to search for the shortest path from the target point to the skeleton, and the third part is to search for the partial path of the skeleton between the starting point and the target point.

[0005] However, since the path planning of the Voronoi diagram is divided into three parts, in some cases, the planned path is too tortuous and redundant, making it difficult to be applied to robot navigation. Summary of the Invention

[0006] The present invention provides a path planning method and device for skeleton key points based on free area extraction, so as to solve the defect that the planned path of the path planning algorithm based on the Voronoi diagram in the prior art is tortuous and redundant, and to realize a robot path planning method with a more concise planned path.

[0007] The present invention provides a path planning method for skeleton key points based on free area extraction, including:

[0008] Performing skeleton extraction based on the free area in the environmental grid map of the robot to obtain a map skeleton and determine skeleton pixel points;

[0009] Select skeleton key points from the skeleton pixel points, and construct a skeleton graph structure based on the connection relationships between the skeleton key points, where the skeleton key points include skeleton endpoints and skeleton bifurcation points;

[0010] Use the A* algorithm to search the skeleton graph structure to obtain the movement path of the robot.

[0011] According to a path planning method based on skeleton key points extracted from a free area provided by the present invention, the step of selecting skeleton key points from the skeleton pixel points includes:

[0012] Traverse each skeleton pixel point. When there is only another skeleton pixel point in the eight-neighborhood of the current skeleton pixel point, determine the current skeleton pixel point as the skeleton endpoint;

[0013] When the current skeleton pixel point is at least the intersection of three branches, determine the current skeleton pixel point as a skeleton bifurcation point.

[0014] According to a path planning method based on skeleton key points extracted from a free area provided by the present invention, the skeleton key points further include the starting point and the target point of the robot.

[0015] According to a path planning method based on skeleton key points extracted from a free area provided by the present invention, before the step of constructing a skeleton graph structure based on the connection relationships between the skeleton key points, the method further includes:

[0016] When there are other skeleton bifurcation points within a preset range centered on a skeleton bifurcation point, regard all the skeleton bifurcation points within the preset range as one skeleton bifurcation point for constructing the skeleton graph structure.

[0017] According to a path planning method based on skeleton key points extracted from a free area provided by the present invention, the step of constructing a skeleton graph structure based on the connection relationships between the skeleton key points specifically includes:

[0018] Starting from each skeleton endpoint, search layer by layer along the path of the map skeleton until a skeleton bifurcation point or an obstacle is encountered, record the shortest path between the skeleton endpoint and the skeleton bifurcation point as a connection edge, and add it to the skeleton graph structure;

[0019] Based on the range expansion method, search the skeleton bifurcation points, record the shortest path between the intersection points as a connection edge, and add it to the skeleton graph structure.

[0020] A path planning method for skeleton key points based on free area extraction provided by the present invention, the step of adding the skeleton graph structure to the evaluation function of the A* algorithm to obtain an improved A* algorithm, and using the improved A* algorithm to search for the movement path of the robot specifically includes:

[0021] Determine the estimated cost of the shortest path from the current skeleton key point to the target point of the robot based on the skeleton graph structure, and construct the evaluation function of the A* algorithm;

[0022] Use the A* algorithm to search the skeleton graph structure based on the constructed evaluation function to obtain the movement path of the robot.

[0023] The present invention also provides a path planning device for skeleton key points based on free area extraction, including:

[0024] An extraction module for performing skeleton extraction based on the free area in the environmental grid map of the robot to obtain a map skeleton and determine skeleton pixel points;

[0025] A construction module for screening skeleton key points from the skeleton pixel points, and constructing a skeleton graph structure based on the connection relationship between the skeleton key points, wherein the skeleton key points include skeleton endpoints and skeleton bifurcation points;

[0026] A search module for adding the skeleton graph structure to the evaluation function of the A* algorithm to obtain an improved A* algorithm, and using the improved A* algorithm to search for the movement path of the robot.

[0027] The present invention also provides an electronic device, including a memory, a processor, and a computer program stored on the memory and executable on the processor. When the processor executes the program, it implements the path planning method for skeleton key points based on free area extraction as described in any one of the above.

[0028] The present invention also provides a non-transitory computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, it implements the path planning method for skeleton key points based on free area extraction as described in any one of the above.

[0029] The present invention also provides a computer program product, including a computer program. When the computer program is executed by a processor, it implements the path planning method for skeleton key points based on free area extraction as described in any one of the above.

[0030] The path planning method and device for skeleton key points based on free area extraction provided by the present invention extract the skeleton key points of the map skeleton, construct a skeleton graph structure based on the skeleton key points and the connection relationships between them, limit the expansion of A* algorithm nodes between the skeleton key points, and no longer expand to other areas of the free area, effectively avoiding accessing invalid areas, accelerating the node expansion speed of the A* algorithm, and enabling the path obtained by the search to solve the problem of redundant global paths caused by the strict dependence of the Voronoi algorithm on skeleton walking, reducing the path length during the operation of the robot. BRIEF DESCRIPTION OF THE DRAWINGS

[0031] In order to more clearly illustrate the technical solutions in the present invention or the prior art, the following will briefly introduce the drawings required for use in the description of the embodiments or the prior art. Obviously, the drawings in the following description are some embodiments of the present invention. For those of ordinary skill in the art, without creative efforts, other drawings can also be obtained based on these drawings.

[0032] Figure 1 is a flowchart showing the path planning method for skeleton key points based on free area extraction provided by the present invention;

[0033] Figure 2 In (a) of is the global map of the target area in the path planning method for skeleton key points based on free area extraction provided by the present invention;

[0034] Figure 2 In (b) of is the global map after binarization processing in the path planning method for skeleton key points based on free area extraction provided by the present invention;

[0035] Figure 3 In (a) of is the global map before opening operation processing in the path planning method for skeleton key points based on free area extraction provided by the present invention;

[0036] Figure 3 In (b) of is the global map after opening operation processing in the path planning method for skeleton key points based on free area extraction provided by the present invention;

[0037] Figure 4 is a schematic diagram showing the screening of skeleton pixel points and their eight neighborhoods in the path planning method for skeleton key points based on free area extraction provided by the present invention;

[0038] Figure 5 In (a) of is a schematic diagram of the map skeleton extracted using the global map before preprocessing in the path planning method for skeleton key points based on free area extraction provided by the present invention;

[0039] Figure 5Among them, (b) is a schematic diagram of the map skeleton extracted using the preprocessed global map in the path planning method for skeleton key points based on free area extraction provided by the present invention;

[0040] Figure 6 It is a schematic diagram of screening skeleton key points and their eight-neighborhoods in the path planning method for skeleton key points based on free area extraction provided by the present invention;

[0041] Figure 7 Among them, (a) is one of the schematic diagrams of orthogonal branches in the path planning method for skeleton key points based on free area extraction provided by the present invention;

[0042] Figure 7 Among them, (b) is the second schematic diagram of orthogonal branches in the path planning method for skeleton key points based on free area extraction provided by the present invention;

[0043] Figure 8 Among them, (a) is one of the schematic diagrams of diagonal branches in the path planning method for skeleton key points based on free area extraction provided by the present invention;

[0044] Figure 8 Among them, (b) is the second schematic diagram of diagonal branches in the path planning method for skeleton key points based on free area extraction provided by the present invention;

[0045] Figure 8 Among them, (c) is the third schematic diagram of diagonal branches in the path planning method for skeleton key points based on free area extraction provided by the present invention;

[0046] Figure 8 Among them, (d) is the fourth schematic diagram of diagonal branches in the path planning method for skeleton key points based on free area extraction provided by the present invention;

[0047] Figure 9 Among them, (a) is one of the schematic diagrams of mixed branches in the path planning method for skeleton key points based on free area extraction provided by the present invention;

[0048] Figure 9 Among them, (b) is the second schematic diagram of mixed branches in the path planning method for skeleton key points based on free area extraction provided by the present invention;

[0049] Figure 9 Among them, (c) is the third schematic diagram of mixed branches in the path planning method for skeleton key points based on free area extraction provided by the present invention;

[0050] Figure 9 Among them, (d) is the fourth schematic diagram of mixed branches in the path planning method for skeleton key points based on free area extraction provided by the present invention;

[0051] Figure 10 Among them, (a) is a schematic diagram of the map skeleton in a simple environment in the path planning method of skeleton key points based on free area extraction provided by the present invention;

[0052] Figure 10 Among them, (b) is a schematic diagram of the skeleton key points in a simple environment in the path planning method of skeleton key points based on free area extraction provided by the present invention;

[0053] Figure 10 Among them, (c) is a schematic diagram of the skeleton graph structure in a simple environment in the path planning method of skeleton key points based on free area extraction provided by the present invention;

[0054] Figure 11 Among them, (a) is a schematic diagram of the map skeleton in a complex environment in the path planning method of skeleton key points based on free area extraction provided by the present invention;

[0055] Figure 11 Among them, (b) is a schematic diagram of the skeleton key points in a complex environment in the path planning method of skeleton key points based on free area extraction provided by the present invention;

[0056] Figure 11 Among them, (c) is a schematic diagram of the skeleton graph structure in a complex environment in the path planning method of skeleton key points based on free area extraction provided by the present invention;

[0057] Figure 12 is a schematic diagram of the structure of the path planning device of skeleton key points based on free area extraction provided by the present invention;

[0058] Figure 13 is a schematic diagram of the structure of the electronic device provided by the present invention. Detailed implementation manners

[0059] To make the objectives, technical solutions and advantages of the present invention clearer, the technical solutions in the present invention will be clearly and completely described below with reference to the accompanying drawings in the present invention. Obviously, the described embodiments are some, but not all, of the embodiments of the present invention. All other embodiments obtained by those of ordinary skill in the art based on the embodiments in the present invention without creative efforts shall fall within the protection scope of the present invention.

[0060] The following combines Figures 1 to 11 to introduce the path planning method of skeleton key points based on free area extraction of the present invention. As Figure 1 shown, it includes:

[0061] Step 101: Based on the free area in the environmental grid map of the robot, perform skeleton extraction to obtain the map skeleton and determine the skeleton pixel points;

[0062] Obtain the global map of the robot, as shown in Figure 2 (a) of. The global map represents the surrounding environment information in white, black, and gray. Among them, the black pixel value is 0, representing an obstacle; the gray pixel value is the intermediate value between 0 and 255, representing an unknown area; and the white pixel value is 255, representing a free area.

[0063] Furthermore, perform binary processing on the global map to obtain an environmental grid map, as shown in Figure 2 (b) of.

[0064] In a specific implementation, assume that the pixel value of the original map is Grid(i, j), and the pixel value of the binary map is G(i, j), where (i, j) represents the pixel coordinates of the map. At the same time, set a pixel threshold T, traverse each pixel value in the original map, compare it with the pixel threshold T one by one, set the pixel value less than the threshold to 0, which is black, and vice versa to 255, which is white, to achieve binary processing:

[0065]

[0066] Through binary processing, the data volume in the original global map is greatly reduced, and the outline of the environmental boundary can be clearly highlighted.

[0067] On this basis, perform morphological opening operation on the binary map. Morphological opening operation is a process of first eroding and then dilating the image, which has the function of removing isolated points and burrs in the image. Define the white area in the binary map as structure A, define a structuring element B, and specify a comparison center point for the structuring element B, which is the reference point for the structuring element to participate in the morphological opening operation.

[0068] The understanding of erosion is: when set B is completely contained in set A, the set of the origin positions of B is the result of B eroding A. The understanding of dilation is: after reflecting the structuring element B and moving it on image A, when there is an intersection between A and the reflection of B, the set of all points passed by the origin of the reflection of B is the result of B dilating A. Specifically, it is shown as the following formula:

[0069]

[0070] As shown in Figure 3 (a) and (b) of, through the opening operation, the noise and miscellaneous spots on the original map are eliminated, the edges and burrs of the map boundary and the obstacle contour are smoothed, and the overall area size and position are almost unchanged. However, there are some white noise points and burrs at the uneven black contours in the original binary map. After the opening operation, all the white noise points have been removed, and the discontinuous black contours on the boundary have also been filled.

[0071] On this basis, the preprocessing step of the original map is completed, and then the skeleton of the free space in the map after the opening operation, that is, the white area, is extracted to obtain the map skeleton.

[0072] In a specific embodiment, before extracting the map skeleton, the pixel points in the map are traversed, and the pixel points with a pixel value of 255 are put into the container Points, and then each pixel point in the container Points is further traversed.

[0073] As Figure 4 shown, all the pixel points in the container Points are traversed in turn using the eight-neighborhood method. Let the currently traversed pixel point be V0, and V1 to V8 are the pixel values of the eight neighbors of V0 on the map. During the traversal, the number of times the pixel values change in the eight neighbors of each pixel point in the container Points is counted. Among the pixel points V1 to V8 in the eight neighbors of V0, the number of times of changing from 0 to 255 in clockwise order is P(V0), the number of pixel points with a pixel value of 255 in the eight neighbors is Q(V0), and the number of times the pixel value V x changes from 0 to 255 in clockwise order is M(V x ).

[0074] Set the pixel value of the pixel point V0 that meets the following conditions to 0, and at the same time delete V0 from the container Points:

[0075] Condition 1: P(V0) = 1;

[0076] Condition 2: 2 ≤ Q(V0) ≤ 6;

[0077] Condition 3: V1·V3·V7 = 0 || M(V1) ≠ 1;

[0078] Condition 4: V1·V3·V5 = 0 || M(V3) ≠ 1;

[0079] Continuously loop through each pixel point in the container Points until there is no pixel point V0 in the container Points that meets the above four conditions, and then stop the loop. At this time, the points stored in the container Points and the pixel points with a value of 255 in the map are the extracted skeleton pixel points, which constitute the map skeleton.

[0080] As Figure 5 shown in (a) and (b) in, extracting the skeleton from the preprocessed map can reduce the interference of map noise compared with direct extraction, and obtain a clearer and more definite map skeleton.

[0081] Step 102: Screen out the skeleton key points from the skeleton pixels, and construct a skeleton graph structure based on the connection relationships between the skeleton key points. Herein, the skeleton key points include skeleton endpoints and skeleton bifurcation points;

[0082] Further, screen all the skeleton pixels to obtain the skeleton key points.

[0083] Among them, the skeleton key points include skeleton endpoints and skeleton bifurcation points.

[0084] It can be understood that the skeleton endpoints are the skeleton pixels located at the end points of the skeleton, usually at the boundaries of the map; the skeleton bifurcation points are the skeleton pixels at the intersections in the middle of the skeleton.

[0085] As Figure 5 shown in (b) of , generally, the extracted map skeleton is an irregular curve with redundancy. Directly performing path search based on the extracted map skeleton will also be affected by redundant nodes and invalid paths.

[0086] Therefore, based on the extracted map skeleton, the present invention further determines the skeleton endpoints and skeleton bifurcation points as the key points representing the topological structure of the map skeleton. On this basis, based on the connection relationships between the skeleton endpoints and skeleton bifurcation points, and between the skeleton bifurcation points and skeleton bifurcation points, the map skeleton is reconstructed to obtain a skeleton graph structure, so that the obtained skeleton graph structure has more concise environmental information.

[0087] Step 103: Incorporate the skeleton graph structure into the evaluation function of the A* algorithm to obtain an improved A* algorithm, and use the improved A* algorithm to search for the movement path of the robot.

[0088] The A* (A-Star) algorithm is a heuristic path search algorithm that dynamically balances the cost of the traveled path and the estimated remaining cost through an evaluation function to efficiently find the shortest path between two points in the map.

[0089] By introducing the constructed skeleton graph structure into the evaluation function of the A* algorithm, the expansion area is constrained by the connection relationships in the skeleton graph structure, so that the expansion of nodes is concentrated in the effective channels, greatly reducing the calculation of irrelevant idle areas. When a node expands from the current skeleton key point, only the skeleton key points directly connected to this point need to be checked, rather than traversing the entire free area, thereby significantly improving the calculation efficiency of path planning and ensuring that the path planning algorithm can be executed more efficiently in a complex environment.

[0090] The present invention extracts the skeleton key points of the map skeleton, constructs a skeleton graph structure based on the skeleton key points and the connection relationships between them, restricts the node expansion of the A* algorithm between the skeleton key points, and no longer expands to other areas of the free region, effectively avoiding accessing invalid areas, accelerating the node expansion speed of the A* algorithm, and enabling the path obtained by the search to solve the problem of redundant global paths caused by the strict dependence of the Voronoi algorithm on skeleton walking, reducing the path length during the operation of the robot.

[0091] In the path planning method based on the skeleton key points extracted from the free region of the present invention, the step of screening the skeleton key points from the skeleton pixel points includes:

[0092] Traverse each skeleton pixel point. When there is only another skeleton pixel point in the eight-neighborhood of the current skeleton pixel point, determine the current skeleton pixel point as the skeleton end point;

[0093] In order to determine the skeleton end points among the skeleton pixel points, in this embodiment, first traverse the eight-neighborhood of each skeleton pixel point and count the number of pixel points belonging to the skeleton pixel points in the eight-neighborhood of each skeleton pixel point.

[0094] As Figure 6 shown, G0 represents the currently traversed skeleton pixel point, and G1 to G8 represent the pixel points in the eight-neighborhood of the current skeleton pixel point.

[0095] Identify the skeleton pixel points that meet the following conditions as skeleton end points:

[0096] G1 + G2 + G3 + G4 + G5 + G6 + G7 + G8 = 255;

[0097] That is, when there is only one skeleton pixel point among the pixel points in the eight-neighborhood of the currently traversed skeleton pixel point, it is considered to be a skeleton end point at the skeleton edge.

[0098] When the current skeleton pixel point is at least the intersection of three branches, determine the current skeleton pixel point as the skeleton bifurcation point.

[0099] Furthermore, when it is considered that the currently traversed skeleton pixel point is at least the intersection of three branches, the currently traversed skeleton pixel point is the skeleton bifurcation point representing the bifurcation position of the map skeleton.

[0100] In order to realize the screening of the skeleton bifurcation points, in this embodiment, three branch conditions are defined as possible bifurcation situations to screen the skeleton bifurcation points.

[0101] One is the branch condition in the orthogonal direction: As Figure 7 shown in (a) and (b) of, that is, the skeleton presents an orthogonal intersection at the currently traversed skeleton bifurcation point.

[0102] The second is the branching condition in the diagonal direction: as shown in (a), (b), (c), and (d) in Figure 8 , that is, detecting the situation of forming branches on the main diagonal, indicating that the skeleton extends along the diagonal direction, usually manifested as some relatively "skewed" branch points.

[0103] The third is the branching condition in the mixed direction: as shown in (a), (b), (c), and (d) in Figure 9 , that is, combining the orthogonal direction and the diagonal direction to detect a more complex three-way connection structure, so as to further subdivide the position of the branch point.

[0104] It should be noted that Figures 7 to 9 the grid colors in Figure 7 are used to highlight the three branching situations, rather than representing the colors corresponding to the real pixel values. Taking the (a) figure in

[0105] as an example, in the figure, G0 is the current skeleton pixel point, the gray squares represent the skeleton pixel points that intersect orthogonally with it, and the white grids are other pixel points that are non-skeleton pixel points.

[0106] Table 1

[0107]

[0108]

[0109] Among them, conditions 1 and 2 in Table 1 correspond to the branching conditions in the orthogonal direction; conditions 3 to 6 in Table 1 correspond to the branching conditions in the diagonal direction; conditions 7 to 10 in Table 1 correspond to the branching conditions in the mixed direction.

[0110] Through the above-defined screening conditions, the skeleton endpoints and skeleton branch points can be screened out from the skeleton pixel points as skeleton key points.

[0111] In the path planning method of the skeleton key points based on free area extraction of the present invention, the skeleton key points further include the starting point and the target point of the robot.

[0112] Furthermore, if only the skeleton endpoints and skeleton branch points screened based on the map skeleton are used as the skeleton key points to construct the skeleton graph structure, in the subsequent global path planning of the robot, a skeleton key point closest to the starting point and the target point of the robot will be found first, and the path will be planned to the nearest skeleton key point first, and then a path will be obtained by searching the skeleton graph structure.

[0113] In such a manner, there may be a conflict between the skeleton key point closest to the starting point and the target point and the globally optimal path. For example, the skeleton key point closest to the starting point is in the direction where the starting point is far from the target point.

[0114] Therefore, to avoid such a conflict, in this embodiment, the starting point and the target point of the robot are also used as skeleton key points, preferably as skeleton endpoints, and together they serve as the basis for constructing the skeleton graph structure. Thus, when searching for the globally optimal path based on the skeleton graph structure, the starting point and the target point of the robot are directly included in the search scope.

[0115] In the path planning method based on the skeleton key points extracted from the free area of the present invention, before the step of constructing the skeleton graph structure based on the connection relationship between the skeleton key points and the skeleton key points, the following steps are further included:

[0116] In the case where there are other skeleton bifurcation points in the preset range centered on the skeleton bifurcation point, all the skeleton bifurcation points within the preset range are regarded as one skeleton bifurcation point for constructing the skeleton graph structure.

[0117] For the extracted map skeleton, since there may be noise or the skeleton may not be smooth at the intersections, multiple skeleton bifurcation points may be detected at the same intersection.

[0118] Therefore, to simplify the skeleton, a fixed preset range is defined for each skeleton bifurcation point. In this embodiment, it is a 3×3 grid area. All the skeleton bifurcation points within this preset range are regarded as the effective connection points of the same skeleton bifurcation point, that is, regarded as the equivalent points of the same skeleton bifurcation point, so as to construct a more concise skeleton graph structure.

[0119] In a feasible embodiment, the range expansion method is used to search each skeleton bifurcation point layer by layer. When other skeleton bifurcation points are detected within the preset range of the first skeleton bifurcation point, the other skeleton bifurcation points are deleted, or the information of the other skeleton bifurcation points is equivalent to the information of the first skeleton bifurcation point, and the search is gradually carried out within the expanded range until there are no remaining skeleton bifurcation points within the preset range of all skeleton bifurcation points.

[0120] By the above method, the redundant skeleton bifurcation points are effectively reduced, and thus a more concise skeleton graph structure can be constructed based on the screened skeleton bifurcation points.

[0121] In the path planning method based on the skeleton key points extracted from the free area of the present invention, the step of constructing the skeleton graph structure based on the connection relationship between the skeleton key points and the skeleton key points specifically includes:

[0122] Starting from each skeleton endpoint, search layer by layer along the path of the map skeleton until a skeleton bifurcation point or an obstacle is encountered, record the shortest path between the skeleton endpoint and the skeleton bifurcation point as a connection edge, and add it to the skeleton graph structure;

[0123] Based on the range expansion method, search for the skeleton bifurcation point, record the shortest path between the intersection points as a connection edge, and add it to the skeleton graph structure.

[0124] In this embodiment, constructing the skeleton graph structure based on the connection relationship between the skeleton key points is divided into two steps. One is to determine the connection between the skeleton endpoints and the skeleton bifurcation points, and the other is to determine the connection between the skeleton bifurcation points and the skeleton bifurcation points.

[0125] Specifically, for the connection between the skeleton endpoint and the skeleton bifurcation point, starting from each skeleton endpoint, search layer by layer along the skeleton path until a skeleton bifurcation point or an obstacle is encountered. By breadth-first search, it is possible to ensure finding the shortest path from the skeleton endpoint to the skeleton bifurcation point, and record the length of the shortest path as the cost of the connection. The connection cost is recorded in the form of Manhattan distance or Euclidean distance to adapt to global maps with different resolutions. During the search process, record the shortest path between the endpoint and the intersection point as a connection edge and add it to the skeleton graph structure.

[0126] For the connection between the skeleton bifurcation points and the skeleton bifurcation points, based on the range expansion method, search within the expansion range. Once the intersection of two different skeleton bifurcation points is detected, connect these two skeleton bifurcation points and there are no other skeleton key points directly between the two connected skeleton bifurcation points. Record the connection path and its length, record the shortest path between the skeleton bifurcation points and the skeleton bifurcation points as a connection edge, and add it to the skeleton graph structure.

[0127] Optionally, in a feasible embodiment, it is possible to simplify the number of skeleton bifurcation points during the process of searching for the connection between the skeleton bifurcation points and the skeleton bifurcation points.

[0128] Through the above method, the skeleton graph structure can be constructed based on the connection relationship between the skeleton key points, as Figure 10 shown, Figure 10 in (a) is the home environment, that is, the map skeleton graph extracted based on the free area in a simple environment; Figure 10 in (b) are the skeleton key points screened based on the map skeleton, where the red points represent the skeleton endpoints and the green points represent the skeleton bifurcation points; Figure 10 in (c) is the skeleton graph structure constructed based on the skeleton key points.

[0129] For a more complex environment, as Figure 11 shown,Figure 11 In (a), it is the map skeleton diagram obtained based on the extraction of the free area in a complex environment; Figure 11 In (b), they are the key skeleton points screened based on the map skeleton. Among them, the red points represent the skeleton endpoints, and the green points represent the skeleton bifurcation points; Figure 11 In (c), it is the skeleton diagram structure constructed based on the key skeleton points.

[0130] It can be seen that compared with the original map skeleton, the reconstructed skeleton diagram structure effectively reduces redundant nodes and invalid paths, and can retain the original topological structure of the map skeleton, providing a more efficient reference map structure for robot path planning. At the same time, the skeleton diagram structure constructed based on the key skeleton points and their connection relationships makes the environmental information more concise, enabling the path planning algorithm to focus more on the key paths during the search process.

[0131] In the path planning method based on the key skeleton points extracted from the free area of the present invention, the step of adding the skeleton diagram structure to the evaluation function of the A* algorithm to obtain an improved A* algorithm and using the improved A* algorithm to search for the movement path of the robot specifically includes:

[0132] Determine the estimated cost of the shortest path from the current key skeleton point to the target point of the robot based on the skeleton diagram structure, and construct the evaluation function of the A* algorithm;

[0133] Use the A* algorithm to search the skeleton diagram structure based on the constructed evaluation function to obtain the movement path of the robot.

[0134] After constructing the skeleton diagram structure, add it to the evaluation function of the A* algorithm, thereby constructing the evaluation function of the A* algorithm based on the skeleton diagram structure:

[0135]

[0136] In the formula, f(n) is the estimated cost for the robot to reach the target point from the starting point through the key skeleton point n; g(n) is the actual cost from the starting point to a certain intermediate key skeleton point n; h goal (n) is the heuristic function of the A* algorithm, representing the estimated cost from a certain intermediate key skeleton point n to the target point, generally using the Euclidean distance; h graph (n) is the estimated cost of the shortest path from the current key skeleton point to the target point of the skeleton diagram structure.

[0137] Among them, (x s , y s ) represents the starting point of the robot, (x goal , y goal ) represents the target point of the robot, (x n , yn ) It represents the calculation method of a certain skeleton key point n in the middle. By using the constructed skeleton graph structure, the shortest paths between all skeleton key points are pre-calculated, and during the subsequent path planning process, the shortest paths between skeleton key points are queried. The weight of each connecting edge, that is, the queried shortest path, is used as the cost increment, and the node expansion direction is controlled through the adjacency relationship between skeleton points.

[0138] α and β are adjustment parameters for relevant costs. α is used to adjust the weight of the connecting edge distance of the skeleton graph structure in the evaluation function. The larger α is, the more the planned path will fit the skeleton. The larger β is, the greater the attraction of the target point to the robot, so that the planned path will not strictly follow the skeleton graph structure.

[0139] In the present invention, a map skeleton is generated in the free area, then the skeleton key points of the map skeleton are extracted, combined with the starting point and the target point of the robot, a skeleton graph structure is constructed, and it is introduced into the A* algorithm to search between the skeleton key points of the skeleton graph structure until the target point in the skeleton graph structure is found, and the nodes are backtracked to connect the starting point and the target point, then a final global path can be found. By abandoning the condition of path search based on the generated skeleton graph in the traditional skeleton algorithm and changing it to only need to search the skeleton graph structure for path search, the extracted path is the global optimal path.

[0140] Next, the path planning device based on the skeleton key points extracted from the free area provided by the present invention will be described. The path planning device based on the skeleton key points extracted from the free area described below can be correspondingly referred to the path planning method based on the skeleton key points extracted from the free area described above.

[0141] As Figure 12 shown, the path planning device based on the skeleton key points extracted from the free area of the present invention includes an extraction module 1201, a construction module 1202, and a search module 1203;

[0142] The extraction module 1201 is used to perform skeleton extraction based on the free area in the environmental grid map of the robot, obtain the map skeleton and determine the skeleton pixel points;

[0143] Obtain the global map of the robot. As Figure 2 shown in (a) of, the global map represents the surrounding environment information by white, black, and gray colors. Among them, the black pixel value is 0, representing obstacles, the gray pixel value is the intermediate value between 0 and 255, representing the unknown area, and the white pixel value is 255, representing the free area.

[0144] Furthermore, perform binary processing on the global map to obtain the environmental grid map, as Figure 2 shown in (b) of.

[0145] In a specific embodiment, assume that the pixel value of the original map is Grid(i,j), and the pixel value of the binarized map is G(i,j), where (i,j) represents the pixel coordinates of the map. At the same time, set a pixel threshold T, traverse each pixel value in the original map, compare it with the pixel threshold T one by one, set the pixel value less than the threshold to 0, which is black, and vice versa to 255, which is white, to achieve binarization processing:

[0146]

[0147] Through binarization, the amount of data in the original global map is greatly reduced, and the outline of the environmental boundary can be clearly highlighted.

[0148] On this basis, perform morphological opening operation on the binarized map. Morphological opening operation is a process of first eroding the image and then dilating it, which has the effect of removing isolated points and burrs in the image. Define the white area in the binarized map as structure A, define a structuring element B, and specify a comparison center point for the structuring element B, which is the reference point for the structuring element to participate in the morphological opening operation.

[0149] The understanding of erosion is: when set B is completely contained in set A, the set of the origin positions of B is the result of B eroding A. The understanding of dilation is: after reflecting the structuring element B and moving it on image A, when there is an intersection between A and the reflection of B, the set of all points passed by the origin of the reflection of B is the result of B dilating A. Specifically, it is shown as the following formula:

[0150]

[0151] As Figure 3 shown in (a) and (b) of [reference], where the part of the gray frame is the magnification of the part of the green frame. Through the opening operation, the noise and miscellaneous spots on the original map are eliminated, and the edges and burrs of the map boundary and obstacle contours are smoothed. The overall area size and position remain almost unchanged, but there are some white noise points and burrs at the uneven black contours in the original binary map. After the opening operation, all the white noise points have been removed, and the discontinuous parts of the black contours on the boundary have also been filled.

[0152] On this basis, the preprocessing steps of the original map are completed, and then the free space in the map after the opening operation, that is, the white area, is skeletonized to obtain the map skeleton.

[0153] In a specific embodiment, before extracting the map skeleton, traverse the pixel points in the map, put the pixel points with pixel value 255 into the container Points, and then further traverse each pixel point in the container Points.

[0154] As shown Figure 4 in the figure, all the pixel points in the container Points are traversed in sequence using the eight-neighborhood method. Let the currently traversed pixel point be V0, and V1 to V8 are the pixel values of the eight neighbors of V0 on the map. During the traversal process, the number of times the pixel values change in the eight neighbors of each pixel point in the container Points is counted. Among the pixel points V1 to V8 in the eight neighbors of V0, the number of times of changing from 0 to 255 in clockwise order is denoted as P(V0), the number of pixel points with a pixel value of 255 in the eight neighbors is denoted as Q(V0), and the number of times of changing from 0 to 255 in clockwise order of the pixel value V x in the eight neighbors in clockwise order from 0 to 255 is denoted as M(V x ).

[0155] Set the pixel value of the pixel point V0 that meets the following conditions to 0, and at the same time delete V0 from the container Points:

[0156] Condition 1: P(V0) = 1;

[0157] Condition 2: 2 ≤ Q(V0) ≤ 6;

[0158] Condition 3: V1·V3·V7 = 0 || M(V1) ≠ 1;

[0159] Condition 4: V1·V3·V5 = 0 || M(V3) ≠ 1;

[0160] Continuously loop through each pixel point in the container Points until there is no pixel point V0 in the container Points that meets the above four conditions, and then stop the loop. At this time, the points stored in the container Points and the pixel points with a value of 255 in the map are the extracted skeleton pixel points, which constitute the map skeleton.

[0161] As shown Figure 5 in (a) and (b) of the figure, the part outlined by the dashed line in (a) is the redundant map skeleton. Extracting the skeleton from the preprocessed map can reduce the interference of map noise compared with direct extraction, and obtain a clearer and more definite map skeleton.

[0162] Construct module 1202, which is used to screen out skeleton key points from the skeleton pixel points, and construct a skeleton graph structure based on the connection relationship between the skeleton key points, where the skeleton key points include skeleton endpoints and skeleton bifurcation points;

[0163] Furthermore, screen all the skeleton pixel points to obtain skeleton key points.

[0164] Among them, the skeleton key points include skeleton endpoints and skeleton bifurcation points.

[0165] It can be understood that the skeleton endpoints are the skeleton pixel points located at the end of the skeleton, usually at the map boundary; the skeleton bifurcation points are the skeleton pixel points where the skeletons cross in the middle of the skeleton.

[0166] As Figure 5 shown in (b) of [], usually, the extracted map skeleton is an irregular curve with redundancy. Directly performing path search based on the extracted map skeleton will also be affected by redundant nodes and invalid paths.

[0167] Therefore, based on the extracted map skeleton, the present invention further determines the skeleton endpoints and skeleton bifurcation points as key points characterizing the topological structure of the map skeleton. Based on this, based on the connection relationships between the skeleton endpoints and the skeleton bifurcation points, and between the skeleton bifurcation points and the skeleton bifurcation points, the map skeleton is reconstructed to obtain a skeleton graph structure, so that the obtained skeleton graph structure has more concise environmental information.

[0168] The search module 1203 is used to add the skeleton graph structure to the evaluation function of the A* algorithm to obtain an improved A* algorithm, and use the improved A* algorithm to search for the movement path of the robot.

[0169] The A* (A-Star) algorithm is a heuristic path search algorithm that dynamically balances the cost of the path already traveled and the estimated remaining cost through an evaluation function to efficiently find the shortest path between two points in the map.

[0170] By introducing the constructed skeleton graph structure into the evaluation function of the A* algorithm to use the connection relationships in the skeleton graph structure to constrain the expansion area, the expansion of nodes is concentrated in the effective channels, greatly reducing the calculation of irrelevant idle areas. When a node expands from the current skeleton key point, only the skeleton key points directly connected to this point need to be checked, rather than traversing the entire free area, thereby significantly improving the calculation efficiency of path planning and ensuring that the path planning algorithm can be executed more efficiently in a complex environment.

[0171] The present invention extracts the skeleton key points of the map skeleton, constructs a skeleton graph structure based on the skeleton key points and the connection relationships between them, restricts the expansion of A* algorithm nodes between the skeleton key points, and no longer expands to other areas of the free area, effectively avoiding accessing invalid areas, accelerating the node expansion speed of the A* algorithm, and making the path obtained by the search solve the problem of global path redundancy caused by the strict dependence of the Voronoi algorithm on skeleton walking, reducing the path length during the operation of the robot.

[0172] Figure 13 Illustrates a schematic diagram of the physical structure of an electronic device, such as Figure 13As shown in the figure, the electronic device may include: a processor 1310, a communications interface 1320, a memory 1330, and a communication bus 1340. Among them, the processor 1310, the communications interface 1320, and the memory 1330 complete communication with each other through the communication bus 1340. The processor 1310 may call the logical instructions in the memory 1330 to execute a path planning method for skeleton key points based on free area extraction. The method includes: performing skeleton extraction based on the free area in the environmental grid map of the robot to obtain a map skeleton and determine skeleton pixel points; screening out skeleton key points from the skeleton pixel points, and constructing a skeleton graph structure based on the connection relationship between the skeleton key points, where the skeleton key points include skeleton endpoints and skeleton bifurcation points; adding the skeleton graph structure to the evaluation function of the A* algorithm to obtain an improved A* algorithm, and using the improved A* algorithm to search for the movement path of the robot.

[0173] In addition, when the logical instructions in the above-mentioned memory 1330 are implemented in the form of software functional units and sold or used as independent products, they may be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or a part of the technical solution, may be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in various embodiments of the present invention. The foregoing storage medium includes: various media such as USB flash drives, mobile hard disks, read-only memories (ROM, Read-Only Memory), random access memories (RAM, Random Access Memory), magnetic disks, or optical discs that can store program codes.

[0174] On the other hand, the present invention also provides a computer program product, which includes a computer program that can be stored on a non-transitory computer-readable storage medium. When the computer program is executed by a processor, the computer can execute the path planning method of the skeleton key points based on free area extraction provided by the above-mentioned various methods. The method includes: performing skeleton extraction based on the free area in the environmental grid map of the robot to obtain a map skeleton and determine skeleton pixel points; screening out skeleton key points from the skeleton pixel points, and constructing a skeleton graph structure based on the connection relationship between the skeleton key points, where the skeleton key points include skeleton end points and skeleton bifurcation points; adding the skeleton graph structure to the evaluation function of the A* algorithm to obtain an improved A* algorithm, and using the improved A* algorithm to search for the movement path of the robot.

[0175] In another aspect, the present invention also provides a non-transitory computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, it is implemented to execute the path planning method of the skeleton key points based on free area extraction provided by the above-mentioned various methods. The method includes: performing skeleton extraction based on the free area in the environmental grid map of the robot to obtain a map skeleton and determine skeleton pixel points; screening out skeleton key points from the skeleton pixel points, and constructing a skeleton graph structure based on the connection relationship between the skeleton key points, where the skeleton key points include skeleton end points and skeleton bifurcation points; adding the skeleton graph structure to the evaluation function of the A* algorithm to obtain an improved A* algorithm, and using the improved A* algorithm to search for the movement path of the robot.

[0176] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place, or may be distributed to multiple network units. Some or all of the modules can be selected according to actual needs to achieve the purpose of the solution of this embodiment. Those of ordinary skill in the art can understand and implement it without creative efforts.

[0177] Through the description of the above embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus a necessary general hardware platform, and of course, it can also be implemented by hardware. Based on such an understanding, the above technical solution, in essence, or the part that contributes to the prior art can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to enable a computer device (which can be a personal computer, server, or network device, etc.) to execute the methods described in each embodiment or some parts of the embodiments.

[0178] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and are not intended to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that they can still modify the technical solutions described in the foregoing embodiments, or perform equivalent replacements for some of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A path planning method based on skeleton key points extracted from free areas, characterized in that: include: The skeleton is extracted based on the free area in the robot's environment grid map to obtain the map skeleton and determine the skeleton pixel points; Screening out skeleton key points from the skeleton pixel points, and constructing a skeleton graph structure based on the skeleton key points and the connection relationship between the skeleton key points, wherein the skeleton key points include skeleton endpoints and skeleton bifurcation points; The skeleton graph structure is added to the evaluation function of the A* algorithm to obtain an improved A* algorithm, and the moving path of the robot is searched using the improved A* algorithm.

2. The path planning method based on skeleton key points extracted from free areas according to claim 1 is characterized in that: The step of screening the skeleton pixel points to obtain skeleton key points comprises: Traversing each skeleton pixel point, when there is only another skeleton pixel point in the eight-neighborhood of the current skeleton pixel point, determining the current skeleton pixel point as the skeleton endpoint; When the current skeleton pixel point is at least an intersection point where three branches intersect, the current skeleton pixel point is determined as a skeleton bifurcation point.

3. The path planning method based on skeleton key points extracted from free areas according to claim 1, characterized in that: The skeleton key points also include the starting point and the target point of the robot.

4. The path planning method based on skeleton key points extracted from free areas according to claim 1, characterized in that: Before the step of constructing a skeleton graph structure based on the skeleton key points and the connection relationship between the skeleton key points, the step further includes: In the case that there are other skeleton bifurcation points in a preset range centered on the skeleton bifurcation point, all skeleton bifurcation points in the preset range are regarded as one skeleton bifurcation point for constructing the skeleton graph structure.

5. The path planning method based on skeleton key points extracted from free areas according to claim 1, characterized in that: The step of constructing a skeleton graph structure based on the skeleton key points and the connection relationship between the skeleton key points specifically includes: Starting from each skeleton endpoint, searching layer by layer along the path of the map skeleton until encountering a skeleton bifurcation point or obstacle, recording the shortest path between the skeleton endpoint and the skeleton bifurcation point as a connecting edge, and adding it to the skeleton graph structure; The skeleton bifurcation points are searched based on the range expansion method, and the shortest paths between intersections are recorded as connecting edges and added to the skeleton graph structure.

6. The path planning method based on skeleton key points extracted from free areas according to any one of claims 1 to 5, characterized in that: The step of adding the skeleton graph structure to the evaluation function of the A* algorithm to obtain an improved A* algorithm, and using the improved A* algorithm to search for a moving path of the robot specifically includes: Determine the estimated cost of the shortest path from the current skeleton key point to the robot's target point based on the skeleton graph structure, and construct the evaluation function of the A* algorithm; Based on the constructed evaluation function, the skeleton graph structure is searched using the A* algorithm to obtain the movement path of the robot.

7. A path planning device based on skeleton key points extracted from free areas, characterized in that: include: An extraction module is used to extract the skeleton based on the free area in the robot's environment grid map, obtain the map skeleton and determine the skeleton pixel points; A construction module, used for screening skeleton key points from the skeleton pixel points, and constructing a skeleton graph structure based on the skeleton key points and the connection relationship between the skeleton key points, wherein the skeleton key points include skeleton endpoints and skeleton bifurcation points; The search module is used to add the skeleton graph structure to the evaluation function of the A* algorithm to obtain an improved A* algorithm, and use the improved A* algorithm to search and obtain the movement path of the robot.

8. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the program, the path planning method based on skeleton key points extracted from free areas as described in any one of claims 1 to 6 is implemented.

9. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the path planning method based on skeleton key points extracted from free areas as claimed in any one of claims 1 to 6 is implemented.

10. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the path planning method based on skeleton key points extracted from free areas as claimed in any one of claims 1 to 6 is implemented.