Full-coverage inspection path generation method

Through the full coverage inspection path generation method based on vector maps, the problem of low efficiency in narrow areas is solved, the automatic generation of the global optimal path is realized, the labor cost and memory consumption are reduced, and the inspection efficiency is improved.

CN120702473APending Publication Date: 2025-09-26JIAXING XINSHENGJI INTELLIGENT TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510893586.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-30
Publication Date
2025-09-26

AI Technical Summary

Technical Problem

The existing full-coverage inspection path generation method is inefficient in scenarios such as narrow corridors, cannot generate a globally optimal path, and has high manual labeling costs. Raster maps occupy a lot of memory in large-area scenarios and suffer from resolution loss accuracy problems.

Method used

A full-coverage inspection path generation method based on vector maps is adopted. A vector map is constructed through drawing tools or robot autonomous mapping, expansion and contraction processing and skeleton graph calculation are performed to generate Vast Cells, and the graph algorithm is used to calculate the optimal path to automatically generate a full-coverage inspection path.

Benefits of technology

Adapt to narrow area scenarios, generate the global optimal path, reduce labor costs, improve inspection efficiency, reduce memory usage and CPU consumption, and avoid resolution loss.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120702473A_ABST
    Figure CN120702473A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of robot or automatic system path planning, in particular to a vector map-based full-coverage inspection path generation method, which comprises the following steps of: S101, generating a vector map; s201, processing the vector map; s301, calculating a skeleton diagram; step S401, generating a Vast Cell (Vast Cell); step S501, constructing a Graph (Graph); step S601, calculating a full coverage path in the Vast Cell; the method comprises the following steps: step S701, constructing a Graph edge; step S801, the Graph is traversed; the method can adapt to a narrow area scene, a global optimal path is generated, the labor cost is reduced, and the performance is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of robot or automation system path planning, and in particular to a method for generating a full-coverage inspection path based on a vector map. Background Art

[0002] The existing full coverage inspection path generation method has the following main problems: Inefficiency: Traditional methods such as ox-plowing and zigzag methods are inefficient in narrow corridors and cannot generate a globally optimal path. Manual reliance: Manually marking full-coverage inspection routes is time-consuming, labor-intensive, and costly. Performance limitations: Raster maps occupy a lot of memory in large-area scenes and may suffer from resolution loss. Summary of the Invention

[0003] In view of the shortcomings of the prior art, the above technical problems of the present invention are mainly solved by the following technical solutions: A method for generating a full coverage inspection path, comprising: Step S101 generates a vector map: a vector map including the boundaries of the area to be inspected and the boundaries of obstacles is constructed by using a drawing tool or autonomous mapping by a robot; Step S201 processes the vector map: according to the robot's traversability, the vector map is expanded and contracted to obtain the robot's traversable vector map; Step S301: Calculate the skeleton graph: Calculate the skeleton graph of the traversable vector map, retaining the basic shape features of the map; Step S401 generates Vast Cells: the traversable vector map is expanded and contracted by half the inspection field of view to obtain a plurality of Vast Cells; Step S501: Build a Graph: Add the remaining skeleton graph paths and boundary segments of Vast Cells as nodes to the Graph to be built; Step S601 calculates the full coverage path within the Vast Cells: using the inspection field size as the inspection path width, calculates the full coverage path within each Vast Cell and uses it as a node in the Graph; Step S701: Build Graph edges: Calculate the shortest path between nodes in the Graph and use it as the edge of the Graph. The edge length is the cost between nodes. Step S801 traverses the Graph: Use the Graph traversal algorithm to calculate the optimal order for traversing all nodes, and then sequentially splice the node segment paths and the corresponding edge segment paths in the optimal order to obtain the final full coverage inspection path.

