Method and apparatus for generating topological path map, robot, and storage medium

By filtering and updating the sampling points in the robot teaching trajectory and generating topological path maps based on the sampling frequency and curvature, the problem of insufficient accuracy of path maps in the existing technology is solved, and more efficient robot path navigation is achieved.

WO2025148543A1PCT designated stage expired Publication Date: 2025-07-17SHENZHEN PUDU TECH CO LTD

Patent Information

Application Number
PCT/CN2024/134974
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-01-08
Filing Date
2024-11-27
Publication Date
2025-07-17

AI Technical Summary

Technical Problem

In the prior art, the topological path map generated based on image morphological methods such as generalized Vino graphs have poor accuracy and cannot accurately plan the robot path.

Method used

By obtaining the sampling point sequence in the robot teaching trajectory, filtering the target sampling points based on the sampling frequency and curvature, a path map containing the target sampling points is generated, and the error path is removed according to the morphological characteristics of the ring path, and the target topology path map is updated.

Benefits of technology

Improve the accuracy of topological path maps, ensure the accuracy and efficiency of robot path navigation, and eliminate errors and redundancy in path maps.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024134974_17072025_PF_FP_ABST
    Figure CN2024134974_17072025_PF_FP_ABST
Patent Text Reader

Abstract

The present application discloses a method and apparatus for generating a topological path map, a robot, and a storage medium. The method comprises: acquiring a teaching trajectory corresponding to a robot; determining target sampling points from a sampling point sequence of the teaching trajectory; generating paths comprising the target sampling points, and forming a first path map on the basis of the target sampling points and the paths; determining a target circular path on the basis of morphological features of circular paths in the first path map; removing the target circular path, and generating a target path on the basis of the target sampling points comprised in the removed target circular path; and updating the first path map on the basis of the target path to obtain a target topological path map.
Need to check novelty before this filing date? Find Prior Art

Description

Topological path map generation method, device, robot and storage medium

[0001] This application claims priority to the Chinese patent application filed with the China Patent Office on January 8, 2024, with application number 2024100237824 and application name “Topological path map generation method, device, robot and storage medium”, all contents of which are incorporated by reference into this application. Technical Field

[0002] The present application relates to the field of robotics technology, and in particular to a method and device for generating a topological path graph, a robot, and a computer-readable storage medium. Background Art

[0003] With the development of robotics technology, methods that utilize the spatial characteristics of the robot's activity area to generate navigation maps that can be used to guide the robot's spatial movement are of great significance for mobile robots to smoothly complete corresponding business operations.

[0004] In the prior art, a corresponding topological path graph is usually generated based on image morphology methods such as generalized Voronoi diagrams. However, the generated path graph can only roughly plan the robot path and has poor accuracy. Summary of the Invention

[0005] According to various embodiments of the present application, a method, apparatus, robot, and computer-readable storage medium for generating a topology path map are provided.

[0006] The present application provides a method for generating a topological path graph, which is performed by a robot, and the method comprises:

[0007] Obtaining a teaching trajectory corresponding to the robot, wherein the teaching trajectory includes a sampling point sequence;

[0008] Determining a target sampling point from each sampling point in the sampling point sequence based on a preset screening rule, wherein the preset screening rule is determined based on a sampling frequency of each sampling point or a curvature of an arc formed by each sampling point and adjacent sampling points;

[0009] Connecting the target sampling points to generate paths containing the target sampling points, and forming a first path graph based on the target sampling points and the paths;

[0010] determining a target circular path from the circular paths based on morphological features of the circular paths in the first path graph;

[0011] removing the target circular path, and generating a target path based on the target sampling points included in the removed target circular path;

[0012] The first path graph is updated based on the target path to obtain a target topology path graph.

[0013] The details of one or more embodiments of the present application are set forth in the accompanying drawings and the description below. Other features and advantages of the present application will become apparent from the description, drawings, and claims. BRIEF DESCRIPTION OF THE DRAWINGS

[0014] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, without paying any creative work, they can also obtain drawings of other embodiments based on these drawings.

[0015] FIG1 is a schematic diagram of a process for generating a topology path graph according to an embodiment;

[0016] FIG2 is a schematic flow chart of the steps of determining target sampling points in one embodiment;

[0017] FIG3 is a schematic diagram of a process for updating a first path map in one embodiment;

[0018] FIG4 is a schematic diagram of a process for determining a target circular path in one embodiment;

[0019] FIG5 is a schematic diagram of a process for removing a target circular path according to an embodiment;

[0020] FIG6 is a schematic diagram of a process for removing a target circular path according to another embodiment;

[0021] FIG7 is a schematic diagram of a process for removing a target circular path according to another embodiment;

[0022] FIG8 is a schematic diagram of a robot teaching trajectory in a specific embodiment;

[0023] FIG9 is a first path diagram including target sampling points and their paths in a specific embodiment;

[0024] FIG10 is a first path diagram after merging target sampling points that are too close to each other in a specific embodiment;

[0025] FIG11 is a partial schematic diagram of splitting the closest paths to the reference sampling points in a specific embodiment;

[0026] FIG12 is a first path diagram after splitting the most adjacent paths of each sampling point in a specific embodiment;

[0027] FIG13 is a partial schematic diagram of removing a target annular path in a specific embodiment;

[0028] FIG14 is a first path diagram after removing the target circular path in a specific embodiment;

[0029] FIG15 is a structural block diagram of a topology path diagram generating device according to an embodiment;

[0030] FIG16 is a diagram showing the internal structure of a robot according to an embodiment. DETAILED DESCRIPTION

