PATH PLANNING METHOD OF MOBILE ROBOTS BASED ON IMAGE PROCESSING
20230236605 · 2023-07-27
Inventors
- An Cui (Changchun, CN)
- Tianmengyu Liang (Changchun, CN)
- Liyuan Liu (Changchun, CN)
- Yaohui Ma (Changchun, CN)
- Yingping Xu (Changchun, CN)
- Mengmeng Yang (Changchun, CN)
Cpc classification
Y02T10/40
GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
G05D1/0214
PHYSICS
International classification
Abstract
A path planning method of mobile robots based on image processing is provided and includes: S1, preprocessing a map image: calculating a safety distance between a mobile robot and a surrounding obstacle during a movement of the mobile robot based on external geometric features of the mobile robot, forming a circular range on the map image with a expansion point as a center and the safety distance as an expansion radius to set a safety range, and marking the safety range; performing skeleton feature extraction on the map image after the marking to obtain a reference path map; S2, obtaining an initial path; and S3, optimizing the initial path. The path planning method improves the flexibility of the algorithm and has high robustness and operational efficiency, and the optimal path obtained can ensure the moving safety of the mobile robot.
Claims
1. A path planning method of mobile robots based on image processing, comprising: preprocessing of a map image: calculating a safety distance s between a mobile robot and a surrounding obstacle during a movement of the mobile robot based on external geometric features of the mobile robot, forming a circular range on the map image with a boundary point of the obstacle as a center and the safety distance s as a expansion radius to set a safety range, and marking the safety range; performing skeleton feature extraction on the map image after the marking to obtain a reference path map; obtaining of an initial path: building an adjacency matrix, and performing path solution on the reference path map based on the adjacency matrix to obtain the initial path; optimizing the initial path: performing neighborhood expansion on the initial path to obtain an expansion path; performing segmentation on the expansion path to obtain n numbers of segmented paths, and optimizing the n numbers of segmented paths separately; splicing the n numbers of segmented paths after the optimizing to obtain an optimized full path; wherein the performing segmentation on the expansion path to obtain n numbers of segmented paths, and optimizing the n numbers of segmented paths separately, comprises: determining a segment length cd of each of the n numbers of segmented paths; searching each of path points on the initial path and obtaining coordinates of the path points in each the segmented path; calculating minimum and maximum values of horizontal and vertical coordinates in coordinate points, respectively, for each the segmented path, and the minimum and maximum values being denoted as: [i.sub.min: i.sub.max, j.sub.min: j.sub.max]; calculating a size of an area to be extracted by i.sub.min, i.sub.max, j.sub.min, j.sub.max;
w=i.sub.max−i.sub.min+1;
l=j.sub.max−j.sub.min+1; where w is a width of an extracted area, and l is a length of the extracted area; the extracted area for each the segmented path being: [i.sub.min: i.sub.max, j.sub.min:j.sub.max]; building an adjacency matrix for each the segmented path; optimizing each the segmented path; and obtaining an optimization result for the n numbers of segmented paths; wherein the path planning method further comprises: controlling a mobile robot to move along the optimized full path.
2. The path planning method of mobile robots based on image processing according to claim 1, wherein the preprocessing of the map image further comprises: binarizing the map image to obtain a binarized map image, and setting the safety range on the binarized map image.
3. The path planning method of mobile robots based on image processing according to claim 1, wherein setting the safety range and marking the safety range comprises: calculating the safety distance and the safety range based on the external geometric features of the mobile robot; identifying boundary points of the obstacle on the map image; obtaining coordinates of one of the boundary points; marking points in the map image within a circular safety range set with the one of the boundary points of the obstacle as a center as 0; repeating the operation of obtaining coordinates of one of the boundary points to the operation of marking points in the map image within a circular safety range set with the one of the boundary points of the obstacle as a center as 0 until the boundary points are set with safety ranges.
4. (canceled)
5. The path planning method of mobile robots based on image processing according to claim 1, wherein the splicing the n numbers of segmented paths after the optimizing to obtain an optimized full path, comprises: setting a coordinate matrix of the n numbers of segmented paths; deleting redundant points on each of the n numbers of segmented paths to obtain a further optimized segmented path; recording coordinates (i, j) of each of path points in each the segmented path; obtaining a coordinate position of each the path point in the map image and recording the coordinate position:
6. A path planning method of mobile robots based on image processing, comprising: preprocessing of a map image: calculating a safety distance s between a mobile robot and a surrounding obstacle during a movement of the mobile robot based on external geometric features of the mobile robot, forming a circular range on the map image with a boundary point of the obstacle as a center and the safety distance s as a expansion radius to set a safety range, and marking the safety range; performing skeleton feature extraction on the map image after the marking to obtain a reference path map; obtaining of an initial path: building an adjacency matrix, and performing path solution on the reference path map based on the adjacency matrix to obtain the initial path; optimizing the initial path, comprising: performing neighborhood expansion on the initial path to obtain an expansion path; performing segmentation on the expansion path to obtain n numbers of segmented paths, and optimizing the n numbers of segmented paths separately; splicing the n numbers of segmented paths after the optimizing to obtain an optimized full path, comprising: setting a coordinate matrix of the n numbers of segmented paths; deleting redundant points on each of the n numbers of segmented paths to obtain a further optimized segmented path; recording coordinates (i, j) of each of path points in each the segmented path; obtaining a coordinate position of each the path point in the map image and recording the coordinate position:
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0042] In order to explain embodiments of the disclosure or technical solutions of the related art more clearly, the drawings needed to be used in the description of the embodiments or the related art will be briefly introduced below. It is obvious that the drawings in the description below are only the embodiments of the disclosure. For those skilled in the art, other drawings can also be obtained according to the provided drawings without creative labor.
[0043]
[0044]
[0045]
[0046]
[0047]
[0048]
[0049]
[0050]
[0051]
[0052]
[0053]
[0054]
[0055]
[0056]
[0057]
[0058]
[0059]
[0060]
[0061]
[0062]
DETAILED DESCRIPTION OF THE EMBODIMENTS
[0063] The technical solutions in the embodiments of the disclosure will be clearly and completely described below in conjunction with the accompanying drawings in the embodiments of the disclosure, and it is clear that the described embodiments are only some of the embodiments of the disclosure, and not all of them. Based on the embodiments in the disclosure, all other embodiments obtained by those skilled in the art without making creative labor fall within the scope of protection of the disclosure.
[0064] Every pixel point in the map image can be involved in the operation, resulting in a huge amount of data and low efficiency of the algorithm operation. At the same time, considering external geometric features of the mobile robot to avoid collision with objects in the surrounding environment during its movement, the images need to be preprocessed to obtain a safe reference path map.
[0065] The embodiment of the disclosure provides a path planning method of mobile robots based on image processing, as shown in
[0066] S1, preprocessing of a map image: based on external geometric features of a mobile robot, calculating a safety distance s between the mobile robot and surrounding obstacles during its movement, forming a circular range with an expansion point as a center and a safety distance s as an expansion radius on the map image to set a safety range, and marking the safety range; performing skeleton feature extraction on the map image after marking to obtain a reference path map, as shown in
[0067] S2, obtaining of an initial path: building an adjacency matrix and performing path solution on the reference path map based on the adjacency matrix to obtain the initial path.
[0068] S3, optimizing the initial path:
[0069] S31, performing neighborhood expansion on the initial paths to obtain an expansion path.
[0070] S32, segmenting the expansion path to obtain n numbers of segmented paths, and optimizing them separately for each segmented path;
[0071] S33, splicing the optimized segmented paths to obtain an optimized full path.
[0072] To further implement the above technical solution, the process of preprocessing the map image in the S1 further includes:
[0073] binarizing the map image to obtain a binarized map image, and setting the safety range on the binarized map image.
[0074] Note that:
[0075] Let r.sub.i be a distance from a point on the mobile robot in the horizontal plane to a center of turning a corner of the mobile robot, in order to make the mobile robot in movement without collision with the obstacle, the safety distance s should satisfy the following condition:
s≥max(r.sub.i).
[0076] In this embodiment, Dijkstra's algorithm is used for initial path solving. Dijkstra's algorithm is implemented based on the adjacency matrix. The adjacency matrix is a matrix that represents the distance among moveable points in the path. The horizontal and vertical coordinates in the matrix represent the movable points. And the elements in the matrix represent the through-joining relationship between two points, 0 means no connection between the two points, and the rest of the numbers represent the distance between the two points.
[0077] The process of building the adjacency matrix and the reverse conversion process from the adjacency matrix to the map image are shown in
[0078] The Dijkstra's algorithm is further used in this embodiment to solve the path for the reference path map to obtain the initial path, as shown in
[0079] In order to prevent the mobile robot from “rubbing” when following the track and reduce the possibility of collision of the mobile robot, setting a safety distance coefficient α greater than 1, and the safety distance is:
s=α.Math.max(r.sub.i).
[0080] To further implement the above technical solution, as shown in
[0081] S11, calculating the safety distance of the mobile robot and calculating the safety range based on the external geometric features of the mobile robot;
[0082] S12, identifying all boundary points of the obstacles on the map image;
[0083] S13, obtaining coordinates of one of the boundary points;
[0084] S14, marking all points within the circular safety range set at the center of the one boundary point in the map image as 0;
[0085] S15, repeating the S13 to the S14 until all the boundary points are set with the safety ranges.
[0086] Note that:
[0087] Using the interpoint marking method, any location in the blank part of the map is designated as the start/end point as needed, and then the safety range is automatically marked by the interpoint marking method according to the designated location after designation.
[0088] The mathematical representation is as follows.
[0089] After using the interpoint marking method, the effect is shown in
[0090] To further implement the above technical solution, the specifics of the S32 include:
[0091] S321, determining the segment length cd of each segmented path;
[0092] S322, searching each path point on the initial path and obtaining the coordinates of all path points in each segmented path;
[0093] S323, calculating, for each segmented path, the minimum and maximum values of the horizontal and vertical coordinates in the coordinate points, noted as: [i.sub.min:i.sub.max,j.sub.min:j.sub.max];
[0094] S324, calculating a size of the area to be extracted by i.sub.min, i.sub.max, j.sub.min, j.sub.max:
w=i.sub.max−i.sub.min+1;
l=j.sub.max−j.sub.min+1;
[0095] where w is a width of an extracted area and l is a length of the extracted area;
[0096] S325, the extracted area for each segmented path being: [i.sub.min:i.sub.max, j.sub.min:j.sub.max];
[0097] S326, building an adjacency matrix of each segmented path;
[0098] S327, optimizing each segmented path;
[0099] S328, obtaining an optimization result of all segmented paths.
[0100] It is important to note that:
[0101] In this embodiment, the segment length cd of the segmented path is determined, and the length can be set to [500,1000], as shown in
[0102] It should be noted that nodes of the segments are not able to participate in the optimization process when the optimization is performed multiple times, which will reduce the optimization effect of the algorithm. Therefore, the mode of multiple segment length cd recycling can be used, so that the nodes of each segment can participate in the optimization process in the next segment optimization process.
[0103] To further implement the above technical solution, the specifics of the S33 include:
[0104] S331, setting the coordinate matrix of the segmented paths;
[0105] S332, removing redundant points on each segmented path to obtain a further optimized segmented path;
[0106] S333, recording the coordinates (i, j) of each path point in each segmented path;
[0107] S334, obtaining the coordinate position of each path point in the map image and recording is:
[0108] where (i′, j′) is the coordinates of the path point in the map image.
[0109] S335, inputting the coordinates of the path points on each segmented path into the path coordinate matrix in turn to complete the splicing of the segmented paths.
[0110] Note that:
[0111] the optimized path is obtained after further optimization of the segmented path as shown in
[0112] The disclosure will be further illustrated by simulation validation as follows.
[0113] 1. Multi-Obstacle Environment Map Image
[0114] The multi-obstacle environment map, which contains multiple, multi-shaped obstacles inside, is mainly used to test and debug the solution and verify whether its performance can meet the requirements. As shown in
[0115] 2. Special Environment Map Image
[0116] The special environment map is a map with a special shape and generally has some specific test purpose, which is mainly used to check the adaptability of the scheme in some extreme situations or to individually test a certain performance of the scheme. As shown in
[0117] The disclosure proposes the path planning method of mobile robots based on image processing. The image containing environmental information is used as the environment map to improve the efficiency of map building; the method of image pre-processing and setting safety distance is used to ensure the moving safety of the mobile robot and to improve the operation efficiency of the scheme; the optimal path can be obtained by using Dijkstra's algorithm and combining path segmentation and path splicing methods. Through the simulation verification of the scheme, it is found that the scheme improves the flexibility of the algorithm, has high robustness, operation efficiency, and the obtained optimal path can guarantee the moving safety of the mobile robot.
[0118] In this specification, each embodiment is described in a progressive manner. Each embodiment focuses on the differences from other embodiments. The same and similar parts of each embodiment can be referred to each other. For the device disclosed in the embodiment, since it corresponds to the method disclosed in the embodiment, the description is relatively simple, and please refer to the description of the method section for relevant parts.
[0119] The above description of the disclosed embodiments enables those skilled in the art to realize or use the disclosure. Various modifications to these embodiments will be apparent to those skilled in the art, and the general principles defined in the disclosure can be implemented in other embodiments without departing from the spirit or scope of the disclosure. Therefore, the disclosure will not be limited to the embodiments shown in the disclosure, but will conform to the widest scope consistent with the principles and novel features disclosed in the disclosure.