A fast mapping method, chip and mobile robot

By generating undirected graphs and multi-fork trees, using the number of pixel transformations to find the target points to be explored, and using the depth-first search algorithm to explore in an orderly manner, the problem of inefficient rapid graph building in the existing technology is solved, and an efficient graph building process is realized.

CN115451935BActive Publication Date: 2025-09-05AMICRO SEMICONDUCTOR CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202110643723.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-06-09
Publication Date
2025-09-05
Estimated Expiration
2041-06-09

AI Technical Summary

Technical Problem

In the prior art, the rapid map construction method is inefficient because the random generation of target points to be explored lacks correlation, which causes the robot to repeatedly explore unknown areas.

Method used

By generating undirected graphs and multi-fork trees, use the number of pixel transformations to find the target points to be explored, and use the depth-first search algorithm to explore in an orderly manner, generating skeleton graphs and multi-fork trees to improve exploration efficiency.

Benefits of technology

It has achieved the realization that while ensuring high coverage, the efficiency of map construction is significantly improved, repeated exploration is avoided, and the exploration efficiency of mobile robots is improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115451935B_ABST
    Figure CN115451935B_ABST
Patent Text Reader

Abstract

The present invention discloses a rapid mapping method, chip and mobile robot. The method described in the present invention generates a skeleton graph representing the connectivity of a static map, obtains target points to be explored based on pixel transformation of pixels on the skeleton graph rather than random generation, and sorts the target points to be explored, so that the mobile robot can explore unknown areas in an orderly manner, avoiding low mapping efficiency due to repeated exploration.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of intelligent mobile robot SLAM, and in particular to a fast mapping method, a chip and a mobile robot. Background Art

[0002] Rapid mapping is a crucial function for intelligent mobile robots. Currently, mainstream rapid mapping methods are based on derivatives of the Rapid Exploration Random Tree (RRT). The RRT method's advantage lies in its ease of application: it simply generates target points within the area to be explored, eliminating the need for algorithmic modeling or geometric partitioning of the area. Furthermore, the RRT method offers high coverage within the search space and a wide search range. However, the RRT method also has limitations. Because the target points to be explored are randomly generated and lack correlation between them, the robot may experience repetitive back-and-forth movements during exploration, preventing orderly exploration and resulting in inefficient rapid mapping. Summary of the Invention

[0003] To address the above issues, the present invention provides a rapid mapping method, chip, and mobile robot that significantly improves mapping efficiency while ensuring rapid mapping with high coverage. The specific technical solutions of the present invention are as follows:

[0004] A rapid mapping method comprises the following steps: Step S1: After refreshing a static map, to-be-explored target points are identified based on the number of pixel transformations and an undirected graph is generated; Step S2: Based on the undirected graph, a multitree is generated, and the multitree is then traversed to obtain a sequence of to-be-explored target points; Step S3: Starting from the current exploration position, a mobile robot explores the to-be-explored target points in the order of the sequence of to-be-explored target points; wherein the mobile robot sets a visited mark for each target point explored, and refreshes the static map once each time a target point is explored. Steps S1 to S3 are repeated until all to-be-explored target points in the sequence of to-be-explored target points are marked as visited, thereby achieving map construction. Compared to existing technologies, this technical solution obtains to-be-explored target points based on pixel transformation rather than random generation, and sorts the to-be-explored target points, allowing the mobile robot to explore unknown areas in an orderly manner and avoiding inefficient mapping due to repeated exploration.

[0005] Furthermore, in step S1, before finding the target point to be explored based on the number of pixel transformations, a skeleton graph representing the connectivity of the static map is generated. The method includes: step S11, extracting and determining the boundary points of obstacles in the static map. If there are no other boundary points within the eight-neighborhood of the boundary point, the boundary point is considered an isolated point and deleted, retaining the remaining boundary points and proceeding to step S12; step S12, constructing a Delaunay triangulation based on the remaining boundary points in step S11, and then generating the perpendicular bisectors of each edge of each triangle in the Delaunay triangulation; step S13, constructing Thiessen polygons with the perpendicular bisectors as edges and the intersection of the perpendicular bisectors as vertices. After deleting the Delaunay triangulation, the skeleton graph is obtained. Deleting isolated points can make the map as simple as possible, facilitating the subsequent identification of the target point to be explored; the skeleton graph can reflect the connected domain information.

