Intelligent unstacking data acquisition method and device and storage medium
Patent Information
- Application Number
- CN202510094200.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-21
- Publication Date
- 2025-05-30
Smart Images

Figure CN120070745A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the technical field of data processing, and particularly to a method, device, and storage medium for collecting intelligent palletizing data. Background Art
[0002] Currently, the data collection method for the intelligent palletizing model of robots mainly relies on the real environment built manually. However, the real environment is restricted by physical space and equipment, resulting in the inability to simulate all possible palletizing scenarios during data collection. Some special stack shapes or irregular stacking of goods are difficult to achieve within the limited physical space, thus limiting the diversity of the training data for the intelligent palletizing model.
[0003] The above content is only used to assist in understanding the technical solution of this application, and does not represent an admission that the above content is prior art. Summary of the Invention
[0004] The main purpose of this application is to provide a method, device, and storage medium for collecting intelligent palletizing data, aiming to solve the technical problem of how to improve the diversity of the training data for the intelligent palletizing model.
[0005] To achieve the above purpose, this application proposes a method for collecting intelligent palletizing data, and the method for collecting intelligent palletizing data includes: Obtain the model parameters of the three-dimensional model required to generate the intelligent palletizing data set; Generate random stack data through a stack shape generation algorithm according to the model parameters; Configure the environmental parameters of the simulation environment, and build the simulation environment according to the random stack data; Run the simulation environment, collect simulation data, and save the simulation data as the intelligent palletizing data set.
[0006] In one embodiment, the step of generating random stack data through a stack shape generation algorithm according to the model parameters includes: Determine the total number of stacked objects in the random stack data to be generated according to the model parameters; Based on the stack shape generation algorithm, determine the position of each stacked object in the random stack; Generate the corresponding random stack data according to the position of each stacked object and the total number of stacked objects.
[0007] In one embodiment, the step of determining the position of each stacked object in the random stack based on the stack shape generation algorithm includes: Determine the initial position of the stacked object according to the size of the pallet in the model parameters; Determine the position of the next stack based on the initial position of the stack and the size of the stack in the model parameters, and update it to the initial position; If the number of stacks reaches the total number of stacks, end the stack shape generation algorithm; Otherwise, jump to execute the step of determining the position of the next stack based on the initial position of the stack and the size of the stack in the model parameters, and updating it to the initial position.
[0008] In one embodiment, the step of "if the number of stacks reaches the total number of stacks, end the stack shape generation algorithm" includes: Check whether the position of the next stack is already occupied; Take the unoccupied position of the next stack as the stack position and mark it as occupied; Take the number of occupied stack positions as the number of stacks, compare the number of stacks with the total number of stacks, and end the stack shape generation algorithm.
[0009] In this embodiment, the steps of configuring the environmental parameters of the simulation environment and building the simulation environment according to the random stack data include: Configure the environmental parameters of the simulation environment and the parameters of the virtual 3D camera according to the model parameters and the specific requirements of the simulation; Import the generated random stack data into the simulation environment according to the position of the virtual 3D camera, build the simulation environment to collect simulation data.
[0010] In one embodiment, the steps of running the simulation environment, collecting simulation data, and saving the simulation data as the intelligent palletizing and depalletizing dataset include: Start the running engine of the simulation environment to simulate the stacking process of the stacks on the pallet; Collect the dynamic data of the stacking process through the virtual 3D camera in the simulation environment as the simulation data; Save the collected simulation data into the database as the intelligent palletizing and depalletizing dataset.
[0011] In one embodiment, the steps of running the simulation environment, collecting simulation data, and saving the simulation data as the intelligent palletizing and depalletizing dataset further include: Run the simulation environment, and render the simulation data of the simulation environment to the user interface in real time to display the stacking process of the stacks in the simulation environment; Respond to the operation of the user on the user interface, convert the operation into a corresponding adjustment instruction, and adjust the simulation process in the simulation environment accordingly.
[0012] In one embodiment, after the steps of running the simulation environment, collecting simulation data, and saving the simulation data as the intelligent palletizing dataset, the following steps are included: Clean and format the intelligent palletizing dataset, and divide the processed intelligent palletizing dataset into a training set and a test set; Train the intelligent palletizing model based on the training set, and adjust the parameters of the intelligent palletizing model through the cross-validation method; Evaluate the performance of the intelligent palletizing model based on the test set, and further adjust the parameters of the intelligent palletizing model according to the evaluation results.
[0013] In addition, to achieve the above object, the present application also provides a device for collecting intelligent palletizing data. The device includes: a memory, a processor, and a computer program stored on the memory and executable on the processor. The computer program is configured to implement the steps of the method for collecting intelligent palletizing data as described above.
[0014] In addition, to achieve the above object, the present application also provides a storage medium. The storage medium is a computer-readable storage medium, and a computer program is stored on the storage medium. When the computer program is executed by a processor, it implements the steps of the method for collecting intelligent palletizing data as described above.
[0015] The present application provides a method for collecting intelligent palletizing data. First, the present application obtains the model parameters of the three-dimensional model required to generate the intelligent palletizing dataset; according to the model parameters, random pallet data is generated through a pallet shape generation algorithm; the environmental parameters of the simulation environment are configured, and according to the random pallet data, the simulation environment is built; the simulation environment is run, simulation data is collected, and the simulation data is saved as the intelligent palletizing dataset. By obtaining the model parameters of the three-dimensional model and using the pallet shape generation algorithm, the present application can efficiently generate a large amount of random pallet data. The randomly generated pallet data can simulate various complex situations that may occur in the actual scenario, improving data diversity. By configuring the environmental parameters of the simulation environment to simulate different actual scenarios, the simulation environment can simulate complex physical and interaction processes, improving the diversity of the collected data. The present application achieves the technical effect of improving the diversity of the training data of the intelligent palletizing model. Description of the Drawings
[0016] The accompanying drawings here are incorporated into the specification and form a part of this specification, showing embodiments consistent with the present application, and are used together with the specification to explain the principles of the present application.
[0017] To more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the following will briefly introduce the accompanying drawings required for the description of the embodiments or the prior art. Obviously, for those of ordinary skill in the art, without creative efforts, other drawings can also be obtained based on these drawings.
[0018] Figure 1 It is a schematic flowchart provided for the first embodiment of the method for collecting intelligent palletizing data of the present application; Figure 2 It is a schematic flowchart provided for the second embodiment of the method for collecting intelligent palletizing data of the present application; Figure 3 It is a schematic flowchart of the stack shape generation algorithm provided for the second embodiment of the method for collecting intelligent palletizing data of the present application; Figure 4 It is the first schematic flowchart provided for the third embodiment of the method for collecting intelligent palletizing data of the present application; Figure 5 It is the second schematic flowchart provided for the third embodiment of the method for collecting intelligent palletizing data of the present application; Figure 6 It is a schematic flowchart provided for the fourth embodiment of the method for collecting intelligent palletizing data of the present application; Figure 7 It is a schematic overall flowchart provided for the method for collecting intelligent palletizing data of the present application; Figure 8 It is a schematic flowchart of the random stack shape generation process provided for the method for collecting intelligent palletizing data of the present application; Figure 9 It is a schematic diagram of the device structure of the hardware operating environment involved in the method for collecting intelligent palletizing data in the embodiments of the present application.
[0019] The implementation, functional features, and advantages of the purpose of the present application will be further described with reference to the embodiments and the accompanying drawings. Specific embodiments
[0020] It should be understood that the specific embodiments described herein are only used to explain the technical solutions of the present application and are not used to limit the present application.
[0021] To better understand the technical solutions of the present application, the following will be described in detail with reference to the accompanying drawings of the specification and the specific embodiments.
[0022] The main solution of the embodiments of the present application is: Currently, the data acquisition method of the robot intelligent palletizing and depalletizing model mainly relies on the real environment built manually. However, the real environment is restricted by physical space and equipment, resulting in the inability to simulate all possible depalletizing scenarios during the data acquisition process. Some special pallet shapes or irregular stacking of goods are difficult to achieve in the limited physical space, thus restricting the diversity of the training data of the intelligent depalletizing model.
[0023] In this application, by obtaining the model parameters of the three-dimensional model and using the pallet shape generation algorithm, a large number of random pallet data can be efficiently generated. The randomly generated pallet data can simulate various complex situations that may occur in the actual scenario, improving data diversity. By configuring the environmental parameters of the simulation environment to simulate different actual scenarios, the simulation environment can simulate complex physical and interaction processes, improving the diversity of the collected data.
[0024] It should be noted that the execution subject of this embodiment can be the data acquisition device for intelligent depalletizing data, or a computing service device with data processing, network communication, and program running functions, such as a tablet computer, a personal computer, a mobile phone, etc., or a control device capable of realizing the acquisition of intelligent depalletizing data with the above functions. This embodiment does not make specific limitations in this regard. Taking the data acquisition device for intelligent depalletizing data as the execution subject as an example, this embodiment and the following embodiments will be described.
[0025] Embodiment 1 Based on this, the present application proposes a method for collecting intelligent depalletizing data in the first embodiment. Please refer to Figure 1 , the method for collecting intelligent depalletizing data includes: Step S10, obtaining the model parameters of the three-dimensional model required to generate the intelligent depalletizing data set.
[0026] Obtaining the model parameters of the three-dimensional model required to generate the data set provides the basic data for the subsequent pallet shape generation algorithm, so as to be able to generate three-dimensional pallet shape data that meets the actual requirements.
[0027] In this embodiment, the three-dimensional model is a data set used to represent the shape and appearance of an object in three-dimensional space, composed of elements such as vertices, edges, and faces, describing the geometric shape and surface attributes of the object. The model parameters refer to the numerical values or variables that define the shape, size, position, and other attributes of the three-dimensional model, determining the appearance and behavior of the model, and are the basis for model construction and simulation, including parameters such as pallet size, types and sizes of stacked objects, etc.
[0028] The model data can include that the model parameters can include pallet data and stacked object data. Among them, the pallet data includes size parameters such as the length, width, and height of the pallet. The stacked object data includes the types and sizes of the stacked objects. For example, the types can be described as small, medium, large, etc., and the size data includes length, width, height, etc.
[0029] As an alternative implementation, during the process of obtaining the model parameters of the 3D model, first establish a connection with the database, and then determine the query conditions according to the data acquisition requirements and read the model parameters from the database based on the query conditions.
[0030] When establishing a connection with the database, determine the access method of the database according to the type of the database, and use the corresponding access method to establish a connection to the database according to the configured database connection parameters.
[0031] After establishing the connection, according to the type of the 3D model for which the model parameters need to be obtained, as well as the table structure in the database, determine the model parameter information contained in the database, and use the model number, type code or name as the corresponding query condition; According to the query conditions, construct an SQL query statement to ensure that the query conditions match the data types and formats of the database fields, execute the SQL query statement and capture the query results to obtain the model parameters of the required 3D model.
[0032] As another alternative implementation, according to the 3D model file required for generating the intelligent palletizing dataset imported by the user through code, parse the 3D model file and extract the parameter information in the 3D model file.
[0033] As another alternative implementation, use the pallet size input by the user in the input box of the user interface, as well as the size and type information of the stacked objects, as the model parameters of the 3D model.
[0034] Optionally, based on the size of the pallet, determine the type and size of the corresponding stacked objects through a preset mapping relationship, and save the pallet size and the type and size of the stacked objects as a type of model parameter.
[0035] Among them, the mapping relationship includes mapping based on size and mapping based on industry regulations. For mapping based on size, for large-sized pallets, set the large-sized stacked objects that match them as a set of mapping relationships. For mapping based on industry regulations, establish a mapping relationship according to the standards or specifications in the industry regarding the pallet size and the type and size of the stacked objects.
[0036] Exemplarily, according to the pallet size of pallet A, determine that the stacked objects corresponding to pallet A are stacked object A and stacked object B, obtain the sizes of stacked object A and stacked object B, and save the size of pallet A and its corresponding stacked object A and stacked object B as a type of model parameter.
[0037] Exemplarily, according to industry regulations, the stacked objects corresponding to pallet B are stacked object B and stacked object C, obtain the size of pallet B and its corresponding stacked object B and stacked object C, and save them as a type of model parameter.
[0038] Step S20: Generate random stack data according to the model parameters through a stack shape generation algorithm.
[0039] In this embodiment, the stack shape generation algorithm is a computer program or algorithm. According to the input model parameters, through calculation and reasoning, considering the relative positional relationship between the stacked objects and the pallet, it generates random stack data that meets the requirements. The random stack data includes the arrangement and relative positional relationship of the stacked objects on the pallet.
[0040] As an alternative implementation, input the model parameters into the stack shape generation algorithm. The stack shape generation algorithm calculates the positions of the stacked objects on the pallet according to the input parameters, generates random stack data and outputs it. Among them, the random stack data includes information such as the specific positions, arrangement, and stacking height of the stacked objects on the pallet.
[0041] Further, through the stack shape generation algorithm, search for the position points for placing the stacked objects according to the size of the pallet, and compare according to the size of the stacked objects and the available space at the position points to ensure that the stacked objects can be placed at these position points. Mark the occupied position points as used positions, and compare the number of stacked objects and the number of used positions to ensure that all stacked objects are successfully placed, and the random stack generation is completed.
[0042] As another alternative implementation, input the model parameters into the stack shape generation algorithm. The stack shape generation algorithm calculates all available stack shapes of the random stack data based on the number of stacked objects according to the input parameters. Then randomly select one stack shape from all stack shapes as the random stack data.
[0043] Step S30: Configure the environmental parameters of the simulation environment and build the simulation environment according to the random stack data.
[0044] In this embodiment, the simulation environment is a virtual environment used to simulate the stack stacking process in the real world. The environmental parameters refer to various settings and conditions that affect the behavior of the simulation environment, including light, temperature, humidity, gravity, object material, friction coefficient, etc. The random stack shape data is a series of randomly generated data that describes the arrangement and stacking of the stacked objects in space, including information such as the positions, orientations, sizes, and shapes of the stacked objects, and is used to create complex and irregular object stacking scenarios in the simulation environment.
[0045] Exemplarily, according to the specific requirements of the simulation, adjust the light intensity and direction, and set the magnitude and direction of gravity. Import the random stack data into the simulation environment, and create the corresponding object stacking scenario in the simulation environment according to the imported random stack data.
[0046] Optionally, step S30 includes: Step S31: Configure the environmental parameters of the simulation environment and the parameters of the virtual 3D camera according to the model parameters and the specific requirements of the simulation.
[0047] According to the dimensions of the cartons, stacking rules, etc. in the model parameters, as well as the specific requirements such as the dimensions and lighting conditions of the simulation environment, configure the environmental parameters of the simulation environment and the parameters of the virtual 3D camera. This ensures that the simulation environment can truly reflect the actual situation, and the virtual 3D camera can capture detailed images of the stacking process of the stacked objects, providing accurate data for subsequent simulation analysis and processing.
[0048] In this embodiment, the model parameters refer to the parameters used to describe the 3D model of the stacked objects, including the dimensions, weights, stacking methods, etc. of the stacked objects. The simulation environment refers to the virtual environment used to simulate the actual stacking situation of the stacked objects, including environmental parameters such as the lighting and dimensions of the environment. The virtual 3D camera is a device used to capture images in the simulation environment, and the parameters of the virtual 3D camera include position, angle, focal length, etc., which are used to generate images similar to the real world.
[0049] Exemplarily, according to the dimensions of the pallet, as well as the dimensions and stacking rules of the stacked objects, adjust the dimensions and layout of the simulation environment to ensure there is enough space to simulate the stacking of the stacked objects. According to the lighting requirements of the simulation, adjust the lighting intensity and light source position in the simulation environment to simulate the lighting conditions at different times or locations. Set the position, angle, and focal length of the virtual 3D camera to ensure that detailed images of the stacking of the stacked objects can be captured, including the top, side, and bottom of the stacked objects, etc.
[0050] Optionally, preview and adjust the simulation environment to ensure that the configured parameters can truly reflect the stacking situation of the stacked objects.
[0051] Step S32: Import the generated random stack data into the simulation environment according to the position of the virtual 3D camera, and set up the simulation environment to collect simulation data.
[0052] By setting a virtual 3D camera in the simulation environment, the stacking process and final form of the stacked objects can be observed from different perspectives and positions. Import the generated random stack data into the simulation environment, and determine the position of the stack in the simulation environment so that the stack position in the simulation environment is consistent with the position in the random stack data, ensuring that the simulation results can accurately reflect the actual situation of the random stack.
[0053] In this embodiment, the virtual 3D camera is a virtual camera in the simulation environment, which is used to simulate the functions of a 3D camera in the real world and is used to determine the viewing angle and position of the simulation environment. The random stack data is the data of the random stacking situation of the stacked objects, including information such as the number, dimensions, stacking position of the stacked objects, and the relative position relationship with the pallet.
[0054] Exemplarily, the generated random stack data is imported into the simulation environment. According to the position information in the random stack data, the positions of the stacked objects are determined one by one in the simulation environment, and the distances between the stacked objects and their positions relative to the edge of the pallet are consistent with the random stack shape data.
[0055] Optionally, preview and adjust the stack in the simulation environment to ensure that the simulation results are consistent with the situation in the random stack data. If any deviation or error is found, the environmental parameter configuration step should be returned or the random stack data should be regenerated and adjusted.
[0056] Step S40: Run the simulation environment, collect simulation data, and save the simulation data as the intelligent depalletizing data set.
[0057] By simulating the stacking situation of the stacked objects on the pallet, a large amount of detailed data on the stacking of the stacked objects is obtained. The data set is used for subsequent tasks such as analysis and training of the intelligent depalletizing model.
[0058] In this embodiment, the simulation data is the data generated during the simulation process in the simulation environment, including the positions, postures, stacking heights, etc. of the stacked objects. The intelligent depalletizing data set is a data set organized by the simulation data in a certain format and structure, and is used for subsequent training of the intelligent depalletizing model.
[0059] As an optional implementation manner, start the simulation program, simulate the stacking process of the stacked objects on the pallet according to the preset environmental parameters and random stack data, collect data such as the positions, postures, stacking heights, etc. of the stacked objects in real time through a virtual 3D camera, save the collected simulation data as the intelligent depalletizing data set, and perform annotation and naming.
[0060] Optionally, according to the quantity of the preset random stack data, perform the simulation of the random stack data, and integrate the simulation data of all the random stack data into the intelligent depalletizing data set and save it.
[0061] Optionally, verify the saved intelligent depalletizing data set to ensure the accuracy and integrity of the data.
[0062] This embodiment provides a method for collecting intelligent depalletizing data. In this embodiment, first, by obtaining the model parameters of the 3D model and using the stack shape generation algorithm, a large amount of random stack data can be efficiently generated. The randomly generated stack data can simulate various complex situations that may occur in the actual scenario, improving data diversity. By configuring the environmental parameters of the simulation environment, different actual scenarios can be simulated. The simulation environment can simulate complex physical and interaction processes, improving the diversity of the collected data.
[0063] Based on Embodiment 1, Embodiment 2 of the present application proposes a method for collecting intelligent depalletizing data. Refer toFigure 2 , step S20 includes: Step S21, determine the total number of stacked objects in the randomly generated stack data according to the model parameters.
[0064] According to the requirements such as the pallet size, the size, shape, stacking stability requirements, and storage space limitations included in the model parameters, determine the total number of stacked objects in the randomly generated stack data.
[0065] As an alternative implementation, calculate the maximum capacity of the pallet according to the pallet size in the model parameters, and judge the maximum number of stacked objects according to the size and shape of the stacked objects, as the total number of stacked objects.
[0066] Exemplarily, according to the length, width, and height of the pallet, calculate the maximum capacity of the pallet as the product of the length, width, and height of the pallet, that is, the volume of the pallet. For regular stacked objects, also calculate the volume of the stacked objects by calculating the product of the length, width, and height as the occupied space of the stacked objects; for irregular stacked objects, calculate the occupied space by simulating the stacked objects. Obtain the maximum number of stacked objects by dividing the maximum capacity of the pallet by the occupied space of a single stacked object, as the total number of stacked objects.
[0067] As another alternative implementation, by obtaining historical stacking data, use the number of stacked objects stacked on the corresponding pallet in the historical stacking data as the total number of stacked objects.
[0068] Step S22, determine the position of each of the stacked objects in the random stack based on the stack shape generation algorithm.
[0069] According to the preset stack shape generation algorithm, assign a specific position to each stacked object in the randomly generated random stack to simulate the stacking situation of real stacked objects and generate a detailed data set that can be used for subsequent analysis and model training.
[0070] In this embodiment, the stack shape generation algorithm is an algorithm for generating random stack shapes, which defines the rules and constraints for stacking stacked objects. The position of the stacked object is the specific position of the stacked object on the pallet in each stack shape. The stacking rules include stability requirements and space utilization rate, that is, the stacked objects need to be stable when stacked, and the gaps between the stacked objects are minimized through reasonable stacking to maximize the space utilization rate.
[0071] Among them, the constraints include the placement direction of the stacked objects and the stacking space limitations. The placement directions of objects with different shapes are different. For example, a cuboid stacked object can be placed horizontally or vertically, while a cylindrical stacked object needs to be placed vertically to maintain stability.
[0072] Among them, the spatial constraints of the constraints include calculating the number of layers that can be stacked according to the height of the pallet and the height of the stacked objects, ensuring that the total height after stacking does not exceed the limit of the pallet. According to the shape and size of the stacked objects, ensure that the stacked objects are evenly distributed within the pallet, avoiding local overloading or space waste, and then determine the placement area of the stacked objects within the pallet.
[0073] As an alternative implementation, through the stack shape generation algorithm, according to the input model parameters, automatically match the constraints of the stacked objects.
[0074] Optionally, an input prompt box can also be provided to the user interface, and according to the placement direction of the stacked objects input by the user and the space size limit of the stack, determine the constraints.
[0075] Furthermore, according to the shape of the stacked objects in the model parameters and the constraints, determine the placement direction of the stacked objects to ensure compliance with the stacking rules. According to the pallet size in the model parameters, determine the space constraints for stacking the stacked objects, and further determine the placement area of the stacked objects within the pallet.
[0076] Optionally, use a random number generator to simulate the placement process of the stacked objects, ensuring that the generated random stack data has a certain degree of randomness and diversity.
[0077] As another implementation of generating the positions of the stacked objects, according to the pallet size and the number of stacked objects in the model parameters, initially determine the random positions of all stacked objects through the stack shape generation algorithm. Screen out the positions that meet the size requirements of the stacked objects from the initially determined random positions as the final positions of the stacked objects, ensuring that each stacked object can be correctly and reasonably placed on the pallet, avoiding space waste or pallet instability caused by size mismatch. The random positions are the position points randomly generated on the pallet by the algorithm for initially placing the stacked objects.
[0078] Exemplarily, traverse the initially determined random positions of the stacked objects. For each position, check whether it meets the size requirements of the stacked objects, including whether the length, width, and height of the stacked objects can be placed at this position, and whether it meets the spacing requirements from other stacked objects. Take the positions that meet the size requirements as the final positions of the stacked objects and record them. For the positions that do not meet the size requirements, eliminate or reassign them until all stacked objects are correctly placed, and output the final position information of the stacked objects.
[0079] Optionally, step S22 includes: Step A10, determine the initial position of the stacked objects according to the size of the pallet in the model parameters.
[0080] According to the obtained model parameters, use the stack shape generation algorithm to preliminarily determine the random positions of the stacked objects in the stack shape, ensuring that the distribution of the stacked objects on the pallet is as uniform and random as possible to improve the diversity of the random stack data.
[0081] As an alternative implementation, based on the size of the pallet and the size and shape of the stacked objects, determine the initial positions of the stacked objects. Use the central position of the pallet or a position close to one side edge as the initial position.
[0082] Exemplarily, for the case where the pallet is polygonal, use one side edge of the pallet and the adjacent other side edge as the initial positions of the stacked objects.
[0083] Exemplarily, for the circular pallet shape, use the center position of the pallet as the initial position of the stacked object.
[0084] Step A20: According to the initial positions of the stacked objects and the size of the stacked objects in the model parameters, determine the position of the next stacked object and update it as the initial position.
[0085] Based on the stacked objects with known initial positions, according to the size of the stacked objects and other model parameters, reasonably plan the placement position of the next stacked object to ensure stacking stability and efficiency while avoiding space waste. Updating the initial position to the position of the placed stacked object is to continuously track and update the currently available stacking space during the subsequent stacking process.
[0086] In this embodiment, the position of the next stacked object refers to the expected position of the next stacked object to be placed on the pallet after one or more stacked objects have been placed. Updating means changing the old state or value to a new state or value. Updating the initial position to the position of the placed stacked object means marking the previous initial position as occupied and setting the next available position as the new initial position.
[0087] As an alternative implementation, according to the initial positions of the stacked objects, the size, shape of the stacked objects, and the size of the pallet, and according to the constraint conditions of the stack shape generation algorithm, calculate the positions where the next stacked object can be placed as the new initial positions.
[0088] Optionally, if the size and shape of the next stacked object are inconsistent with the size and shape of the current stacked object, then according to the size and shape of the next stacked object, determine whether the position of the next stacked object meets the size and shape of the next stacked object. If not, recalculate the position of the next stacked object.
[0089] Step A30: If the number of the stacked objects reaches the total number of the stacked objects, end the stack shape generation algorithm.
[0090] In the stack shape generation algorithm, it is determined whether the stacking operation of all stacked objects has been completed. When the number of stacked objects reaches the preset total number, it means that the stacking has been completed according to the algorithm requirements. At this time, the execution of the algorithm can be terminated to avoid unnecessary calculations or resource waste.
[0091] As an alternative implementation, a counter is set in the algorithm to record the number of stacked objects that have been stacked currently. The algorithm process is executed, and the counter is incremented by one each time a stacked object is stacked. It is checked whether the value of the counter is equal to the total number of stacked objects obtained. If the value of the counter is equal to the preset total number, the execution of the algorithm is terminated.
[0092] Optionally, step A30 includes: Step A31, check whether the position of the next stacked object is occupied.
[0093] Exemplarily, the occupancy status of each position is recorded through a data structure. When selecting a position for a stacked object, the data structure is first queried to confirm whether the position has been marked as occupied. If it is occupied, a new position for the stacked object is selected for checking until an unoccupied position is found. Among them, the data structure can be an array, a list, or a hash table.
[0094] Step A32, use the unoccupied position of the next stacked object as the position of the stacked object and mark it as occupied.
[0095] In this embodiment, an occupied position is a position that has been assigned a stacked object and is no longer available for assignment to other stacked objects.
[0096] Exemplarily, find an unoccupied position for the stacked object, assign this position to the stacked object to be placed currently, and update the occupancy status of this position to "occupied" in the data structure to ensure that this position will not be assigned to other stacked objects again.
[0097] Step A33, use the number of occupied positions of the stacked objects as the number of stacked objects, compare the number of stacked objects with the total number of stacked objects, and end the stack shape generation algorithm.
[0098] Exemplarily, after each assignment of a stacked object, the data structure recording the position occupancy status is traversed to calculate the number of occupied positions of the stacked objects as the number of stacked objects, and the number of stacked objects is compared with the total number of stacked objects. If the two are equal, it means that each stacked object has been successfully assigned a position; if not, it means that there are still stacked objects that have not been assigned positions, and the positions of the unassigned stacked objects need to be continued to be assigned.
[0099] Step A40, otherwise, jump to execute the step of determining the position of the next stack based on the initial position of the stack and the size of the stack in the model parameters, and updating it to the initial position.
[0100] In the stack shape generation algorithm, when not all stacks have been stacked, continue the iterative processing to determine the optimal placement position of the next stack. By continuously determining the position of the next stack based on the current stacking state and model parameters, and updating the initial position to the position of the latest placed stack, all stacks can be ensured to be stacked according to the algorithm logic.
[0101] Exemplarily, if the number of current stacks has not reached the total number of stacks, and there are still stacks not placed at this time, the stacking process needs to be continued, and jump to the step in the algorithm for determining the position of the next stack.
[0102] Step S23, generate the corresponding random stack data according to the position of each stack and the total number of stacks.
[0103] According to the position information of each stack determined on the pallet and the total number of stacks, generate the corresponding random stack data to ensure that the arrangement of stacks on the pallet conforms to the preset algorithm, thereby simulating a real stacking scenario.
[0104] In this embodiment, the position of the stack is the relative position information of the stack on the pallet. The random stack data is the arrangement or stacking pattern of stacks on the pallet, formed by stacking multiple stacks according to certain rules.
[0105] Exemplarily, generate the corresponding random stack data according to the position information of the stack, the arrangement of the stack, and the total number of stacks.
[0106] Optionally, according to the computing resources and time cost of stack shape generation, pre-design a random stack number that can meet the data diversity requirements and will not cause computational overload.
[0107] Furthermore, based on historical data or experience, dynamically adjust the random stack number to ensure the representativeness of the dataset.
[0108] Optionally, generate the corresponding number of random stacks according to the preset random stack number as the random stack data to simulate multiple possible stacking scenarios and further improve the diversity of the training data of the intelligent depalletizing model.
[0109] As an example of this embodiment, use cartons as the stacks in this example. Please refer to Figure 3In the process of generating a random stack shape through the stack shape generation algorithm, by obtaining the size parameters of the pallet, a three-dimensional array is created to represent the simulation space, where the position in the upper left corner is marked as the starting point.
[0110] According to the preset search strategy, starting from the starting point, traverse the three-dimensional space to find potential position points. Check whether the currently found position point has been occupied by other cartons to ensure that each carton is assigned a unique and unoccupied position. Mark the current position point as checked, then update the starting point to the next potential position point, and continue to search for potential position points according to the preset search strategy.
[0111] Calculate the available space at the current position point based on the pallet size and the positions of the placed cartons. Compare the available space at the current position point with the size of the carton. If the space is insufficient, mark the current position point as checked, then update the starting point to the next potential position point, and then conduct a position point search, calculate the available space and compare.
[0112] If the available space at the current position point is greater than the size of the carton, mark the current position point as the placement position of the carton, add the current position point to the data structure recording the carton positions, and mark this position as occupied. Check the data structure recording the carton positions to ensure that all cartons have found positions.
[0113] If all cartons have been placed, the process ends; if there are unplaced cartons, it is necessary to backtrack and check and reassign positions.
[0114] This embodiment provides a method for collecting intelligent depalletizing data. In this embodiment, first, according to the model parameters, flexibly adjust the quantity and stack shape characteristics of the generated random stack data. Determine the relative positions of the stacked objects on the pallet through the stack shape generation algorithm, and at the same time consider the size requirements of the stacked objects to ensure the rationality and effectiveness of the positions. By generating data containing various random stacks, ensure the diversity of the random stack shape data.
[0115] Based on Embodiment 1, Embodiment 3 of this application proposes a method for collecting intelligent depalletizing data. Refer to Figure 4 and Figure 5 , step S40 includes: Step S41, start the running engine of the simulation environment to simulate the stacking process of the stacked objects on the pallet.
[0116] By simulating the stacking process, key information such as the positions, postures, and interactions between the stacked objects on the pallet can be obtained, which is a key step in data simulation collection.
[0117] In this embodiment, the simulation environment is a virtual environment created by computer technology and software, which is used to simulate the operation process of the actual physical world. The running engine is the core component in the simulation environment, responsible for driving the operation of the simulation environment, including physical calculations, rendering, interaction, etc. The stacking process refers to the process in which the stacked objects are arranged and stacked on the pallet according to certain rules or algorithms.
[0118] Exemplarily, obtain random pallet shape data, automatically start the running engine of the simulation environment, and start the simulation process.
[0119] Optionally, in response to the user's start operation, start the simulation process.
[0120] Step S42, collect the dynamic data during the stacking process through the virtual three-dimensional camera in the simulation environment as the simulation data.
[0121] Through the virtual three-dimensional camera in the simulation environment, the dynamic data during the stacking process of the stacked objects is captured and recorded in real time. By collecting this data, information such as the stability, collision situation, and position deviation during the carton stacking process can be further analyzed, thereby providing valuable references for actual depalletizing and palletizing operations.
[0122] In this embodiment, the virtual three-dimensional camera is a virtual camera with three-dimensional perception ability in the simulation environment, which can capture three-dimensional space information in the scene, including the position, attitude, size, etc. of the object. The dynamic data is data that changes over time, usually including physical quantities such as the position, speed, acceleration, and attitude of the object. The simulation data is the data obtained by running the simulation environment.
[0123] Optionally, according to the actual situation of the stacking of the stacked objects, set the data collection range of the virtual three-dimensional camera, including the spatial range and the time range, to ensure that the collected data can comprehensively reflect the key information during the carton stacking process.
[0124] Exemplarily, during the simulation operation, the dynamic data during the carton stacking process, including information such as the position, attitude, speed, and acceleration of the carton, is captured in real time through the virtual three-dimensional camera as the simulation data.
[0125] Step S43, save the collected simulation data into the database as the intelligent depalletizing data set.
[0126] In this embodiment, the database is a software system for storing and managing data, including functions such as data definition, data operation, and data control. The intelligent depalletizing data set is a collection of simulation data used for the training of the intelligent depalletizing model.
[0127] As an alternative implementation, a database for storing the intelligent palletizing dataset is established. According to the requirements of the intelligent palletizing dataset, the structure and table relationships of the database are designed, a connection with the database is established, and the preprocessed simulation data is imported into the database through the connection.
[0128] Optionally, simulations of various random pallet data are performed, and the simulation data is collected and saved as a dataset in the database, and each type of random pallet data is labeled.
[0129] Optionally, step S40 further includes: Step S44, running the simulation environment, and rendering the simulation data of the simulation environment onto the user interface in real time to display the stacking process of the stacked objects in the simulation environment.
[0130] By running the simulation environment, the stacking data generated during the simulation process is rendered onto the user interface in real time, enabling the user to visually see the stacking process of the stacked objects in the simulation environment, which helps the user better understand the simulation results, evaluate the performance of the pallet shape generation algorithm, and discover potential problems.
[0131] In this embodiment, real-time rendering presents the generated simulation process instantaneously on the user's screen. The user interface is an interface for displaying the simulation process.
[0132] Exemplarily, load and start the pre-configured simulation environment. During the simulation process, collect the simulation data of the stacking of the stacked objects in real time, perform necessary processing, transfer the processed simulation data to the rendering engine, and convert the processed simulation data into a visual image or animation. Update the image or animation generated by the rendering engine onto the user interface in real time, enabling the user to see the stacking process in real time.
[0133] Step S45, in response to an operation by the user on the user interface, convert the operation into a corresponding adjustment instruction and accordingly adjust the simulation process in the simulation environment.
[0134] Allowing the user to interact with the simulation environment through the user interface and adjust the simulation process in real time according to the user's operation provides the user with control over the simulation process, enabling the user to adjust the simulation parameters as needed and observe the stacking effects of the stacked objects under different conditions.
[0135] In this embodiment, the user interface is an interface for displaying the simulation process, including elements such as a graphical interface, menu, buttons, etc. The user can control the simulation process through interaction with the user interface. The adjustment instruction is an instruction generated according to the user's operation and used to change the state of the simulation environment or simulation parameters. The simulation process is the process of simulating random pallet data executed in the simulation environment.
[0136] Exemplarily, operations such as the user clicking a button, dragging a slider, or entering text are detected through the user interface. The detected user operations are parsed into specific adjustment instructions, and the generated adjustment instructions are sent to the simulation environment. The simulation parameters or states are adjusted according to the instructions, including adjusting the stacking speed, stacking method, or simulation time of the stacked objects, etc. After adjusting the simulation environment, the display content on the user interface is updated in real time to reflect the new simulation state.
[0137] This embodiment provides a method for collecting intelligent palletizing data. In this embodiment, first, the stacking process of stacked objects on a pallet is simulated through a simulation environment, and three-dimensional dynamic data during the stacking process of the stacked objects is captured by a virtual three-dimensional camera. Data can be collected in real time, and changes during the stacking process of the stacked objects can be monitored in real time. By rendering the simulation data to the user interface in real time, the user can intuitively see the stacking process of the stacked objects in the simulation environment, thus making it easier to understand and analyze the simulation results. The user can adjust the simulation process in real time through operations on the user interface, enhancing the interactivity and practicality of the simulation environment. The intelligent palletizing data set of the simulation data is saved in a database for subsequent training of the intelligent palletizing model.
[0138] Based on Embodiment 1, Embodiment 4 of this application proposes a method for collecting intelligent palletizing data. Referring to Figure 6 , after step S40, it includes: Step S50, cleaning and formatting the intelligent palletizing data set, and dividing the processed intelligent palletizing data set into a training set and a test set.
[0139] By cleaning the intelligent palletizing data set, noise, outliers, and duplicate data can be removed from it, thereby improving the data quality. Through formatting processing, the data is converted into a format suitable for model training, ensuring the quality and consistency of the data set, so that subsequent model training can proceed smoothly. Dividing the intelligent palletizing data set into a training set and a test set is to have an independent test set to evaluate the performance of the model during model training and avoid overfitting.
[0140] In this embodiment, data set cleaning is to check each data point in the data set and remove or correct errors, anomalies, or duplicate data therein. Data set formatting is to convert the data into a format suitable for processing by the intelligent palletizing model, including adjusting the data range, data type conversion, etc. The training set is the data set used for the intelligent palletizing model. The test set is the data set used for evaluating the performance of the intelligent palletizing model and is independent of the training set.
[0141] Exemplarily, data cleaning such as removing missing values and handling outliers is performed on the intelligent palletizing data set, and data formatting processing such as numerical classification variables and normalizing eigenvalue is performed. The processed data set is divided into a training set and a test set, with a ratio of 80% for the training set and 20% for the test set.
[0142] Step S60: Train the intelligent palletizing and depalletizing model based on the training set, and adjust the parameters of the intelligent palletizing and depalletizing model through the cross-validation method.
[0143] Use the training set to train the intelligent palletizing and depalletizing model, and optimize the parameters of the model through the cross-validation method. Cross-validation is a method for evaluating the performance of a model. By dividing the training set into multiple small data sets, and then taking turns using each subset as the validation set and the remaining subsets as the training set to train the model, and finally evaluating the average performance of the model, which helps to find the best model parameters and avoid overfitting.
[0144] In this embodiment, the intelligent palletizing and depalletizing model is a machine learning model for automated palletizing and depalletizing tasks. Cross-validation is a method for evaluating the performance of a machine learning model by dividing the data set into multiple subsets to take turns training and validating the model.
[0145] Exemplarily, construct an initial intelligent palletizing and depalletizing model, use the training set data to train the model, and set the loss function and optimizer. Perform cross-validation through the function to adjust parameters such as the learning rate, number of network layers, and number of neurons of the model to optimize the performance of the model.
[0146] Step S70: Evaluate the performance of the intelligent palletizing and depalletizing model based on the test set, and further adjust the parameters of the intelligent palletizing and depalletizing model according to the evaluation results.
[0147] Use an independent test set to evaluate the performance of the intelligent palletizing and depalletizing model, and further adjust the parameters of the model according to the evaluation results. By evaluating the performance of the model on the test set, the actual application effect of the model can be understood, and the model can be fine-tuned according to the evaluation results.
[0148] In this embodiment, the test set is a data set independent of the training set, which is used to evaluate the generalization ability of the model on unseen data. The generalization ability is the ability of the model to perform well on unseen data.
[0149] Exemplarily, use the test set to predict the trained intelligent palletizing and depalletizing model, and calculate metrics such as the accuracy rate and recall rate of the model. According to the evaluation results, further adjust the parameters of the model to improve the generalization ability of the model.
[0150] This embodiment provides a method for collecting intelligent palletizing data. First, by cleaning the data, invalid, incorrect, or duplicate data can be removed to ensure the authenticity and accuracy of the intelligent palletizing data set. Formatting the data converts it into a unified format, making the data easier to be processed and understood by the model. By dividing the data set into a training set and a test set, it can ensure that the intelligent palletizing model is evaluated for performance on unseen data, thus effectively preventing overfitting. By continuously evaluating and adjusting the model parameters, the performance of the model can be continuously improved, which helps to ensure that the model has better accuracy and stability in practical applications.
[0151] Exemplarily, to help understand the implementation process of the method for collecting intelligent palletizing data obtained by combining this embodiment with the above-mentioned Embodiment 1, please refer to Figure 7 and Figure 8 , Figure 7 which provides a schematic diagram of the overall process of a method for collecting intelligent palletizing data, Figure 8 and provides a schematic diagram of the random pallet shape generation process of a method for collecting intelligent palletizing data. Specifically: Taking the cardboard box as an example of the stacked object in this embodiment, the required 3D (Three-Dimensional) models are imported through code, including a 3D camera, a pallet, and different types of cardboard boxes. The relevant parameters of the 3D model are obtained, including the pallet size (used to set the space of the pallet shape), the types and sizes of the cardboard boxes (used to randomly select cardboard boxes to add to the pallet shape).
[0152] Determine the total number of pallet shapes to be randomly generated, and judge whether the number of pallet shapes already generated is less than the total number. If not, end the generation; if so, continue to generate the pallet shape.
[0153] Further, for each pallet shape, obtain the pallet size and the total number of cardboard boxes in this pallet shape, and loop to generate the positions of the cardboard boxes.
[0154] Judge whether the number of cardboard boxes already generated is less than the total number. If not, this pallet shape is generated, and the number of generated pallet shapes is increased by one; if so, continue to generate the cardboard boxes in the pallet shape. Further, randomly select the type and size of the cardboard box, obtain the positions of the cardboard boxes already generated, execute the pallet shape generation algorithm process, and try to find a suitable position in the pallet to place the cardboard box.
[0155] Further, referring to Figure 3 , starting from the starting point in the upper left corner of the pallet surface through the pallet shape generation algorithm, find the position points where the cardboard boxes can be placed, and judge whether the position points are already occupied. If so, reset the current position point as the starting point and continue to search; if not, judge whether the available space at the position point is larger than the size of the cardboard box.
[0156] Optionally, if there is enough available space, save the current position point as the carton position; if not, reset the current position point to the starting point and continue searching. When all carton positions are successfully generated, the stack shape is generated.
[0157] Repeat the above steps until the number of stack shapes currently generated reaches the total number of stack shapes to be randomly generated, and the random stack shape data generation is completed.
[0158] Furthermore, build a simulation environment according to the generated random stack shapes, configure a 3D camera, a stack pallet, carton positions, etc., as well as external environments such as lighting and working scenarios. Write code to randomly select cartons, obtain camera RGBD images (color images and depth images), carton grasping points, etc., and set the total number of stack shapes to be randomly generated.
[0159] Start and run the simulation environment. The front end displays the simulation environment where data is being collected, and the background collects, processes the data, and makes it into a data set.
[0160] Wait for the simulation environment to finish running. When the simulation environment finishes running, the data set is also made, and the whole process ends.
[0161] Through the above process, the acquisition and visualization of simulation data, as well as the generation of random stack shapes and the making of data sets, can be efficiently achieved.
[0162] It should be noted that the above examples are only for understanding this application and do not constitute a limitation on the data acquisition method for intelligent palletizing and depalletizing of this application. Based on this technical concept, more forms of simple transformations are within the protection scope of this application.
[0163] This application provides a data acquisition device for intelligent palletizing and depalletizing. The data acquisition device for intelligent palletizing and depalletizing includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein, the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the data acquisition method for intelligent palletizing and depalletizing in the first embodiment above.
[0164] Next, refer to Figure 9, which shows a schematic structural diagram of a data acquisition device suitable for implementing the intelligent palletizing and depalletizing data of the embodiments of the present application. The data acquisition device for intelligent palletizing and depalletizing in the embodiments of the present application may include, but is not limited to, mobile terminals such as mobile phones, laptop computers, digital broadcast receivers, PDAs (Personal Digital Assistant), PADs (Portable Application Description), PMPs (Portable Media Player), etc., and fixed terminals such as digital TVs, desktop computers, etc. Figure 9 The illustrated data acquisition device for intelligent palletizing and depalletizing is merely an example and should not impose any limitations on the functions and usage scope of the embodiments of the present application.
[0165] As Figure 9 shown, the data acquisition device for intelligent palletizing and depalletizing may include a processing device 1001 (such as a central processing unit, a graphics processing unit, etc.), which may perform various appropriate actions and processes according to a program stored in a read-only memory (ROM: Read Only Memory) 1002 or a program loaded from a storage device 1003 into a random access memory (RAM: Random Access Memory) 1004. In the RAM 1004, various programs and data required for the operation of the data acquisition device for intelligent palletizing and depalletizing are also stored. The processing device 1001, the ROM 1002, and the RAM 1004 are connected to each other through a bus 1005. An input / output (I / O) interface 1006 is also connected to the bus. Generally, the following systems may be connected to the I / O interface 1006: an input device 1007 including, for example, a touch screen, a touchpad, a keyboard, a mouse, an image sensor, a microphone, an accelerometer, a gyroscope, etc.; an output device 1008 including, for example, a liquid crystal display (LCD: Liquid Crystal Display), a speaker, a vibrator, etc.; a storage device 1003 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 1009. The communication device 1009 may allow the data acquisition device for intelligent palletizing and depalletizing to communicate with other devices wirelessly or wiredly to exchange data. Although the figure shows a data acquisition device for intelligent palletizing and depalletizing having various systems, it should be understood that it is not required to implement or have all the shown systems. Instead, more or fewer systems may be implemented or had.
[0166] In particular, according to the embodiments disclosed in the present application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, the embodiments disclosed in the present application include a computer program product that includes a computer program carried on a computer-readable medium, and the computer program includes program code for performing the methods shown in the flowcharts. In such an embodiment, the computer program can be downloaded and installed from a network through a communication device, or installed from a storage device 1003, or installed from a ROM 1002. When the computer program is executed by a processing device 1001, the above-mentioned functions defined in the methods of the embodiments disclosed in the present application are executed.
[0167] The intelligent palletizing data acquisition device provided by the present application adopts the intelligent palletizing data acquisition method in the above-mentioned embodiment, and can solve the technical problem of how to improve the diversity of training data of the intelligent palletizing model. Compared with the prior art, the beneficial effects of the intelligent palletizing data acquisition device provided by the present application are the same as those of the intelligent palletizing data acquisition method provided by the above-mentioned embodiment, and other technical features in the intelligent palletizing data acquisition device are the same as the features disclosed in the method of the previous embodiment, and will not be elaborated here.
[0168] It should be understood that the various parts disclosed in the present application can be implemented by hardware, software, firmware, or a combination thereof. In the description of the above embodiments, specific features, structures, materials, or characteristics can be combined in a suitable manner in any one or more embodiments or examples.
[0169] As mentioned above, the above is only the specific implementation manner of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art within the technical scope disclosed in the present application can easily think of changes or substitutions, which should all be covered by the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.
[0170] The present application provides a computer-readable storage medium having computer-readable program instructions (i.e., computer programs) stored thereon, and the computer-readable program instructions are used to execute the intelligent palletizing data acquisition method in the above-mentioned embodiment.
[0171] The computer-readable storage medium provided by the present application may be, for example, a USB flash drive, but is not limited to electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices, or components, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: electrical connections with one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM) or flash memory, optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the above. In this embodiment, the computer-readable storage medium may be any tangible medium that contains or stores a program, and this program can be used by or in combination with an instruction execution system, device, or component. The program code contained on the computer-readable storage medium can be transmitted using any appropriate medium, including but not limited to: wires, optical cables, RF (Radio Frequency), etc., or any suitable combination of the above.
[0172] The above computer-readable storage medium may be included in the intelligent palletizing data acquisition device; or it may exist separately and not be assembled into the intelligent palletizing data acquisition device.
[0173] The above computer-readable storage medium carries one or more programs. When the above one or more programs are executed by the intelligent palletizing data acquisition device, the intelligent palletizing data acquisition device can write computer program code for performing the operations of the present application in one or more programming languages or combinations thereof. The above programming languages include object-oriented programming languages - such as Java, Smalltalk, C++, and also include conventional procedural programming languages - such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, executed as an independent software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer can be connected to the user's computer through any type of network - including a local area network (LAN) or a wide area network (WAN) - or can be connected to an external computer (for example, by using an Internet service provider to connect through the Internet).
[0174] The flowcharts and block diagrams in the accompanying drawings illustrate the possible architectures, functions, and operations of systems, methods, and computer program products according to various embodiments of the present application. In this regard, each block in the flowchart or block diagram may represent a module, a segment of a program, or a part of code that contains one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions marked in the blocks may occur in a different order than that marked in the accompanying drawings. For example, two consecutive blocks shown may actually be executed substantially in parallel, and they may sometimes be executed in the reverse order, depending on the functions involved. It should also be noted that each block in the block diagram and / or flowchart, and the combination of blocks in the block diagram and / or flowchart, may be implemented by a dedicated hardware-based system that performs the specified functions or operations, or may be implemented by a combination of dedicated hardware and computer instructions.
[0175] The modules described in the embodiments of the present application can be implemented in software or in hardware. Among them, the name of the module does not constitute a limitation on the unit itself in some cases.
[0176] The readable storage medium provided in the present application is a computer-readable storage medium, and the computer-readable storage medium stores computer-readable program instructions (i.e., computer programs) for executing the above-mentioned intelligent palletizing data acquisition method, which can solve the technical problem of how to improve the diversity of training data for the intelligent palletizing model. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided in the present application are the same as those of the intelligent palletizing data acquisition method provided in the above embodiments, and will not be elaborated here.
[0177] The above are only some embodiments of the present application, and thus do not limit the patent scope of the present application. Any equivalent structural transformation made using the description of the present application and the content of the accompanying drawings under the technical concept of the present application, or direct / indirect application in other related technical fields, is included in the patent protection scope of the present application.
Claims
1. A method for collecting intelligent depalletizing data, characterized in that: The method for collecting intelligent depalletizing data comprises: Obtaining model parameters of a three-dimensional model required for generating an intelligent depalletizing data set; Generate random stack data through a stack shape generation algorithm according to the model parameters; Configuring environmental parameters of a simulation environment, and building the simulation environment according to the random stack data; The simulation environment is run to collect simulation data, and the simulation data is saved as the intelligent depalletizing data set.
2. The method for collecting intelligent depalletizing data according to claim 1, characterized in that: The step of generating random stack data by a stack shape generation algorithm according to the model parameters comprises: Determining the total number of stacked objects in the random stack data to be generated according to the model parameters; Based on the stack shape generation algorithm, determining the position of each of the stacked objects in the random stack; The corresponding random stack data is generated according to the position of each of the stacks and the total number of the stacks.
3. The method for collecting intelligent depalletizing data according to claim 2, characterized in that: The step of determining the position of each of the stacked objects in the random stack based on the stack shape generation algorithm comprises: Determining the initial position of the stack according to the size of the stack in the model parameters; According to the initial position of the stack and the size of the stack in the model parameters, determine the next stack position and update it to the initial position; If the number of stacked objects reaches the total number of stacked objects, the stacking shape generation algorithm is terminated; Otherwise, the process jumps to the step of determining the next stacking position according to the initial position of the stacking object and the size of the stacking object in the model parameters, and updating the position of the next stacking object to the initial position.
4. The method for collecting intelligent depalletizing data according to claim 3, characterized in that: If the number of stacked objects reaches the total number of stacked objects, the step of ending the stacking shape generation algorithm comprises: Check whether the next stacking position is occupied; The next stacking position that is not occupied is used as the stacking position and is marked as occupied; The number of occupied stack positions is taken as the number of stacks, and the number of stacks is compared with the total number of stacks, thereby terminating the stack shape generation algorithm.
5. The method for collecting intelligent depalletizing data according to claim 1, characterized in that: The step of configuring the environmental parameters of the simulation environment and building the simulation environment according to the random stack data comprises: According to the model parameters and specific requirements of the simulation, the environmental parameters of the simulation environment are configured, and the parameters of the virtual three-dimensional camera are configured; According to the position of the virtual three-dimensional camera, the generated random stack data is imported into a simulation environment, and the simulation environment is built to collect simulation data.
6. The method for collecting intelligent depalletizing data according to claim 1, characterized in that: The steps of running the simulation environment, collecting simulation data, and saving the simulation data as the intelligent depalletizing data set include: Starting the running engine of the simulation environment to simulate the stacking process of the stacked objects on the stacking tray; Collecting dynamic data of the stacking process as the simulation data through a virtual three-dimensional camera in the simulation environment; The collected simulation data is saved in a database as the intelligent depalletizing data set.
7. The method for collecting intelligent depalletizing data according to claim 1, characterized in that: The step of running the simulation environment, collecting simulation data, and saving the simulation data as the intelligent depalletizing data set also includes: Running the simulation environment, and rendering the simulation data of the simulation environment to a user interface in real time to display the stacking process of the stacked objects in the simulation environment; In response to the user's operation on the user interface, the operation is converted into a corresponding adjustment instruction, and the simulation process in the simulation environment is adjusted accordingly.
8. The method for collecting intelligent depalletizing data according to claim 1, characterized in that: After the steps of running the simulation environment, collecting simulation data, and saving the simulation data as the intelligent depalletizing data set, the method further comprises: Cleaning and formatting the intelligent depalletizing data set, and dividing the processed intelligent depalletizing data set into a training set and a test set; Training the intelligent depalletizing model based on the training set, and adjusting the parameters of the intelligent depalletizing model by a cross-validation method; The performance of the intelligent depalletizing model is evaluated based on the test set, and the parameters of the intelligent depalletizing model are further adjusted according to the evaluation results.
9. An intelligent depalletizing data collection device, characterized in that: The device comprises: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the computer program is configured to implement the steps of the method for collecting intelligent depalletizing data as claimed in any one of claims 1 to 8.
10. A storage medium, characterized in that: The storage medium is a computer-readable storage medium, and a computer program is stored on the storage medium. When the computer program is executed by a processor, the steps of the intelligent depalletizing data collection method according to any one of claims 1 to 8 are implemented.