Robot stuck detection method, chip and mobile robot based on skeleton graph

By generating the skeleton map of the environment map and extracting feature points, the problem of the sweeping robot relying on multiple information when being stuck detection is solved, fast and accurate jam detection is achieved, and the computing volume is simplified.

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

Patent Information

Application Number
CN202110643075.1
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, sweeping robots are easily stuck by objects such as electric fans, door sills, bar seats, etc., which leads to slip or inability to move, affecting the accuracy of map construction and navigation, and the detection method depends on the acquisition and processing of various information.

Method used

By generating a skeleton map of the environment map, feature points that meet preset conditions are extracted, and the change of feature points is used to detect whether the robot is stuck, including building a Delaunay triangle net and a Tyson polygon, combining the type and association information of feature points, and relying solely on the map feature point information for detection.

Benefits of technology

It realizes rapid and simple detection of whether the robot is stuck without relying on wheel information, improving the accuracy and speed of detection.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115451959B_ABST
    Figure CN115451959B_ABST
Patent Text Reader

Abstract

The present invention discloses a skeleton graph-based robot stuck detection method, chip, and mobile robot. The method comprises the following steps: the mobile robot constructs a map of the environment directly in front of it at preset intervals, then generates a skeleton graph representing the connectivity of the environment map and extracts feature points on the skeleton graph that meet preset conditions; the mobile robot performs a detection, and if there is no change in the feature points extracted between the two times of the preset interval, the mobile robot is determined to be stuck. The method of the present invention detects whether the mobile robot is stuck by changes in feature points on the skeleton graph representing map connectivity, featuring simple logic, minimal computational effort, and rapid detection.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of intelligent robots, and in particular to a robot stuck detection method based on a skeleton graph, a chip, and a mobile robot. Background Art

[0002] In real-world homes, most have floor-standing fans, door thresholds, and bar stools. Some offices also have U-shaped stools with oblate cross-sections where the foot of the stool contacts the ground. Robot vacuums can easily become stuck on these areas, such as the fan base, door thresholds, bar stool bases, or the U-shaped foot of the stool. This can cause the robot to slip or become stuck, affecting the accuracy of its map and significantly reducing navigation accuracy. At present, many patents have disclosed methods for detecting robot slippage or getting stuck. For example, the patent with publication number CN110000813A applies for a robot slippage detection method, system and device. This method combines the information of the active wheel and the environmental observation information to detect whether the robot is slipping. Another example is the patent with publication number CN107643186B, which applies for a machine slippage detection method, device and system. This method combines the encoder data and laser data to detect whether the robot is slipping. And the patent with publication number CN107671862B applies for a robot stuck processing method. This method combines the universal wheel and two drive wheels to detect whether the robot is stuck. It can be seen that the current methods all require the combination of at least two different types of information to detect whether the mobile robot is slipping or getting stuck, and they are particularly dependent on the information provided by the wheels, which is relatively cumbersome in data acquisition and processing. Summary of the Invention

[0003] To address the above issues, the present invention provides a robot stuck detection method, chip, and mobile robot based on a skeleton graph. This method detects whether the robot is stuck by using only feature point information on a map, without relying on wheel information. The specific technical solutions of the present invention are as follows:

[0004] A skeleton graph-based robot stuck detection method includes the following steps: a mobile robot constructs a map of the environment directly in front of it at preset intervals, then generates a skeleton graph representing the connectivity of the map and extracts feature points from the skeleton graph that meet preset conditions; the mobile robot then performs a detection operation, and if the feature points extracted twice before and after the preset interval do not change, the mobile robot is determined to be stuck. Compared to existing technologies, this solution detects whether the mobile robot is stuck by changes in feature points on the skeleton graph representing map connectivity, featuring simpler logic, less computational effort, and faster detection speed.

[0005] Furthermore, the method for generating a skeleton graph representing the connectivity of the environment map specifically includes: step S11, extracting and determining edge points of obstacles in the environment map. If there are no other edge points within the eight-neighborhood of the edge point, the edge point is deemed an isolated point and deleted, retaining the remaining edge points and proceeding to step S12; step S12, constructing a Delaunay triangulation based on the remaining edge 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, and deleting the Delaunay triangulation to obtain the skeleton graph. Deleting isolated points can make the map as simple as possible, facilitating the subsequent identification of feature points; the skeleton graph can reflect connected domain information.