[0006] Furthermore, in step S1, the method of finding the target point to be explored and generating an undirected graph based on the number of pixel transformations specifically includes: step S15, on the skeleton graph, if there are two pixel transformations within the eight neighborhoods of a pixel point, then the pixel point is set as an end point; if there are six or more pixel transformations within the eight neighborhoods of a pixel point, then the pixel point is set as an intersection point; wherein the target point to be explored includes intersection points and end points, and the intersection points and end points include the map coordinate information of the point and the intersection and / or end point information connected to the point; step S16, connecting lines based on the connectivity of the intersection points and end points to generate the undirected graph; wherein the connecting lines are the edges of the undirected graph. The undirected graph can reflect the correlation between the target points to be explored.

[0007] Furthermore, the method for determining the number of pixel transformations in step S15 specifically includes: step S151, traversing all points on the eight-neighborhood of a pixel point in the skeleton image, wherein the traversal starting point is any point and the traversal end point is the same as the traversal starting point; step S152, during the traversal process, if the colors of two adjacent points are inconsistent, a pixel transformation is recorded, and the number of pixel transformations of the pixel point can be obtained after the traversal is completed; wherein, the skeleton of the skeleton image and the background of the skeleton image are marked with different colors.

[0008] Furthermore, in step S2, the method for generating a polytree based on the undirected graph specifically includes: generating a polytree for the first time: setting the intersection point closest to the mobile robot in the undirected graph as a root node and placing it at the top layer of the tree structure, placing the points directly connected to the intersection point on the second layer of the tree structure, placing the points directly connected to the points in the second layer on the third layer of the tree structure, and so on, to generate the polytree; generating a polytree for the non-first time: placing the intersection points and / or end points in the undirected graph that are not placed on the polytree on the basis of the polytree generated last time according to the above method. Converting the undirected graph into a polytree facilitates the subsequent sorting of the target points to be explored.

[0009] Furthermore, in step S2, the mobile robot traverses the multi-branch tree using a depth-first search algorithm, which occupies less memory and can find all nodes in the multi-branch tree.

[0010] Furthermore, in step S3, the mobile robot begins exploring the target points to be explored from its current exploration position in the order of the sequence of target points to be explored, and performs the following judgments: if the target point to be explored is an intersection, the mobile robot does not explore it and proceeds to the next target point to be explored in the order of the sequence of target points to be explored; if the target point to be explored is an end point, the mobile robot explores it; and based on the connectivity between points in the undirected graph, if the target point to be explored is an end point and is not connected to the mobile robot's current exploration position, the mobile robot first moves to an intersection that is connected to both the next target point to be explored and the mobile robot's current exploration position, and then proceeds to the next target point to be explored for exploration. The intersection and its neighborhood are known areas, and making this judgment in advance can avoid repeated exploration and improve efficiency.

[0011] A mobile robot, configured to implement the rapid mapping method, includes: a skeleton graph generation module configured to generate a skeleton graph representing the connectivity of a static map to obtain target points to be explored; an undirected graph generation module configured to generate an undirected graph based on the target points to be explored in the skeleton graph; a multitree generation module configured to generate a multitree based on the undirected graph to facilitate depth-first traversal; a depth-first traversal module configured to traverse the multitree to achieve sorting of the target points to be explored; and a mapping module configured to refresh the static map after exploring the target points to achieve map construction. Compared to the prior art, the present technical solution can generate an undirected graph capable of representing the associations between the target points to be explored through the undirected graph generation module, and then achieve sorting of the target points to be explored through the depth-first traversal module, thereby helping the mobile robot to complete orderly exploration of unknown areas and achieve rapid mapping.

[0012] Furthermore, the mobile robot is a laser robot or a visual robot, and a mapping module provided inside the mobile robot is used to refresh a static map according to environmental information obtained by scanning when exploring a target point, so as to realize map construction.

