Goods inventory method, device, computer equipment, storage medium
By acquiring and processing three-dimensional point cloud data, judging and calculating the placement status and quantity of bulk cargoes, the problem of low bulk inventory efficiency is solved, and more efficient and accurate cargo measurement is achieved.
Patent Information
- Application Number
- CN202111586634.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-12-21
- Publication Date
- 2025-05-30
- Estimated Expiration
- 2041-12-21
AI Technical Summary
Bulk inventory is inefficient, resulting in inaccurate measurement of goods and waste of time.
By obtaining three-dimensional point cloud data based on the cargo inventory instruction, we can judge whether the placement of the target cargo belongs to the first placement state, and calculate the quantity of the target cargo. The specific steps include obtaining candidate point cloud data of at least two three-dimensional laser scanners, synthesizing complete three-dimensional point cloud data, performing point cloud voxel grid processing, judging the placement status of the goods, and calculating the quantity of goods.
Improves the efficiency and accuracy of bulk inventory, and reduces the errors and time costs of manual counting.
Smart Images

Figure CN114418952B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the technical field of goods metering, and particularly to a method, device, computer equipment, storage medium and computer program product for counting goods. Background Art
[0002] With the development of goods metering technology, it is relatively easy to count the whole cases of goods, but it is troublesome to count the quantity of bulk goods, resulting in a reduction in counting efficiency. Summary of the Invention
[0003] Based on this, it is necessary to provide a method, device, computer equipment, computer-readable storage medium and computer program product for counting goods that can solve the problem of low counting efficiency of bulk goods for the above technical problems.
[0004] In a first aspect, a method for counting goods, the method includes:
[0005] Obtain the three-dimensional point cloud data of the goods in a preset placement area collected based on a goods counting instruction; the goods include target goods;
[0006] Judge whether the placement of the target goods belongs to a first placement state according to the three-dimensional point cloud data;
[0007] If the placement of the target goods belongs to the first placement state, calculate the quantity of the target goods.
[0008] In one embodiment, the obtaining the three-dimensional point cloud data of the goods in the preset placement area collected based on the goods counting instruction includes:
[0009] Obtain the candidate point cloud data of the goods in the preset placement area collected by at least two three-dimensional laser scanners respectively;
[0010] Synthesize the candidate point cloud data collected by the at least two three-dimensional laser scanners respectively to obtain complete three-dimensional point cloud data.
[0011] In one embodiment, the judging whether the placement of the target goods belongs to the first placement state according to the three-dimensional point cloud data includes:
[0012] Project the three-dimensional point cloud data onto the ground plane to obtain a grid map based on statistics;
[0013] Perform straight line detection processing on the grid map to obtain a plurality of straight line equations;
[0014] If it is determined that the slopes of all the straight lines are equal to 0 or 1 based on the straight line equations, it is determined that the placement of the target goods belongs to the first placement state.
[0015] In one embodiment, the goods further include a carrier for carrying the target goods; calculating the quantity of the target goods includes:
[0016] Performing point cloud voxel gridding processing on the three-dimensional point cloud data to obtain the height of the goods and the area of the topmost layer of the target goods;
[0017] Obtaining the height and bottom area of a single target good, the height of a single carrier, and the number of target goods when a layer is fully loaded;
[0018] Determining the number of target goods in the topmost layer according to the area of the topmost layer of the target goods and the bottom area of a single target good;
[0019] Determining the number of layers of the target goods according to the height of the goods, the height of a single carrier, and the height of a single target good;
[0020] Determining the total number of target goods according to the number of layers of the target goods, the number of target goods when a layer is fully loaded, and the number of target goods in the topmost layer.
[0021] In one embodiment, after obtaining the three-dimensional point cloud data of the goods in the preset placement area collected based on the goods inventory instruction, the method further includes:
[0022] Preprocessing the three-dimensional point cloud data to obtain preprocessed three-dimensional point cloud data;
[0023] The determining whether the placement of the target goods belongs to the first placement state according to the three-dimensional point cloud data includes:
[0024] Determining whether the placement of the target goods belongs to the first placement state according to the preprocessed three-dimensional point cloud data.
[0025] In one embodiment, the preprocessing the three-dimensional point cloud data to obtain preprocessed three-dimensional point cloud data includes:
[0026] Performing out-of-region point cloud filtering processing, ground plane point cloud filtering processing, and point cloud filtering processing on the three-dimensional point cloud data to obtain preprocessed three-dimensional point cloud data;
[0027] Among them, the out-of-region point cloud filtering is to filter the point cloud outside the preset placement area; the ground plane point cloud filtering is to filter the point cloud of the ground plane and leave the point cloud data of the goods; the point cloud filtering is to filter the scattered points and isolated points in the point cloud data.
[0028] In a second aspect, the present application further provides a goods inventory device. The device includes:
[0029] A data acquisition module, configured to acquire three-dimensional point cloud data of goods within a preset placement area collected based on a goods inventory instruction; the goods include target goods;
[0030] A judgment module, configured to judge whether the placement of the target goods belongs to a first placement state according to the three-dimensional point cloud data;
[0031] A calculation module, configured to calculate the quantity of the target goods if the placement of the target goods belongs to the first placement state.
[0032] In a third aspect, the present application further provides a computer device. The computer device includes a memory and a processor. The memory stores a computer program, and when the processor executes the computer program, the following steps are implemented:
[0033] Acquire three-dimensional point cloud data of goods within a preset placement area collected based on a goods inventory instruction; the goods include target goods;
[0034] Judge whether the placement of the target goods belongs to a first placement state according to the three-dimensional point cloud data;
[0035] If the placement of the target goods belongs to the first placement state, calculate the quantity of the target goods.
[0036] In a fourth aspect, the present application further provides a computer-readable storage medium. The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the following steps are implemented:
[0037] Acquire three-dimensional point cloud data of goods within a preset placement area collected based on a goods inventory instruction; the goods include target goods;
[0038] Judge whether the placement of the target goods belongs to a first placement state according to the three-dimensional point cloud data;
[0039] If the placement of the target goods belongs to the first placement state, calculate the quantity of the target goods.
[0040] In a fifth aspect, the present application further provides a computer program product. The computer program product includes a computer program, and when the computer program is executed by a processor, the following steps are implemented:
[0041] Acquire three-dimensional point cloud data of goods within a preset placement area collected based on a goods inventory instruction; the goods include target goods;
[0042] Judge whether the placement of the target goods belongs to a first placement state according to the three-dimensional point cloud data;
[0043] If the placement of the target goods belongs to the first placement state, calculate the quantity of the target goods.
[0044] The above-mentioned goods inventory counting method, device, computer device, storage medium and computer program product obtain three-dimensional point cloud data of goods in a preset placement area collected based on a goods inventory counting instruction; determine whether the placement of the target goods belongs to the first placement state according to the three-dimensional point cloud data; if the placement of the target goods belongs to the first placement state, calculate the quantity of the target goods. By obtaining the point cloud data of the target goods, the quantity of bulk goods is calculated, improving the inventory counting efficiency of bulk goods. Description of the Drawings
[0045] Figure 1 It is an application environment diagram of the goods inventory counting method in an embodiment;
[0046] Figure 2 It is a flowchart of the goods inventory counting method in an embodiment;
[0047] Figure 3 It is a flowchart of calculating the quantity of the target goods in an embodiment;
[0048] Figure 4 It is a flowchart of the goods inventory counting method in another embodiment;
[0049] Figure 5 It is a structural block diagram of the goods inventory counting device in an embodiment;
[0050] Figure 6 It is an internal structure diagram of the computer device in an embodiment. Detailed Embodiments
[0051] In order to make the objectives, technical solutions and advantages of the present application clearer, the present application will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
[0052] The goods inventory counting method provided by the embodiments of the present application can be applied to, for example Figure 1In the application environment shown. Among them, the terminal 102 communicates with the server 104 through the network. The data storage system can store the data that the server 104 needs to process. The data storage system can be integrated on the server 104, or can be placed on the cloud or other network servers. The server 104 obtains the three-dimensional point cloud data in the terminal 102 of the goods in the preset placement area collected based on the goods inventory instruction; determines whether the placement of the target goods belongs to the first placement state according to the three-dimensional point cloud data; if the placement of the target goods belongs to the first placement state, then calculates the quantity of the target goods. Among them, the terminal 102 can be, but is not limited to, various personal computers, laptop computers, smart phones, tablet computers, Internet of Things devices, and portable wearable devices. The Internet of Things devices can be smart speakers, smart TVs, smart air conditioners, smart in-vehicle devices, etc. The portable wearable devices can be smart watches, smart bracelets, head-mounted devices, etc. The server 104 can be implemented by an independent server or a server cluster composed of multiple servers.
[0053] In one embodiment, as Figure 2 shown, a goods inventory method is provided, taking the server 104 in Figure 1 as an example for illustration, including the following steps:
[0054] Step 202, obtain the three-dimensional point cloud data of the goods in the preset placement area collected based on the goods inventory instruction, where the goods include the target goods.
[0055] Among them, the placement area refers to the placement area of the goods to be inventoried. The three-dimensional point cloud data refers to a set of vectors in a three-dimensional coordinate system, scanned and recorded in the form of points by a scanner, each point containing three-dimensional coordinates, and some points may also contain color information or reflection intensity information, etc. Among them, the color information refers to the spatial color information. The reflection intensity information refers to the different intensity information obtained by the laser of the scanner reflecting on different planes during the scanning process. The three-dimensional point cloud data is obtained by scanning the goods in the preset placement area.
[0056] Specifically, first provide a preset placement area for placing goods, and deploy a three-dimensional laser scanner around the preset placement area. Then, after the goods are placed in the preset placement area, the processor of the central control system obtains the goods inventory instruction, and controls the three-dimensional laser scanner to scan the goods to be inventoried in the preset placement area according to the goods inventory instruction, so as to obtain the three-dimensional point cloud data of the goods to be inventoried.
[0057] Step 204, determine whether the placement of the target goods belongs to the first placement state according to the three-dimensional point cloud data.
[0058] Among them, the target goods refer to the goods to be counted. The first placement state refers to the placement position that is conducive to counting the target goods in the preset placement area, that is, the standard placement. If a part of the target goods exceeds the boundary of the preset goods placement area, then the target goods do not belong to the first placement state.
[0059] Specifically, the processor first obtains the three-dimensional point cloud data of the target goods in the preset placement area, and then determines whether the placement position of the target goods is conducive to counting the target goods according to the three-dimensional point cloud data of the target goods in the preset placement area.
[0060] Step 206, if the placement of the target goods belongs to the first placement state, then calculate the quantity of the target goods.
[0061] Specifically, if the placement of the target goods belongs to the first placement state, the processor analyzes the three-dimensional point cloud data to calculate the quantity of the target goods.
[0062] In the above goods counting method, by obtaining the three-dimensional point cloud data of the goods in the preset placement area collected based on the goods counting instruction, the goods include the target goods; judging whether the placement of the target goods belongs to the first placement state according to the three-dimensional point cloud data; if the placement of the target goods belongs to the first placement state, then calculate the quantity of the target goods. By obtaining the three-dimensional point cloud data of the goods and calculating the quantity of the goods, the efficiency of goods counting is improved.
[0063] In one embodiment, obtaining the three-dimensional point cloud data of the goods in the preset placement area collected based on the goods counting instruction includes: obtaining the candidate point cloud data of the goods in the preset placement area collected by at least two three-dimensional laser scanners respectively; synthesizing the candidate point cloud data collected by at least two three-dimensional laser scanners respectively to obtain the complete three-dimensional point cloud data.
[0064] Among them, the three-dimensional laser scanner refers to a device composed of multi-line laser and rotating machinery for collecting information such as the shape and appearance of objects in the real world. The three-dimensional laser scanner is mainly used to scan the goods in the preset placement area to obtain the candidate point cloud data of the goods. The candidate point cloud data refers to the three-dimensional point cloud data of the goods in the preset placement area collected by each three-dimensional laser scan. The candidate point cloud data collected by two three-dimensional laser scanners respectively is stitched through point cloud stitching to obtain the complete three-dimensional point cloud data. Point cloud stitching is mainly to find the spatial transformation between different point clouds and stitch multiple point clouds into a globally consistent three-dimensional point cloud model.
[0065] Specifically, taking the acquisition of 3D point cloud data by two 3D scanners as an example, the processor obtains the point cloud data of the goods in the preset placement area collected by each of the two 3D laser scanners and the relative pose parameters of the two 3D laser scanners. Based on the relative pose parameters of the two 3D laser scanners, the relative pose parameters of each point cloud in the 3D point cloud data of the goods in the preset placement area are obtained. The 3D point cloud data of the goods in the preset placement area is transformed and spliced according to translation and rotation to obtain the complete 3D point cloud data.
[0066] In an optional implementation, the processor obtains the point cloud data of the goods in the preset placement area collected by each of at least two 3D laser scanners, and obtains the relative pose parameters of the other 3D scanners in the at least two 3D laser scanners relative to the reference scanner respectively. The point cloud data of the goods in the preset placement area collected by the other scanners is translated and rotated based on the relative pose parameters relative to the reference scanner to be transformed into the 3D point cloud data in the coordinate system of the reference scanner. The complete 3D point cloud data in the coordinate system of the reference laser scanner is spliced to obtain the complete 3D point cloud data.
[0067] In this embodiment, by obtaining the candidate 3D point cloud data of the goods in the placement area and merging the candidate 3D point cloud data into a complete point cloud data, an accurate point cloud model can be obtained, and the accuracy of goods inventory can be improved.
[0068] In one embodiment, determining whether the placement of the target goods belongs to the first placement state according to the 3D point cloud data includes: projecting the 3D point cloud data onto the ground plane to obtain a grid map based on statistics; performing line detection processing on the grid map to obtain a plurality of line equations; and determining that the placement of the target goods belongs to the first placement state if it is determined that the slopes of all the lines are equal to 0 or 1 based on the line equations.
[0069] Among them, the grid map refers to a graph composed of many small squares. The position and color value of each small square in the grid map can show the change of color shade. The grid map mainly analyzes the 3D point cloud data. In the image space x-y, a line can be represented as y = kx + b in the rectangular coordinate system, and y = kx + b is also called the line equation, where k and b are parameters, and k and b represent the slope and intercept of the line respectively. The line equation is mainly obtained by performing line detection processing on the grid map.
[0070] Specifically, the processor projects the three-dimensional point cloud data onto the ground plane to obtain a raster image. The raster image is processed by the Hough line detection algorithm to obtain multiple linear equations. Based on the linear equations, the slope of the lines is judged. If the slopes of all the lines are equal to 0 or 1, it is determined that the placement of the target goods belongs to the first placement state. Among them, the Hough line detection algorithm is an algorithm for image processing, which mainly simplifies the line detection problem in the image space to the point detection problem in the parameter space by converting any line into the parameter space. For example, any line on the plane can be represented by y = kx + b, so any line can be represented as a point (k, b) in the parameter space. Of course, it is not limited to using the Hough line detection algorithm to process the raster image, and other algorithms that can convert any line into the parameter space can also be used.
[0071] In this embodiment, by judging the placement position of the goods, the error rate of the total goods quantity calculation can be effectively reduced.
[0072] In one embodiment, the goods further include a carrier for carrying the target goods; calculating the quantity of the target goods includes:
[0073] Step 302, perform point cloud voxel grid processing on the three-dimensional point cloud data to obtain the height of the goods and the top area of the target goods.
[0074] Among them, voxelization refers to converting the geometric form representation of an object into the voxel representation form closest to the object. A voxel grid represents the goods through a regular 3D grid table. It can be regarded as the 3D counterpart of 2D pixels.
[0075] Specifically, the processor performs grid processing on the three-dimensional point cloud data to obtain a grid image, and based on the grid image, obtains the height of the goods and the top area of the target goods.
[0076] Step 304, obtain the height and bottom area of a single target good, the height of a single carrier, and the quantity of target goods that can fill one layer.
[0077] Specifically, the processor obtains the height and bottom area of a single target good, the height of a single carrier, and the quantity of target goods that can fill one layer.
[0078] Step 306, determine the quantity of top-layer target goods according to the top area of the target goods and the bottom area of a single target good.
[0079] Specifically, the processor determines the quantity of top-layer target goods according to the top area of the target goods and the bottom area of a single target good. Among them, the specific calculation method of the quantity of top-layer target goods is:
[0080]
[0081] n' refers to the number of target goods on the top layer, S refers to the area of the top layer of target goods, and s refers to the bottom area of a single target goods.
[0082] Step 308, determining the number of target cargo layers according to the cargo height, the height of a single carrier, and the height of a single target cargo.
[0083] Specifically, the processor determines the target cargo layer number according to the cargo height, the height of a single carrier, and the height of a single target cargo. The specific calculation formula for the target cargo layer number is:
[0084]
[0085] w refers to the number of target cargo layers, H refers to the height of a single target cargo, and a refers to the height of a single carrier.
[0086] Step 310, determining the total quantity of the target goods according to the number of target goods layers, the quantity of target goods that fill one layer, and the quantity of target goods on the top layer.
[0087] Specifically, the processor determines the total number of target goods according to the number of target goods layers, the number of target goods that fill a layer, and the number of target goods on the top layer. The specific calculation formula for the total number of target goods is:
[0088] N=(w-1)·n+n'
[0089] N refers to the total number of target goods, w refers to the number of target goods layers, n refers to the number of target goods that fill one layer, and n' refers to the number of target goods on the top layer.
[0090] In this embodiment, by acquiring the physical data of the goods and the carrier and calculating the total quantity of the bulk goods, it is possible to implement the inventory of the goods and improve the efficiency of the inventory.
[0091] In one embodiment, after obtaining the three-dimensional point cloud data of the goods in the preset placement area collected based on the goods inventory instruction, the method also includes: preprocessing the three-dimensional point cloud data to obtain preprocessed three-dimensional point cloud data; judging whether the placement of the target goods belongs to the first placement state according to the three-dimensional point cloud data, including: judging whether the placement of the target goods belongs to the first placement state according to the preprocessed three-dimensional point cloud data.
[0092] Among them, the preprocessing of three-dimensional point cloud data refers to using effective point cloud information for three-dimensional reconstruction, mainly processing the three-dimensional point cloud data of goods in a preset placement area, including: deleting redundant data, filtering out isolated points, thinning the point cloud data, and registering the point cloud data. Deleting redundant data means deleting data that appears repeatedly. Filtering out isolated points means filtering out points that exist in isolation. Thinning the point cloud data means eliminating the point cloud data. Registering the point cloud data means registering the point cloud data based on an exhaustive search registration algorithm and a feature matching registration algorithm.
[0093] Specifically, the processor preprocesses the three-dimensional point cloud data, and then determines whether the placement of the target goods belongs to the first placement state according to the preprocessed three-dimensional point cloud data.
[0094] In this embodiment, through the preprocessing of the three-dimensional point cloud data, accurate three-dimensional point cloud data is obtained, which can improve the accuracy of judging whether the goods placement is in the first placement state.
[0095] In one embodiment, preprocessing the three-dimensional point cloud data to obtain the preprocessed three-dimensional point cloud data includes: performing out-of-region point cloud filtering, ground plane point cloud filtering, and point cloud filtering on the three-dimensional point cloud data to obtain the preprocessed three-dimensional point cloud data; among them, out-of-region point cloud filtering is to filter the point cloud outside the preset placement area; ground plane point cloud filtering is to filter the point cloud of the ground plane and leave the point cloud data of the goods; point cloud filtering is to filter the hash points and isolated points in the point cloud data.
[0096] Among them, out-of-region point cloud filtering refers to filtering the point cloud outside the preset placement area. Ground plane point cloud filtering is to use random sample consensus to fit the ground plane equation, and then filter the point cloud containing the ground plane, leaving only the point cloud data of the goods. Point cloud filtering is to perform noise filtering on the hash points and isolated points in the point cloud data using statistical filtering based on Gaussian distribution.
[0097] Specifically, the processor preprocesses the three-dimensional point cloud data through out-of-region point cloud filtering, ground plane point cloud filtering, and point cloud filtering.
[0098] In this embodiment, through the preprocessing of the three-dimensional point cloud data, accurate three-dimensional point cloud data is obtained, which can improve the accuracy of judging whether the goods placement is in the first placement state.
[0099] The goods counting method provided by the embodiments of the present application will be described below in combination with a detailed embodiment of the specific steps of goods counting:
[0100] (1) The central control system issues a goods placement instruction, instructing the driverless forklift to fork and place the goods into the rectangular placement area according to the goods placement instruction, and receive the feedback information from the driverless forklift after completion;
[0101] (2) The central control system issues an instruction to count bulk goods, and uses two 3D laser scanners installed diagonally at the top to obtain target information within the placement area for information collection;
[0102] (3) The central control system obtains the relative pose parameters of the two 3D laser scanners;
[0103] (4) Based on the relative pose parameters of the two 3D laser scanners, the central control system merges the point cloud data collected by the two 3D laser scanners into a complete laser point cloud data;
[0104] (5) The central control system performs a series of preprocessing operations on the complete laser point cloud data, including outlier point cloud filtering, ground plane point cloud filtering, and point cloud filtering;
[0105] (6) The central control system projects the preprocessed laser point cloud data onto the ground plane to obtain a statistical-based grid map. By processing the grid map using the Hough line detection algorithm, multiple line equations are obtained. If the line slope is approximately equal to 0 or 1, the goods are placed standardly, that is, the first placement state; otherwise, it is not standard, that is, the second placement state, and the unmanned forklift will send the bulk goods to the abnormal area;
[0106] (7) If the central control system detects that the bulk goods are placed standardly, it performs point cloud voxel gridding on the laser point cloud data to obtain the height H of the goods and the top area S of the bulk goods;
[0107] (8) The central control system obtains that the height of a single bulk good is h, the bottom area is s. The height of a single pallet is a, and the number of bulk goods placed in a full layer is n. Calculate the number of layers of bulk goods through the formula Calculate the number of bulk goods on the top layer, and calculate the total number of bulk goods through the formula N=(w - 1)·n + n';
[0108] It should be understood that although the steps in the flowcharts involved in the above-described embodiments are shown in sequence according to the arrows, these steps do not necessarily need to be executed in the order indicated by the arrows. Unless there is a clear description in this article, the execution of these steps has no strict order limit, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above-described embodiments may include multiple steps or multiple stages. These steps or stages do not necessarily need to be executed at the same time, but can be executed at different times. The execution order of these steps or stages does not necessarily need to be sequential, but can be executed alternately or in turn with at least a part of other steps or steps or stages in other steps.
[0109] Based on the same inventive concept, the embodiment of the present application also provides a cargo counting device for implementing the cargo counting method involved above. The implementation scheme for solving the problem provided by the device is similar to the implementation scheme recorded in the above method, so the specific limitations in one or more cargo counting device embodiments provided below can refer to the limitations of the cargo counting method above, and will not be repeated here.
[0110] In one embodiment, Figure 5 As shown, a cargo counting device is provided, including: a data acquisition module 510, a judgment module 520 and a calculation module 530, wherein:
[0111] The data acquisition module 510 is used to acquire the three-dimensional point cloud data of the goods in the preset placement area collected based on the goods inventory instruction;
[0112] A judgment module 520 is used to judge whether the placement of the target goods belongs to the first placement state according to the three-dimensional point cloud data;
[0113] The calculation module 530 is used to calculate the quantity of the target goods if the placement of the target goods belongs to the first placement state.
[0114] In one embodiment, the data acquisition module 510 is also used to obtain candidate point cloud data of goods in a preset placement area collected by at least two three-dimensional laser scanners; the candidate point cloud data collected by at least two three-dimensional laser scanners are synthesized to obtain complete three-dimensional point cloud data.
[0115] In one embodiment, the above-mentioned cargo inventory device further includes: a detection module. The detection module is used to project the three-dimensional point cloud data onto the ground plane to obtain a statistical grid map; perform straight line detection processing on the grid map to obtain multiple straight line equations; based on the straight line equation, if the straight line slopes are all equal to 0 or 1, it is determined that the placement of the target cargo belongs to the first placement state.
[0116] In one embodiment, the data acquisition module 510 is used to perform point cloud voxel gridding processing on the three-dimensional point cloud data to obtain the cargo height and the top layer area of the target cargo; obtain the height and bottom area of a single target cargo, the height of a single carrier and the number of target cargo that fills a layer; the calculation module 530 is used to determine the number of target cargo in the top layer based on the top layer area of the target cargo and the bottom area of a single target cargo; determine the number of target cargo layers based on the cargo height, the height of a single carrier and the height of a single target cargo; determine the total number of target cargo based on the number of target cargo layers, the number of target cargo that fills a layer and the number of target cargo in the top layer.
[0117] In one embodiment, the above-mentioned goods inventory device further includes: a preprocessing module. The preprocessing module is used to preprocess the three-dimensional point cloud data to obtain the preprocessed three-dimensional point cloud data; and determine whether the placement of the target goods belongs to the first placement state according to the three-dimensional point cloud data, including: determining whether the placement of the target goods belongs to the first placement state according to the preprocessed three-dimensional point cloud data.
[0118] In one embodiment, the preprocessing module is used to perform outlier point cloud filtering processing, ground plane point cloud filtering processing, and point cloud filtering processing on the three-dimensional point cloud data to obtain the preprocessed three-dimensional point cloud data.
[0119] Each module in the above-mentioned goods inventory device can be implemented in whole or in part by software, hardware, and their combinations. The above-mentioned modules can be embedded in the processor of the computer device in hardware form or independent of it, or stored in the memory of the computer device in software form, so that the processor can call and execute the operations corresponding to the above-mentioned modules.
[0120] In one embodiment, a computer device is provided. The computer device can be a server, and its internal structure diagram can be as Figure 6 shown. The computer device includes a processor, a memory, and a network interface connected through a system bus. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program, and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store the point cloud data of the target goods. The network interface of the computer device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, it implements a goods inventory method.
[0121] Those skilled in the art can understand that Figure 6 the structure shown in
[0122] is only a block diagram of some structures related to the solution of this application, and does not constitute a limitation on the computer device to which the solution of this application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine some components, or have different component arrangements.
[0123] Obtain the three-dimensional point cloud data of the goods in the preset placement area collected based on the goods inventory instruction; the goods include the target goods;
[0124] Determine whether the placement of the target goods belongs to the first placement state according to the three-dimensional point cloud data;
[0125] If the placement of the target goods belongs to the first placement state, calculate the quantity of the target goods.
[0126] In one embodiment, when the processor executes the computer program, the following steps are further implemented:
[0127] Obtain the candidate point cloud data of the goods in the preset placement area collected by at least two three-dimensional laser scanners respectively;
[0128] Synthesize the candidate point cloud data collected by at least two three-dimensional laser scanners respectively to obtain the complete three-dimensional point cloud data.
[0129] In one embodiment, when the processor executes the computer program, the following steps are further implemented:
[0130] Project the three-dimensional point cloud data onto the ground plane to obtain a grid map based on statistics;
[0131] Perform straight line detection processing on the grid map to obtain a plurality of straight line equations;
[0132] If it is determined based on the straight line equation that the slopes of all straight lines are equal to 0 or 1, then determine that the placement of the target goods belongs to the first placement state.
[0133] In one embodiment, when the processor executes the computer program, the following steps are further implemented:
[0134] Perform point cloud voxel grid processing on the three-dimensional point cloud data to obtain the height of the goods and the area of the top layer of the target goods;
[0135] Obtain the height and bottom area of a single target good, the height of a single carrier, and the number of target goods that fill a layer;
[0136] Determine the number of target goods on the top layer according to the area of the top layer of the target goods and the bottom area of a single target good;
[0137] Determine the number of layers of the target goods according to the height of the goods, the height of a single carrier, and the height of a single target good;
[0138] Determine the total number of target goods according to the number of layers of the target goods, the number of target goods that fill a layer, and the number of target goods on the top layer.
[0139] In one embodiment, when the processor executes the computer program, the following steps are further implemented:
[0140] Preprocess the three-dimensional point cloud data to obtain the preprocessed three-dimensional point cloud data;
[0141] Determine whether the placement of the target goods belongs to the first placement state based on the three-dimensional point cloud data, including:
[0142] Determine whether the placement of the target goods belongs to the first placement state based on the preprocessed three-dimensional point cloud data.
[0143] In one embodiment, when the processor executes the computer program, the following steps are further implemented:
[0144] Perform outlier point cloud filtering, ground plane point cloud filtering, and point cloud filtering on the three-dimensional point cloud data to obtain the preprocessed three-dimensional point cloud data;
[0145] Among them, outlier point cloud filtering is to filter the point cloud outside the preset placement area; ground plane point cloud filtering is to filter the point cloud of the ground plane and leave the point cloud data of the goods; point cloud filtering is to filter the hash points and isolated points in the point cloud data.
[0146] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by the processor, the following steps are implemented:
[0147] Obtain the three-dimensional point cloud data of the goods in the preset placement area collected based on the goods inventory instruction; the goods include the target goods;
[0148] Determine whether the placement of the target goods belongs to the first placement state according to the three-dimensional point cloud data;
[0149] If the placement of the target goods belongs to the first placement state, calculate the quantity of the target goods.
[0150] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented:
[0151] Obtain the candidate point cloud data of the goods in the preset placement area collected by at least two three-dimensional laser scanners respectively;
[0152] Synthesize the candidate point cloud data collected by at least two three-dimensional laser scanners respectively to obtain the complete three-dimensional point cloud data.
[0153] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented:
[0154] Project the three-dimensional point cloud data onto the ground plane to obtain a raster map based on statistics;
[0155] Perform straight line detection processing on the raster map to obtain a plurality of straight line equations;
[0156] If it is determined that the slopes of all straight lines are equal to 0 or 1 based on the straight line equations, it is determined that the placement of the target goods belongs to the first placement state.
[0157] In one embodiment, when the computer program is executed by a processor, the following steps are further implemented:
[0158] Perform voxel gridding on the three-dimensional point cloud data to obtain the height of the goods and the area of the top layer of the target goods;
[0159] Obtain the height and bottom area of a single target good, the height of a single carrier, and the number of target goods that can fill one layer;
[0160] Determine the number of target goods on the top layer according to the area of the top layer of the target goods and the bottom area of a single target good;
[0161] Determine the number of layers of the target goods according to the height of the goods, the height of a single carrier, and the height of a single target good;
[0162] Determine the total number of target goods according to the number of layers of the target goods, the number of target goods that can fill one layer, and the number of target goods on the top layer.
[0163] In one embodiment, when the computer program is executed by a processor, the following steps are further implemented:
[0164] Preprocess the three-dimensional point cloud data to obtain the preprocessed three-dimensional point cloud data;
[0165] Judge whether the placement of the target goods belongs to the first placement state according to the three-dimensional point cloud data, including:
[0166] Judge whether the placement of the target goods belongs to the first placement state according to the preprocessed three-dimensional point cloud data.
[0167] In one embodiment, when the computer program is executed by a processor, the following steps are further implemented:
[0168] Perform out-of-region point cloud filtering, ground plane point cloud filtering, and point cloud filtering on the three-dimensional point cloud data to obtain the preprocessed three-dimensional point cloud data;
[0169] Among them, out-of-region point cloud filtering is to filter the point cloud outside the preset placement area; ground plane point cloud filtering is to filter the point cloud of the ground plane and leave the point cloud data of the goods; point cloud filtering is to filter the scattered points and isolated points in the point cloud data.
[0170] In one embodiment, a computer program product is provided, including a computer program, and when the computer program is executed by a processor, the following steps are implemented:
[0171] Obtain the three-dimensional point cloud data of the goods within the preset placement area collected based on the goods inventory instruction; the goods include target goods;
[0172] Judge whether the placement of the target goods belongs to the first placement state according to the three-dimensional point cloud data;
[0173] If the placement of the target goods belongs to the first placement state, calculate the quantity of the target goods.
[0174] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented:
[0175] Obtain the candidate point cloud data of the goods in the preset placement area collected by at least two 3D laser scanners respectively;
[0176] Synthesize the candidate point cloud data collected by at least two 3D laser scanners respectively to obtain the complete 3D point cloud data.
[0177] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented:
[0178] Project the 3D point cloud data onto the ground plane to obtain a grid map based on statistics;
[0179] Perform straight line detection processing on the grid map to obtain multiple straight line equations;
[0180] Based on the straight line equations, if the slopes of the straight lines are all equal to 0 or 1, it is determined that the placement of the target goods belongs to the first placement state.
[0181] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented:
[0182] Perform point cloud voxel gridding processing on the 3D point cloud data to obtain the height of the goods and the top area of the target goods;
[0183] Obtain the height and bottom area of a single target good, the height of a single carrier, and the number of target goods when a layer is full;
[0184] Determine the number of target goods on the top layer according to the top area of the target goods and the bottom area of a single target good;
[0185] Determine the number of layers of the target goods according to the height of the goods, the height of a single carrier, and the height of a single target good;
[0186] Determine the total number of target goods according to the number of layers of the target goods, the number of target goods when a layer is full, and the number of target goods on the top layer.
[0187] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented:
[0188] Preprocess the 3D point cloud data to obtain the preprocessed 3D point cloud data;
[0189] Judge whether the placement of the target goods belongs to the first placement state according to the 3D point cloud data, including:
[0190] Determine whether the placement of the target goods belongs to the first placement state according to the preprocessed three-dimensional point cloud data.
[0191] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented:
[0192] Perform out-of-region point cloud filtering, ground plane point cloud filtering, and point cloud filtering on the three-dimensional point cloud data to obtain the preprocessed three-dimensional point cloud data;
[0193] Among them, out-of-region point cloud filtering is to filter the point cloud outside the preset placement area; ground plane point cloud filtering is to filter the point cloud of the ground plane and leave the point cloud data of the goods; point cloud filtering is to filter the hash points and isolated points in the point cloud data.
[0194] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties.
[0195] Those of ordinary skill in the art can understand that all or part of the processes in the methods of the above embodiments can be completed by instructing relevant hardware through a computer program. This computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above methods. Among them, any reference to a memory, database, or other medium used in the embodiments provided in the present application can include at least one of non-volatile and volatile memories. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetoresistive random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM), etc. The databases involved in the embodiments provided in the present application can include at least one of relational databases and non-relational databases. Non-relational databases can include distributed databases based on blockchain, etc., without limitation. The processors involved in the embodiments provided in the present application can be general-purpose processors, central processors, graphics processors, digital signal processors, programmable logic devices, data processing logics based on quantum computing, etc., without limitation.
[0196] The technical features of the above embodiments can be combined arbitrarily. For the sake of brevity of description, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, it should be considered as the scope described in this specification.
[0197] The above embodiments only represent several implementation manners of the present application. The description is relatively specific and detailed, but it should not be construed as a limitation on the patent scope of the present application. It should be noted that for those of ordinary skill in the art, without departing from the concept of the present application, several modifications and improvements can be made, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the appended claims.
Claims
1. A method for inventorying goods, characterized in that, the method includes: Obtaining three-dimensional point cloud data of goods in a preset placement area collected based on a goods inventory instruction; the goods include target goods; Judging whether the placement of the target goods belongs to a first placement state according to the three-dimensional point cloud data; If the placement of the target goods belongs to the first placement state, calculating the quantity of the target goods; The judging whether the placement of the target goods belongs to the first placement state according to the three-dimensional point cloud data includes: Projecting the three-dimensional point cloud data onto the ground plane to obtain a grid map based on statistics; Performing straight line detection processing on the grid map to obtain a plurality of straight line equations; Judging that the slopes of the straight lines are all equal to 0 or 1 based on the straight line equations, and determining that the placement of the target goods belongs to the first placement state.
2. The method according to claim 1, characterized in that, the obtaining three-dimensional point cloud data of goods in a preset placement area collected based on a goods inventory instruction includes: Obtaining candidate point cloud data of goods in a preset placement area collected by at least two three-dimensional laser scanners respectively; Synthesizing the candidate point cloud data collected by the at least two three-dimensional laser scanners respectively to obtain complete three-dimensional point cloud data.
3. The method according to claim 1, characterized in that, the goods further include a carrier for carrying the target goods; the calculating the quantity of the target goods includes: Performing point cloud voxel grid processing on the three-dimensional point cloud data to obtain the height of the goods and the area of the top layer of the target goods; Obtaining the height and bottom area of a single target good, the height of a single carrier and the quantity of target goods when a layer is fully loaded; Determining the quantity of target goods in the top layer according to the area of the top layer of the target goods and the bottom area of a single target good; Determining the number of layers of target goods according to the height of the goods, the height of a single carrier and the height of a single target good; Determining the total quantity of target goods according to the number of layers of target goods, the quantity of target goods when a layer is fully loaded and the quantity of target goods in the top layer.
4. The method according to claim 1, characterized in that, after obtaining the three-dimensional point cloud data of goods in a preset placement area collected based on a goods inventory instruction, the method further includes: Performing preprocessing on the three-dimensional point cloud data to obtain preprocessed three-dimensional point cloud data; The judging whether the placement of the target goods belongs to the first placement state according to the three-dimensional point cloud data includes: Judging whether the placement of the target goods belongs to the first placement state according to the preprocessed three-dimensional point cloud data.
5. The method according to claim 4, characterized in that, the performing preprocessing on the three-dimensional point cloud data to obtain preprocessed three-dimensional point cloud data includes: Performing out-of-region point cloud filtering processing, ground plane point cloud filtering processing and point cloud filtering processing on the three-dimensional point cloud data to obtain preprocessed three-dimensional point cloud data; wherein, the out-of-region point cloud filtering is to filter the point cloud outside the preset placement area; the ground plane point cloud filtering is to filter the point cloud of the ground plane and leave the point cloud data of the goods; the point cloud filtering is to filter the scattered points and isolated points in the point cloud data.
6. A goods inventory device, characterized in that, the device includes: a data acquisition module, configured to acquire three-dimensional point cloud data of goods within a preset placement area collected based on a goods inventory instruction; the goods include target goods; a judgment module, configured to judge whether the placement of the target goods belongs to a first placement state according to the three-dimensional point cloud data; a calculation module, configured to calculate the quantity of the target goods if the placement of the target goods belongs to the first placement state; judging whether the placement of the target goods belongs to the first placement state according to the three-dimensional point cloud data includes: projecting the three-dimensional point cloud data onto the ground plane to obtain a grid map based on statistics; performing a straight line detection process on the grid map to obtain a plurality of straight line equations; judging that the slopes of the straight lines are all equal to 0 or 1 based on the straight line equations, and then determining that the placement of the target goods belongs to the first placement state.
7. A computer device, including a memory and a processor, the memory stores a computer program, characterized in that, when the processor executes the computer program, the steps of the method according to any one of claims 1 to 5 are implemented.
8. A computer-readable storage medium, on which a computer program is stored, characterized in that, when the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 5 are implemented.
9. A computer program product, including a computer program, characterized in that, when the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 5 are implemented.
Citation Information
Patent Citations
Cargo quantity determination method, system and device
CN112132523A
Cargo volume measurement method and equipment based on depth image
CN113362385A
Three-dimensional object recognition system and inventory system using the same
US20100017407A1