Obstacle contour segmentation method and device, storage medium and mobile robot

By preprocessing obstacle point cloud data and detecting convex hull points, the vertical distance between non-convex hull contour points and convex hull points is calculated for segmentation, which solves the problem of excessively large obstacle convex hull area, improves obstacle contour recognition accuracy, and ensures normal operation of mobile robots.

CN115861621BActive Publication Date: 2026-05-29SHENZHEN RHINOCEROS ZHIHANG TECH CO LTD +1

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
SHENZHEN RHINOCEROS ZHIHANG TECH CO LTD
Filing Date
2022-12-22
Publication Date
2026-05-29

AI Technical Summary

Technical Problem

Existing technologies, when identifying obstacle contours, especially at bends or when obstacles are stuck together, can easily cause obstacle bulges to include large areas of non-obstacles, affecting the normal operation of mobile robots.

Method used

By acquiring point cloud data of obstacles, preprocessing it, extracting the initial point cloud contour, and performing contour convex hull point detection, calculating the vertical distance between non-convex hull contour points and convex hull points, and segmenting obstacles based on the distance, thus avoiding the identified convex hull area being much larger than the actual area.

Benefits of technology

It improves the accuracy of obstacle contour recognition, ensures that the mobile robot can operate normally, optimizes path planning, and improves work efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115861621B_ABST
    Figure CN115861621B_ABST
Patent Text Reader

Abstract

The application discloses a kind of profile segmentation methods of obstacle, device, storage medium and mobile robot, wherein, method includes: obtaining the point cloud data of obstacle, and pre-processing to point cloud data;According to the point cloud data after pre-processing, the initial point cloud profile of obstacle is extracted, and profile convex hull point detection is carried out to initial point cloud profile;The vertical distance of the connecting line between each non-convex hull profile point and corresponding profile convex hull point is obtained, and according to the vertical distance of the connecting line between each non-convex hull profile point and corresponding profile convex hull point, the initial point cloud profile of obstacle is segmented.Thereby, avoid that the convex hull area of identified obstacle is much larger than the actual area of obstacle, so as to improve the profile recognition accuracy of obstacle, ensure that mobile robot normal operation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of obstacle contour recognition technology, and in particular to an obstacle contour segmentation method, a computer-readable storage medium, an obstacle contour segmentation device, and a mobile robot. Background Technology

[0002] Obstacle convex hull detection methods in related technologies typically use the Graham scanning method to directly process point clouds to obtain the convex hull of obstacles.

[0003] However, the problem with the relevant technology is that, for example Figure 1 As shown, when the outline of an obstacle is curved, such as at the corner of a wall, the bend of a green belt, the bend of a fence, or when obstacles are stuck together, the obstacle bulge will include a large area of ​​non-obstacles, affecting the normal operation of the mobile robot. Summary of the Invention

[0004] This invention aims to at least partially solve one of the technical problems in related technologies. Therefore, the first objective of this invention is to propose a method for obstacle contour segmentation that avoids identifying obstacle convex hull areas that are much larger than the actual area of ​​the obstacle, thereby improving the accuracy of obstacle contour recognition and ensuring the normal operation of mobile robots.

[0005] A second objective of this invention is to provide a computer-readable storage medium.

[0006] The third objective of this invention is to provide an obstacle contour segmentation device.

[0007] The fourth objective of this invention is to provide a mobile robot.

[0008] To achieve the above objectives, the first aspect of the present invention proposes an obstacle contour segmentation method, comprising: acquiring point cloud data of the obstacle and preprocessing the point cloud data; extracting an initial point cloud contour of the obstacle based on the preprocessed point cloud data and performing contour convex hull point detection on the initial point cloud contour; acquiring the perpendicular distance between the line connecting each non-convex hull contour point and the corresponding contour convex hull point, and segmenting the initial point cloud contour of the obstacle based on the perpendicular distance between the line connecting each non-convex hull contour point and the corresponding contour convex hull point.

[0009] According to the obstacle contour segmentation method of the present invention, point cloud data of the obstacle is acquired and preprocessed. Then, based on the preprocessed point cloud data, an initial point cloud contour of the obstacle is extracted, and convex hull point detection is performed on the initial point cloud contour. Furthermore, the perpendicular distance between the line connecting each non-convex hull contour point and its corresponding convex hull point is obtained, and the initial point cloud contour of the obstacle is segmented based on the perpendicular distance between the line connecting each non-convex hull contour point and its corresponding convex hull point. This avoids the identified obstacle convex hull area being much larger than the actual obstacle area, thereby improving the contour recognition accuracy of the obstacle and ensuring the normal operation of the mobile robot.

[0010] In addition, the obstacle contour segmentation method according to the above embodiments of the present invention may have the following additional technical features:

[0011] According to one embodiment of the present invention, the preprocessing of the point cloud data includes: sequentially performing point cloud stitching, point cloud filtering, point cloud ground filtering, point cloud clustering, and point cloud projection on the point cloud data.

[0012] According to an embodiment of the present invention, the extraction of the initial point cloud contour of the obstacle includes: selecting an initial point cloud contour reference point from the preprocessed point cloud data; obtaining multiple contour point clouds based on the initial point cloud contour reference point; and extracting the initial point cloud contour of the obstacle based on the multiple contour point clouds.