[0004] Preferably, the step S301 further comprises a step S302 of optimizing the skeleton graph, wherein the step S302 optimizes the skeleton graph by pruning the skeleton graph according to the size of the robot inspection field of view; Preferably, the vector map includes the boundaries of the area to be inspected and the boundaries of obstacles; a vector map is constructed by drawing tools according to the boundaries of the inspection area and the layout of obstacles, or a robot autonomously builds a map and extracts the boundaries of the map range and the boundaries of obstacles to generate a vector map.

[0005] Preferably, the step S501 constructs a Graph: the skeleton graph segments in the vast cells are deleted to obtain the remaining multiple skeleton graph paths, and the remaining skeleton graph paths are split into multiple paths at the bifurcation points, and each path is added as a Graph node to the Graph to be constructed.

[0006] Preferably, the step S601 calculates the full coverage path within the Vast Cells: calculates the intersection points between the remaining skeleton graph segments and the vast cells, splits the boundaries of the vast cells into multiple segment paths based on the intersection points, and adds each segment path as a Graph node to the Graph to be constructed.

[0007] Preferably, step S701 constructs a graph edge: using the inspection field size as the inspection path width, calculating the full coverage inspection path in the vast cells, and adding the full coverage path in each vast cell as a graph node to the graph to be constructed; calculating the shortest path between the first and last path points of the node line segment path in the graph as a graph edge.

[0008] Preferably, the expansion and contraction processing includes: contracting the outer boundary of the vector map; and expanding the inner boundary of the vector map.

[0009] Preferably, the pruning optimization includes: deleting line segments in the skeleton graph whose length is less than a preset threshold, and merging collinear line segments.

[0010] Preferably, the calculation of the graph edge adopts a graph-based point-to-point shortest path planning algorithm: Depth-First Search (DFS) or Breadth-First Search (BFS) or Dijkstra's algorithm or A* search algorithm or Bellman-Ford algorithm.

[0011] Preferably, the graph traversal algorithm adopts the TSP traveling salesman problem algorithm; the specific implementation may adopt: genetic algorithm (GA) or ant colony algorithm (ACO) or Double-Tree algorithm or deep reinforcement learning algorithm.

[0012] Beneficial effects The present invention provides a method for generating a full-coverage inspection path based on a vector map. The method can adapt to narrow area scenarios, generate a global optimal path, reduce labor costs and improve performance. Improve inspection efficiency: Adapt to narrow area scenarios, generate the shortest possible full-coverage inspection path, and improve robot inspection efficiency; Reduce labor costs: Automatically generate full-coverage inspection routes without manual labeling, saving labor costs; Improve performance: Use vector maps to avoid resolution issues, speed up map processing, adapt to large map scenes, and reduce memory and CPU consumption. BRIEF DESCRIPTION OF THE DRAWINGS

[0013] Figure 1 : Flowchart of the implementation steps of the technical solution of the present invention; Figure 2 : Another optimized implementation step flow chart of the technical solution of the present invention; Figure 3 : Flow chart of the specific implementation content of the technical solution of the present invention; Figure 4 : Example diagram of the vector map of the present invention; Figure 5 : Example of a traversable vector map of the present invention; Figure 6 : Example diagram of the skeleton diagram of the present invention; Figure 7 : Example diagram of skeleton graph optimization of the present invention; Figure 8 : The present invention constructs a Graph example graph; Figure 9 : The present invention calculates the full coverage path example diagram within Vast Cells; Figure 10 :The present invention constructs a Graph edge example graph; Figure 11 : The present invention traverses the final full coverage inspection path example graph of Graph. DETAILED DESCRIPTION

[0014] The technical solution of the present invention will be further specifically described below through embodiments and in conjunction with the accompanying drawings.

