Shelf recognition method, robot, and storage medium
Patent Information
- Application Number
- CN202310798687.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-06-30
- Publication Date
- 2026-10-16
- Estimated Expiration
- 2043-06-30
AI Technical Summary
[0003]本申请提供了一种货架识别方法、机器人及存储介质,旨在解决在货架的货架腿上贴反光贴在达到一定偏移角度后环境中的某些高反射物体的激光点云强度值和反光贴一致,容易导致误识别的问题
[0012] This application relates to a shelf recognition method, robot, and storage medium, applied to a robot equipped with LiDAR. The provided method acquires multiple point cloud data measured by the LiDAR on the shelf to be recognized, and divides the multiple point cloud data into multiple point cloud blocks; based on the geometric information of the shelf to be recognized, multiple target point cloud blocks are determined from the multiple point cloud blocks; based on the geometric information, the target centroid points belonging to the shelf are identified from the centroid points of the multiple target point cloud blocks; the pose information of each target centroid point and the LiDAR is acquired; the target point cloud data of the shelf is constructed based on the geometric information; the target point cloud blocks are matched with the target point cloud data based on the pose information, and the pose information corresponding to the successfully matched target point cloud blocks is determined as the pose information of the shelf, thus completing the shelf recognition. The provided method is compatible with large-angle offsets without the need for reflective stickers, simplifying the shelf recognition method and improving the accuracy and speed of shelf leg recognition.
Smart Images

