WO2024016635A1 - 物品拣选方法及装置、计算机可读存储介质 - Google Patents

物品拣选方法及装置、计算机可读存储介质 Download PDF

Info

Publication number
WO2024016635A1
WO2024016635A1 PCT/CN2023/074978 CN2023074978W WO2024016635A1 WO 2024016635 A1 WO2024016635 A1 WO 2024016635A1 CN 2023074978 W CN2023074978 W CN 2023074978W WO 2024016635 A1 WO2024016635 A1 WO 2024016635A1
Authority
WO
WIPO (PCT)
Prior art keywords
items
item
picking
sorting result
layer
Prior art date
Application number
PCT/CN2023/074978
Other languages
English (en)
French (fr)
Inventor
陈智勇
于伟
梅涛
Original Assignee
京东科技控股股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 京东科技控股股份有限公司 filed Critical 京东科技控股股份有限公司
Publication of WO2024016635A1 publication Critical patent/WO2024016635A1/zh

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G1/00Storing articles, individually or in orderly arrangement, in warehouses or magazines
    • B65G1/02Storage devices
    • B65G1/04Storage devices mechanical
    • B65G1/137Storage devices mechanical with arrangements or automatic control means for selecting which articles are to be removed
    • B65G1/1371Storage devices mechanical with arrangements or automatic control means for selecting which articles are to be removed with data records
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G1/00Storing articles, individually or in orderly arrangement, in warehouses or magazines
    • B65G1/02Storage devices
    • B65G1/04Storage devices mechanical
    • B65G1/137Storage devices mechanical with arrangements or automatic control means for selecting which articles are to be removed
    • B65G1/1373Storage devices mechanical with arrangements or automatic control means for selecting which articles are to be removed for fulfilling orders in warehouses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/087Inventory or stock management, e.g. order filling, procurement or balancing against orders
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/62Analysis of geometric attributes of area, perimeter, diameter or volume
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G2203/00Indexing code relating to control or detection of the articles or the load carriers during conveying
    • B65G2203/02Control or detection
    • B65G2203/0208Control or detection relating to the transported articles
    • B65G2203/0233Position of the article
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G2203/00Indexing code relating to control or detection of the articles or the load carriers during conveying
    • B65G2203/04Detection means
    • B65G2203/041Camera