[0015] Example 1: Figure 1 As shown, a method for generating a full coverage inspection path includes: Step S101 generates a vector map: a vector map including the boundaries of the area to be inspected and the boundaries of obstacles is constructed by using a drawing tool or autonomous mapping by a robot; Step S201 processes the vector map: according to the robot's traversability, the vector map is expanded and contracted to obtain the robot's traversable vector map; Step S301: Calculate the skeleton graph: Calculate the skeleton graph of the traversable vector map, retaining the basic shape features of the map; Step S401 generates Vast Cells: the traversable vector map is expanded and contracted by half the inspection field of view to obtain a plurality of Vast Cells; Step S501: Build a Graph: Add the remaining skeleton graph paths and boundary segments of Vast Cells as nodes to the Graph to be built; Step S601 calculates the full coverage path within the Vast Cells: using the inspection field size as the inspection path width, calculates the full coverage path within each Vast Cell and uses it as a node in the Graph; Step S701: Build Graph edges: Calculate the shortest path between nodes in the Graph and use it as the edge of the Graph. The edge length is the cost between nodes. Step S801 traverses the Graph: Use the Graph traversal algorithm to calculate the optimal order for traversing all nodes, and then sequentially splice the node segment paths and the corresponding edge segment paths in the optimal order to obtain the final full coverage inspection path.

[0016] Example 2: Figure 2-3 As shown, Step S101 generates a vector map: the vector map includes the boundaries of the area to be inspected and the boundaries of obstacles; a vector map is constructed using a drawing tool according to the boundaries of the inspection area and the layout of obstacles, or a robot autonomously builds a map and extracts the boundaries of the map range and the boundaries of obstacles to generate a vector map; Step S201 processes the vector map: according to the robot's traversability, the vector map is expanded and contracted to obtain the robot's traversable vector map; Step S301: Calculate the skeleton graph: Calculate the skeleton graph of the traversable vector map, retaining the basic shape features of the map; Step S302: Optimize the skeleton graph: prune and optimize the skeleton graph according to the size of the robot's inspection field of view; this can reduce the amount of data and optimize the time consumption of the carrier algorithm; Step S401: Generate Vast Cells: Expand and shrink the traversable vector map by half the inspection field of view to obtain multiple Vast Cells. Polygons can be expanded or reduced. Step S501: Graph construction: Delete the skeleton graph segments in the vast cells to obtain the remaining multiple skeleton graph paths. Split the remaining skeleton graph paths into multiple paths at the bifurcation points. Each path segment is added as a graph node to the graph to be constructed. Step S601 calculates the full coverage path within the Vast Cells: calculates the intersection points between the remaining skeleton graph segments and the vast cells, splits the boundaries of the vast cells into multiple segment paths based on the intersection points, and adds each segment path as a graph node to the graph to be constructed; Step S701: Graph edge construction: Graph edge construction uses the inspection field of view size as the inspection path width, calculates the full coverage inspection path in the vast cells, and adds the full coverage path in each vast cell as a graph node to be constructed. The shortest path between the beginning and end path points of the node line segment path in the graph is calculated as a graph edge. Step S801: Graph traversal: Graph traversal algorithm is used to calculate the optimal order for traversing all nodes, and then the node segment paths and the corresponding edge segment paths are sequentially spliced ​​in the optimal order to obtain the final full coverage inspection path; Furthermore, the expansion and contraction process includes: performing shrinkage processing on the outer boundary of the vector map; performing expansion processing on the inner boundary of the vector map; Furthermore, the pruning optimization includes: Deleting line segments in the skeleton graph whose length is less than a preset threshold, and merging collinear line segments; Furthermore, the calculation of the graph edge adopts a graph-based point-to-point shortest path planning algorithm: Depth-First Search (DFS) or Breadth-First Search (BFS) or Dijkstra's algorithm or A* search algorithm or Bellman-Ford algorithm; Furthermore, the graph traversal algorithm adopts the TSP traveling salesman problem algorithm; the specific implementation can adopt: genetic algorithm (GA) or ant colony algorithm (ACO) or Double-Tree algorithm or deep reinforcement learning algorithm.