[0031] To facilitate understanding of the present application, a more comprehensive description of the present application will be provided below with reference to the accompanying drawings. The accompanying drawings illustrate preferred embodiments of the present application. However, the present application may be implemented in many different forms and is not limited to the embodiments described herein. Rather, these embodiments are provided to provide a more thorough and comprehensive understanding of the disclosure of the present application.

[0032] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by those skilled in the art to which the invention pertains. The terms used in the specification of the invention herein are for the purpose of describing specific embodiments only and are not intended to limit the present application. The term "and / or" as used herein includes any and all combinations of one or more of the associated listed items.

[0033] In one embodiment, as shown in FIG1 , a method for generating a topology path map is provided. This embodiment uses the method applied to a robot as an example. It is understood that the method can also be applied to a server, or to a system including a robot and a server, and implemented through interaction between the robot and the server. In this embodiment, the method for generating a topology path map is performed by a robot, and the method includes the following steps:

[0034] Step S102: Obtain the teaching trajectory corresponding to the robot.

[0035] It is understandable that the teaching trajectory includes a sequence of sampling points, and the teaching trajectory is a point trajectory generated by the user teaching the robot to move in the corresponding work scene (such as a restaurant, hotel, workshop, etc.). The teaching trajectory is the trajectory of the robot's movement when the user performs a teaching operation on the robot in the work scene. The teaching trajectory represents the path that the user expects the robot to walk. The teaching operation includes but is not limited to the following methods: the user teaches the robot to move according to the desired path, the user controls the robot to move according to the desired path through a remote control device, and the robot is controlled to track the user or other self-moving objects to move according to the user's desired path. Usually, the robot is made to walk once or multiple times in the work scene and return to the starting point through the teaching operation. In one example, the point trajectory can be collected at a preset time interval. The preset time interval can be set according to actual needs. For example, the preset time interval can be 0.1s to 1s, specifically 0.1s, 0.5s or 1s, which is not specifically limited here. In other examples, these point trajectories can also be collected according to preset displacement intervals and / or angle intervals, such as once every 0.2m of movement or once every 20-degree angle change, without any specific numerical restrictions. The work scene can be pre-mapped, or a map can be drawn while teaching using laser point cloud and / or depth image data collected by a lidar and / or depth camera.

[0036] Step S104 : determining a target sampling point from each sampling point in the sampling point sequence based on a preset screening rule.

[0037] The preset screening rule is determined based on the sampling frequency of each sampling point or the curvature of an arc formed by each sampling point and adjacent sampling points.

[0038] Specifically, the robot analyzes the sampling frequency corresponding to each sampling point in the sampling point sequence. If the sampling frequency of a sampling point is greater than the frequency threshold, the sampling point and the sampling points within a preset range are determined as target sampling points. At the same time, the robot also analyzes the curvature corresponding to each sampling point in the sampling point sequence, and determines the sampling point with a curvature greater than the curvature threshold as the target sampling point. The method for calculating the curvature corresponding to the sampling point can be determined based on the adjacent sampling points corresponding to the previous moment of the current sampling point, the adjacent sampling points corresponding to the next moment, and the arc formed by the current sampling point. The frequency threshold and the curvature threshold can be set by the technician according to the spatial layout characteristics of the robot's current working scene.

[0039] It can be understood that when the sampling frequency of the corresponding sampling point is greater than the frequency threshold, it indicates that the robot has passed the corresponding sampling point multiple times during the teaching process, and thus the corresponding sampling point may be an intersection in the working scene, so it is necessary to use the sampling point at the intersection and the sampling points within the preset range as target sampling points; in addition, when the curvature of the corresponding sampling point is greater than the curvature threshold, it indicates that the corresponding sampling point is a turning point in the working scene, and thus it is necessary to select the turning point as the target sampling point.

[0040] Step S106 : connecting the target sampling points to generate paths including the target sampling points, and constructing a first path graph based on the target sampling points and the paths.

[0041] The path is a connecting line between target sampling points, and the first path diagram includes the position of each target sampling point and the position of the connecting line (path) between each target sampling point in the operation scene.

[0042] Specifically, the robot adds the target sampling points screened and determined in the above steps to the plan view corresponding to the work scene, and connects each target sampling point in chronological order to generate each path containing the target sampling points, thereby forming a first path map by each target sampling point in the plan view and the corresponding paths.

[0043] Step S108 : determining a target circular path from the circular paths based on the morphological features of the circular paths in the first path graph.

[0044] The morphological features are used to characterize the shape of the two-dimensional figure enclosed by the circular path, and specifically may be the area, perimeter, and area-to-perimeter ratio.

[0045] Specifically, the robot calculates the morphological features of the two-dimensional figure enclosed by each circular path in the first path diagram, and then compares the morphological features corresponding to each circular path with the standard form to obtain the comparison results, and based on the comparison results, determines the target circular path from each circular path. Optionally, the robot can calculate the area-to-perimeter ratio of the two-dimensional figure enclosed by each circular path, and then compare the area-to-perimeter ratio with a preset threshold. If the area-to-perimeter ratio is greater than the preset threshold, it indicates that the circular path is "larger", and it can be considered that it reflects the normal cruising path in the working scene and does not need to be removed; if the area-to-perimeter ratio is less than the preset threshold, it indicates that the circular path is "smaller", which is very likely to be an erroneous circular path generated during the teaching robot to move, and does not mean that the user expects the robot to circle on these "smaller" circular paths. At this time, the circular path needs to be removed, so the circular path is determined as the target circular path, where the preset threshold is determined by the spatial characteristics, layout characteristics, etc. of the working scene.