[0013] A chip storing computer program code that, when executed, implements the steps of the rapid mapping method. This technical solution enables mobile robots to systematically explore unknown areas in a map, significantly improving mapping efficiency while ensuring rapid mapping with high coverage. BRIEF DESCRIPTION OF THE DRAWINGS

[0014] Figure 1 The figure is a flowchart of a fast mapping method according to an embodiment of the present invention.

[0015] Figure 2 A schematic diagram of a skeleton diagram according to an embodiment of the present invention.

[0016] Figure 3 A schematic diagram of an undirected graph according to an embodiment of the present invention.

[0017] Figure 4 A schematic diagram of pixel transformation according to an embodiment of the present invention.

[0018] Figure 5 A schematic diagram of a multi-branch tree according to an embodiment of the present invention.

[0019] Figure 6 A schematic diagram of a target point sequence to be explored according to an embodiment of the present invention.

[0020] Figure 7 This is a framework diagram of the internal modules of the mobile robot described in one embodiment of the present invention. DETAILED DESCRIPTION

[0021] The following is a further description of the specific embodiments of the present invention with reference to the accompanying drawings. It should be noted that the following detailed description is illustrative and is intended to further illustrate the present application. Unless otherwise specified, all technical and scientific terms used herein have the same meanings as commonly understood by those of ordinary skill in the art to which this application belongs.

[0022] It should be noted that the terms used herein are only for describing specific embodiments and are not intended to limit the exemplary embodiments according to the present application. As used herein, unless the context clearly indicates otherwise, the singular form is also intended to include the plural form. In addition, it should be understood that when the terms "comprise" and / or "include" are used in this specification, they indicate the presence of features, steps, operations, devices, components and / or combinations thereof.

[0023] When a mobile robot begins operating in a new environment, it generates an initial static map. This static map consists of two parts: unknown and known areas. As the mobile robot explores, the known areas continue to grow. The goal of rapid mapping is to maximize the rate at which the known areas of this map are added. This growth is achieved by exploring the boundaries between known and unknown areas. When the mobile robot reaches these boundaries, the previously unknown areas gradually become known areas. During exploration, the mobile robot uses its various sensors (e.g., accelerometers, gyroscopes, ultrasonic rangefinders, cameras, single-line lidar, etc.) to search the unknown areas, sensing the location, shape, and size of each area, as well as the location, shape, and size of any obstacles encountered. This collected environmental information is then mapped onto the static map.

[0024] Rapid mapping is a crucial function for intelligent mobile robots. Currently, mainstream rapid mapping methods are based on derivatives of the Rapid Exploration Random Tree (RRT). The RRT method's advantage lies in its ease of application: it simply generates target points within the area to be explored, eliminating the need for algorithmic modeling or geometric partitioning of the area. Furthermore, the RRT method offers high coverage within the search space and a wide search range. However, the RRT method also has limitations. Because the target points to be explored are randomly generated and lack correlation between them, the robot may experience repetitive back-and-forth movements during exploration, preventing orderly exploration and resulting in inefficient rapid mapping.

[0025] Therefore, if Figure 1 As shown, an embodiment of the present invention discloses a rapid mapping method, which includes the following steps:

[0026] Step S1: After the static map is refreshed, the target point to be explored is found according to the number of pixel transformations and an undirected graph is generated.

[0027] It should be noted that during rapid mapping, the mobile robot refreshes the static map after each area it explores, as the known area expands to reveal more unexplored target points. After refreshing the static map, the mobile robot generates a General Voronoi Diagram (GVD) representing the connectivity of the static map to identify the unexplored target points. The method for generating a GVD representing the connectivity of the static map specifically includes:

[0028] Step S11, extract the boundary points of the obstacles in the static map and make a judgment. If there are no other boundary points in the eight neighborhoods of the boundary point, the boundary point is regarded as an isolated point and deleted, and the remaining boundary points are retained and the process proceeds to step S12. Deleting the isolated points can make the map as simple as possible and facilitate the subsequent finding of the target point to be explored; Step S12, construct a Delaunay triangulation based on the remaining boundary points in step S11, and then generate the perpendicular bisector of each side of each triangle; Step S13, construct a Thiessen polygon with the perpendicular bisector as the edge and the intersection of the perpendicular bisector as the vertex. After deleting the Delaunay triangulation, the following can be obtained. Figure 2 The skeleton diagram shown in Figure 2 The left side shows the skeleton graph overlaid with the static map, and the right side shows the skeleton graph alone. The skeleton graph can express the connected domain information of the map with minimal information, which ensures that the target points to be explored are interconnected, rather than randomly generated points without any correlation.

[0029] During step S1, the method of finding the target point to be explored and generating an undirected graph according to the number of pixel transformations specifically includes:

[0030] Step S15, on the skeleton graph, if there are two pixel transformations within the eight neighborhoods of a pixel point, then the pixel point is set as an end point, and if there are six or more pixel transformations within the eight neighborhoods of a pixel point, then the pixel point is set as an intersection point; wherein the target point to be explored includes intersection points and end points. As can be seen from the above, the skeleton graph can express the connected domain information of the static map, so the intersection points and end points contain not only the map coordinate information of the point, but also the information of the intersection points and / or end points connected to the point. Step S16, connect the lines according to the connectivity of the intersection points and end points to generate the following. Figure 3 The undirected graph shown in FIG. 1 ; wherein the connecting lines are edges of the undirected graph.

[0031] The method for determining the number of pixel transformations in step S15 specifically includes:

[0032] Step S151, traverse all points in the eight neighborhoods of a pixel point in the skeleton graph, wherein the traversal starting point is any point and the traversal end point is the same as the traversal starting point. Figure 4, there are eight points 1-8 in the eight-neighborhood with pixel 0 as the center point. If the traversal starting point is pixel 1, the traversal order is 1-2-3-4-5-6-7-8-1. For another example, if the traversal starting point is pixel 3, the traversal order is 3-4-5-6-7-8-1-2-3. In this embodiment, the traversal starting point is pixel 1. Step S152, during the traversal process, if the colors of two adjacent points are inconsistent, a pixel transformation is recorded. After the traversal is completed, the number of pixel transformations of the pixel point can be obtained. Among them, the skeleton of the skeleton image and the background of the skeleton image are marked with different colors.

[0033] Reference Figure 4 (a), where white pixels 1, 3, and 6 represent points on the skeleton, and black pixels 2, 4, 5, 7, and 8 represent points on the background. Figure 4 In (b), the white pixel 2 represents the point on the skeleton of the skeleton image, and the black pixels 1, 3, 4, 5, 6, 7, and 8 represent the points on the background of the skeleton image. Figure 4 In (a), we start from pixel 1 and record the color inconsistency between adjacent pixels 1 and 2, the color inconsistency between pixels 2 and 3, the color inconsistency between pixels 3 and 4, and so on. Figure 4 In (a), there are 6 pairs of adjacent points with inconsistent colors, that is, there are 6 pixel transformations in the eight-neighborhood with pixel 0 as the center. Therefore, pixel 0 is set as the intersection point. Using the same method, Figure 4 In (b), there are two pixel transformations, and pixel 0 is the end point.

[0034] It should be noted that the intersection of the target points to be explored represents the center of a known area and does not need to be explored during the actual implementation of the embodiments of the present invention. This is because the intersection has already been explored before becoming a so-called intersection. If there is an unknown area near the intersection, a branch will grow from the intersection, and the end point of the branch is the end point. The area where the end point is located represents the boundary between the known area and the unknown area. By finding the end point in the skeleton diagram and exploring it, the unknown area can be continuously transformed into a known area.

[0035] Step S2: Generate a multi-branch tree based on the undirected graph, and then traverse the multi-branch tree to obtain a sequence of target points to be explored.