[0017] Example 3: Figure 2-11 As shown, Step S101 generates a vector map: the vector map includes the boundaries of the area to be inspected and the boundaries of obstacles; a vector map is constructed using a drawing tool according to the boundaries of the inspection area and the layout of obstacles, or a robot autonomously builds a map and extracts the boundaries of the map range and the boundaries of obstacles to generate a vector map; Step S201 processes the vector map: according to the robot's traversability, the vector map is expanded and contracted to obtain the robot's traversable vector map; Step S301: Calculate the skeleton graph: Calculate the skeleton graph of the traversable vector map, retaining the basic shape features of the map; Step S302: Optimize the skeleton graph: prune and optimize the skeleton graph according to the size of the robot's inspection field of view; this can reduce the amount of data and optimize the time consumption of the carrier algorithm; Step S401: Generate Vast Cells: Expand and shrink the traversable vector map by half the inspection field of view to obtain multiple Vast Cells. Polygons can be expanded or reduced. Step S501: Graph construction: Delete the skeleton graph segments in the vast cells to obtain the remaining multiple skeleton graph paths. Split the remaining skeleton graph paths into multiple paths at the bifurcation points. Each path segment is added as a graph node to the graph to be constructed. Step S601 calculates the full coverage path within the Vast Cells: calculates the intersection points between the remaining skeleton graph segments and the vast cells, splits the boundaries of the vast cells into multiple segment paths based on the intersection points, and adds each segment path as a graph node to the graph to be constructed; Step S701: Graph edge construction: Graph edge construction uses the inspection field of view size as the inspection path width, calculates the full coverage inspection path in the vast cells, and adds the full coverage path in each vast cell as a graph node to be constructed. The shortest path between the beginning and end path points of the node line segment path in the graph is calculated as a graph edge. Step S801 traverses the Graph: uses a Graph traversal algorithm to calculate the optimal order for traversing all nodes, and then sequentially splices the node segment paths and the corresponding edge segment paths in the optimal order to obtain the final full coverage inspection path; the expansion and contraction processing includes: contracting the outer boundary of the vector map; expanding the inner boundary of the vector map; the pruning optimization includes: deleting the line segments in the skeleton graph whose length is less than a preset threshold; merging collinear line segments; the calculation of the Graph edges adopts the Graph-based point-to-point shortest path planning algorithm: Depth-First Search (DFS); the Graph traversal algorithm adopts the TSP traveling salesman problem algorithm; the specific implementation can adopt: Genetic Algorithm (GA).

[0018] Definitions of Abbreviations and Key Terms Complete Coverage Path Planning (CCPP): refers to a method of planning a path in a robotic or automated system to ensure that all accessible surfaces within a selected area are inspected or covered by the system once, without missing any area and without covering the same area multiple times.

[0019] Vector map: A map that uses vector data rather than raster data to represent geographic spatial information. Vector data primarily stores and displays the location and shape of geographic features using geometric shapes such as points, lines, and polygons. In contrast, raster maps (also known as bitmap maps) are composed of arrays of pixels. Advantages of vector maps over raster maps: Accuracy: Vector maps can express the boundaries of geographic features with arbitrary precision because they are not limited by pixel size.

[0020] Scalable: They can be infinitely enlarged without distortion because they are based on mathematical formulas rather than fixed-resolution pixels.

[0021] Skeletonization, also known as skeleton extraction, is a technique in digital image processing and computer vision. A skeleton represents the basic features of a shape by removing its width and retaining only its centerline (the skeleton). This process typically involves continually chipping away at the object's boundaries until only the centerline remains. The skeleton retains the original shape's topology and basic geometric information, but significantly simplifies the representation.

[0022] Skeleton graph pruning: Delete some unnecessary end segments to reduce the complexity of the skeleton graph A Voronoi diagram is a mathematical geometry method for partitioning a plane according to a specific distance function. This diagram partitions the plane into multiple regions, each consisting of a generating point (seed point) and the set of points closest to that generating point. In other words, in a Voronoi diagram, the distance from any seed point in the region to which a location belongs is less than the distance from any other seed point. The basic steps and properties of a Voronoi diagram include: Generating points (seed points): First, a series of discrete points on the plane are determined. These points are usually selected randomly or according to a specific application context.