[0046] It is understandable that during the process of teaching the robot to construct a teaching trajectory, there may be teaching pauses, avoidance of dynamic obstacles, and repeated teaching of short distances. Therefore, compared with the ideal teaching process, the actual teaching process will inevitably lead to the robot constructing an incorrect circular path for the target sampling point. Therefore, it is necessary to effectively remove the incorrect circular path (corresponding to the target circular path mentioned above). Removing these "smaller" circular paths can improve the accuracy of the topological path diagram, better meet the user's expectations, and thus improve the robot's operating efficiency.

[0047] Step S110 : removing the target circular path, and generating a target path based on the target sampling points included in the removed target circular path.

[0048] Specifically, the robot determines each target circular path in the first path diagram according to the above steps, removes each target circular path in turn, and regenerates the target path based on the target sampling points contained in the removed target circular path. Optionally, the robot determines the corresponding exit sampling point among the target sampling points contained in the removed target circular path, and then generates a new target path based on the exit sampling point, wherein the exit sampling point is a sampling point among the target sampling points that contains at least three adjacent paths.

[0049] Step S112: Update the first path graph based on the target path to obtain a target topology path graph.

[0050] Among them, the target topology path map is used to guide the robot's path.

[0051] Specifically, the robot replaces the target circular path in the first path graph with the corresponding target path, thereby completing the update of the first path graph and obtaining the target topological path graph.

[0052] In this embodiment, sampling points corresponding to the robot's teaching trajectory are screened based on the sampling frequency of the sampling points and the curvature of the arc formed by each sampling point and adjacent sampling points, thereby effectively determining the sampling points at the intersection and the target sampling points at the turning point in the teaching trajectory. A first path map is then constructed based on the target sampling points and the paths determined by the connections. Based on the morphological characteristics of each circular path in the first path map, the target circular paths that need to be removed are determined, and then the target circular paths are removed, so that the first path map after removing the target circular paths can more accurately represent the position of the robot's reachable path, eliminate errors and redundant paths in the path map, and improve the accuracy of the generated path map, thereby making the robot path navigation using the path map more accurate and efficient.

[0053] In one embodiment, as shown in FIG2 , determining a target sampling point from each sampling point in a sampling point sequence based on a preset screening rule includes:

[0054] Step S202 : Compare the sampling frequency of each sampling point with a first threshold value, and determine the sampling point whose sampling frequency is greater than the first threshold value and the sampling points within a preset range thereof as the first sampling point.

[0055] Among them, the first threshold is determined according to the spatial characteristics of the work scene corresponding to the first path map (such as the location layout of roads, furniture, etc.), and can be flexibly set by technical personnel based on the work scene.

[0056] Specifically, the robot compares the sampling frequency corresponding to each sampling point with the first threshold in turn. If the current sampling frequency is greater than the first threshold, it indicates that the sampling point is a sampling point at an intersection. The sampling point corresponding to the current sampling frequency and the sampling points within its preset range are then determined as the first sampling point.

[0057] Step S204 : determining the curvature of the target arc based on each sampling point and the target arc formed by the corresponding adjacent sampling points, and determining the sampling point with a curvature greater than a second threshold as a second sampling point.

[0058] Among them, the second threshold is determined according to the spatial characteristics of the work scene corresponding to the first path map (such as the location layout of roads, furniture, etc.), and can be flexibly set by technical personnel based on the work scene.

[0059] Specifically, the robot constructs a corresponding arc based on each sampling point and its adjacent sampling points (several adjacent points before and after in time sequence), calculates the curvature corresponding to the arc, and then compares the corresponding curvature with the second threshold. If the corresponding curvature is greater than the second threshold, it indicates that the curvature of the teaching trajectory at the sampling point corresponding to the curvature exceeds a preset value, and it is considered that there is a turning point / corner at this location in the work scene, so the sampling point corresponding to the curvature is determined as the second sampling point.

[0060] Step S206: determining a target sampling point based on the first sampling point and the second sampling point.

[0061] Specifically, the robot directly uses the first sampling point and the second sampling point determined in the above steps as the target sampling point, which can accurately reflect the positions of the intersection point (first sampling point) and the turning point (second sampling point) in the robot's teaching trajectory.

[0062] In this embodiment, the sampling frequency of each sampling point is compared with a first threshold, and a sampling point with a sampling frequency greater than the first threshold is determined as a first sampling point. The curvature corresponding to the target arc is determined based on each sampling point and the target arc formed by the corresponding adjacent sampling points. The sampling point with a curvature greater than a second threshold is determined as the second sampling point. The target sampling point is determined based on the first sampling point and the second sampling point. This effectively filters out the sampling points in the robot's teaching trajectory that are used to represent the vicinity of intersections and the sampling points at corners, thereby constructing target sampling points that can accurately reflect the spatial characteristics of the work scene, thereby improving the reliability and accuracy of the target sampling points.

[0063] In one embodiment, as shown in FIG3 , after connecting the target sampling points to generate paths including the target sampling points, and forming a first path graph based on the target sampling points and the paths, the method further includes:

[0064] Step S302 : determining the distance between each target sampling point and the most adjacent path in the first path graph, and determining the target sampling point whose distance is less than a distance threshold as a reference sampling point.

[0065] Among them, the most adjacent path is the path closest to the corresponding target sampling point outside the path where the target sampling point is located. The distance threshold can be flexibly set by technicians according to the spatial layout characteristics of the robot operation scene.