[0036] In order to facilitate the depth-first search, in this embodiment, the undirected graph is converted into a multi-branch tree. The schematic diagram of the multi-branch tree can be referred to Figure 5,The method of generating a multi-branch tree specifically includes: if it is the first time to generate a multi-branch tree, that is, when just starting to build the map, the mobile robot finds the intersection point closest to the mobile robot in the undirected graph and sets it as the root node, placing it at the top of the tree structure, referring to Figure 3 , the intersection closest to the mobile robot "R" is 1, so point 1 is placed at the top of the tree structure. Then, based on the connectivity between points in the undirected graph, the points directly connected to the intersection are placed as follows Figure 5 Points 10, 2, and 3 are placed in the second layer of the tree structure, and the points directly connected to the points in the second layer are Figure 5 Points 8, 7, 6, 5, and 4 in the undirected graph are placed on the third layer of the tree structure, and so on to generate the multi-branch tree. If this is not the first time to generate a multi-branch tree, that is, if a multi-branch tree has already been generated, it is only necessary to place the intersection points and / or end points in the undirected graph that are not placed on the multi-branch tree on the basis of the multi-branch tree generated last time according to the above method. As the map exploration progresses, the number of nodes on the multi-branch tree will increase, and the nodes that have been explored will be marked as visited. In this way, not only can repeated exploration be avoided, but the exploration coverage rate can also be guaranteed.

[0037] In the process of executing step S2, the multi-branch tree is traversed using the depth-first search algorithm to obtain a sequence of target points to be explored. The process can be referred to as Figure 6 , Figure 6 The top diagram shows the traversal process of the depth-first search algorithm, and the bottom diagram shows the sequence of target points to be explored. Depth-first search (DFS) is a graph algorithm that traverses graphs and trees. It is a classic algorithm in graph theory. It generates a topologically ordered list of the target graph. In short, the process involves searching every possible branch path until it can go no further, and each node can only be visited once. If there are unvisited nodes in the graph at this point, the depth-first traversal is repeated, starting with the next unexplored node, until all nodes in the graph have been visited.

[0038] In step S3, the mobile robot starts from the current exploration position and moves to the next target point to be explored in the order of the target point sequence to be explored; wherein, the mobile robot sets a visited mark for the target point after the exploration is completed, and refreshes the static map once each target point is explored, and then returns to step S1, and repeats steps S1 to S4 until all target points in the target point sequence to be explored are set with a visited mark, thus completing the map construction.

[0039] It should be noted that during exploration, the mobile robot uses its various sensors (e.g., accelerometers, gyroscopes, ultrasonic rangefinders, cameras, single-line lidar, etc.) to search the unknown area, sensing the location, shape, and size of each area, as well as the location, shape, and size of any obstacles encountered. The collected environmental information is then mapped onto the static map. The process of the mobile robot sensing environmental information and drawing a map is well-known and will not be detailed here.

[0040] In the process of executing step S3, the mobile robot starts from the current exploration position and moves to the next target point to be explored in the order of the target point sequence to be explored. In the process, the following judgment will be made: As can be seen from the above content, the intersection point represents the center position of a known area, so if the next target point to be explored is Figure 6 If the target point 2 in the figure is an intersection, the mobile robot does not explore. After setting the visited mark, it continues to move to the next target point 8 in the sequence of the target points to be explored. If the next target point to be explored is Figure 6 If the target point 10 in the figure is the end point, the mobile robot will explore the point and set the visited mark. In addition, according to the connectivity between points in the undirected graph, if the next target point to be explored is Figure 6 If target point 11 in the figure is an end point and not connected to the mobile robot's current exploration position 12, the mobile robot first moves to intersection point 6, which is connected to both the next target point 11 and the mobile robot's current exploration position 12 (according to the sequence of target points to be explored, target point 6 has already been explored), and then moves to the next target point 11 to be explored. Each time a point is explored, the mobile robot acquires information about a new unknown area. Therefore, after each target point is explored, the mobile robot refreshes the static map, continuously expanding the known area on the map to find more target points to explore until all target points are marked as visited, that is, until all unknown areas on the map have been explored.