Definitions

  • the present disclosure relates to the field of warehousing and logistics, and in particular to object picking methods and devices, and computer-readable storage media.
  • an item picking method including:
  • the picking order of the items to be picked is determined.
  • generating a second sorting result based on the constraint relationship between the first sorting result and the items includes:
  • a structure tree is generated, in which each node in the structure tree corresponds to an item.
  • the priority ordering of all items in the same layer conforms to the first sorting result.
  • layered There is a constraint relationship between at least one item;
  • generating a structure tree based on the first sorting result and a constraint relationship between items includes:
  • Two sorting results include:
  • results include:
  • the picking information includes:
  • generating the first sorting result according to the picking information includes:
  • the first ranking results are generated.
  • generating the first ranking result according to the impact factor includes:
  • the first sorting result is generated based on the top N items ranked by influence factors, where N is a positive integer.
  • the influencing factors include the area of the picking surface, the area of the largest inscribed circle of the picking surface with the picking point as the center, the angle between the normal vector of the picking point and the normal vector of the bottom surface of the container, picking At least one of the distance from the point to each surface of the container and the distance from the picking point to the center of the container.
  • the influencing factor includes the probability that the item is an item to be picked, and calculating the influencing factor for item picking based on the picking information includes:
  • a machine learning model is used to calculate the probability that the item is an item to be picked.
  • the item picking method further includes:
  • the items participating in the sorting are filtered out based on the picking information and preset filter conditions.
  • the constraint relationship between the items reflects the stacking relationship between the items.
  • an item picking device including
  • the acquisition module is configured to obtain the picking information of multiple items in the container
  • the first generation module is configured to generate a first sorting result based on the picking information, where the first sorting result represents the difficulty of picking items;
  • the calculation module is configured to calculate the constraint relationships between items based on the picking information
  • the second generation module is configured to generate a second sorting result based on the constraint relationship between the first sorting result and the item, where the second sorting result represents the picking priority of the item;
  • the determining module is configured to determine the picking order of the items to be picked according to the order of the second sorting result.
  • an item picking device including:
  • a processor coupled to the memory, the processor configured to execute the item picking method according to any embodiment of the present disclosure based on instructions stored in the memory.
  • a computer-readable storage medium on which computer program instructions are stored.
  • the instructions are executed by a processor, the item picking method according to any embodiment of the present disclosure is implemented.
  • Figure 1 shows a flow chart of an item picking method according to some embodiments of the present disclosure
  • Figure 2(a) shows a schematic diagram of constraint relationships between items according to some embodiments of the present disclosure
  • Figure 2(b) shows a schematic diagram of constraint relationships between items according to other embodiments of the present disclosure
  • Figure 3 shows a schematic diagram of a structure tree according to some embodiments of the present disclosure
  • Figure 4 illustrates a flowchart of determining a parent node according to some embodiments of the present disclosure
  • Figure 5 shows a flowchart of generating a structure tree according to some embodiments of the present disclosure
  • Figure 6 shows a flow chart of structure tree merging according to some embodiments of the present disclosure
  • Figure 7 shows a block diagram of an item picking device according to some embodiments of the present disclosure
  • Figure 8 shows a block diagram of an item picking device according to other embodiments of the present disclosure.
  • Figure 9 illustrates a block diagram of a computer system for implementing some embodiments of the present disclosure.
  • any specific values are to be construed as illustrative only and not as limiting. Accordingly, other examples of the exemplary embodiments may have different values.
  • Figure 1 shows a flowchart of an item picking method according to some embodiments of the present disclosure.
  • the item picking method includes steps S1 to S5.
  • step S1 the picking information of multiple items in the container is obtained.
  • the picking information includes: an image of the container in which the item is located, the picking point and the picking surface of the item.
  • a camera to take images of items stacked in the container from above and down, that is, take a top view of the items, and calculate the picking points and picking surfaces of the items, where the picking point is where the robotic arm grabs the items. Or the point on the item that is contacted when picking up the item.
  • the picking surface is the surface where the picking point is located.
  • the picking information also includes camera parameters.
  • the picking information can be further processed to determine the coordinates of the container based on the image and camera parameters in the picking information.
  • step S2 a first sorting result is generated based on the picking information, where the first sorting result represents the difficulty of picking items.
  • the items are initially sorted according to their picking difficulty and the first sorting result is generated.
  • generating the first sorting result based on the picking information includes: calculating an impact factor reflecting the difficulty of picking items based on the picking information; and generating the first sorting result based on the impact factor.
  • the influencing factors include the area of the picking surface, the area of the largest inscribed circle of the picking surface with the picking point as the center, the angle between the normal vector of the picking point and the normal vector of the bottom surface of the container, the angle between the picking point and The distance between each side of the container, At least one of the distances from the pick point to the center of the bin.
  • the angle between the normal vector of the picking point and the normal vector of the bottom surface of the box, the distance from the picking point to each surface of the box, and the center of the picking point to the box are determined based on the coordinates of the box, the picking point, and the picking surface. distance.
  • the influence factor includes the probability that the item is an item to be picked. Calculating the influence factor of item picking based on the picking information includes: using a machine learning model to calculate the item is an item to be picked based on the image of the container where the item is located. The probability.
  • Area of the picking surface The larger the area of the picking surface, the easier it is to pick.
  • the area of the picking surface is calculated in the pixel coordinate system;
  • Distance from the picking point to the bottom of the container The greater the distance, the closer the picking point is to the robotic arm, the less likely the item is to be pressed by other items, and the easier it is to pick. Among them, the distance from the picking point to the bottom of the container is in world coordinates Calculated in the system;
  • the shortest distance from the picking point to the four walls of the container The smaller the shortest distance, the easier it is for the robot arm to collide with the four walls of the container during the picking process, and the less likely it is to pick. Among them, the distance from the picking point to the four walls of the container is The shortest distance is calculated in the pixel coordinate system;
  • the distance from the picking point to the center of the container The smaller the distance, the closer the items on the surface are to the center of the container, the less likely the robotic arm will collide with the container, and the easier it is to be picked. Among them, the distance from the picking point to the center of the container The distance is calculated in the pixel coordinate system;
  • the probability that the item is an item to be selected i.e., the score of the recognition model corresponding to the selected item:
  • the score is the recognition degree of the item by the machine learning model. The higher the score, the higher the score, the more likely it is that the object is a commodity that needs to be selected. The higher it is, the higher the probability it should be selected.
  • the scores of the above influence factors need to be normalized, for example, using softmax for normalization.
  • generating the first ranking result according to the influence factor includes: generating the first ranking result according to the weighted sum of the influence factor.
  • w*v is the weighted score of the influence factor.
  • the total ranking score can be obtained by summing the weighted scores of all influence factors, and then the first ranking result can be obtained.
  • Machine learning models can also be used to generate first ranking results.
  • machine learning models such as Xgboost, Lightgbm, RankNe, LambdaMART, ES-Rank, DirectRanker, and PiRank.
  • the influence factor data and some manually labeled ranking data are used as inputs to the machine learning model and trained to obtain the ranking model.
  • the new ranking model weights obtained by training are used to sort the new data to be sorted, and then the preliminary ranking results are obtained.
  • more accurate first ranking results can be obtained.
  • generating the first sorting result according to the influence factor includes: generating the first sorting result according to the N items ranked first by the influence factor.
  • N is a positive integer.
  • the robotic arm only needs to pick 10 items this time, so it only cares about the top N results with the highest impact factors. Then items ranked after 10 will not be included in the first sorting results as items to be picked, nor will they be included in the first sorting results. Participate in next steps so you can flexibly adapt to picking needs.
  • the item picking method further includes, before generating the first sorting result, filtering out items participating in the sorting based on the picking information and preset filtering conditions.
  • some filtering conditions can be set in advance to determine whether items can be picked and whether item identification is valid.
  • the filtering conditions can be inclination angle, detection score of machine learning model, etc. If these conditions are not met, the items will not participate in the preliminary ranking, and Items not to be picked are not included in the first sorting result, so that items that are not suitable for picking can be excluded first to avoid these items from affecting the efficiency of robotic arm picking, and to improve the calculation of the first sorting result and the second sorting result. efficiency.
  • step S3 the constraint relationship between items is calculated based on the picking information.
  • the constraint relationship between the items reflects the stacking relationship between the items.
  • Figure 2(a) shows a schematic diagram of constraint relationships between items according to some embodiments of the present disclosure.
  • Figure 2(a) is a side view of items a and b stacked one above the other. As shown in Figure 2(a), if you want to pick item b, you should first pick item a. Otherwise, if item b is picked first, item a may be picked up when the robot arm picks up item b, and item a may fall in the air, causing damage to item a. Therefore, it is set that item a has a constraint on item b.
  • calculating the constraint relationship between items based on the picking information includes: when the height of the item is greater than the height of its adjacent item, determining that the item has constraints on the adjacent item.
  • adjacent items are items that are in contact with the item.
  • the height of item a is greater than that of item b, and item a and item b are adjacent, so item a has a constraint on item b.
  • calculating the constraint relationship between items based on the picking information includes: when the angle between the inclination angle of the item and the inclination angle of the adjacent item is less than a constraint threshold, determining the item based on the inclination angle of the item. The constraint relationship with the adjacent item.
  • Figure 2(b) shows a schematic diagram of constraint relationships between items according to other embodiments of the present disclosure.
  • Figure 2(b) is a side view of horizontally stacked items a and b. As shown in Figure 2(b), item a presses part of item b. When calculating the constraint relationship, the tilt trend of item a and its adjacent item b is consistent, both tilting to the right, and item A is to the left of item B, that is, the direction of item A pointing to item B is also from left to right. , is similar to the tilt angle, so item A has constraints on item B.
  • step S4 a second sorting result is generated based on the constraint relationship between the first sorting result and the item, where the second sorting result represents the picking priority of the item.
  • the picking order of the items is adjusted according to the difficulty of picking the items, thereby determining the final item picking order.
  • a structure tree is generated based on the first sorting result and the constraint relationship between the items, where each node in the structure tree corresponds to an item, and the priority ordering of all items in the same layer conforms to the first ordering. result, There is a constraint relationship between an item and at least one item in the upper layer; on the premise of retaining the ordering of items in the same layer, multiple layers of the structure tree are merged into One layer to get the second sorted result.
  • Figure 3 shows a schematic diagram of a structure tree according to some embodiments of the present disclosure.
  • item 1 has constraints on items 4, 3, and 2, and item 4 has constraints on item 6.
  • item 6 >item 5>item 4>item 3>Item2>Item1.
  • items 1 and 5 are not constrained by other items, are placed on the first level, and are sorted according to the first sorting result.
  • Items 4, 3, and 2 constrained by item 1 are on the second level, and the nodes on the second level are sorted according to the first sorting result, for example, item 4, item 3, and item 2 in order.
  • the items in the upper level have a higher priority than the child nodes in the lower level. This is similar to the actual stacking order of the items. For example, the upper items in the container are more likely to be in the upper level of the structure tree.
  • the results are also sorted according to the level of the first sorted result.
  • the first level of the tree structure is the candidate items in the first sorting result that are not suppressed by the constraint relationship, that is, the top-level item in the container.
  • Constructing a structure tree based on constraint relationships can simulate the real stacking of items in a container, while also taking into account the difficulty of item picking, thereby optimizing the final second sorting result.
  • a structure tree is generated based on the first sorting result and the constraint relationship between the items, including:
  • the item i when there are multiple items that constrain the item i, among the multiple items that constrain the item i (for example, k, h, j), select the item ranked lowest in the first sorting result. j (i.e., the item j that is most difficult to pick) serves as the parent node of item i.
  • Figure 4 shows a schematic diagram of determining a parent node according to some embodiments of the present disclosure.
  • step (2) Use the items in the first sorting result as candidates. Traverse each candidate item i, and determine whether all candidates have been traversed. If not, enter step (2), otherwise, end the algorithm;
  • step (3) Determine whether there is an item that has a constraint relationship with the candidate item i. If so, go to step (3), otherwise, go to step (5);
  • step (3) Determine whether the item that has a constraint relationship with the candidate item i is in the first sorting result. If so, go to step (4), otherwise, go to step (5);
  • generating a structure tree based on the first sorting result and the constraint relationship between items includes: taking items without parent nodes as the first level of the structure tree, and starting from the first level, Sort according to the first sorting result, where the parent node is the item constraining the item; determine the child node of the item in the current layer as the item in the next layer of the current layer, where the child node is the item constrained by the item; Loop through the steps of sorting the items in the current layer according to the first sorting result and determining the items in the next layer until the items in the current layer have no child nodes.
  • a structure tree is built upward starting from the first level.
  • item 1 is the parent node of items 4, 3, and 2, and item 4 has constraints on item 6.
  • the first sorting result is item 6>item 5>item 4>item 3>item 2>item 1.
  • the items 1 and 5 that have no parent nodes are placed on the first layer.
  • place the child nodes of item 1, items 4, 3, and 2, on the second layer sort the nodes on the second layer in the order of the first sorting result, and then place the child node 6 of 4 on the third layer.
  • Figure 5 shows a flowchart of generating a structure tree according to some embodiments of the present disclosure.
  • the tree structure is constructed layer by layer downward to obtain a complete structure tree.
  • first-level nodes After finding all the first-level nodes, start from the first level of the structure tree and traverse layer by layer from top to bottom to determine whether all items in the current layer of the structure tree have child nodes. If so, add the child nodes of the items in the current layer. Go to the next level of the structure tree and maintain the relative position of the child nodes until all the child nodes of the current level are found. If not, it means that the leaf nodes of the structure tree have been established, then the establishment of the structure tree is completed.
  • the ordering of items within the same layer is retained, and the structure tree is transformed according to the constraint relationships between items.
  • Multi-level merging to obtain the second sorting result including: starting from the items at the last level of the structure tree, retaining the priority ordering of the items in the previous level unchanged, and the priority of the items in the current level being smaller than its parent node
  • the first sorting result determine the position after merging the items in the current layer to the previous layer; loop the steps of determining the position of the items until the structure tree is merged into one layer.
  • first merge item 6 to the second level First, ensure that item 6 is sorted after item 4, and then sort items 6, 3, and 2 according to the first sorting result. Then, the order of the second level after merging For items 4, 6, 3, 2. Then merge the second layer to the first layer. Because item 1 is the last one on the first layer, to ensure that items 4, 6, 3, and 2 are behind item 1, place items 4, 6, 3, and 2 directly. After item 1, other items on the first level remain unchanged. Finally, the second sorting result, that is, the result of the structure tree merger is items 5, 1, 4, 6, 3, 2.
  • Figure 6 shows a flowchart of structure tree merging according to some embodiments of the present disclosure.
  • each layer is merged from the bottom up.
  • the sorting of items in the same layer is retained, and multiple levels of the structure tree are merged according to the constraint relationships between the items to obtain the second sorting result, including: starting from the items on the first level of the structure tree, On the premise that the priority ordering of the items in the current layer remains unchanged and the priority of the items in the current layer is greater than the priority of its child nodes, it is determined according to the first sorting result to merge the items in the next layer into the current layer. position; loop through the steps of determining the position of the item until the structure tree is merged into one layer.
  • the top-down merging approach is similar to the bottom-up merging approach. For example, start at the first level and merge down the structure tree. Under the premise of ensuring that the order of items 5 and 1 remains unchanged, after merging items 4, 3, and 2 into item 1 on the first level, the order on the first level becomes items 5, 1, 4, 3, 2. , and then merge the child nodes of item 4 (i.e. item 6) into the first level. Item 6 should be behind item 4, and the ordering of items 6, 3, and 2 is consistent with the first sorting result. finally, The same as merging structure trees from bottom to top, the second sorting result, that is, the result of merging structure trees is still items 5, 1, 4, 6, 3, 2.
  • step S5 the picking order of the items to be picked is determined according to the order of the second sorting result.
  • the second sorting result is sent to the robot arm control system as the final picking order, so that the robot arm picks according to the second sorting result.
  • This disclosure first sorts the items based on the difficulty of selecting the items to obtain the first sorting result. Then, a structure tree is constructed, and the first sorting result is rearranged according to the mutual constraint relationship between items to obtain the second sorting result. On the premise of meeting the requirements for the picking sequence of the constraint relationships between items, the difficulty of picking items is also taken into consideration, which not only solves the problem of items overlapping each other affecting the grabbing effect and causing damage to items, but also achieves the goal of allowing good items to be picked. The picked items are picked first, which improves the picking efficiency and success rate and reduces item loss.
  • Figure 7 shows a block diagram of an item picking device according to some embodiments of the present disclosure.
  • the item picking device 7 includes an acquisition module 71 , a first generation module 72 , a calculation module 73 , a second generation module 74 , and a determination module 75 .
  • the acquisition module 71 is configured to acquire the picking information of multiple items in the container, for example, performing step S1 as shown in Figure 1;
  • the first generation module 72 is configured to generate a first sorting result based on the picking information, where the first sorting result represents the difficulty of item picking, for example, performing step S2 as shown in Figure 1;
  • the calculation module 73 is configured to calculate the constraint relationship between items based on the picking information, for example, performing step S3 as shown in Figure 1;
  • the second generation module 74 is configured to generate a second sorting result according to the first sorting result and the constraint relationship between the items, where the second sorting result represents the picking priority of the item, for example, perform the steps shown in Figure 1 S4;
  • the determination module 75 is configured to determine the picking order of the items to be picked according to the order of the second sorting result, for example, performing step S5 as shown in FIG. 1 .
  • Figure 8 shows a block diagram of an item picking device according to other embodiments of the present disclosure.
  • the item picking device 8 includes a memory 81; and a processor 82 coupled to the memory 81.
  • the memory 81 is used to store and execute the item picking method.
  • the processor 82 is configured to perform the item picking method in any embodiment of the present disclosure based on instructions stored in the memory 81 .
  • Figure 9 illustrates a block diagram of a computer system for implementing some embodiments of the present disclosure.
  • Computer system 90 may be embodied in the form of a general purpose computing device.
  • Computer system 90 includes memory 910, a processor 920, and a bus 900 that connects various system components.
  • Memory 910 may include, for example, system memory, non-volatile storage media, and the like.
  • System memory stores, for example, operating systems, applications, boot loaders, and other programs.
  • System memory may include volatile storage media such as random access memory (RAM) and/or cache memory.
  • RAM random access memory
  • the non-volatile storage medium stores, for example, instructions for executing the item picking methods in any embodiments of the present disclosure.
  • Non-volatile storage media include but are not limited to disk storage, optical storage, flash memory, etc.
  • the processor 920 may be implemented as a general purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete hardware components such as discrete gates or transistors.
  • each module such as the judgment module and the determination module, can be implemented by instructions in the central processing unit (CPU) running memory to perform the corresponding steps, or by dedicated circuits that perform the corresponding steps.
  • Bus 900 may use any of a variety of bus structures.
  • bus structures include, but are not limited to, Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MCA) bus, and Peripheral Component Interconnect (PCI) bus.
  • ISA Industry Standard Architecture
  • MCA Micro Channel Architecture
  • PCI Peripheral Component Interconnect
  • the computer system 90 may also include an input/output interface 930, a network interface 940, a storage interface 950, etc. These interfaces 930, 940, 950, the memory 910 and the processor 920 may be connected through a bus 900.
  • the input and output interface 930 can provide a connection interface for input and output devices such as a monitor, mouse, and keyboard.
  • Network interface 940 provides a connection interface for various networked devices.
  • the storage interface 950 provides a connection interface for external storage devices such as floppy disks, USB disks, and SD cards.
  • These computer readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable device to produce a machine, such that execution of the instructions by the processor produces implementations in one or more blocks of the flowcharts and/or block diagrams.
  • a device with specified functions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable device to produce a machine, such that execution of the instructions by the processor produces implementations in one or more blocks of the flowcharts and/or block diagrams.
  • the present disclosure may employ an entirely hardware embodiment, an entirely software embodiment, or an embodiment that combines software and hardware aspects. form.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Mechanical Engineering (AREA)
  • Economics (AREA)
  • Mathematical Physics (AREA)
  • Development Economics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Data Mining & Analysis (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Medical Informatics (AREA)
  • Artificial Intelligence (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)

Abstract

一种物品拣选方法及装置、计算机可读存储介质,涉及仓储物流领域。其中物品拣选方法包括:获取货箱内多个物品的拣选信息;根据拣选信息,生成第一排序结果,其中,第一排序结果表示物品拣选的难易程度;根据拣选信息,计算物品之间的约束关系;根据第一排序结果和物品之间的约束关系,生成第二排序结果,其中,第二排序结果表示物品的拣选优先级;按照第二排序结果的顺序,确定待拣选物品的拣选顺序。该物品拣选方法及装置、计算机可读存储介质,提高了物品拣选的效率。

Description

物品拣选方法及装置、计算机可读存储介质
相关申请的交叉引用
本申请是以中国申请号为202210872886.3,申请日为2022年7月21日的申请为基础,并主张其优先权,该中国申请的公开内容在此作为整体引入本申请中。
技术领域
本公开涉及仓储物流领域,特别涉及物品拣选方法及装置、计算机可读存储介质。
背景技术
随着网购的普及,物品流通趋向于准时制和多品种化,在仓储中心和物流中心,待分拣的物品的种类和数量急剧增加,分拣作业物流仓储中的工作量占比越来越高。单凭人工分拣已经无法满足大规模的分拣要求,自动化分拣已经成为提高分拣的效率关键。
在自动化分拣中,在命令机械臂拣选货箱内多件物品时,需要向机械臂的操作系统提供物品的拣选顺序。相关技术中,按照拣选系统识别到物品的顺序,拣选物品。
发明内容
根据本公开的第一方面,提供了一种物品拣选方法,包括:
获取货箱内多个物品的拣选信息;
根据拣选信息,生成第一排序结果,其中,第一排序结果表示物品拣选的难易程度;
根据拣选信息,计算物品之间的约束关系;
根据第一排序结果和物品之间的约束关系,生成第二排序结果,其中,第二排序结果表示物品的拣选优先级;
按照第二排序结果的顺序,确定待拣选物品的拣选顺序。
在一些实施例中,所述根据第一排序结果和物品之间的约束关系,生成第二排序结果,包括:
根据第一排序结果和物品之间的约束关系,生成结构树,其中,结构树中的每个节点对应一个物品,同一层内的所有物品的优先级排序符合第一排序结果,物品与其上一层的 至少一个物品之间存在约束关系;
在保留同一层内的物品的排序的前提下,根据物品之间的约束关系和预设的合并规则,将结构树的多层合并为一层,得到第二排序结果。
在一些实施例中,其中,所述根据第一排序结果和物品之间的约束关系,生成结构树,包括:
将没有父节点的物品作为结构树的第一层,从第一层开始,对当前层的物品按照第一排序结果排序,其中,父节点为约束该物品的物品;
将当前层的物品的子节点确定为当前层的下一层中的物品,其中,子节点为被该物品约束的物品;
循环对当前层的物品按照第一排序结果排序和确定下一层中的物品的步骤,直至当前层的物品没有子节点。
在一些实施例中,其中,所述在保留同一层内的物品的排序的前提下,根据物品之间的约束关系和预设的合并规则,将结构树的多层合并为一层,得到第二排序结果,包括:
从结构树的最后一层的物品开始,在保留上一层的物品的排序不变、且当前层的物品的优先级小于其父节点的优先级的前提下,根据第一排序结果,确定将当前层的物品合并到上一层后的位置;
循环确定物品位置的步骤,直至结构树合并为一层。
在一些实施例中,所述在保留同一层内的物品的排序的前提下,根据物品之间的约束关系和预设的合并规则,将结构树的多层合并为一层,得到第二排序结果,包括:
从结构树的第一层的物品开始,在保留当前层的物品的排序不变、且当前层的物品的优先级大于其子节点的优先级的前提下,根据第一排序结果,确定将下一层的物品合并到当前层后的位置;
循环确定物品位置的步骤,直至结构树合并为一层。
在一些实施例中,所述拣选信息包括:
物品所在货箱的图像、物品的拣选点和拣选面。
在一些实施例中,所述根据拣选信息,生成第一排序结果包括:
根据拣选信息,计算反映物品拣选难易程度的影响因子;
根据影响因子,生成第一排序结果。
在一些实施例中,所述根据影响因子,生成第一排序结果包括:
根据影响因子排序在前的N个物品,生成第一排序结果,其中,N为正整数。
在一些实施例中,所述影响因子包括拣选面的面积、以拣选点为圆心的拣选面的最大内切圆的面积、拣选点的法向量与货箱的底面的法向量的夹角、拣选点到货箱的各个面的距离、拣选点到货箱的中心的距离的至少一种。
在一些实施例中,所述影响因子包括物品为待拣选物品的概率,所述根据拣选信息,计算物品拣选的影响因子包括:
根据物品所在货箱的图像,利用机器学习模型,计算物品为待拣选物品的概率。
在一些实施例中,所述的物品拣选方法,还包括:
在生成第一排序结果之前,根据拣选信息和预设的过滤条件,筛选出参与排序的物品。
在一些实施例中,所述物品之间的约束关系反映物品之间的堆叠关系。
根据本公开的第二方面,提供了一种物品拣选装置,包括
获取模块,被配置为获取货箱内多个物品的拣选信息;
第一生成模块,被配置为根据拣选信息,生成第一排序结果,其中,第一排序结果表示物品拣选的难易程度;
计算模块,被配置为根据拣选信息,计算物品之间的约束关系;
第二生成模块,被配置为根据第一排序结果和物品之间的约束关系,生成第二排序结果,其中,第二排序结果表示物品的拣选优先级;
确定模块,被配置为按照第二排序结果的顺序,确定待拣选物品的拣选顺序。
根据本公开的第三方面,提供了一种物品拣选装置,包括:
存储器;以及
耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器的指令,执行根据本公开任一实施例所述的物品拣选方法。
根据本公开的第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序指令,该指令被处理器执行时,实现根据本公开任一实施例所述的物品拣选方法。
附图说明
构成说明书的一部分的附图描述了本公开的实施例,并且连同说明书一起用于解释本 公开的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本公开,其中:
图1示出了根据本公开一些实施例的物品拣选方法的流程图;
图2(a)示出了根据本公开一些实施例的物品间约束关系的示意图;
图2(b)示出了根据本公开另一些实施例的物品间约束关系的示意图;
图3示出了根据本公开的一些实施例的结构树的示意图;
图4示出了根据本公开的一些实施例的确定父节点的流程图;
图5示出了根据本公开一些实施例的生成结构树的流程图;
图6示出了根据本公开一些实施例的结构树合并的流程图;
图7示出了根据本公开一些实施例的物品拣选装置的框图;
图8示出了根据本公开另一些实施例的物品拣选装置的框图
图9示出了用于实现本公开一些实施例的计算机系统的框图。
具体实施方式
现在将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
相关技术中,按照物品被识别到的顺序来拣选物品,例如,通过人工智能模型,识别 在货箱内的物品的图像,识别出一个物品,就拣选这个物品。然而,这种拣选方式存在下列问题。
(1)由于姿态、摆放位置等因素的影响,不同物品被拣选的难易程度是不同的,如果先拣选难抓起的物品,可能会影响整个拣选过程的效率;
(2)没有考虑物品之间的相互约束的关系,例如,一个物品压住了另一个物品,就应当先拣选在上面的物品,而不是先拣选被压在下面的物品。
另外,如果采用单一指标作为拣选点排序的评估标准,难以兼顾到更全面的情况。例如,如果仅利用物品到机械臂的距离作为排序依据,一些虽然距离机械臂较近但拣选平面较小、拣选面倾斜角较大的物品依然难以拣选,会被优先拣选;而一些距离机械臂稍远,但平整拣选面较大、拣选面倾斜角较小的物品更利于拣选,却无法优先被拣选。也可能会出现某个物品虽然更容易拣选,但是被其他物品压在下面的情况,如果仅按照拣选的难易程度排序,就可能导致拣选失败。
图1示出根据本公开一些实施例的物品拣选方法的流程图。
如图1所示,物品拣选方法包括步骤S1-步骤S5。
在步骤S1中,获取货箱内多个物品的拣选信息。
在一些实施例中,拣选信息包括:物品所在货箱的图像、物品的拣选点和拣选面。
例如,用相机从货箱的上方,向下拍摄堆叠在货箱内的物品的图像,即,拍摄物品的俯视图,并计算物品的拣选点和拣选面,其中,拣选点是机械臂抓取物品或吸取物品时接触的物品上的点,拣选面是拣选点所在的面。
在一些实施例中,拣选信息还包括相机参数。
可以对拣选信息进一步处理,根据拣选信息中的图像和相机参数,确定货箱的坐标。
在步骤S2中,根据拣选信息,生成第一排序结果,其中,第一排序结果表示物品拣选的难易程度。
例如,按照物品的拣选难易程度,对物品进行初排,生成第一排序结果。
在一些实施例中,根据拣选信息,生成第一排序结果包括:根据拣选信息,计算反映物品拣选难易程度的影响因子;根据影响因子,生成第一排序结果。
在一些实施例中,影响因子包括拣选面的面积、以拣选点为圆心的拣选面的最大内切圆的面积、拣选点的法向量与货箱的底面的法向量的夹角、拣选点到货箱的各个面的距离、 拣选点到货箱的中心的距离的至少一种。
其中,根据货箱的坐标、拣选点、拣选面确定,拣选点的法向量与货箱的底面的法向量的夹角、拣选点到货箱的各个面的距离、拣选点到货箱的中心的距离。
在一些实施例中,影响因子包括物品为待拣选物品的概率,所述根据拣选信息,计算物品拣选的影响因子包括:根据物品所在货箱的图像,利用机器学习模型,计算物品为待拣选物品的概率。
例如,不是货箱内的所有物品都要被拣选,因此要确定物品为待拣选物品的概率。另外,在系统识别过程中,有时也会将不是商品的物品当成商品,并计算了拣选信息,因此,需要进一步过滤这些不应被拣选的物品,最终确定需要参与生成第一排序结果和第二排序结果的过程的物品。
上述影响因子和物品拣选的难易程度的关系如下。
1)拣选面的面积:拣选面面积越大,越容易拣选,其中,拣选面面积在像素坐标系中计算得到;
2)拣选点为圆心的拣选面的最大内切圆面积:该内切圆面积越大,越容易拣选,其中,拣选面的内切圆面积在像素坐标系中计算得到;
3)拣选点的法向量与货箱底面的法向量的夹角:该夹角越小,倾斜程度越小,越容易拣选,其中,拣选点的法向量与货箱底面的法向量的夹角在世界坐标系中计算得到;
4)拣选点到货箱底部距离:该距离越大,拣选点距离机械臂越近,物品越不容易被其他物品压住,也越容易拣选,其中,拣选点到货箱底部距离在世界坐标系中计算得到;
5)拣选点到货箱四壁的最短距离:该最短距离越小,表明机械臂在拣选过程越容易与货箱四壁发生碰撞,也越不容易拣选,其中,拣选点到货箱四壁的最短距离在像素坐标系中计算得到;
6)拣选点到货箱中心的距离:该距离越小,表面的物品越靠近货箱中心,机械臂越不容易与货箱发生碰撞,也越容易被拣选,其中,拣选点到货箱中心的距离在像素坐标系中计算得到;
7)物品为待拣选物品的概率(即,拣选物品对应的识别模型得分):该得分的高低是机器学习模型对物品的识别度,得分越高,说明该物体是需要拣选的商品的可能性越高,应该被拣选的概率就越高。
为了保持各影响因子量纲的统一,在计算每个物品的初次排序的得分前,需对上述各影响因子得分进行归一化,例如,采用softmax的方式进行归一化。
在一些实施例中,根据影响因子,生成第一排序结果,包括:根据影响因子的加权和,生成第一排序结果。
例如,计算多个影响因子,对每种影响因子,设定一个权重值w。假设一个影响因子的数值v,那么w*v,即为该影响因子的加权得分,将所有影响因子的加权得分求和即可得到总的排序得分,进而得到第一排序结果。通过综合考虑多个影响因子,确定物品拣选的难易程度,能够兼顾更多情况,提高拣选成功率。
也可以利用机器学习模型,生成第一排序结果。
例如,利用Xgboost、Lightgbm、RankNe、LambdaMART、ES-Rank、DirectRanker、PiRank等机器学习模型。在训练阶段,将影响因子数据和部分人工标注好的排序数据,作为机器学习的模型的输入,进行训练,得到排序模型。在模型推理阶段,利用训练得到的排序模型权重,对新的待排序数据进行排序,进而得到初排结果。利用机器学习模型,能够得到更准确的第一排序结果。
在一些实施例中,根据影响因子,生成第一排序结果包括:根据影响因子排序在前的N个物品,生成第一排序结果。其中,N为正整数。
例如,机械臂本次只需要拣10个物品,因此只关心影响因子在前的N个结果,那么排名在10以后的物品就不作为待拣选物品列入到第一排序结果中,也不会参与后续的步骤,从而可以灵活适应拣选需求。
在一些实施例中,物品拣选方法还包括,在生成第一排序结果之前,根据拣选信息和预设的过滤条件,筛选出参与排序的物品。
例如,预先设置一些过滤条件来判断物品是否可被拣选、物品识别是否有效,过滤条件可以是倾斜角、机器学习模型的检测得分等,如果这些条件不满足,则物品不会参与初排,也就不作为待拣选物品列入第一排序结果中,从而可以将不适合拣选的物品先排除出去,避免这些物品影响机械臂拣选的效率,并提高计算第一排序结果和第二排序结果的计算效率。
在步骤S3中,根据拣选信息,计算物品之间的约束关系。
在一些实施例中,所述物品之间的约束关系反映物品之间的堆叠关系。
图2(a)示出了根据本公开一些实施例的物品间约束关系的示意图。
图2(a)是上下叠放的物品a、b的侧视图。如图2(a)所示,如果想要拣选物品b,应先拣选起物品a。否则,如果先拣选物品b,可能在机械臂抓起物品b的时候,物品a也被带起,物品a可能在空中掉落,从而造成物品a的损坏。因此,设定物品a对物品b具有约束。
在一些实施例中,根据拣选信息,计算物品之间的约束关系,包括:在物品的高度大于其相邻物品的高度的情况下,确定物品对该相邻物品有约束。其中,相邻物品是与物品有接触的物品。
例如,在图2(a)中,物品a的高度大于物品b,且物品a和物品b相邻,因此物品a对物品b有约束。
在一些实施例中,根据拣选信息,计算物品之间的约束关系,包括:在物品的倾斜角度与其相邻物品的倾斜角度的夹角小于约束阈值的情况下,根据物品的倾斜角度,确定物品与该相邻物品之间的约束关系。
例如,在物品与其相邻物品的倾斜角度的方向与从物品指向其相邻物品的方向小于预设阈值的情况下,确定物品与该相邻物品有约束。
图2(b)示出了根据本公开另一些实施例的物品间约束关系的示意图。
图2(b)是横向叠放的物品a、b的侧视图。如图2(b)所示,物品a压住了物品b的一部分。在计算约束关系时,物品a以及与其相邻的物品b的倾斜趋势一致,都是向右侧倾斜,而物品A在物品B的左侧,即物品A指向物品B的方向也是从左向右,和倾斜角度相近,所以物品A对物品B有约束。
在步骤S4中,根据第一排序结果和物品之间的约束关系,生成第二排序结果,其中,第二排序结果表示物品的拣选优先级。
例如,在保证被约束的物品的拣选顺序晚于约束其的物品的前提下,按照物品拣选的难易程度,调整物品的拣选顺序,从而确定最终的物品拣选顺序。通过计算物品之间的约束关系并计算第二排序结果,可以避免在最后的排序结果中,将有压叠现象的底部物品排在顶部物品之前进行拣选的风险。
在一些实施例中,根据第一排序结果和物品之间的约束关系,生成结构树,其中,结构树中的每个节点对应一个物品,同一层内的所有物品的优先级排序符合第一排序结果, 物品与其上一层的至少一个物品之间存在约束关系;在保留同一层内的物品的排序的前提下,根据物品之间的约束关系和预设的合并规则,将结构树的多层合并为一层,得到第二排序结果。
图3示出了根据本公开的一些实施例的结构树的示意图。
假设物品1对物品4、3、2有约束,物品4对物品6有约束,第一排序结果中,物品拣选的难易程度从易到难依次为:物品6>物品5>物品4>物品3>物品2>物品1。如图3所示,物品1和5没有被其他物品约束,放在第一层,并按照第一排序结果排序。被物品1约束的物品4、3、2在第二层,且第2层的各节点间按照第一排序结果排序,例如,依次为物品4、物品3、物品2。
在结构树所有层中,上层的物品比它下层的子节点的优先级高,这与物品的实际堆叠顺序是相近的,例如货箱中靠上面的物品更可能在结构树的上层。在树的每一层内,也按照第一排序结果的高低进行排序。树状结构的第一层是没有被约束关系抑制的第一排序结果中的候选项,也就是货箱中最上层的物品。
根据约束关系构建结构树,能够模拟货箱中物品的真实堆叠情况,同时也考虑了物品拣选的难易程度,从而优化最终得到的第二排序结果。
在一些实施例中,根据第一排序结果和物品之间的约束关系,生成结构树,包括:
将没有父节点的物品作为结构树的第一层,从第一层开始,对当前层的物品按照第一排序结果排序,其中,父节点为约束该物品的物品;将当前层的物品的子节点确定为当前层的下一层中的物品,其中,子节点为被该物品约束的物品;循环对当前层的物品按照第一排序结果排序和确定下一层中的物品的步骤,直至当前层的物品没有子节点。
在一些实施例中,在存在多个约束该物品i的物品情况下,在多个约束该物品i的物品(例如k,h,j)中,选择在第一排序结果中排序最末的物品j(即,最难拣选的物品j),作为该物品i的父节点。
图4示出了根据本公开的一些实施例的确定父节点的示意图。
(1)将第一排序结果中的物品,作为候选项。遍历每个候选项i,判断是已遍历全部候选项,如果否,进入步骤(2),否则,结束算法;
(2)判断是否有与该候选项i之间存在约束关系的物品,如果是,则转到步骤(3),否则,转到步骤(5);
(3)判断与该候选项i之间存在约束关系的物品是否在第一排序结果中,如果是,则转到步骤(4),否则,转到步骤(5);
(4)在与该候选项i之间存在约束关系、且包括在第一排序结果里的物品中,选择在第一排序结果中排序最靠后的物品j,作为该候选项i的父节点,候选项i作为物品j的子节点;
(5)保持该候选项的原始信息,不建立该候选项的父子节点关系,进入下一个候选项。
在一些实施例中,根据第一排序结果和物品之间的约束关系,生成结构树,包括:将没有父节点的物品作为结构树的第一层,从第一层开始,对当前层的物品按照第一排序结果排序,其中,父节点为约束该物品的物品;将当前层的物品的子节点确定为当前层的下一层中的物品,其中,子节点为被该物品约束的物品;循环对当前层的物品按照第一排序结果排序和确定下一层中的物品的步骤,直至当前层的物品没有子节点。
如图3所示,从第一层开始向上建立结构树。假设物品1是物品4、3、2的父节点,物品4对物品6有约束,第一排序结果为物品6>物品5>物品4>物品3>物品2>物品1。则其中没有父节点的是物品1、5,放在第一层。然后将物品1的子节点物品4、3、2放在第2层,并对第2层的节点按照第一排序结果的顺序进行排序,然后将4的子节点6放在第三层。
图5示出了根据本公开一些实施例的生成结构树的流程图。
如图5所示,从树的首层开始,按照之前得到的“父子”关系,向下逐层构建树状结构,得到一棵完整的结构树。
首先,遍历第一排序结果中的候选项,判断该候选项是否有父节点,如果没有,将候选项加入到结构树的首层节点,如果有,则对当前候选项不做额外处理,进入下一个候选项。
在找出所有首层节点之后,从结构树的首层开始,自上而下逐层遍历,判断结构树的当前层所有物品是否还有子节点,如果是,将当前层物品的子节点加入到结构树的下一层,并保持子节点的相对位置关系,直到找出当前层的全部子节点。如果否,说明已经建立完结构树的叶子节点,那么结束结构树的建立。
在一些实施例中,保留同一层内的物品的排序,根据物品之间的约束关系,将结构树 的多层合并,得到第二排序结果,包括:从结构树的最后一层的物品开始,在保留上一层的物品的优先级排序不变、且当前层的物品的优先级小于其父节点的优先级的前提下,根据第一排序结果,确定将当前层的物品合并到上一层后的位置;循环确定物品位置的步骤,直至结构树合并为一层。
例如,从最后一层开始向上合并结构树。参照图3,先将物品6合并到第2层,首先要保证物品6的排序在物品4后,然后对物品6、3、2按照第一排序结果排序,则,合并后第二层的顺序为物品4、6、3、2。然后将第二层合并到第一层,因为物品1是第一层的最后一个,要保证物品4、6、3、2在物品1后的条件,直接将物品4、6、3、2放在物品1后,第一层其他物品不变。最终,第二排序结果,也就是结构树合并的结果为物品5、1、4、6、3、2。
图6示出了根据本公开一些实施例的结构树合并的流程图。
如图6所示,从结构树的最底层开始,自底向上对每一层进行合并。
首先,判断是否到达结构树的最顶层,如果是,则结束合并,如果否,则判断当前层的所有节点是否都合并到上一层,即,当前层的物品处理完毕。
在判断当前层的所有节点是否处理完毕时,如果判断结果为是,则转到上一层作为当前层。如果判断结果为否,则对该层的每一候选项,在上一层节点中查找其父节点,并判断该父节点在上层是否处于队尾,如果下层节点的父节点在上层的位置是上层的尾部,则在尾处之后插入;如果下层节点的父节点在上层的位置为上层的中间,则上层父节点与其他节点间的相对位置不变,插入后的子节点按第一排序结果,找到合适的位置排列。
在一些实施例中,保留同一层内的物品的排序,根据物品之间的约束关系,将结构树的多层合并,得到第二排序结果,包括:从结构树的第一层的物品开始,在保留当前层的物品的优先级排序不变、且当前层的物品的优先级大于其子节点的优先级的前提下,根据第一排序结果,确定将下一层的物品合并到当前层后的位置;循环确定物品位置的步骤,直至结构树合并为一层。
自上而下的合并方法与自下而上的合并方法类似。例如,从第一层开始向下合并结构树。在保证物品5和物品1的排序不变的前提下、将物品4、3、2合并到第一层的物品1后,则第一层的排序变为物品5、1、4、3、2,然后将物品4的子节点(即物品6)合并到第一层,物品6应在物品4的后面,且物品6、3、2的排序与第一排序结果一致。最终, 与从下往上合并结构树相同,第二排序结果,也就是结构树合并的结果仍是物品5、1、4、6、3、2。
在步骤S5中,按照第二排序结果的顺序,确定待拣选物品的拣选顺序。
例如,将第二排序结果作为最后的拣选顺序,发送给机械臂控制系统,使得机械臂按照第二排序结果进行拣选。
本公开根据物品拣选的难易程度,先初次排序物品,得到第一排序结果。然后,构建结构树,根据物品之间相互约束的关系,对初次排序结果进行重排,得到第二排序结果。在满足物品之间的约束关系对拣选顺序的要求的前提下,又考虑了物品拣选的难易程度,既解决了物品相互压叠影响抓取效果、造成物品损坏的问题,又实现了让好拣选的物品先被拣选上来,提高了拣选效率和成功率,减少物品损耗。
图7示出根据本公开一些实施例的物品拣选装置的框图。
如图7所示,物品拣选装置7包括获取模块71、第一生成模块72、计算模块73、第二生成模块74、确定模块75。
获取模块71,被配置为获取货箱内多个物品的拣选信息,例如执行如图1所示的步骤S1;
第一生成模块72,被配置为根据拣选信息,生成第一排序结果,其中,第一排序结果表示物品拣选的难易程度,例如执行如图1所示的步骤S2;
计算模块73,被配置为根据拣选信息,计算物品之间的约束关系,例如执行如图1所示的步骤S3;
第二生成模块74,被配置为根据第一排序结果和物品之间的约束关系,生成第二排序结果,其中,第二排序结果表示物品的拣选优先级,例如执行如图1所示的步骤S4;
确定模块75,被配置为按照第二排序结果的顺序,确定待拣选物品的拣选顺序,例如执行如图1所示的步骤S5。
图8示出根据本公开另一些实施例的物品拣选装置的框图。
如图8所示,物品拣选装置8包括存储器81;以及耦接至该存储器81的处理器82,存储器81用于存储执行物品拣选方法。处理器82被配置为基于存储在存储器81中的指令,执行本公开中任意一些实施例中的物品拣选方法。
图9示出用于实现本公开一些实施例的计算机系统的框图。
如图9所示,计算机系统90可以通用计算设备的形式表现。计算机系统90包括存储器910、处理器920和连接不同系统组件的总线900。
存储器910例如可以包括系统存储器、非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(Boot Loader)以及其他程序等。系统存储器可以包括易失性存储介质,例如随机存取存储器(RAM)和/或高速缓存存储器。非易失性存储介质例如存储有执行本公开中任意一些实施例中的物品拣选方法的指令。非易失性存储介质包括但不限于磁盘存储器、光学存储器、闪存等。
处理器920可以用通用处理器、数字信号处理器(DSP)、应用专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑设备、分立门或晶体管等分立硬件组件方式来实现。相应地,诸如判断模块和确定模块的每个模块,可以通过中央处理器(CPU)运行存储器中执行相应步骤的指令来实现,也可以通过执行相应步骤的专用电路来实现。
总线900可以使用多种总线结构中的任意总线结构。例如,总线结构包括但不限于工业标准体系结构(ISA)总线、微通道体系结构(MCA)总线、外围组件互连(PCI)总线。
计算机系统90还可以包括输入输出接口930、网络接口940、存储接口950等。这些接口930、940、950以及存储器910和处理器920之间可以通过总线900连接。输入输出接口930可以为显示器、鼠标、键盘等输入输出设备提供连接接口。网络接口940为各种联网设备提供连接接口。存储接口950为软盘、U盘、SD卡等外部存储设备提供连接接口。
这里,参照根据本公开实施例的方法、装置和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个框以及各框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可提供到通用计算机、专用计算机或其他可编程装置的处理器,以产生一个机器,使得通过处理器执行指令产生实现在流程图和/或框图中一个或多个框中指定的功能的装置。
这些计算机可读程序指令也可读存储在计算机可读存储器中,这些指令使得计算机以特定方式工作,从而产生一个制造品,包括实现在流程图和/或框图中一个或多个框中指定的功能的指令。
本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的 形式。
通过上述实施例中的物品拣选方法及装置、计算机可读存储介质,提高了物品拣选的效率。
至此,已经详细描述了根据本公开的物品拣选方法及装置、计算机可读存储介质。为了避免遮蔽本公开的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。