[0013] According to an embodiment of the present invention, the step of detecting the convex hull point of the initial point cloud contour includes: sequentially performing convex hull point detection on each of the plurality of contour point clouds by means of vector cross product to obtain the point cloud type corresponding to each contour point cloud, wherein the point cloud type includes contour convex hull points and non-convex hull contour points.

[0014] According to an embodiment of the present invention, segmenting the initial point cloud contour of the obstacle includes: determining a first segmentation contour point based on the perpendicular distance between each non-convex hull contour point and the line connecting the corresponding convex hull contour point; dividing the obstacle into a first region and a second region by drawing a perpendicular line from the first segmentation contour point to the line connecting the corresponding convex hull contour point, wherein the first region includes a first contour point located on one side of the perpendicular line, and the second region includes a second contour point located on the other side of the perpendicular line; obtaining the distances from the first contour point and the second contour point to the perpendicular line, and determining a second segmentation contour point based on the distances; connecting the first segmentation contour point and the second segmentation contour point to segment the initial point cloud contour of the obstacle into a first point cloud contour region and a second point cloud contour region.

[0015] According to an embodiment of the present invention, the method further includes: if the vertical distance between the line connecting each non-convex hull contour point and the corresponding contour convex hull point is less than a preset distance threshold, then the initial point cloud contour of the obstacle is maintained.

[0016] According to one embodiment of the present invention, the method further includes: controlling a mobile robot to perform operations based on the first point cloud contour region and the second point cloud contour region, or controlling a mobile robot to perform operations based on the initial point cloud contour of the obstacle.

[0017] To achieve the above objectives, the second aspect of the present invention provides a computer-readable storage medium storing an obstacle contour segmentation program thereon, which, when executed by a processor, implements the obstacle contour segmentation method of the embodiments of the present invention described above.

[0018] According to embodiments of the present invention, a computer-readable storage medium, by executing a contour segmentation program of an obstacle stored thereon through a processor, can avoid the identified obstacle convex hull area being much larger than the actual area of ​​the obstacle, thereby improving the contour recognition accuracy of the obstacle and ensuring the normal operation of the mobile robot.

[0019] To achieve the above objectives, the third aspect of the present invention provides an obstacle contour segmentation device, comprising: a first acquisition module, configured to acquire point cloud data of the obstacle and preprocess the point cloud data; a second acquisition module, configured to extract an initial point cloud contour of the obstacle based on the preprocessed point cloud data and perform contour convex hull point detection on the initial point cloud contour; and a contour segmentation module, configured to acquire the perpendicular distance between the line connecting each non-convex hull contour point and its corresponding contour convex hull point, and segment the point cloud contour of the obstacle based on the perpendicular distance between the line connecting each non-convex hull contour point and its corresponding contour convex hull point.

[0020] According to an embodiment of the present invention, an obstacle contour segmentation device acquires point cloud data of an obstacle through a first acquisition module and preprocesses the point cloud data. Then, a second acquisition module extracts the initial point cloud contour of the obstacle based on the preprocessed point cloud data and performs contour convex hull point detection on the initial point cloud contour. Furthermore, a contour segmentation module acquires the perpendicular distance between the line connecting each non-convex hull contour point and its corresponding convex hull point, and segments the point cloud contour of the obstacle based on the perpendicular distance between the line connecting each non-convex hull contour point and its corresponding convex hull point. This avoids the identified obstacle convex hull area being much larger than the actual obstacle area, thereby improving the contour recognition accuracy of the obstacle and ensuring the normal operation of the mobile robot.

[0021] To achieve the above objectives, a mobile robot according to a fourth aspect of the present invention includes an obstacle contour segmentation device as described in the above embodiments of the present invention.

[0022] According to embodiments of the present invention, by employing the aforementioned obstacle contour segmentation device, the mobile robot can avoid identifying obstacle convex hull areas that are much larger than the actual area of ​​the obstacle, thereby improving the contour recognition accuracy of obstacles and ensuring the normal operation of the mobile robot.

[0023] Additional aspects and advantages of the invention will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. Attached Figure Description

[0024] Figure 1 It is a schematic diagram of the obstacle's outline extracted based on existing technology;

[0025] Figure 2 This is a flowchart illustrating an obstacle contour segmentation method according to an embodiment of the present invention;

[0026] Figure 3 This is a schematic diagram of contour convex hull points and non-contour convex hull points according to a specific embodiment of the present invention;

[0027] Figure 4 This is a schematic diagram illustrating the principle of acquiring contour point clouds according to a specific embodiment of the present invention;

[0028] Figure 5 This is a schematic diagram illustrating the principle of acquiring contour point clouds according to a specific embodiment of the present invention;

[0029] Figure 6 This is a schematic diagram illustrating the principle of distance calculation between a non-contour convex hull point and a point cloud contour according to a specific embodiment of the present invention;

[0030] Figure 7 This is a flowchart illustrating an obstacle contour segmentation method according to an embodiment of the present invention;