[0066] Specifically, the robot optimizes the path that is too close to the target sampling point in the first path graph. Specifically, the robot sequentially determines the distance between each target sampling point and the nearest neighboring path in the first path graph, and compares the distance with the distance threshold. If the distance is less than the distance threshold, it indicates that the target sampling point is too close to the corresponding nearest neighboring path. In this case, it is determined that the path generation of the nearest neighboring path is unreasonable, and the corresponding nearest neighboring path needs to be corrected based on the target sampling point. Therefore, the target sampling point corresponding to the nearest neighboring path is determined as the reference sampling point.

[0067] Step S304 : splitting the nearest neighbor path corresponding to the reference sampling point to obtain segmented paths, so that the segmented paths pass through the reference sampling point.

[0068] For example, when correction is performed based on the nearest neighbor path (p1, p3) corresponding to the reference sampling point, the nearest neighbor path (p1, p3) is split to obtain segmented paths (p1, p2, p3), so that the segmented paths pass through the reference sampling point.

[0069] Step S306 : updating the first path graph based on the segmented path to obtain an updated first path graph.

[0070] In this embodiment, the distance between each target sampling point and the nearest neighboring path in the first path graph is determined, and the target sampling point whose distance is less than a distance threshold is determined as a reference sampling point. The nearest neighboring path corresponding to the reference sampling point is split to obtain segmented paths, so that the segmented paths pass through the reference sampling point. The first path graph is updated based on the segmented paths to obtain an updated first path graph, thereby correcting erroneous / redundant path information in the first path graph and effectively improving the reliability and accuracy of the first path graph.

[0071] In one embodiment, as shown in FIG4 , determining a target circular path from each circular path based on the morphological features of each circular path in the first path graph includes:

[0072] Step S402 , calculating the area-to-perimeter ratio of the figures enclosed by each circular path in the first path diagram.

[0073] The area-perimeter ratio is the ratio of the area of ​​the corresponding figure to its perimeter.

[0074] Step S404: Determine the circular path corresponding to the area-to-perimeter ratio being smaller than the third threshold as the target circular path.

[0075] Among them, the third threshold is flexibly set by technicians according to the spatial layout characteristics of the robot operation scene.

[0076] It is understandable that in the process of teaching the robot to construct the teaching trajectory, there may be teaching pauses, avoidance of dynamic obstacles, and repeated teaching of short distances. Therefore, compared with the ideal teaching process, the actual teaching process will inevitably lead to the robot constructing an erroneous circular path for the target sampling point. Therefore, the erroneous circular path (corresponding to the above-mentioned target circular path) needs to be effectively removed.

[0077] In this embodiment, by respectively calculating the area-to-perimeter ratio of the figure enclosed by each circular path in the first path diagram, the circular path corresponding to the area-to-perimeter ratio less than the third threshold is determined as the target circular path. Therefore, based on the size relationship between the area perimeter and the third threshold, the target circular path that needs to be corrected / removed can be quickly and effectively determined, thereby improving the accuracy and reliability of the target topology path diagram obtained by subsequent updates.

[0078] In one embodiment, as shown in FIG5 , the target annular path is removed, and the target path is generated based on the target sampling points included in the removed target annular path, including:

[0079] Step S502: Determine the exit sampling point in the target circular path.

[0080] The exit sampling point is a sampling point in the target sampling point that contains at least three adjacent paths.

[0081] Step S504 : determining a target connection point corresponding to the target circular path based on the exit sampling point in the target circular path, and generating a corresponding target path based on the target connection point.

[0082] Specifically, the robot can determine the corresponding target connection point according to the number of exit sampling points contained in the target circular path, that is, if the target circular path contains only one exit sampling point, the exit sampling point is directly retained, and other target sampling points and their paths on the target circular path except the exit sampling point are removed; if the target circular path contains only two exit sampling points, the two exit sampling points are retained and used as target connection points, the other target sampling points on the target circular path are deleted, and the two target connection points are directly connected to generate the corresponding target path; if the target circular path contains three or more exit sampling points, each exit sampling point is retained, each connecting line (path) of the target circular path is deleted, and the corresponding target connection point is determined based on the center point of the two-dimensional plane figure enclosed by the target circular path, and each retained exit sampling point is respectively connected to the target connection point to generate the corresponding target path.

[0083] In this embodiment, by determining the exit sampling point in the target circular path, based on the exit sampling point in the target circular path, the target connection point corresponding to the target circular path is determined, and based on the target connection point, the corresponding target path is generated, thereby selecting a suitable circular path removal method based on the path characteristics of each target circular path itself, thereby effectively improving the reliability of the path diagram.

[0084] In one embodiment, as shown in FIG6 , determining a target connection point corresponding to the target circular path based on an exit sampling point in the target circular path, and generating a corresponding target path based on the target connection point includes:

[0085] Step S602: If the target circular path includes an exit sampling point, the target circular path is removed, and other adjacent paths corresponding to the exit sampling point are used as target paths.

[0086] Step S604: If the target circular path includes two exit sampling points, the target circular path is removed, the two exit sampling points are retained, and a corresponding target path is generated based on the two exit sampling points.

[0087] In this embodiment, by judging the attribute characteristics of the exit sampling points included in the target circular path, a concise and effective method for removing the target circular path is determined, thereby effectively ensuring the reliability and accuracy of the generated path map.

[0088] In one embodiment, as shown in FIG7 , determining a target connection point corresponding to the target circular path based on an exit sampling point in the target circular path, and generating a corresponding target path based on the target connection point further includes:

[0089] Step S702: If the target circular path includes three or more exit sampling points, the center point of the graph enclosed by the target circular path is calculated.

[0090] Specifically, when the robot is tracing a target circular path containing three or more exit sampling points, it calculates the centroid or center of mass of the two-dimensional plane figure enclosed by the target circular path. Optionally, the robot can also select any point in the two-dimensional plane figure, not limited to the centroid or center of mass.

[0091] Step S704: Generate a corresponding target path based on the center point.

[0092] Specifically, the robot connects each exit sampling point of the target circular path with the center point to generate a corresponding target path.

[0093] Optionally, after the robot calculates the center point of the figure enclosed by the target circular path, it detects whether there is an obstacle at the center position in the work scene / first path diagram. If there is an obstacle, it then makes an inscribed circle with the largest diameter (or an inscribed circle of any diameter) based on the remaining free area (the area where there are no obstacles) in the two-dimensional plane figure, and then uses the center of the inscribed circle (or any point on or inside the circle) as the target connection point corresponding to the target circular path, and then connects each exit sampling point of the target circular path to the target connection point to generate the corresponding target path.

[0094] In this embodiment, if the target circular path contains three or more exit sampling points, the center point of the figure enclosed by the target circular path is calculated, and then the corresponding target path is generated based on the center point, effectively determining the target connection point corresponding to the complex target circular path, thereby effectively removing the target circular path and effectively ensuring the reliability and accuracy of the generated path diagram.

[0095] This application also provides an application scenario, which applies the above-mentioned topological path map generation method. The method is applied to a scenario in which a path map that can be used for robot navigation is generated based on the robot's teaching path. Specifically, the application of the topological path map generation method in this application scenario is as follows:

[0096] The robot teaching path is obtained. The teaching path includes a sequence of sampling points collected by the robot during the teaching process, as shown in Figure 8. Based on the density of each adjacent sampling point in the sampling point sequence, the sampling point sequence is interpolated to generate an optimized sampling point sequence so that the distance between each adjacent sampling point in the optimized sampling point sequence is less than the distance threshold dist1.

[0097] The sampling frequency of each sampling point in the optimized sampling point sequence is compared with the first threshold. If the sampling frequency is greater than the first threshold, it means that the sampling point corresponding to the sampling frequency is a location that the robot has passed through many times during the teaching process (which can be considered as a pending intersection point). Therefore, the sampling points within the target range corresponding to the sampling points corresponding to the sampling frequency are selected as important intersection landmark points (target sampling points). At the same time, the curvature corresponding to the arc determined by each sampling point in the optimized sampling point sequence and its adjacent sampling points is compared with the second threshold. If the curvature is greater than the second threshold, the sampling point corresponding to the curvature is considered to be a sampling point at a corner, and the sampling point corresponding to the curvature is selected as the target sampling point.

[0098] The target sampling points determined in the above steps are connected in sequence according to the acquisition time to generate corresponding paths, and then a first path map including the target sampling points and their corresponding paths is constructed, as shown in FIG9 . Then, the points in the first path map where the distance between adjacent sampling points is less than the preset distance are merged to obtain a merged first path map, as shown in FIG10 .

[0099] The distance between each sampling point and its nearest path in the above-mentioned first path graph (shown in Figure 10) is compared with a preset threshold. If the distance is less than the preset threshold, the nearest path is split. As shown in Figure 11, the path shown in (a) is split to obtain the path shown by the dotted line (b), so that the split path passes through the corresponding sampling point. Then, the first path graph is updated based on each split path to obtain the updated first path graph shown in Figure 12.

[0100] Based on the first path diagram shown in FIG12 , each circular path in the first path diagram is analyzed, specifically:

[0101] The area-to-perimeter ratio of each circular path is calculated separately, and then compared with the third threshold. If the area-to-perimeter ratio is less than the third threshold, the circular path corresponding to the area-to-perimeter ratio is determined as the target circular path. It should be noted that the existence of a circular path means that there are at least two reachable paths between two points on the path, which is usually because the taught trajectory does not overlap in the round trip.

[0102] The exit sampling points in each target circular path are identified respectively, where the exit sampling point is a sampling point in the target sampling point that contains at least three adjacent paths; for example, if there is a circular path, if a sampling point has other adjacent sampling points in addition to and, it is called an exit sampling point.

[0103] According to the number of exit sampling points included in the target annular path, the corresponding target connection point is determined. That is, if the target annular path contains only one exit sampling point, the exit sampling point is directly retained, and the other sampling points and their paths on the target annular path except the exit sampling point are removed; if the target annular path contains only two exit sampling points, the two exit sampling points are retained and used as target connection points, the other sampling points on the target annular path are deleted, and the two target connection points are directly connected to generate the corresponding target path; if the target annular path contains three or more exit sampling points, each exit sampling point is retained and each connection line (path) of the target annular path is deleted, and the center point of the two-dimensional plane figure enclosed by the target annular path is determined as the corresponding target connection point, and each retained exit sampling point is connected to the target connection point respectively, so as to generate the corresponding target path. As shown in Figure 13, after removing the target annular path shown in (a), the target path shown by the dotted line in (b) is generated based on the center point of the target annular path.

[0104] Finally, after removing each target circular path and generating the corresponding target path according to the above steps, the first path map is updated based on each target path to obtain an updated target topology path map, as shown in Figure 14. The local search method is then used to fine-tune the positions of each sampling point in the target topology path map. This makes each path segment in the target topology path map smoother and more consistent with the initial teaching trajectory.