Claims (17)

  1. 一种物品拣选方法,包括:
    获取货箱内多个物品的拣选信息;
    根据拣选信息,生成第一排序结果,其中,第一排序结果表示物品拣选的难易程度;
    根据拣选信息,计算物品之间的约束关系;
    根据第一排序结果和物品之间的约束关系,生成第二排序结果,其中,第二排序结果表示物品的拣选优先级;
    按照第二排序结果的顺序,确定待拣选物品的拣选顺序。
  2. 根据权利要求1所述的物品拣选方法,其中,所述根据第一排序结果和物品之间的约束关系,生成第二排序结果,包括:
    根据第一排序结果和物品之间的约束关系,生成结构树,其中,结构树中的每个节点对应一个物品,同一层内的所有物品的优先级排序符合第一排序结果,物品与其上一层的至少一个物品之间存在约束关系;
    在保留同一层内的物品的排序的前提下,根据物品之间的约束关系和预设的合并规则,将结构树的多层合并为一层,得到第二排序结果。
  3. 根据权利要求2所述的物品拣选方法,其中,所述根据第一排序结果和物品之间的约束关系,生成结构树,包括:
    将没有父节点的物品作为结构树的第一层,从第一层开始,对当前层的物品按照第一排序结果排序,其中,父节点为约束该物品的物品;
    将当前层的物品的子节点确定为当前层的下一层中的物品,其中,子节点为被该物品约束的物品;
    循环对当前层的物品按照第一排序结果排序和确定下一层中的物品的步骤,直至当前层的物品没有子节点。
  4. 根据权利要求2所述的物品拣选方法,其中,所述在保留同一层内的物品的排序的前提下,根据物品之间的约束关系和预设的合并规则,将结构树的多层合并为一层,得到第二排序结果,包括:
    从结构树的最后一层的物品开始,在保留上一层的物品的排序不变、且当前层的物品的优先级小于其父节点的优先级的前提下,根据第一排序结果,确定将当前层的物品合并 到上一层后的位置;
    循环确定物品位置的步骤,直至结构树合并为一层。
  5. 根据权利要求2所述的物品拣选方法,其中,所述在保留同一层内的物品的排序的前提下,根据物品之间的约束关系和预设的合并规则,将结构树的多层合并为一层,得到第二排序结果,包括:
    从结构树的第一层的物品开始,在保留当前层的物品的排序不变、且当前层的物品的优先级大于其子节点的优先级的前提下,根据第一排序结果,确定将下一层的物品合并到当前层后的位置;
    循环确定物品位置的步骤,直至结构树合并为一层。
  6. 根据权利要求1所述的物品拣选方法,其中,所述拣选信息包括:
    物品所在货箱的图像、物品的拣选点和拣选面。
  7. 根据权利要求6所述的物品拣选方法,其中,所述根据拣选信息,生成第一排序结果包括:
    根据拣选信息,计算反映物品拣选难易程度的影响因子;
    根据影响因子,生成第一排序结果。
  8. 根据权利要求7所述的物品拣选方法,其中,所述根据影响因子,生成第一排序结果包括:
    根据影响因子排序在前的N个物品,生成第一排序结果,其中,N为正整数。
  9. 根据权利要求7所述的物品拣选方法,其中,所述影响因子包括拣选面的面积、以拣选点为圆心的拣选面的最大内切圆的面积、拣选点的法向量与货箱的底面的法向量的夹角、拣选点到货箱的各个面的距离、拣选点到货箱的中心的距离的至少一种。
  10. 根据权利要求7所述的物品拣选方法,其中,所述影响因子包括物品为待拣选物品的概率,所述根据拣选信息,计算物品拣选的影响因子包括:
    根据物品所在货箱的图像,利用机器学习模型,计算物品为待拣选物品的概率。
  11. 根据权利要求1所述的物品拣选方法,还包括:
    在生成第一排序结果之前,根据拣选信息和预设的过滤条件,筛选出参与排序的物品。
  12. 根据权利要求1所述的物品拣选方法,其中,所述物品之间的约束关系反映物品之间的堆叠关系。
  13. 一种物品拣选装置,包括:
    获取模块,被配置为获取货箱内多个物品的拣选信息;
    第一生成模块,被配置为根据拣选信息,生成第一排序结果,其中,第一排序结果表示物品拣选的难易程度;
    计算模块,被配置为根据拣选信息,计算物品之间的约束关系;
    第二生成模块,被配置为根据第一排序结果和物品之间的约束关系,生成第二排序结果,其中,第二排序结果表示物品的拣选优先级;
    确定模块,被配置为按照第二排序结果的顺序,确定待拣选物品的拣选顺序。
  14. 一种物品拣选装置,包括:
    存储器;以及
    耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器的指令,执行根据权利要求1至12任一项所述的物品拣选方法。
  15. 根据求安利要求14所述的物品拣选装置,还包括:
    相机,被配置为拍摄物品所在货箱的图像。
  16. 一种计算机可读存储介质,其上存储有计算机程序指令,该指令被处理器执行时,实现根据权利要求1至12任一项所述的物品拣选方法。
  17. 一种计算机程序,包括:
    指令,所述指令当由处理器执行时使所述处理器执行根据权利要求1-12任一项所述的物品拣选方法。