[0023] Region partitioning: Then construct a Voronoi region for each generating point. This region contains all points that are closer to the generating point, that is, the distance to the generating point is less than the distance to any other generating point.

[0024] Voronoi edges and vertices: The boundary between adjacent regions is the perpendicular bisector that bisects the line connecting two adjacent generator points. The vertices of the Voronoi diagram are points equidistant from three or more generator points.

[0025] Vector map expansion and contraction: A vector map can be simplified into a polygon. Polygon expansion and contraction, also known as polygon inflation and polygon deflation, are two operations in computational geometry that process polygon shapes. These operations are commonly used in path planning, regional analysis, spatial modeling, robot obstacle avoidance, and other fields. The basic concepts of the two operations are: Polygon expansion (Inflation or Dilation) Polygon expansion involves moving each point of a polygon by a fixed distance along its normal direction, thereby expanding the entire shape uniformly. This operation is very useful in robotic obstacle avoidance, spatial analysis, CAD, and graphic design.

[0026] For example, to include a safety margin in a given path planning problem, one might want to represent obstacles as their actual size plus a safety margin. This way, when planning a path, one can simply assume that the robot or mobile object is a point, and the homogeneous space around it is formed by the inflated obstacles.

[0027] Polygonal Deflation (or Erosion) In contrast to expansion, polygon contraction involves moving the normal of each polygon point inwards to reduce its size. This typically results in the original polygon becoming smaller in area. In extreme cases, the polygon may disappear entirely due to excessive contraction.

[0028] Inspection Field of View: The size of a robot's inspection field of view depends on the specifications of its cameras or sensors, as well as how they are mounted and configured. Field of view refers to the range of a scene the robot can see at any given distance, typically expressed in horizontal and vertical viewing angles. This parameter is crucial for inspection tasks, as it directly impacts the robot's inspection efficiency and the breadth of area it can cover and inspect.

[0029] Passable vector map: shrink the vector map by half the width of the vehicle to obtain a new vector map. Since shrinkage may split the original vector map into multiple vector maps, the vector map where the robot is currently located is the new passable vector map. Graph: In computer science, a graph is a very important data structure that is used to represent the relationship between objects (called nodes or vertices). A graph consists of the following two main components: Node: The basic unit of a graph, which can be used to represent a node in a network, such as a city, computer, intersection, etc.

[0030] Edges: Lines connecting vertices, representing the relationship between vertices. Edges can be directed or undirected.

[0031] Graphs are often used to solve computational problems, including search, path finding, network flow, and optimization. Common algorithms for manipulating and searching graph structures include Depth-First Search (DFS), Breadth-First Search (BFS), Dijkstra's algorithm, A* search, Bellman-Ford algorithm, Floyd-Warshall algorithm, Kruskal's algorithm, and Prim's algorithm.

[0032] The full coverage path generation algorithm for common scenarios includes: Boustrophedon Pattern: Similar to the path used when plowing a field, suitable for areas with regular shapes; Lawnmower Pattern: Similar to the path of a lawnmower, suitable for open areas; Spiral Pattern: spirals outward from the center, suitable for circular or nearly circular areas; Wave Pattern: Similar to a wave shape, suitable for long strips of area; Other algorithms: such as algorithms based on cell decomposition, algorithms based on Voronoi diagrams, etc.

[0033] It will be apparent to those skilled in the art that the present invention is not limited to the details of the exemplary embodiments described above and that the invention can be embodied in other specific forms without departing from the essential characteristics of the invention. The embodiments should therefore be considered in all respects as illustrative and non-restrictive, and the scope of the invention is defined by the appended claims, not the foregoing description, and all variations coming within the meaning and range of equivalents of the claims are intended to be included therein. Any reference sign in a claim should not be construed as limiting the claim to which it relates.

[0034] In summary, the above description is only a specific embodiment of the present invention, but the structural features of the present invention are not limited thereto. Any changes or modifications made by any technician in this field within the scope of the present invention are included in the patent scope of the present invention.

