Method and device for determining luggage stacking position based on overlapping area and medium
By using a method for determining the luggage placement based on overlapping areas, the problem of inaccurate luggage placement caused by irregular luggage shapes is solved, enabling accurate luggage placement and efficient handling within the luggage cart.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-20
- Publication Date
- 2026-03-27
AI Technical Summary
During baggage handling, irregular shapes of baggage can lead to inaccurate placement, potentially causing baggage to fall from heights or fail to be properly stacked, thus affecting handling efficiency.
The method of determining the luggage placement position based on the overlapping area is adopted. By obtaining the three-dimensional coordinate system of the luggage cart and the bounding box of the luggage to be placed, each preset point is traversed to determine whether the luggage overlaps with the grid of already placed luggage, and the optimal placement position is determined according to the preset placement conditions.
It effectively avoids damage to luggage, improves the accuracy of luggage stacking and handling efficiency, ensures that luggage fits snugly inside the luggage cart, and improves space utilization.
Smart Images

Figure CN121744569A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of baggage placement location determination technology, and in particular to a method, device and medium for determining baggage placement location based on overlapping area. Background Technology
[0002] In the civil aviation sector, baggage handling is a major challenge for the modern aviation industry. As passenger traffic at airports continues to increase, the amount of passenger baggage is also rising. To improve baggage handling efficiency, some airports use automated baggage handling equipment to move baggage from conveyor belts to baggage carts, which are then transported to the aircraft for loading and check-in. Typically, before baggage is stacked, its placement needs to be determined, based on the shape of the already stacked baggage. However, baggage is irregularly shaped, and may have handles or wheels protruding from the baggage compartment. These structures can cause the determined stacking position to be too high above or obstructed by the already stacked baggage, leading to baggage falling from a height or failing to be stacked properly. Summary of the Invention
[0003] To address the aforementioned technical problems, the technical solution adopted by this invention is as follows:
[0004] According to a first aspect of this application, a method for determining the baggage stacking position based on overlapping area is provided, the method comprising the following steps:
[0005] E100, obtain the three-dimensional coordinate system QR corresponding to the current luggage cart and the luggage surrounding box W corresponding to the luggage to be stacked; wherein, QR includes several three-dimensional luggage meshes corresponding to the luggage that has already been stacked.
[0006] E200, based on the size of W and the preset traversal rules, sequentially traverses each preset point to be confirmed in QR.
[0007] In E300, when W is at the target confirmation point, if W does not coincide with any three-dimensional luggage grid and W satisfies all preset stacking conditions, then proceed to E400; otherwise, traverse the next confirmation point; where the target confirmation point is any preset confirmation point.
[0008] E400, move W downwards by the fourth preset distance ΔHA.
[0009] If, at E500, the W position after moving down ΔHA does not coincide with any three-dimensional baggage grid, then the target point to be confirmed is not the corresponding placement position for the baggage to be placed; otherwise, proceed to E600.
[0010] E600 determines whether the target point to be confirmed is the corresponding stacking position of the luggage to be stacked, based on each three-dimensional luggage grid that coincides with W after moving downward ΔHA.
[0011] According to another aspect of this application, a non-transitory computer-readable storage medium is also provided, wherein at least one instruction or at least one program is stored in the storage medium, and the at least one instruction or at least one program is loaded and executed by a processor to implement the above-described method for determining the luggage stacking position based on overlapping area.
[0012] According to another aspect of this application, an electronic device is also provided, including a processor and the aforementioned non-transitory computer-readable storage medium.
[0013] The present invention has at least the following beneficial effects:
[0014] The baggage placement position determination method based on overlapping area of the present invention, in the process of determining the placement position corresponding to the baggage to be placed, when W is at the target confirmation point, if W does not coincide with any three-dimensional baggage grid and W meets all preset placement conditions, then W is moved down by a fourth preset distance ΔHA. If W after moving down ΔHA does not coincide with any three-dimensional baggage grid, then the target confirmation point is determined not to be the placement position corresponding to the baggage to be placed; otherwise, based on each three-dimensional baggage grid that coincides with W after moving down ΔHA, it is determined whether the target confirmation point is the placement position corresponding to the baggage to be placed. Through the above method, it is possible to determine whether the baggage to be placed is in a suspended state, thereby avoiding the situation where the baggage to be placed is thrown down, resulting in damage to the baggage. Attached Figure Description
[0015] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0016] Figure 1 A flowchart illustrating a method for determining luggage placement based on overlapping area, provided in an embodiment of the present invention. Detailed Implementation
[0017] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0018] It should be noted that, based on this disclosure, those skilled in the art will understand that one aspect described herein can be implemented independently of any other aspect, and two or more of these aspects can be combined in various ways. For example, any number of aspects set forth herein can be used to implement the device and / or practice the method. Furthermore, this device and / or practice the method can be implemented using other structures and / or functionalities besides one or more of the aspects set forth herein.
[0019] Example 1:
[0020] This embodiment provides a method for determining the placement position of luggage to be placed, which may include the following steps:
[0021] S100, obtain the three-dimensional coordinate system QR corresponding to the current luggage cart, the luggage enclosure W corresponding to the luggage to be placed, and the length L of the luggage cart in the Y-axis direction in QR. Y Width D in the X-axis direction X and height H in the Z-axis direction Z The QR includes several three-dimensional luggage grids corresponding to the already stacked luggage, and each three-dimensional luggage grid has location coordinates and size information.
[0022] In this embodiment, before determining the placement position of the luggage to be placed, it is necessary to identify the luggage already placed on the current luggage cart. The luggage already placed can be identified by image recognition or LiDAR scanning. After the luggage is identified, it can be segmented to generate several three-dimensional luggage meshes containing point clouds corresponding to the luggage already placed. It can be understood that each three-dimensional luggage bounding box represents the corresponding space where luggage has been placed.
[0023] For luggage to be stacked, the size information of the luggage enclosure corresponding to the luggage to be stacked can be obtained through image recognition; at the same time, a three-dimensional coordinate system corresponding to the current luggage cart can be established to quantify the position of each space within the current luggage cart space.
[0024] Furthermore, the luggage to be stacked is received by a preset robotic arm; wherein, when the preset robotic arm places the luggage to be stacked, the orientation of the robotic arm is perpendicular to the side wall of the Y-axis direction of the Y-cart in the QR.
[0025] Based on the above-mentioned robotic arm orientation setting, in the subsequent process of determining the stacking position, the process first traverses along the Y-axis to make it easier to stack the luggage and avoid collisions with the already stacked luggage.
[0026] S200, obtain the first preset value NUM1 = 0, and place W at the origin position corresponding to W in QR.
[0027] In this embodiment, since the location of the luggage to be placed is determined based on the stack shape of the luggage already placed on the current luggage cart, it is necessary to re-acquire the three-dimensional coordinate system corresponding to the current luggage cart after each luggage to be placed; then W is placed at the origin position corresponding to W in QR, so as to determine the best placement position applicable to the current luggage to be placed based on the stack shape corresponding to the current luggage cart.
[0028] Furthermore, the origin position of W in QR is QR. W =(W X W Y W Z ); where W X Let W be the x-axis coordinate of the origin position corresponding to W in QR. Y Let W be the y-axis coordinate of the origin position corresponding to W in QR. Z Let W be the Z-axis coordinate of the origin position corresponding to W in QR; X =L W / 2;W Y =D W / 2;W Z =H W / 2;D W Let W be the width of W along the X-axis, and H be the width of W along the X-axis. W Let W be the height of W in the Z-axis direction.
[0029] In this embodiment, W is placed at the origin position QR corresponding to W in QR. W At that time, the center point of W is parallel to QR. W Overlap; it can be understood that different sizes of W correspond to different origin positions of W in QR. W It is also different. When W is at the origin, one of the vertices of W coincides with the origin of the coordinate system of QR. Therefore, W can traverse from the bottom vertex of the current luggage cart.
[0030] S300, if NUM1×ΔL Y <L Y -L W Then it enters S400; where L W Let W be the length of W along the Y-axis; ΔL Y This is the first preset distance.
[0031] Furthermore, if NUM1×ΔL Y ≥L Y -L W Then, the second preset value NUM2 = 0 and the third preset value NUM3 = 0 are obtained, and the process proceeds to S600.
[0032] S600, if NUM2×ΔH Z <H Z -H W If the condition is met, proceed to S610; otherwise, proceed to S620; where ΔH Z This is the second preset distance.
[0033] S610, update NUM1 = 0, update NUM2 = NUM2 + 1, place W in the middle position QE W =(W X +NUM3×ΔD X W Y W Z +NUM2×ΔH Z At point ), enter S300.
[0034] S620, if NUM3×ΔD X <D X -D W Update NUM1 = 0, update NUM2 = 0, update NUM3 = NUM3 + 1, and place W in the middle position QE. W =(W X +NUM3×ΔD X W Y W Z +NUM2×ΔH Z At point ), enter S300; otherwise, determine that the corresponding stacking location for the luggage to be stacked has not been determined; where ΔD X This is the third preset distance.
[0035] Furthermore, ΔL can be set. Y =ΔH Z =ΔD X =20mm; Under this parameter setting, it can ensure that luggage is stacked more compactly while maintaining high traversal efficiency, thereby improving the space utilization of the luggage cart.
[0036] In this embodiment, the traversal order is as follows: first, traverse along the Y-axis. If the coordinates corresponding to the Z-axis and Y-axis remain unchanged, and the traversal along the Y-axis is completed, then the coordinate of the Z-axis is increased by ΔH. Z Then continue traversing along the Y-axis again, if the Z-axis NUM2×ΔH Z ≥H Z -H WThis indicates that the traversal along the Z-axis has also been completed. At this point, the X-axis coordinates need to be changed to continue the traversal along the Y-axis. That is, first traverse along the Y-axis, then along the Z-axis, and finally along the X-axis. This can be understood as a three-loop loop to traverse the entire current luggage cart space. The effect of this traversal method is as follows:
[0037] Using the above traversal method, when stacking luggage, the luggage to be stacked will first be placed on the side that is farthest from the current luggage cart, forming a haystack shape with a larger bottom and a smaller top. This prevents the robotic arm from colliding with the already stacked luggage and thus avoids damage to the luggage.
[0038] S400, determine whether W coincides with at least one of several three-dimensional luggage grids, and determine whether W satisfies all preset stacking conditions.
[0039] In this embodiment, when W is at any position, it is necessary to determine whether W will collide with other stacked luggage at that position, and whether all other preset stacking conditions are met. It can be understood that if W coincides with at least one of several three-dimensional luggage grids, it means that W will collide with the stacked luggage at this position.
[0040] Furthermore, determining whether W coincides with at least one of several three-dimensional luggage meshes may include the following steps:
[0041] S410, obtain the minimum and maximum X-axis coordinates, minimum and maximum Y-axis coordinates, and minimum and maximum Z-axis coordinates of each 3D luggage mesh in QR, to obtain a list set of minimum and maximum coordinates of the 3D luggage mesh A = (A1, A2, ..., A...). i A n ), i=1, 2,...,n; where, A i A is a list of the minimum and maximum coordinates of the i-th 3D luggage grid, where n is the number of 3D luggage grids; i =(A i,X _min, A i,X _max, A i,Y _min, A i,Y _max, A i,Z _min, A i,Z _max); A i,X _min and A i,X _max represents the minimum and maximum X-axis coordinates of the i-th 3D luggage mesh, respectively. i,Y _min and A i,Y _max represents the minimum and maximum Y-axis coordinates of the i-th 3D luggage mesh, respectively. i,Z _min and A i,Z_max represents the minimum and maximum Z-axis coordinates of the i-th 3D luggage mesh, respectively.
[0042] In this embodiment, each three-dimensional luggage mesh in the QR corresponds to the coordinates of each vertex, and the minimum and maximum X-axis coordinates, minimum and maximum Y-axis coordinates, and minimum and maximum Z-axis coordinates of each three-dimensional luggage mesh in the QR can be obtained.
[0043] S420, Get the minimum X-axis coordinate of W in QR. min,X Maximum X-axis coordinate W max,X Minimum Y-axis coordinate W min,Y Maximum Y-axis coordinate W max,Y Minimum Z-axis coordinate W min,Z and the maximum Z-axis coordinate W max,Z .
[0044] Similarly, the minimum X-axis coordinate W can be obtained for different positions of W in QR. min,X Maximum X-axis coordinate W max,X Minimum Y-axis coordinate W min,Y Maximum Y-axis coordinate W max,Y Minimum Z-axis coordinate W min,Z and the maximum Z-axis coordinate W max,Z .
[0045] S430, iterate through A, if A i X-axis coordinate interval [A i,X _min, A i,X The x-axis coordinate interval of W[_max] and W min,X W max,X There is overlap, A i Y-axis coordinate interval [A i,Y _min, A i,Y The Y-axis coordinate interval of W[_max] and W min,Y W max,Y There is overlap and A i Z-axis coordinate interval [A i,Z _min, A i,Z The Z-axis coordinate interval of W is [_max] and W. min,Z W max,Z If there is overlap, then W is determined to overlap with at least one of several three-dimensional luggage meshes.
[0046] In this embodiment, the above steps can determine whether W will collide with already stacked luggage when it is at a certain position in the QR. If W will not collide with already stacked luggage when it is at a certain position in the QR, it is also necessary to determine whether W meets all the preset stacking conditions when it is at that position. The preset stacking conditions are set according to the relevant regulations of civil aviation. For example, the preset stacking conditions may include small luggage being placed on top of large luggage, and the luggage to be stacked will not be thrown away.
[0047] S500, if W coincides with at least one of the several three-dimensional luggage grids or W does not satisfy at least one of the preset stacking conditions, then W will be moved ΔL along the Y-axis. Y Update NUM1 = NUM1 + 1 and proceed to S300; otherwise, determine the current position of W as the placement position for the luggage to be placed.
[0048] In this embodiment, due to the preset stacking conditions, after traversing all positions in the QR, the corresponding stacking position of the luggage to be stacked may not be determined. In order to stack the luggage to be stacked into the luggage cart, a second traversal is required.
[0049] Furthermore, the preset stacking conditions include several necessary stacking conditions and several optimized stacking conditions; wherein, the execution state of the necessary stacking conditions is enabled, and the execution state of the optimized stacking conditions includes enabled and disabled.
[0050] In this embodiment, it can be understood that the necessary stacking conditions are stacking conditions set according to the relevant regulations of civil aviation, such as: small luggage is placed on top of large luggage, and there will be no situation where the luggage to be stacked is thrown away; while the optimized stacking conditions are optimized stacking conditions set to improve the space utilization of the luggage cart or to make the luggage stacked neatly. The execution state of the optimized stacking conditions can be set to on or off. When the execution state of the optimized stacking conditions is on, the optimized stacking conditions need to be met; otherwise, the optimized stacking conditions do not need to be met.
[0051] After step S620, the method may further include the following steps:
[0052] S700, if the placement position of the luggage to be placed is not determined, the execution status of all optimized placement conditions in the preset placement conditions is set to off, and the process proceeds to S200.
[0053] In this embodiment, after traversing all positions in the QR, if the placement position corresponding to the luggage to be placed is not determined, the execution status of all optimized placement conditions in the preset placement conditions is set to off; then, S200 is entered, and each position in the QR is traversed again to determine the placement position corresponding to the luggage to be placed.
[0054] In this embodiment, the three-dimensional coordinate system QR corresponding to the current luggage cart, the luggage enclosure W corresponding to the luggage to be stacked, and the length L of the luggage cart in the Y-axis direction in QR are obtained. Y Width D in the X-axis direction X and height H in the Z-axis direction Z Then, based on the size of W along the Y-axis, with a step size ΔL... Y The space along the Y-axis of the current luggage cart is traversed. If W does not coincide with any of the three-dimensional luggage grids and W satisfies all the preset stacking conditions, then the current position of W will be determined as the stacking position of the luggage to be stacked. The process is repeated along the Y-axis, Z-axis and X-axis in sequence to determine the stacking position corresponding to W.
[0055] Furthermore, when determining the placement position of the luggage to be placed, it is based on the remaining placement space of the current luggage cart and the size of the luggage to be placed, so that the determined placement position of the luggage to be placed is the optimal placement position for the current luggage cart; by setting the judgment condition that the luggage to be placed coincides with the three-dimensional grid, the placement position of the luggage to be placed is closely attached to the luggage that has already been placed, thereby improving the utilization rate of the luggage cart space.
[0056] Example 2:
[0057] If the placement location of the luggage to be placed cannot be determined based on the method in Embodiment 1, the placement location can be further determined using the method in this embodiment. This method may include the following steps:
[0058] Q100, obtain the three-dimensional coordinate system QR corresponding to the current luggage cart and the luggage enclosure W corresponding to the luggage to be stacked; wherein, QR includes several three-dimensional luggage meshes corresponding to the luggage that has already been stacked.
[0059] In this embodiment, before determining the placement position of the luggage to be placed, it is necessary to identify the luggage already placed on the current luggage cart. The luggage already placed can be identified by image recognition or LiDAR scanning. After the luggage is identified, it can be segmented to generate several three-dimensional luggage meshes containing point clouds corresponding to the luggage already placed. It can be understood that each three-dimensional luggage bounding box represents the corresponding space where luggage has been placed.
[0060] For luggage to be stacked, the size information of the luggage enclosure corresponding to the luggage to be stacked can be obtained through image recognition; at the same time, a three-dimensional coordinate system corresponding to the current luggage cart can be established to quantify the position of each space within the current luggage cart space.
[0061] Q200, based on the size of W and the preset traversal rules, sequentially traverses each preset point to be confirmed in QR.
[0062] Q300: When W is at the target confirmation point, if W does not coincide with any three-dimensional luggage grid, proceed to Q400; otherwise, traverse the next confirmation point; where the target confirmation point is any preset confirmation point.
[0063] If Q400 and W satisfy all the preset placement conditions, then the target point to be confirmed is confirmed as the placement position corresponding to the luggage to be placed; otherwise, traverse the next point to be confirmed. The preset placement conditions include several necessary placement conditions and several optimized placement conditions.
[0064] In this embodiment, the method in steps S200-S620 of Embodiment 1 can be used to traverse each preset point to be confirmed in QR sequentially, which will not be elaborated here; the preset point to be confirmed can be the coordinate point corresponding to the center point of W each time W moves in Embodiment 1.
[0065] Q500: If, after traversing all preset points to be confirmed, the corresponding placement location for the luggage to be placed cannot be determined, proceed to Q600.
[0066] In this embodiment, due to the preset stacking conditions, after traversing all positions in the QR, the corresponding stacking position of the luggage to be stacked may not be determined. However, there is still stacking space in the luggage cart at this time. In order to stack the luggage to be stacked into the luggage cart, a second traversal is required.
[0067] Q600, based on the preset stacking condition degradation rules, downgrades several optimized stacking conditions and then proceeds to Q200.
[0068] Furthermore, the execution state of the necessary stacking condition is enabled, and the execution state of the optimized stacking condition includes enabled and disabled.
[0069] In this embodiment, it can be understood that the necessary stacking conditions are stacking conditions set according to the relevant regulations of civil aviation, such as: small luggage is placed on top of large luggage, and there will be no situation where the luggage to be stacked is thrown away; while the optimized stacking conditions are optimized stacking conditions set to improve the space utilization of the luggage cart or to make the luggage stacked neatly. The execution state of the optimized stacking conditions can be set to on or off. When the execution state of the optimized stacking conditions is on, the optimized stacking conditions need to be met; otherwise, the optimized stacking conditions do not need to be met.
[0070] Step Q600 includes the following steps:
[0071] Q610 sets the execution status of all optimized stacking conditions in the preset stacking conditions to off, and then proceeds to Q200.
[0072] In this embodiment, after traversing all positions in the QR, if the placement position corresponding to the luggage to be placed is not determined, the execution status of all optimized placement conditions in the preset placement conditions is set to off; then, S200 is entered, and each position in the QR is traversed again to determine the placement position corresponding to the luggage to be placed.
[0073] Furthermore, step Q600 may include the following steps:
[0074] Q620, obtain each optimized placement condition to get an optimized placement condition list B = (B1, B2, ..., B...). j B m ), j = 1, 2, ..., m; where, B j Let m be the j-th optimized stacking condition, and m be the number of optimized stacking conditions.
[0075] Q630, Based on B, determine the priority of each optimized placement condition to obtain the optimized placement condition priority list YB = (YB1, YB2, ..., YB...). j , ..., YB m ); where YB j For B j Corresponding priority; YB r >YB r+1 ; r = 1, 2, ..., m-1; B r Prior to B r+1 implement.
[0076] Q640, obtain the fourth preset value NM = m.
[0077] Q650, if NM > 0 and the placement location of the luggage to be placed cannot be determined, then B in B... NM Set the execution status to off; update NM = NM-1; enter Q200.
[0078] In this embodiment, the priority of any necessary stacking condition is greater than the priority of any optimized stacking condition, that is, the necessary stacking condition is executed before the optimized stacking condition; and the optimized stacking condition is also set with an execution priority, and the optimized stacking condition with a higher priority is executed before the stacking condition with a lower priority.
[0079] Understandably, there are several reasons why the placement position of the luggage to be placed could not be determined after the first traversal. Some positions may not meet the necessary placement conditions, while others may not meet the optimized placement conditions. Among the unmet optimized placement conditions, some do not meet the higher priority optimized placement conditions, while others do not meet the lower priority placement conditions. Therefore, in this embodiment, the lowest priority optimized placement condition is first turned off, and then Q200 is entered to traverse each position in QR again. If the placement position of the luggage to be placed still cannot be determined, then the next lower priority optimized placement condition is turned off, until the placement position of the luggage to be placed is determined.
[0080] Furthermore, after step Q650, the method further includes:
[0081] Q660: If NM≤0 or the placement position of the luggage to be placed is determined, exit the current processing.
[0082] In this embodiment, if NM≤0, it means that all optimized stacking conditions have been turned off, and the current processing will be exited.
[0083] Furthermore, in Q650, for each optimized staging condition that is closed, it is determined whether the closed optimized staging condition was executed during the first traversal. If it was executed, then proceed to Q200; otherwise, close the next optimized staging condition and again determine whether the closed optimized staging condition was executed during the first traversal.
[0084] By using the above method, it is possible to directly determine the placement position of the luggage to be placed during the second traversal, thereby avoiding too many traversals and improving the efficiency of determining the placement position of the luggage to be placed.
[0085] In this embodiment, the three-dimensional coordinate system QR corresponding to the current luggage cart and the luggage enclosure W corresponding to the luggage to be stacked are obtained. Based on the size of W and preset traversal rules, each preset point to be confirmed in QR is traversed sequentially. When W is at the target point to be confirmed, if W does not coincide with any three-dimensional luggage grid and W satisfies all preset stacking conditions, then the target point to be confirmed is confirmed as the stacking position corresponding to the luggage to be stacked; otherwise, the next point to be confirmed is traversed. The preset stacking conditions include several necessary stacking conditions and several optimized stacking conditions. If all... If the preset confirmation point fails to determine the corresponding placement position of the luggage to be placed, then according to the preset placement condition degradation rule, several optimized placement conditions are downgraded. Then, according to the size of W and the preset traversal rule, each preset confirmation point in QR is traversed sequentially. In this invention, because the preset placement conditions are downgraded, the conditions for determining the corresponding placement position of the luggage to be placed are relaxed, making it easier to determine the corresponding placement position of the luggage to be placed. When there is placement space, it is ensured that the placement position of the luggage to be placed can be determined.
[0086] Example 3:
[0087] In Example 1, due to limitations in necessary and optimized stacking conditions, it may be impossible to determine the stacking position of the luggage to be stacked, even if there is remaining stacking space in the luggage cart. Therefore, the following method is provided to further determine the stacking position of the luggage to be stacked:
[0088] H100, obtain the three-dimensional coordinate system QR corresponding to the current luggage cart and the luggage surrounding box W corresponding to the luggage to be stacked; wherein, QR includes several three-dimensional luggage meshes corresponding to the luggage that has already been stacked.
[0089] In this embodiment, before determining the placement position of the luggage to be placed, it is necessary to identify the luggage already placed on the current luggage cart. The luggage already placed can be identified by image recognition or LiDAR scanning. After the luggage is identified, it can be segmented to generate several three-dimensional luggage meshes containing point clouds corresponding to the luggage already placed. It can be understood that each three-dimensional luggage bounding box represents the corresponding space where luggage has been placed.
[0090] For luggage to be stacked, the size information of the luggage enclosure corresponding to the luggage to be stacked can be obtained through image recognition; at the same time, a three-dimensional coordinate system corresponding to the current luggage cart can be established to quantify the position of each space within the current luggage cart space.
[0091] H200, based on the size of W and the preset traversal rules, sequentially traverses each preset point to be confirmed in QR.
[0092] In this embodiment, the method in steps S200-S620 of Embodiment 1 can be used to traverse each preset point to be confirmed in QR sequentially, which will not be elaborated here; the preset point to be confirmed can be the coordinate point corresponding to the center point of W each time W moves in Embodiment 1.
[0093] H300, if the placement location of the luggage to be placed cannot be determined from all the points to be confirmed, then obtain each optimized placement condition to obtain an optimized placement condition list B = (B1, B2, ..., B...). j B m ), j = 1, 2, ..., m; where, B j Let m be the j-th optimized stacking condition, and m be the number of optimized stacking conditions.
[0094] In this embodiment, due to the preset stacking conditions, after traversing all positions in the QR, the corresponding stacking position of the luggage to be stacked may not be determined. However, there is still stacking space in the luggage cart at this time. In order to stack the luggage to be stacked into the luggage cart, a second traversal is required.
[0095] H400, based on B, determine the priority of each optimized placement condition to obtain the optimized placement condition priority list YB = (YB1, YB2, ..., YB...). j , ..., YB m ); where YB j For B j Corresponding priority; YB r >YB r+1 ; r = 1, 2, ..., m-1; B r Prior to B r+1 implement;
[0096] H500, obtain the fourth preset value NM = m;
[0097] H600, if NM > 0 and the placement location of the luggage to be placed cannot be determined, then B in B will be removed. NM Set the execution status to off; update NM = NM-1; enter H200.
[0098] In this embodiment, the priority of any necessary stacking condition is greater than the priority of any optimized stacking condition, that is, the necessary stacking condition is executed before the optimized stacking condition; and the optimized stacking condition is also set with an execution priority, and the optimized stacking condition with a higher priority is executed before the stacking condition with a lower priority.
[0099] Understandably, there are several reasons why the placement position of the luggage could not be determined after the first iteration. Some positions may not meet the necessary placement conditions, while others may not meet the optimized placement conditions. Among the unmet optimized placement conditions, some do not meet the higher priority optimized placement conditions, while others do not meet the lower priority placement conditions. Therefore, in this embodiment, the lowest priority optimized placement condition is first turned off, and then H200 is entered to re-traverse each position in QR. If the placement position of the luggage still cannot be determined, the next lower priority optimized placement condition is turned off until the placement position of the luggage is determined.
[0100] Furthermore, after step H600, the method further includes:
[0101] H700, if NM≤0 or the placement position of the luggage to be placed is determined, then exit the current processing.
[0102] In this embodiment, if NM≤0, it means that all optimized stacking conditions have been turned off, and the current processing will be exited.
[0103] Furthermore, in H600, for each optimized staging condition that is closed, it is determined whether the closed optimized staging condition was executed during the first traversal. If it was executed, then proceed to H200; otherwise, close the next optimized staging condition and again determine whether the closed optimized staging condition was executed during the first traversal.
[0104] Furthermore, step H200 includes the following steps:
[0105] H210: When W is at the target confirmation point, if W does not coincide with any three-dimensional luggage grid, proceed to H211; otherwise, traverse the next confirmation point; where the target confirmation point is any preset confirmation point.
[0106] H211, if W satisfies all the preset placement conditions, then the target point to be confirmed is confirmed as the placement position corresponding to the luggage to be placed; otherwise, traverse the next point to be confirmed; where the preset placement conditions include several necessary placement conditions and several optimized placement conditions.
[0107] Furthermore, step H200 includes the following steps:
[0108] H221, obtain the first preset value NUM1=0, the second preset value NUM2=0 and the third preset value NUM3=0; and place W at the origin position corresponding to W in QR.
[0109] H222, if NUM1×ΔL Y <L Y -L WThen it enters H223; where L Y Let L be the length of the luggage cart in the Y-axis direction of the QR line. W Let W be the length of W along the Y-axis; ΔL Y This is the first preset distance.
[0110] H223, determine whether W coincides with at least one of several three-dimensional luggage grids, and determine whether W satisfies all preset stacking conditions.
[0111] H224, if W coincides with at least one of several three-dimensional luggage grids or if W does not satisfy at least one of the preset stacking conditions, then W will be moved ΔL along the Y-axis. Y Update NUM1 = NUM1 + 1 and proceed to H222; otherwise, determine the current position of W as the placement position for the luggage to be placed.
[0112] Furthermore, step H222 also includes: if NUM1×ΔL Y ≥L Y -L W Then it enters H225.
[0113] H225, if NUM2×ΔH Z <H Z -H W If the condition is met, proceed to H226; otherwise, proceed to H227; where ΔH Z H is the second preset distance; Z The height of the luggage cart in the Z-axis direction of the QR.
[0114] H226, update NUM1 = 0, update NUM2 = NUM2 + 1, place W in the middle position QE W =(W X +NUM3×ΔD X W Y W Z +NUM2×ΔH Z At point ), enter H222.
[0115] H227, if NUM3×ΔD X <D X -D W Update NUM1 = 0, update NUM2 = 0, update NUM3 = NUM3 + 1, and place W in the middle position QE. W =(W X +NUM3×ΔD X W Y W Z +NUM2×ΔH ZIf the location is not specified, proceed to H222; otherwise, determine that the designated placement location for the luggage has not been determined; where ΔD X The third preset distance; D X The width of the luggage cart in the X-axis direction of the QR.
[0116] By using the above method, it is possible to directly determine the placement position of the luggage to be placed during the second traversal, thereby avoiding too many traversals and improving the efficiency of determining the placement position of the luggage to be placed.
[0117] In this embodiment, the three-dimensional coordinate system QR corresponding to the current luggage cart and the luggage enclosure W corresponding to the luggage to be stacked are obtained. Based on the size of W and preset traversal rules, each preset point to be confirmed in QR is traversed sequentially. When W is at the target point to be confirmed, if W does not coincide with any three-dimensional luggage grid and W satisfies all preset stacking conditions, then the target point to be confirmed is confirmed as the stacking position corresponding to the luggage to be stacked; otherwise, the next point to be confirmed is traversed. The preset stacking conditions include several necessary stacking conditions and several optimized stacking conditions. If all... If the preset confirmation point fails to determine the corresponding placement position of the luggage to be placed, then according to the preset placement condition degradation rule, several optimized placement conditions are downgraded. Then, according to the size of W and the preset traversal rule, each preset confirmation point in QR is traversed sequentially. In this invention, because the preset placement conditions are downgraded, the conditions for determining the corresponding placement position of the luggage to be placed are relaxed, making it easier to determine the corresponding placement position of the luggage to be placed. When there is placement space, it is ensured that the placement position of the luggage to be placed can be determined.
[0118] In this embodiment, the three-dimensional coordinate system QR corresponding to the current luggage cart and the luggage enclosure W corresponding to the luggage to be stacked are obtained. Based on the size of W and preset traversal rules, each preset point to be confirmed in QR is traversed sequentially. When W is at the target point to be confirmed, if W does not coincide with any three-dimensional luggage grid and W satisfies all preset stacking conditions, then the target point to be confirmed is confirmed as the stacking position corresponding to the luggage to be stacked; otherwise, the next point to be confirmed is traversed. The preset stacking conditions include several necessary stacking conditions and several optimized stacking conditions. If all... If the preset confirmation point fails to determine the corresponding placement position of the luggage to be placed, then according to the preset placement condition degradation rule, several optimized placement conditions are downgraded. Then, according to the size of W and the preset traversal rule, each preset confirmation point in QR is traversed sequentially. In this invention, because the preset placement conditions are downgraded, the conditions for determining the corresponding placement position of the luggage to be placed are relaxed, making it easier to determine the corresponding placement position of the luggage to be placed. When there is placement space, it is ensured that the placement position of the luggage to be placed can be determined.
[0119] Example 4:
[0120] In the first embodiment above, the second traversal involves a full traversal of all positions in the QR, which is inefficient. Therefore, the following method is provided to improve traversal efficiency:
[0121] T100, obtain the three-dimensional coordinate system QR corresponding to the current luggage cart and the luggage surrounding box W corresponding to the luggage to be stacked; wherein, QR includes several three-dimensional luggage meshes corresponding to the luggage that has already been stacked.
[0122] In this embodiment, before determining the placement position of the luggage to be placed, it is necessary to identify the luggage already placed on the current luggage cart. The luggage already placed can be identified by image recognition or LiDAR scanning. After the luggage is identified, it can be segmented to generate several three-dimensional luggage meshes containing point clouds corresponding to the luggage already placed. It can be understood that each three-dimensional luggage bounding box represents the corresponding space where luggage has been placed.
[0123] For luggage to be stacked, the size information of the luggage enclosure corresponding to the luggage to be stacked can be obtained through image recognition; at the same time, a three-dimensional coordinate system corresponding to the current luggage cart can be established to quantify the position of each space within the current luggage cart space.
[0124] T200, based on the size of the luggage box to be stacked and the preset traversal rules, sequentially traverses each preset confirmation point in the QR.
[0125] Furthermore, step T200 may include the following steps:
[0126] T210, obtain the first preset value NUM1=0, the second preset value NUM2=0 and the third preset value NUM3=0; and place W at the origin position corresponding to W in QR.
[0127] T220, if NUM1×ΔL Y <L Y -L W Then enter T230; where L Y Let L be the length of the luggage cart in the Y-axis direction of the QR line. W Let W be the length of W along the Y-axis; ΔL Y This is the first preset distance.
[0128] T230 determines whether W overlaps with at least one of several three-dimensional luggage grids and whether W satisfies all preset stacking conditions; wherein, the preset stacking conditions include necessary stacking conditions and optimized stacking conditions.
[0129] T240, if W coincides with at least one of several three-dimensional luggage grids or if W does not satisfy at least one of the preset stacking conditions, then W will be moved ΔL along the Y-axis. Y Update NUM1 = NUM1 + 1 and proceed to T220; otherwise, determine the current position of W as the placement position for the luggage to be placed.
[0130] Furthermore, step T230 may include the following steps:
[0131] T231. If W coincides with at least one of the several three-dimensional luggage grids, then traverse the next point to be confirmed; otherwise, proceed to T232.
[0132] If W satisfies all the necessary stacking conditions, proceed to T233; otherwise, traverse the next point to be confirmed.
[0133] T233, if W satisfies all the optimized stacking conditions, then the current point to be confirmed is determined as the stacking position corresponding to the luggage to be stacked; otherwise, the current point to be confirmed is determined as the designated point to be confirmed.
[0134] Furthermore, step T200 may also include: if NUM1×ΔL Y ≥L Y -L W Then it will enter T250.
[0135] T250, if NUM2×ΔH Z <H Z -H W If so, proceed to T260; otherwise, proceed to T270; where ΔH Z H is the second preset distance; Z The height of the luggage cart in the Z-axis direction of the QR.
[0136] T260, update NUM1 = 0, update NUM2 = NUM2 + 1, place W in the middle position QE W =(W X +NUM3×ΔD X W Y W Z +NUM2×ΔH Z At point ), enter T220.
[0137] T270, if NUM3×ΔD X <D X -D W Update NUM1 = 0, update NUM2 = 0, update NUM3 = NUM3 + 1, and place W in the middle position QE. W =(W X +NUM3×ΔDX W Y W Z +NUM2×ΔH Z If the luggage is at point ) and enters T220, otherwise, it is determined that the corresponding placement location for the luggage to be placed has not been determined; where ΔD X The third preset distance; D X The width of the luggage cart in the X-axis direction of the QR.
[0138] In this embodiment, the traversal order is as follows: first, traverse along the Y-axis. If the coordinates corresponding to the Z-axis and Y-axis remain unchanged, and the traversal along the Y-axis is completed, then the coordinate of the Z-axis is increased by ΔH. Z Then continue traversing along the Y-axis again, if the Z-axis NUM2×ΔH Z ≥H Z -H W This indicates that the traversal along the Z-axis has also been completed. At this point, the X-axis coordinates need to be changed to continue the traversal along the Y-axis. That is, first traverse along the Y-axis, then along the Z-axis, and finally along the X-axis. This can be understood as a three-loop loop to traverse the entire current luggage cart space. The effect of this traversal method is as follows:
[0139] Using the above traversal method, when stacking luggage, the luggage to be stacked will first be placed on the side that is farthest from the current luggage cart, forming a haystack shape with a larger bottom and a smaller top. This prevents the robotic arm from colliding with the already stacked luggage and thus avoids damage to the luggage.
[0140] T300: If, after traversing all preset confirmation points, the corresponding placement location for the luggage to be placed is not determined, then a specified confirmation point is obtained to obtain a list of specified confirmation points C = (C1, C2, ..., C...). p C q ), p = 1, 2, ..., q; where C p The p-th designated point to be confirmed is obtained, and q is the number of designated points to be confirmed obtained. When W is located at a designated point to be confirmed, it does not coincide with any three-dimensional luggage grid, meets the preset necessary stacking conditions, and does not meet the preset optimized stacking conditions.
[0141] In this embodiment, when traversing each point to be confirmed in the QR for the first time, at a certain point to be confirmed, it is necessary to first determine whether it coincides with the three-dimensional luggage grid, then determine whether the necessary stacking conditions are met, and finally determine whether the optimized stacking conditions are met. Since there are multiple judgment conditions, after traversing each point to be confirmed, it is possible that the stacking position corresponding to the luggage to be stacked cannot be determined.
[0142] It should be noted that for each point to be confirmed, the reason for its rejection can be recorded, such as: the point does not meet the necessary or optimized placement conditions. Therefore, each specified point to be confirmed can be obtained to obtain C. It is understandable that the number of points to be confirmed in C is less than the total number of points to be confirmed in QR. During the first iteration, C... e The traversal time is earlier than C e+1 The traversal time is e = 1, 2, ..., q-1.
[0143] T400, set the execution status of all optimized placement conditions to off.
[0144] In this embodiment, the execution status of the optimized stacking conditions can be set to on or off. During the first traversal, the execution status of all optimized stacking conditions is set to on. If the first traversal fails to determine the stacking position of the luggage to be stacked, the execution status of all optimized stacking conditions is set to off. Then, during the second traversal of the specified point to be confirmed in C, the optimized stacking conditions will not be executed, thereby quickly determining the stacking position of the luggage to be stacked.
[0145] T500 iterates through each designated confirmation point in C according to the size of the luggage box to be stacked.
[0146] In this embodiment, it should be noted that the first traversal is performed according to the preset traversal rules, that is, a three-loop traversal method to traverse each point to be confirmed in QR; while the second traversal is performed to traverse each specified point to be confirmed in C, without executing the three-loop traversal method, only needing to traverse each specified point to be confirmed in C one by one, thereby greatly improving the traversal efficiency.
[0147] T600, if W is located at C p If C does not coincide with any three-dimensional luggage grid and meets the preset necessary stacking conditions, then C will be... p The designated placement location for the luggage to be placed has been determined.
[0148] The baggage placement position determination method based on two iterations in this embodiment, if after traversing every point to be confirmed in the three-dimensional coordinate system corresponding to the current baggage cart, the placement position corresponding to the baggage to be placed is not determined, then a designated point to be confirmed is obtained. Wherein, when W is located at the designated point to be confirmed, it does not coincide with any three-dimensional baggage grid, meets the preset necessary placement conditions, and does not meet the preset optimized placement conditions; that is, the designated point to be confirmed is a point to be confirmed that is rejected because it does not meet the optimized placement conditions. Therefore, before the second traversal, the execution status of all optimized placement conditions is set to off. In the subsequent second traversal, only the designated point to be confirmed is traversed, thereby ensuring that the placement position corresponding to the baggage to be placed can be determined while improving the efficiency of determining the placement position corresponding to the baggage to be placed.
[0149] Example 5:
[0150] In the first embodiment above, all optimized stacking conditions are turned off during the second traversal. The stacking position of the luggage to be stacked determined by this method may not meet many optimized stacking conditions. Based on this, the following method is provided to determine a more suitable stacking position:
[0151] R100, obtain the three-dimensional coordinate system QR corresponding to the current luggage cart and the luggage surrounding box W corresponding to the luggage to be stacked; wherein, QR includes several three-dimensional luggage meshes corresponding to the luggage that has already been stacked.
[0152] In this embodiment, before determining the placement position of the luggage to be placed, it is necessary to identify the luggage already placed on the current luggage cart. The luggage already placed can be identified by image recognition or LiDAR scanning. After the luggage is identified, it can be segmented to generate several three-dimensional luggage meshes containing point clouds corresponding to the luggage already placed. It can be understood that each three-dimensional luggage bounding box represents the corresponding space where luggage has been placed.
[0153] For luggage to be stacked, the size information of the luggage enclosure corresponding to the luggage to be stacked can be obtained through image recognition; at the same time, a three-dimensional coordinate system corresponding to the current luggage cart can be established to quantify the position of each space within the current luggage cart space.
[0154] R200, based on the size of W and the preset traversal rules, sequentially traverses each preset point to be confirmed in QR.
[0155] Furthermore, step R200 may include the following steps:
[0156] R210: When W is at the target confirmation point, if W does not coincide with any three-dimensional luggage grid, proceed to R220; otherwise, traverse the next confirmation point; where the target confirmation point is any preset confirmation point.
[0157] R220, if W satisfies all the preset placement conditions, then the target point to be confirmed is confirmed as the placement position corresponding to the luggage to be placed; otherwise, traverse the next point to be confirmed; where the preset placement conditions include several necessary placement conditions and several optimized placement conditions.
[0158] Furthermore, step R200 may include the following steps:
[0159] R221, obtain the first preset value NUM1=0, the second preset value NUM2=0 and the third preset value NUM3=0; and place W at the origin position corresponding to W in QR.
[0160] R222, if NUM1×ΔL Y <L Y -L W Then proceed to R223; where L Y Let L be the length of the luggage cart in the Y-axis direction of the QR line. W Let W be the length of W along the Y-axis; ΔL Y This is the first preset distance.
[0161] Furthermore, step R222 may also include: if NUM1×ΔL Y ≥L Y -L W Then proceed to R225;
[0162] R225, if NUM2×ΔH Z <H Z -H W If the condition is met, proceed to R226; otherwise, proceed to R227; where ΔH Z H is the second preset distance; Z The height of the luggage cart in the Z-axis direction of the QR.
[0163] R226, update NUM1 = 0, update NUM2 = NUM2 + 1, place W in the middle position QE W =(W X +NUM3×ΔD X W Y W Z +NUM2×ΔH Z At point ), enter R222.
[0164] R227, if NUM3×ΔD X <D X -D W Update NUM1 = 0, update NUM2 = 0, update NUM3 = NUM3 + 1, and place W in the middle position QE. W =(W X +NUM3×ΔDX W Y W Z +NUM2×ΔH Z At point ), proceed to R222; otherwise, determine that the corresponding stacking location for the luggage to be stacked has not been determined; where ΔD X The third preset distance; D X The width of the luggage cart in the X-axis direction of the QR.
[0165] R223, determine whether W coincides with at least one of several three-dimensional luggage grids, and determine whether W satisfies all preset stacking conditions.
[0166] R224, if W coincides with at least one of the several three-dimensional luggage grids or W does not satisfy at least one of the preset stacking conditions, then W will be moved ΔL along the Y-axis. Y Update NUM1 = NUM1 + 1 and proceed to R222; otherwise, determine the current position of W as the placement position for the luggage to be placed.
[0167] In this embodiment, the method in steps S200-S620 of Embodiment 1 can be used to traverse each preset point to be confirmed in QR sequentially, which will not be elaborated here; the preset point to be confirmed can be the coordinate point corresponding to the center point of W each time W moves in Embodiment 1.
[0168] R300, if the placement location of the luggage to be placed cannot be determined from all the points to be confirmed, then obtain each optimized placement condition to obtain an optimized placement condition list B = (B1, B2, ..., B...). j B m ), j = 1, 2, ..., m; where, B j Let m be the j-th optimized stacking condition, and m be the number of optimized stacking conditions.
[0169] In this embodiment, due to the preset stacking conditions, after traversing all positions in the QR, the corresponding stacking position of the luggage to be stacked may not be determined. However, there is still stacking space in the luggage cart. In order to stack the luggage to be stacked into the luggage cart, multiple iterations are required to determine the corresponding stacking position of the luggage to be stacked.
[0170] It should be noted that the necessary stacking conditions are set according to the relevant regulations of civil aviation, such as placing small baggage on top of large baggage to prevent baggage from being thrown away. On the other hand, the optimized stacking conditions are set to improve the space utilization of baggage carts or to make baggage stacked neatly. The execution status of the optimized stacking conditions can be set to on or off. When the execution status of the optimized stacking conditions is on, the optimized stacking conditions must be met; otherwise, the optimized stacking conditions do not need to be met.
[0171] R400, based on B, determine the priority of each optimized placement condition to obtain the optimized placement condition priority list YB = (YB1, YB2, ..., YB...). j , ..., YB m ); where YB j For B j Corresponding priority; YB r >YB r+1 ; r = 1, 2, ..., m-1; B r Prior to B r+1 implement.
[0172] In this embodiment, the priority of any necessary stacking condition is greater than the priority of any optimized stacking condition, that is, the necessary stacking condition is executed before the optimized stacking condition; and the optimized stacking condition is also set with an execution priority, and the optimized stacking condition with a higher priority is executed before the stacking condition with a lower priority.
[0173] R500, obtain the fourth preset value NM = m.
[0174] R600, if NM > 0, then obtain B. NM The corresponding intermediate points to be confirmed are used to obtain the list D of the NMth intermediate points to be confirmed. NM =(D NM,1 D NM,2 D NM,u D NM,f(NM) ), u = 0, 1, ..., f(NM); where, D NM,u For B NM The corresponding u-th intermediate point to be confirmed, f(NM) is B NM The corresponding number of intermediate points to be confirmed; B NM The corresponding intermediate point to be confirmed is that it does not satisfy B. NM Points pending confirmation.
[0175] In this embodiment, during the first traversal, if the placement position of the luggage to be placed is not determined, it means that all points to be confirmed are rejected. Among the rejected points to be confirmed, some are rejected because they do not meet the necessary placement conditions, and some are rejected because they do not meet the optimized placement conditions. Therefore, for any optimized placement condition, the placement condition may reject multiple points to be confirmed, or it may not reject any points to be confirmed. Using the optimized placement conditions as a dimension, the intermediate points to be confirmed corresponding to each optimized placement condition can be obtained.
[0176] Furthermore, after step R600, the method further includes:
[0177] R610, if NM≤0, then determine that the corresponding placement position of the luggage to be placed has not been determined, and exit the current processing.
[0178] In this embodiment, if NM≤0, it means that all optimized stacking conditions have been turned off. At this time, the stacking position of the luggage to be stacked cannot be determined, and the current processing is terminated. The luggage to be stacked can be stacked manually in the future.
[0179] In R700, if f(NM) = 0, then update NM = NM-1 and proceed to R600; otherwise, change B in B. NM To B m The execution status is set to off to obtain the updated optimized placement condition list B' corresponding to B, and then enters R800.
[0180] In this embodiment, we first determine whether f(NM) is equal to 0. If f(NM) = 0, it means that there is no result due to B. NM If any point to be confirmed is denied, then close B. NM After traversing the points to be confirmed again, the corresponding placement position of the luggage to be placed will not be determined; therefore, the next optimized placement condition is closed at this time; if f(NM)≠0, then enter R800.
[0181] R800, based on the dimensions of W and B', for D NM Perform a traversal to obtain the corresponding stacking positions for the luggage to be stacked.
[0182] In this embodiment, it can be understood that D NM To obtain B NM The corresponding intermediate points to be confirmed, resulting in the list of the NMth intermediate points to be confirmed, D NM There are only a few points to be confirmed, therefore the time consumed during traversal is short, which improves the efficiency of determining the corresponding stacking position of the luggage to be stacked; in addition, D NM The intermediate points to be confirmed are arranged from first to last according to the order of the first traversal.
[0183] In this embodiment, after traversing each point to be confirmed in the three-dimensional coordinate system corresponding to the current luggage cart for the first time, if the placement position of the luggage to be placed cannot be determined from all the points to be confirmed, then each optimized placement condition and the priority of each optimized placement condition are obtained; according to the priority of each optimized placement condition, the optimized placement conditions are turned off in ascending order of priority; for each optimized placement condition turned off, the list of intermediate points to be confirmed corresponding to the optimized placement condition is traversed to determine the placement position of the luggage to be placed.
[0184] Furthermore, in this invention, the closure process is performed based on the priority of the optimized stacking conditions. The optimized stacking conditions with the lowest priority are closed first. The lowest priority stacking conditions have the least impact on the determined stacking position of the luggage to be stacked. Therefore, this invention can determine the stacking position of the luggage to be stacked with minimal impact. At the same time, the subsequent traversal is not a full traversal. Therefore, this invention can also improve the efficiency of determining the stacking position of the luggage to be stacked.
[0185] Example 6:
[0186] The following will refer to Figure 1 The flowchart shown illustrates a method for determining baggage placement based on overlapping area, which introduces such a method.
[0187] The method for determining the luggage stacking location based on overlapping area may include the following steps:
[0188] E100, obtain the three-dimensional coordinate system QR corresponding to the current luggage cart and the luggage surrounding box W corresponding to the luggage to be stacked; wherein, QR includes several three-dimensional luggage meshes corresponding to the luggage that has already been stacked.
[0189] In this embodiment, before determining the placement position of the luggage to be placed, it is necessary to identify the luggage already placed on the current luggage cart. The luggage already placed can be identified by image recognition or LiDAR scanning. After the luggage is identified, it can be segmented to generate several three-dimensional luggage meshes containing point clouds corresponding to the luggage already placed. It can be understood that each three-dimensional luggage bounding box represents the corresponding space where luggage has been placed.
[0190] For luggage to be stacked, the size information of the luggage enclosure corresponding to the luggage to be stacked can be obtained through image recognition; at the same time, a three-dimensional coordinate system corresponding to the current luggage cart can be established to quantify the position of each space within the current luggage cart space.
[0191] E200, based on the size of W and the preset traversal rules, sequentially traverses each preset point to be confirmed in QR.
[0192] Furthermore, step E200 includes the following steps:
[0193] E221, obtain the first preset value NUM1=0, the second preset value NUM2=0 and the third preset value NUM3=0; and place W at the origin position corresponding to W in QR.
[0194] E222, if NUM1×ΔL Y <L Y -L W Then proceed to E223; where L Y Let L be the length of the luggage cart in the Y-axis direction of the QR line. W Let W be the length of W along the Y-axis; ΔL Y This is the first preset distance.
[0195] E223, determine whether W overlaps with at least one of several three-dimensional luggage grids, and determine whether W satisfies all preset stacking conditions.
[0196] E224, if W coincides with at least one of the several three-dimensional luggage grids or if W does not satisfy at least one of the preset stacking conditions, then W will be moved ΔL along the Y-axis. Y Update NUM1 = NUM1 + 1 and proceed to E222; otherwise, determine the current position of W as the placement position for the luggage to be placed.
[0197] Furthermore, step E222 may also include: if NUM1×ΔL Y ≥L Y -L W Then it will enter E225.
[0198] E225, if NUM2×ΔH Z <H Z -H W If yes, proceed to E226; otherwise, proceed to E227; where ΔH Z H is the second preset distance; Z The height of the luggage cart in the Z-axis direction of the QR.
[0199] E226, update NUM1 = 0, update NUM2 = NUM2 + 1, and place W in the middle position QE W =(W X +NUM3×ΔD X W Y W Z +NUM2×ΔH ZAt point ), enter E222.
[0200] E227, if NUM3×ΔD X <D X -D W Update NUM1 = 0, update NUM2 = 0, update NUM3 = NUM3 + 1, and place W in the middle position QE. W =(W X +NUM3×ΔD X W Y W Z +NUM2×ΔH Z If the location is not specified, proceed to E222; otherwise, determine that the designated placement location for the luggage has not been determined; where ΔD X The third preset distance; D X The width of the luggage cart in the X-axis direction of the QR.
[0201] In this embodiment, the method in steps S200-S620 of Embodiment 1 can be used to traverse each preset point to be confirmed in QR sequentially, which will not be elaborated here; the preset point to be confirmed can be the coordinate point corresponding to the center point of W each time W moves in Embodiment 1.
[0202] In E300, when W is at the target confirmation point, if W does not coincide with any three-dimensional luggage grid and W satisfies all preset stacking conditions, then proceed to E400; otherwise, traverse the next confirmation point; where the target confirmation point is any preset confirmation point.
[0203] In this embodiment, although W does not coincide with any three-dimensional baggage grid when it is at the target confirmation point, and W satisfies all the preset stacking conditions, if the bottom surface of W is too high from the baggage already stacked below, or the volume of the baggage already stacked below is smaller than the volume of the baggage corresponding to W, then, due to the relevant regulations of civil aviation regarding baggage stacking, the target confirmation point cannot be determined as the stacking position corresponding to the baggage to be stacked.
[0204] E400, move W downwards by the fourth preset distance ΔHA.
[0205] If, at E500, the W position after moving down ΔHA does not coincide with any three-dimensional baggage grid, then the target point to be confirmed is not the corresponding placement position for the baggage to be placed; otherwise, proceed to E600.
[0206] In this embodiment, if W is moved downward by a fourth preset distance ΔHA and does not coincide with any three-dimensional luggage grid, it means that there is no luggage already placed within the distance range of ΔHA below the bottom of W, and the luggage to be placed is in a suspended state. At this time, if the robotic arm places the luggage to be placed to the target confirmation point, it will cause the luggage to be placed to be thrown down, which may damage the luggage.
[0207] E600 determines whether the target point to be confirmed is the corresponding stacking position of the luggage to be stacked, based on each three-dimensional luggage grid that coincides with W after moving downward ΔHA.
[0208] Furthermore, step E600 may include the following steps:
[0209] E610, obtain each 3D luggage mesh that coincides with W after moving downward ΔHA, to obtain the first 3D luggage mesh list G = (G1, G2, ..., G...). a , ..., G b ), a = 1, 2, ..., b; where G a Let b be the a-th 3D baggage grid that coincides with W after moving down ΔHA, and let b be the number of 3D baggage grids that coincide with W after moving down ΔHA.
[0210] In this embodiment, if W is moved down by a fourth preset distance ΔHA and coincides with several three-dimensional luggage grids, it means that there are already placed luggage within the distance range of ΔHA below the luggage to be placed. At this time, it is possible to obtain each three-dimensional luggage grid that coincides with W after being moved down by ΔHA.
[0211] E620, obtain the projected area of each three-dimensional luggage mesh in G on the bottom surface of W, so as to obtain the corresponding projected area list TG = (TG1, TG2, ..., TG2) of G. a , ..., TG b ); where TG a For G a The projected area on the bottom surface of W.
[0212] E630, based on TG, determine the total projected area of the base surface corresponding to G: ZG=∑ b a=1 TG a .
[0213] E640, if ZG / ZW≥DE, then proceed to E650; otherwise, determine that the target point to be confirmed is not the corresponding placement position of the luggage to be placed; ZW is the area of the bottom surface of W, DE is the preset first area ratio threshold, DE<1.
[0214] In this embodiment, the value of DE can be set to 0.9, or other values that are close to or equal to 1. If ZG / ZW≥DE, it means that the area of the lower surface of the baggage to be stacked is basically the same as the area of the upper surface of the baggage already stacked below. It can be considered that the size of the baggage to be stacked is not greater than the size of the baggage already stacked below. That is, there will be no situation where large baggage presses down on small baggage, which complies with the relevant regulations of civil aviation.
[0215] Furthermore, step E650 may include the following steps:
[0216] E651, when W is at the target point to be confirmed, W will be moved a fifth preset distance ΔHB along the preset direction of the Y-axis of QR.
[0217] E652, obtain the 3D luggage mesh that coincides with W after moving ΔHB along the Y-axis of QR, to obtain the second 3D luggage mesh list F = (F1, F2, ..., F c F d ), c = 1, 2, ..., d; where, F c The c-th 3D luggage grid is the W that is moved ΔHB along the preset direction of the Y-axis of QR, and d is the number of 3D luggage grids that are moved ΔHB along the preset direction of the Y-axis of QR.
[0218] E653, obtain the projected area of each 3D luggage mesh in F on the side of W perpendicular to the Y-axis, so as to obtain the corresponding projected area list TF = (TF1, TF2, ..., TF3) of F. c , ..., TF d ); where TF c For F c The projected area of W on the side perpendicular to the Y-axis.
[0219] E654, Based on TF, determine the total projected area of the side corresponding to F: ZF = ∑ d c=1 TF c .
[0220] E655, if ZF / ZW'≥DE', then the target point to be confirmed is determined as the placement position corresponding to the luggage to be placed; otherwise, the target point to be confirmed is determined not to be the placement position corresponding to the luggage to be placed; ZW' is the area of the side of W perpendicular to the Y-axis, DE' is the preset second area ratio threshold, DE'<1.
[0221] In this embodiment, during the luggage stacking process, there may be a situation where two already stacked luggage items each have handles that protrude from the overall luggage structure and also correspond to a three-dimensional luggage grid. In this case, during the process of traversing the stacking position corresponding to the luggage to be stacked, the current luggage item may be placed between the handles of the two already stacked luggage items. This will result in both luggage items having a large amount of space, which will have a certain impact on the subsequent luggage stacking.
[0222] Based on this, the method in steps E651-E655 can determine whether the side of the luggage to be placed is adjacent to the side of the luggage already placed, rather than adjacent to the handle of the luggage already placed, when the luggage is at the target confirmation point. This avoids the problem of leaving too much space on both sides of the luggage, which would affect the subsequent luggage placement. It also makes the luggage placement more compact and improves the space utilization of the luggage cart.
[0223] In this embodiment, during the process of determining the placement position of the current luggage to be placed, when W is at the target confirmation point, if W does not coincide with any three-dimensional luggage grid and W meets all the preset placement conditions, then W is moved down by a fourth preset distance ΔHA. If W after moving down ΔHA does not coincide with any three-dimensional luggage grid, then the target confirmation point is determined not to be the placement position of the luggage to be placed; otherwise, based on each three-dimensional luggage grid that coincides with W after moving down ΔHA, it is determined whether the target confirmation point is the placement position of the luggage to be placed. Through the above method, it is possible to determine whether the current luggage to be placed is in a suspended state, thereby avoiding the current luggage to be placed being thrown down, which would cause damage to the current luggage to be placed.
[0224] Example 7:
[0225] In the above embodiments, the process of stacking luggage did not consider whether the luggage was soft or hard. If hard luggage was placed on top of soft luggage, the soft luggage might be damaged. To avoid this situation, the following method is provided based on the above embodiments:
[0226] P100, obtain the three-dimensional coordinate system QR corresponding to the current luggage cart and the luggage enclosure W corresponding to the luggage to be stacked; wherein, QR includes several three-dimensional luggage grids corresponding to the luggage already stacked; the space of the luggage cart includes a lower space and an upper space, the lower space includes a first subspace for stacking the first type of luggage and a second subspace for stacking the second type of luggage; the hardness of the first type of luggage is less than that of the second type of luggage.
[0227] In this embodiment, before determining the placement position of the luggage to be placed, it is necessary to identify the luggage already placed on the current luggage cart. The luggage already placed can be identified by image recognition or LiDAR scanning. After the luggage is identified, it can be segmented to generate several three-dimensional luggage meshes containing point clouds corresponding to the luggage already placed. It can be understood that each three-dimensional luggage bounding box represents the corresponding space where luggage has been placed.
[0228] For luggage awaiting stacking, the size information of the corresponding luggage enclosure can be obtained through image recognition. At the same time, a three-dimensional coordinate system corresponding to the current luggage cart can be established to quantify the position of each space within the current luggage cart. The first type of luggage can be understood as a relatively hard suitcase, and the second type of luggage can be understood as a relatively soft pouch. When airport management personnel confirm the type of luggage, they can do so manually by labeling it, and subsequently obtain the luggage type corresponding to each piece of luggage awaiting stacking.
[0229] P200, if the luggage to be stacked is type 2 luggage, and type 1 luggage has already been stacked in the first subspace, then according to the size of W and the preset traversal rules, traverse each preset point to be confirmed in QR in turn.
[0230] In this embodiment, the first type of luggage has been placed in the first subspace, which means that softer luggage has been placed in the first subspace. The second type of luggage, i.e., harder luggage, cannot be placed on top of the first subspace to avoid the first type of luggage being crushed.
[0231] Furthermore, step P200 may include the following steps:
[0232] P221, obtain the first preset value NUM1 = 0, the second preset value NUM2 = 0 and the third preset value NUM3 = 0; and place W at the origin position corresponding to W in QR.
[0233] P222, if NUM1×ΔL Y <L Y -L W Then proceed to page 223; where L Y Let L be the length of the luggage cart in the Y-axis direction of the QR line. W Let W be the length of W along the Y-axis; ΔL Y This is the first preset distance.
[0234] P223, determine whether W coincides with at least one of several three-dimensional luggage grids, and determine whether W satisfies all preset stacking conditions.
[0235] P224, If W coincides with at least one of the several three-dimensional luggage grids, or if W does not satisfy at least one of the preset stacking conditions, then W will be moved ΔL along the Y-axis. Y Update NUM1 = NUM1 + 1 and proceed to P222; otherwise, determine the current position of W as the placement position for the luggage to be placed.
[0236] Furthermore, step P222 may also include: if NUM1×ΔL Y ≥L Y -L W Then proceed to page 225.
[0237] P225, if NUM2×ΔH Z <H Z -H W If yes, proceed to E226; otherwise, proceed to E227; where ΔH Z H is the second preset distance; Z The height of the luggage cart in the Z-axis direction of the QR.
[0238] P226, update NUM1 = 0, update NUM2 = NUM2 + 1, and place W in the middle position QE. W =(W X +NUM3×ΔD X W Y W Z +NUM2×ΔH Z At point ), proceed to page 222.
[0239] P227, if NUM3×ΔD X <D X -D W Update NUM1 = 0, update NUM2 = 0, update NUM3 = NUM3 + 1, and place W in the middle position QE. W =(W X +NUM3×ΔD X W Y W Z +NUM2×ΔH Z If the location is not specified, proceed to P222; otherwise, determine that the corresponding placement location for the luggage to be placed has not been determined; where ΔD X The third preset distance; D X The width of the luggage cart in the X-axis direction of the QR.
[0240] In this embodiment, the method of sequentially traversing each preset point to be confirmed in QR according to the size of W and the preset traversal rules is the same as the method in steps S200-S620 of Example 1, and will not be repeated here; the preset point to be confirmed can be the coordinate point corresponding to the center point of W each time W moves in Example 1.
[0241] P300: When W is at the target confirmation point, if W does not coincide with any three-dimensional luggage grid and W satisfies all preset stacking conditions, then proceed to P400; otherwise, traverse the next confirmation point; where the target confirmation point is any preset confirmation point.
[0242] In this embodiment, when W is at the target confirmation point, if W does not coincide with any three-dimensional luggage grid and W satisfies all the preset stacking conditions, it means that the target confirmation point satisfies the preset stacking conditions. It may be the stacking position corresponding to the current luggage to be stacked. However, it is still necessary to further determine whether there is a situation where hard luggage is pressing soft luggage.
[0243] P400, if the target point to be confirmed is not a point to be confirmed located above the first subspace, then the target point to be confirmed is determined as the placement position corresponding to the luggage to be placed; otherwise, traverse the next point to be confirmed.
[0244] In this embodiment, the target confirmation point is not the confirmation point located above the first subspace, but the luggage to be stacked is the second type of luggage. The first type of luggage has already been stacked in the first subspace. At this time, stacking the luggage to be stacked to the target confirmation point will not crush the first type of luggage.
[0245] Furthermore, after step P400, the method further includes the following steps:
[0246] P500, if the luggage to be stacked is type 2 luggage, and type 1 luggage is not stacked in the first subspace, then according to the size of W and the preset traversal rules, traverse each preset point to be confirmed in QR in turn.
[0247] P510, when W is at the target confirmation point, if W does not coincide with any three-dimensional luggage grid and W satisfies all the preset placement conditions, then the target confirmation point is determined as the placement position corresponding to the luggage to be placed; otherwise, traverse the next confirmation point; where the target confirmation point is any preset confirmation point.
[0248] In this embodiment, since no first type of luggage is placed in the first subspace, that is, no soft luggage is placed in the first subspace, the second type of luggage can be placed in any position in the lower or upper space without compromising the soft luggage.
[0249] Furthermore, after step P400, the method may further include the following steps:
[0250] P600, if the luggage to be stacked is type 1 luggage, then according to the size of W and the preset traversal rules, traverse each preset point to be confirmed in QR in turn.
[0251] P610, when W is at the target confirmation point, if W does not coincide with any three-dimensional luggage grid and W satisfies all the preset stacking conditions, then the target confirmation point is determined as the stacking position corresponding to the luggage to be stacked; otherwise, traverse the next confirmation point; where the target confirmation point is any preset confirmation point.
[0252] In this embodiment, when the luggage to be stacked is soft luggage, regardless of whether there is first type luggage stacked in the first subspace, the luggage to be stacked can be placed in any position in the luggage cart without causing hard luggage to press down on soft luggage. It should be noted that in this embodiment, first type luggage can press down on first type luggage, that is, soft luggage can press down on soft luggage.
[0253] In this embodiment, the space of the luggage cart is divided into a lower space and an upper space. The lower space includes a first subspace for stacking first type luggage and a second subspace for stacking second type luggage. The hardness of the first type luggage is less than that of the second type luggage. If the luggage to be stacked is second type luggage, and first type luggage has already been stacked in the first subspace, then according to the size of W and the preset traversal rules, each preset point to be confirmed in the three-dimensional coordinate system corresponding to the luggage cart is traversed sequentially. When W is at the target point to be confirmed, if W does not coincide with any three-dimensional luggage grid, and W satisfies all preset stacking conditions, and the target point to be confirmed is not a point to be confirmed located above the first subspace, then the target point to be confirmed is determined as the stacking position corresponding to the luggage to be stacked. Through the method in this invention, it can be ensured that luggage with greater hardness will not be stacked on top of luggage with less hardness, thereby avoiding the situation where softer luggage is crushed by harder luggage.
[0254] Example 8:
[0255] In Example 1, the termination condition for the three-level loop is a preset distance. However, the preset distance may not be sufficient for all luggage carts, causing luggage to be stacked to exceed the stacking space of the luggage cart when it is in the determined stacking position. To avoid this situation, the following method is provided:
[0256] F100, obtain the three-dimensional coordinate system QR corresponding to the current luggage cart and the luggage surrounding box W corresponding to the luggage to be stacked; wherein, QR includes several three-dimensional luggage meshes corresponding to the luggage that has already been stacked.
[0257] In this embodiment, before determining the placement position of the luggage to be placed, it is necessary to identify the luggage already placed on the current luggage cart. The luggage already placed can be identified by image recognition or LiDAR scanning. After the luggage is identified, it can be segmented to generate several three-dimensional luggage meshes containing point clouds corresponding to the luggage already placed. It can be understood that each three-dimensional luggage bounding box represents the corresponding space where luggage has been placed.
[0258] For luggage to be stacked, the size information of the luggage enclosure corresponding to the luggage to be stacked can be obtained through image recognition; at the same time, a three-dimensional coordinate system corresponding to the current luggage cart can be established to quantify the position of each space within the current luggage cart space.
[0259] F200, set the virtual bounding box corresponding to the virtual luggage in QR; wherein, the virtual bounding box is located outside the current luggage cart, and the virtual bounding box is adjacent to the four sides of the current luggage cart; the side of the adjacent virtual bounding box has the same size as the side of the current luggage cart.
[0260] In this embodiment, after the luggage is detected, a virtual bounding box is set around the luggage cart, close to the luggage cart. The virtual bounding box is a three-dimensional rectangle and is used to represent the outer area of the luggage cart.
[0261] F300, based on the size of W and the preset traversal rules, sequentially traverses each preset point to be confirmed in QR; where, when W is at the target point to be confirmed, if W does not coincide with any three-dimensional luggage grid, does not coincide with the virtual bounding box, and W satisfies all preset stacking conditions, then the target point to be confirmed is determined as the stacking position corresponding to the luggage to be stacked.
[0262] Furthermore, step F300 may include the following steps:
[0263] F310, obtain the first preset value NUM1=0, the second preset value NUM2=0 and the third preset value NUM3=0; and place W at the origin position corresponding to W in QR.
[0264] In this embodiment, the origin position of W in QR is the same as that of W in QR in Embodiment 1, and will not be described again here.
[0265] F320 determines whether W coincides with the virtual bounding box.
[0266] In this embodiment, the virtual bounding box is set with maximum and minimum X, Y and Z axis coordinates. The method for determining whether W coincides with the three-dimensional luggage mesh in Embodiment 1 can be used to determine whether W coincides with the virtual bounding box, which will not be elaborated here.
[0267] F330, if W does not coincide with the virtual bounding box, then proceed to F340; otherwise, proceed to F350;
[0268] In this embodiment, if W does not coincide with the virtual bounding box, it means that W, at its current position in the QR, has not exceeded the current luggage cart's stacking space.
[0269] F340, if W does not coincide with any three-dimensional baggage grid and W satisfies all preset stacking conditions, then the target point to be confirmed is determined as the stacking position corresponding to the baggage to be stacked; otherwise, W is moved ΔL along the Y-axis. Y ; where ΔL Y Set the first preset distance and enter F320.
[0270] In this embodiment, step F340 is the same as step S500 in embodiment one, and will not be described again here.
[0271] Furthermore, step F350 includes the following steps:
[0272] F351, if NUM2×ΔH Z <H Z -H W If so, then update NUM2 = NUM2 + 1.
[0273] In this embodiment, if NUM2×ΔH Z <H Z -H W This indicates that the traversal along the Z-axis has not yet been completed.
[0274] F352, place W in the middle position QE W =(W X +NUM3×ΔD X W Y W Z +NUM2×ΔH Z At point ), determine whether W coincides with the virtual bounding box; ΔH Z The second preset distance; ΔD X This is the third preset distance.
[0275] F353, if W does not coincide with the virtual bounding box, proceed to F340; otherwise, update NUM2 = 0, update NUM3 = NUM3 + 1, and place W in the middle position QE. W =(W X +NUM3×ΔD X W Y W Z +NUM2×ΔH Z At point ), determine whether W coincides with the virtual bounding box.
[0276] If W does not coincide with the virtual bounding box, proceed to F340; otherwise, determine that the placement position of the luggage to be placed has not been determined.
[0277] In this embodiment, it should be noted that after each movement, it is necessary to first determine whether W coincides with the virtual bounding box to determine whether W exceeds the current luggage cart's stacking space after the movement. It is understood that this embodiment uses the virtual bounding box as the end condition for traversal, while in Embodiment 1, a preset traversal distance is used as the end condition. Since there are multiple luggage carts, and the dimensions of each cart are not absolutely identical, there will be slight differences. If a fixed traversal distance is used as the end condition, it may cause the luggage to be stacked to exceed the luggage cart's stacking space at the determined stacking position. In this embodiment, the current luggage cart's stacking space is visually identified, and then a corresponding virtual bounding box is set, thus avoiding the aforementioned problem.
[0278] In this embodiment, a three-dimensional coordinate system QR corresponding to the current luggage cart and a luggage bounding box W corresponding to the luggage to be stacked are obtained. The QR includes several three-dimensional luggage grids corresponding to already stacked luggage. A virtual bounding box corresponding to virtual luggage is set in the QR. The virtual bounding box is located outside the current luggage cart and is adjacent to the four sides of the current luggage cart. The sides of adjacent virtual bounding boxes have the same dimensions as the sides of the current luggage cart. Based on the dimensions of W and preset traversal rules, each preset point to be confirmed in the QR is traversed sequentially. When W is at a target point to be confirmed, if W does not coincide with any three-dimensional luggage grid, does not coincide with any virtual bounding box, and satisfies all preset stacking conditions, then the target point to be confirmed is determined as the stacking position corresponding to the luggage to be stacked. This ensures that the stacking position corresponding to the luggage to be stacked is determined without exceeding the space range of the luggage cart.
[0279] Furthermore, the placement position of the luggage to be placed is determined based on the size of the luggage already placed on the current luggage cart and the luggage to be placed. Therefore, the determined placement position of the luggage to be placed is more in line with the remaining placement space of the current luggage cart, making the luggage placement more compact and neat, and improving the space utilization rate of the luggage cart.
[0280] Furthermore, although the steps of the method in this disclosure are described in a specific order in the accompanying drawings, this does not require or imply that the steps must be performed in that specific order, or that all the steps shown must be performed to achieve the desired result. Additional or alternative steps may be omitted, multiple steps may be combined into one step, and / or a step may be broken down into multiple steps.
[0281] Embodiments of the present invention also provide a non-transitory computer-readable storage medium that can be disposed in an electronic device to store at least one instruction or at least one program related to implementing a method in the method embodiments, wherein the at least one instruction or the at least one program is loaded and executed by the processor to implement the method provided in the above embodiments.
[0282] The program product may employ any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of readable storage media (a non-exhaustive list) include: an electrical connection having one or more wires, a portable disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.
[0283] Computer-readable signal media may include data signals propagated in baseband or as part of a carrier wave, carrying readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A readable signal medium may also be any readable medium other than a readable storage medium, capable of sending, propagating, or transmitting programs for use by or in conjunction with an instruction execution system, apparatus, or device.
[0284] The program code contained on the readable medium may be transmitted using any suitable medium, including but not limited to wireless, wired, optical fiber, RF, etc., or any suitable combination thereof.
[0285] Program code for performing the operations of this application can be written in any combination of one or more programming languages, including object-oriented programming languages such as Java and C++, and conventional procedural programming languages such as C or similar languages. The program code can execute entirely on the user's computing device, partially on the user's device, as a standalone software package, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing device can be connected to the user's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computing device (e.g., via the Internet using an Internet service provider).
[0286] Embodiments of the present invention also provide an electronic device, including a processor and the aforementioned non-transitory computer-readable storage medium.
[0287] The electronic device is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments in this application.
[0288] Electronic devices are manifested in the form of general-purpose computing devices. Components of an electronic device may include, but are not limited to: at least one processor, at least one memory, and a bus connecting different system components (including memory and processor).
[0289] The memory stores program code that can be executed by the processor, causing the processor to perform the steps in the various embodiments described in this specification.
[0290] The memory may include readable media in the form of volatile memory, such as random access memory (RAM) and / or cache memory, and may further include read-only memory (ROM).
[0291] The memory may also include programs / utilities having a set (at least one) of program modules, including but not limited to: an operating system, one or more application programs, other program modules, and program data, each or some combination of these examples may include an implementation of a network environment.
[0292] A bus can represent one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, a graphics acceleration port, a processor, or a local bus that uses any of the various bus structures.
[0293] The electronic device can also communicate with one or more external devices (e.g., keyboards, pointing devices, Bluetooth devices, etc.), one or more devices that enable a user to interact with the electronic device, and / or any device that enables the electronic device to communicate with one or more other computing devices (e.g., routers, modems, etc.). This communication can be performed via input / output (I / O) interfaces. Furthermore, the electronic device can communicate with one or more networks (e.g., local area networks (LANs), wide area networks (WANs), and / or public networks, such as the Internet) via a network adapter. The network adapter communicates with other modules of the electronic device via a bus. It should be understood that, although not shown in the figures, other hardware and / or software modules can be used in conjunction with the electronic device, including but not limited to: microcode, device drivers, redundant processors, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.
[0294] From the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solutions according to the embodiments of this disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (such as a CD-ROM, USB flash drive, external hard drive, etc.) or on a network, including several instructions to cause a computing device (such as a personal computer, server, terminal device, or network device, etc.) to execute the methods according to the embodiments of this disclosure.
[0295] Embodiments of the present invention also provide a computer program product including program code, which, when the program product is run on an electronic device, causes the electronic device to perform the steps of the methods described above in various exemplary embodiments of the present invention.
[0296] While specific embodiments of the invention have been described in detail by way of examples, those skilled in the art should understand that the examples are for illustrative purposes only and are not intended to limit the scope of the invention. Those skilled in the art should also understand that various modifications can be made to the embodiments without departing from the scope and spirit of the invention.
Claims
1. A method for determining the luggage stacking position based on overlapping area, characterized in that, The method includes the following steps: E100, obtain the three-dimensional coordinate system QR corresponding to the current luggage cart and the luggage enclosure W corresponding to the luggage to be stacked; wherein, QR includes several three-dimensional luggage meshes corresponding to the luggage that has already been stacked; E200, based on the size of W and the preset traversal rules, sequentially traverses each preset point to be confirmed in QR; E300: When W is at the target confirmation point, if W does not coincide with any three-dimensional luggage grid and W satisfies all preset stacking conditions, then proceed to E400; otherwise, traverse the next confirmation point; where the target confirmation point is any preset confirmation point. E400, move W downwards by the fourth preset distance ΔHA; E500, if W after moving down ΔHA does not coincide with any three-dimensional baggage grid, then the target point to be confirmed is not the corresponding placement position for the baggage to be placed; otherwise, proceed to E600. E600 determines whether the target point to be confirmed is the corresponding stacking position of the luggage to be stacked, based on each three-dimensional luggage grid that coincides with W after moving downward ΔHA.
2. The method for determining luggage stacking position based on overlapping area according to claim 1, characterized in that, Step E600 includes the following steps: E610, obtain each 3D luggage mesh that coincides with W after moving downward ΔHA, to obtain the first 3D luggage mesh list G = (G1, G2, ..., G...). a , ..., G b ), a = 1, 2, ..., b; where G a Let b be the a-th 3D baggage grid that coincides with W after moving down ΔHA; E620, obtain the projected area of each three-dimensional luggage mesh in G on the bottom surface of W, so as to obtain the corresponding projected area list TG = (TG1, TG2, ..., TG2) of G. a , ..., TG b ); where TG a For G a The projected area on the bottom surface of W; E630, based on TG, determine the total projected area of the base surface corresponding to G: ZG=∑ b a=1 TG a ; E640, if ZG / ZW≥DE, then proceed to E650; otherwise, determine that the target point to be confirmed is not the corresponding placement position of the luggage to be placed; ZW is the area of the bottom surface of W, DE is the preset first area ratio threshold, DE<1.
3. The method for determining luggage stacking position based on overlapping area according to claim 1, characterized in that, Step E650 includes the following steps: E651, when W is at the target confirmation point, W will be moved a fifth preset distance ΔHB along the preset direction of the Y-axis of QR; E652, obtain the 3D luggage mesh that coincides with W after moving ΔHB along the Y-axis of QR, to obtain the second 3D luggage mesh list F = (F1, F2, ..., F c F d ), c = 1, 2, ..., d; where, F c The c-th 3D luggage mesh that coincides with W after moving ΔHB along the preset direction of the Y-axis of QR, and d is the number of 3D luggage meshes that coincide with W after moving ΔHB along the preset direction of the Y-axis of QR. E653, obtain the projected area of each 3D luggage mesh in F on the side of W perpendicular to the Y-axis, so as to obtain the corresponding projected area list TF = (TF1, TF2, ..., TF3) of F. c , ..., TF d ); where TF c For F c The projected area of W on the side perpendicular to the Y-axis; E654, Based on TF, determine the total projected area of the side corresponding to F: ZF = ∑ d c=1 TF c ; E655, if ZF / ZW'≥DE', then the target point to be confirmed is determined as the placement position corresponding to the luggage to be placed; otherwise, the target point to be confirmed is determined not to be the placement position corresponding to the luggage to be placed; ZW' is the area of the side of W perpendicular to the Y-axis, DE' is the preset second area ratio threshold, DE'<1.
4. The method for determining luggage stacking position based on overlapping area according to claim 1, characterized in that, Step E200 includes the following steps: E221, obtain the first preset value NUM1 = 0, the second preset value NUM2 = 0 and the third preset value NUM3 = 0; and place W at the origin position corresponding to W in QR; E222, if NUM1×ΔL Y <L Y -L W Then proceed to E223; where L Y Let L be the length of the luggage cart in the Y-axis direction of the QR line. W Let W be the length of W along the Y-axis; ΔL Y The first preset distance; E223, determine whether W coincides with at least one of several three-dimensional luggage grids, and determine whether W satisfies all preset stacking conditions; E224, if W coincides with at least one of the several three-dimensional luggage grids or if W does not satisfy at least one of the preset stacking conditions, then W will be moved ΔL along the Y-axis. Y Update NUM1 = NUM1 + 1 and proceed to E222; otherwise, determine the current position of W as the placement position for the luggage to be placed.
5. The method for determining luggage stacking position based on overlapping area according to claim 4, characterized in that, The origin position corresponding to W in QR is QR. W =(W X W Y W Z ); where W X Let W be the x-axis coordinate of the origin position corresponding to W in QR. Y Let W be the y-axis coordinate of the origin position corresponding to W in QR. Z Let W be the Z-axis coordinate of the origin position corresponding to W in QR; X =L W / 2;W Y =D W / 2;W Z =H W / 2;D W Let W be the width of W along the X-axis, and H be the width of W along the X-axis. W Let W be the height of W in the Z-axis direction.
6. The method for determining luggage stacking position based on overlapping area according to claim 5, characterized in that, Step E222 also includes: if NUM1×ΔL Y ≥L Y -L W Then proceed to E225; E225, if NUM2×ΔH Z <H Z -H W If yes, proceed to E226; otherwise, proceed to E227; where ΔH Z H is the second preset distance; Z The height of the luggage cart along the Z-axis in the QR direction; E226, update NUM1 = 0, update NUM2 = NUM2 + 1, and place W in the middle position QE W =(W X +NUM3×ΔD X W Y W Z +NUM2×ΔH Z At point ), enter E222; E227, if NUM3×ΔD X <D X -D W Update NUM1 = 0, update NUM2 = 0, update NUM3 = NUM3 + 1, and place W in the middle position QE. W =(W X +NUM3×ΔD X W Y W Z +NUM2×ΔH Z If the location is not specified, proceed to E222; otherwise, determine that the designated placement location for the luggage has not been determined; where ΔD X The third preset distance; D X The width of the luggage cart in the X-axis direction of the QR.
7. The method for determining luggage stacking position based on overlapping area according to claim 6, characterized in that, ΔL Y =ΔH Z =ΔD X =20mm。 8. A non-transitory computer-readable storage medium storing at least one instruction or at least one program segment, characterized in that, The at least one instruction or the at least one program segment is loaded and executed by the processor to implement the baggage stacking position determination method based on overlapping area as described in any one of claims 1-7.
9. An electronic device, characterized in that, Includes a processor and the non-transitory computer-readable storage medium as described in claim 8.