[0105] In this embodiment, sampling points corresponding to the robot's teaching trajectory are screened based on the sampling frequency of the sampling points and the curvature of the arc formed by each sampling point and adjacent sampling points, thereby effectively determining the sampling points at the intersection and the target sampling points at the turning point in the teaching trajectory. A first path map is then constructed based on the target sampling points and the paths determined by the connections. Based on the morphological characteristics of each circular path in the first path map, the target circular paths that need to be removed are determined, and then the target circular paths are removed, so that the first path map after removing the target circular paths can more accurately represent the position of the robot's reachable path, eliminate errors and redundant paths in the path map, and improve the accuracy of the generated path map, thereby making the robot path navigation using the path map more accurate and efficient.

[0106] It should be understood that, although the various steps in the flowcharts involved in the various embodiments described above are displayed in sequence according to the instructions of the arrows, these steps are not necessarily executed in sequence in the order indicated by the arrows. Unless otherwise specified herein, there is no strict order restriction on the execution of these steps, and these steps can be executed in other orders. Moreover, at least a portion of the steps in the flowcharts involved in the various embodiments described above can include multiple steps or multiple stages, and these steps or stages are not necessarily executed and completed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a portion of steps or stages in other steps.

[0107] In one embodiment, as shown in FIG15 , a topology path graph generating device is provided. The device may be a software module or a hardware module, or a combination of both, and may be part of a robot. The device specifically includes: a mapping module 1502 , a generating module 1504 , and an updating module 1506 , wherein:

[0108] A mapping module 1502 is configured to obtain a teaching trajectory corresponding to the robot, the teaching trajectory including a sequence of sampling points; determine a target sampling point from each sampling point in the sequence of sampling points based on a preset screening rule, the preset screening rule being determined based on the sampling frequency of each sampling point or the curvature of an arc formed by each sampling point and adjacent sampling points; connect the target sampling points to generate paths containing the target sampling points, and construct a first path graph based on the target sampling points and the paths;

[0109] The generating module 1504 is configured to determine a target circular path from each circular path based on the morphological features of each circular path in the first path graph; remove the target circular path, and generate a target path based on the target sampling points included in the removed target circular path;

[0110] The updating module 1506 is used to update the first path map based on the target path to obtain a target topology path map, and the target topology path map is used to perform path navigation for the robot.

[0111] In one embodiment, the pattern composition module 1502 is further configured to compare the sampling frequency of each sampling point with a first threshold, and determine the sampling point having a sampling frequency greater than the first threshold and the sampling points within a preset range thereof as the first sampling point; determine the curvature corresponding to the target arc based on the target arc formed by each sampling point and the corresponding adjacent sampling points, and determine the sampling point having a curvature greater than a second threshold as the second sampling point; and determine the target sampling point based on the first sampling point and the second sampling point.

[0112] In one embodiment, the mapping module 1502 is further configured to determine the distance between each target sampling point and the nearest neighboring path in the first path graph, and to determine a target sampling point whose distance is less than a distance threshold as a reference sampling point, where the nearest neighboring path is the path closest to the path where the target sampling point is located; split the nearest neighboring path corresponding to the reference sampling point to obtain segmented paths, such that the segmented paths pass through the reference sampling point; and update the first path graph based on the segmented paths to obtain an updated first path graph.

[0113] In one embodiment, the generating module 1504 is further configured to calculate the area-to-perimeter ratio of each circular path in the first path diagram; and determine the circular path corresponding to the area-to-perimeter ratio smaller than the third threshold as the target circular path.

[0114] In one embodiment, the generation module 1504 is further used to determine an exit sampling point in the target circular path, where the exit sampling point is a sampling point among the target sampling points that includes at least three adjacent paths; based on the exit sampling point in the target circular path, determine a target connection point corresponding to the target circular path, and generate a corresponding target path based on the target connection point.

[0115] In one embodiment, the generation module 1504 is further configured to remove the target circular path if the target circular path includes one exit sampling point, and use the other adjacent paths corresponding to the exit sampling point as the target path; and to remove the target circular path if the target circular path includes two exit sampling points, retain the two exit sampling points, and generate the corresponding target path based on the two exit sampling points.

[0116] In one embodiment, the generating module 1504 is further configured to calculate the center of the graph enclosed by the target circular path if the target circular path includes three or more exit sampling points; and generate the corresponding target path based on the center.

[0117] The above-mentioned topological path map generating device screens the sampling points based on the sampling frequency of the sampling points and the curvature of the arc formed by each sampling point and the adjacent sampling points through the sampling points corresponding to the teaching trajectory of the robot, thereby effectively determining the sampling points at the intersection and the target sampling points at the turning point in the teaching trajectory, and then constructs a first path map based on the target sampling points and the paths determined by the connections. Then, based on the morphological characteristics of each circular path in the first path map, the target circular path that needs to be removed is determined, and then the target circular path is removed so that the first path map after removing the target circular path can more accurately represent the position of the robot's reachable path, eliminate errors and redundant paths in the path map, and improve the accuracy of the generated path map, so that the robot path navigation using the path map is more accurate and efficient.

[0118] The specific limitations of the topology path map generation device can be found in the limitations of the topology path map generation method described above and will not be repeated here. The various modules in the above-mentioned topology path map generation device can be implemented in whole or in part through software, hardware, or a combination thereof. The above-mentioned modules can be embedded in or independent of the processor in the robot in hardware form, or can be stored in the memory of the robot in software form, so that the processor can call and execute the corresponding operations of the above-mentioned modules.

