Device positioning method and apparatus
By constructing a priori map of the target and combining the acquisition of equipment data, the problems of high cost of robot positioning and insufficient data are solved, and high-accurate positioning of material box handling equipment is achieved.
Patent Information
- Application Number
- PCT/CN2025/077699
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-02-26
- Filing Date
- 2025-02-17
- Publication Date
- 2025-09-04
AI Technical Summary
In the prior art, the robot positioning method has the problem that the QR code pastes high cost and is prone to errors, or insufficient positioning data leads to positioning errors.
By constructing a target prior map of the target inventory area, obtain the moving position information of the material box handling equipment, and combine the surrounding environment data collected by the acquisition equipment to generate target positioning data, including initial positioning and candidate positioning points sets, to improve positioning accuracy.
It achieves the positioning accuracy of the material box handling equipment while reducing positioning costs and reduces positioning errors.
Smart Images

Figure CN2025077699_04092025_PF_FP_ABST
Abstract
Description
Device positioning method and device
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This disclosure is based on and claims the priority of Chinese patent application with application number 202410211591.0 and application date February 26, 2024. The entire content of the Chinese patent application is hereby incorporated into this application by reference. Technical Field
[0003] The present disclosure relates to the field of warehousing technology, and in particular to a method for locating equipment. The present disclosure also relates to an equipment locating device, a computing device, a computer-readable storage medium, and a computer program product. Background Art
[0004] In current applications, logistics warehouses, e-commerce warehouses, pharmaceutical warehouses, and restaurant warehouses all involve operations such as storage, retrieval, and transportation of goods. With the development of artificial intelligence technology, robots are increasingly being used in a growing number of applications to perform these tasks. This process requires knowing the robot's location to assign tasks. As a robot navigates within a warehouse, positioning is typically performed to determine its current location.
[0005] For example, robot positioning is often achieved through QR code positioning technology, but the cost of applying QR codes is high, and if the QR codes are applied incorrectly, it can cause positioning errors. Another example is that some robots only scan a portion of the environmental features in the warehouse during positioning scanning, resulting in insufficient data for positioning and potentially causing positioning errors. Therefore, a method to solve these technical problems is urgently needed. Summary of the Invention
[0006] In view of this, the present disclosure provides a device positioning method, a device positioning apparatus, a computing device, a computer-readable storage medium, and a computer program product to solve the above-mentioned problems in the related art.
[0007] According to a first aspect of an embodiment of the present disclosure, a device positioning method is provided, including:
[0008] Determining a target a priori map of a target inventory area and a container handling device to be located in the target inventory area, wherein the target a priori map includes a location point to be identified in the target inventory area;
[0009] Based on the target prior map, obtaining the mobile position information of the container handling equipment to be positioned;
[0010] Determining, based on the mobile position information, initial positioning data of the to-be-positioned material box handling device and a first set of candidate position points corresponding to the to-be-positioned material box handling device, wherein the first set of candidate position points are the to-be-identified position points in the target prior map;
[0011] Receive a second set of candidate position points corresponding to the to-be-positioned container handling device, wherein the second set of candidate position points is acquired based on acquisition by an acquisition device;
[0012] Target positioning data of the container handling equipment to be positioned is generated based on the first candidate position point set, the second candidate position point set, and the initial positioning data.
[0013] According to a second aspect of an embodiment of the present disclosure, there is provided a device positioning apparatus, comprising:
[0014] A first determination module is configured to determine a target a priori map of a target inventory area and a container handling device to be located in the target inventory area, wherein the target a priori map includes a location point to be identified in the target inventory area;
[0015] an acquisition module configured to acquire the mobile position information of the to-be-located material box handling device based on the target prior map;
[0016] a second determining module configured to determine, based on the mobile position information, initial positioning data of the to-be-positioned container handling device and a first set of candidate position points corresponding to the to-be-positioned container handling device, wherein the first set of candidate position points are the to-be-identified position points in the target prior map;
[0017] A receiving module is configured to receive a second set of candidate position points corresponding to the to-be-positioned container handling device, wherein the second set of candidate position points is acquired based on acquisition by an acquisition device;
[0018] A generating module is configured to generate target positioning data of the container handling equipment to be positioned according to the first candidate position point set, the second candidate position point set and the initial positioning data.
[0019] According to a third aspect of an embodiment of the present disclosure, a computing device is provided, comprising a memory, a processor, and a computer program or instructions stored in the memory and executable on the processor, wherein the processor implements the steps of the device positioning method when executing the computer program or instructions.
[0020] According to a fourth aspect of an embodiment of the present disclosure, a computer-readable storage medium is provided, which stores a computer program or instructions, and when the computer program or instructions are executed by a processor, the steps of the device positioning method are implemented.
[0021] According to a fifth aspect of an embodiment of the present disclosure, a computer program product is provided, comprising a computer program or instructions, which implement the steps of the above-mentioned device positioning method when executed by a processor.
[0022] The equipment positioning method provided by the present disclosure includes: determining a target priori map of a target inventory area and a to-be-located box handling equipment in the target inventory area, wherein the target priori map includes the to-be-identified position points in the target inventory area; obtaining mobile position information of the to-be-located box handling equipment based on the target priori map; determining initial positioning data of the to-be-located box handling equipment and a first candidate position point set corresponding to the to-be-located box handling equipment according to the mobile position information, wherein the first candidate position point set is the to-be-identified position points in the target priori map; receiving a second candidate position point set corresponding to the to-be-located box handling equipment, wherein the second candidate position point set is obtained based on acquisition by an acquisition device; generating target positioning data of the to-be-located box handling equipment according to the first candidate position point set, the second candidate position point set and the initial positioning data.
[0023] An embodiment of the present disclosure realizes that by constructing a target priori map of the target inventory area, the mobile position information of the material box handling equipment to be positioned is obtained according to the target priori map, thereby determining the initial positioning data of the material box handling equipment to be positioned, achieving preliminary positioning of the material box handling equipment to be positioned, and then by determining a first candidate position point set and a second candidate position point set, on the basis of obtaining the initial positioning data, generating target positioning data of the material box handling equipment to be positioned, thereby achieving positioning of the material box handling equipment to be positioned. By determining the initial positioning data of the material box handling equipment to be positioned, initially positioning the material box handling equipment to be positioned, and then combining the first candidate position point set and the second candidate position point set, on the basis of the initial positioning data, two stages of generating target positioning data are achieved to achieve precise positioning of the material box handling equipment to be positioned, thereby improving the accuracy of positioning of the material box handling equipment to be positioned, and in the process of positioning the material box handling equipment to be positioned, it is only necessary to collect data according to the collection device of the material box handling equipment to be positioned, thereby reducing the positioning cost of positioning the material box handling equipment to be positioned. BRIEF DESCRIPTION OF THE DRAWINGS
[0024] FIG1 is a schematic diagram of an application scenario of a device positioning method provided by an embodiment of the present disclosure;
[0025] FIG2 is a flow chart of a device positioning method provided by an embodiment of the present disclosure;
[0026] FIG3 is a schematic diagram of a target prior map provided by an embodiment of the present disclosure;
[0027] FIG4 is a schematic diagram of generating target positioning data according to an embodiment of the present disclosure;
[0028] FIG5 is a processing flow chart of a device positioning method applied to a warehousing scenario provided by an embodiment of the present disclosure;
[0029] FIG6 is a schematic structural diagram of a device positioning apparatus provided by an embodiment of the present disclosure;
[0030] FIG7 is a structural block diagram of a computing device provided by an embodiment of the present disclosure. DETAILED DESCRIPTION
[0031] The following description sets forth many details to facilitate a full understanding of the present disclosure. However, the present disclosure can be implemented in many other ways than those described herein, and those skilled in the art can make similar generalizations without violating the scope of the present disclosure. Therefore, the present disclosure is not limited to the specific implementations disclosed below.
[0032] The terms used in one or more embodiments of the present disclosure are for the purpose of describing specific embodiments only and are not intended to limit one or more embodiments of the present disclosure. The singular forms "a", "the", and "the" used in one or more embodiments of the present disclosure and the appended claims are also intended to include plural forms, unless the context clearly indicates otherwise. It should also be understood that the term "and / or" used in one or more embodiments of the present disclosure refers to and includes any or all possible combinations of one or more associated listed items.
[0033] It should be understood that although the terms first, second, etc. may be used to describe various information in one or more embodiments of the present disclosure, such information should not be limited to these terms. These terms are only used to distinguish the same type of information from each other. For example, the first can also be referred to as the second, and similarly, the second can also be referred to as the first. Depending on the context, the word "if" as used herein can be interpreted as "at the time of" or "when" or "in response to determining."
[0034] First, the terms involved in one or more embodiments of the present disclosure are explained.
[0035] ICP (Iterative Closest Point) matching algorithm: A point cloud matching algorithm that matches data by iteratively finding the closest point.
[0036] With the development of artificial intelligence (AI) technology, robots are increasingly being used in a growing number of applications, including storage, retrieval, and transportation of goods. This process requires knowing the robot's location to assign tasks. As robots navigate warehouses, they typically use positioning to determine their current location.
[0037] For example, robot positioning is often achieved through QR code positioning technology, but the cost of pasting QR codes is high. If the QR code is pasted in the wrong position, it will also cause errors in robot positioning. For example, some robots can only scan some environmental features in the storage area during the positioning scanning process, resulting in insufficient data for positioning, which may cause positioning errors.
[0038] In the present disclosure, a device positioning method is provided. The present disclosure also relates to a device positioning apparatus, a computing device, a computer-readable storage medium, a computer program product, and a computer program, which are described in detail one by one in the following embodiments.
[0039] Refer to Figure 1, which shows a schematic diagram of an application scenario of a device positioning method provided according to an embodiment of the present disclosure. Taking a structured warehouse environment as an example, the shelf size in the structured warehouse is known, the shelf placement interval is known, and each shelf is placed according to the rules. As shown in Figure 1, there are multiple shelves in the target warehouse. Two shelves can be separated by an aisle. The container handling equipment can pass under the shelf or in the aisle. The container in this application can be a plastic box, cardboard box, pallet, or other container or package that can be used to hold items. In actual applications, in the process of using the container handling equipment to perform tasks, it is necessary to locate the container handling equipment to obtain the current position of the container handling equipment, which is conducive to allocating tasks to the container handling equipment according to the current position of the container handling equipment.
[0040] The device positioning method provided by this disclosure can, in a structured warehouse environment, fill in a point cloud of the target warehouse's actual environment design map based on the target warehouse's actual environment design map. Furthermore, the warehouse environment is gridded, and the grid center position data of each grid is calculated to generate a target prior map of the target warehouse.
[0041] When filling a point cloud with an environmental design drawing, information about the locations to be identified can be extracted from the drawing. These locations include static markers such as shelf legs, shelf beams, shelves, and workstations. The information to be identified includes the location information of the locations to be identified, including at least one of the following: the absolute location information of the locations to be identified in an absolute coordinate system within the storage space; the relative location information of the locations to be identified in a relative coordinate system constructed based on the absolute coordinate system of the storage space and centered on the locations to be identified; and so forth.
[0042] The initial prior map can be gridded based on the locations to be identified. For example, the map can be divided into groups of four or six locations to be identified, and so on. After the initial prior map is gridded, a number of grids can be obtained. To determine the grid location data corresponding to each grid, a coordinate system can be established in the gridded initial prior map. Then, based on the number of locations to be identified along the coordinate axis of the gridded initial prior map, the grid location data corresponding to each grid can be set, thereby obtaining a target prior map corresponding to the target inventory area.
[0043] For example, the reference object is a shelf leg, and the absolute coordinate system of the storage space is used as an example for explanation. The shelf leg information, such as the four sides and four vertex coordinates of the shelf leg, can be extracted from the environmental design drawing, and the four sides of the shelf leg are filled with point clouds according to the vertex coordinates. The warehouse environment is gridded, and the grid center position data of each grid is calculated to generate a target priori map of the target warehouse. The generated target priori map contains shelf leg features (for example, point cloud filling data corresponding to the shelf legs), grid position data and grid size information corresponding to each grid obtained after grid division (for example, shelves and aisles), such as 120cm*100cm, and size information of each shelf leg, such as 5cm*6cm.
[0044] During the positioning process for a container handling device, the device collects environmental data from its surroundings using a data acquisition device. This data, combined with the acquired prior target map, allows the device's position within the target to be determined. In practical applications, the data acquisition device can be deployed anywhere within the warehouse or on the container handling device. For example, the data acquisition device, such as a lidar, can be deployed within the handling device.
[0045] In some embodiments, the mobile position information is configured to reflect changes in the position of the transport device during movement. Based on the mobile position information of the transport device in the target prior map, the initial positioning data of the transport device after movement can be obtained. That is, the transport device can be roughly positioned to obtain coarse positioning data for the transport device. After obtaining the initial positioning data of the transport device, target positioning data for the transport device can be generated based on the surrounding environment data collected by the collection device to determine the current position of the transport device and achieve positioning of the transport device.
[0046] For example, the moving position information includes the number of shelf legs that the bin handling device passes through during the movement process. Based on the number of shelf legs that the bin handling device passes through during the movement process, the initial positioning data of the bin handling device after the movement can be further obtained. That is, the bin handling device is roughly positioned to obtain the rough positioning data of the bin handling device. After obtaining the initial positioning data of the bin handling device, the shelf leg environment data corresponding to the shelf grid where the bin handling device is located can be extracted from the surrounding environment data collected by the collection device deployed by the bin handling device, and matched with the shelf leg features in the target prior map, so that the offset data of the bin handling device relative to the center of the shelf grid can be calculated. Based on the offset data, the target positioning data of the bin handling device is generated to determine the current position of the bin handling device and realize the positioning of the bin handling device.
[0047] The equipment positioning method provided by the present disclosure can determine the initial positioning data of the bin handling equipment in the target prior map based on the mobile position information of the bin handling equipment by constructing a target prior map of the target warehouse. Then, based on the acquisition equipment deployed in the bin handling equipment, data is collected on the surrounding environment data, and based on the surrounding environment data collected by the acquisition equipment, the shelf leg environment data corresponding to the shelf grid where the bin handling equipment is located is extracted. Furthermore, the extracted shelf leg environment data is matched with the shelf leg features in the target prior map, and the target positioning data of the bin handling equipment is generated in combination with the initial positioning data, so that the target positioning data of the bin handling equipment is further determined on the basis of the initial positioning data, thereby improving the accuracy of positioning the bin handling equipment. In the process of positioning the bin handling equipment, the acquisition equipment deployed in the bin handling equipment is required to collect data on the surrounding environment, which greatly reduces the positioning cost of positioning the bin handling equipment.
[0048] FIG2 shows a flow chart of a device positioning method provided according to an embodiment of the present disclosure, which includes the following steps:
[0049] Step 202: Determine a target a priori map of a target inventory area and a container handling device to be located in the target inventory area, wherein the target a priori map includes location points to be identified in the target inventory area.
[0050] In practical applications, positioning a robot or other intelligent mobile device involves acquiring data about the surrounding environment and performing calculations on the acquired surrounding environment data to obtain the robot or intelligent mobile device's positioning data. This surrounding environment data can be acquired based on a deployed LiDAR. However, due to the size limitations of robots or intelligent mobile devices used in practical applications, the deployed LiDAR can only capture limited environmental data within a certain range. This results in a lack of valid data for positioning during positioning, leading to positioning errors for the robot or intelligent mobile device. Therefore, it is possible to position the robot or intelligent mobile device based on the valid environmental data it scans, thereby improving positioning accuracy.
[0051] The device positioning method provided by the present disclosure can be applied to a control server. The target inventory area refers to the inventory area where the material box handling equipment to be positioned is located. The material box handling equipment can be, for example, an intelligent mobile robot for handling material boxes, or other intelligent mobile devices with the function of handling material boxes. The material box handling equipment to be positioned is the material box handling equipment that needs to be positioned. The target prior map refers to a point cloud map corresponding to the target inventory area with the characteristics of the position points to be identified. The position points to be identified refer to the position points in the target inventory area that are used to assist the material box handling equipment to be positioned in positioning, for example, they can be determined according to the actual application environment of the target inventory area. For example, if the target inventory area is a warehouse for storing goods, the position points to be identified are the shelf legs in the warehouse. For another example, if the target inventory area is a forest, the position points to be identified are the trees in the forest.
[0052] In some embodiments, after determining the target inventory area and the container handling equipment that needs to be positioned in the target inventory area, a target priori map corresponding to the target inventory area can be further determined to position the container handling equipment to be positioned according to the target priori map.
[0053] Since the target prior map is a point cloud map with features of the location points to be identified, and in actual applications, each target inventory area often has a corresponding site design map or scene map, therefore, in the exemplary implementation process, the site design map or scene map of the target inventory area can be obtained, and the site design map or scene map can be processed to obtain the target prior map corresponding to the target inventory area.
[0054] In one embodiment provided by the present disclosure, determining a target priori map of a target inventory area includes:
[0055] Acquire a target scene map of a target inventory area, wherein the target scene map includes location points to be identified in the target inventory area;
[0056] Performing point cloud filling on the location points to be identified in the target scene map to generate an initial priori map of the target inventory area;
[0057] Dividing the initial priori map into grids according to the location points to be identified in the target inventory area, and determining grid location data corresponding to each grid;
[0058] An initial priori map having the grid location data is determined as a target priori map of the target inventory area.
[0059] In some embodiments, the target scenario map refers to a site design or scenario diagram corresponding to the target inventory area, and the target scenario map includes the locations to be identified in the target inventory area. The target scenario map of the target inventory area is the basis for generating the target prior map. Therefore, before generating the target prior map, the target scenario map of the target inventory area can be obtained first.
[0060] In some embodiments, the initial prior map refers to the target scene map after point cloud filling of the to-be-identified location points in the target scene map.
[0061] In some embodiments, a target scene graph corresponding to the target inventory area is obtained, and point cloud filling is performed on the to-be-identified locations in the target scene graph to generate an initial prior map corresponding to the target scene graph. Point cloud filling can be performed on the to-be-identified locations by, for example, extracting location information of the to-be-identified locations from the target scene graph and performing point cloud filling on the contours of the to-be-identified locations based on the location information of the to-be-identified locations.
[0062] In some embodiments, the grid location data refers to the location data corresponding to each grid after the initial a priori map is divided into grids.
[0063] When determining grid location data, the number of locations to be identified along the initial a priori map coordinate axis can be used, with each grid location data corresponding to map location data. Map location data can be determined by the actual location of the grid center. For example, if the locations to be identified are all shelf legs, the map location data corresponding to each grid location data is the actual location of each shelf.
[0064] For example, if the location point to be identified is a shelf leg, the location point information for the location point to be identified can be the coordinates of the four edges and four vertices of the shelf leg. After extracting the four edges and four vertex coordinates of the shelf leg, the four edges of the shelf leg are filled with point clouds based on the vertex coordinates. Furthermore, the initial prior map is gridded based on the location points to be identified in the target inventory area. For example, the map can be divided into groups of four or six location points to be identified. After gridding the initial prior map, several grids can be obtained.
[0065] To determine the grid location data corresponding to each grid, a coordinate system can be established within the initial a priori map after grid division. For example, the coordinate system can be established with the lower left corner of the map as the origin, or with another location as the origin. The grid location data corresponding to each grid is then set based on the number of locations to be identified along the coordinate axes of the initial a priori map after grid division, thereby obtaining a target a priori map corresponding to the target inventory area.
[0066] Referring to FIG3 , FIG3 shows a schematic diagram of a target prior map provided according to an embodiment of the present disclosure. As shown in FIG3 , the initial prior map includes a plurality of position points to be identified. For example, the initial prior map is gridded with four position points to be identified as a group, and a coordinate system is established with the lower left corner of the map as the coordinate origin. The grid position data corresponding to each grid is set according to the number of position points to be identified along the coordinate axis direction of the initial prior map after grid division. For example, the grid position data of a grid that is one position point to be identified along the x-axis direction and one position point to be identified along the y-axis direction is (1-1), the grid position data of a grid that is two position points to be identified along the x-axis direction and one position point to be identified along the y-axis direction is (2-1), and so on. By analogy, the target prior map shown in FIG3 can be obtained.
[0067] The device positioning method provided by the present disclosure can obtain a target scene graph of a target inventory area and then perform point cloud filling on the target scene graph to obtain an initial a priori map corresponding to the target scene graph. The initial a priori map is then gridded, and corresponding grid position data is set for each grid after division. This can generate a target a priori map corresponding to the target inventory area. In the subsequent positioning process of the target bin handling equipment to be positioned, the target a priori map can be used to perform preliminary positioning of the target bin handling equipment to be positioned, thereby obtaining initial positioning data for the target bin handling equipment to be positioned.
[0068] Step 204: Based on the target prior map, obtain the mobile position information of the container handling equipment to be positioned.
[0069] After obtaining the target a priori map corresponding to the target inventory area, the target a priori map records the grid location data corresponding to each grid. Therefore, the mobile location information of the container handling device to be located can be obtained from the target a priori map based on the grid location data of each grid. In other words, the mobile location information of the container handling device to be located can be determined based on the grid location data of the grids in the target a priori map.
[0070] In one embodiment provided by the present disclosure, obtaining the mobile position information of the to-be-positioned container handling device based on the target prior map includes:
[0071] Determining the starting position data of the container handling device to be positioned in the target prior map;
[0072] Determine at least one moving direction corresponding to the to-be-positioned material box handling device, and the number of moving position points corresponding to each moving direction of the to-be-positioned material box handling device;
[0073] The starting position data, each moving direction and the number of corresponding moving position points in each moving direction are determined as the moving position information of the material box handling equipment to be positioned.
[0074] In actual applications, due to the size limitation of the material box handling equipment itself, the surrounding environment data collected by the deployed collection equipment within a certain range is limited. Therefore, the number of unidentified position points passed by the material box handling equipment to be positioned during the movement can be recorded, so as to perform initial positioning of the material box handling equipment to be positioned based on the number of unidentified position points passed by the material box handling equipment to be positioned, and obtain the initial positioning data of the material box handling equipment to be positioned.
[0075] In some embodiments, the starting position data is configured to represent the starting grid position data of the material box handling device to be positioned in the target prior map during the current positioning process. The moving position points are configured to represent the position points to be identified that the material box handling device to be positioned passes through during the movement process. The moving position information is configured to represent the position data information generated by the material box handling device to be positioned during the movement process. For example, it includes the starting position data of the material box handling device to be positioned, the moving direction of the material box handling device to be positioned, and the number of moving position points corresponding to the material box handling device to be positioned in each moving direction. The moving direction is, for example, the moving direction of the material box handling device to be positioned in the target prior map.
[0076] In some embodiments, the starting position data of the container handling device to be positioned is determined in the target prior map, and the moving direction of the container handling device to be positioned is determined, as well as the number of moving position points of the container handling device to be positioned in each moving direction. The determined starting position data, moving direction, and number of moving position points corresponding to each moving direction are determined as the moving position information of the container handling device to be positioned.
[0077] Continuing with the example of Figure 3 above, when the material box handling device to be positioned starts from the coordinate origin, passes through one position point to be identified along the x-axis direction and one position point to be identified along the y-axis direction, then the starting position data of the material box handling device to be positioned is the coordinate origin, and the moving direction and the number of corresponding moving position points in the moving direction are "passing through one position point to be identified along the x-axis direction and one position point to be identified along the y-axis direction." When the material box handling device to be positioned starts from grid (3-1), passes through two position points to be identified along the x-axis and two position points to be identified along the y-axis, then the starting position data of the material box handling device to be positioned is (3-1), and the moving direction and the number of corresponding moving position points in the moving direction are "passing through two position points to be identified along the x-axis and two position points to be identified along the y-axis."
[0078] Since each material box handling equipment is deployed with a collection device, the collection device can be configured to collect the surrounding environment data of the material box handling equipment to be positioned, and the number of moving position points passed by the material box handling equipment to be positioned during the actual movement process also needs to be determined and recorded based on the environmental data collected by the collection device of the material box handling equipment to be positioned.
[0079] Based on this, in one embodiment provided by the present disclosure, determining the number of moving position points corresponding to the to-be-positioned container handling device in each moving direction includes:
[0080] Acquire environmental point cloud data of the target inventory area, wherein the environmental point cloud data is acquired based on acquisition equipment of the material box handling equipment to be located;
[0081] Clustering the environmental point cloud data to obtain an initial cluster set;
[0082] The number of moving position points corresponding to the to-be-positioned container handling equipment in each moving direction is determined according to the starting position data and the initial cluster set.
[0083] In practical applications, the data collected by the acquisition equipment of the material box handling equipment to be positioned are all laser point cloud data. Therefore, after obtaining the laser point cloud data of the surrounding environment of the material box handling equipment to be positioned based on the acquisition equipment, the collected laser point cloud data can be clustered to determine the number of mobile position points corresponding to the material box handling equipment to be positioned based on the clustered laser point cloud data.
[0084] In some embodiments, the environmental point cloud data refers to laser point cloud data acquired by scanning the surrounding environment using a collection device deployed by the container handling device to be positioned. The initial cluster set refers to a cluster set obtained by clustering the environmental point cloud data.
[0085] In some embodiments, a collection device deployed by the container handling device to be located scans the surrounding environment of the container handling device to be located to obtain environmental point cloud data for the target inventory area. This environmental point cloud data is clustered, for example, by calculating the distance between adjacent laser points based on their coordinates. Laser points with a distance between adjacent laser points less than or equal to a preset distance threshold are grouped into the same cluster, while laser points with a distance between adjacent laser points greater than the preset distance threshold are grouped into different clusters. This results in an initial cluster set consisting of multiple initial clusters.
[0086] For example, the laser point coordinate set obtained by the acquisition device deployed based on the container handling equipment to be positioned is {P1, P2, ..., P j}, traverse the set, calculate the distance between two adjacent laser points, and obtain the distance set between each adjacent laser point as {d 12 , d 23 ,……,d (j-1)j}, where j is the number of laser points, d 12 That is, the distance between the first laser point and the second laser point, and so on. (j-1)j That is, the distance between the j-1th laser point and the jth laser point. Taking the preset distance threshold as α as an example, d 12 <α, then put P1 and P2 into the same cluster C1, d 23 <α, then P3 is also placed in cluster C1, d 34 >α, then P4 is placed in another cluster C2. Similarly, clustering is performed on each laser point to obtain the initial cluster set {C1, C2, ..., C m}, where m is the number of clusters obtained by clustering.
[0087] After obtaining the initial cluster set, the number of moving position points corresponding to the material box handling equipment to be positioned in each moving direction can be determined based on the starting position data of the material box handling equipment to be positioned and the initial cluster set obtained by clustering.
[0088] In actual applications, the environmental point cloud data collected by the acquisition equipment may not only contain point cloud data of the location points to be identified, but also point cloud data of other objects. Therefore, the initial clustering cluster set obtained by clustering can be filtered to obtain a clustering cluster set that only contains the location points to be identified. For example, in a warehousing application scenario, taking the material box handling equipment as a handling robot as an example, when the handling robot uses a lidar to scan the surrounding environment, in addition to the shelf legs, it may also scan other robots or shelves, etc. Based on this, it is also necessary to delete the point cloud data of other robots, the point cloud data of shelves, etc. from the collected environmental point cloud data, and only retain the point cloud data of the shelf legs.
[0089] In one embodiment provided by the present disclosure, determining the number of moving position points corresponding to the to-be-positioned container handling device in each moving direction according to the starting position data and the initial cluster set includes:
[0090] Determining an abnormal cluster in the initial cluster set, deleting the abnormal cluster from the initial cluster set, and obtaining a target cluster set;
[0091] The number of moving position points corresponding to the to-be-positioned container handling equipment in each moving direction is determined according to the starting position data and the target cluster set.
[0092] In some embodiments, an abnormal cluster refers to a cluster containing abnormal data within the initial clusters. For example, this can be understood as a cluster containing features other than the location point to be identified. The target cluster set refers to the cluster set obtained by deleting the abnormal cluster from the initial cluster set. This can be understood as the target cluster set containing clusters containing features of the location point to be identified.
[0093] In some embodiments, within the initial set of clusters, clusters of features not belonging to the position points to be identified are identified, the identified clusters of features not belonging to the position points to be identified are determined as abnormal clusters, and the abnormal clusters are deleted from the initial set of clusters, thereby obtaining a target set of clusters. Thus, based on the starting position data of the container handling device to be positioned and the number of target clusters that the container handling device to be positioned passes through during movement, the number of movement points corresponding to the container handling device to be positioned in each direction of movement can be determined.
[0094] In practical applications, the number of laser points corresponding to the position points to be identified and / or the size of the position points to be identified are relatively fixed. Therefore, the number of clustering points of each cluster in the initial cluster set and / or the size of each cluster can be verified to determine the abnormal cluster in the initial cluster.
[0095] In one embodiment provided by the present disclosure, determining an abnormal cluster in the initial cluster set includes:
[0096] Counting the number of cluster points in the cluster to be verified, wherein the cluster to be verified is any one of the initial cluster set;
[0097] When the number of cluster points in the cluster to be verified is less than a first cluster point threshold or greater than a second cluster point threshold, the cluster to be verified is determined to be an abnormal cluster.
[0098] In some embodiments, the cluster to be verified refers to any one of the initial cluster cluster set. The first cluster point threshold and the second cluster point threshold are configured to measure whether the cluster in the initial cluster cluster set is an abnormal cluster cluster. The first cluster point threshold and the second cluster point threshold constitute a cluster point count interval, and the initial cluster cluster whose number of cluster points is not within the cluster point count interval is an abnormal cluster cluster. Based on this, the first cluster point threshold refers to the lower limit of the number of points in the cluster point count interval. The second cluster point threshold refers to the upper limit of the number of points in the cluster point count interval. In actual applications, the first cluster point threshold and the second cluster point threshold are calculated by the acquisition device.
[0099] In some embodiments, the number of cluster points in the cluster to be verified is counted. If the number of cluster points in the cluster to be verified is less than a first cluster point threshold, or if the number of cluster points in the cluster to be verified is greater than a second cluster point threshold, it indicates that the number of cluster points in the cluster to be verified is not within a cluster point number interval. Therefore, the cluster to be verified is determined to be an abnormal cluster. The determined abnormal cluster is deleted from the initial cluster set to obtain a target cluster set.
[0100] The above is a method for verifying the number of cluster points of each cluster in the initial cluster set to determine abnormal clusters in the initial clusters.
[0101] The implementation method for verifying the size of each cluster in the initial cluster set is as follows.
[0102] In another embodiment provided by the present disclosure, determining an abnormal cluster in the initial cluster set includes:
[0103] Determining a cluster diameter of a cluster to be verified, wherein the cluster to be verified is any one of the initial cluster set;
[0104] In a case where the cluster diameter of the cluster to be verified is greater than the preset cluster diameter, the cluster to be verified is determined to be an abnormal cluster.
[0105] In some embodiments, the preset cluster diameter refers to a preset cluster diameter of a cluster. The preset cluster diameter is configured to measure whether a cluster in the initial cluster set is an abnormal cluster. If the cluster diameter of the initial cluster is greater than the preset cluster diameter, it indicates that the initial cluster is an abnormal cluster.
[0106] In some embodiments, the cluster diameter of the cluster to be verified is determined, and if the cluster diameter of the cluster to be verified is greater than a preset cluster diameter, the cluster to be verified is considered an abnormal cluster. Further, the determined abnormal cluster is deleted from the initial cluster set to obtain the target cluster set.
[0107] After obtaining the initial cluster set, each initial cluster in the initial cluster set is further verified to determine whether there are any abnormal clusters in the initial cluster set. If any abnormal clusters exist, they are deleted from the initial cluster set to obtain a target cluster set, so that the target cluster set contains clusters with the characteristics of the location point to be identified. This improves the accuracy of the obtained mobile location information when determining the mobile location information of the material box handling equipment to be located based on the target cluster set.
[0108] The equipment positioning method provided by the present disclosure realizes obtaining the mobile position information of the material box handling equipment to be positioned based on the target prior map, so as to improve the positioning accuracy of the material box handling equipment to be positioned in the subsequent positioning process of the material box handling equipment to be positioned.
[0109] Step 206: Determine the initial positioning data of the container handling device to be positioned and a first set of candidate position points corresponding to the container handling device to be positioned based on the mobile position information, wherein the first set of candidate position points are the position points to be identified in the target prior map.
[0110] After obtaining the moving position information of the material box handling equipment to be positioned, the initial positioning of the material box handling equipment to be positioned can be achieved based on the moving position information of the material box handling equipment to be positioned, and the initial positioning data of the material box handling equipment to be positioned can be obtained. The first candidate position point set of the material box handling equipment to be positioned can also be further obtained.
[0111] In one embodiment provided by the present disclosure, determining the initial positioning data of the to-be-positioned container handling device and a first set of candidate position points corresponding to the to-be-positioned container handling device based on the mobile position information includes:
[0112] Determining, in the target priori map, a target grid for the container handling device to be positioned and target grid position data of the target grid based on the starting position data, each moving direction, and the number of corresponding moving position points in each moving direction;
[0113] According to the target grid position data, the initial positioning data of the to-be-positioned material box handling equipment is queried, and the to-be-identified position points corresponding to the target grid are determined as a first candidate position point set.
[0114] Since each grid in the target prior map corresponds to grid position data and map position data corresponding to each grid position data, before determining the initial positioning data of the material box handling equipment to be positioned, the target grid position data corresponding to the material box handling equipment to be positioned can be determined based on the target prior map.
[0115] In some embodiments, the target grid is configured to represent the current positioning grid of the container handling device to be positioned in the target prior map. The target grid position data is configured to represent the grid position data of the target grid. The initial positioning data is configured to represent the positioning data obtained after initial positioning of the container handling device to be positioned. The initial positioning data includes the map position data corresponding to the target grid position data, i.e., the actual position data of the grid center of the target grid. The first candidate position point set is configured to represent the set of position points to be identified corresponding to the target grid.
[0116] In some embodiments, after obtaining the starting position data of the material box handling equipment to be positioned, the moving direction of the material box handling equipment to be positioned, and the number of moving position points corresponding to the material box handling equipment to be positioned in each moving direction, the target grid of the material box handling equipment to be positioned and the target grid position data of the target grid can be determined in the target prior map. Since each grid in the target prior map corresponds to grid position data, and map position data corresponding to the grid position data, after determining the target grid position data of the material box handling equipment to be positioned, the map position data corresponding to the target grid position data can be queried based on the target grid position data. The map position data, that is, the actual position data of the grid center of the target grid, is determined as the initial positioning data of the material box handling equipment to be positioned. After determining the target grid, the position point to be identified corresponding to the target grid is the first candidate position point set corresponding to the material box handling equipment to be positioned.
[0117] Continuing with the example of Figure 3 above, when the starting position data of the material box handling equipment to be positioned is (1-1), and the material box handling equipment to be positioned passes through two to-be-identified position points along the x-axis and two to-be-identified position points along the y-axis, then according to the target prior map, it can be determined that the target grid of the material box handling equipment to be positioned is the (3-3) grid, and its corresponding target grid position data is (3-3). Based on the target grid position data (3-3), the initial positioning data of the material box handling equipment to be positioned is queried, and the four to-be-identified position points corresponding to the (3-3) grid are determined as the first candidate position points, and constitute the first candidate position point set.
[0118] The equipment positioning method provided by the present disclosure determines the target grid position data of the material box handling equipment to be positioned in the target prior map through the mobile position information of the material box handling equipment to be positioned, and further determines the initial positioning data of the material box handling equipment to be positioned based on the target grid position data, thereby realizing the initial positioning of the material box handling equipment to be positioned.
[0119] Step 208: Receive a second set of candidate position points corresponding to the container handling device to be positioned, wherein the second set of candidate position points is acquired based on data collected by a data collection device.
[0120] After obtaining the initial positioning data for the container handling device to be positioned and the first set of candidate locations, the initial positioning data for the container handling device to be positioned is the actual position data of the grid center of the target grid corresponding to the container handling device to be positioned. However, in actual applications, the container handling device to be positioned may not necessarily be located at the grid center of the target grid. Therefore, there may be a positioning deviation between the initial positioning data and the actual position data of the container handling device to be positioned. This requires adjusting the initial positioning data based on the initial positioning data to obtain the actual position data of the container handling device to be positioned, i.e., the target positioning data.
[0121] In some embodiments, the second set of candidate location points is configured to represent the set of target clusters corresponding to the first set of candidate location points. That is, the second set of candidate location points is configured to represent the target clusters corresponding to the to-be-identified location points of the target grid for the container handling equipment to be located in the target cluster set.
[0122] In some embodiments, the environmental point cloud data of the target inventory area is collected by a collection device of the container handling equipment to be located. After the collection device of the container handling equipment to be located collects the environmental point cloud data, the container handling equipment to be located can directly send the environmental point cloud data to a control server, which clusters the environmental point cloud data and obtains a target cluster set using the above-described method for removing abnormal clusters. Furthermore, based on the target grid corresponding to the container handling equipment to be located, the target cluster corresponding to the target grid is selected from the target cluster set as a second candidate location point, forming the second candidate location point set.
[0123] Furthermore, after the collection device of the container handling device to be located collects the environmental point cloud data, the container handling device to be located can cluster the environmental point cloud data and obtain a target cluster set using the aforementioned method for removing abnormal clusters. Based on the distance between each target cluster and the container handling device to be located, multiple second candidate location points are determined within the target cluster set to form a second candidate location point set, which is then sent to the control server.
[0124] In one embodiment provided by the present disclosure, receiving a second candidate position point set corresponding to the to-be-positioned container handling equipment includes:
[0125] Sending a candidate location point acquisition instruction to the material box handling device to be positioned;
[0126] A second candidate position point set is received, which is sent by the to-be-positioned container handling device in response to the candidate position point acquisition instruction.
[0127] In some embodiments, the second candidate position points in the second candidate position point set are determined based on the distance between each position point to be identified and the container handling equipment to be positioned.
[0128] After determining the second candidate location point set, the material box handling device to be positioned can send the second candidate location point set to the control server by receiving a candidate location point acquisition instruction sent by the control server.
[0129] The candidate location point acquisition instruction refers to an instruction generated by the control server for acquiring the second candidate location point set.
[0130] In some embodiments, after the control server sends a candidate location point acquisition instruction to the container handling device to be located for acquiring a second set of candidate location points, the control server may receive the second set of candidate location points from the container handling device to be located. Furthermore, the container handling device to be located may calculate the distance between each target cluster and the container handling device to be located, and determine a preset number of target clusters that are relatively close to the container handling device to be located as the second candidate location points.
[0131] The device positioning method provided herein can include a control server receiving environmental point cloud data returned by a container handling device to be positioned, clustering the environmental point cloud data to generate a target cluster set, and determining a second set of candidate location points within the target cluster set. Alternatively, after acquiring the environmental point cloud data, the container handling device to be positioned can cluster the environmental point cloud data to generate a target cluster set. A second set of candidate location points can be determined within the target cluster set and sent to the control server. This achieves flexibility in processing environmental point cloud data.
[0132] Step 210: Generate target positioning data of the container handling device to be positioned based on the first candidate position point set, the second candidate position point set and the initial positioning data.
[0133] After obtaining the first candidate position point set, the second candidate position point set, and the initial positioning data of the material box handling equipment to be positioned, the control server can calculate the offset data of the material box handling equipment to be positioned relative to the target grid center based on the first candidate position point set and the second candidate position point set, and adjust the initial positioning data of the material box handling equipment to be positioned based on the offset data to generate the actual position data of the material box handling equipment to be positioned, that is, the target positioning data.
[0134] In one embodiment provided by the present disclosure, generating target positioning data of the container handling device to be positioned based on the first candidate position point set, the second candidate position point set, and the initial positioning data includes:
[0135] Calculating offset data between the first candidate position point set and the second candidate position point set;
[0136] Target positioning data of the material box handling equipment to be positioned is generated according to the offset data and the initial positioning data.
[0137] In some embodiments, the offset data refers to the offset data between the actual positioning data of the material box handling equipment to be positioned and the actual positioning data of the target grid center. Since the actual positioning data of the material box handling equipment to be positioned, that is, the target data of the material box handling equipment to be positioned, is unknown at this time. Therefore, the first candidate position point set and the second candidate position point set can be matched. After the matching is completed, the offset data between the first candidate position point set and the second candidate position point set is calculated, and the offset data between the first candidate position point set and the second candidate position point set is used as the offset data between the actual positioning data of the material box handling equipment to be positioned and the actual positioning data of the target grid center. The offset data includes, for example, displacement offset data and angle offset data.
[0138] In some embodiments, by calculating the offset data between the first set of candidate location points and the second set of candidate location points, the offset data between the actual location data of the target grid center and the actual location data of the target grid center can be obtained. Thus, the initial location data of the target grid center can be adjusted based on the calculated offset data to obtain the target location data of the target grid center.
[0139] See Figure 4, which shows a schematic diagram of generating target positioning data according to an embodiment of the present disclosure. The target grid shown in Figure 4 is a grid in the target prior map. s ,y s ) is the initial positioning data of the material box handling device to be positioned, that is, the actual position data of the target grid center. (a, b) is the displacement offset data between the material box handling device to be positioned and the target grid center, and β is the angular offset data between the material box handling device to be positioned and the target grid center. s ,y s ), displacement offset data (a, b) and angle offset data β, the target positioning data (x r ,y r ).
[0140] In one embodiment of the present disclosure, calculating the offset data between the first candidate position point set and the second candidate position point set includes:
[0141] Determine a target first candidate laser point corresponding to a target second candidate laser point in the first candidate position point set, wherein the target second candidate laser point is any one in the second candidate position point set;
[0142] Calculating a target distance error between the second target candidate laser point and the first target candidate laser point;
[0143] Determining a rotation matrix and a translation matrix based on distance errors between each second candidate laser point in the second candidate position point set and each first candidate laser point in the first candidate position point set;
[0144] The offset data between the first candidate position point set and the second candidate position point set is calculated according to the rotation matrix and the translation matrix.
[0145] In the process of calculating the offset data between the first candidate position point set and the second candidate position point set, the calculation may be performed based on an ICP matching algorithm.
[0146] In some embodiments, the target second candidate laser point is any laser point in the set of second candidate position points. The target first candidate laser point refers to the point in the set of first candidate position points that is closest to the target second candidate laser point. For example, it refers to the point on the contour line of each first candidate position point that is closest to the target second candidate laser point. The target distance error refers to the distance error between the target second candidate laser point and the target first candidate laser point. The rotation matrix is configured to calculate angle offset data. The translation matrix is configured to calculate displacement offset data.
[0147] In some embodiments, for any laser point in the second candidate position point set, the first candidate position point set is traversed, and the distance between the target second candidate laser point and each first candidate laser point in the first candidate position point set is calculated. The point closest to the target second candidate laser point is determined as the target first candidate laser point. Furthermore, the target distance error between the target second candidate laser point and the target first candidate laser point is calculated until the target distance error between each second candidate laser point in the second candidate position point set and its corresponding target first candidate laser point is calculated. Based on the distance error between each second candidate laser point in the second candidate position point set and each first candidate laser point in the first candidate position point set, a rotation matrix and a translation matrix are determined. And based on the calculated rotation matrix and translation matrix, angle offset data and displacement offset data are respectively calculated.
[0148] The implementation method of determining the target first candidate laser point corresponding to each second candidate laser point in the second candidate position point set is as follows.
[0149] In one embodiment provided by the present disclosure, determining a target first candidate laser point corresponding to a target second candidate laser point in the first candidate position point set includes:
[0150] Calculating the position point distance between the target second candidate laser point and each first candidate laser point in the first candidate position point set;
[0151] Selecting a target location point distance from each location point distance, wherein the target location point distance is smaller than any of the location point distances except the target location point distance;
[0152] The first candidate laser point corresponding to the target position point distance is determined as the target first candidate laser point corresponding to the target second candidate laser point.
[0153] In some embodiments, the position point distance refers to the position distance between each second candidate laser point in the second candidate position point set and each first candidate laser point in the first candidate position point set.
[0154] In some embodiments, for the target second candidate laser point, the position point distances between the target second candidate laser point and each first candidate laser point in the first candidate position point set are calculated, and based on the size of each position point distance, the target position point distance is selected from each position point distance, that is, the smallest position point distance among each position point distance, and the first candidate laser point corresponding to the target position point distance is determined as the target first candidate laser point corresponding to the target second candidate laser point.
[0155] The implementation of determining the rotation matrix and translation matrix is as follows.
[0156] In one embodiment provided by the present disclosure, determining a rotation matrix and a translation matrix based on a distance error between each second candidate laser point in the second candidate position point set and each first candidate laser point in the first candidate position point set includes:
[0157] constructing a distance error function based on the distance errors between each second candidate laser point in the second candidate position point set and each first candidate laser point in the first candidate position point set;
[0158] The rotation matrix and the translation matrix are determined according to the distance error function.
[0159] The distance error function is configured to calculate a total distance error between each second candidate laser point in the second candidate position point set and each first candidate laser point in the first candidate position point set.
[0160] In some embodiments, a distance error function is constructed based on the distance errors between each second candidate laser point in the second candidate position point set and each first candidate laser point in the first candidate position point set, for example, as shown in the following formula 1:
[0161] Where E is the distance error between each second candidate laser point and each first candidate laser point. n is the number of second candidate laser points in the second candidate position point set. i is the i-th second candidate laser point or the i-th first candidate laser point. i is the i-th second candidate laser point in the second candidate position point set, q i is the i-th first candidate laser point in the first candidate position point set.
[0162] In some embodiments, the distance error between each second candidate laser point in the second candidate point set and each first candidate laser point in the first candidate point set is determined based on the laser coordinates of each second candidate laser point in the second candidate point set and the laser coordinates of each first candidate laser point in the first candidate point set. For example, the distance error between each second candidate laser point in the second candidate point set and each first candidate laser point in the first candidate point set can be calculated using Formula 1 above.
[0163] After determining the distance errors between each second candidate laser point in the second candidate position point set and each first candidate laser point in the first candidate position point set, angle offset data and displacement offset data can be calculated based on the distance errors. For example, the calculated distance errors can be minimized to determine the rotation matrix R and the translation matrix t. The angle offset data and displacement offset data are then calculated based on the calculated rotation matrix R and the translation matrix t.
[0164] For example, after calculating the distance errors between each second candidate laser point in the second candidate point set and each first candidate laser point in the first candidate point set according to Formula 1, minimize the distance errors between each second candidate laser point in the second candidate point set and each first candidate laser point in the first candidate point set. That is, Formula 1 is minimized to solve for the rotation matrix R and the translation matrix t.
[0165] Each second candidate laser point in the second candidate position point set is matched with each first candidate laser point in the first candidate position point set. Based on the matching results, the rotation matrix and translation matrix are calculated. The angular offset and displacement offset data between the container handling device to be positioned and the target grid center are then calculated based on the rotation matrix and translation matrix. Based on the initial positioning data of the container handling device to be positioned, the angular offset data and position offset data are combined to generate the target positioning data for the container handling device to be positioned, achieving precise positioning of the container handling device to be positioned and improving positioning accuracy.
[0166] The equipment positioning method provided by the present disclosure includes: determining a target priori map of a target inventory area and a to-be-located box handling equipment in the target inventory area, wherein the target priori map includes the to-be-identified position points in the target inventory area; obtaining mobile position information of the to-be-located box handling equipment based on the target priori map; determining initial positioning data of the to-be-located box handling equipment and a first candidate position point set corresponding to the to-be-located box handling equipment according to the mobile position information, wherein the first candidate position point set is the to-be-identified position points in the target priori map; receiving a second candidate position point set corresponding to the to-be-located box handling equipment, wherein the second candidate position point set is obtained based on acquisition by an acquisition device; generating target positioning data of the to-be-located box handling equipment according to the first candidate position point set, the second candidate position point set and the initial positioning data.
[0167] An embodiment of the present disclosure realizes that by constructing a target priori map of the target inventory area, the mobile position information of the material box handling equipment to be positioned is obtained according to the target priori map, thereby determining the initial positioning data of the material box handling equipment to be positioned, and realizing the preliminary positioning of the material box handling equipment to be positioned. Then, by determining a first candidate position point set and a second candidate position point set, on the basis of obtaining the initial positioning data, target positioning data of the material box handling equipment to be positioned is generated, thereby realizing the positioning of the material box handling equipment to be positioned. By determining the initial positioning data of the material box handling equipment to be positioned, the material box handling equipment to be positioned is initially positioned, and then, in combination with the first candidate position point set and the second candidate position point set, on the basis of the initial positioning data, the two stages of generating target positioning data realize the precise positioning of the material box handling equipment to be positioned, thereby improving the accuracy of the positioning of the material box handling equipment to be positioned. Moreover, in the process of positioning the material box handling equipment to be positioned, it is only necessary to collect data according to the collection equipment of the material box handling equipment to be positioned, thereby reducing the positioning cost of positioning the material box handling equipment to be positioned.
[0168] The following, in conjunction with Figure 5, takes the application of the device positioning method provided by the present disclosure in a warehousing scenario as an example to further illustrate the device positioning method. Among them, Figure 5 shows a processing flow chart of a device positioning method applied to a warehousing scenario provided by an embodiment of the present disclosure. As shown in Figure 5, a target site design drawing of the target warehouse is obtained, the target site design drawing is filled with point clouds, an initial priori map of the target warehouse is obtained, the initial priori map is grid-divided to obtain a number of grids, the grid position data corresponding to each grid is set, and a target priori map of the target warehouse is generated. The environmental point cloud data of the surrounding environment of the transport robot is collected based on the laser radar carried by the transport robot, and the collected environmental point cloud data is clustered to obtain an initial clustering cluster set.
[0169] Furthermore, the number of cluster points and / or the size of the initial cluster clusters in the initial cluster cluster set are verified, thereby determining abnormal cluster clusters in the initial cluster cluster set, and deleting the determined abnormal cluster clusters from the initial cluster cluster set to obtain a target cluster cluster set containing only shelf leg features. The starting position data of the transport robot is determined in the target priori map, and the target grid position data of the transport robot is determined in the target priori map based on the moving direction of the transport robot and the number of shelf legs passed by the transport robot. Based on the target grid position data, the map position data of the target grid center, i.e., the shelf center, is queried, and the map position data of the shelf center is determined as the initial positioning data of the transport robot. The shelf leg corresponding to the target grid is determined as the first candidate position point set.
[0170] In the target cluster set, the four target clusters closest to the handling robot are determined as the second candidate position point set. In the first candidate position point set, the target first candidate laser points corresponding to each second candidate laser point in the second candidate position point set are matched, and the distance error between each second candidate laser point and each target first candidate laser point is calculated to construct a distance error function. By minimizing the distance error function, the rotation matrix R and the translation matrix t are solved. Based on the rotation matrix R and the translation matrix t, the angle offset data and the displacement offset data are calculated. Based on the calculated angle offset data and the displacement offset data, as well as the initial positioning data of the handling robot, the target positioning data of the handling robot is generated, and the current positioning data of the handling robot is updated to achieve the positioning of the handling robot.
[0171] An embodiment of the present disclosure realizes that by constructing a target priori map of the target warehouse, the starting position data of the transport robot, the moving direction of the transport robot, and the number of shelf legs passed by the transport robot are obtained according to the target priori map, thereby determining the initial positioning data of the transport robot and realizing preliminary positioning of the transport robot. Then, by determining a first candidate position point set and a second candidate position point set, on the basis of obtaining the initial positioning data, the target positioning data of the transport robot is generated to realize positioning of the transport robot. By determining the initial positioning data of the transport robot, the transport robot is initially positioned, and then, in combination with the first candidate position point set and the second candidate position point set, on the basis of the initial positioning data, the two stages of generating the target positioning data realize accurate positioning of the transport robot, improve the accuracy of positioning of the transport robot, and in the process of positioning the transport robot, it is only necessary to collect environmental point cloud data based on the laser radar carried by the transport robot, thereby reducing the positioning cost of positioning the transport robot.
[0172] Corresponding to the above method embodiment, the present disclosure also provides an embodiment of a device positioning device. FIG6 shows a schematic structural diagram of a device positioning device provided by an embodiment of the present disclosure. As shown in FIG6, the device includes:
[0173] A first determination module 602 is configured to determine a target a priori map of a target inventory area and a container handling device to be located in the target inventory area, wherein the target a priori map includes a location point to be identified in the target inventory area;
[0174] An acquisition module 604 is configured to acquire the mobile position information of the to-be-located container handling device based on the target prior map;
[0175] A second determination module 606 is configured to determine, based on the mobile position information, initial positioning data of the container handling device to be positioned and a first set of candidate position points corresponding to the container handling device to be positioned, wherein the first set of candidate position points are the position points to be identified in the target prior map;
[0176] A receiving module 608 is configured to receive a second set of candidate position points corresponding to the container handling device to be positioned, wherein the second set of candidate position points is acquired based on data collected by a data collection device;
[0177] The generating module 610 is configured to generate target positioning data of the container handling device to be positioned according to the first candidate position point set, the second candidate position point set and the initial positioning data.
[0178] In some embodiments, the first determining module 602 is further configured to:
[0179] Acquire a target scene map of a target inventory area, wherein the target scene map includes location points to be identified in the target inventory area;
[0180] Performing point cloud filling on the location points to be identified in the target scene map to generate an initial priori map of the target inventory area;
[0181] Dividing the initial priori map into grids according to the location points to be identified in the target inventory area, and determining grid location data corresponding to each grid;
[0182] An initial priori map having the grid location data is determined as a target priori map of the target inventory area.
[0183] In some embodiments, the acquisition module 604 is further configured to:
[0184] Determining the starting position data of the container handling device to be positioned in the target prior map;
[0185] Determine at least one moving direction corresponding to the to-be-positioned material box handling device, and the number of moving position points corresponding to each moving direction of the to-be-positioned material box handling device;
[0186] The starting position data, each moving direction and the number of corresponding moving position points in each moving direction are determined as the moving position information of the material box handling equipment to be positioned.
[0187] In some embodiments, the acquisition module 604 is further configured to:
[0188] Acquire environmental point cloud data of the target inventory area, wherein the environmental point cloud data is acquired based on acquisition equipment of the material box handling equipment to be located;
[0189] Clustering the environmental point cloud data to obtain an initial cluster set;
[0190] The number of moving position points corresponding to the to-be-positioned container handling equipment in each moving direction is determined according to the starting position data and the initial cluster set.
[0191] In some embodiments, the acquisition module 604 is further configured to:
[0192] Determining an abnormal cluster in the initial cluster set, deleting the abnormal cluster from the initial cluster set, and obtaining a target cluster set;
[0193] The number of moving position points corresponding to the to-be-positioned container handling equipment in each moving direction is determined according to the starting position data and the target cluster set.
[0194] In some embodiments, the acquisition module 604 is further configured to:
[0195] Counting the number of cluster points in the cluster to be verified, wherein the cluster to be verified is any one of the initial cluster set;
[0196] When the number of cluster points in the cluster to be verified is less than a first cluster point threshold or greater than a second cluster point threshold, the cluster to be verified is determined to be an abnormal cluster.
[0197] In some embodiments, the acquisition module 604 is further configured to:
[0198] Determining a cluster diameter of a cluster to be verified, wherein the cluster to be verified is any one of the initial cluster set;
[0199] In a case where the cluster diameter of the cluster to be verified is greater than the preset cluster diameter, the cluster to be verified is determined to be an abnormal cluster.
[0200] In some embodiments, the second determining module 606 is further configured to:
[0201] Determining, in the target priori map, a target grid for the container handling device to be positioned and target grid position data of the target grid based on the starting position data, each moving direction, and the number of corresponding moving position points in each moving direction;
[0202] According to the target grid position data, the initial positioning data of the to-be-positioned material box handling equipment is queried, and the to-be-identified position points corresponding to the target grid are determined as a first candidate position point set.
[0203] In some embodiments, the receiving module 608 is further configured to:
[0204] Sending a candidate location point acquisition instruction to the material box handling device to be positioned;
[0205] A second candidate position point set is received, which is sent by the to-be-positioned container handling device in response to the candidate position point acquisition instruction.
[0206] In some embodiments, the second candidate position points in the second candidate position point set are determined based on the distance between each position point to be identified and the container handling equipment to be positioned.
[0207] In some embodiments, the generating module 610 is further configured to:
[0208] Calculating offset data between the first candidate position point set and the second candidate position point set;
[0209] Target positioning data of the material box handling equipment to be positioned is generated according to the offset data and the initial positioning data.
[0210] In some embodiments, the generating module 610 is further configured to:
[0211] Determine a target first candidate laser point corresponding to a target second candidate laser point in the first candidate position point set, wherein the target second candidate laser point is any one in the second candidate position point set;
[0212] Calculating a target distance error between the second target candidate laser point and the first target candidate laser point;
[0213] Determining a rotation matrix and a translation matrix based on distance errors between each second candidate laser point in the second candidate position point set and each first candidate laser point in the first candidate position point set;
[0214] The offset data between the first candidate position point set and the second candidate position point set is calculated according to the rotation matrix and the translation matrix.
[0215] In some embodiments, the generating module 610 is further configured to:
[0216] Calculating the position point distance between the target second candidate laser point and each first candidate laser point in the first candidate position point set;
[0217] Selecting a target location point distance from each location point distance, wherein the target location point distance is smaller than any of the location point distances except the target location point distance;
[0218] The first candidate laser point corresponding to the target position point distance is determined as the target first candidate laser point corresponding to the target second candidate laser point.
[0219] In some embodiments, the generating module 610 is further configured to:
[0220] constructing a distance error function based on the distance errors between each second candidate laser point in the second candidate position point set and each first candidate laser point in the first candidate position point set;
[0221] The rotation matrix and the translation matrix are determined according to the distance error function.
[0222] The equipment positioning device provided by the present disclosure includes: a first determination module, configured to determine a target priori map of a target inventory area and a to-be-located box handling equipment in the target inventory area, wherein the target priori map includes the to-be-identified location points in the target inventory area; an acquisition module, configured to acquire the mobile position information of the to-be-located box handling equipment based on the target priori map; a second determination module, configured to determine the initial positioning data of the to-be-located box handling equipment and a first candidate location point set corresponding to the to-be-located box handling equipment according to the mobile position information, wherein the first candidate location point set is the to-be-identified location points in the target priori map; a receiving module, configured to receive a second candidate location point set corresponding to the to-be-located box handling equipment, wherein the second candidate location point set is acquired based on acquisition equipment; a generation module, configured to generate the target positioning data of the to-be-located box handling equipment based on the first candidate location point set, the second candidate location point set and the initial positioning data.
[0223] An embodiment of the present disclosure realizes that by constructing a target priori map of the target inventory area, the mobile position information of the material box handling equipment to be positioned is obtained according to the target priori map, thereby determining the initial positioning data of the material box handling equipment to be positioned, achieving preliminary positioning of the material box handling equipment to be positioned, and then by determining a first candidate position point set and a second candidate position point set, on the basis of obtaining the initial positioning data, generating target positioning data of the material box handling equipment to be positioned, thereby achieving positioning of the material box handling equipment to be positioned. By determining the initial positioning data of the material box handling equipment to be positioned, initially positioning the material box handling equipment to be positioned, and then combining the first candidate position point set and the second candidate position point set, on the basis of the initial positioning data, two stages of generating target positioning data are achieved to achieve precise positioning of the material box handling equipment to be positioned, thereby improving the accuracy of positioning of the material box handling equipment to be positioned, and in the process of positioning the material box handling equipment to be positioned, it is only necessary to collect data according to the collection device of the material box handling equipment to be positioned, thereby reducing the positioning cost of positioning the material box handling equipment to be positioned.
[0224] The above is a schematic solution of a device positioning apparatus of this embodiment. It should be noted that for details not described in detail in the technical solution of the device positioning apparatus, please refer to the description of the technical solution of the device positioning method above.
[0225] 7 shows a block diagram of a computing device 700 according to an embodiment of the present disclosure. Components of the computing device 700 include, but are not limited to, a memory 710 and a processor 720. The processor 720 is connected to the memory 710 via a bus 730, and a database 750 is configured to store data.
[0226] The computing device 700 also includes an access device 740 that enables the computing device 700 to communicate via one or more networks 760. Examples of such networks include a public switched telephone network (PSTN), a local area network (LAN), a wide area network (WAN), a personal area network (PAN), or a combination of communication networks such as the Internet. The access device 740 may include one or more of any type of network interface (e.g., a network interface controller (NIC)) whether wired or wireless, such as an IEEE 802.11 wireless local area network (WLAN) wireless interface, a Worldwide Interoperability for Microwave Access (Wi-MAX) interface, an Ethernet interface, a universal serial bus (USB) interface, a cellular network interface, a Bluetooth interface, a near field communication (NFC) interface, and the like.
[0227] In one embodiment of the present disclosure, the aforementioned components of the computing device 700 and other components not shown in FIG7 may also be connected to each other, for example, via a bus. It should be understood that the computing device structure block diagram shown in FIG7 is for illustrative purposes only and does not limit the scope of the present disclosure. Those skilled in the art may add or replace other components as needed.
[0228] Computing device 700 may be any type of stationary or mobile computing device, including a mobile computer or mobile computing device (e.g., a tablet computer, personal digital assistant, laptop computer, notebook computer, netbook computer, etc.), a mobile phone (e.g., a smartphone), a wearable computing device (e.g., a smartwatch, smart glasses, etc.), or other types of mobile devices, or a stationary computing device such as a desktop computer or personal computer (PC). Computing device 700 may also be a mobile or stationary server.
[0229] The processor 720 implements the steps of the device positioning method when executing the computer program or instruction.
[0230] The above is a schematic solution of a computing device of this embodiment. It should be noted that the technical solution of the computing device and the technical solution of the device positioning method described above are based on the same concept. For details not described in detail in the technical solution of the computing device, please refer to the description of the technical solution of the device positioning method described above.
[0231] An embodiment of the present disclosure further provides a computer-readable storage medium storing a computer program or instructions, which implements the steps of the device positioning method as described above when executed by a processor.
[0232] The above is a schematic solution of a computer-readable storage medium of this embodiment. It should be noted that the technical solution of this storage medium and the technical solution of the above-mentioned device positioning method are based on the same concept. For details not described in detail in the technical solution of the storage medium, please refer to the description of the technical solution of the above-mentioned device positioning method.
[0233] An embodiment of the present disclosure further provides a computer program product, including a computer program or instructions, which implements the steps of the above-mentioned device positioning method when executed by a processor.
[0234] The above is a schematic solution of a computer program product of this embodiment. It should be noted that the technical solution of this computer program product and the technical solution of the above-mentioned device positioning method are based on the same concept. For details not described in detail in the technical solution of the computer program product, please refer to the description of the technical solution of the above-mentioned device positioning method.
[0235] An embodiment of the present disclosure further provides a computer program, comprising computer program code, which enables the computer to execute the steps of the above-mentioned device positioning method when the computer program code is executed on the computer.
[0236] The foregoing description describes specific embodiments of the present disclosure. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims can be performed in an order different from that described in the embodiments and still achieve the desired results. Furthermore, the processes depicted in the accompanying drawings do not necessarily require the specific order shown or the sequential order to achieve the desired results. In certain embodiments, multitasking and parallel processing are also possible or may be advantageous.
[0237] The computer program or instructions include computer program code, which may be in source code form, object code form, executable file, or some intermediate form. The computer-readable medium may include any entity or device capable of carrying the computer program code, a recording medium, a USB flash drive, a mobile hard drive, a magnetic disk, an optical disk, a computer memory, a read-only memory (ROM), a random access memory (RAM), an electrical carrier signal, a telecommunications signal, and a software distribution medium.
[0238] It should be noted that for the aforementioned method embodiments, for ease of description, they are all expressed as a series of action combinations, but those skilled in the art should be aware that the present disclosure is not limited by the order of the actions described, because according to the present disclosure, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all exemplary embodiments, and the actions and modules involved are not necessarily required by the present disclosure.
[0239] In the above embodiments, the descriptions of each embodiment have different emphases. For parts that are not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments. All embodiments of the present disclosure can be implemented alone or in combination with other embodiments, and are all regarded as the scope of protection required by the present disclosure. The embodiments of the present disclosure disclosed above are only used to help illustrate the present disclosure. The optional embodiments do not describe all the details in detail, nor do they limit the invention to only the exemplary embodiments described. Obviously, many modifications and changes can be made based on the content of the present disclosure. The present disclosure selects and describes these embodiments in order to better explain the principles and practical applications of the present disclosure, so that those skilled in the art can well understand and use the present disclosure. The present disclosure is limited only by the claims and their full scope and equivalents.
Claims
1. A device positioning method, comprising: Determining a target a priori map of a target inventory area and a container handling device to be located in the target inventory area, wherein the target a priori map includes a location point to be identified in the target inventory area; Based on the target prior map, obtaining the mobile position information of the container handling equipment to be positioned; Determining, based on the mobile position information, initial positioning data of the to-be-positioned material box handling device and a first set of candidate position points corresponding to the to-be-positioned material box handling device, wherein the first set of candidate position points are the to-be-identified position points in the target prior map; Receive a second set of candidate position points corresponding to the to-be-positioned container handling device, wherein the second set of candidate position points is acquired based on acquisition by an acquisition device; Target positioning data of the container handling equipment to be positioned is generated based on the first candidate position point set, the second candidate position point set, and the initial positioning data.
2. The method of claim 1 , wherein determining a target a priori map of the target inventory area comprises: Acquire a target scene map of a target inventory area, wherein the target scene map includes location points to be identified in the target inventory area; Performing point cloud filling on the location points to be identified in the target scene map to generate an initial priori map of the target inventory area; Dividing the initial priori map into grids according to the location points to be identified in the target inventory area, and determining grid location data corresponding to each grid; An initial priori map having the grid location data is determined as a target priori map of the target inventory area.
3. The method according to claim 1 or 2, wherein obtaining the mobile position information of the container handling device to be positioned based on the target prior map comprises: Determining the starting position data of the container handling device to be positioned in the target prior map; Determine at least one moving direction corresponding to the to-be-positioned material box handling device, and the number of moving position points corresponding to each moving direction of the to-be-positioned material box handling device; The starting position data, each moving direction and the number of corresponding moving position points in each moving direction are determined as the moving position information of the material box handling equipment to be positioned.
4. The method according to claim 3, wherein determining the number of movement position points corresponding to the to-be-positioned container handling device in each movement direction comprises: Acquire environmental point cloud data of the target inventory area, wherein the environmental point cloud data is acquired based on acquisition equipment of the material box handling equipment to be located; Clustering the environmental point cloud data to obtain an initial cluster set; The number of moving position points corresponding to the to-be-positioned container handling equipment in each moving direction is determined according to the starting position data and the initial cluster set.
5. The method according to claim 4, wherein determining the number of moving position points corresponding to the to-be-positioned container handling device in each moving direction according to the starting position data and the initial cluster set comprises: Determining an abnormal cluster in the initial cluster set, deleting the abnormal cluster from the initial cluster set, and obtaining a target cluster set; The number of moving position points corresponding to the to-be-positioned container handling equipment in each moving direction is determined according to the starting position data and the target cluster set.
6. The method of claim 5, wherein determining an abnormal cluster in the initial set of clusters comprises: Counting the number of cluster points in the cluster to be verified, wherein the cluster to be verified is any one of the initial cluster set; When the number of cluster points in the cluster to be verified is less than a first cluster point threshold or greater than a second cluster point threshold, the cluster to be verified is determined to be an abnormal cluster.
7. The method according to claim 5 or 6, wherein determining abnormal clusters in the initial set of clusters comprises: Determining a cluster diameter of a cluster to be verified, wherein the cluster to be verified is any one of the initial cluster set; In a case where the cluster diameter of the cluster to be verified is greater than the preset cluster diameter, the cluster to be verified is determined to be an abnormal cluster.
8. The method according to any one of claims 3 to 7, wherein determining the initial positioning data of the to-be-positioned container handling device and a first set of candidate position points corresponding to the to-be-positioned container handling device based on the mobile position information comprises: Determining, in the target priori map, a target grid for the container handling device to be positioned and target grid position data of the target grid based on the starting position data, each moving direction, and the number of corresponding moving position points in each moving direction; According to the target grid position data, the initial positioning data of the to-be-positioned material box handling equipment is queried, and the to-be-identified position points corresponding to the target grid are determined as a first candidate position point set.
9. The method according to any one of claims 1 to 8, wherein The second candidate position points in the second candidate position point set are determined according to the distance between each position point to be identified and the material box handling equipment to be positioned.
10. The method according to any one of claims 1 to 9, wherein receiving a second set of candidate position points corresponding to the to-be-positioned container handling equipment comprises: Sending a candidate location point acquisition instruction to the material box handling device to be positioned; A second candidate position point set is received, which is sent by the to-be-positioned container handling device in response to the candidate position point acquisition instruction.
11. The method according to any one of claims 1 to 10, wherein generating target positioning data of the container handling device to be positioned based on the first candidate position point set, the second candidate position point set, and the initial positioning data comprises: Calculating offset data between the first candidate position point set and the second candidate position point set; Target positioning data of the material box handling equipment to be positioned is generated according to the offset data and the initial positioning data.
12. The method of claim 11, wherein calculating the offset data between the first candidate location point set and the second candidate location point set comprises: Determine a target first candidate laser point corresponding to a target second candidate laser point in the first candidate position point set, wherein the target second candidate laser point is any one in the second candidate position point set; Calculating a target distance error between the second target candidate laser point and the first target candidate laser point; Determining a rotation matrix and a translation matrix based on distance errors between each second candidate laser point in the second candidate position point set and each first candidate laser point in the first candidate position point set; The offset data between the first candidate position point set and the second candidate position point set is calculated according to the rotation matrix and the translation matrix.
13. The method of claim 12, wherein determining the target first candidate laser point corresponding to the target second candidate laser point in the first candidate position point set comprises: Calculating the position point distance between the target second candidate laser point and each first candidate laser point in the first candidate position point set; Selecting a target location point distance from each location point distance, wherein the target location point distance is smaller than any of the location point distances except the target location point distance; The first candidate laser point corresponding to the target position point distance is determined as the target first candidate laser point corresponding to the target second candidate laser point.
14. The method according to claim 12 or 13, wherein determining a rotation matrix and a translation matrix based on distance errors between each second candidate laser point in the second candidate position point set and each first candidate laser point in the first candidate position point set comprises: constructing a distance error function based on the distance errors between each second candidate laser point in the second candidate position point set and each first candidate laser point in the first candidate position point set; The rotation matrix and the translation matrix are determined according to the distance error function.
15. A device positioning apparatus, comprising: A first determination module is configured to determine a target a priori map of a target inventory area and a container handling device to be located in the target inventory area, wherein the target a priori map includes a location point to be identified in the target inventory area; an acquisition module configured to acquire the mobile position information of the to-be-located material box handling device based on the target prior map; a second determining module configured to determine, based on the mobile position information, initial positioning data of the to-be-positioned container handling device and a first set of candidate position points corresponding to the to-be-positioned container handling device, wherein the first set of candidate position points are the to-be-identified position points in the target prior map; A receiving module is configured to receive a second set of candidate position points corresponding to the to-be-positioned container handling device, wherein the second set of candidate position points is acquired based on acquisition by an acquisition device; A generating module is configured to generate target positioning data of the container handling equipment to be positioned according to the first candidate position point set, the second candidate position point set and the initial positioning data.
16. A computing device comprising a memory, a processor, and a computer program or instructions stored in the memory and executable on the processor, wherein the processor implements the steps of the method according to any one of claims 1 to 14 when executing the computer program or instructions.
17. A computer-readable storage medium storing a computer program or instructions, wherein the computer program or instructions, when executed by a processor, implements the steps of the method according to any one of claims 1 to 14.
18. A computer program product comprising a computer program or instructions, which implement the steps of the method according to any one of claims 1 to 14 when executed by a processor.
Citation Information
Patent Citations
Target object positioning method and device, terminal and medium
CN115248430A
Goods shelf identification method and device, electronic equipment and machine readable storage medium
CN115273066A
Robot positioning method and device, electronic equipment and storage medium
CN117523165A
Equipment positioning method and device
CN118071249A