[0031] Figure 8 This is a schematic diagram of the principle of obstacle contour segmentation before a specific embodiment of the present invention;

[0032] Figure 9 This is a schematic diagram illustrating the principle of obstacle contour segmentation according to a specific embodiment of the present invention;

[0033] Figure 10 This is a block diagram of an obstacle contour segmentation device according to an embodiment of the present invention;

[0034] Figure 11 This is a block diagram of a mobile robot according to an embodiment of the present invention. Detailed Implementation

[0035] Embodiments of the present invention are described in detail below, examples of which are illustrated in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and intended to explain the present invention, and should not be construed as limiting the present invention.

[0036] The following description, with reference to the accompanying drawings, describes an obstacle contour segmentation method, a computer-readable storage medium, an obstacle contour segmentation device, and a mobile robot according to embodiments of the present invention.

[0037] Figure 2 This is a flowchart illustrating an obstacle contour segmentation method according to an embodiment of the present invention.

[0038] Specifically, in some embodiments of the present invention, such as Figure 2 As shown, the obstacle contour segmentation method includes:

[0039] S101: Acquire point cloud data of obstacles and preprocess the point cloud data.

[0040] It is understood that in this embodiment of the present invention, different lidars can be used to emit detection signals to obstacles, and the point cloud data returned by the lidars can be used as the point cloud data of the obstacles. The point cloud data can be preprocessed to facilitate the extraction and segmentation of the obstacle contour.

[0041] Specifically, in some embodiments of the present invention, the point cloud data is preprocessed, including: sequentially performing point cloud stitching, point cloud filtering, point cloud ground filtering, point cloud clustering, and point cloud projection on the point cloud data.

[0042] It is understood that, in this embodiment of the present invention, point cloud stitching is to obtain the coordinate transformation relationship between different lidar coordinate systems, so as to transform the point cloud data under different lidar coordinate systems to the same coordinate system; point cloud filtering is to perform pass-through filtering on the point cloud data according to the preset detection range, so as to remove the point cloud data outside the preset detection range; point cloud ground filtering is to use the RANSAC plane fitting method to obtain the plane set of point cloud data, select the ground plane according to the initial position of the ground relative to the lidar, and filter out the points on the ground plane to obtain discrete obstacle point cloud data; point cloud clustering is to use the Euclidean clustering algorithm to obtain point cloud data corresponding to different obstacles; and point cloud projection is to project the clustered point cloud data onto the XOY coordinate system of the mobile robot to obtain the planar point cloud data of the obstacles.

[0043] S102, Based on the preprocessed point cloud data, the initial point cloud contour of the obstacle is extracted, and the convex hull point of the initial point cloud contour is detected.

[0044] It is understood that, in this embodiment of the present invention, the initial point cloud contour of the obstacle can be extracted using the preprocessed point cloud data, and then the convex hull point of the initial point cloud contour can be detected.

[0045] S103, obtain the perpendicular distance between the line connecting each non-convex hull contour point and the corresponding convex hull point, and segment the initial point cloud contour of the obstacle according to the perpendicular distance between the line connecting each non-convex hull contour point and the corresponding convex hull point.

[0046] Specifically, with Figure 3 For example, we can see that p1(x1,y1) and p2(x2,y2) are non-convex hull contour points between the contour convex hull points p0(x0,y0) and p3(x3,y3). Then, the perpendicular distance between the non-convex hull contour point p1 and its corresponding contour convex hull point is the perpendicular distance between point cloud p1 and the line connecting the corresponding contour convex hull point clouds p0 and p3 to line p0p3:

[0047]

[0048] Therefore, based on the above formula, the perpendicular distance d1 between the non-convex hull contour point p1 and the corresponding convex hull point p0p3 can be obtained in sequence. Similarly, the perpendicular distance d2 between the non-convex hull contour point p2 and the corresponding convex hull point p0p3 can be obtained.

[0049] It is understood that in this embodiment of the present invention, after detecting the convex hull points of the initial point cloud contour, multiple convex hull points and multiple non-convex hull contour points can be identified. Then, based on the perpendicular distance between the line connecting each non-convex hull contour point and the corresponding convex hull point, it can be determined whether the convex hull area of ​​the obstacle is greater than the actual area of ​​the obstacle. For example, when the perpendicular distance between the line connecting a non-convex hull contour point and the corresponding convex hull point is greater than a preset distance threshold, it can be determined that the convex hull area of ​​the obstacle is greater than the actual area of ​​the obstacle. At this time, it is necessary to segment the initial point cloud contour of the obstacle, thereby improving the contour recognition accuracy of the obstacle and ensuring the normal operation of the mobile robot.

[0050] Furthermore, in some embodiments of the present invention, the initial point cloud contour of the obstacle is extracted, including: selecting an initial point cloud contour reference point from the preprocessed point cloud data, obtaining multiple contour point clouds based on the initial point cloud contour reference point, and extracting the initial point cloud contour of the obstacle based on the multiple contour point clouds.

[0051] The following is in conjunction with the appendix Figures 3 to 5 The specific process of extracting the point cloud contours of obstacles in the embodiments of the present invention will be described accordingly:

[0052] Specifically, in this embodiment of the invention, with Figure 4 The point cloud data shown is used for initial point cloud contour extraction. The leftmost point in the point cloud data (this point has the smallest x-coordinate; if multiple points have the same x-coordinate, the point with the largest y-coordinate is selected) is selected as the reference point p0(x0,y0) for the point cloud contour. At this point, a circle is drawn with o0(x0-α,y0) as the center and α as the radius. The circle o0 is then rotated counterclockwise around point p0. As shown in the figure, when the center of the circle rotates to position o1, point p1 falls on the circle. The line connecting p0 and p1 is used as the contour boundary line. The circle o1 is then rotated again around p1 until point p2 falls on the circle. This process is repeated until the point cloud contour reference point p0 is reached again. Thus, the points are extracted counterclockwise sequentially as shown in the figure. Figure 5 The multiple contour point clouds p0, p1, p2, p3, p4, p5, p6, p7, and p8 shown are saved in the order [p0p1 p2 p3 p4 p5 p6 p7 p8]. Based on these multiple contour point clouds, the following parameters are extracted: Figure 3 The initial point cloud outline of the obstacle is shown.

[0053] It should be noted that the value of α can be set according to the actual requirements of contour extraction accuracy. The smaller the value of α, the more contour point cloud is obtained from the point cloud contour reference point, and the more refined the initial point cloud contour of the proposed obstacle is. Conversely, the larger the value of α, the fewer contour point cloud is obtained from the point cloud contour reference point, and the smoother the initial point cloud contour of the proposed obstacle is.

[0054] Furthermore, in some embodiments of the present invention, contour convex hull point detection is performed on the initial point cloud contour, including: performing contour convex hull point detection on each of the multiple contour point clouds sequentially by means of vector cross product to obtain the point cloud type corresponding to each contour point cloud, wherein the point cloud type includes contour convex hull points and non-convex hull contour points.

[0055] The following is a continuation of the appendix. Figure 3 The specific process of obtaining multiple convex hull points and multiple non-convex hull contour points in the embodiments of the present invention will be described accordingly:

[0056] Specifically, in this embodiment of the present invention, for ease of understanding, the following is used: Figure 3Convex hull detection is performed on the point cloud contour shown. Taking [p0 p1 p2 p3 p4 p5 p6 p7 p8] as an example, the first contour point p0, the second contour point p1, and the third contour point p2 are taken, and the first contour point p0 is pushed onto the stack. Then, the first vector p0p1 and the second vector p1p2 are cross-producted to obtain the cross-product result. At this point, S is obtained. 012 If the result is less than 0, it means the rotation from the first vector p0p1 to the second vector p1p2 is clockwise. Therefore, point cloud p1 is a non-convex hull contour point. Next, point cloud p3 is taken, and the cross product of vectors p0p2 and p2p3 is performed. The cross product result is less than 0, meaning the rotation from p0p2 to p2p3 is clockwise. Therefore, point cloud p2 is a non-convex hull contour point. Next, point cloud p4 is taken, and the cross product of vectors p0p3 and p3p4 is performed. The cross product result is greater than 0, meaning the rotation from p0p3 to p3p4 is counter-clockwise. Therefore, point cloud p3 can be used as a temporary convex point and pushed onto the stack. Then, point cloud p5 is taken. Then, the cross product of vectors p3p4 and p4p5 is performed. If the cross product result is greater than 0, it means that vectors p0p3 and p3p4 have been rotated counterclockwise. Therefore, point cloud p4 can be used as a temporary convex point and pushed onto the stack. Conversely, if the cross product result is less than 0, the cross product result of vectors p0p3 and p3p5 is further checked. If the cross product result is less than 0, p3 is removed from the stack, and then point cloud p6 is retrieved. This process is repeated to complete the contour convex hull detection of multiple contour point clouds, thereby obtaining the point cloud type corresponding to each contour point cloud. The point cloud type includes contour convex hull points and non-convex hull contour points. The point clouds in the stack are contour convex hull points, such as... Figure 3 As shown, the convex hull points of the contour are [p0 p3 p4 p5 p6 p7 p8].

[0057] Furthermore, in some embodiments of the present invention, such as Figure 7 As shown, the initial point cloud contour of the obstacle is segmented, including:

[0058] S201, determine the first segmentation contour point based on the perpendicular distance between the line connecting each non-convex hull contour point and the corresponding convex hull contour point.

[0059] Specifically, in this embodiment of the present invention, the non-convex hull contour point with the largest vertical distance from the line connecting each non-convex hull contour point to the corresponding convex hull contour point can be used as the first segmentation contour point.

[0060] S202, a perpendicular line is drawn from the first segmentation contour point to the line connecting the corresponding contour convex hull point, dividing the obstacle into a first region and a second region. The first region includes a first contour point located on one side of the perpendicular line, and the second region includes a second contour point located on the other side of the perpendicular line.

[0061] Specifically, in this embodiment of the invention, a perpendicular line can be drawn from the first segmentation contour point to the line connecting the corresponding contour convex hull point, thereby dividing the obstacle into a first region and a second region, and determining the first contour point on one side of the perpendicular line and the second contour point on the other side of the perpendicular line based on the first region and the second region, respectively.