[0041] Figure 7This is a framework diagram of the internal modules of a mobile robot disclosed in the present invention. The mobile robot includes: a skeleton graph generation module, which generates a skeleton graph representing the connectivity of a static map to obtain target points to be explored. The target points to be explored include intersections and endpoints. The intersections represent the center of a known area, and the area containing the endpoints represents the boundary between the known and unknown areas. An undirected graph generation module generates an undirected graph based on the target points to be explored in the skeleton graph, wherein the points in the undirected graph have correlations with each other. A multitree generation module generates a multitree based on the undirected graph to facilitate depth-first traversal. The depth-first traversal module traverses the multitree to sort the target points to be explored, allowing the mobile robot to explore the map in an orderly manner. A mapping module refreshes the static map after exploring the target points to complete the map construction. Compared with the existing technology, the present technical solution can generate an undirected graph that represents the correlations between the target points to be explored using the undirected graph generation module, and then sort the target points to be explored using the depth-first traversal module, thereby helping the mobile robot to complete the orderly exploration of the unknown area and achieve rapid map construction.

[0042] Preferably, the mobile robot is a laser robot or a visual robot, and the mapping module provided therein is used to refresh the static map according to the environmental information obtained by scanning when exploring the target point, so as to realize map construction.

[0043] The present invention also discloses a chip for storing computer program code, which can be disposed within the aforementioned mobile robot. When executed, the computer program code implements the steps of the aforementioned rapid mapping method. Alternatively, when the chip executes the computer program code, it implements the functions of the various modules in the aforementioned mobile robot embodiment. Exemplarily, the computer program code can be divided into one or more modules / units, which are stored in and executed by the chip to complete the present application. The one or more modules / units can be a series of computer program instruction segments capable of performing specific functions, which describe the execution process of the computer program code within the mobile robot. For example, the computer program code can be divided into: a skeleton graph generation module, an undirected graph generation module, a multi-branch tree generation module, a depth-first traversal module, and a mapping module, as described in the aforementioned mobile robot embodiment. The chip enables the mobile robot to systematically explore unknown areas of a map, significantly improving mapping efficiency while ensuring rapid mapping with high coverage.

[0044] Obviously, the above-mentioned embodiments are only some embodiments of the present invention, rather than all embodiments, and the technical solutions between the various embodiments can be combined with each other. In addition, if the terms "center", "up", "down", "left", "right", "vertical", "horizontal", "inside", "outside" and the like appear in the embodiments, the orientation or position relationship indicated is based on the orientation or position relationship shown in the accompanying drawings, which is only for the convenience of describing the present invention and simplifying the description, and does not indicate or imply that the device or element referred to must have a specific orientation or be constructed and operated in a specific orientation, and therefore cannot be understood as a limitation on the present invention. If the terms "first", "second", "third" and the like appear in the embodiments, it is to facilitate the distinction between related features and cannot be understood as indicating or implying their relative importance, order or number of technical features.

[0045] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the portion that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions for causing a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes various media that can store program code, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), a mobile hard drive, a magnetic disk, or an optical disk.

[0046] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the above embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the above embodiments, or replace some or all of the technical features therein with equivalents. However, these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present invention.

Claims