[0119] In one embodiment, a robot is provided, the internal structure of which may be shown in FIG16 . The robot includes a processor, memory, a communication interface, a display screen, and an input device connected via a system bus. The robot's processor is used to provide computing and control capabilities. The robot's memory includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and computer-readable instructions. The internal memory provides an environment for the operation of the operating system and computer-readable instructions in the non-volatile storage medium. The robot's communication interface is used to communicate with an external terminal via wired or wireless communication, where the wireless communication may be achieved via Wi-Fi, a mobile cellular network, NFC (near-field communication), or other technologies. When executed by the processor, the computer-readable instructions implement a method for generating a topological path map. The robot's display screen may be a liquid crystal display or an electronic ink display screen. The robot's input device may be a touch layer covering the display screen, or may be buttons, a trackball, or a touchpad provided on the robot housing, or may be an external keyboard, touchpad, or mouse.

[0120] Those skilled in the art will understand that the structure shown in Figure 16 is merely a block diagram of a partial structure related to the scheme of the present application, and does not constitute a limitation on the robot to which the scheme of the present application is applied. The specific robot may include more or fewer components than shown in the figure, or combine certain components, or have a different arrangement of components.

[0121] In one embodiment, a robot is further provided, comprising a memory and a processor, wherein the memory stores computer-readable instructions, and the processor implements the steps in the above-mentioned method embodiments when executing the computer-readable instructions.

[0122] In one embodiment, a computer-readable storage medium is provided, which stores computer-readable instructions. When the computer-readable instructions are executed by a processor, the steps in the above-mentioned method embodiments are implemented.

[0123] In one embodiment, a computer program product or computer program is provided. The computer program product or computer program includes computer-readable instructions stored in a computer-readable storage medium. A processor of a robot reads the computer-readable instructions from the computer-readable storage medium and executes the computer-readable instructions, causing the robot to perform the steps of each of the above method embodiments.

[0124] Those skilled in the art will appreciate that all or part of the processes in the above-mentioned embodiment methods can be implemented by instructing related hardware through computer-readable instructions, and the computer-readable instructions can be stored in a non-volatile computer-readable storage medium. When the computer-readable instructions are executed, they can include processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in this application may include at least one of non-volatile and volatile memory. Non-volatile memory may include read-only memory (ROM), magnetic tape, floppy disk, flash memory or optical memory, etc. Volatile memory may include random access memory (RAM) or external cache memory. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM).

[0125] The technical features of the above-mentioned embodiments can be combined arbitrarily. In order to make the description concise, not all possible combinations of the technical features in the above-mentioned embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0126] The above-described embodiments merely represent several implementation methods of the present application. While the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the patent application. It should be noted that a person of ordinary skill in the art may make various modifications and improvements without departing from the spirit of the present application, and these modifications and improvements fall within the scope of protection of the present application. Therefore, the scope of protection of the present patent application shall be determined by the appended claims.

Claims

1. A topological path graph generation method, executed by a robot, the method comprising: Obtaining a teaching trajectory corresponding to the robot, the teaching trajectory including a sequence of sampling points; Based on a preset screening rule, determining target sampling points from each sampling point in the sampling point sequence, the preset screening rule being determined based on the sampling frequency of each sampling point or the curvature of the arc formed by each sampling point and its adjacent sampling points; Connecting the target sampling points to generate each path including the target sampling points, and forming a first path graph according to the target sampling points and the each path; Based on the morphological features of each circular path in the first path graph, determining a target circular path from the each circular path; Removing the target circular path, and generating a target path based on the target sampling points included in the removed target circular path; And Updating the first path graph based on the target path to obtain a target topological path graph.

2. The method according to claim 1, wherein the determining the target sampling points from each sampling point in the sampling point sequence based on a preset screening rule includes: Respectively comparing the sampling frequency of each sampling point with a first threshold, and determining the sampling points with a sampling frequency greater than the first threshold and the sampling points within a preset range thereof as first sampling points; Respectively determining the curvature corresponding to the target arc based on the each sampling point and the corresponding adjacent sampling points, and determining the sampling points with a curvature greater than a second threshold as second sampling points; And Determining the target sampling points based on the first sampling points and the second sampling points.

3. The method according to claim 1, after the connecting the target sampling points to generate each path including the target sampling points, and forming a first path graph according to the target sampling points and the each path, further comprising: Respectively determining the distance between each target sampling point in the first path graph and the closest adjacent path, and determining the target sampling points with a distance less than a distance threshold as reference sampling points, the closest adjacent path being the path with the closest distance outside the path where the corresponding target sampling point is located; Splitting the closest adjacent path corresponding to the reference sampling point to obtain segmented paths after splitting, so that the segmented paths pass through the reference sampling points; And Updating the first path graph based on the segmented paths to obtain an updated first path graph.

4. The method according to claim 1, wherein the morphological features are used to characterize the morphology of the two-dimensional figure enclosed by the circular path, and the determining the target circular path from the each circular path based on the morphological features of each circular path in the first path graph includes: Calculating the morphological features of the two-dimensional figure enclosed by each circular path in the first path graph; Comparing the morphological features corresponding to each circular path with a standard morphology to obtain a comparison result; and Determining the target circular path from the each circular path based on the comparison result.

5. According to the method described in claim 4, the morphological feature includes the area-perimeter ratio. Determining the target circular path from the circular paths based on the morphological features of the circular paths in the first path diagram includes: Calculating the area-perimeter ratio of the figure enclosed by each circular path in the first path diagram respectively; And Determining the circular path corresponding to the area-perimeter ratio less than the third threshold as the target circular path.