[0062] S203, obtain the distances from the first contour point and the second contour point to the vertical line respectively, and determine the second segmentation contour point based on the distance.

[0063] It is understood that, in this embodiment of the present invention, after determining the first contour point located on one side of the vertical line and the second contour point located on the other side of the vertical line, the distances from the first contour point and the second contour point to the vertical line can be obtained respectively, and the contour point closer to the vertical line can be used as the second segmentation contour point, so that the two segmented point cloud contour regions can be approximated.

[0064] S203, connect the first segmentation contour point and the second segmentation contour point to segment the initial point cloud contour of the obstacle into the first point cloud contour region and the second point cloud contour region.

[0065] Specifically, in this embodiment of the invention, the initial point cloud contour of an obstacle can be divided into a first point cloud contour region and a second point cloud contour region by connecting the first and second point cloud contour points. This facilitates the mobile robot in determining the obstacle area and performing path planning based on the first and second point cloud contour regions.

[0066] The following is in conjunction with the appendix Figures 8 to 9 The specific process of segmenting the initial point cloud contour of obstacles in the embodiments of the present invention will be described accordingly:

[0067] Specifically, assuming that for such Figure 1 The obstacles shown are sequentially processed by extracting the initial point cloud contour of the obstacles, detecting the convex hull points of the contour, calculating the perpendicular distance between the non-convex hull contour points and the corresponding convex hull points, and then obtaining the following: Figure 8The results shown are as follows: pk and ps are two adjacent convex hull points, and pm is the non-convex hull contour point with the largest straight-line distance from the line connecting pk and ps among the multiple contour points between the two contour points. The distance is dmax, and the foot of the perpendicular is d. At this time, a straight line L is drawn through point d and the first segmentation contour point pm. This perpendicular line intersects one side of the initial point cloud contour at the first segmentation contour point pm, and intersects the other side of the initial point cloud contour at the line containing the second segmentation contour point pj and the third segmentation contour point pj+1.

[0068] The extraction process for point clouds pj and pj+1 is as follows: The contour points [p0 p1 p2…pn] are divided into two parts, Q1 = [p0 p1 p2…pm-1] and Q2 = [pm+1pm+1pm+2…pn], using point pm. Two consecutive points are then selected from Q1 and Q2 in sequence, for example, points p0 and p1 in Q1. It is then determined whether points p0 and p1 are on either side of vector dpm. At this point, the cross product S0 of vectors dp0 and dpm can be calculated.

[0069]

[0070] Calculate the cross product S1 of vectors dp1 and dpm:

[0071]

[0072] Specifically, when S0 is greater than 0, it can be determined that point p0 is to the left of vector dpm; when S0 is less than 0, it can be determined that point p0 is to the right of vector dpm; and when S0 is equal to 0, it can be determined that point p0 is on vector dpm. Therefore, when S0·S1≤0, it can be determined that points p0 and p1 are on opposite sides of vector dpm, or one of them is on vector dpm. In this case, points p0 and p1 can be used as the points pj and pj+1 to be found. Conversely, if S0·S1>0, then continue to determine points p1 and p2 until points pj and pj+1 that satisfy the above conditions are found.

[0073] Assuming point pj lies on Q2, then Q2 can be segmented into Q3 = [pm + 1pm + 1pm + 2…pj] and Q4 = [pjpj + 1pj + 2…pn]. Concatenating Q4 and Q1 yields two new partial contour points: Q1' = Q4 + Q1 + pm = [pjpj + 1pj + 2…pnp0 p1 p2…pm-1pm] and Q2' = pm + Q3 = [pm pm + 1pm + 1pm + 2…pj]. Furthermore, convex hull point detection is performed on the new contour points Q1' and Q2', and the distance between each non-convex hull contour point and the initial point cloud contour is determined. If the distance dmax from a non-convex hull contour point pi to the initial point cloud contour is greater than a preset distance threshold dt (this preset distance threshold can be adjusted according to actual conditions), the contour points are further segmented until the distance dmax from all non-convex hull contour points to the initial point cloud contour is less than the preset distance threshold dt, thus achieving the desired result. Figure 9 The initial point cloud contour segmentation of the obstacle is shown. At this point, the convex hull area of ​​the obstacle is the area formed by [plpk pm pj pj+1] and the area formed by [pmpjptps], respectively.