[0006] Furthermore, the method for extracting feature points from a skeleton graph that meet preset conditions specifically includes: superimposing the skeleton graph onto an environment map, and then determining whether the number of pixel transformations within an eight-neighborhood region of a pixel in the skeleton graph, centered around the pixel in the skeleton graph, is zero. If so, the pixel in the center is set as an open area point; otherwise, the pixel in the center is set as a boundary point. The feature points include open areas and boundary points, each of which contains information about the point's type, map coordinates, and associated information about connected open areas and / or boundary points. The different types of feature points and associated information can enrich the information used to detect whether a mobile robot is stuck, improving detection accuracy.

[0007] Furthermore, the method for determining the number of pixel transformations within the eight-neighborhood of a central pixel point specifically includes: step S21, after superimposing the skeleton image on the environment map, traversing all points in the eight-neighborhood of a pixel point in the skeleton image, wherein the traversal starting point is an arbitrary point and the traversal end point is the same as the traversal starting point; step S22, 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 is obtained after the traversal is completed; wherein, different colors are used to mark the traversable area and the obstacle area on the environment map. Using different colors to mark the traversable area and the obstacle area ensures that pixels in different locations have different pixel transformations, which facilitates differentiation and use.

[0008] Furthermore, the method for a mobile robot to detect whether feature points extracted twice before and after a preset time have changed specifically includes: the mobile robot reads parameter information contained in the feature points extracted twice before and after the preset time, and then compares the parameter information. If the parameter information is consistent, it indicates that the feature points extracted twice before and after the preset time have not changed, and the mobile robot is determined to be stuck. The parameter information includes the number of feature point types, the number of open points, the number of boundary points, and the correlation information between all feature points. The feature points on the skeleton graph contain rich information, which expands the comparison dimension and can improve the accuracy of detecting whether the mobile robot is stuck.

[0009] A mobile robot equipped with a sensor for scanning environmental information is used to implement the skeleton graph-based robot stuck detection method. The mobile robot includes: a mapping module for constructing an environmental map; a skeleton graph generation module for generating a skeleton graph representing the connectivity of the environmental map; a feature point determination module for identifying feature points on the skeleton graph that meet preset conditions; and a detection module for comparing feature points extracted twice before and after a preset time to detect whether the mobile robot is stuck. Compared to existing technologies, this technical solution uses the feature point determination module to identify feature points on the skeleton graph and transmits them to the detection module for comparison. This allows detection of a mobile robot stuck without relying on wheel information, using only feature point information on the map.

[0010] Furthermore, the mobile robot is a laser robot, and its internal mapping module uses environmental information scanned by a laser sensor to construct an environmental map. The use of a laser sensor can produce a highly accurate map, which facilitates the accurate extraction of feature points and improves the accuracy of detecting whether there is a stuck vehicle.

[0011] A chip storing computer program code that, when executed, implements the steps of the skeleton graph-based robot stuck detection method. Compared to existing technologies, this solution enables a mobile robot to detect whether it is stuck using only feature point information on a map, without relying on wheel information. It features simple logic, minimal computational effort, and rapid detection speed. BRIEF DESCRIPTION OF THE DRAWINGS

[0012] Figure 1 This is a flow chart of a robot stuck detection method based on skeleton graph according to an embodiment of the present invention.

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

[0014] Figure 3 A schematic diagram of pixel transformation according to an embodiment of the present invention. DETAILED DESCRIPTION

[0015] 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.

[0016] 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.

[0017] like Figure 1 As shown, an embodiment of the present invention discloses a robot stuck detection method based on a skeleton graph, the method comprising the following steps:

[0018] The mobile robot constructs a map of the environment in front of it at preset time intervals, then generates a skeleton graph representing the connectivity of the environment map and extracts feature points on the skeleton graph that meet preset conditions; the mobile robot performs a detection, and if the feature points extracted twice before and after the preset time do not change, the mobile robot is determined to be stuck.

[0019] The method of generating a skeleton graph representing the environment map specifically includes:

[0020] Step S11, extract the edge points of the obstacles in the environment map and make a judgment. If there are no other edge points in the eight neighborhoods of the edge point, the edge point is regarded as an isolated point and deleted to make the map as simple as possible, which is convenient for finding feature points later. The remaining edge points are retained and the process goes to step S12; Step S12, construct a Delaunay triangulation based on the remaining edge points in step S11, and then generate the perpendicular bisector of each side of each triangle in the Delaunay triangulation; 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, where 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 reflect the connected domain information of the map, so the feature points on the skeleton graph are correlated, which can improve the accuracy of detecting whether the mobile robot is stuck.

[0021] After obtaining the skeleton graph, the method of finding the feature points that meet the preset conditions includes:

[0022] The skeleton graph is superimposed on the environment map, and then, with the pixel points in the skeleton graph as the center, it is determined whether the number of pixel transformations in the eight-neighborhood of the pixel point as the center is 0. If so, the pixel point as the center is set as an empty point; otherwise, the pixel point as the center is set as a boundary point; wherein the feature points include empty points and boundary points, and the empty points and boundary points contain the type information of the point, map coordinate information, and association information of the empty points and / or boundary points connected to the point.

[0023] The method for determining the number of pixel transformations within the eight-neighborhood region of the central pixel specifically includes:

[0024] Step S21: After the skeleton image is superimposed on the environment map, all points in the eight neighborhoods of a pixel point in the skeleton image are traversed, wherein the traversal starting point is any point and the traversal end point is the same as the traversal starting point. Figure 3 , 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 S22, 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, different colors are used to mark the passable area and the obstacle area on the environmental map.

[0025] Reference Figure 3 (a), where white pixels 1, 3, and 6 represent points in the open area, and black pixels 2, 4, 5, 7, and 8 represent points in the obstacle area. Similarly, Figure 3 In (b), the white pixel 2 represents a point in the open area, and the black pixels 1, 3, 4, 5, 6, 7, and 8 represent points in the obstacle area. Figure 3 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 3 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. Using the same method, Figure 3 (b) shows two pixel transformations. It is easy to see that, with the pixel in the skeleton image as the center, pixels with zero pixel transformations in the eight-neighborhood represent points in the open area (or points not close to obstacles), i.e., open points, while pixels with non-zero transformations represent points close to obstacles, i.e., boundary points.

[0026] It should be noted that when constructing an environmental map, due to the relatively complex environment of the target area, in order to express the characteristics of each local area within the target area, each grid cell can be assigned a corresponding grid state based on the conditions of each object in the image. A grid state represents the condition of a pixel at that location in the image. A pixel can be a pixel with a detected obstacle, a pixel with no obstacles, or a pixel with an uncertain state. Therefore, grid states include a no-obstacle state, an obstacle-present state, and an uncertain state. Accordingly, each grid state can be quantified. In this embodiment, a grayscale value of 255 for a grid pixel indicates a no-obstacle state. That is, all grid cells in a detected, obstacle-free area are marked white. A grayscale value of 0 for a grid pixel indicates an obstacle state. That is, all grid cells in a detected, obstacle-free area are marked black. A grayscale value of 0-225 for a grid pixel indicates an uncertain state. That is, all grid cells in an uncertain area are marked gray. To simplify the map, all pixels where the grid values ​​are 0-128 are marked as 0, that is, represented by black, and all pixels where the grid values ​​are 129-255 are marked as 255, that is, represented by white.

[0027] In this embodiment, the open area is composed of a plurality of blank pixels, and the obstacle area is composed of a plurality of black pixels. The pixel characteristics of the pixels in the open area and the obstacle area are different. The pixel characteristics can be represented by any suitable identifier, such as a grayscale value or a custom grid value. For example, the grayscale value of each pixel in the obstacle area is 0, and the grayscale value of each pixel in the open area is 255. For another example, the grid value of each pixel in the obstacle area is 0, and the grid value of each pixel in the open area is 1.

[0028] It should be noted that in the constructed environment map, the map boundary is regarded as an obstacle, that is, the map boundary is displayed as black pixels.

[0029] After obtaining the feature points and related information, the method for the mobile robot to detect whether there is a change in the feature points extracted twice before and after a preset time specifically includes:

[0030] The mobile robot reads the parameter information contained in the feature points extracted twice before and after a preset time and compares them. If the parameter information is consistent, it indicates that the feature points extracted before and after the preset time have not changed, and the mobile robot is determined to be stuck. The parameter information includes the number of feature point types, the number of open points, the number of boundary points, and the correlation information between all feature points. This multi-dimensional parameter information comparison ensures the accuracy of detecting whether the mobile robot is stuck.

[0031] The present invention also provides a mobile robot equipped with a sensor for scanning environmental information. The mobile robot includes: a mapping module for constructing an environmental map; a skeleton graph generation module for generating a skeleton graph representing the connectivity of the environmental map; a feature point determination module for identifying feature points on the skeleton graph that meet preset conditions; and a detection module for comparing feature points extracted twice before and after a preset time to detect whether the mobile robot is stuck. Compared to the prior art, the mobile robot uses the feature point determination module to identify feature points on the skeleton graph and transmits them to the detection module for comparison. This allows the mobile robot to detect whether it is stuck, without relying on wheel information, using only feature point information on the map. Preferably, the mobile robot is a laser robot, and the mapping module within it constructs an environmental map using environmental information scanned by a laser sensor. The use of a laser sensor can produce a highly accurate map, facilitate accurate feature point extraction, and improve the accuracy of stuck detection.