PCT/CN2023/074978 2022-07-21 2023-02-08 物品拣选方法及装置、计算机可读存储介质 WO2024016635A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210872886.3A CN115258509A (zh) 2022-07-21 2022-07-21 物品拣选方法及装置、计算机可读存储介质
CN202210872886.3 2022-07-21

Publications (1)

Publication Number Publication Date
WO2024016635A1 true WO2024016635A1 (zh) 2024-01-25

Family

ID=83768123

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/074978 WO2024016635A1 (zh) 2022-07-21 2023-02-08 物品拣选方法及装置、计算机可读存储介质

Country Status (2)

Country Link
CN (1) CN115258509A (zh)
WO (1) WO2024016635A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115258509A (zh) * 2022-07-21 2022-11-01 京东科技控股股份有限公司 物品拣选方法及装置、计算机可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9089969B1 (en) * 2012-03-06 2015-07-28 Vecna Technologies, Inc. Loading articles on one or more support surfaces with one or more mobile devices
CN111126705A (zh) * 2019-12-25 2020-05-08 北京旷视机器人技术有限公司 密集仓储的搬运路径生成方法、装置及电子设备
CN113727926A (zh) * 2019-02-22 2021-11-30 聪慧公司 机器人多物品型码垛和卸垛
CN115258509A (zh) * 2022-07-21 2022-11-01 京东科技控股股份有限公司 物品拣选方法及装置、计算机可读存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9089969B1 (en) * 2012-03-06 2015-07-28 Vecna Technologies, Inc. Loading articles on one or more support surfaces with one or more mobile devices
CN113727926A (zh) * 2019-02-22 2021-11-30 聪慧公司 机器人多物品型码垛和卸垛
CN111126705A (zh) * 2019-12-25 2020-05-08 北京旷视机器人技术有限公司 密集仓储的搬运路径生成方法、装置及电子设备
CN115258509A (zh) * 2022-07-21 2022-11-01 京东科技控股股份有限公司 物品拣选方法及装置、计算机可读存储介质