[0074] It can be seen that the obstacle contour segmentation method of the present invention identifies the obstacle convex hull area (e.g., Figure 9 (As shown) relative to the obstacle convex hull area identified by existing technology (e.g.) Figure 1 As shown in the figure, it is closer to the actual area of ​​the obstacle, thereby improving the accuracy of obstacle contour recognition and ensuring the normal operation of the mobile robot.

[0075] Furthermore, in some embodiments of the present invention, the method further includes: if the vertical distance between the line connecting each non-convex hull contour point and the corresponding contour convex hull point is less than a preset distance threshold, then the initial point cloud contour of the obstacle is maintained.

[0076] Understandably, if the perpendicular distance between the line connecting each non-convex hull contour point and the corresponding convex hull point is less than a preset distance threshold, then the identified obstacle convex hull area can be considered to be approximately the same as the actual area of ​​the obstacle. In this case, there is no need to segment the initial point cloud contour of the obstacle, and the initial point cloud contour of the obstacle can be maintained.

[0077] Furthermore, in some embodiments of the present invention, the method further includes: controlling a mobile robot to perform operations based on a first point cloud contour region and a second point cloud contour region, or controlling a mobile robot to perform operations based on an initial point cloud contour of an obstacle.

[0078] It is understood that, in this embodiment of the present invention, after dividing the initial point cloud contour of the obstacle into a first point cloud contour region and a second point cloud contour region, the actual area of ​​the obstacle can be determined based on the first point cloud contour region and the second point cloud contour region, so as to control the mobile robot to perform operations on the actual area of ​​the obstacle. Alternatively, after determining to maintain the initial point cloud contour of the obstacle, the actual area of ​​the obstacle can also be determined based on the initial point cloud contour of the obstacle, so as to control the mobile robot to perform operations on the actual area of ​​the obstacle, thereby optimizing the movement path of the mobile robot and improving the operation efficiency of the mobile robot.

[0079] In summary, the obstacle contour segmentation method according to embodiments of the present invention acquires point cloud data of the obstacle, preprocesses the point cloud data, extracts the initial point cloud contour of the obstacle based on the preprocessed point cloud data, detects the convex hull points of the initial point cloud contour, and obtains the perpendicular distance between the line connecting each non-convex hull contour point and its corresponding convex hull point. Based on the perpendicular distance between the line connecting each non-convex hull contour point and its corresponding convex hull point, the initial point cloud contour of the obstacle is segmented. This avoids the identified obstacle convex hull area being much larger than the actual obstacle area, thereby improving the contour recognition accuracy of the obstacle and ensuring the normal operation of the mobile robot.

[0080] Based on the computer-readable storage medium of the foregoing embodiments of the present invention, the present invention proposes a computer-readable storage medium storing an obstacle contour segmentation program thereon, which, when executed by a processor, implements the obstacle contour segmentation method of the foregoing embodiments of the present invention.

[0081] It should be noted that the specific implementation of the computer-readable storage medium in the embodiments of the present invention can be found in the specific implementation of the obstacle contour segmentation method in the foregoing embodiments of the present invention. To reduce redundancy, it will not be repeated here.

[0082] In summary, the computer-readable storage medium according to embodiments of the present invention, by executing the obstacle contour segmentation program stored thereon through a processor, can avoid the identified obstacle convex hull area being much larger than the actual area of ​​the obstacle, thereby improving the contour recognition accuracy of obstacles and ensuring the normal operation of the mobile robot.

[0083] Figure 10 This is a block diagram of an obstacle contour segmentation device according to an embodiment of the present invention.

[0084] Specifically, in some embodiments of the present invention, such as Figure 10 As shown, the obstacle contour segmentation device 100 includes: a first acquisition module 10, a second acquisition module 20, and a contour segmentation module 30.

[0085] The first acquisition module 10 is used to acquire point cloud data of obstacles and preprocess the point cloud data; the second acquisition module 20 is used to extract the initial point cloud contour of obstacles based on the preprocessed point cloud data and perform contour convex hull point detection on the initial point cloud contour; the contour segmentation module 30 is used to acquire the vertical distance between the line connecting each non-convex hull contour point and the corresponding contour convex hull point, and segment the point cloud contour of obstacles based on the vertical distance between the line connecting each non-convex hull contour point and the corresponding contour convex hull point.

[0086] Furthermore, the first acquisition module 10 is specifically used to sequentially perform point cloud stitching, point cloud filtering, point cloud ground filtering, point cloud clustering, and point cloud projection on the point cloud data.

[0087] Furthermore, the second acquisition module 20 is specifically used to select an initial point cloud contour reference point from the preprocessed point cloud data; acquire multiple contour point clouds based on the initial point cloud contour reference point; and extract the initial point cloud contour of the obstacle based on the multiple contour point clouds.

[0088] Furthermore, the second acquisition module 20 is also used to sequentially perform contour convex hull point detection on each of the multiple contour point clouds by means of vector cross product, so as to obtain the point cloud type corresponding to each contour point cloud, wherein the point cloud type includes contour convex hull points and non-convex hull contour points.

[0089] Further, the contour segmentation module 30 is specifically used to segment the initial point cloud contour of the obstacle, including: determining a first segmentation contour point based on the perpendicular distance between each non-convex hull contour point and the corresponding contour convex hull point; dividing the obstacle into a first region and a second region by drawing a perpendicular line from the first segmentation contour point to the line connecting the corresponding contour convex hull point, wherein the first region includes a first contour point located on one side of the perpendicular line, and the second region includes a second contour point located on the other side of the perpendicular line; obtaining the distances from the first contour point and the second contour point to the perpendicular line respectively, and determining the second segmentation contour point based on the distances; connecting the first segmentation contour point and the second segmentation contour point to segment the initial point cloud contour of the obstacle into a first point cloud contour region and a second point cloud contour region.

[0090] Furthermore, the contour segmentation module 30 is also used to maintain the initial point cloud contour of the obstacle if the distance between each non-convex hull contour point and the point cloud contour is less than a preset distance threshold.

[0091] Furthermore, the contour segmentation module 30 is also used to control the mobile robot to perform operations based on the first point cloud contour region and the second point cloud contour region, or to control the mobile robot to perform operations based on the initial point cloud contour of the obstacle.

[0092] It should be noted that the specific implementation of the obstacle contour segmentation device 100 in this embodiment of the invention corresponds one-to-one with the specific implementation of the obstacle contour segmentation method in the foregoing embodiments of the invention. To reduce redundancy, it will not be described again here.

[0093] In summary, the obstacle contour segmentation device according to embodiments of the present invention acquires point cloud data of the obstacle through a first acquisition module and preprocesses the point cloud data. Then, a second acquisition module extracts the initial point cloud contour of the obstacle based on the preprocessed point cloud data and performs contour convex hull point detection on the initial point cloud contour. Furthermore, a contour segmentation module acquires the perpendicular distance between the line connecting each non-convex hull contour point and its corresponding convex hull point, and segments the point cloud contour of the obstacle based on the perpendicular distance between the line connecting each non-convex hull contour point and its corresponding convex hull point. This avoids the identified obstacle convex hull area being much larger than the actual obstacle area, thereby improving the contour recognition accuracy of the obstacle and ensuring the normal operation of the mobile robot.

[0094] Figure 11 This is a block diagram of a mobile robot according to an embodiment of the present invention.

[0095] Specifically, in some embodiments of the present invention, such as Figure 11 As shown, the mobile robot 1000 includes the obstacle contour segmentation device 100 described in the above embodiment of the present invention.

[0096] It should be noted that the specific implementation of the mobile robot in the embodiments of the present invention can be found in the specific implementation of the obstacle contour segmentation method in the foregoing embodiments of the present invention. In addition, other components and functions of the mobile robot in the embodiments of the present invention are known to those skilled in the art, and will not be described in detail here in order to reduce redundancy.

[0097] In summary, the mobile robot according to the embodiments of the present invention, by employing the above-mentioned obstacle contour segmentation device, can avoid the identified obstacle convex hull area being much larger than the actual obstacle area, thereby improving the obstacle contour recognition accuracy and ensuring the normal operation of the mobile robot.

[0098] It should be noted that the logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as a sequenced list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by, or in conjunction with, an instruction execution system, apparatus, or device (such as a computer-based system, a processor-included system, or other system that can fetch and execute instructions from, an instruction execution system, apparatus, or device). For the purposes of this specification, "computer-readable medium" can be any means that can contain, store, communicate, propagate, or transmit programs for use by, or in conjunction with, an instruction execution system, apparatus, or device. More specific examples (a non-exhaustive list) of computer-readable media include: an electrical connection having one or more wires (electronic device), a portable computer disk drive (magnetic device), random access memory (RAM), read-only memory (ROM), erasable and editable read-only memory (EPROM or flash memory), fiber optic devices, and portable optical disc read-only memory (CDROM). Alternatively, the computer-readable medium may be paper or other suitable media on which the program can be printed, since the program can be obtained electronically, for example, by optically scanning the paper or other medium, followed by editing, interpreting, or otherwise processing as necessary, and then stored in a computer memory.

[0099] It should be understood that various parts of the present invention can be implemented in hardware, software, firmware, or a combination thereof. In the above embodiments, multiple steps or methods can be implemented in software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware, as in another embodiment, it can be implemented using any one or a combination of the following techniques known in the art: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (PGAs), field-programmable gate arrays (FPGAs), etc.

[0100] In the description of this specification, references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of the invention. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples.

[0101] In the description of this invention, it should be understood that the terms "center," "longitudinal," "lateral," "length," "width," "thickness," "upper," "lower," "front," "rear," "left," "right," "vertical," "horizontal," "top," "bottom," "inner," "outer," "clockwise," "counterclockwise," "axial," "radial," and "circumferential" indicate the orientation or positional relationship based on the orientation or positional relationship shown in the accompanying drawings. They are used only for the convenience of describing this invention and simplifying the description, and are not intended to indicate or imply that the device or element referred to must have a specific orientation, or be constructed and operated in a specific orientation. Therefore, they should not be construed as limitations on this invention.

[0102] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of that feature. In the description of this invention, "a plurality of" means at least two, such as two, three, etc., unless otherwise explicitly specified.

[0103] In this invention, unless otherwise explicitly specified and limited, the terms "installation," "connection," "linking," and "fixing," etc., should be interpreted broadly. For example, they can refer to a fixed connection, a detachable connection, or an integral part; they can refer to a mechanical connection or an electrical connection; they can refer to a direct connection or an indirect connection through an intermediate medium; they can refer to the internal communication of two components or the interaction between two components, unless otherwise explicitly limited. Those skilled in the art can understand the specific meaning of the above terms in this invention according to the specific circumstances.

[0104] In this invention, unless otherwise explicitly specified and limited, "above" or "below" the second feature can mean that the first feature is in direct contact with the second feature, or that the first feature is in indirect contact with the second feature through an intermediate medium. Furthermore, "above," "over," and "on top" of the second feature can mean that the first feature is directly above or diagonally above the second feature, or simply that the first feature is at a higher horizontal level than the second feature. "Below," "below," and "under" the second feature can mean that the first feature is directly below or diagonally below the second feature, or simply that the first feature is at a lower horizontal level than the second feature.

[0105] Although embodiments of the present invention have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting the present invention. Those skilled in the art can make changes, modifications, substitutions and variations to the above embodiments within the scope of the present invention.

Claims

1. A method for contour segmentation of obstacles, characterized in that, The method includes: Acquire point cloud data of obstacles and preprocess the point cloud data; Based on the preprocessed point cloud data, the initial point cloud contour of the obstacle is extracted, and the initial point cloud contour is subjected to contour convex hull point detection. Obtain the perpendicular distance between the line connecting each non-convex hull contour point and the corresponding convex hull point. Based on the perpendicular distance between the line connecting each non-convex hull contour point and the corresponding convex hull point, if the perpendicular distance between the line connecting the non-convex hull contour point and the corresponding convex hull point is greater than a preset distance threshold, determine that the convex hull area of ​​the obstacle is greater than the actual area of ​​the obstacle, and segment the initial point cloud contour of the obstacle. The segmentation of the initial point cloud contour of the obstacle includes: The first segmentation contour point is determined based on the perpendicular distance between the line connecting each non-convex hull contour point and the corresponding convex hull contour point. The obstacle is divided into a first region and a second region by drawing a perpendicular line from the first dividing contour point to the line connecting the corresponding contour convex hull point. The first region includes a first contour point located on one side of the perpendicular line, and the second region includes a second contour point located on the other side of the perpendicular line. The distances from the first contour point and the second contour point to the vertical line are obtained respectively, and the second segmentation contour point is determined based on the distances. Connect the first segmentation contour point and the second segmentation contour point to segment the initial point cloud contour of the obstacle into a first point cloud contour region and a second point cloud contour region.

2. The obstacle contour segmentation method according to claim 1, characterized in that, The preprocessing of the point cloud data includes: The point cloud data is sequentially processed by point cloud stitching, point cloud filtering, point cloud ground filtering, point cloud clustering, and point cloud projection.

3. The obstacle contour segmentation method according to claim 1, characterized in that, The extraction of the initial point cloud contour of the obstacle includes: Select initial point cloud contour reference points from the preprocessed point cloud data; Based on the initial point cloud contour reference points, obtain multiple contour point clouds; Based on the multiple contour point clouds, the initial point cloud contour of the obstacle is extracted.

4. The obstacle contour segmentation method according to claim 3, characterized in that, The step of detecting the convex hull points of the initial point cloud contour includes: Contour hull point detection is performed sequentially on each of the plurality of contour point clouds using vector cross product to obtain the point cloud type corresponding to each contour point cloud. The point cloud type includes the contour convex hull point and the non-convex hull contour point.

5. The obstacle contour segmentation method according to claim 1, characterized in that, The method further includes: If the vertical distance between the line connecting each non-convex hull contour point and the corresponding convex hull point is less than a preset distance threshold, then the initial point cloud contour of the obstacle is maintained.

6. The obstacle contour segmentation method according to claim 1 or 5, characterized in that, The method further includes: The mobile robot can be controlled to perform operations based on the first point cloud contour region and the second point cloud contour region, or the mobile robot can be controlled to perform operations based on the initial point cloud contour of the obstacle.

7. A computer-readable storage medium, characterized in that, It stores an obstacle contour segmentation program, which, when executed by a processor, implements the obstacle contour segmentation method as described in any one of claims 1-6.

8. A device for segmenting the contour of an obstacle, characterized in that, The device includes: The first acquisition module is used to acquire point cloud data of obstacles and preprocess the point cloud data; The second acquisition module is used to extract the initial point cloud contour of the obstacle based on the preprocessed point cloud data, and to perform contour convex hull point detection on the initial point cloud contour. The contour segmentation module is used to obtain the vertical distance between the line connecting each non-convex hull contour point and the corresponding convex hull point, and based on the vertical distance between the line connecting each non-convex hull contour point and the corresponding convex hull point, when the vertical distance between the line connecting the non-convex hull contour point and the corresponding convex hull point is greater than a preset distance threshold, it is determined that the convex hull area of ​​the obstacle is greater than the actual area of ​​the obstacle, and the point cloud contour of the obstacle is segmented. The contour segmentation module is further configured to: determine a first segmentation contour point based on the perpendicular distance between each non-convex hull contour point and the corresponding contour convex hull point; divide the obstacle into a first region and a second region by drawing a perpendicular line from the first segmentation contour point to the line connecting the corresponding contour convex hull point, wherein the first region includes a first contour point located on one side of the perpendicular line, and the second region includes a second contour point located on the other side of the perpendicular line; obtain the distances from the first contour point and the second contour point to the perpendicular line, and determine the second segmentation contour point based on the distances; connect the first segmentation contour point and the second segmentation contour point to segment the initial point cloud contour of the obstacle into a first point cloud contour region and a second point cloud contour region.

9. A mobile robot, characterized in that, The mobile robot includes the obstacle contour segmentation device as described in claim 8.