Claims

1. A method for generating a full coverage inspection path, characterized in that: include Step S101 generates a vector map: a vector map including the boundaries of the area to be inspected and the boundaries of obstacles is constructed by using a drawing tool or autonomous mapping by a robot; Step S201 processes the vector map: according to the robot's traversability, the vector map is expanded and contracted to obtain the robot's traversable vector map; Step S301: Calculate the skeleton graph: Calculate the skeleton graph of the traversable vector map, retaining the basic shape features of the map; Step S401 generates Vast Cells: the traversable vector map is expanded and contracted by half the inspection field of view to obtain a plurality of Vast Cells; Step S501: Build a Graph: Add the remaining skeleton graph paths and boundary segments of Vast Cells as nodes to the Graph to be built; Step S601 calculates the full coverage path within the Vast Cells: using the inspection field size as the inspection path width, calculates the full coverage path within each Vast Cell and uses it as a node in the Graph; Step S701: Build Graph edges: Calculate the shortest path between nodes in the Graph and use it as the edge of the Graph. The edge length is the cost between nodes. Step S801 traverses the Graph: Use the Graph traversal algorithm to calculate the optimal order for traversing all nodes, and then sequentially splice the node segment paths and the corresponding edge segment paths in the optimal order to obtain the final full coverage inspection path.

2. The method for generating a full coverage inspection path according to claim 1, characterized in that: The step S301 further includes step S302 of optimizing the skeleton graph. Step S302 of optimizing the skeleton graph is as follows: pruning and optimizing the skeleton graph according to the size of the robot's inspection field of view.

3. The method for generating a full coverage inspection path according to claim 1, characterized in that: The vector map includes the boundaries of the area to be inspected and the boundaries of obstacles; a vector map is constructed by drawing tools according to the boundaries of the inspection area and the layout of obstacles, or a vector map is generated by extracting the boundaries of the map range and the boundaries of obstacles after the robot autonomously builds the map.

4. The method for generating a full coverage inspection path according to claim 1, wherein: The step S501 constructs a graph by deleting the skeleton graph segments in the vast cells to obtain the remaining multiple skeleton graph paths, and splitting the remaining skeleton graph paths into multiple paths at the bifurcation points. Each path segment is added as a graph node to the graph to be constructed.

5. The method for generating a full coverage inspection path according to claim 1, characterized in that: The step S601 calculates the full coverage path in the Vast Cells: calculates the intersection points between the remaining skeleton graph segments and the vast cells, splits the boundaries of the vast cells into multiple segment paths based on the intersection points, and adds each segment path as a Graph node to the Graph to be constructed.

6. The method for generating a full coverage inspection path according to claim 1, characterized in that: Step S701 constructs a graph edge: using the inspection field of view as the inspection path width, a fully covered inspection path in each vast cell is calculated. The fully covered path in each vast cell is added to the graph to be constructed as a graph node. The shortest path between the beginning and end path points of the node line segment path in the graph is calculated as a graph edge.

7. The method for generating a full coverage inspection path according to claim 1, characterized in that: The expansion and contraction processing includes: contracting the outer boundary of the vector map; and expanding the inner boundary of the vector map.

8. The method for generating a full coverage inspection path according to claim 1, characterized in that: The pruning optimization includes: deleting line segments in the skeleton graph whose length is less than a preset threshold, and merging collinear line segments.

9. The method for generating a full coverage inspection path according to claim 1, characterized in that: The calculation of the graph edge adopts a graph-based point-to-point shortest path planning algorithm: Depth-First Search (DFS) or Breadth-First Search (BFS) or Dijkstra's algorithm or A* search algorithm or Bellman-Ford algorithm.

10. The method for generating a full coverage inspection path according to claim 1, characterized in that: The graph traversal algorithm adopts the TSP traveling salesman problem algorithm; the specific implementation can adopt: genetic algorithm (GA) or ant colony algorithm (ACO) or Double-Tree algorithm or deep reinforcement learning algorithm.