WO2022134702A1 - Action learning method and apparatus, storage medium, and electronic device - Google Patents
Action learning method and apparatus, storage medium, and electronic device Download PDFInfo
- Publication number
- WO2022134702A1 WO2022134702A1 PCT/CN2021/120457 CN2021120457W WO2022134702A1 WO 2022134702 A1 WO2022134702 A1 WO 2022134702A1 CN 2021120457 W CN2021120457 W CN 2021120457W WO 2022134702 A1 WO2022134702 A1 WO 2022134702A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- motion
- robot
- motion data
- joint motion
- Prior art date
Links
- 230000009471 action Effects 0.000 title claims abstract description 132
- 238000000034 method Methods 0.000 title claims abstract description 63
- 230000033001 locomotion Effects 0.000 claims abstract description 617
- 238000004088 simulation Methods 0.000 claims abstract description 52
- 230000000875 corresponding effect Effects 0.000 claims description 131
- 238000005457 optimization Methods 0.000 claims description 110
- 238000012790 confirmation Methods 0.000 claims description 22
- 238000004590 computer program Methods 0.000 claims description 19
- 238000012986 modification Methods 0.000 claims description 12
- 230000004048 modification Effects 0.000 claims description 12
- 238000012549 training Methods 0.000 claims description 10
- 238000013507 mapping Methods 0.000 claims description 9
- 238000012937 correction Methods 0.000 claims description 8
- 238000012545 processing Methods 0.000 claims description 7
- 230000004044 response Effects 0.000 claims description 7
- 238000004891 communication Methods 0.000 description 10
- 230000036544 posture Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 230000005236 sound signal Effects 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 241001465754 Metazoa Species 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/161—Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/27—Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/30—Noise filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/10—Terrestrial scenes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/04—Constraint-based CAD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/10—Numerical modelling
Definitions
- the present disclosure relates to the field of robotics, and in particular, to an action learning method, device, storage medium, and electronic device.
- Each action of the robot is a process of combining multiple joints.
- the method for robots to learn human actions is usually to first capture human motion postures through human wearable devices. Then control the physical robot to learn the action according to the human motion posture.
- the cost of action learning for physical robots is high, and the same action needs to be learned repeatedly on different robots.
- a common way of motion capture is to set trackers, such as inertial measurement units (IMUs), at key parts of moving objects.
- IMUs inertial measurement units
- the three-dimensional position and orientation information at each sensor of the inertial motion capture can be recorded and displayed in real time (with a slight delay), and the cost of small-scale use is relatively reasonable.
- the defects are also obvious.
- the purpose of the present disclosure is to provide an action learning method, device, storage medium and electronic device, which can convert a group of human actions into atomic actions of multiple different robots, and the learning of human actions is based on digital and virtual robots
- the completion of the digital twin model does not require a physical robot, which can greatly reduce the cost of generating robot actions.
- the present disclosure provides an action learning method, the method includes:
- the joint motion data When it is determined that the joint motion data complies with the atomic motion constraint conditions corresponding to the robot, the joint motion data is determined as the atomic motion of the robot.
- the determining the joint motion data of the robot corresponding to the human motion image data includes:
- Corresponding three-dimensional gesture motion data is determined according to the denoised human motion image data, and the three-dimensional gesture motion data includes the motion data of each three-dimensional key point corresponding to the target object, and the three-dimensional key point for constructing the three-dimensional pose of the target object;
- the joint motion data of the robot is obtained by mapping the three-dimensional posture motion data.
- judging whether the joint motion data complies with the atomic motion constraints corresponding to the robot by using the simulation data of the digital twin model of the robot includes:
- the joint motion data meets the motion compliance conditions, and the motion compliance conditions include that the motion corresponding to the joint motion data is the atomic motion, and the joint motion data does not There is a joint movement that exceeds the physical limit of the joint, and the digital twin model does not have collision and imbalance when executing the joint movement data;
- the joint motion data does not meet any one of the motion compliance conditions, it is determined that the joint motion data does not meet the atomic motion constraint conditions corresponding to the robot.
- the joint motion data is judged by the simulation data of the digital twin model of the robot to meet the atomic action constraint corresponding to the robot and also includes:
- the joint motion data When the joint motion data satisfies all of the motion compliance conditions, determine whether the joint motion data satisfies motion optimization conditions based on the simulation data of the digital twin model, where the motion optimization conditions include that the joint motion data complies with the robot
- the motions corresponding to the kinematic laws and the joint motion data are smooth and smooth;
- the joint motion data does not meet the motion optimization condition, it is determined that the joint motion data does not meet the atomic motion constraint condition corresponding to the robot.
- judging whether the joint motion data complies with the atomic motion constraints corresponding to the robot by using the simulation data of the digital twin model of the robot further includes:
- the robot In the case of receiving the first manual confirmation instruction, the robot is driven to execute the joint motion data through the digital twin model, and the first manual confirmation instruction is input by the user in response to the motion picture of the digital twin model instruction, used to indicate that the motion picture of the digital twin model meets the requirements;
- the joint motion data complies with the atomic motion constraint corresponding to the robot
- the second manual confirmation instruction is determined by the user in response to the execution action of the robot.
- the input instructions are used to instruct the robot to perform actions that meet the requirements.
- the method further includes: when it is determined that the joint motion data does not meet the atomic motion constraint conditions corresponding to the robot through the simulation data of the digital twin model of the robot, correcting the joint motion data , and judge whether the revised joint motion data complies with the atomic motion constraints corresponding to the robot through the simulation data of the digital twin model of the robot, until it is determined that the joint motion data complies with the Describe the atomic action constraints.
- judging whether the joint motion data complies with the atomic motion constraints corresponding to the robot by using the simulation data of the digital twin model of the robot includes:
- the joint motion data meets the motion compliance conditions, and the motion compliance conditions include that the motion corresponding to the joint motion data is the atomic motion, and the joint motion data does not There is a joint movement that exceeds the physical limit of the joint, and the digital twin model does not have collision and imbalance when executing the joint movement data;
- the joint motion data When the joint motion data satisfies all of the motion compliance conditions, determine whether the joint motion data satisfies motion optimization conditions based on the simulation data of the digital twin model, where the motion optimization conditions include that the joint motion data complies with the robot
- the motions corresponding to the kinematic laws and the joint motion data are smooth and smooth;
- the modifying the joint motion data includes:
- the joint motion data When the joint motion data does not meet the motion optimization condition, perform a first optimization on the joint motion data, and re-judg whether the optimized joint motion data complies with the atomic motion constraint conditions corresponding to the robot, and the The first optimization includes performing data optimization on the joint motion data according to inverse kinematics, performing data optimization on the joint motion data according to confrontational generation network training, performing data optimization on the joint motion data according to data fitting, and performing data optimization on the joint motion data according to an interpolation algorithm. One or more of data optimizations are performed on the articulation data.
- the method further includes:
- a second optimization is performed on the joint motion data, and it is re-determined whether the optimized joint motion data conforms to the motion corresponding to the robot Imitating conditions, the second optimization includes performing data optimization on the joint motion data according to inverse kinematics, performing data optimization on the joint motion data according to adversarial generation network training, and performing data optimization on the joint motion data according to data fitting.
- the robot is driven to execute the joint motion data through the digital twin model, and returns to the initial stage of the robot after the motion execution is completed. state.
- the present disclosure also provides an action learning device, the device comprising:
- an acquisition module used to acquire human motion image data of the target object
- a determination module for determining joint motion data of the robot corresponding to the human body motion image data
- a first judging module used for judging whether the joint motion data complies with the atomic motion constraints corresponding to the robot through the simulation data of the digital twin model of the robot;
- the learning module is configured to determine the joint motion data as the atomic motion of the robot when it is determined that the joint motion data conforms to the atomic motion constraint conditions corresponding to the robot.
- the present disclosure also provides a computer-readable storage medium on which a computer program is stored, and when the program is executed by a processor, implements the steps of the above-described method.
- the present disclosure also provides an electronic device, comprising:
- a processor for executing the computer program in the memory to implement the steps of the above-described method.
- the present disclosure also provides a computer program product comprising a computer program executable by a programmable apparatus, the computer program having code for performing the steps of the above-described method when executed by the programmable apparatus part.
- the joint motion data of the robot can be determined by the acquired human body motion image data of the target object, so that the corresponding robot can be determined according to a set of human body motion image data of the target object.
- the joint motion data accelerates the learning speed of different robots for actions; and, according to the digital twin model of the digital and virtual robot, it is possible to judge online whether the joint motion data conforms to the constraints of atomic motions, without the need for a physical robot. Dramatically reduce the cost of generating robot actions.
- FIG. 1 is a flowchart of an action learning method according to an exemplary embodiment of the present disclosure.
- Fig. 2 is a flowchart of an action learning method according to another exemplary embodiment of the present disclosure.
- Fig. 3 is a flowchart of an action learning method according to another exemplary embodiment of the present disclosure.
- Fig. 4 is a flowchart of an action learning method according to another exemplary embodiment of the present disclosure.
- FIG. 5 is a structural block diagram of an action learning apparatus according to an exemplary embodiment of the present disclosure.
- Fig. 6 is a block diagram of an electronic device according to an exemplary embodiment.
- Fig. 7 is a block diagram of an electronic device according to an exemplary embodiment.
- FIG. 1 is a flowchart of an action learning method according to an exemplary embodiment of the present disclosure. As shown in FIG. 1 , the method includes steps 101 to 102 .
- step 101 the human body motion image data of the target object is acquired.
- the target object may be any object within the acquisition range that can perform the action to be learned, such as a human being, an animal, or other robots capable of performing actions, and so on.
- Human motion image data can be 2D data or 3D data, and can be obtained by any RGB camera, depth camera or lidar, for example, the depth camera can be a TOF-based depth camera, or an infrared-based depth camera, Or passive vision-based monocular depth cameras or binocular depth cameras, etc.
- the device used to obtain human motion image data can be set at any position on the robot's head, chest, waist, etc., so that the robot can learn the movements made by the target object in front of it, or it can also be used not set on the robot.
- the human body motion image data can be acquired by the acquisition device on the scene environment, for example, the human body motion image data can be acquired by other devices set in the scene environment.
- the position of the target object may be located first, and the human body motion image data of the target object may be acquired; or after the target object exists within the acquisition range, Image data is acquired for all objects within the range, and human motion image data related to the motion of the target object is extracted from all the acquired image data.
- step 102 the joint motion data of the robot corresponding to the human body motion image data is determined.
- the robot may be a single-arm robot, a dual-arm robot, a single-leg robot, or a biped robot, a robot with two-finger multi-joint hands, or a multi-fingered hand. Articulated robots and more.
- the content included in the joint motion data can be determined according to the actual joints of the robot, as long as it is learned from the human body motion image data of the target object. For example, if the target object is a person, and the actions corresponding to the human body motion image data include the actions of the whole body such as legs and hands, and the robot is a monopod robot with two arms, it is determined that the obtained motion is the same as the action of the human body.
- the joint motion data corresponding to the image data may only include the motion data of the upper body such as the head, arms, and waist, so as to ensure that the motion corresponding to the joint motion data is similar to the motion corresponding to the human motion image data as much as possible. It can also ensure the balance, stability and safety of the robot.
- the joint motion data is also composed of multiple sets of joint rotation angle values with time series attributes.
- the joint motion data for a 6-axis robot arm can be:
- (0) (100) represents the timestamp
- (0) can be the starting time point
- (100) can be the time interval from the last timestamp (unit can be, for example, milliseconds)
- (1:1:3.68) The first 1 represents the first joint in the 6-axis robot arm, the second 1 represents the forward rotation, and (3.68) represents the rotation angle position, where the joint sequence is defined in the robot, and the corresponding flag can be directly used
- 2 represents the second joint
- 3 represents the third joint; in addition to the above-mentioned forward rotation represented by 1 on the corresponding sign bit, reverse rotation and reverse rotation can also be performed.
- step 103 it is judged whether the joint motion data complies with the atomic motion constraint conditions corresponding to the robot according to the simulation data of the digital twin model of the robot.
- the digital twin model is a virtual robot obtained by digitizing the physical model of the robot.
- the physical model of the robot includes physical simulation models such as appearance, motors of each joint, sensors, gravity, and collision.
- the digital twin model can also receive the robot's physical simulation model. Perceives feedback and is able to synchronously control the robot.
- the digital twin model may be stored on the server side, and the server side judges whether the joint motion data satisfies the atomic action constraint condition through the simulation data of the digital twin model.
- the atomic action constraint condition is used to constrain the action corresponding to the joint motion data, to avoid actions that affect the stability and safety of the robot, or actions that are not atomic actions to be determined as the atomic actions of the robot.
- the atomic action constraints can be set according to the actual situation of the robot.
- the atomic action is also the basic action used to compose other actions, such as raising the hand, letting go of the hand, etc. When the robot executes the atomic action, the execution process cannot be planned or split.
- step 104 when it is determined that the joint motion data complies with the atomic motion constraint conditions corresponding to the robot, the joint motion data is determined as the atomic motion of the robot.
- Multiple atomic actions can form new robot behaviors, and the learned atomic actions can be stored in the robot or in a cloud server.
- the joint motion data of the robot can be determined by the acquired human body motion image data of the target object, so that the corresponding robot can be determined according to a set of human body motion image data of the target object.
- the joint motion data accelerates the learning speed of different robots for actions; and, according to the digital twin model of the digital and virtual robot, it is possible to judge online whether the joint motion data conforms to the constraints of atomic motions, without the need for a physical robot. Dramatically reduce the cost of generating robot actions.
- Fig. 2 is a flowchart of an action learning method according to another exemplary embodiment of the present disclosure. As shown in FIG. 2 , the method further includes steps 201 to 203 .
- step 201 denoising processing is performed on the human body motion image data.
- the denoising process can be performed by any denoising method, and by denoising and optimizing the human action image data, the actions included in the human action image data can be made more accurate.
- the corresponding three-dimensional posture motion data is determined according to the denoised human body motion image data, and the three-dimensional posture motion data includes the motion data of each three-dimensional key point corresponding to the target object, The three-dimensional key points are used to construct the three-dimensional pose of the target object.
- the three-dimensional key points used to construct the three-dimensional posture of the target object can be determined in the human body motion image data, and then the three-dimensional key points can be used to construct the three-dimensional key points of the human body.
- the three-dimensional attitude motion data is composed of three-dimensional position values of multiple groups of multiple key points with time series attributes.
- step 203 the joint motion data of the robot is obtained by mapping the three-dimensional posture motion data.
- the mapping method can be performed through a deep learning neural network, wherein different deep learning neural networks can be trained for different robots respectively, and a corresponding deep learning neural network can be selected for mapping according to the robot.
- Fig. 3 is a flowchart of an action learning method according to another exemplary embodiment of the present disclosure. As shown in FIG. 3 , the method further includes steps 301 to 307 .
- step 301 based on the simulation data of the digital twin model, it is judged whether the joint motion data satisfies the motion compliance condition, if yes, go to step 303, if not, go to step 302.
- the motion compliance conditions include that the motion corresponding to the joint motion data is the atomic motion, there is no joint motion in the joint motion data that exceeds the physical limit of the joint, the digital twin model is executing all No collision or imbalance occurred when the joint motion data was described.
- the joint motion data does not satisfy any one of the motion compliance conditions, it can be determined that the joint motion data does not satisfy the motion compliance condition, that is, does not satisfy the atomic motion constraint condition corresponding to the robot .
- the feature comparison between the joint motion data and the preset motion data of various atomic actions can be performed to obtain the feature similarity between the joint motion data and the motion data of various atomic actions. Or if the feature similarity between the motion data of two or more atomic actions exceeds a preset threshold, it can be determined that the action corresponding to the joint motion data is not the atomic action that needs to be learned.
- the physical limits of the above joints are related to the specific joints in the robot.
- the physical limit corresponding to all the joints in the robot can be obtained separately, and then the joint motion data of the joint is involved. exercise data for comparison.
- the collision of the above-mentioned digital twin model may include self-collision.
- the model arm overlaps with the model leg during movement.
- a collision may also occur. Including the model colliding with surrounding objects.
- step 302 that is, when the joint motion data does not meet any of the motion compliance conditions, receive a manual modification instruction to modify the joint motion data; and re-judg the modified joint motion data Whether the atomic action constraint corresponding to the robot is met, that is, return to step 301 .
- the manual modification instruction may be a modification instruction generated by repairing action data based on the digital twin body model by a software tool, and the software tool may be a visualization tool, and the action performed by the digital twin lift model according to the joint motion data under modification may be is visible.
- step 303 that is, when the joint motion data satisfies all the motion compliance conditions, it is judged whether the joint motion data satisfies the motion optimization conditions based on the simulation data of the digital twin model, and if so, go to step 303 305, if not, go to step 304;
- the motion optimization condition includes that the joint motion data conforms to the kinematics of the robot and the motion corresponding to the joint motion data is smooth and smooth.
- the joint motion data does not meet the motion optimization condition, it may also be determined that the joint motion data does not meet the atomic motion constraint condition corresponding to the robot.
- the robot kinematics law may also be determined according to different robots. If the joint motion data does not satisfy the kinematics law of the robot or the preset fluency and smoothness, the actions performed by the robot will be stuck and unreasonable. Therefore, in order to ensure that the joint motion data is within the When executed by the robot, the smoothness and flow of the action can be guaranteed, and it will be judged whether the joint motion data satisfies the motion optimization condition.
- judgment order of the above motion optimization condition and the above motion compliance condition may be adjusted according to the actual situation, and the sequence is not limited in the present disclosure.
- step 304 that is, when the joint motion data does not meet the motion optimization conditions, the first optimization is performed on the joint motion data; Atomic action constraints, that is, return to step 301 .
- the first optimization method may include optimizing the joint motion data according to inverse kinematics, optimizing the joint motion data according to adversarial generation network training, optimizing the joint motion data according to data fitting, One or more of optimizing data optimization, optimizing the joint motion data according to an interpolation algorithm, or may also include other optimization methods, which are not limited in this disclosure, and the above-mentioned first optimization can be performed without manual labor. achieved without intervention.
- step 305 that is, when the joint motion data satisfies both the motion compliance condition and the motion optimization condition, execute the joint motion data through the digital twin model, and analyze the digital twin model for the joint motion data.
- the moving picture is displayed.
- step 306 in the case of receiving a first manual confirmation instruction, drive the robot to execute the joint motion data through the digital twin model, and the first manual confirmation instruction is that the user responds to the digital twin model
- the instruction input by the moving picture of the digital twin model is used to indicate that the moving picture of the digital twin model meets the requirements.
- the joint motion data satisfies the motion optimization condition, that is, the joint motion data satisfies both the motion compliance condition and the motion optimization condition, in this case, it can be executed through the digital twin model.
- the joint motion data is given to the user, so that the user can manually confirm whether the joint motion data meets the requirements of action learning.
- a manual modification instruction may be directly inputted to modify a bunch of the joint motion data, that is, step 302 may be turned to modify the joint motion data.
- the user may directly determine that the joint motion data does not meet the constraints of the atomic motion corresponding to the robot, thereby ending the learning of the motion.
- step 307 when a second manual confirmation instruction is received, it is determined that the joint motion data complies with the atomic motion constraint corresponding to the robot, and the second manual confirmation instruction is that the user responds to the The command input by the robot's execution action is used to indicate that the robot's execution action meets the requirements.
- the joint motion data may be determined as the atomic motion of the robot. However, if the user thinks that the action does not meet the requirements after viewing the action performed by the robot according to the joint motion data, the user can also return to step 302 to modify the joint motion data again through the manual modification instruction, and repeat the procedure. The judgment of whether the constraints of the atomic action are satisfied. Alternatively, the user may directly determine that the joint motion data does not meet the constraints of the atomic motion corresponding to the robot, thereby ending the learning of the motion.
- the joint motion data can be repaired or optimized by judging the motion compliance conditions and the motion optimization conditions, and the reliability of the learned atomic motion can also be ensured through double manual confirmation. sex.
- FIG. 4 is a flowchart of an action learning method according to another exemplary embodiment of the present disclosure. As shown in FIG. 4 , the method further includes steps 401 to 403 .
- step 401 when the robot is in an action imitation mode, it is judged whether the joint motion data conforms to the action imitation condition corresponding to the robot according to the simulation data of the digital twin model of the robot.
- the robot In the action imitation mode, the robot can learn and imitate the action made by the target object in real time.
- the motion imitation conditions may include, for example, the above-mentioned motion compliance conditions, or may also include the above-mentioned motion optimization conditions.
- the joint motion data can be scored according to the specific conditions of the motion imitation conditions. For example, if all the motion compliance conditions are met, 50 points will be awarded, and the robot that meets the motion optimization conditions will be scored. 10 points are awarded for any of the laws of kinematics, the preset smoothness, and the preset smoothness, and so on. Therefore, it can be judged whether the action imitation condition is satisfied according to the score.
- a second optimization is performed on the joint motion data, and it is re-determined whether the optimized joint motion data meets the requirements of the robot. Describe the corresponding action imitation conditions of the robot.
- the second optimization performed may include optimizing data optimization of the joint motion data according to inverse kinematics, optimizing data optimization of the joint motion data according to confrontation generation network training , one or more of optimizing data optimization for the joint motion data according to data fitting, optimizing data optimization for the joint motion data according to an interpolation algorithm, and performing smooth interpolation, for example, on the joint motion data.
- the methods included in the second optimization and the above-mentioned first optimization may be the same or different.
- step 403 in the case that the joint motion data meets the motion imitation conditions corresponding to the robot, the robot is driven to execute the joint motion data through the digital twin model, and returns to the robot after the motion execution is completed.
- the initial state of the robot in the case that the joint motion data meets the motion imitation conditions corresponding to the robot, the robot is driven to execute the joint motion data through the digital twin model, and returns to the robot after the motion execution is completed. The initial state of the robot.
- the function of imitating and learning the movements of the target object by the robot in real time can be realized under the condition of ensuring the safety of the robot.
- FIG. 5 is a structural block diagram of an action learning apparatus according to an exemplary embodiment of the present disclosure.
- the device includes: an acquisition module 10 for acquiring human motion image data of a target object; a determination module 20 for determining joint motion data of the robot corresponding to the human motion image data; a first The judgment module 30 is used for judging whether the joint motion data complies with the atomic motion constraints corresponding to the robot through the simulation data of the digital twin model of the robot; the learning module 40 is used for judging that the joint motion data meets the In the case of the atomic motion constraint corresponding to the robot, the joint motion data is determined as the atomic motion of the robot.
- the joint motion data of the robot can be determined by the acquired human body motion image data of the target object, so that the corresponding robot can be determined according to a set of human body motion image data of the target object.
- the joint motion data accelerates the learning speed of different robots for actions; and, according to the digital twin model of the digital and virtual robot, it is possible to judge online whether the joint motion data conforms to the constraints of atomic motions, without the need for a physical robot. Dramatically reduce the cost of generating robot actions.
- the determining module 20 includes: a denoising sub-module for performing denoising processing on the human action image data; a determining sub-module for The human action image data determines the corresponding three-dimensional posture motion data, and the three-dimensional posture motion data includes the motion data of each three-dimensional key point corresponding to the target object, and the three-dimensional key point is used to construct the three-dimensional posture of the target object. Attitude; a mapping submodule for mapping the joint movement data of the robot according to the three-dimensional attitude movement data.
- the first judging module 30 includes a first judging sub-module for judging whether the joint motion data satisfies the motion compliance condition based on the simulation data of the digital twin model, and the motion
- the compliance conditions include that the motion corresponding to the joint motion data is the atomic motion, the joint motion data does not contain a joint motion exceeding the physical limit of the joint, and the digital twin model executes the joint motion data when the joint motion data is executed. There is no collision and imbalance; and when the joint motion data does not meet any of the motion compliance conditions, it is determined that the joint motion data does not meet the atomic motion constraint conditions corresponding to the robot.
- the first judging module 30 further includes a second judging sub-module, which judges based on the simulation data of the digital twin model when the joint motion data satisfies all the motion compliance conditions Whether the joint motion data satisfies the motion optimization conditions, the motion optimization conditions include that the joint motion data conforms to the laws of robot kinematics and the motion corresponding to the joint motion data is smooth and smooth; and if the joint motion data does not satisfy the When the motion optimization conditions are met, it is determined that the joint motion data does not conform to the atomic motion constraint conditions corresponding to the robot.
- the first judging module 30 further includes a simulation sub-module, and when the joint motion data satisfies the motion optimization condition and the motion compliance condition, execute the execution by using the digital twin model
- the joint motion data is displayed, and the motion picture of the digital twin model is displayed; the action execution sub-module is used to drive the robot to execute all operations through the digital twin model when the first manual confirmation instruction is received.
- the joint motion data, the first manual confirmation instruction is the instruction input by the user in response to the motion picture of the digital twin model, and is used to indicate that the motion picture of the digital twin model meets the requirements;
- receiving a second manual confirmation instruction it is determined that the joint motion data complies with the atomic motion constraint corresponding to the robot, and the second manual confirmation instruction is input by the user in response to the execution action of the robot.
- the instructions are used to instruct the robot to perform actions that meet the requirements.
- the apparatus further includes: a correction module, configured to determine that the joint motion data does not conform to the atomic motion constraint corresponding to the robot through the simulation data of the digital twin model of the robot When , the joint motion data is corrected, and it is judged by the simulation data of the digital twin model of the robot whether the corrected joint motion data complies with the atomic motion constraint conditions corresponding to the robot, until the joint is determined
- the motion data conforms to the atomic motion constraints corresponding to the robot.
- the first judging module 30 includes a first judging sub-module for judging whether the joint motion data satisfies the motion compliance condition based on the simulation data of the digital twin model, and the motion compliance condition includes the joint motion data.
- the corresponding action is the atomic action, the joint motion data does not have a joint motion exceeding the physical limit of the joint, and the digital twin model does not collide and unbalance when executing the joint motion data;
- the first judging module 30 also includes a second judging sub-module, when the joint motion data satisfies all the motion compliance conditions, based on the simulation data of the digital twin model, it is judged whether the joint motion data satisfies the motion optimization.
- the motion optimization conditions include that the joint motion data conforms to the law of robot kinematics and the motion corresponding to the joint motion data is smooth and smooth;
- the correction module also includes:
- a first correction submodule configured to receive a manual modification instruction to modify the joint motion data when the joint motion data does not meet any of the motion compliance conditions, and re-judg the modified joint motion Whether the data conforms to the atomic action constraints corresponding to the robot.
- the second correction sub-module is configured to perform a first optimization on the joint motion data when the joint motion data does not meet the motion optimization condition, and re-judg whether the optimized joint motion data conforms to the corresponding robot
- the first optimization includes performing data optimization on the joint motion data according to inverse kinematics, performing data optimization on the joint motion data according to adversarial generation network training, and performing data optimization on the joint motion data according to data fitting.
- the apparatus further includes: a second judgment module, configured to judge the joint motion according to the simulation data of the digital twin model of the robot when the robot is in an action imitation mode Whether the data complies with the motion imitation conditions corresponding to the robot, the second optimization includes: performing data optimization on the joint motion data according to inverse kinematics; performing data optimization on the joint motion data according to the confrontation generation network training; One or more of data fitting to perform data optimization on the joint motion data, and data optimization for the joint motion data according to an interpolation algorithm; an optimization module for performing data optimization on the joint motion data when the joint motion data is inconsistent with the robot
- the joint motion data is secondly optimized, and it is re-judged whether the optimized joint motion data conforms to the motion imitation conditions corresponding to the robot; the execution module is used to perform a second optimization on the joint motion data.
- the robot is driven to execute the joint motion data through the digital twin model, and
- FIG. 6 is a block diagram of an electronic device 600 according to an exemplary embodiment.
- the electronic device 600 may include: a processor 601 and a memory 602 .
- the electronic device 600 may also include one or more of a multimedia component 603 , an input/output (I/O) interface 604 , and a communication component 605 .
- I/O input/output
- the processor 601 is used to control the overall operation of the electronic device 600 to complete all or part of the steps in the above-mentioned action learning method.
- the memory 602 is used to store various types of data to support operations on the electronic device 600, such data may include, for example, instructions for any application or method operating on the electronic device 600, and application-related data, Such as contact data, messages sent and received, pictures, audio, video, and so on.
- the memory 602 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as Static Random Access Memory (SRAM for short), Electrically Erasable Programmable Read-Only Memory ( Electrically Erasable Programmable Read-Only Memory (EEPROM for short), Erasable Programmable Read-Only Memory (EPROM), Programmable Read-Only Memory (PROM), Read-Only Memory (Read-Only Memory, referred to as ROM), magnetic memory, flash memory, magnetic disk or optical disk.
- Multimedia components 603 may include screen and audio components.
- the screen can be, for example, a touch screen, and the audio component is used for outputting and/or inputting audio signals.
- the audio component may include a microphone for receiving external audio signals.
- the received audio signal may be further stored in memory 602 or transmitted through communication component 605 .
- the audio assembly also includes at least one speaker for outputting audio signals.
- the I/O interface 604 provides an interface between the processor 601 and other interface modules, and the above-mentioned other interface modules may be a keyboard, a mouse, a button, and the like. These buttons can be virtual buttons or physical buttons.
- the communication component 605 is used for wired or wireless communication between the electronic device 600 and other devices. Wireless communication, such as Wi-Fi, Bluetooth, Near Field Communication (NFC), 2G, 3G, 4G, NB-IOT, eMTC, or other 5G, etc., or one or more of them The combination is not limited here. Therefore, the corresponding communication component 605 may include: Wi-Fi module, Bluetooth module, NFC module and so on.
- the electronic device 600 may be implemented by one or more application-specific integrated circuits (Application Specific Integrated Circuit, ASIC for short), digital signal processors (Digital Signal Processor, DSP for short), digital signal processing devices (Digital Signal Processing Device (DSPD), Programmable Logic Device (PLD), Field Programmable Gate Array (FPGA), controller, microcontroller, microprocessor or other electronic components Implementation is used to perform the above-mentioned action learning method.
- ASIC Application Specific Integrated Circuit
- DSP Digital Signal Processor
- DSP digital signal processing devices
- DSPD Digital Signal Processing Device
- PLD Programmable Logic Device
- FPGA Field Programmable Gate Array
- controller microcontroller, microprocessor or other electronic components Implementation is used to perform the above-mentioned action learning method.
- a computer-readable storage medium including program instructions is also provided, and when the program instructions are executed by a processor, the steps of the above-mentioned action learning method are implemented.
- the computer-readable storage medium can be the above-mentioned memory 602 including program instructions, and the above-mentioned program instructions can be executed by the processor 601 of the electronic device 600 to implement the above-mentioned action learning method.
- FIG. 7 is a block diagram of an electronic device 700 according to an exemplary embodiment.
- the electronic device 700 may be provided as a server. 7
- an electronic device 700 includes a processor 722 , which may be one or more in number, and a memory 732 for storing computer programs executable by the processor 722 .
- the computer program stored in memory 732 may include one or more modules, each corresponding to a set of instructions.
- the processor 722 may be configured to execute the computer program to perform the above-described action learning method.
- the electronic device 700 may also include a power supply component 726, which may be configured to perform power management of the electronic device 700, and a communication component 750, which may be configured to enable communication of the electronic device 700, eg, wired or wireless communication. Additionally, the electronic device 700 may also include an input/output (I/O) interface 758 . Electronic device 700 may operate based on an operating system stored in memory 732, such as Windows Server TM , Mac OS X TM , Unix TM , Linux TM , and the like.
- an operating system stored in memory 732, such as Windows Server TM , Mac OS X TM , Unix TM , Linux TM , and the like.
- a computer-readable storage medium including program instructions is also provided, and when the program instructions are executed by a processor, the steps of the above-mentioned action learning method are implemented.
- the computer-readable storage medium can be the above-mentioned memory 732 including program instructions, and the above-mentioned program instructions can be executed by the processor 722 of the electronic device 700 to implement the above-mentioned action learning method.
- a computer program product comprising a computer program executable by a programmable apparatus, the computer program having, when executed by the programmable apparatus, for performing the above The code part of the action learning method.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- General Health & Medical Sciences (AREA)
- Automation & Control Theory (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Robotics (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Biomedical Technology (AREA)
- Social Psychology (AREA)
- Human Computer Interaction (AREA)
- Evolutionary Biology (AREA)
- Geometry (AREA)
- Computer Hardware Design (AREA)
- Psychiatry (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Bioinformatics & Computational Biology (AREA)
- Medical Informatics (AREA)
- Fuzzy Systems (AREA)
- Manipulator (AREA)
Abstract
The present disclosure relates to an action learning method and apparatus, a storage medium, and an electronic device. Said method comprises: acquiring human action image data of a target object; determining joint motion data of a robot corresponding to the human action image data; determining, by means of simulation data of a digital twin model of the robot, whether the joint motion data conforms to an atomic action constraint corresponding to the robot; and in cases where it is determined that the joint motion data conforms to the atomic action constraint corresponding to the robot, determining the joint motion data as the atomic action of the robot. By means of the described technical solution, a set of human actions can be converted into atomic actions of a plurality of different robots, and learning of human actions is completed on the basis of a digitized and virtual robot digital twin model, without the need of a physical robot, thereby greatly reducing costs of generating robot actions.
Description
相关申请的交叉引用CROSS-REFERENCE TO RELATED APPLICATIONS
本公开要求在2020年12月24日提交中国专利局、申请号为202011552528.1、名称为“动作学习方法、装置、存储介质及电子设备”的中国专利申请的优先权,其全部内容通过引用结合在本公开中。This disclosure claims the priority of a Chinese patent application with application number 202011552528.1 and titled "Action Learning Method, Apparatus, Storage Medium and Electronic Equipment" filed with the China Patent Office on December 24, 2020, the entire contents of which are incorporated by reference in in this disclosure.
本公开涉及机器人领域,具体地,涉及一种动作学习方法、装置、存储介质及电子设备。The present disclosure relates to the field of robotics, and in particular, to an action learning method, device, storage medium, and electronic device.
机器人每个动作都是的多个关节组合运动的过程。机器人学习人类动作的方法通常都是先通过人体可穿戴设备来先捕捉人体运动姿态。然后根据人体运动姿态控制实体机器人进行动作的学习。实体机器人动作学习的成本较高,并且相同动作在不同机器人身上需要反复学习。并且动作捕捉常见的方式是在运动物体的关键部位设置跟踪器,例如惯性测量单元(IMU)。惯性动捕各个传感器处的三维位置和方向信息可实时地记录并显示(存在少许延迟),小范围使用费用相对合理。但缺陷也是很明显的,其每次使用需要消磁,且其往往受限于磁场的范围和精度,空间定位不准,且出于设备原因,动作局限也比较多然。而且一个人就是一套装备,多人的话成本成倍增加。Each action of the robot is a process of combining multiple joints. The method for robots to learn human actions is usually to first capture human motion postures through human wearable devices. Then control the physical robot to learn the action according to the human motion posture. The cost of action learning for physical robots is high, and the same action needs to be learned repeatedly on different robots. And a common way of motion capture is to set trackers, such as inertial measurement units (IMUs), at key parts of moving objects. The three-dimensional position and orientation information at each sensor of the inertial motion capture can be recorded and displayed in real time (with a slight delay), and the cost of small-scale use is relatively reasonable. However, the defects are also obvious. It needs to be demagnetized every time it is used, and it is often limited by the range and accuracy of the magnetic field, the spatial positioning is not accurate, and due to equipment reasons, there are many action limitations. And one person is a set of equipment, and the cost of multiple people increases exponentially.
发明内容SUMMARY OF THE INVENTION
本公开的目的是提供一种动作学习方法、装置、存储介质及电子设备,能够将一组人体动作转换为多个不同机器人的原子动作,并且对人体动作的 学习均基于数字化的、虚拟的机器人数字孪生体模型完成,不需要实体机器人,可大幅降低生成机器人动作的成本。The purpose of the present disclosure is to provide an action learning method, device, storage medium and electronic device, which can convert a group of human actions into atomic actions of multiple different robots, and the learning of human actions is based on digital and virtual robots The completion of the digital twin model does not require a physical robot, which can greatly reduce the cost of generating robot actions.
为了实现上述目的,本公开提供一种动作学习方法,所述方法包括:In order to achieve the above object, the present disclosure provides an action learning method, the method includes:
获取目标对象的人体动作图像数据;Obtain the human action image data of the target object;
确定与所述人体动作图像数据对应的机器人的关节运动数据;determining the joint motion data of the robot corresponding to the human body motion image data;
通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的原子动作约束条件;Determine whether the joint motion data complies with the atomic motion constraints corresponding to the robot by using the simulation data of the digital twin model of the robot;
在判定所述关节运动数据符合与所述机器人对应的所述原子动作约束条件的情况下,将所述关节运动数据确定为所述机器人的原子动作。When it is determined that the joint motion data complies with the atomic motion constraint conditions corresponding to the robot, the joint motion data is determined as the atomic motion of the robot.
可选地,所述确定与所述人体动作图像数据对应的机器人的关节运动数据包括:Optionally, the determining the joint motion data of the robot corresponding to the human motion image data includes:
对所述人体动作图像数据进行去噪处理;performing denoising processing on the human action image data;
根据所述去噪处理后的所述人体动作图像数据确定对应的三维姿态运动数据,所述三维姿态运动数据中包括与所述目标对象对应的各三维关键点的运动数据,所述三维关键点用于构建所述目标对象的三维姿态;Corresponding three-dimensional gesture motion data is determined according to the denoised human motion image data, and the three-dimensional gesture motion data includes the motion data of each three-dimensional key point corresponding to the target object, and the three-dimensional key point for constructing the three-dimensional pose of the target object;
根据所述三维姿态运动数据映射得到所述机器人的所述关节运动数据。The joint motion data of the robot is obtained by mapping the three-dimensional posture motion data.
可选地,所述通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的原子动作约束条件包括:Optionally, judging whether the joint motion data complies with the atomic motion constraints corresponding to the robot by using the simulation data of the digital twin model of the robot includes:
基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动合规条件,所述运动合规条件包括所述关节运动数据对应的动作为所述原子动作、所述关节运动数据中不存在关节运动超过所述关节的物理限位、所述数字孪生模型在执行所述关节运动数据时未出现碰撞和失衡现象;Based on the simulation data of the digital twin model, it is determined whether the joint motion data meets the motion compliance conditions, and the motion compliance conditions include that the motion corresponding to the joint motion data is the atomic motion, and the joint motion data does not There is a joint movement that exceeds the physical limit of the joint, and the digital twin model does not have collision and imbalance when executing the joint movement data;
在所述关节运动数据不满足所述运动合规条件中的任一条时,判定所述关节运动数据不符合与所述机器人对应的原子动作约束条件。When the joint motion data does not meet any one of the motion compliance conditions, it is determined that the joint motion data does not meet the atomic motion constraint conditions corresponding to the robot.
可选地,所述通过所述机器人的数字孪生模型的仿真数据判断所述关节 运动数据是否符合与所述机器人对应的原子动作约束条件还包括:Optionally, it is described whether the joint motion data is judged by the simulation data of the digital twin model of the robot to meet the atomic action constraint corresponding to the robot and also includes:
在所述关节运动数据满足所有所述运动合规条件时,基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动优化条件,所述运动优化条件包括所述关节运动数据符合机器人运动学规律和所述关节运动数据对应的动作流畅平滑;When the joint motion data satisfies all of the motion compliance conditions, determine whether the joint motion data satisfies motion optimization conditions based on the simulation data of the digital twin model, where the motion optimization conditions include that the joint motion data complies with the robot The motions corresponding to the kinematic laws and the joint motion data are smooth and smooth;
在所述关节运动数据不满足所述运动优化条件时,判定所述关节运动数据不符合与所述机器人对应的原子动作约束条件。When the joint motion data does not meet the motion optimization condition, it is determined that the joint motion data does not meet the atomic motion constraint condition corresponding to the robot.
可选地,所述通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的原子动作约束条件还包括:Optionally, judging whether the joint motion data complies with the atomic motion constraints corresponding to the robot by using the simulation data of the digital twin model of the robot further includes:
在所述关节运动数据满足所述运动优化条件和所述运动合规条件时,通过所述数字孪生模型执行所述关节运动数据,并对所述数字孪生模型的运动画面进行显示;When the joint motion data satisfies the motion optimization condition and the motion compliance condition, execute the joint motion data through the digital twin model, and display the motion picture of the digital twin model;
在接收到第一人工确认指令的情况下,通过所述数字孪生模型驱动所述机器人执行所述关节运动数据,所述第一人工确认指令为用户响应于所述数字孪生模型的运动画面所输入的指令,用于指示所述数字孪生模型的运动画面符合要求;In the case of receiving the first manual confirmation instruction, the robot is driven to execute the joint motion data through the digital twin model, and the first manual confirmation instruction is input by the user in response to the motion picture of the digital twin model instruction, used to indicate that the motion picture of the digital twin model meets the requirements;
在接收到第二人工确认指令的情况下,判定所述关节运动数据符合与所述机器人对应的所述原子动作约束条件,所述第二人工确认指令为用户响应于所述机器人的执行动作所输入的指令,用于指示所述机器人的执行动作符合要求。In the case of receiving a second manual confirmation instruction, it is determined that the joint motion data complies with the atomic motion constraint corresponding to the robot, and the second manual confirmation instruction is determined by the user in response to the execution action of the robot. The input instructions are used to instruct the robot to perform actions that meet the requirements.
可选地,所述方法还包括:在通过所述机器人的数字孪生模型的仿真数据判定所述关节运动数据不符合与所述机器人对应的原子动作约束条件时,对所述关节运动数据进行修正,并通过所述机器人的数字孪生模型的仿真数据判断修正后的所述关节运动数据是否符合与所述机器人对应的原子动作约束条件,直至判定所述关节运动数据符合与所述机器人对应的所述原子动 作约束条件。Optionally, the method further includes: when it is determined that the joint motion data does not meet the atomic motion constraint conditions corresponding to the robot through the simulation data of the digital twin model of the robot, correcting the joint motion data , and judge whether the revised joint motion data complies with the atomic motion constraints corresponding to the robot through the simulation data of the digital twin model of the robot, until it is determined that the joint motion data complies with the Describe the atomic action constraints.
可选地,所述通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的原子动作约束条件包括:Optionally, judging whether the joint motion data complies with the atomic motion constraints corresponding to the robot by using the simulation data of the digital twin model of the robot includes:
基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动合规条件,所述运动合规条件包括所述关节运动数据对应的动作为所述原子动作、所述关节运动数据中不存在关节运动超过所述关节的物理限位、所述数字孪生模型在执行所述关节运动数据时未出现碰撞和失衡现象;Based on the simulation data of the digital twin model, it is determined whether the joint motion data meets the motion compliance conditions, and the motion compliance conditions include that the motion corresponding to the joint motion data is the atomic motion, and the joint motion data does not There is a joint movement that exceeds the physical limit of the joint, and the digital twin model does not have collision and imbalance when executing the joint movement data;
在所述关节运动数据满足所有所述运动合规条件时,基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动优化条件,所述运动优化条件包括所述关节运动数据符合机器人运动学规律和所述关节运动数据对应的动作流畅平滑;When the joint motion data satisfies all of the motion compliance conditions, determine whether the joint motion data satisfies motion optimization conditions based on the simulation data of the digital twin model, where the motion optimization conditions include that the joint motion data complies with the robot The motions corresponding to the kinematic laws and the joint motion data are smooth and smooth;
所述对所述关节运动数据进行修正,包括:The modifying the joint motion data includes:
在所述关节运动数据不满足所述运动合规条件中的任一条时,接收人工修改指令以对所述关节运动数据进行修改;When the joint motion data does not meet any one of the motion compliance conditions, receiving a manual modification instruction to modify the joint motion data;
在所述关节运动数据不满足所述运动优化条件时,对所述关节运动数据进行第一优化,并重新判断优化后的关节运动数据是否符合与所述机器人对应的原子动作约束条件,所述第一优化包括根据逆运动学对所述关节运动数据进行数据优化、根据对抗生成网络训练对所述关节运动数据进行数据优化、根据数据拟合对所述关节运动数据进行数据优化、根据插值算法对所述关节运动数据进行数据优化中的一者或多者。When the joint motion data does not meet the motion optimization condition, perform a first optimization on the joint motion data, and re-judg whether the optimized joint motion data complies with the atomic motion constraint conditions corresponding to the robot, and the The first optimization includes performing data optimization on the joint motion data according to inverse kinematics, performing data optimization on the joint motion data according to confrontational generation network training, performing data optimization on the joint motion data according to data fitting, and performing data optimization on the joint motion data according to an interpolation algorithm. One or more of data optimizations are performed on the articulation data.
可选地,在所述机器人处于动作模仿模式的情况下,所述方法还包括:Optionally, when the robot is in an action imitation mode, the method further includes:
通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的动作模仿条件;Judging by the simulation data of the digital twin model of the robot whether the joint motion data conforms to the action imitation conditions corresponding to the robot;
在所述关节运动数据不符合与所述机器人对应的动作模仿条件的情况下,对所述关节运动数据进行第二优化,并重新判断优化后的关节运动数据 是否符合与所述机器人对应的动作模仿条件,所述第二优化包括根据逆运动学对所述关节运动数据进行数据优化、根据对抗生成网络训练对所述关节运动数据进行数据优化、根据数据拟合对所述关节运动数据进行数据优化、根据插值算法对所述关节运动数据进行数据优化中的一者或多者;In the case that the joint motion data does not conform to the motion imitation conditions corresponding to the robot, a second optimization is performed on the joint motion data, and it is re-determined whether the optimized joint motion data conforms to the motion corresponding to the robot Imitating conditions, the second optimization includes performing data optimization on the joint motion data according to inverse kinematics, performing data optimization on the joint motion data according to adversarial generation network training, and performing data optimization on the joint motion data according to data fitting. One or more of optimizing and performing data optimization on the joint motion data according to an interpolation algorithm;
在所述关节运动数据符合与所述机器人对应的动作模仿条件的情况下,通过所述数字孪生模型驱动所述机器人执行所述关节运动数据,并在动作执行完成之后回到所述机器人的初始状态。In the case that the joint motion data conforms to the motion simulation conditions corresponding to the robot, the robot is driven to execute the joint motion data through the digital twin model, and returns to the initial stage of the robot after the motion execution is completed. state.
本公开还提供一种动作学习装置,所述装置包括:The present disclosure also provides an action learning device, the device comprising:
获取模块,用于获取目标对象的人体动作图像数据;an acquisition module, used to acquire human motion image data of the target object;
确定模块,用于确定与所述人体动作图像数据对应的机器人的关节运动数据;a determination module for determining joint motion data of the robot corresponding to the human body motion image data;
第一判断模块,用于通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的原子动作约束条件;a first judging module, used for judging whether the joint motion data complies with the atomic motion constraints corresponding to the robot through the simulation data of the digital twin model of the robot;
学习模块,用于在判定所述关节运动数据符合与所述机器人对应的所述原子动作约束条件的情况下,将所述关节运动数据确定为所述机器人的原子动作。The learning module is configured to determine the joint motion data as the atomic motion of the robot when it is determined that the joint motion data conforms to the atomic motion constraint conditions corresponding to the robot.
本公开还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以上所述方法的步骤。The present disclosure also provides a computer-readable storage medium on which a computer program is stored, and when the program is executed by a processor, implements the steps of the above-described method.
本公开还提供一种电子设备,包括:The present disclosure also provides an electronic device, comprising:
存储器,其上存储有计算机程序;a memory on which a computer program is stored;
处理器,用于执行所述存储器中的所述计算机程序,以实现以上所述方法的步骤。A processor for executing the computer program in the memory to implement the steps of the above-described method.
本公开还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行以上所述方法的步骤的代码部分。The present disclosure also provides a computer program product comprising a computer program executable by a programmable apparatus, the computer program having code for performing the steps of the above-described method when executed by the programmable apparatus part.
通过上述技术方案,能够通过获取到的目标对象的人体动作图像数据,来确定该机器人的关节运动数据,这样就能够根据该目标对象的一组人体动作图像数据确定得到多个不同机器人分别对应的关节运动数据,加快了不同机器人对动作的学习速度;并且,能够根据该数字化的、虚拟的机器人的数字孪生模型在线上对关节运动数据是否符合原子动作约束条件进行判断,不需要实体机器人,可大幅降低生成机器人动作的成本。Through the above technical solution, the joint motion data of the robot can be determined by the acquired human body motion image data of the target object, so that the corresponding robot can be determined according to a set of human body motion image data of the target object. The joint motion data accelerates the learning speed of different robots for actions; and, according to the digital twin model of the digital and virtual robot, it is possible to judge online whether the joint motion data conforms to the constraints of atomic motions, without the need for a physical robot. Dramatically reduce the cost of generating robot actions.
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。Other features and advantages of the present disclosure will be described in detail in the detailed description that follows.
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:The accompanying drawings are used to provide a further understanding of the present disclosure, and constitute a part of the specification, and together with the following detailed description, are used to explain the present disclosure, but not to limit the present disclosure. In the attached image:
图1是根据本公开一示例性实施例示出的一种动作学习方法的流程图。FIG. 1 is a flowchart of an action learning method according to an exemplary embodiment of the present disclosure.
图2是根据本公开又一示例性实施例示出的一种动作学习方法的流程图。Fig. 2 is a flowchart of an action learning method according to another exemplary embodiment of the present disclosure.
图3是根据本公开又一示例性实施例示出的一种动作学习方法的流程图。Fig. 3 is a flowchart of an action learning method according to another exemplary embodiment of the present disclosure.
图4是根据本公开又一示例性实施例示出的一种动作学习方法的流程图。Fig. 4 is a flowchart of an action learning method according to another exemplary embodiment of the present disclosure.
图5是根据本公开一示例性实施例示出的一种动作学习装置的结构框图。FIG. 5 is a structural block diagram of an action learning apparatus according to an exemplary embodiment of the present disclosure.
图6是根据一示例性实施例示出的一种电子设备的框图。Fig. 6 is a block diagram of an electronic device according to an exemplary embodiment.
图7是根据一示例性实施例示出的一种电子设备的框图。Fig. 7 is a block diagram of an electronic device according to an exemplary embodiment.
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。The specific embodiments of the present disclosure will be described in detail below with reference to the accompanying drawings. It should be understood that the specific embodiments described herein are only used to illustrate and explain the present disclosure, but not to limit the present disclosure.
图1是根据本公开一示例性实施例示出的一种动作学习方法的流程图。如图1所示,所述方法包括步骤101至步骤102。FIG. 1 is a flowchart of an action learning method according to an exemplary embodiment of the present disclosure. As shown in FIG. 1 , the method includes steps 101 to 102 .
在步骤101中,获取目标对象的人体动作图像数据。In step 101, the human body motion image data of the target object is acquired.
目标对象可以为任意在获取范围内的,能够执行待学习动作的对象,例如可以为人,也可以为动物,或者还可以为其他能够执行动作的机器人等等。The target object may be any object within the acquisition range that can perform the action to be learned, such as a human being, an animal, or other robots capable of performing actions, and so on.
人体动作图像数据可以是2D数据,也可以为3D数据,能够通过任意RGB相机、深度相机或者激光雷达等获取得到的,例如该深度相机可以为基于TOF的深度相机、或者基于红外线的深度相机、或者基于被动视觉的单目深度相机或者双目深度相机等等。Human motion image data can be 2D data or 3D data, and can be obtained by any RGB camera, depth camera or lidar, for example, the depth camera can be a TOF-based depth camera, or an infrared-based depth camera, Or passive vision-based monocular depth cameras or binocular depth cameras, etc.
用于获取人体动作图像数据的设备可以设置于机器人的头部、胸部、腰部等任意位置,从而使得该机器人能够对目标对象在其面前作出的动作进行学习,或者也可以通过未设置于该机器人上的获取设备来获取该人体动作图像数据,例如可以通过设置于场景环境中的其他设备对该人体动作图像数据进行获取。The device used to obtain human motion image data can be set at any position on the robot's head, chest, waist, etc., so that the robot can learn the movements made by the target object in front of it, or it can also be used not set on the robot. The human body motion image data can be acquired by the acquisition device on the scene environment, for example, the human body motion image data can be acquired by other devices set in the scene environment.
获取该人体动作图像数据的过程中,可以是先定位该目标对象的位置,并针对该目标对象的人体动作图像数据进行获取;或者也可以是在该目标对象存在于获取范围内之后,对获取范围内所有物体都进行图像数据的获取,并在获取到的所有图像数据中提取该目标对象的动作相关的人体动作图像数据。In the process of acquiring the human body motion image data, the position of the target object may be located first, and the human body motion image data of the target object may be acquired; or after the target object exists within the acquisition range, Image data is acquired for all objects within the range, and human motion image data related to the motion of the target object is extracted from all the acquired image data.
在步骤102中,确定与所述人体动作图像数据对应的机器人的关节运动数据。In step 102, the joint motion data of the robot corresponding to the human body motion image data is determined.
由于不同类型的机器人对应的关节结构都不相同,因此对于某一相同动作,不同的机器人对应的关节运动数据也会不相同。因此,在获取到该人体动作图像数据之后,需要确定待学习的机器人。例如,该机器人可以为单臂机器人,也可以为双臂机器人,可以为单足机器人,也可以为双足机器人,可以为手部是二指多关节的机器人,也可以为手部是多指多关节的机器人等等。Since the joint structures corresponding to different types of robots are different, for a same action, the joint motion data corresponding to different robots will also be different. Therefore, after acquiring the human action image data, it is necessary to determine the robot to be learned. For example, the robot may be a single-arm robot, a dual-arm robot, a single-leg robot, or a biped robot, a robot with two-finger multi-joint hands, or a multi-fingered hand. Articulated robots and more.
该关节运动数据中所包括的内容可以根据该机器人的实际关节来确定,只要是根据该目标对象的人体动作图像数据所学习得到的即可。例如,该目标对象是人,且该人体动作图像数据中所对应的动作中包括双腿和双手等全身的动作,而该机器人为拥有双臂的单足机器人,则确定得到的与该人体动作图像数据对应的该关节运动数据中则可以仅包括头部、双臂、腰部等上半身的运动数据,从而在尽可能保证该关节运动数据对应的动作与该人体动作图像数据对应的动作相似的情况下,也能保证所述机器人的平衡稳定和安全。The content included in the joint motion data can be determined according to the actual joints of the robot, as long as it is learned from the human body motion image data of the target object. For example, if the target object is a person, and the actions corresponding to the human body motion image data include the actions of the whole body such as legs and hands, and the robot is a monopod robot with two arms, it is determined that the obtained motion is the same as the action of the human body. The joint motion data corresponding to the image data may only include the motion data of the upper body such as the head, arms, and waist, so as to ensure that the motion corresponding to the joint motion data is similar to the motion corresponding to the human motion image data as much as possible. It can also ensure the balance, stability and safety of the robot.
其中,该关节运动数据也即多组多个具有时序属性的关节旋转角度数值所构成的,例如,对于一个6轴机器人手臂的关节运动数据可以为:Among them, the joint motion data is also composed of multiple sets of joint rotation angle values with time series attributes. For example, the joint motion data for a 6-axis robot arm can be:
[(0)(1:1:3.68)(2:1:3.09)(3:1:2.88)(4:1:1.98)(5:1:1.58)(6:1:1.87)],[(0)(1:1:3.68)(2:1:3.09)(3:1:2.88)(4:1:1.98)(5:1:1.58)(6:1:1.87)],
[(100)(1:1:3.31)(2:1:2.85)(3:1:2.34)(4:1:1.54)(5:1:1.35)(6:1:0.85)],[(100)(1:1:3.31)(2:1:2.85)(3:1:2.34)(4:1:1.54)(5:1:1.35)(6:1:0.85)],
其中,(0)(100)表示时间戳,(0)可以为起始时间点,(100)可以为与上一时间戳时间间隔(单位可以为例如毫秒);(1:1:3.68)中第一个1表示该6轴机器人手臂中的第一关节,第二个1表示正向旋转,(3.68)表示旋转角度位置,其中,关节顺序是在机器人中定义好的,能够直接用相应标志位上的数字顺序来表示,例如2则表示第二关节,3则表示第三关节;除了上述在相应标志位上用1表征的正向旋转之外,还能够进行反向旋转,反向旋转能够用0来表征。Among them, (0) (100) represents the timestamp, (0) can be the starting time point, (100) can be the time interval from the last timestamp (unit can be, for example, milliseconds); (1:1:3.68) The first 1 represents the first joint in the 6-axis robot arm, the second 1 represents the forward rotation, and (3.68) represents the rotation angle position, where the joint sequence is defined in the robot, and the corresponding flag can be directly used For example, 2 represents the second joint, and 3 represents the third joint; in addition to the above-mentioned forward rotation represented by 1 on the corresponding sign bit, reverse rotation and reverse rotation can also be performed. can be represented by 0.
在步骤103中,通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的原子动作约束条件。In step 103, it is judged whether the joint motion data complies with the atomic motion constraint conditions corresponding to the robot according to the simulation data of the digital twin model of the robot.
该数字孪生模型为将机器人的物理模型数字化后得到的虚拟机器人,该机器人的物理模型包括外观、各个关节的电机、传感器、重力、碰撞等物理仿真模型,该数字孪生模型还能够接收该机器人的感知反馈并能够对该机器人进行同步控制。该数字孪生模型可以是存储于在服务器端,由服务器端通过该数字孪生模型的仿真数据来对该关节运动数据是否满足该原子动作约 束条件进行判断。The digital twin model is a virtual robot obtained by digitizing the physical model of the robot. The physical model of the robot includes physical simulation models such as appearance, motors of each joint, sensors, gravity, and collision. The digital twin model can also receive the robot's physical simulation model. Perceives feedback and is able to synchronously control the robot. The digital twin model may be stored on the server side, and the server side judges whether the joint motion data satisfies the atomic action constraint condition through the simulation data of the digital twin model.
该原子动作约束条件用于约束该关节运动数据对应的动作,避免有影响机器人稳定和安全的动作,或者有不是原子动作的动作被确定为该机器人的原子动作。该原子动作约束条件可以根据该机器人的实际情况来设定。该原子动作也即用于组成其他动作的基础动作,例如抬手,放手等动作,机器人在执行该原子动作的情况下,执行过程无法被打算或拆分。The atomic action constraint condition is used to constrain the action corresponding to the joint motion data, to avoid actions that affect the stability and safety of the robot, or actions that are not atomic actions to be determined as the atomic actions of the robot. The atomic action constraints can be set according to the actual situation of the robot. The atomic action is also the basic action used to compose other actions, such as raising the hand, letting go of the hand, etc. When the robot executes the atomic action, the execution process cannot be planned or split.
在步骤104中,在判定所述关节运动数据符合与所述机器人对应的所述原子动作约束条件的情况下,将所述关节运动数据确定为所述机器人的原子动作。In step 104, when it is determined that the joint motion data complies with the atomic motion constraint conditions corresponding to the robot, the joint motion data is determined as the atomic motion of the robot.
多个原子动作可以组成新的机器人行为,学习得到的该原子动作可以存储于该机器人中,也可存储于云端服务器中。Multiple atomic actions can form new robot behaviors, and the learned atomic actions can be stored in the robot or in a cloud server.
通过上述技术方案,能够通过获取到的目标对象的人体动作图像数据,来确定该机器人的关节运动数据,这样就能够根据该目标对象的一组人体动作图像数据确定得到多个不同机器人分别对应的关节运动数据,加快了不同机器人对动作的学习速度;并且,能够根据该数字化的、虚拟的机器人的数字孪生模型在线上对关节运动数据是否符合原子动作约束条件进行判断,不需要实体机器人,可大幅降低生成机器人动作的成本。Through the above technical solution, the joint motion data of the robot can be determined by the acquired human body motion image data of the target object, so that the corresponding robot can be determined according to a set of human body motion image data of the target object. The joint motion data accelerates the learning speed of different robots for actions; and, according to the digital twin model of the digital and virtual robot, it is possible to judge online whether the joint motion data conforms to the constraints of atomic motions, without the need for a physical robot. Dramatically reduce the cost of generating robot actions.
图2是根据本公开又一示例性实施例示出的一种动作学习方法的流程图。如图2所示,所述方法还包括步骤201至步骤203。Fig. 2 is a flowchart of an action learning method according to another exemplary embodiment of the present disclosure. As shown in FIG. 2 , the method further includes steps 201 to 203 .
在步骤201中,对所述人体动作图像数据进行去噪处理。该去噪处理可以通过任意去噪方法来执行,通过对该人体动作图像数据的去噪和优化,能够使得该人体动作图像数据中所包括的动作能够更加准确。In step 201, denoising processing is performed on the human body motion image data. The denoising process can be performed by any denoising method, and by denoising and optimizing the human action image data, the actions included in the human action image data can be made more accurate.
在步骤202中,根据所述去噪处理后的所述人体动作图像数据确定对应的三维姿态运动数据,所述三维姿态运动数据中包括与所述目标对象对应的各三维关键点的运动数据,所述三维关键点用于构建所述目标对象的三维姿 态。In step 202, the corresponding three-dimensional posture motion data is determined according to the denoised human body motion image data, and the three-dimensional posture motion data includes the motion data of each three-dimensional key point corresponding to the target object, The three-dimensional key points are used to construct the three-dimensional pose of the target object.
也即,在得到该去噪处理之后的人体动作图像数据之后,能够在该人体动作图像数据中确定出用于构建该目标对象的三维姿态的三维关键点,然后通过该三维关键点在该人体动作图像数据的运动数据,确定的与该人体动作图像数据对应的三维姿态运动数据。该三维姿态运动数据由具有时序属性的多组多个关键点的三维位置数值组成。That is, after obtaining the human body motion image data after the denoising process, the three-dimensional key points used to construct the three-dimensional posture of the target object can be determined in the human body motion image data, and then the three-dimensional key points can be used to construct the three-dimensional key points of the human body. The motion data of the motion image data, the determined three-dimensional gesture motion data corresponding to the human motion image data. The three-dimensional attitude motion data is composed of three-dimensional position values of multiple groups of multiple key points with time series attributes.
在步骤203中,根据所述三维姿态运动数据映射得到所述机器人的所述关节运动数据。In step 203, the joint motion data of the robot is obtained by mapping the three-dimensional posture motion data.
在确定该机器人之后,则可以得到该机器人中的关节信息,进而便可以将该三维姿态运动数据映射至该机器人中的相应的关节中。映射的方法可以为通过深度学习神经网络来进行,其中,可以分别针对不同的机器人训练不同的深度学习神经网络,并根据该机器人来选择对应的深度学习神经网络以进行映射。After the robot is determined, joint information in the robot can be obtained, and then the three-dimensional pose motion data can be mapped to corresponding joints in the robot. The mapping method can be performed through a deep learning neural network, wherein different deep learning neural networks can be trained for different robots respectively, and a corresponding deep learning neural network can be selected for mapping according to the robot.
图3是根据本公开又一示例性实施例示出的一种动作学习方法的流程图。如图3所示,所述方法还包括步骤301至步骤307。Fig. 3 is a flowchart of an action learning method according to another exemplary embodiment of the present disclosure. As shown in FIG. 3 , the method further includes steps 301 to 307 .
在步骤301中,基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动合规条件,若是,则转至步骤303,若否,则转至步骤302。其中,所述运动合规条件包括所述关节运动数据对应的动作为所述原子动作、所述关节运动数据中不存在关节运动超过所述关节的物理限位、所述数字孪生模型在执行所述关节运动数据时未出现碰撞和失衡现象。在所述关节运动数据不满足所述运动合规条件中的任一条时,可以判定该关节运动数据不满足该运动合规条件,也即不满足不符合与所述机器人对应的原子动作约束条件。In step 301, based on the simulation data of the digital twin model, it is judged whether the joint motion data satisfies the motion compliance condition, if yes, go to step 303, if not, go to step 302. The motion compliance conditions include that the motion corresponding to the joint motion data is the atomic motion, there is no joint motion in the joint motion data that exceeds the physical limit of the joint, the digital twin model is executing all No collision or imbalance occurred when the joint motion data was described. When the joint motion data does not satisfy any one of the motion compliance conditions, it can be determined that the joint motion data does not satisfy the motion compliance condition, that is, does not satisfy the atomic motion constraint condition corresponding to the robot .
其中,判断该关节运动数据对应的动作是否为所述原子动作的方法可以为多种。例如,可以将该关节运动数据与预设的多种原子动作的运动数据进 行特征比较,从而得到该关节运动数据与多种原子动作的运动数据的特征相似度,若该关节运动数据与两种或两种以上的原子动作的运动数据之间的特征相似度超过预设阈值,则可判断该关节运动数据对应的动作不为需要学习的该原子动作。There are various methods for judging whether the action corresponding to the joint motion data is the atomic action. For example, the feature comparison between the joint motion data and the preset motion data of various atomic actions can be performed to obtain the feature similarity between the joint motion data and the motion data of various atomic actions. Or if the feature similarity between the motion data of two or more atomic actions exceeds a preset threshold, it can be determined that the action corresponding to the joint motion data is not the atomic action that needs to be learned.
上述关节的物理限位与该机器人中的具体关节相关。在判断该关节运动数据中是否存在关节运动超过该关节的物理限位的情况时,可以先分别获取该机器人中的所有关节对应的物理限位,然后对该关节运动数据中涉及到的关节的运动数据进行比较。The physical limits of the above joints are related to the specific joints in the robot. When judging whether there is a joint motion exceeding the physical limit of the joint in the joint motion data, the physical limit corresponding to all the joints in the robot can be obtained separately, and then the joint motion data of the joint is involved. exercise data for comparison.
上述数字孪生模型出现碰撞的情况可以包括自碰撞,例如模型手臂在运动过程中与模型腿部出现重叠,在该数字孪生模型处于与该机器人相同的三维环境场景中时,出现碰撞的情况也可以包括该模型与周围环境物体发生碰撞。The collision of the above-mentioned digital twin model may include self-collision. For example, the model arm overlaps with the model leg during movement. When the digital twin model is in the same 3D environment scene as the robot, a collision may also occur. Including the model colliding with surrounding objects.
在步骤302中,也即在所述关节运动数据不满足所述运动合规条件中的任一条时,接收人工修改指令以对所述关节运动数据进行修改;并重新判断修改后的关节运动数据是否符合与所述机器人对应的原子动作约束条件,也即返回步骤301。该人工修改指令可以是通过软件工具基于该数字孪生体模型进行的动作数据修复所生成的修改指令,该软件工具可以是可视化工具,该数字孪生提模型根据修改中的关节运动数据执行的动作可以是可见的。In step 302, that is, when the joint motion data does not meet any of the motion compliance conditions, receive a manual modification instruction to modify the joint motion data; and re-judg the modified joint motion data Whether the atomic action constraint corresponding to the robot is met, that is, return to step 301 . The manual modification instruction may be a modification instruction generated by repairing action data based on the digital twin body model by a software tool, and the software tool may be a visualization tool, and the action performed by the digital twin lift model according to the joint motion data under modification may be is visible.
在步骤303中,也即在所述关节运动数据满足所有所述运动合规条件时,基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动优化条件,若是,则转至步骤305,若否,则转至步骤304;所述运动优化条件包括所述关节运动数据符合机器人运动学规律和所述关节运动数据对应的动作流畅平滑。在所述关节运动数据不满足所述运动优化条件时,也可判定所述关节运动数据不符合与所述机器人对应的原子动作约束条件。In step 303, that is, when the joint motion data satisfies all the motion compliance conditions, it is judged whether the joint motion data satisfies the motion optimization conditions based on the simulation data of the digital twin model, and if so, go to step 303 305, if not, go to step 304; the motion optimization condition includes that the joint motion data conforms to the kinematics of the robot and the motion corresponding to the joint motion data is smooth and smooth. When the joint motion data does not meet the motion optimization condition, it may also be determined that the joint motion data does not meet the atomic motion constraint condition corresponding to the robot.
该机器人运动学规律也可以是根据各个不同的机器人所确定得到。在该 关节运动数据不满足该机器人运动学规律或者不满足预设的流畅度和平滑度的情况下,被机器人执行之后的动作则会卡顿和不合理,因此,为了保证该关节动作数据在被机器人执行时能保证该动作的平滑和流程,会对该关节运动数据是否满足该运动优化条件进行判断。The robot kinematics law may also be determined according to different robots. If the joint motion data does not satisfy the kinematics law of the robot or the preset fluency and smoothness, the actions performed by the robot will be stuck and unreasonable. Therefore, in order to ensure that the joint motion data is within the When executed by the robot, the smoothness and flow of the action can be guaranteed, and it will be judged whether the joint motion data satisfies the motion optimization condition.
其中,上述运动优化条件和上述运动合规条件的判断顺序可以根据实际情况进行调整,在本公开中不限制其先后顺序。Wherein, the judgment order of the above motion optimization condition and the above motion compliance condition may be adjusted according to the actual situation, and the sequence is not limited in the present disclosure.
在步骤304中,也即在所述关节运动数据不满足所述运动优化条件时,对所述关节运动数据进行第一优化;并重新判断优化后的关节运动数据是否符合与所述机器人对应的原子动作约束条件,也即返回步骤301。该第一优化的方法可以包括根据逆运动学对所述关节运动数据进行优化数据优化、根据对抗生成网络训练对所述关节运动数据进行优化数据优化、根据数据拟合对所述关节运动数据进行优化数据优化、根据插值算法对所述关节运动数据进行优化数据优化中的一者或多者,或者还可以包括其他的优化方法,在本公开中不进行限制,上述第一优化能够在没有人工干预的情况下实现。In step 304, that is, when the joint motion data does not meet the motion optimization conditions, the first optimization is performed on the joint motion data; Atomic action constraints, that is, return to step 301 . The first optimization method may include optimizing the joint motion data according to inverse kinematics, optimizing the joint motion data according to adversarial generation network training, optimizing the joint motion data according to data fitting, One or more of optimizing data optimization, optimizing the joint motion data according to an interpolation algorithm, or may also include other optimization methods, which are not limited in this disclosure, and the above-mentioned first optimization can be performed without manual labor. achieved without intervention.
在步骤305中,也即在所述关节运动数据既满足该运动合规条件,也满足所述运动优化条件时,通过所述数字孪生模型执行所述关节运动数据,并对所述数字孪生模型的运动画面进行显示。In step 305, that is, when the joint motion data satisfies both the motion compliance condition and the motion optimization condition, execute the joint motion data through the digital twin model, and analyze the digital twin model for the joint motion data. The moving picture is displayed.
在步骤306中,在接收到第一人工确认指令的情况下,通过所述数字孪生模型驱动所述机器人执行所述关节运动数据,所述第一人工确认指令为用户响应于所述数字孪生模型的运动画面所输入的指令,用于指示所述数字孪生模型的运动画面符合要求。In step 306, in the case of receiving a first manual confirmation instruction, drive the robot to execute the joint motion data through the digital twin model, and the first manual confirmation instruction is that the user responds to the digital twin model The instruction input by the moving picture of the digital twin model is used to indicate that the moving picture of the digital twin model meets the requirements.
上述在所述关节运动数据满足所述运动优化条件时,也即该关节运动数据既满足该运动合规条件,也满足该运动优化条件的情况,在此情况下,能够通过该数字孪生模型执行该关节运动数据给用户,以进一步通过用户人工确认该关节运动数据是否符合动作学习的要求。When the joint motion data satisfies the motion optimization condition, that is, the joint motion data satisfies both the motion compliance condition and the motion optimization condition, in this case, it can be executed through the digital twin model. The joint motion data is given to the user, so that the user can manually confirm whether the joint motion data meets the requirements of action learning.
用户在认为该数字孪生模型的运动画面符合要求的情况下可以通过输入该第一人工确认指令的方式进行确认,而用户在认为该数字孪生模型的运动画面不符合要求,仍需要进行修改的情况下,可以直接输入人工修改指令一堆该关节运动数据进行修改,也即,可以转至步骤302对该关节运动数据进行修改。或者,用户也可以直接判定关节运动数据不符合与机器人对应的原子动作约束条件,从而结束对该动作的学习。If the user thinks that the moving picture of the digital twin model meets the requirements, he can confirm by entering the first manual confirmation command, but the user still needs to make changes when he thinks that the moving picture of the digital twin model does not meet the requirements Next, a manual modification instruction may be directly inputted to modify a bunch of the joint motion data, that is, step 302 may be turned to modify the joint motion data. Alternatively, the user may directly determine that the joint motion data does not meet the constraints of the atomic motion corresponding to the robot, thereby ending the learning of the motion.
在步骤307中,在接收到第二人工确认指令的情况下,判定所述关节运动数据符合与所述机器人对应的所述原子动作约束条件,所述第二人工确认指令为用户响应于所述机器人的执行动作所输入的指令,用于指示所述机器人的执行动作符合要求。In step 307, when a second manual confirmation instruction is received, it is determined that the joint motion data complies with the atomic motion constraint corresponding to the robot, and the second manual confirmation instruction is that the user responds to the The command input by the robot's execution action is used to indicate that the robot's execution action meets the requirements.
在判定所述关节运动数据符合与所述机器人对应的所述原子动作约束条件时,则可以将该关节运动数据确定为该机器人的原子动作。而若用户在查看到该机器人根据该关节运动数据所执行的动作之后,认为该动作不符合要求,也可以返回至步骤302中再次通过该人工修改指令对该关节运动数据进行修改,并重新进行是否满足该原子动作约束条件的判断。或者,用户也可以直接判定关节运动数据不符合与机器人对应的原子动作约束条件,从而结束对该动作的学习。When it is determined that the joint motion data complies with the atomic motion constraint conditions corresponding to the robot, the joint motion data may be determined as the atomic motion of the robot. However, if the user thinks that the action does not meet the requirements after viewing the action performed by the robot according to the joint motion data, the user can also return to step 302 to modify the joint motion data again through the manual modification instruction, and repeat the procedure. The judgment of whether the constraints of the atomic action are satisfied. Alternatively, the user may directly determine that the joint motion data does not meet the constraints of the atomic motion corresponding to the robot, thereby ending the learning of the motion.
通过上述技术方案,能够通过对该运动合规条件和该运动优化条件的判断来对该关节运动数据进行修复或优化等处理,并且还能够通过双重人工确认来保证学习得到的该原子动作的可靠性。Through the above technical solution, the joint motion data can be repaired or optimized by judging the motion compliance conditions and the motion optimization conditions, and the reliability of the learned atomic motion can also be ensured through double manual confirmation. sex.
图4是根据本公开又一示例性实施例示出的一种动作学习方法的流程图,如图4所示,所述方法还包括步骤401至步骤403。FIG. 4 is a flowchart of an action learning method according to another exemplary embodiment of the present disclosure. As shown in FIG. 4 , the method further includes steps 401 to 403 .
在步骤401中,在所述机器人处于动作模仿模式的情况下,通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的动作模仿条件。在该动作模仿模式可以是需要该机器人能够实时 对该目标对象做出的动作进行学习模仿。In step 401, when the robot is in an action imitation mode, it is judged whether the joint motion data conforms to the action imitation condition corresponding to the robot according to the simulation data of the digital twin model of the robot. In the action imitation mode, the robot can learn and imitate the action made by the target object in real time.
该动作模仿条件可以包括例如上述运动合规条件,或者还可以包括上述运动优化条件。在判断该动作模仿条件是否符合时,可以根据该关节运动数据满足该动作模仿条件的具体情况进行打分,例如,该运动合规条件全部符合的情况下得到50分,满足运动优化条件中的机器人运动学规律、预设的流畅度和预设的平滑度中的任一项得到10分等等。从而,可以根据得分情况判断该动作模仿条件是否被满足。或者,也可以是先判断该关节运动数据是否符合该运动合规条件,在符合该运动合规条件、且该得分超过一定阈值的情况下,判断该动作模仿条件被满足。The motion imitation conditions may include, for example, the above-mentioned motion compliance conditions, or may also include the above-mentioned motion optimization conditions. When judging whether the motion imitation conditions are met, the joint motion data can be scored according to the specific conditions of the motion imitation conditions. For example, if all the motion compliance conditions are met, 50 points will be awarded, and the robot that meets the motion optimization conditions will be scored. 10 points are awarded for any of the laws of kinematics, the preset smoothness, and the preset smoothness, and so on. Therefore, it can be judged whether the action imitation condition is satisfied according to the score. Alternatively, it is also possible to first judge whether the joint motion data meets the motion compliance condition, and when the motion compliance condition is met and the score exceeds a certain threshold, it is judged that the motion imitation condition is met.
在步骤402中,在所述关节运动数据不符合与所述机器人对应的动作模仿条件的情况下,对所述关节运动数据进行第二优化,并重新判断优化后的关节运动数据是否符合与所述机器人对应的动作模仿条件。在该动作模仿条件不符合的情况下,所进行的该第二优化可以包括根据逆运动学对所述关节运动数据进行优化数据优化、根据对抗生成网络训练对所述关节运动数据进行优化数据优化、根据数据拟合对所述关节运动数据进行优化数据优化、根据插值算法对所述关节运动数据进行优化数据优化中的一者或多者,对该关节运动数据进行例如平滑插值等,该第二优化和上述第一优化所包括的方法可以相同也可以不同。In step 402, in the case that the joint motion data does not meet the motion imitation conditions corresponding to the robot, a second optimization is performed on the joint motion data, and it is re-determined whether the optimized joint motion data meets the requirements of the robot. Describe the corresponding action imitation conditions of the robot. In the case that the action imitation condition is not met, the second optimization performed may include optimizing data optimization of the joint motion data according to inverse kinematics, optimizing data optimization of the joint motion data according to confrontation generation network training , one or more of optimizing data optimization for the joint motion data according to data fitting, optimizing data optimization for the joint motion data according to an interpolation algorithm, and performing smooth interpolation, for example, on the joint motion data. The methods included in the second optimization and the above-mentioned first optimization may be the same or different.
在步骤403中,在所述关节运动数据符合与所述机器人对应的动作模仿条件的情况下,通过所述数字孪生模型驱动所述机器人执行所述关节运动数据,并在动作执行完成之后回到所述机器人的初始状态。In step 403, in the case that the joint motion data meets the motion imitation conditions corresponding to the robot, the robot is driven to execute the joint motion data through the digital twin model, and returns to the robot after the motion execution is completed. The initial state of the robot.
通过上述技术方案,就能够在保证该机器人的安全的情况下,实现该机器人对该目标对象的动作进行实时地模仿学习的功能。Through the above technical solutions, the function of imitating and learning the movements of the target object by the robot in real time can be realized under the condition of ensuring the safety of the robot.
图5是根据本公开一示例性实施例示出的一种动作学习装置的结构框的。如图5所示,所述装置包括:获取模块10,用于获取目标对象的人体动作图 像数据;确定模块20,用于确定与所述人体动作图像数据对应的机器人的关节运动数据;第一判断模块30,用于通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的原子动作约束条件;学习模块40,用于在判定所述关节运动数据符合与所述机器人对应的所述原子动作约束条件的情况下,将所述关节运动数据确定为所述机器人的原子动作。FIG. 5 is a structural block diagram of an action learning apparatus according to an exemplary embodiment of the present disclosure. As shown in FIG. 5 , the device includes: an acquisition module 10 for acquiring human motion image data of a target object; a determination module 20 for determining joint motion data of the robot corresponding to the human motion image data; a first The judgment module 30 is used for judging whether the joint motion data complies with the atomic motion constraints corresponding to the robot through the simulation data of the digital twin model of the robot; the learning module 40 is used for judging that the joint motion data meets the In the case of the atomic motion constraint corresponding to the robot, the joint motion data is determined as the atomic motion of the robot.
通过上述技术方案,能够通过获取到的目标对象的人体动作图像数据,来确定该机器人的关节运动数据,这样就能够根据该目标对象的一组人体动作图像数据确定得到多个不同机器人分别对应的关节运动数据,加快了不同机器人对动作的学习速度;并且,能够根据该数字化的、虚拟的机器人的数字孪生模型在线上对关节运动数据是否符合原子动作约束条件进行判断,不需要实体机器人,可大幅降低生成机器人动作的成本。Through the above technical solution, the joint motion data of the robot can be determined by the acquired human body motion image data of the target object, so that the corresponding robot can be determined according to a set of human body motion image data of the target object. The joint motion data accelerates the learning speed of different robots for actions; and, according to the digital twin model of the digital and virtual robot, it is possible to judge online whether the joint motion data conforms to the constraints of atomic motions, without the need for a physical robot. Dramatically reduce the cost of generating robot actions.
在一种可能的实施方式中,所述确定模块20包括:去噪子模块,用于对所述人体动作图像数据进行去噪处理;确定子模块,用于根据所述去噪处理后的所述人体动作图像数据确定对应的三维姿态运动数据,所述三维姿态运动数据中包括与所述目标对象对应的各三维关键点的运动数据,所述三维关键点用于构建所述目标对象的三维姿态;映射子模块,用于根据所述三维姿态运动数据映射得到所述机器人的所述关节运动数据。In a possible implementation manner, the determining module 20 includes: a denoising sub-module for performing denoising processing on the human action image data; a determining sub-module for The human action image data determines the corresponding three-dimensional posture motion data, and the three-dimensional posture motion data includes the motion data of each three-dimensional key point corresponding to the target object, and the three-dimensional key point is used to construct the three-dimensional posture of the target object. Attitude; a mapping submodule for mapping the joint movement data of the robot according to the three-dimensional attitude movement data.
在一种可能的实施方式中,所述第一判断模块30包括第一判断子模块,用于基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动合规条件,所述运动合规条件包括所述关节运动数据对应的动作为所述原子动作、所述关节运动数据中不存在关节运动超过所述关节的物理限位、所述数字孪生模型在执行所述关节运动数据时未出现碰撞和失衡现象;并在所述关节运动数据不满足所述运动合规条件中的任一条时,判定所述关节运动数据不符合与所述机器人对应的原子动作约束条件。In a possible implementation manner, the first judging module 30 includes a first judging sub-module for judging whether the joint motion data satisfies the motion compliance condition based on the simulation data of the digital twin model, and the motion The compliance conditions include that the motion corresponding to the joint motion data is the atomic motion, the joint motion data does not contain a joint motion exceeding the physical limit of the joint, and the digital twin model executes the joint motion data when the joint motion data is executed. There is no collision and imbalance; and when the joint motion data does not meet any of the motion compliance conditions, it is determined that the joint motion data does not meet the atomic motion constraint conditions corresponding to the robot.
在一种可能的实施方式中,所述第一判断模块30还包括第二判断子模块,在所述关节运动数据满足所有所述运动合规条件时,基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动优化条件,所述运动优化条件包括所述关节运动数据符合机器人运动学规律和所述关节运动数据对应的动作流畅平滑;并在所述关节运动数据不满足所述运动优化条件时,判定所述关节运动数据不符合与所述机器人对应的原子动作约束条件。In a possible implementation manner, the first judging module 30 further includes a second judging sub-module, which judges based on the simulation data of the digital twin model when the joint motion data satisfies all the motion compliance conditions Whether the joint motion data satisfies the motion optimization conditions, the motion optimization conditions include that the joint motion data conforms to the laws of robot kinematics and the motion corresponding to the joint motion data is smooth and smooth; and if the joint motion data does not satisfy the When the motion optimization conditions are met, it is determined that the joint motion data does not conform to the atomic motion constraint conditions corresponding to the robot.
在一种可能的实施方式中,所述第一判断模块30还包括模拟子模块,在所述关节运动数据满足所述运动优化条件和所述运动合规条件时,通过所述数字孪生模型执行所述关节运动数据,并对所述数字孪生模型的运动画面进行显示;动作执行子模块,用于在接收到第一人工确认指令的情况下,通过所述数字孪生模型驱动所述机器人执行所述关节运动数据,所述第一人工确认指令为用户响应于所述数字孪生模型的运动画面所输入的指令,用于指示所述数字孪生模型的运动画面符合要求;判定子模块,用于在接收到第二人工确认指令的情况下,判定所述关节运动数据符合与所述机器人对应的所述原子动作约束条件,所述第二人工确认指令为用户响应于所述机器人的执行动作所输入的指令,用于指示所述机器人的执行动作符合要求。In a possible implementation manner, the first judging module 30 further includes a simulation sub-module, and when the joint motion data satisfies the motion optimization condition and the motion compliance condition, execute the execution by using the digital twin model The joint motion data is displayed, and the motion picture of the digital twin model is displayed; the action execution sub-module is used to drive the robot to execute all operations through the digital twin model when the first manual confirmation instruction is received. The joint motion data, the first manual confirmation instruction is the instruction input by the user in response to the motion picture of the digital twin model, and is used to indicate that the motion picture of the digital twin model meets the requirements; In the case of receiving a second manual confirmation instruction, it is determined that the joint motion data complies with the atomic motion constraint corresponding to the robot, and the second manual confirmation instruction is input by the user in response to the execution action of the robot The instructions are used to instruct the robot to perform actions that meet the requirements.
在一种可能的实施方式中,所述装置还包括:修正模块,用于在通过所述机器人的数字孪生模型的仿真数据判定所述关节运动数据不符合与所述机器人对应的原子动作约束条件时,对所述关节运动数据进行修正,并通过所述机器人的数字孪生模型的仿真数据判断修正后的所述关节运动数据是否符合与所述机器人对应的原子动作约束条件,直至判定所述关节运动数据符合与所述机器人对应的所述原子动作约束条件。In a possible implementation manner, the apparatus further includes: a correction module, configured to determine that the joint motion data does not conform to the atomic motion constraint corresponding to the robot through the simulation data of the digital twin model of the robot When , the joint motion data is corrected, and it is judged by the simulation data of the digital twin model of the robot whether the corrected joint motion data complies with the atomic motion constraint conditions corresponding to the robot, until the joint is determined The motion data conforms to the atomic motion constraints corresponding to the robot.
在一种可能的实施方式中,In one possible implementation,
所述第一判断模块30包括第一判断子模块,用于基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动合规条件,所述运动合规 条件包括所述关节运动数据对应的动作为所述原子动作、所述关节运动数据中不存在关节运动超过所述关节的物理限位、所述数字孪生模型在执行所述关节运动数据时未出现碰撞和失衡现象;The first judging module 30 includes a first judging sub-module for judging whether the joint motion data satisfies the motion compliance condition based on the simulation data of the digital twin model, and the motion compliance condition includes the joint motion data. The corresponding action is the atomic action, the joint motion data does not have a joint motion exceeding the physical limit of the joint, and the digital twin model does not collide and unbalance when executing the joint motion data;
所述第一判断模块30还包括第二判断子模块,在所述关节运动数据满足所有所述运动合规条件时,基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动优化条件,所述运动优化条件包括所述关节运动数据符合机器人运动学规律和所述关节运动数据对应的动作流畅平滑;The first judging module 30 also includes a second judging sub-module, when the joint motion data satisfies all the motion compliance conditions, based on the simulation data of the digital twin model, it is judged whether the joint motion data satisfies the motion optimization. conditions, the motion optimization conditions include that the joint motion data conforms to the law of robot kinematics and the motion corresponding to the joint motion data is smooth and smooth;
所述修正模块还包括:The correction module also includes:
第一修正子模块,用于在所述关节运动数据不满足所述运动合规条件中的任一条时,接收人工修改指令以对所述关节运动数据进行修改,并重新判断修改后的关节运动数据是否符合与所述机器人对应的原子动作约束条件。A first correction submodule, configured to receive a manual modification instruction to modify the joint motion data when the joint motion data does not meet any of the motion compliance conditions, and re-judg the modified joint motion Whether the data conforms to the atomic action constraints corresponding to the robot.
第二修正子模块,用于在所述关节运动数据不满足所述运动优化条件时,对所述关节运动数据进行第一优化,并重新判断优化后的关节运动数据是否符合与所述机器人对应的原子动作约束条件,所述第一优化包括根据逆运动学对所述关节运动数据进行数据优化、根据对抗生成网络训练对所述关节运动数据进行数据优化、根据数据拟合对所述关节运动数据进行数据优化、根据插值算法对所述关节运动数据进行数据优化中的一者或多者。The second correction sub-module is configured to perform a first optimization on the joint motion data when the joint motion data does not meet the motion optimization condition, and re-judg whether the optimized joint motion data conforms to the corresponding robot The first optimization includes performing data optimization on the joint motion data according to inverse kinematics, performing data optimization on the joint motion data according to adversarial generation network training, and performing data optimization on the joint motion data according to data fitting. One or more of performing data optimization on the data and performing data optimization on the joint motion data according to an interpolation algorithm.
在一种可能的实施方式中,所述装置还包括:第二判断模块,用于在所述机器人处于动作模仿模式的情况下,通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的动作模仿条件,所述第二优化包括包括根据逆运动学对所述关节运动数据进行数据优化、根据对抗生成网络训练对所述关节运动数据进行数据优化、根据数据拟合对所述关节运动数据进行数据优化、根据插值算法对所述关节运动数据进行数据优化中的一者或多者;优化模块,用于在所述关节运动数据不符合与所述机器人对应的动作模仿条件的情况下,对所述关节运动数据进行第二优化,并 重新判断优化后的关节运动数据是否符合与所述机器人对应的动作模仿条件;执行模块,用于在所述关节运动数据符合与所述机器人对应的动作模仿条件的情况下,通过所述数字孪生模型驱动所述机器人执行所述关节运动数据,并在动作执行完成之后回到所述机器人的初始状态。In a possible implementation manner, the apparatus further includes: a second judgment module, configured to judge the joint motion according to the simulation data of the digital twin model of the robot when the robot is in an action imitation mode Whether the data complies with the motion imitation conditions corresponding to the robot, the second optimization includes: performing data optimization on the joint motion data according to inverse kinematics; performing data optimization on the joint motion data according to the confrontation generation network training; One or more of data fitting to perform data optimization on the joint motion data, and data optimization for the joint motion data according to an interpolation algorithm; an optimization module for performing data optimization on the joint motion data when the joint motion data is inconsistent with the robot In the case of the corresponding action imitation conditions, the joint motion data is secondly optimized, and it is re-judged whether the optimized joint motion data conforms to the motion imitation conditions corresponding to the robot; the execution module is used to perform a second optimization on the joint motion data. When the motion data conforms to the motion imitation conditions corresponding to the robot, the robot is driven to execute the joint motion data through the digital twin model, and returns to the initial state of the robot after the motion execution is completed.
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。Regarding the apparatus in the above-mentioned embodiment, the specific manner in which each module performs operations has been described in detail in the embodiment of the method, and will not be described in detail here.
图6是根据一示例性实施例示出的一种电子设备600的框图。如图6所示,该电子设备600可以包括:处理器601,存储器602。该电子设备600还可以包括多媒体组件603,输入/输出(I/O)接口604,以及通信组件605中的一者或多者。FIG. 6 is a block diagram of an electronic device 600 according to an exemplary embodiment. As shown in FIG. 6 , the electronic device 600 may include: a processor 601 and a memory 602 . The electronic device 600 may also include one or more of a multimedia component 603 , an input/output (I/O) interface 604 , and a communication component 605 .
其中,处理器601用于控制该电子设备600的整体操作,以完成上述的动作学习方法中的全部或部分步骤。存储器602用于存储各种类型的数据以支持在该电子设备600的操作,这些数据例如可以包括用于在该电子设备600上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器602可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件603可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器602或通过通信组件605发送。音频 组件还包括至少一个扬声器,用于输出音频信号。I/O接口604为处理器601和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件605用于该电子设备600与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near Field Communication,简称NFC),2G、3G、4G、NB-IOT、eMTC、或其他5G等等,或它们中的一种或几种的组合,在此不做限定。因此相应的该通信组件605可以包括:Wi-Fi模块,蓝牙模块,NFC模块等等。The processor 601 is used to control the overall operation of the electronic device 600 to complete all or part of the steps in the above-mentioned action learning method. The memory 602 is used to store various types of data to support operations on the electronic device 600, such data may include, for example, instructions for any application or method operating on the electronic device 600, and application-related data, Such as contact data, messages sent and received, pictures, audio, video, and so on. The memory 602 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as Static Random Access Memory (SRAM for short), Electrically Erasable Programmable Read-Only Memory ( Electrically Erasable Programmable Read-Only Memory (EEPROM for short), Erasable Programmable Read-Only Memory (EPROM), Programmable Read-Only Memory (PROM), Read-Only Memory (Read-Only Memory, referred to as ROM), magnetic memory, flash memory, magnetic disk or optical disk. Multimedia components 603 may include screen and audio components. The screen can be, for example, a touch screen, and the audio component is used for outputting and/or inputting audio signals. For example, the audio component may include a microphone for receiving external audio signals. The received audio signal may be further stored in memory 602 or transmitted through communication component 605 . The audio assembly also includes at least one speaker for outputting audio signals. The I/O interface 604 provides an interface between the processor 601 and other interface modules, and the above-mentioned other interface modules may be a keyboard, a mouse, a button, and the like. These buttons can be virtual buttons or physical buttons. The communication component 605 is used for wired or wireless communication between the electronic device 600 and other devices. Wireless communication, such as Wi-Fi, Bluetooth, Near Field Communication (NFC), 2G, 3G, 4G, NB-IOT, eMTC, or other 5G, etc., or one or more of them The combination is not limited here. Therefore, the corresponding communication component 605 may include: Wi-Fi module, Bluetooth module, NFC module and so on.
在一示例性实施例中,电子设备600可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(Digital Signal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的动作学习方法。In an exemplary embodiment, the electronic device 600 may be implemented by one or more application-specific integrated circuits (Application Specific Integrated Circuit, ASIC for short), digital signal processors (Digital Signal Processor, DSP for short), digital signal processing devices (Digital Signal Processing Device (DSPD), Programmable Logic Device (PLD), Field Programmable Gate Array (FPGA), controller, microcontroller, microprocessor or other electronic components Implementation is used to perform the above-mentioned action learning method.
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的动作学习方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器602,上述程序指令可由电子设备600的处理器601执行以完成上述的动作学习方法。In another exemplary embodiment, a computer-readable storage medium including program instructions is also provided, and when the program instructions are executed by a processor, the steps of the above-mentioned action learning method are implemented. For example, the computer-readable storage medium can be the above-mentioned memory 602 including program instructions, and the above-mentioned program instructions can be executed by the processor 601 of the electronic device 600 to implement the above-mentioned action learning method.
图7是根据一示例性实施例示出的一种电子设备700的框图。例如,电子设备700可以被提供为一服务器。参照图7,电子设备700包括处理器722,其数量可以为一个或多个,以及存储器732,用于存储可由处理器722执行的计算机程序。存储器732中存储的计算机程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理器722可以被配置为执行该计算机程序,以执行上述的动作学习方法。FIG. 7 is a block diagram of an electronic device 700 according to an exemplary embodiment. For example, the electronic device 700 may be provided as a server. 7 , an electronic device 700 includes a processor 722 , which may be one or more in number, and a memory 732 for storing computer programs executable by the processor 722 . The computer program stored in memory 732 may include one or more modules, each corresponding to a set of instructions. Furthermore, the processor 722 may be configured to execute the computer program to perform the above-described action learning method.
另外,电子设备700还可以包括电源组件726和通信组件750,该电源组件726可以被配置为执行电子设备700的电源管理,该通信组件750可以被配置为实现电子设备700的通信,例如,有线或无线通信。此外,该电子设备700还可以包括输入/输出(I/O)接口758。电子设备700可以操作基于存储在存储器732的操作系统,例如Windows Server
TM,Mac OS X
TM,Unix
TM,Linux
TM等等。
In addition, the electronic device 700 may also include a power supply component 726, which may be configured to perform power management of the electronic device 700, and a communication component 750, which may be configured to enable communication of the electronic device 700, eg, wired or wireless communication. Additionally, the electronic device 700 may also include an input/output (I/O) interface 758 . Electronic device 700 may operate based on an operating system stored in memory 732, such as Windows Server ™ , Mac OS X ™ , Unix ™ , Linux ™ , and the like.
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的动作学习方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器732,上述程序指令可由电子设备700的处理器722执行以完成上述的动作学习方法。In another exemplary embodiment, a computer-readable storage medium including program instructions is also provided, and when the program instructions are executed by a processor, the steps of the above-mentioned action learning method are implemented. For example, the computer-readable storage medium can be the above-mentioned memory 732 including program instructions, and the above-mentioned program instructions can be executed by the processor 722 of the electronic device 700 to implement the above-mentioned action learning method.
在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的动作学习方法的代码部分。In another exemplary embodiment, there is also provided a computer program product comprising a computer program executable by a programmable apparatus, the computer program having, when executed by the programmable apparatus, for performing the above The code part of the action learning method.
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。The preferred embodiments of the present disclosure have been described in detail above with reference to the accompanying drawings. However, the present disclosure is not limited to the specific details of the above-mentioned embodiments. Within the scope of the technical concept of the present disclosure, various simple modifications can be made to the technical solutions of the present disclosure. These simple modifications all fall within the protection scope of the present disclosure.
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。In addition, it should be noted that each specific technical feature described in the above-mentioned specific implementation manner may be combined in any suitable manner under the circumstance that there is no contradiction. In order to avoid unnecessary repetition, various possible combinations are not described in the present disclosure.
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。In addition, the various embodiments of the present disclosure can also be arbitrarily combined, as long as they do not violate the spirit of the present disclosure, they should also be regarded as the contents disclosed in the present disclosure.
Claims (19)
- 一种动作学习方法,其特征在于,所述方法包括:An action learning method, characterized in that the method comprises:获取目标对象的人体动作图像数据;Obtain the human action image data of the target object;确定与所述人体动作图像数据对应的机器人的关节运动数据;determining the joint motion data of the robot corresponding to the human body motion image data;通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的原子动作约束条件;Determine whether the joint motion data complies with the atomic motion constraints corresponding to the robot by using the simulation data of the digital twin model of the robot;在判定所述关节运动数据符合与所述机器人对应的所述原子动作约束条件的情况下,将所述关节运动数据确定为所述机器人的原子动作。When it is determined that the joint motion data complies with the atomic motion constraint conditions corresponding to the robot, the joint motion data is determined as the atomic motion of the robot.
- 根据权利要求1所述的方法,其特征在于,所述确定与所述人体动作图像数据对应的机器人的关节运动数据包括:The method according to claim 1, wherein the determining the joint motion data of the robot corresponding to the human motion image data comprises:对所述人体动作图像数据进行去噪处理;performing denoising processing on the human action image data;根据所述去噪处理后的所述人体动作图像数据确定对应的三维姿态运动数据,所述三维姿态运动数据中包括与所述目标对象对应的各三维关键点的运动数据,所述三维关键点用于构建所述目标对象的三维姿态;Corresponding three-dimensional gesture motion data is determined according to the denoised human motion image data, and the three-dimensional gesture motion data includes the motion data of each three-dimensional key point corresponding to the target object, and the three-dimensional key point for constructing the three-dimensional pose of the target object;根据所述三维姿态运动数据映射得到所述机器人的所述关节运动数据。The joint motion data of the robot is obtained by mapping the three-dimensional posture motion data.
- 根据权利要求1或2所述的方法,其特征在于,所述通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的原子动作约束条件包括:The method according to claim 1 or 2, wherein the judging whether the joint motion data complies with the atomic motion constraints corresponding to the robot by using the simulation data of the digital twin model of the robot comprises:基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动合规条件,所述运动合规条件包括所述关节运动数据对应的动作为所述原子动作、所述关节运动数据中不存在关节运动超过所述关节的物理限位、所述数字孪生模型在执行所述关节运动数据时未出现碰撞和失衡现象;Based on the simulation data of the digital twin model, it is determined whether the joint motion data meets the motion compliance conditions, and the motion compliance conditions include that the motion corresponding to the joint motion data is the atomic motion, and the joint motion data does not There is a joint movement that exceeds the physical limit of the joint, and the digital twin model does not have collision and imbalance when executing the joint movement data;在所述关节运动数据不满足所述运动合规条件中的任一条时,判定所述 关节运动数据不符合与所述机器人对应的原子动作约束条件。When the joint motion data does not meet any one of the motion compliance conditions, it is determined that the joint motion data does not meet the atomic motion constraint conditions corresponding to the robot.
- 根据权利要求3所述的方法,其特征在于,所述通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的原子动作约束条件还包括:The method according to claim 3, wherein the judging whether the joint motion data complies with the atomic motion constraints corresponding to the robot by using the simulation data of the digital twin model of the robot further comprises:在所述关节运动数据满足所有所述运动合规条件时,基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动优化条件,所述运动优化条件包括所述关节运动数据符合机器人运动学规律和所述关节运动数据对应的动作流畅平滑;When the joint motion data satisfies all the motion compliance conditions, determine whether the joint motion data satisfies motion optimization conditions based on the simulation data of the digital twin model, where the motion optimization conditions include that the joint motion data complies with the robot The motions corresponding to the kinematic laws and the joint motion data are smooth and smooth;在所述关节运动数据不满足所述运动优化条件时,判定所述关节运动数据不符合与所述机器人对应的原子动作约束条件。When the joint motion data does not meet the motion optimization condition, it is determined that the joint motion data does not meet the atomic motion constraint condition corresponding to the robot.
- 根据权利要求4所述的方法,其特征在于,所述通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的原子动作约束条件还包括:The method according to claim 4, wherein the judging whether the joint motion data complies with the atomic motion constraints corresponding to the robot by using the simulation data of the digital twin model of the robot further comprises:在所述关节运动数据满足所述运动优化条件和所述运动合规条件时,通过所述数字孪生模型执行所述关节运动数据,并对所述数字孪生模型的运动画面进行显示;When the joint motion data satisfies the motion optimization condition and the motion compliance condition, execute the joint motion data through the digital twin model, and display the motion picture of the digital twin model;在接收到第一人工确认指令的情况下,通过所述数字孪生模型驱动所述机器人执行所述关节运动数据,所述第一人工确认指令为用户响应于所述数字孪生模型的运动画面所输入的指令,用于指示所述数字孪生模型的运动画面符合要求;In the case of receiving the first manual confirmation instruction, the robot is driven to execute the joint motion data through the digital twin model, and the first manual confirmation instruction is input by the user in response to the motion picture of the digital twin model instruction, used to indicate that the motion picture of the digital twin model meets the requirements;在接收到第二人工确认指令的情况下,判定所述关节运动数据符合与所述机器人对应的所述原子动作约束条件,所述第二人工确认指令为用户响应于所述机器人的执行动作所输入的指令,用于指示所述机器人的执行动作符 合要求。In the case of receiving a second manual confirmation instruction, it is determined that the joint motion data complies with the atomic motion constraint corresponding to the robot, and the second manual confirmation instruction is determined by the user in response to the execution action of the robot. The input instructions are used to instruct the robot to perform actions that meet the requirements.
- 根据权利要求1-5中任一权利要求所述的方法,其特征在于,所述方法还包括:The method according to any one of claims 1-5, wherein the method further comprises:在通过所述机器人的数字孪生模型的仿真数据判定所述关节运动数据不符合与所述机器人对应的原子动作约束条件时,对所述关节运动数据进行修正,并通过所述机器人的数字孪生模型的仿真数据判断修正后的所述关节运动数据是否符合与所述机器人对应的原子动作约束条件,直至判定所述关节运动数据符合与所述机器人对应的所述原子动作约束条件。When it is determined by the simulation data of the digital twin model of the robot that the joint motion data does not meet the atomic motion constraints corresponding to the robot, the joint motion data is corrected, and the joint motion data is corrected through the digital twin model of the robot. It is judged whether the revised joint motion data complies with the atomic motion constraint conditions corresponding to the robot until it is determined that the joint motion data complies with the atomic motion constraint conditions corresponding to the robot.
- 根据权利要求6所述的方法,其特征在于,所述通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的原子动作约束条件包括:The method according to claim 6, wherein the determining whether the joint motion data complies with the atomic motion constraints corresponding to the robot by using the simulation data of the digital twin model of the robot comprises:基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动合规条件,所述运动合规条件包括所述关节运动数据对应的动作为所述原子动作、所述关节运动数据中不存在关节运动超过所述关节的物理限位、所述数字孪生模型在执行所述关节运动数据时未出现碰撞和失衡现象;Based on the simulation data of the digital twin model, it is determined whether the joint motion data meets the motion compliance conditions, and the motion compliance conditions include that the motion corresponding to the joint motion data is the atomic motion, and the joint motion data does not There is a joint movement that exceeds the physical limit of the joint, and the digital twin model does not have collision and imbalance when executing the joint movement data;在所述关节运动数据满足所有所述运动合规条件时,基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动优化条件,所述运动优化条件包括所述关节运动数据符合机器人运动学规律和所述关节运动数据对应的动作流畅平滑;When the joint motion data satisfies all the motion compliance conditions, determine whether the joint motion data satisfies motion optimization conditions based on the simulation data of the digital twin model, where the motion optimization conditions include that the joint motion data complies with the robot The motions corresponding to the kinematic laws and the joint motion data are smooth and smooth;所述对所述关节运动数据进行修正,包括:The modifying the joint motion data includes:在所述关节运动数据不满足所述运动合规条件中的任一条时,接收人工修改指令以对所述关节运动数据进行修改;When the joint motion data does not meet any one of the motion compliance conditions, receiving a manual modification instruction to modify the joint motion data;在所述关节运动数据不满足所述运动优化条件时,对所述关节运动数据 进行第一优化,所述第一优化包括根据逆运动学对所述关节运动数据进行数据优化、根据对抗生成网络训练对所述关节运动数据进行数据优化、根据数据拟合对所述关节运动数据进行数据优化、根据插值算法对所述关节运动数据进行数据优化中的一者或多者。When the joint motion data does not meet the motion optimization condition, perform a first optimization on the joint motion data, where the first optimization includes performing data optimization on the joint motion data according to inverse kinematics, generating a network according to confrontation One or more of performing data optimization on the joint motion data by training, performing data optimization on the joint motion data according to data fitting, and performing data optimization on the joint motion data according to an interpolation algorithm.
- 根据权利要求1-7中任一权利要求所述的方法,其特征在于,在所述机器人处于动作模仿模式的情况下,所述方法还包括:The method according to any one of claims 1-7, wherein when the robot is in an action imitation mode, the method further comprises:通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的动作模仿条件;Judging by the simulation data of the digital twin model of the robot whether the joint motion data conforms to the action imitation conditions corresponding to the robot;在所述关节运动数据不符合与所述机器人对应的动作模仿条件的情况下,对所述关节运动数据进行第二优化,并重新判断优化后的关节运动数据是否符合与所述机器人对应的动作模仿条件,所述第二优化包括包括根据逆运动学对所述关节运动数据进行数据优化、根据对抗生成网络训练对所述关节运动数据进行数据优化、根据数据拟合对所述关节运动数据进行数据优化、根据插值算法对所述关节运动数据进行数据优化中的一者或多者;In the case that the joint motion data does not conform to the motion imitation conditions corresponding to the robot, a second optimization is performed on the joint motion data, and it is re-determined whether the optimized joint motion data conforms to the motion corresponding to the robot Imitating conditions, the second optimization includes performing data optimization on the joint motion data according to inverse kinematics, performing data optimization on the joint motion data according to confrontational generation network training, and performing data optimization on the joint motion data according to data fitting. One or more of data optimization, performing data optimization on the joint motion data according to an interpolation algorithm;在所述关节运动数据符合与所述机器人对应的动作模仿条件的情况下,通过所述数字孪生模型驱动所述机器人执行所述关节运动数据,并在动作执行完成之后回到所述机器人的初始状态。In the case that the joint motion data conforms to the motion simulation conditions corresponding to the robot, the robot is driven to execute the joint motion data through the digital twin model, and returns to the initial stage of the robot after the motion execution is completed. state.
- 一种动作学习装置,其特征在于,所述装置包括:An action learning device, characterized in that the device comprises:获取模块,用于获取目标对象的人体动作图像数据;an acquisition module, used to acquire human motion image data of the target object;确定模块,用于确定与所述人体动作图像数据对应的机器人的关节运动数据;a determination module for determining joint motion data of the robot corresponding to the human body motion image data;第一判断模块,用于通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的原子动作约束条件;a first judging module, used for judging whether the joint motion data complies with the atomic motion constraints corresponding to the robot through the simulation data of the digital twin model of the robot;学习模块,用于在判定所述关节运动数据符合与所述机器人对应的所述原子动作约束条件的情况下,将所述关节运动数据确定为所述机器人的原子动作。The learning module is configured to determine the joint motion data as the atomic motion of the robot when it is determined that the joint motion data conforms to the atomic motion constraint condition corresponding to the robot.
- 根据权利要求9所述的装置,其特征在于,所述确定模块包括:The device according to claim 9, wherein the determining module comprises:去噪子模块,用于对所述人体动作图像数据进行去噪处理;a denoising sub-module for performing denoising processing on the human action image data;确定子模块,用于根据所述去噪处理后的所述人体动作图像数据确定对应的三维姿态运动数据,所述三维姿态运动数据中包括与所述目标对象对应的各三维关键点的运动数据,所述三维关键点用于构建所述目标对象的三维姿态;A determination submodule, configured to determine corresponding three-dimensional posture motion data according to the denoised human body motion image data, where the three-dimensional posture motion data includes motion data of each three-dimensional key point corresponding to the target object , the three-dimensional key points are used to construct the three-dimensional pose of the target object;映射子模块,用于根据所述三维姿态运动数据映射得到所述机器人的所述关节运动数据。The mapping submodule is used for mapping the joint motion data of the robot according to the three-dimensional attitude motion data.
- 根据权利要求9或10所述的装置,其特征在于,所述第一判断模块包括第一判断子模块,用于:The device according to claim 9 or 10, wherein the first judging module comprises a first judging sub-module for:基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动合规条件,所述运动合规条件包括所述关节运动数据对应的动作为所述原子动作、所述关节运动数据中不存在关节运动超过所述关节的物理限位、所述数字孪生模型在执行所述关节运动数据时未出现碰撞和失衡现象;并在所述关节运动数据不满足所述运动合规条件中的任一条时,判定所述关节运动数据不符合与所述机器人对应的原子动作约束条件。Based on the simulation data of the digital twin model, it is determined whether the joint motion data meets the motion compliance conditions, and the motion compliance conditions include that the motion corresponding to the joint motion data is the atomic motion, and the joint motion data does not There is a joint movement that exceeds the physical limit of the joint, the digital twin model does not have collision and imbalance when executing the joint movement data; and the joint movement data does not meet any of the movement compliance conditions. When there is one, it is determined that the joint motion data does not conform to the atomic motion constraints corresponding to the robot.
- 根据权利要求11所述的装置,其特征在于,所述第一判断模块还包括第二判断子模块,用于:The device according to claim 11, wherein the first judging module further comprises a second judging sub-module for:在所述关节运动数据满足所有所述运动合规条件时,基于所述数字孪生 模型的仿真数据判断所述关节运动数据是否满足运动优化条件,所述运动优化条件包括所述关节运动数据符合机器人运动学规律和所述关节运动数据对应的动作流畅平滑;并在所述关节运动数据不满足所述运动优化条件时,判定所述关节运动数据不符合与所述机器人对应的原子动作约束条件。When the joint motion data satisfies all the motion compliance conditions, determine whether the joint motion data satisfies motion optimization conditions based on the simulation data of the digital twin model, where the motion optimization conditions include that the joint motion data complies with the robot The kinematic law and the motion corresponding to the joint motion data are smooth and smooth; and when the joint motion data does not satisfy the motion optimization condition, it is determined that the joint motion data does not conform to the atomic motion constraint condition corresponding to the robot.
- 根据权利要求12所述的装置,其特征在于,所述第一判断模块还包括:The device according to claim 12, wherein the first judgment module further comprises:模拟子模块,用于在所述关节运动数据满足所述运动优化条件和所述运动合规条件时,通过所述数字孪生模型执行所述关节运动数据,并对所述数字孪生模型的运动画面进行显示;The simulation submodule is used to execute the joint motion data through the digital twin model when the joint motion data satisfies the motion optimization condition and the motion compliance condition, and compare the motion picture of the digital twin model to display;动作执行子模块,用于在接收到第一人工确认指令的情况下,通过所述数字孪生模型驱动所述机器人执行所述关节运动数据,所述第一人工确认指令为用户响应于所述数字孪生模型的运动画面所输入的指令,用于指示所述数字孪生模型的运动画面符合要求;an action execution sub-module, configured to drive the robot to execute the joint motion data through the digital twin model in the case of receiving a first manual confirmation instruction, the first manual confirmation instruction being that the user responds to the digital The instruction input by the motion picture of the twin model is used to indicate that the motion picture of the digital twin model meets the requirements;判定子模块,用于在接收到第二人工确认指令的情况下,判定所述关节运动数据符合与所述机器人对应的所述原子动作约束条件,所述第二人工确认指令为用户响应于所述机器人的执行动作所输入的指令,用于指示所述机器人的执行动作符合要求。The determination sub-module is configured to determine that the joint motion data complies with the atomic motion constraints corresponding to the robot in the case of receiving a second manual confirmation instruction, and the second manual confirmation instruction is a response of the user to the The instruction inputted by the execution action of the robot is used to indicate that the execution action of the robot meets the requirements.
- 根据权利要求9-13中任一权利要求所述的装置,其特征在于,所述装置还包括修正模块,用于:The device according to any one of claims 9-13, wherein the device further comprises a correction module for:在通过所述机器人的数字孪生模型的仿真数据判定所述关节运动数据不符合与所述机器人对应的原子动作约束条件时,对所述关节运动数据进行修正,并通过所述机器人的数字孪生模型的仿真数据判断修正后的所述关节运动数据是否符合与所述机器人对应的原子动作约束条件,直至判定所述关 节运动数据符合与所述机器人对应的所述原子动作约束条件。When it is determined by the simulation data of the digital twin model of the robot that the joint motion data does not meet the atomic motion constraints corresponding to the robot, the joint motion data is corrected, and the joint motion data is corrected through the digital twin model of the robot. It is determined whether the revised joint motion data complies with the atomic motion constraint corresponding to the robot until it is determined that the joint motion data complies with the atomic motion constraint corresponding to the robot.
- 根据权利要求14所述的装置,其特征在于,所述第一判断模块包括:The device according to claim 14, wherein the first judgment module comprises:第一判断子模块,用于基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动合规条件,所述运动合规条件包括所述关节运动数据对应的动作为所述原子动作、所述关节运动数据中不存在关节运动超过所述关节的物理限位、所述数字孪生模型在执行所述关节运动数据时未出现碰撞和失衡现象;A first judgment sub-module, configured to judge whether the joint motion data satisfies the motion compliance condition based on the simulation data of the digital twin model, and the motion compliance condition includes that the action corresponding to the joint motion data is the atomic motion , in the joint motion data, there is no joint motion exceeding the physical limit of the joint, and the digital twin model does not have collision and imbalance when executing the joint motion data;第二判断子模块,在所述关节运动数据满足所有所述运动合规条件时,基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动优化条件,所述运动优化条件包括所述关节运动数据符合机器人运动学规律和所述关节运动数据对应的动作流畅平滑;The second judging sub-module, when the joint motion data meets all the motion compliance conditions, judges whether the joint motion data satisfies motion optimization conditions based on the simulation data of the digital twin model, and the motion optimization conditions include all the motion optimization conditions. The joint motion data conforms to the law of robot kinematics and the motion corresponding to the joint motion data is smooth and smooth;所述修正模块还包括:The correction module also includes:第一修正子模块,用于在所述关节运动数据不满足所述运动合规条件中的任一条时,接收人工修改指令以对所述关节运动数据进行修改,并重新判断修改后的关节运动数据是否符合与所述机器人对应的原子动作约束条件。A first correction submodule, configured to receive a manual modification instruction to modify the joint motion data when the joint motion data does not meet any of the motion compliance conditions, and re-judg the modified joint motion Whether the data conforms to the atomic action constraints corresponding to the robot.第二修正子模块,用于在所述关节运动数据不满足所述运动优化条件时,对所述关节运动数据进行第一优化,并重新判断优化后的关节运动数据是否符合与所述机器人对应的原子动作约束条件,所述第一优化包括根据逆运动学对所述关节运动数据进行数据优化、根据对抗生成网络训练对所述关节运动数据进行数据优化、根据数据拟合对所述关节运动数据进行数据优化、根据插值算法对所述关节运动数据进行数据优化中的一者或多者。The second correction sub-module is configured to perform a first optimization on the joint motion data when the joint motion data does not meet the motion optimization condition, and re-judg whether the optimized joint motion data conforms to the corresponding robot The first optimization includes performing data optimization on the joint motion data according to inverse kinematics, performing data optimization on the joint motion data according to adversarial generation network training, and performing data optimization on the joint motion data according to data fitting. One or more of performing data optimization on the data and performing data optimization on the joint motion data according to an interpolation algorithm.
- 根据权利要求9-15中任一权利要求所述的装置,其特征在于,所 述装置还包括:The device according to any one of claims 9-15, wherein the device further comprises:第二判断模块,用于在所述机器人处于动作模仿模式的情况下,通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的动作模仿条件;a second judging module, configured to judge whether the joint motion data complies with the motion imitation conditions corresponding to the robot by using the simulation data of the digital twin model of the robot when the robot is in an action imitation mode;优化模块,用于在所述关节运动数据不符合与所述机器人对应的动作模仿条件的情况下,对所述关节运动数据进行第二优化,并重新判断优化后的关节运动数据是否符合与所述机器人对应的动作模仿条件,所述第二优化包括根据逆运动学对所述关节运动数据进行数据优化、根据对抗生成网络训练对所述关节运动数据进行数据优化、根据数据拟合对所述关节运动数据进行数据优化、根据插值算法对所述关节运动数据进行数据优化中的一者或多者;An optimization module, configured to perform a second optimization on the joint motion data when the joint motion data does not meet the motion imitation conditions corresponding to the robot, and re-judg whether the optimized joint motion data conforms to the motion simulation conditions of the robot. According to the corresponding action imitation conditions of the robot, the second optimization includes performing data optimization on the joint motion data according to inverse kinematics, performing data optimization on the joint motion data according to adversarial generation network training, and performing data optimization on the joint motion data according to data fitting. One or more of performing data optimization on the joint motion data and performing data optimization on the joint motion data according to an interpolation algorithm;执行模块,用于在所述关节运动数据符合与所述机器人对应的动作模仿条件的情况下,通过所述数字孪生模型驱动所述机器人执行所述关节运动数据,并在动作执行完成之后回到所述机器人的初始状态。The execution module is used to drive the robot to execute the joint motion data through the digital twin model under the condition that the joint motion data conforms to the action imitation conditions corresponding to the robot, and return to the joint motion data after the action execution is completed. The initial state of the robot.
- 一种非易失性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-8中任一项所述方法的步骤。A non-volatile computer-readable storage medium on which a computer program is stored, characterized in that, when the program is executed by a processor, the steps of the method according to any one of claims 1-8 are implemented.
- 一种电子设备,其特征在于,包括:An electronic device, comprising:存储器,其上存储有计算机程序;a memory on which a computer program is stored;处理器,用于执行所述存储器中的所述计算机程序,以实现权利要求1-8中任一项所述方法的步骤。A processor for executing the computer program in the memory to implement the steps of the method of any one of claims 1-8.
- 一种计算机程序产品,其特征在于,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行权利要求1-8中任一项所述方法的步骤的代码部分。A computer program product, characterized in that the computer program product comprises a computer program executable by a programmable device, the computer program having, when executed by the programmable device, for performing any one of claims 1-8 The code portion of the steps of the method described in item .
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011552528.1 | 2020-12-24 | ||
CN202011552528.1A CN112847336B (en) | 2020-12-24 | 2020-12-24 | Action learning method and device, storage medium and electronic equipment |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022134702A1 true WO2022134702A1 (en) | 2022-06-30 |
Family
ID=75996689
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2021/120457 WO2022134702A1 (en) | 2020-12-24 | 2021-09-24 | Action learning method and apparatus, storage medium, and electronic device |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112847336B (en) |
WO (1) | WO2022134702A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117340897A (en) * | 2023-12-05 | 2024-01-05 | 山东建筑大学 | Dynamic response prediction-oriented robot digital twin model modeling method and system |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112847336B (en) * | 2020-12-24 | 2023-08-22 | 达闼机器人股份有限公司 | Action learning method and device, storage medium and electronic equipment |
CN116619394B (en) * | 2023-07-26 | 2023-09-26 | 佛山智能装备技术研究院 | Industrial robot simulation method, device, equipment and storage medium |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104858852A (en) * | 2015-05-05 | 2015-08-26 | 上海交通大学 | Optimization and constraint method of humanoid robot for real-time imitating human upper limb movement |
CN106078752A (en) * | 2016-06-27 | 2016-11-09 | 西安电子科技大学 | Method is imitated in a kind of anthropomorphic robot human body behavior based on Kinect |
CN106607910A (en) * | 2015-10-22 | 2017-05-03 | 中国科学院深圳先进技术研究院 | Robot real-time simulation method |
KR20170108526A (en) * | 2016-03-18 | 2017-09-27 | 한국과학기술원 | Method for Generating Robot Task Motion Based on Imitation Learning and Motion Composition and Apparatus Therefor |
CN108724190A (en) * | 2018-06-27 | 2018-11-02 | 西安交通大学 | A kind of industrial robot number twinned system emulation mode and device |
CN111113429A (en) * | 2019-12-31 | 2020-05-08 | 深圳市优必选科技股份有限公司 | Action simulation method, action simulation device and terminal equipment |
WO2020138461A1 (en) * | 2018-12-27 | 2020-07-02 | 川崎重工業株式会社 | Robot control device, robot system, and robot control method |
CN112847336A (en) * | 2020-12-24 | 2021-05-28 | 达闼机器人有限公司 | Action learning method, action learning device, storage medium and electronic equipment |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS60205721A (en) * | 1984-03-30 | 1985-10-17 | Matsushita Electric Ind Co Ltd | Robot operation teaching device |
JP3790816B2 (en) * | 2002-02-12 | 2006-06-28 | 国立大学法人 東京大学 | Motion generation method for humanoid link system |
CN1830635A (en) * | 2005-03-10 | 2006-09-13 | 北京理工大学 | Human imitation robot action similarity evaluation based on human body motion track |
CN104589356B (en) * | 2014-11-27 | 2016-08-24 | 北京工业大学 | The Dextrous Hand remote operating control method caught based on Kinect human hand movement |
CN105965506A (en) * | 2016-05-16 | 2016-09-28 | 北京格分维科技有限公司 | Humanoid biped robot walking posture control method based on genetic algorithm |
EP3628453A1 (en) * | 2018-09-28 | 2020-04-01 | Siemens Aktiengesellschaft | A control system and method for a robot |
-
2020
- 2020-12-24 CN CN202011552528.1A patent/CN112847336B/en active Active
-
2021
- 2021-09-24 WO PCT/CN2021/120457 patent/WO2022134702A1/en active Application Filing
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104858852A (en) * | 2015-05-05 | 2015-08-26 | 上海交通大学 | Optimization and constraint method of humanoid robot for real-time imitating human upper limb movement |
CN106607910A (en) * | 2015-10-22 | 2017-05-03 | 中国科学院深圳先进技术研究院 | Robot real-time simulation method |
KR20170108526A (en) * | 2016-03-18 | 2017-09-27 | 한국과학기술원 | Method for Generating Robot Task Motion Based on Imitation Learning and Motion Composition and Apparatus Therefor |
CN106078752A (en) * | 2016-06-27 | 2016-11-09 | 西安电子科技大学 | Method is imitated in a kind of anthropomorphic robot human body behavior based on Kinect |
CN108724190A (en) * | 2018-06-27 | 2018-11-02 | 西安交通大学 | A kind of industrial robot number twinned system emulation mode and device |
WO2020138461A1 (en) * | 2018-12-27 | 2020-07-02 | 川崎重工業株式会社 | Robot control device, robot system, and robot control method |
CN111113429A (en) * | 2019-12-31 | 2020-05-08 | 深圳市优必选科技股份有限公司 | Action simulation method, action simulation device and terminal equipment |
CN112847336A (en) * | 2020-12-24 | 2021-05-28 | 达闼机器人有限公司 | Action learning method, action learning device, storage medium and electronic equipment |
Non-Patent Citations (1)
Title |
---|
CHEN JIASHUN: "The Robot's Motor Learning by Imitation Based on Human-computer Interaction", CHINESE MASTER'S THESES FULL-TEXT DATABASE, 19 March 2015 (2015-03-19), pages 1 - 75, XP055945816 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117340897A (en) * | 2023-12-05 | 2024-01-05 | 山东建筑大学 | Dynamic response prediction-oriented robot digital twin model modeling method and system |
CN117340897B (en) * | 2023-12-05 | 2024-03-12 | 山东建筑大学 | Dynamic response prediction-oriented robot digital twin model modeling method and system |
Also Published As
Publication number | Publication date |
---|---|
CN112847336A (en) | 2021-05-28 |
CN112847336B (en) | 2023-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2022134702A1 (en) | Action learning method and apparatus, storage medium, and electronic device | |
US11345041B2 (en) | Robot device, method of controlling the same, computer program, and robot system | |
CN108161882B (en) | Robot teaching reproduction method and device based on augmented reality | |
JP5246672B2 (en) | Robot system | |
Fritsche et al. | First-person tele-operation of a humanoid robot | |
KR102001214B1 (en) | Apparatus and method for dual-arm robot teaching based on virtual reality | |
CN107225573A (en) | The method of controlling operation and device of robot | |
JP6826069B2 (en) | Robot motion teaching device, robot system and robot control device | |
US20170197308A1 (en) | Teaching data generating device and teaching data-generating method for work robot | |
JP4463120B2 (en) | Imitation robot system and its imitation control method | |
Wang et al. | A real-time human imitation system | |
US11908337B2 (en) | Information processing device, intermediation device, simulation system, and information processing method | |
WO2022142078A1 (en) | Method and apparatus for action learning, medium, and electronic device | |
CN113119104B (en) | Mechanical arm control method, mechanical arm control device, computing equipment and system | |
Maycock et al. | Robust tracking of human hand postures for robot teaching | |
Avalos et al. | Telepresence using the kinect sensor and the NAO robot | |
George et al. | Openvr: Teleoperation for manipulation | |
Murhij et al. | An application to simulate and control industrial robot in virtual reality environment integrated with IR stereo camera sensor | |
Ogawara et al. | Acquiring hand-action models in task and behavior levels by a learning robot through observing human demonstrations | |
Bai et al. | Kinect-based hand tracking for first-person-perspective robotic arm teleoperation | |
Zhou et al. | Development of a synchronized human-robot-virtuality interaction system using cooperative robot and motion capture device | |
Banda et al. | Investigations on collaborative remote control of virtual robotic manipulators by using a Kinect v2 sensor | |
CN112823083A (en) | Configurable and interactive robotic system | |
Hirschmanner | Teleoperation of a humanoid robot using Oculus Rift and Leap Motion | |
Wozniak et al. | Virtual reality framework for better human-robot collaboration and mutual understanding |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21908703 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 14/02/2024) |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 21908703 Country of ref document: EP Kind code of ref document: A1 |