1. A rapid mapping method, characterized in that: The method comprises the following steps: Step S1: After the static map is refreshed, the target point to be explored is found according to the number of pixel transformations and an undirected graph is generated; Step S2, generating a multi-branch tree based on the undirected graph, and then traversing the multi-branch tree to obtain a sequence of target points to be explored; Step S3: The mobile robot starts from the current exploration position and explores the target points to be explored in the order of the target point sequence to be explored; wherein, the mobile robot sets a visited mark for the target point to be explored, and refreshes the static map once each target point to be explored is explored, and repeats steps S1 to S3 until all the target points to be explored in the target point sequence to be explored are set with a visited mark, thus completing the map construction; Wherein, in step S1, before finding the target point to be explored according to the number of pixel transformations, a skeleton graph representing the connectivity of the static map is generated, and the method includes: Step S11, extracting the boundary points of the obstacles in the static map and performing a judgment. If there are no other boundary points within the eight neighborhoods of the boundary point, the boundary point is considered an isolated point and deleted. The remaining boundary points are retained and the process proceeds to step S12; Step S12, constructing a Delaunay triangulation based on the remaining boundary points in step S11, and then generating the perpendicular bisector of each side of each triangle in the Delaunay triangulation; Step S13, constructing Thiessen polygons with the perpendicular bisectors as edges and the intersection of the perpendicular bisectors as vertices, and deleting the Delaunay triangulation to obtain the skeleton graph; In step S1, the method of finding the target point to be explored and generating an undirected graph according to the number of pixel transformations specifically includes: Step S15: On the skeleton graph, if a pixel point has two pixel transformations within its eight-neighborhood, then the pixel point is set as an end point; if a pixel point has six or more pixel transformations within its eight-neighborhood, then the pixel point is set as an intersection point; wherein the target point to be explored includes intersection points and end points, and the intersection points and end points include the map coordinate information of the point and the information of the intersection points and / or end points connected to the point; Step S16, connecting lines according to the connectivity of the intersection points and the end points to generate the undirected graph; wherein the connecting lines are edges of the undirected graph; The method for determining the number of pixel transformations in step S15 specifically includes: Step S151, traversing all points in the eight neighborhoods of a pixel point in the skeleton graph, wherein the traversal starting point is any point and the traversal end point is the same as the traversal starting point; Step S152: During the traversal process, if the colors of two adjacent points are inconsistent, a pixel transformation is recorded. After the traversal is completed, the number of pixel transformations of the pixel point can be obtained; wherein, the skeleton of the skeleton image and the background of the skeleton image are marked with different colors.

2. A rapid mapping method according to claim 1, characterized in that: In step S2, the method for generating a multi-branch tree based on the undirected graph specifically includes: Generate a multitree for the first time: The intersection point closest to the mobile robot in the undirected graph is set as the root node and placed at the top of the tree structure. Place the points directly connected to the intersection in the second level of the tree structure. Place the points directly connected to the points in the second layer in the third layer of the tree structure, and so on, to generate the multi-branch tree; This is not the first time to generate a multitree: The intersection points and / or end points in the undirected graph that are not placed on the multi-branch tree are placed based on the multi-branch tree generated last time according to the above method.

3. A rapid mapping method according to claim 1, characterized in that: In step S2, the mobile robot traverses the multi-branch tree using a depth-first search algorithm.

4. A rapid mapping method according to claim 1, characterized in that: In step S3, the mobile robot starts from the current exploration position and performs the following judgments during the process of exploring the target points to be detected in the order of the target point sequence to be explored: If the target point to be explored is an intersection, the mobile robot does not explore and then continues to move to the next target point to be explored in the order of the target point sequence to be explored; If the target point to be explored is the end point, the mobile robot explores this point; According to the connectivity between points in the undirected graph, if the target point to be explored is an end point and is not connected to the current exploration position of the mobile robot, the mobile robot first moves to the intersection that is connected to the next target point to be explored and the current exploration position of the mobile robot, and then moves to the next target point to be explored for exploration.

5. A mobile robot, configured to implement the rapid mapping method according to any one of claims 1 to 4, characterized in that: The mobile robot comprises: The skeleton graph generation module is used to generate a skeleton graph representing the connectivity of the static map to obtain the target points to be explored; An undirected graph generation module is used to generate an undirected graph based on the target points to be explored in the skeleton graph; Multi-branch tree generation module, used to generate multi-branch trees based on undirected graphs to facilitate depth-first traversal; Depth-first traversal module, used to traverse the multi-branch tree and sort the target points to be explored; The mapping module is used to refresh the static map after exploring the target point to realize map construction.

6. A mobile robot according to claim 5, characterized in that: The mobile robot is a laser robot or a visual robot, and a mapping module is provided inside the mobile robot for refreshing a static map according to the environmental information obtained by scanning when exploring a target point, so as to realize map construction.

7. A chip storing computer program code, characterized in that: When the computer program code is executed, the steps of the rapid mapping method according to any one of claims 1 to 4 are implemented.

Citation Information

Patent Citations

  • Method for quickly generating generalized Voronoi diagram based on wavefront algorithm

    CN106682787A

  • Image texture classification method based on local direction extreme value mode

    CN110348458A