Figure CN117008151B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of robot control technology, and in particular to a shelf identification method, a robot, and a storage medium. Background Technology
[0002] Currently, applying robots to shelving transportation scenarios can significantly save manpower and improve the efficiency of shelving management. However, to achieve precise shelving handling, the robot needs high-precision shelving recognition so it can move to a precise position relative to the shelving. Existing technology uses reflective stickers on the shelving legs to filter out the laser data of the corresponding legs based on intensity information and then matches it with the point cloud of a pre-defined shelving shape. However, due to the physical characteristics of the reflective stickers, the intensity information obtained gradually decreases as the image shifts from directly facing the laser emitter to the sides. This can lead to situations where, after a certain offset angle, the laser point cloud intensity value of some highly reflective objects in the environment matches that of the reflective sticker, easily causing misidentification. Summary of the Invention
[0003] This application provides a shelf recognition method, robot, and storage medium, aiming to solve the problem that when reflective stickers are attached to the shelf legs, the laser point cloud intensity values of certain highly reflective objects in the environment are consistent with the reflective stickers after a certain offset angle, which can easily lead to misidentification.
[0004] In a first aspect, this application provides a shelf recognition method applied to a robot equipped with a lidar system; the method includes:
[0005] The laser radar acquires multiple point cloud data points for measuring the shelf to be identified, and divides the multiple point cloud data points into multiple point cloud blocks;
[0006] Obtain the geometric information of the shelf to be identified, and determine multiple target point cloud blocks from the multiple point cloud blocks based on the geometric information;
[0007] Obtain the centroid points of multiple target point cloud blocks, and identify the target centroid points belonging to the shelf from the multiple centroid points based on the geometric information;
[0008] Obtain the pose information of each target centroid point and the lidar; construct the target point cloud data of the shelf based on the geometric information;
[0009] Based on the pose information, the target point cloud block corresponding to the target centroid point is matched with the target point cloud data, and the pose information corresponding to the successfully matched target point cloud block is determined as the pose information of the shelf, thus completing the identification of the shelf.
[0010] Secondly, this application provides a robot, which further includes a processor, a memory, and a computer program stored in the memory and executable by the processor. The memory stores a strategy model, and when the computer program is executed by the processor, it implements the steps of the shelf identification method provided in any embodiment of this application.
[0011] Thirdly, this application provides a storage medium for computer-readable storage, the storage medium storing one or more programs that can be executed by one or more processors to implement the steps of the shelf identification method provided in any embodiment of this application.
[0012] This application relates to a shelf recognition method, robot, and storage medium, applied to a robot equipped with LiDAR. The provided method acquires multiple point cloud data measured by the LiDAR on the shelf to be recognized, and divides the multiple point cloud data into multiple point cloud blocks; based on the geometric information of the shelf to be recognized, multiple target point cloud blocks are determined from the multiple point cloud blocks; based on the geometric information, the target centroid points belonging to the shelf are identified from the centroid points of the multiple target point cloud blocks; the pose information of each target centroid point and the LiDAR is acquired; the target point cloud data of the shelf is constructed based on the geometric information; the target point cloud blocks are matched with the target point cloud data based on the pose information, and the pose information corresponding to the successfully matched target point cloud blocks is determined as the pose information of the shelf, thus completing the shelf recognition. The provided method is compatible with large-angle offsets without the need for reflective stickers, simplifying the shelf recognition method and improving the accuracy and speed of shelf leg recognition.
[0013] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and do not limit this application. Attached Figure Description
[0014] To more clearly illustrate the technical solutions of the embodiments of this application, the drawings used in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0015] Figure 1 This is a schematic flowchart illustrating the steps of a shelf identification method provided in an embodiment of this application;
[0016] Figure 2 This is a flowchart illustrating the steps of a point cloud block acquisition method provided in an embodiment of this application;
[0017] Figure 3 This is a flowchart illustrating the steps of a method for acquiring target point cloud blocks provided in an embodiment of this application;
[0018] Figure 4 This is a flowchart of the steps of a target centroid point confirmation method provided in an embodiment of this application;
[0019] Figure 5 This is a flowchart of another method for determining the center of gravity of a target provided in an embodiment of this application;
[0020] Figure 6 This is a flowchart illustrating the steps of a method for matching target point cloud blocks with target point cloud data, as provided in an embodiment of this application.
[0021] Figure 7 This is a schematic block diagram of a robot provided in an embodiment of this application.
[0022] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and do not limit this application. Detailed Implementation
[0023] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0024] The flowchart shown in the attached diagram is for illustrative purposes only and does not necessarily include all content and operations / steps, nor does it necessarily have to be performed in the order described. For example, some operations / steps can be broken down, combined, or partially merged, so the actual execution order may change depending on the actual situation.
[0025] It should be understood that the terminology used in this specification is for the purpose of describing particular embodiments only and is not intended to limit the scope of the application. As used in this specification and the appended claims, the singular forms “a,” “an,” and “the” are intended to include the plural forms unless the context clearly indicates otherwise.
[0026] It should also be understood that the term "and / or" as used in this application specification and the appended claims means any combination of one or more of the associated listed items and all possible combinations, and includes such combinations.
[0027] To facilitate understanding of the embodiments of this application, some terms involved in the embodiments of this application will be briefly explained below.
[0028] 1. Point Cloud: Also known as laser point cloud, point cloud is a collection of massive points that represent the spatial distribution and surface characteristics of an object. It is obtained by using lasers to acquire the spatial coordinates of each sampling point on the surface of an object in the same spatial reference frame. This collection of points is called "point cloud".
[0029] 2. Delaunay Triangulation: Delaunay triangulation was proposed by the Soviet mathematician Delaunay in 1934. For any given set of points in a plane, there exists only one triangulation method that satisfies the so-called "maximum-minimum angle" optimization criterion, meaning the sum of all the smallest interior angles is maximized. This is the Delaunay triangulation. This method follows the "maximum minimum angle" and "empty circumcircle" criteria.
[0030] The "minimum angle maximum" criterion states that, without singularities, the sum of the minimum angles of a Delaunay triangulation is greater than the sum of the minimum angles of any triangle formed by a non-Delaunay triangulation. This ensures that the sum of the minimum interior angles of the triangle is maximized, preventing any interior angle from being too small, which is beneficial for subsequent finite element calculations.
[0031] The "empty circumcircle" criterion states that the circumcircle of any triangle in a Delaunay triangulation does not contain any other nodes. Therefore, among various 2D triangulations, only the Delaunay triangulation simultaneously satisfies both global and local optima.
[0032] The following detailed description of some embodiments of this application is provided in conjunction with the accompanying drawings. Unless otherwise specified, the following embodiments and features can be combined with each other.
[0033] In existing robot-based shelf recognition methods, reflective stickers are attached to the shelf legs. The laser data of the corresponding shelf legs is then filtered out based on intensity information and matched with the point cloud of a preset shelf shape. However, due to the physical characteristics of the reflective stickers, the intensity information obtained may gradually decrease as the stickers shift from facing the laser emitter to shifting to the sides. This can lead to situations where, after a certain offset angle, the laser point cloud intensity value of some highly reflective objects in the environment is the same as that of the reflective sticker, which can easily result in misidentification.
[0034] To resolve the above issues, please refer to [link / reference]. Figure 1 , Figure 1 This is a schematic flowchart illustrating the steps of a shelf recognition method provided in an embodiment of this application. The provided shelf recognition method is applied to a robot equipped with LiDAR.
[0035] In some embodiments, the provided robot is a mobile robot, such as a self-moving robot for shelf handling, which can determine the position of the shelf to be identified by the onboard LiDAR and complete the handling of the shelf.
[0036] In some embodiments, the robot is equipped with a microcontroller unit (MCU), which can control the robot to move the target shelf after processing the point cloud data collected by the lidar during the operation of the robot.
[0037] like Figure 1 As shown, the shelf identification method includes steps S101 to S105.
[0038] S101. Acquire multiple point cloud data of the shelf to be identified by the LiDAR, and divide the multiple point cloud data into multiple point cloud blocks.
[0039] Specifically, when the robot needs to move items on a shelf, it uses its onboard LiDAR to measure the shelf and obtain multiple point cloud data points. This point cloud data is then processed and divided into multiple point cloud blocks, based on the shelf's geometric features. By selectively choosing point cloud data points, the robot determines the pose information of the shelf to be identified, ultimately completing the information collection for the shelf, or the movement or inventory of items on the shelf.
[0040] It should be noted that during the process of LiDAR collecting point cloud data, the robot can be at any angle relative to the shelf. By adopting the shelf recognition method provided in the embodiments of this application, the position and pose information of the shelf can be determined based on this angle.
[0041] It should be noted that when the robot's working environment includes multiple shelves, the provided shelf recognition method can determine the pose information of multiple shelves one by one in the point cloud data and complete the movement of the shelves according to a preset method, such as prioritizing the movement of the nearest shelf.
[0042] In some embodiments, such as Figure 2 As shown, Figure 2 This is a flowchart of a point cloud block acquisition method provided in an embodiment of this application.
[0043] like Figure 2 As shown, the point cloud block acquisition method includes steps S101a to S101b.
[0044] S101a. Obtain the geometric distance between adjacent point cloud data in multiple point cloud data.
[0045] S101b. Generate multiple point cloud blocks based on geometric distance, wherein the geometric distance between point cloud data in the point cloud blocks is less than a preset distance.
[0046] Since the point cloud data collected by LiDAR is arranged in geometric distance order, and the distance between the legs of the shelf is fixed, the point cloud data can be divided into multiple point cloud blocks by using the condition that the geometric distance is less than a preset distance. Then, by judging whether multiple point cloud blocks belong to the shelf leg, point cloud data that does not belong to the shelf leg can be quickly excluded.
[0047] For example, since the robot can lock onto and move a shelf once it can confirm each of its legs, the preset distance can be the distance between the shelf legs. For instance, if the distance between each of the four shelf legs is 1 meter, then when the geometric distance is less than 1 meter, the point cloud data is divided into the same point cloud block. When the geometric distance between the next point cloud data and the previous one is greater than 1 meter, a new point cloud block is created to store the point cloud data. This allows for rapid processing of the point cloud data.
[0048] Since the point cloud data collected by LiDAR contains noise, such as trailing point clouds, it is necessary to filter out the noise in the point cloud data to avoid misidentification of the shelves due to noise.
[0049] In some embodiments, before dividing the multiple point cloud data into multiple point cloud blocks, the method further includes: performing radius filtering on the multiple point cloud data to filter out trailing data in the point cloud data. By using radius filtering, if the number of neighboring point cloud data in the neighborhood of a point cloud data is less than a preset number, such as 5, then the point cloud data is filtered out, thereby effectively filtering out noise in the point cloud data.
[0050] S102. Obtain the geometric information of the shelf to be identified, and determine multiple target point cloud blocks in multiple point cloud blocks based on the geometric information.
[0051] Specifically, the robot acquires the geometric information of the shelf to be identified, such as its length, width, height, and the number, length, and distance of its legs. By comparing this geometric information with pre-defined point cloud blocks, the robot can identify the target point cloud block that represents the shelf's geometric features. Processing based on this target point cloud block enables accurate identification of the shelf's pose. Determining the target point cloud block based on geometric information further reduces the amount of point cloud data required, thus improving the speed of the provided shelf recognition method.
[0052] In some embodiments, the shelving includes multiple shelving legs. For example... Figure 3 As shown, Figure 3 This is a flowchart of the steps of a method for obtaining target point cloud blocks provided in an embodiment of this application.
[0053] like Figure 3 As shown, the method for obtaining the target point cloud block includes steps S102a to S102b.
[0054] S102a. Obtain the geometric information of the shelving legs of the shelf to be identified.
[0055] S102b. Based on the geometric information of the shelf legs, identify the point cloud blocks belonging to the shelf legs as target point cloud blocks.
[0056] Since shelves are generally regular in shape, obtaining their geometric information does not require much time or effort; it can be directly obtained from the product description. By identifying the target point cloud block belonging to the shelf leg among multiple point cloud blocks using data such as length and shape, the target point cloud block can be quickly confirmed. This allows for rapid filtering of the large amount of point cloud data collected by LiDAR, reducing the data processing load on the robot when executing the provided shelf recognition method and improving the processing speed of the shelf recognition method.
[0057] S103. Obtain the centroid of multiple target point cloud blocks, and identify the target centroid of the shelf from the multiple centroids based on geometric information.
[0058] Specifically, by acquiring the centroids of multiple target point cloud blocks, and since shelves are regular shapes, introducing centroids can further confirm whether the target point cloud block can be used to represent the features of the shelf. The target centroids selected based on geometric information can be used to finally calculate the shelf pose, thus significantly improving the accuracy of the shelf recognition method provided in this application through step-by-step data filtering.
[0059] In some embodiments, the shelving includes multiple shelving legs. For example... Figure 4 As shown, Figure 4 This is a flowchart of the steps of a target centroid point confirmation method provided in an embodiment of this application.
[0060] like Figure 4 As shown, the target centroid confirmation method includes steps S103a to S103d.
[0061] S103a. Use Delaunay triangulation to obtain multiple triangles from multiple centroids and obtain the side length information of the triangles.
[0062] S103b. Obtain the preset side length information of the preset triangle formed by the three shelf legs.
[0063] S103c. Obtain the difference information based on the side length information and the preset side length information. If the difference information meets the preset conditions, determine the triangle as the target triangle.
[0064] S103d. The centroid of the target triangle is determined as the target centroid.
[0065] By using Delaunay triangulation to obtain multiple triangles from the centroid of the target point cloud block, the side length information of each triangle is compared with the preset side length information formed by the three shelf legs. If the difference between the side lengths of the triangle formed by the centroid of the target point cloud block and the triangle formed by the shelf legs meets the preset conditions, such as when the side lengths of the triangles constructed inside the robot are 0.1 to 0.2 times the side lengths of the shelf leg components, then the triangle is determined to be the target triangle, and the centroid of the target triangle is the target centroid.
[0066] For example, based on the side length information and the preset side length information, the difference information can be obtained. The triangle can be pre-matched with the preset triangle in terms of angle. After the match is successful, the difference between each side of the triangle and the preset triangle is calculated to determine whether the triangle is used to represent the three legs of the shelf.
[0067] For example, after determining the centroid of the target triangle as the target centroid, the method further includes adding a preset marker to the target centroid. Since multiple shelves may be placed in the scene, the LiDAR may scan more than one shelf to be identified. By adding a preset marker to the target centroid, if the triangle to be matched includes the target centroid in the subsequent triangle matching process, the matching of that triangle can be skipped, thereby improving the speed of the provided shelf recognition method.
[0068] In some embodiments, the target point cloud block corresponding to the centroid of the target triangle is a point cloud block belonging to each of the three shelf legs. For example... Figure 5 As shown, Figure 5 This is a flowchart illustrating the steps of another method for determining the center of gravity of a target, as provided in an embodiment of this application. Figure 4 The methods provided are different, Figure 5 The provided method for confirming the target centroid also includes steps S103d1 to S103d2.
[0069] S103d1. Based on the point cloud block corresponding to the centroid point of the target triangle and the geometric information, obtain sub-target point cloud blocks from the remaining target point cloud blocks. The sub-target point cloud blocks are point cloud blocks belonging to the other shelf legs besides the three shelf legs mentioned above.
[0070] S103d2. The centroid of the target triangle and the centroid of the sub-target point cloud are determined as the target centroid.
[0071] When a shelf consists of four legs, a target triangle can be used to lock onto three of the target shelf legs. At this point, based on the geometric information of the four shelf legs, such as the distance between the shelf legs, a sub-target point cloud block representing the fourth shelf leg is obtained from the remaining target point cloud blocks. The centroid of this sub-target point cloud block is used as the target centroid and the three centroids of the target triangle to confirm the centroid of the four shelf legs. Thus, the provided shelf recognition method can quickly and accurately lock onto the target shelf.
[0072] S104. Obtain the pose information of each target's center of gravity and the lidar; construct the target point cloud data of the shelf based on the geometric information.
[0073] Specifically, since the robot faces the target shelf at different angles, and the pre-built shelf model inside the robot is at a frontal angle, the target point cloud data of the shelf is obtained based on geometric information, such as the number of target point clouds of the shelf legs. It is necessary to determine the angle and distance between the shelf to be identified and the LiDAR by obtaining the pose information of each target's center of gravity and the LiDAR.
[0074] S105. Match the target point cloud block corresponding to the target centroid with the target point cloud data based on the pose information, and determine the pose information corresponding to the successfully matched target point cloud block as the pose information of the shelf, thus completing the identification of the shelf.
[0075] Specifically, since the target point cloud data is constructed based on the model's frontal view, the target's centroid and the LiDAR's pose information need to be used as the initial pose for matching. This ensures that the target point cloud block corresponding to the centroid is in the same pose as the target point cloud data for matching. For example, the initial pose can be used to modify the target point cloud data so that it matches the pose of the target point cloud block corresponding to the centroid relative to the LiDAR. Then, matching information for the target point cloud blocks corresponding to each centroid is obtained, such as their similarity to the target point cloud data. The pose information of the successfully matched target point cloud blocks is determined as the pose information of the shelf to be identified, completing the shelf identification. The robot can then move the shelf based on this pose information. Furthermore, this method is compatible with large-angle offsets without the need for reflective stickers, simplifying the shelf identification method and improving the accuracy and speed of shelf leg identification.
[0076] In some embodiments, such as Figure 6 As shown, Figure 6 This is a flowchart illustrating the steps of a method for matching target point cloud blocks with target point cloud data, as provided in an embodiment of this application.
[0077] like Figure 6 As shown, the matching method between the target point cloud block and the target point cloud data includes steps S105a to S105b.
[0078] S105a. Adjust the pose of the target point cloud data based on the pose information, match the adjusted target point cloud data with the target point cloud block, and obtain the matching rate between the target point cloud data and the target point cloud block.
[0079] S105b. Obtain the matching result of the target point cloud block based on the matching rate and the preset matching rate.
[0080] By adjusting the target point cloud data based on the pose information, the pose of the target point cloud data constructed based on the frontal view angle and the target point cloud block corresponding to the target centroid point is the same relative to the lidar. This allows for matching the target point cloud data and the target point cloud block to obtain the matching rate. The matching result of the target point cloud data and the target point cloud block is determined based on the matching rate. For example, when the matching rate is greater than 80%, the match is successful, and the pose information of the target point cloud block is used as the pose information of the shelf to be identified.
[0081] In some embodiments, the provided method is used to identify multiple shelves to be identified; after identifying the shelves, it further includes: determining the distance information between each shelf and the LiDAR based on the pose information of the multiple shelves; obtaining the minimum distance information among the multiple distance information; and controlling the robot based on the pose information corresponding to the minimum distance information.
[0082] When the robot's working environment includes multiple shelves, the provided shelf recognition method can identify multiple target shelves to be identified, thereby prioritizing the handling of the shelves closest to the robot and improving the robot's handling efficiency.
[0083] For example, the robot can also control itself based on the pose information of multiple shelves identified using the provided method, and the pose information of shelves at a preset distance from the robot. This allows the robot to prioritize the handling of target shelves as needed.
[0084] This application provides a shelf identification method that is compatible with large-angle offsets without the need for reflective stickers, thus simplifying the shelf identification process and improving the accuracy and speed of shelf leg identification.
[0085] This application provides a terminal device. For example... Figure 7 As shown, Figure 7 This is a schematic block diagram of a robot provided in an embodiment of this application.
[0086] The robot may include a processor, memory, and a network interface. The processor, memory, and network interface are connected via a system bus, such as an I2C (Inter-integrated Circuit) bus.
[0087] Specifically, the processor can be a microcontroller unit (MCU), a central processing unit (CPU), or a digital signal processor (DSP), etc.
[0088] Specifically, the storage device can be a Flash chip, a read-only memory (ROM) disk, an optical disk, a USB flash drive, or a portable hard drive, etc.
[0089] This network interface is used for network communication, such as sending assigned tasks. Those skilled in the art will understand that... Figure 7 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the controller to which the present application is applied. A specific robot may include more or fewer parts than shown in the figure, or combine certain parts, or have different part arrangements.
[0090] The processor is used to run a computer program stored in the memory, and when executing the computer program, implements the corresponding steps in any of the shelf identification methods provided in the embodiments of this application.
[0091] The provided robot is used for the following steps:
[0092] Acquire multiple point cloud data points from the LiDAR measurement of the shelf to be identified, and divide the multiple point cloud data points into multiple point cloud blocks.
[0093] Obtain the geometric information of the shelf to be identified, and determine multiple target point cloud blocks from multiple point cloud blocks based on the geometric information.
[0094] Obtain the centroid of multiple target point cloud blocks, and identify the target centroid of the shelf from among the multiple centroids based on geometric information.
[0095] Acquire the pose information of each target's center of gravity and the lidar; construct the target point cloud data of the shelf based on the geometric information.
[0096] Based on the pose information, the target point cloud block corresponding to the target centroid point is matched with the target point cloud data. The pose information corresponding to the successfully matched target point cloud block is determined as the pose information of the shelf, thus completing the identification of the shelf.
[0097] In some embodiments, the provided processor is configured to: acquire the geometric distance between adjacent point cloud data in a plurality of point cloud data; generate a plurality of point cloud blocks based on the geometric distance, wherein the geometric distance between point cloud data in the point cloud blocks is less than a preset distance.
[0098] In some embodiments, before dividing the multiple point cloud data into multiple point cloud blocks, the provided processor is further configured to perform radius filtering on the multiple point cloud data to filter out trailing data in the point cloud data.
[0099] In some embodiments, the shelf includes multiple shelf legs, and the provided processor is used to: acquire geometric information of the shelf legs of the shelf to be identified; and identify point cloud blocks belonging to the shelf legs as the target point cloud blocks based on the geometric information of the shelf legs.
[0100] In some embodiments, the shelf includes multiple shelf legs, and the provided processor is used to: obtain multiple triangles by applying Delaunay triangulation to multiple centroids, and obtain the side length information of the triangles; obtain the preset side length information of a preset triangle formed by three shelf legs; obtain difference information based on the side length information and the preset side length information; if the difference information meets preset conditions, determine the triangle as a target triangle; and determine the centroid of the target triangle as the target centroid.
[0101] In some embodiments, after determining the centroid of the target triangle as the target centroid, the provided processor is further configured to add a preset mark to the target centroid.
[0102] In some embodiments, the target point cloud block corresponding to the centroid of the target triangle is a point cloud block belonging to each of the three shelf legs. The provided processor is used to: obtain a sub-target point cloud block from the remaining target point cloud blocks based on the point cloud block corresponding to the centroid of the target triangle and the geometric information, wherein the sub-target point cloud block is a point cloud block belonging to the other shelf legs besides the three shelf legs; and determine the centroid of the target triangle and the centroid of the sub-target point cloud block as the target centroid.
[0103] In some embodiments, the provided processor is configured to: adjust the pose of the target point cloud data based on the pose information; perform pose matching between the adjusted target point cloud data and the target point cloud block; obtain the matching rate between the target point cloud data and the target point cloud block; and obtain the matching result of the target point cloud block according to the matching rate and a preset matching rate.
[0104] In some embodiments, the provided method is used to identify a plurality of shelves to be identified; after the identification of the shelves is completed, the provided processor is further used to: determine the distance information between each shelf and the lidar based on the pose information of the plurality of shelves; obtain the minimum distance information among the plurality of distance information, and complete the control of the robot based on the pose information corresponding to the minimum distance information.
[0105] It should be noted that those skilled in the art will understand that, for the sake of convenience and brevity, the specific working process of the computer equipment described above can be referred to the corresponding process in the aforementioned shelf identification method, and will not be repeated here.
[0106] This application also provides a computer-readable storage medium storing a computer program, which includes program instructions. A processor executes these program instructions to implement the steps of the operation control method provided in the above embodiments. For example, when the computer program is loaded by a processor, it can perform the following steps:
[0107] Acquire multiple point cloud data points from the LiDAR measurement of the shelf to be identified, and divide the multiple point cloud data points into multiple point cloud blocks.
[0108] Obtain the geometric information of the shelf to be identified, and determine multiple target point cloud blocks from multiple point cloud blocks based on the geometric information.
[0109] Obtain the centroid of multiple target point cloud blocks, and identify the target centroid of the shelf from among the multiple centroids based on geometric information.
[0110] Acquire the pose information of each target's center of gravity and the lidar; construct the target point cloud data of the shelf based on the geometric information.
[0111] Based on the pose information, the target point cloud block corresponding to the target centroid point is matched with the target point cloud data. The pose information corresponding to the successfully matched target point cloud block is determined as the pose information of the shelf, thus completing the identification of the shelf.
[0112] For details on the implementation of each of the above operations, please refer to the previous examples, which will not be repeated here.
[0113] The computer-readable storage medium can be an internal storage unit of the computer device described in the foregoing embodiments, such as a hard disk or memory of the computer device. Alternatively, it can be an external storage device of the computer device, such as a plug-in hard disk, smart media card (SMC), secure digital card (SD), flash card, etc., provided on the computer device.
[0114] Since the computer program stored in the computer-readable storage medium can execute any of the shelf identification methods provided in the embodiments of this application, the beneficial effects that any of the shelf identification methods provided in the embodiments of this application can achieve can be realized, as detailed in the preceding embodiments, and will not be repeated here.
[0115] The sequence numbers of the embodiments in this application are merely for descriptive purposes and do not represent the superiority or inferiority of the embodiments. The above are only specific embodiments of this application, but the scope of protection of this application is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the technical scope disclosed in this application, and these modifications or substitutions should all be covered within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A shelf identification method, characterized in that, The method is applied to a robot equipped with a lidar system; the method includes: The laser radar acquires multiple point cloud data points for measuring the shelf to be identified, and divides the multiple point cloud data points into multiple point cloud blocks; Obtain the geometric information of the shelf to be identified, and determine multiple target point cloud blocks from the multiple point cloud blocks based on the geometric information; Obtain the centroid points of multiple target point cloud blocks, and identify the target centroid points belonging to the shelf from the multiple centroid points based on the geometric information; Obtain the pose information of each target centroid point and the lidar; construct the target point cloud data of the shelf based on the geometric information; Based on the pose information, the target point cloud block corresponding to the target centroid point is matched with the target point cloud data, and the pose information corresponding to the successfully matched target point cloud block is determined as the pose information of the shelf, thus completing the identification of the shelf. The shelf includes multiple shelf legs; the step of identifying the target center of gravity of the shelf from multiple center of gravity points based on the geometric information includes: Multiple triangles are obtained by applying Delaunay triangulation to the multiple centroids, and the side length information of the triangles is obtained. Obtain the preset side length information of the preset triangle formed by the three shelf legs; Based on the side length information and the preset side length information, difference information is obtained. If the difference information meets the preset conditions, the triangle is determined to be the target triangle. The centroid of the target triangle is defined as the target centroid.
2. The method according to claim 1, characterized in that, The process of dividing multiple point cloud data into multiple point cloud blocks includes: Obtain the geometric distance between adjacent point cloud data in a plurality of point cloud data; Multiple point cloud blocks are generated based on the geometric distance, wherein the geometric distance between the point cloud data in the point cloud blocks is less than a preset distance.
3. The method according to claim 1, characterized in that, Before dividing the multiple point cloud data into multiple point cloud blocks, the method further includes: Radius filtering is performed on multiple point cloud data sets to remove trailing data from the point cloud data sets.
4. The method according to claim 1, characterized in that, The shelf includes multiple shelf legs; the step of acquiring the geometric information of the shelf to be identified, and determining multiple target point cloud blocks in the multiple point cloud blocks based on the geometric information, includes: Obtain the geometric information of the shelf legs of the shelf to be identified; The point cloud blocks belonging to the shelf legs are identified as the target point cloud blocks based on the geometric information of the shelf legs.
5. The method according to claim 1, characterized in that, After determining the centroid of the target triangle as the target centroid, the method further includes: Add a preset mark to the target centroid.
6. The method according to claim 1, characterized in that, The target point cloud block corresponding to the centroid of the target triangle is a point cloud block belonging to each of the three shelf legs; determining the centroid of the target triangle as the target centroid includes: Based on the point cloud block corresponding to the centroid point constituting the target triangle and the geometric information, sub-target point cloud blocks are obtained from the remaining target point cloud blocks. The sub-target point cloud blocks are point cloud blocks belonging to the other shelf legs besides the three shelf legs. The centroid of the target triangle and the centroid of the sub-target point cloud are determined as the target centroid.
7. The method according to claim 1, characterized in that, The step of matching the target point cloud block with the target point cloud data based on the pose information includes: The pose of the target point cloud data is adjusted based on the pose information, and the adjusted target point cloud data is matched with the target point cloud block to obtain the matching rate between the target point cloud data and the target point cloud block. The matching result of the target point cloud block is obtained based on the matching rate and the preset matching rate.
8. The method according to claim 1, characterized in that, The method is used to identify multiple shelves to be identified; After completing the identification of the shelf, the process also includes: Based on the pose information of the multiple shelves, determine the distance information between each shelf and the lidar; The robot is controlled based on the pose information corresponding to the minimum distance among multiple distance information.
9. A robot, characterized in that, The robot further includes a processor, a memory, and a computer program stored in the memory and executable by the processor, the memory storing a strategy model, wherein the computer program, when executed by the processor, implements the steps of the shelf identification method as described in any one of claims 1 to 8.
10. A storage medium for computer-readable storage, characterized in that, The storage medium stores one or more programs, which can be executed by one or more processors to implement the steps of the shelf identification method as described in any one of claims 1 to 8.
Citation Information
Patent Citations
Method and device for automatically identifying goods shelf and mobile robot
CN110135439A