6. According to the method described in claim 5, the area-perimeter ratio is the ratio of the area of the corresponding figure to its perimeter.

7. According to the method described in claim 1, removing the target circular path and generating a target path based on the target sampling points included in the removed target circular path includes: Determining the exit sampling points in the target circular path, where the exit sampling points are the sampling points among the target sampling points that include at least three adjacent paths; And Based on the exit sampling points in the target circular path, determining the target connection points corresponding to the target circular path, and generating the corresponding target path based on the target connection points.

8. According to the method described in claim 7, determining the target connection points corresponding to the target circular path based on the exit sampling points in the target circular path and generating the corresponding target path based on the target connection points includes: If the target circular path includes one exit sampling point, removing the target circular path and using the other adjacent paths corresponding to the exit sampling point as the target path; And If the target circular path includes two exit sampling points, removing the target circular path and retaining the two exit sampling points, and generating the corresponding target path based on the two exit sampling points.

9. According to the method described in claim 7, determining the target connection points corresponding to the target circular path based on the exit sampling points in the target circular path and generating the corresponding target path based on the target connection points includes: If the target circular path includes three or more exit sampling points, calculating the center point of the figure enclosed by the target circular path; And Generating the corresponding target path based on the center point.

10. According to the method described in claim 9, if the target circular path includes three or more exit sampling points, calculating the center point of the figure enclosed by the target circular path includes: If the target circular path includes three or more exit sampling points, calculating the centroid or center of mass of the two-dimensional planar figure enclosed by the target circular path.

11. According to the method described in claim 9, generating the corresponding target path based on the center point includes: Connecting each exit sampling point of the target circular path to the center point respectively to generate the corresponding target path.

12. According to the method described in claim 9, generating the corresponding target path based on the center point includes: Detecting whether there is an obstacle at the center position of the first path diagram; If there is such an obstacle, then based on the remaining free area in the two-dimensional planar figure enclosed by the target circular path, an inscribed circle with the largest diameter is constructed, and the center of the inscribed circle is used as the target connection point corresponding to the target circular path; and Connect each exit sampling point of the target circular path to the target connection point respectively to generate a corresponding target path.

13. A topological path graph generation device, the device includes: A composition module, configured to obtain a teaching trajectory corresponding to a robot, where the teaching trajectory includes a sampling point sequence; Based on a preset screening rule, determine target sampling points from each sampling point in the sampling point sequence, where the preset screening rule is determined based on the sampling frequency of each sampling point or the curvature of the arc formed by each sampling point and an adjacent sampling point; Connect the target sampling points to generate each path including the target sampling points, and generate a first path graph according to the target sampling points and the each path; A generation module, configured to determine a target circular path from the each circular path based on the morphological characteristics of each circular path in the first path graph; Remove the target circular path, and generate a target path based on the target sampling points included in the removed target circular path; and An update module, configured to update the first path graph based on the target path to obtain a target topological path graph, where the target topological path graph is used for path navigation of the robot.

14. The device according to claim 13, wherein the composition module is further configured to: Compare the sampling frequency of each sampling point with a first threshold respectively, and determine the sampling points with a sampling frequency greater than the first threshold and the sampling points within a preset range thereof as first sampling points; Based on the target arcs formed by each sampling point and the corresponding adjacent sampling points respectively, determine the curvature corresponding to the target arc, and determine the sampling points with a curvature greater than a second threshold as second sampling points; and Determine the target sampling points based on the first sampling points and the second sampling points.

15. The device according to claim 13, wherein the generation module is further configured to: Determine an exit sampling point in the target circular path, where the exit sampling point is a sampling point among the target sampling points that includes at least three adjacent paths; and Based on the exit sampling point in the target circular path, determine a target connection point corresponding to the target circular path, and generate a corresponding target path based on the target connection point.

16. The device according to claim 15, wherein the generation module is further configured to: If the target circular path includes one exit sampling point, remove the target circular path, and use the other adjacent paths corresponding to the exit sampling point as the target path; and If the target circular path includes two exit sampling points, remove the target circular path, retain the two exit sampling points, and generate a corresponding target path based on the two exit sampling points.

17. The device according to claim 15, wherein the generation module is further configured to: If the target circular path includes three or more exit sampling points, calculate the center point of the figure enclosed by the target circular path; and Generate a corresponding target path based on the center point.

18. A robot, comprising a memory and a processor, the memory storing computer-readable instructions, characterized in that, When the processor executes the computer-readable instructions, the steps of the method according to any one of claims 1 to 12 are implemented.

19. A computer-readable storage medium having computer-readable instructions stored thereon, characterized in that, When the computer-readable instructions are executed by a processor, the steps of the method according to any one of claims 1 to 12 are implemented.

20. A computer program product, comprising computer-readable instructions, characterized in that, When the computer-readable instructions are executed by a processor, the steps of the method according to any one of claims 1 to 12 are implemented.

Citation Information

Patent Citations

  • Planning method for robot teaching path

    CN107728619A

  • Vehicle frequent running route identification method, computer equipment and storage medium

    CN115099341A

  • Systems and methods for robot navigation, teaching, and mapping

    CN116423475A

  • Topological path diagram generation method and device, robot and storage medium

    CN117553801A

  • Method of teaching a path to a moving body

    US4841430A

Cited By

  • Dynamic update path planning method and system based on Voronoi error measurement

    CN121635325A