[0032] 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 skeleton graph-based robot stuck detection method. Alternatively, when the chip executes the computer program code, it implements the functions of the various modules in the aforementioned mobile robot embodiments. 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, each describing the execution process of the computer program code within the mobile robot. For example, the computer program code can be divided into: a mapping module, a skeleton graph generation module, a feature point determination module, and a detection module, as described in the aforementioned mobile robot embodiments. Compared to the prior art, the chip enables the mobile robot to detect whether it is stuck, without relying on wheel information, using only feature point information on the map. This results in simpler logic, less computational effort, and faster detection speed.

[0033] 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.

[0034] 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.

[0035] 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 robot stuck detection method based on skeleton graph, characterized in that: The method comprises the following steps: The mobile robot constructs an environment map in front of it at preset time intervals, then generates a skeleton graph representing the connectivity of the environment map and extracts feature points on the skeleton graph that meet preset conditions; The mobile robot performs detection. If the feature points extracted twice before and after the preset time do not change, the mobile robot is determined to be stuck. The method for extracting feature points that meet preset conditions on the skeleton graph specifically includes: The skeleton graph is superimposed on the environment map, and then, with a pixel point in the skeleton graph as the center, the number of pixel transformations in the eight-neighborhood of the pixel point as the center is determined to be 0. If so, the pixel point as the center is set as an empty point; otherwise, the pixel point as the center is set as a boundary point; wherein the feature points include empty points and boundary points, and the empty points and boundary points contain type information of the point, map coordinate information, and association information of the empty points and / or boundary points connected to the point; The method for the mobile robot to detect whether a change occurs in the feature points extracted twice before and after a preset time specifically includes: The mobile robot reads the parameter information contained in the feature points extracted twice before and after the preset time, and then compares them. If the parameter information before and after is consistent, it means that the feature points extracted before and after the preset time have not changed, and the mobile robot is determined to be stuck; The parameter information includes the number of feature point types, the number of open points, the number of boundary points, and the association information between all feature points; The method for determining the number of pixel transformations within the eight-neighborhood region of the central pixel specifically includes: Step S21, after superimposing the skeleton image on the environment map, traverse all points in 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 S22: 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, different colors are used to mark the passable area and the obstacle area on the environment map.

2. The robot stuck detection method based on skeleton graph according to claim 1, characterized in that: The method for generating a skeleton graph representing connectivity of the environment map specifically comprises: Step S11, extracting the edge points of obstacles in the environment map and performing a judgment. If there are no other edge points within the eight neighborhoods of the edge point, the edge point is considered an isolated point and deleted. The remaining edge points are retained and the process proceeds to step S12; Step S12, constructing a Delaunay triangulation based on the remaining edge points in step S11, and then generating the perpendicular bisector of each edge of each triangle in the Delaunay triangulation; Step S13: constructing Thiessen polygons with the perpendicular bisectors as edges and the intersections of the perpendicular bisectors as vertices, and deleting the Delaunay triangulation to obtain the skeleton graph.

3. A mobile robot equipped with a sensor for scanning environmental information, characterized in that: The mobile robot is used to implement the robot stuck detection method based on skeleton graph according to any one of claims 1 to 2, and the mobile robot comprises: Mapping module, used to build environment maps; A skeleton graph generation module, used to generate a skeleton graph representing the connectivity of the environment map; A feature point determination module is used to find feature points on the skeleton graph that meet preset conditions; The detection module is used to compare the feature points extracted twice before and after a preset time to detect whether the mobile robot is stuck.

4. A mobile robot according to claim 3, characterized in that: The mobile robot is a laser robot, and a mapping module provided inside the mobile robot uses environmental information obtained by scanning with a laser sensor to construct an environmental map.

5. A chip for storing computer program code, characterized in that: When the computer program code is executed, the steps of the robot stuck detection method based on skeleton graph according to any one of claims 1 to 2 are implemented.

Citation Information

Patent Citations

  • Methods, devices and systems for detecting machine slippage

    CN107643186B

  • How to handle a stuck robot

    CN107671862B

  • Robot slipping detection method, system and device

    CN110000813A

  • Method and device for controlling robot to get out of trap and robot

    CN111061215A

  • Map information processing method and device, electronic equipment and storage medium

    CN112700464A