Also Published As

Publication number Publication date
CN115258509A (zh) 2022-11-01

Similar Documents

Publication Publication Date Title
Nath et al. Deep convolutional networks for construction object detection under different visual conditions
US9044858B2 (en) Target object gripping apparatus, method for controlling the same and storage medium
CN110796186A (zh) 基于改进的YOLOv3网络的干湿垃圾识别分类方法
KR20170091716A (ko) 샘플링 및 특징 선택 없는 자동 결함 분류
WO2024016635A1 (zh) 物品拣选方法及装置、计算机可读存储介质
US20130141570A1 (en) Information processing apparatus and information processing method
CN102073414B (zh) 基于机器视觉的多点触摸跟踪方法
CN108334805B (zh) 检测文档阅读顺序的方法和装置
CN114937179B (zh) 垃圾图像分类方法、装置、电子设备及存储介质
CN112560576B (zh) 一种ai识图的垃圾分类与智能回收方法
WO2020134099A1 (zh) 物品识别方法、设备和系统
Yang et al. Multi-scale bidirectional fcn for object skeleton extraction
CN111844101A (zh) 一种多指灵巧手分拣规划方法
US11860930B2 (en) Automatic image selection for visual consistency
CN115321090B (zh) 机场行李自动接取方法、装置、设备、系统及介质
CN113034575A (zh) 一种模型构建方法、位姿估计方法及物体拣取装置
WO2024016633A1 (zh) 物品拣选方法及装置、计算机可读存储介质
CN116803631A (zh) 自主系统和由自主系统执行的方法
US20220203547A1 (en) System and method for improving automated robotic picking via pick planning and interventional assistance
CN109978829A (zh) 一种待检测对象的检测方法及其系统
JP2022166253A (ja) コンテナのスタッキング処理方法、装置、機器、記憶媒体及び製品
Raj et al. Scalable and Time-Efficient Bin-Picking for Unknown Objects in Dense Clutter
CN114359222A (zh) 一种任意多边形目标检测方法、电子设备及存储介质
Fang et al. A pick-and-throw method for enhancing robotic sorting ability via deep reinforcement learning
CN114255377A (zh) 一种智能货柜的差异商品检测分类方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23841713

Country of ref document: EP

Kind code of ref document: A1