动作学习方法、装置、存储介质及电子设备与流程

文档序号:25228214发布日期:2021-05-28 14:33阅读:79来源:国知局
动作学习方法、装置、存储介质及电子设备与流程

本公开涉及机器人领域,具体地,涉及一种动作学习方法、装置、存储介质及电子设备。



背景技术:

机器人每个动作都是的多个关节组合运动的过程。机器人学习人类动作的方法通常都是先通过人体可穿戴设备来先捕捉人体运动姿态。然后根据人体运动姿态控制实体机器人进行动作的学习。实体机器人动作学习的成本较高,并且相同动作在不同机器人身上需要反复学习。并且动作捕捉常见的方式是在运动物体的关键部位设置跟踪器,例如惯性测量单元(imu)。惯性动捕各个传感器处的三维位置和方向信息可实时地记录并显示(存在少许延迟),小范围使用费用相对合理。但缺陷也是很明显的,其每次使用需要消磁,且其往往受限于磁场的范围和精度,空间定位不准,且出于设备原因,动作局限也比较多然。而且一个人就是一套装备,多人的话成本成倍增加。



技术实现要素:

本公开的目的是提供一种动作学习方法、装置、存储介质及电子设备,能够将一组人体动作转换为多个不同机器人的原子动作,并且对人体动作的学习均基于数字化的、虚拟的机器人数字孪生体模型完成,不需要实体机器人,可大幅降低生成机器人动作的成本。

为了实现上述目的,本公开提供一种动作学习方法,所述方法包括:

获取目标对象的人体动作图像数据;

确定与所述人体动作图像数据对应的机器人的关节运动数据;

通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的原子动作约束条件;

在判定所述关节运动数据符合与所述机器人对应的所述原子动作约束条件的情况下,将所述关节运动数据确定为所述机器人的原子动作。

可选地,所述确定与所述人体动作图像数据对应的机器人的关节运动数据包括:

对所述人体动作图像数据进行去噪处理;

根据所述去噪处理后的所述人体动作图像数据确定对应的三维姿态运动数据,所述三维姿态运动数据中包括与所述目标对象对应的各三维关键点的运动数据,所述三维关键点用于构建所述目标对象的三维姿态;

根据所述三维姿态运动数据映射得到所述机器人的所述关节运动数据。

可选地,所述通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的原子动作约束条件包括:

基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动合规条件,所述运动合规条件包括所述关节运动数据对应的动作为所述原子动作、所述关节运动数据中不存在关节运动超过所述关节的物理限位、所述数字孪生模型在执行所述关节运动数据时未出现碰撞和失衡现象;

在所述关节运动数据不满足所述运动合规条件中的任一条时,判定所述关节运动数据不符合与所述机器人对应的原子动作约束条件。

可选地,所述通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的原子动作约束条件还包括:

在所述关节运动数据满足所有所述运动合规条件时,基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动优化条件,所述运动优化条件包括所述关节运动数据符合机器人运动学规律和所述关节运动数据对应的动作流畅平滑;

在所述关节运动数据不满足所述运动优化条件时,判定所述关节运动数据不符合与所述机器人对应的原子动作约束条件。

可选地,所述通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的原子动作约束条件还包括:

在所述关节运动数据满足所述运动优化条件和所述运动合规条件时,通过所述数字孪生模型执行所述关节运动数据,并对所述数字孪生模型的运动画面进行显示;

在接收到第一人工确认指令的情况下,通过所述数字孪生模型驱动所述机器人执行所述关节运动数据,所述第一人工确认指令为用户响应于所述数字孪生模型的运动画面所输入的指令,用于指示所述数字孪生模型的运动画面符合要求;

在接收到第二人工确认指令的情况下,判定所述关节运动数据符合与所述机器人对应的所述原子动作约束条件,所述第二人工确认指令为用户响应于所述机器人的执行动作所输入的指令,用于指示所述机器人的执行动作符合要求。

可选地,所述方法还包括:在通过所述机器人的数字孪生模型的仿真数据判定所述关节运动数据不符合与所述机器人对应的原子动作约束条件时,对所述关节运动数据进行修正,并通过所述机器人的数字孪生模型的仿真数据判断修正后的所述关节运动数据是否符合与所述机器人对应的原子动作约束条件,直至判定所述关节运动数据符合与所述机器人对应的所述原子动作约束条件。

可选地,所述通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的原子动作约束条件包括:

基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动合规条件,所述运动合规条件包括所述关节运动数据对应的动作为所述原子动作、所述关节运动数据中不存在关节运动超过所述关节的物理限位、所述数字孪生模型在执行所述关节运动数据时未出现碰撞和失衡现象;

在所述关节运动数据满足所有所述运动合规条件时,基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动优化条件,所述运动优化条件包括所述关节运动数据符合机器人运动学规律和所述关节运动数据对应的动作流畅平滑;

所述对所述关节运动数据进行修正,包括:

在所述关节运动数据不满足所述运动合规条件中的任一条时,接收人工修改指令以对所述关节运动数据进行修改;

在所述关节运动数据不满足所述运动优化条件时,对所述关节运动数据进行第一优化,并重新判断优化后的关节运动数据是否符合与所述机器人对应的原子动作约束条件,所述第一优化包括根据逆运动学对所述关节运动数据进行数据优化、根据对抗生成网络训练对所述关节运动数据进行数据优化、根据数据拟合对所述关节运动数据进行数据优化、根据插值算法对所述关节运动数据进行数据优化中的一者或多者。

可选地,在所述机器人处于动作模仿模式的情况下,所述方法还包括:

通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的动作模仿条件;

在所述关节运动数据不符合与所述机器人对应的动作模仿条件的情况下,对所述关节运动数据进行第二优化,并重新判断优化后的关节运动数据是否符合与所述机器人对应的动作模仿条件,所述第二优化包括根据逆运动学对所述关节运动数据进行数据优化、根据对抗生成网络训练对所述关节运动数据进行数据优化、根据数据拟合对所述关节运动数据进行数据优化、根据插值算法对所述关节运动数据进行数据优化中的一者或多者;

在所述关节运动数据符合与所述机器人对应的动作模仿条件的情况下,通过所述数字孪生模型驱动所述机器人执行所述关节运动数据,并在动作执行完成之后回到所述机器人的初始状态。

本公开还提供一种动作学习装置,所述装置包括:

获取模块,用于获取目标对象的人体动作图像数据;

确定模块,用于确定与所述人体动作图像数据对应的机器人的关节运动数据;

第一判断模块,用于通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的原子动作约束条件;

学习模块,用于在判定所述关节运动数据符合与所述机器人对应的所述原子动作约束条件的情况下,将所述关节运动数据确定为所述机器人的原子动作。

本公开还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以上所述方法的步骤。

本公开还提供一种电子设备,包括:

存储器,其上存储有计算机程序;

处理器,用于执行所述存储器中的所述计算机程序,以实现以上所述方法的步骤。

通过上述技术方案,能够通过获取到的目标对象的人体动作图像数据,来确定该机器人的关节运动数据,这样就能够根据该目标对象的一组人体动作图像数据确定得到多个不同机器人分别对应的关节运动数据,加快了不同机器人对动作的学习速度;并且,能够根据该数字化的、虚拟的机器人的数字孪生模型在线上对关节运动数据是否符合原子动作约束条件进行判断,不需要实体机器人,可大幅降低生成机器人动作的成本。

本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:

图1是根据本公开一示例性实施例示出的一种动作学习方法的流程图。

图2是根据本公开又一示例性实施例示出的一种动作学习方法的流程图。

图3是根据本公开又一示例性实施例示出的一种动作学习方法的流程图。

图4是根据本公开又一示例性实施例示出的一种动作学习方法的流程图。

图5是根据本公开一示例性实施例示出的一种动作学习装置的结构框图。

图6是根据一示例性实施例示出的一种电子设备的框图。

图7是根据一示例性实施例示出的一种电子设备的框图。

具体实施方式

以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。

图1是根据本公开一示例性实施例示出的一种动作学习方法的流程图。如图1所示,所述方法包括步骤101至步骤102。

在步骤101中,获取目标对象的人体动作图像数据。

目标对象可以为任意在获取范围内的,能够执行待学习动作的对象,例如可以为人,也可以为动物,或者还可以为其他能够执行动作的机器人等等。

人体动作图像数据可以是2d数据,也可以为3d数据,能够通过任意rgb相机、深度相机或者激光雷达等获取得到的,例如该深度相机可以为基于tof的深度相机、或者基于红外线的深度相机、或者基于被动视觉的单目深度相机或者双目深度相机等等。

用于获取人体动作图像数据的设备可以设置于机器人的头部、胸部、腰部等任意位置,从而使得该机器人能够对目标对象在其面前作出的动作进行学习,或者也可以通过未设置于该机器人上的获取设备来获取该人体动作图像数据,例如可以通过设置于场景环境中的其他设备对该人体动作图像数据进行获取。

获取该人体动作图像数据的过程中,可以是先定位该目标对象的位置,并针对该目标对象的人体动作图像数据进行获取;或者也可以是在该目标对象存在于获取范围内之后,对获取范围内所有物体都进行图像数据的获取,并在获取到的所有图像数据中提取该目标对象的动作相关的人体动作图像数据。

在步骤102中,确定与所述人体动作图像数据对应的机器人的关节运动数据。

由于不同类型的机器人对应的关节结构都不相同,因此对于某一相同动作,不同的机器人对应的关节运动数据也会不相同。因此,在获取到该人体动作图像数据之后,需要确定待学习的机器人。例如,该机器人可以为单臂机器人,也可以为双臂机器人,可以为单足机器人,也可以为双足机器人,可以为手部是二指多关节的机器人,也可以为手部是多指多关节的机器人等等。

该关节运动数据中所包括的内容可以根据该机器人的实际关节来确定,只要是根据该目标对象的人体动作图像数据所学习得到的即可。例如,该目标对象是人,且该人体动作图像数据中所对应的动作中包括双腿和双手等全身的动作,而该机器人为拥有双臂的单足机器人,则确定得到的与该人体动作图像数据对应的该关节运动数据中则可以仅包括头部、双臂、腰部等上半身的运动数据,从而在尽可能保证该关节运动数据对应的动作与该人体动作图像数据对应的动作相似的情况下,也能保证所述机器人的平衡稳定和安全。

其中,该关节运动数据也即多组多个具有时序属性的关节旋转角度数值所构成的,例如,对于一个6轴机器人手臂的关节运动数据可以为:

[(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)],

其中,(0)(100)表示时间戳,(0)可以为起始时间点,(100)可以为与上一时间戳时间间隔(单位可以为例如毫秒);(1:1:3.68)中第一个1表示该6轴机器人手臂中的第一关节,第二个1表示正向旋转,(3.68)表示旋转角度位置,其中,关节顺序是在机器人中定义好的,能够直接用相应标志位上的数字顺序来表示,例如2则表示第二关节,3则表示第三关节;除了上述在相应标志位上用1表征的正向旋转之外,还能够进行反向旋转,反向旋转能够用0来表征。

在步骤103中,通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的原子动作约束条件。

该数字孪生模型为将机器人的物理模型数字化后得到的虚拟机器人,该机器人的物理模型包括外观、各个关节的电机、传感器、重力、碰撞等物理仿真模型,该数字孪生模型还能够接收该机器人的感知反馈并能够对该机器人进行同步控制。该数字孪生模型可以是存储于在服务器端,由服务器端通过该数字孪生模型的仿真数据来对该关节运动数据是否满足该原子动作约束条件进行判断。

该原子动作约束条件用于约束该关节运动数据对应的动作,避免有影响机器人稳定和安全的动作,或者有不是原子动作的动作被确定为该机器人的原子动作。该原子动作约束条件可以根据该机器人的实际情况来设定。该原子动作也即用于组成其他动作的基础动作,例如抬手,放手等动作,机器人在执行该原子动作的情况下,执行过程无法被打算或拆分。

在步骤104中,在判定所述关节运动数据符合与所述机器人对应的所述原子动作约束条件的情况下,将所述关节运动数据确定为所述机器人的原子动作。

多个原子动作可以组成新的机器人行为,学习得到的该原子动作可以存储于该机器人中,也可存储于云端服务器中。

通过上述技术方案,能够通过获取到的目标对象的人体动作图像数据,来确定该机器人的关节运动数据,这样就能够根据该目标对象的一组人体动作图像数据确定得到多个不同机器人分别对应的关节运动数据,加快了不同机器人对动作的学习速度;并且,能够根据该数字化的、虚拟的机器人的数字孪生模型在线上对关节运动数据是否符合原子动作约束条件进行判断,不需要实体机器人,可大幅降低生成机器人动作的成本。

图2是根据本公开又一示例性实施例示出的一种动作学习方法的流程图。如图2所示,所述方法还包括步骤201至步骤203。

在步骤201中,对所述人体动作图像数据进行去噪处理。该去噪处理可以通过任意去噪方法来执行,通过对该人体动作图像数据的去噪和优化,能够使得该人体动作图像数据中所包括的动作能够更加准确。

在步骤202中,根据所述去噪处理后的所述人体动作图像数据确定对应的三维姿态运动数据,所述三维姿态运动数据中包括与所述目标对象对应的各三维关键点的运动数据,所述三维关键点用于构建所述目标对象的三维姿态。

也即,在得到该去噪处理之后的人体动作图像数据之后,能够在该人体动作图像数据中确定出用于构建该目标对象的三维姿态的三维关键点,然后通过该三维关键点在该人体动作图像数据的运动数据,确定的与该人体动作图像数据对应的三维姿态运动数据。该三维姿态运动数据由具有时序属性的多组多个关键点的三维位置数值组成。

在步骤203中,根据所述三维姿态运动数据映射得到所述机器人的所述关节运动数据。

在确定该机器人之后,则可以得到该机器人中的关节信息,进而便可以将该三维姿态运动数据映射至该机器人中的相应的关节中。映射的方法可以为通过深度学习神经网络来进行,其中,可以分别针对不同的机器人训练不同的深度学习神经网络,并根据该机器人来选择对应的深度学习神经网络以进行映射。

图3是根据本公开又一示例性实施例示出的一种动作学习方法的流程图。如图3所示,所述方法还包括步骤301至步骤307。

在步骤301中,基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动合规条件,若是,则转至步骤303,若否,则转至步骤302。其中,所述运动合规条件包括所述关节运动数据对应的动作为所述原子动作、所述关节运动数据中不存在关节运动超过所述关节的物理限位、所述数字孪生模型在执行所述关节运动数据时未出现碰撞和失衡现象。在所述关节运动数据不满足所述运动合规条件中的任一条时,可以判定该关节运动数据不满足该运动合规条件,也即不满足不符合与所述机器人对应的原子动作约束条件。

其中,判断该关节运动数据对应的动作是否为所述原子动作的方法可以为多种。例如,可以将该关节运动数据与预设的多种原子动作的运动数据进行特征比较,从而得到该关节运动数据与多种原子动作的运动数据的特征相似度,若该关节运动数据与两种或两种以上的原子动作的运动数据之间的特征相似度超过预设阈值,则可判断该关节运动数据对应的动作不为需要学习的该原子动作。

上述关节的物理限位与该机器人中的具体关节相关。在判断该关节运动数据中是否存在关节运动超过该关节的物理限位的情况时,可以先分别获取该机器人中的所有关节对应的物理限位,然后对该关节运动数据中涉及到的关节的运动数据进行比较。

上述数字孪生模型出现碰撞的情况可以包括自碰撞,例如模型手臂在运动过程中与模型腿部出现重叠,在该数字孪生模型处于与该机器人相同的三维环境场景中时,出现碰撞的情况也可以包括该模型与周围环境物体发生碰撞。

在步骤302中,也即在所述关节运动数据不满足所述运动合规条件中的任一条时,接收人工修改指令以对所述关节运动数据进行修改;并重新判断修改后的关节运动数据是否符合与所述机器人对应的原子动作约束条件,也即返回步骤301。该人工修改指令可以是通过软件工具基于该数字孪生体模型进行的动作数据修复所生成的修改指令,该软件工具可以是可视化工具,该数字孪生提模型根据修改中的关节运动数据执行的动作可以是可见的。

在步骤303中,也即在所述关节运动数据满足所有所述运动合规条件时,基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动优化条件,若是,则转至步骤305,若否,则转至步骤304;所述运动优化条件包括所述关节运动数据符合机器人运动学规律和所述关节运动数据对应的动作流畅平滑。在所述关节运动数据不满足所述运动优化条件时,也可判定所述关节运动数据不符合与所述机器人对应的原子动作约束条件。

该机器人运动学规律也可以是根据各个不同的机器人所确定得到。在该关节运动数据不满足该机器人运动学规律或者不满足预设的流畅度和平滑度的情况下,被机器人执行之后的动作则会卡顿和不合理,因此,为了保证该关节动作数据在被机器人执行时能保证该动作的平滑和流程,会对该关节运动数据是否满足该运动优化条件进行判断。

其中,上述运动优化条件和上述运动合规条件的判断顺序可以根据实际情况进行调整,在本公开中不限制其先后顺序。

在步骤304中,也即在所述关节运动数据不满足所述运动优化条件时,对所述关节运动数据进行第一优化;并重新判断优化后的关节运动数据是否符合与所述机器人对应的原子动作约束条件,也即返回步骤301。该第一优化的方法可以包括根据逆运动学对所述关节运动数据进行优化数据优化、根据对抗生成网络训练对所述关节运动数据进行优化数据优化、根据数据拟合对所述关节运动数据进行优化数据优化、根据插值算法对所述关节运动数据进行优化数据优化中的一者或多者,或者还可以包括其他的优化方法,在本公开中不进行限制,上述第一优化能够在没有人工干预的情况下实现。

在步骤305中,也即在所述关节运动数据既满足该运动合规条件,也满足所述运动优化条件时,通过所述数字孪生模型执行所述关节运动数据,并对所述数字孪生模型的运动画面进行显示。

在步骤306中,在接收到第一人工确认指令的情况下,通过所述数字孪生模型驱动所述机器人执行所述关节运动数据,所述第一人工确认指令为用户响应于所述数字孪生模型的运动画面所输入的指令,用于指示所述数字孪生模型的运动画面符合要求。

上述在所述关节运动数据满足所述运动优化条件时,也即该关节运动数据既满足该运动合规条件,也满足该运动优化条件的情况,在此情况下,能够通过该数字孪生模型执行该关节运动数据给用户,以进一步通过用户人工确认该关节运动数据是否符合动作学习的要求。

用户在认为该数字孪生模型的运动画面符合要求的情况下可以通过输入该第一人工确认指令的方式进行确认,而用户在认为该数字孪生模型的运动画面不符合要求,仍需要进行修改的情况下,可以直接输入人工修改指令一堆该关节运动数据进行修改,也即,可以转至步骤302对该关节运动数据进行修改。或者,用户也可以直接判定关节运动数据不符合与机器人对应的原子动作约束条件,从而结束对该动作的学习。

在步骤307中,在接收到第二人工确认指令的情况下,判定所述关节运动数据符合与所述机器人对应的所述原子动作约束条件,所述第二人工确认指令为用户响应于所述机器人的执行动作所输入的指令,用于指示所述机器人的执行动作符合要求。

在判定所述关节运动数据符合与所述机器人对应的所述原子动作约束条件时,则可以将该关节运动数据确定为该机器人的原子动作。而若用户在查看到该机器人根据该关节运动数据所执行的动作之后,认为该动作不符合要求,也可以返回至步骤302中再次通过该人工修改指令对该关节运动数据进行修改,并重新进行是否满足该原子动作约束条件的判断。或者,用户也可以直接判定关节运动数据不符合与机器人对应的原子动作约束条件,从而结束对该动作的学习。

通过上述技术方案,能够通过对该运动合规条件和该运动优化条件的判断来对该关节运动数据进行修复或优化等处理,并且还能够通过双重人工确认来保证学习得到的该原子动作的可靠性。

图4是根据本公开又一示例性实施例示出的一种动作学习方法的流程图,如图4所示,所述方法还包括步骤401至步骤403。

在步骤401中,在所述机器人处于动作模仿模式的情况下,通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的动作模仿条件。在该动作模仿模式可以是需要该机器人能够实时对该目标对象做出的动作进行学习模仿。

该动作模仿条件可以包括例如上述运动合规条件,或者还可以包括上述运动优化条件。在判断该动作模仿条件是否符合时,可以根据该关节运动数据满足该动作模仿条件的具体情况进行打分,例如,该运动合规条件全部符合的情况下得到50分,满足运动优化条件中的机器人运动学规律、预设的流畅度和预设的平滑度中的任一项得到10分等等。从而,可以根据得分情况判断该动作模仿条件是否被满足。或者,也可以是先判断该关节运动数据是否符合该运动合规条件,在符合该运动合规条件、且该得分超过一定阈值的情况下,判断该动作模仿条件被满足。

在步骤402中,在所述关节运动数据不符合与所述机器人对应的动作模仿条件的情况下,对所述关节运动数据进行第二优化,并重新判断优化后的关节运动数据是否符合与所述机器人对应的动作模仿条件。在该动作模仿条件不符合的情况下,所进行的该第二优化可以包括根据逆运动学对所述关节运动数据进行优化数据优化、根据对抗生成网络训练对所述关节运动数据进行优化数据优化、根据数据拟合对所述关节运动数据进行优化数据优化、根据插值算法对所述关节运动数据进行优化数据优化中的一者或多者,对该关节运动数据进行例如平滑插值等,该第二优化和上述第一优化所包括的方法可以相同也可以不同。

在步骤403中,在所述关节运动数据符合与所述机器人对应的动作模仿条件的情况下,通过所述数字孪生模型驱动所述机器人执行所述关节运动数据,并在动作执行完成之后回到所述机器人的初始状态。

通过上述技术方案,就能够在保证该机器人的安全的情况下,实现该机器人对该目标对象的动作进行实时地模仿学习的功能。

图5是根据本公开一示例性实施例示出的一种动作学习装置的结构框的。如图5所示,所述装置包括:获取模块10,用于获取目标对象的人体动作图像数据;确定模块20,用于确定与所述人体动作图像数据对应的机器人的关节运动数据;第一判断模块30,用于通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的原子动作约束条件;学习模块40,用于在判定所述关节运动数据符合与所述机器人对应的所述原子动作约束条件的情况下,将所述关节运动数据确定为所述机器人的原子动作。

通过上述技术方案,能够通过获取到的目标对象的人体动作图像数据,来确定该机器人的关节运动数据,这样就能够根据该目标对象的一组人体动作图像数据确定得到多个不同机器人分别对应的关节运动数据,加快了不同机器人对动作的学习速度;并且,能够根据该数字化的、虚拟的机器人的数字孪生模型在线上对关节运动数据是否符合原子动作约束条件进行判断,不需要实体机器人,可大幅降低生成机器人动作的成本。

在一种可能的实施方式中,所述确定模块20包括:去噪子模块,用于对所述人体动作图像数据进行去噪处理;确定子模块,用于根据所述去噪处理后的所述人体动作图像数据确定对应的三维姿态运动数据,所述三维姿态运动数据中包括与所述目标对象对应的各三维关键点的运动数据,所述三维关键点用于构建所述目标对象的三维姿态;映射子模块,用于根据所述三维姿态运动数据映射得到所述机器人的所述关节运动数据。

在一种可能的实施方式中,所述第一判断模块30包括第一判断子模块,用于基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动合规条件,所述运动合规条件包括所述关节运动数据对应的动作为所述原子动作、所述关节运动数据中不存在关节运动超过所述关节的物理限位、所述数字孪生模型在执行所述关节运动数据时未出现碰撞和失衡现象;并在所述关节运动数据不满足所述运动合规条件中的任一条时,判定所述关节运动数据不符合与所述机器人对应的原子动作约束条件。

在一种可能的实施方式中,所述第一判断模块30还包括第二判断子模块,在所述关节运动数据满足所有所述运动合规条件时,基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动优化条件,所述运动优化条件包括所述关节运动数据符合机器人运动学规律和所述关节运动数据对应的动作流畅平滑;并在所述关节运动数据不满足所述运动优化条件时,判定所述关节运动数据不符合与所述机器人对应的原子动作约束条件。

在一种可能的实施方式中,所述第一判断模块30还包括模拟子模块,在所述关节运动数据满足所述运动优化条件和所述运动合规条件时,通过所述数字孪生模型执行所述关节运动数据,并对所述数字孪生模型的运动画面进行显示;动作执行子模块,用于在接收到第一人工确认指令的情况下,通过所述数字孪生模型驱动所述机器人执行所述关节运动数据,所述第一人工确认指令为用户响应于所述数字孪生模型的运动画面所输入的指令,用于指示所述数字孪生模型的运动画面符合要求;判定子模块,用于在接收到第二人工确认指令的情况下,判定所述关节运动数据符合与所述机器人对应的所述原子动作约束条件,所述第二人工确认指令为用户响应于所述机器人的执行动作所输入的指令,用于指示所述机器人的执行动作符合要求。

在一种可能的实施方式中,所述装置还包括:修正模块,用于在通过所述机器人的数字孪生模型的仿真数据判定所述关节运动数据不符合与所述机器人对应的原子动作约束条件时,对所述关节运动数据进行修正,并通过所述机器人的数字孪生模型的仿真数据判断修正后的所述关节运动数据是否符合与所述机器人对应的原子动作约束条件,直至判定所述关节运动数据符合与所述机器人对应的所述原子动作约束条件。

在一种可能的实施方式中,

所述第一判断模块30包括第一判断子模块,用于基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动合规条件,所述运动合规条件包括所述关节运动数据对应的动作为所述原子动作、所述关节运动数据中不存在关节运动超过所述关节的物理限位、所述数字孪生模型在执行所述关节运动数据时未出现碰撞和失衡现象;

所述第一判断模块30还包括第二判断子模块,在所述关节运动数据满足所有所述运动合规条件时,基于所述数字孪生模型的仿真数据判断所述关节运动数据是否满足运动优化条件,所述运动优化条件包括所述关节运动数据符合机器人运动学规律和所述关节运动数据对应的动作流畅平滑;

所述修正模块还包括:

第一修正子模块,用于在所述关节运动数据不满足所述运动合规条件中的任一条时,接收人工修改指令以对所述关节运动数据进行修改,并重新判断修改后的关节运动数据是否符合与所述机器人对应的原子动作约束条件。

第二修正子模块,用于在所述关节运动数据不满足所述运动优化条件时,对所述关节运动数据进行第一优化,并重新判断优化后的关节运动数据是否符合与所述机器人对应的原子动作约束条件,所述第一优化包括根据逆运动学对所述关节运动数据进行数据优化、根据对抗生成网络训练对所述关节运动数据进行数据优化、根据数据拟合对所述关节运动数据进行数据优化、根据插值算法对所述关节运动数据进行数据优化中的一者或多者。

在一种可能的实施方式中,所述装置还包括:第二判断模块,用于在所述机器人处于动作模仿模式的情况下,通过所述机器人的数字孪生模型的仿真数据判断所述关节运动数据是否符合与所述机器人对应的动作模仿条件,所述第二优化包括包括根据逆运动学对所述关节运动数据进行数据优化、根据对抗生成网络训练对所述关节运动数据进行数据优化、根据数据拟合对所述关节运动数据进行数据优化、根据插值算法对所述关节运动数据进行数据优化中的一者或多者;优化模块,用于在所述关节运动数据不符合与所述机器人对应的动作模仿条件的情况下,对所述关节运动数据进行第二优化,并重新判断优化后的关节运动数据是否符合与所述机器人对应的动作模仿条件;执行模块,用于在所述关节运动数据符合与所述机器人对应的动作模仿条件的情况下,通过所述数字孪生模型驱动所述机器人执行所述关节运动数据,并在动作执行完成之后回到所述机器人的初始状态。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

图6是根据一示例性实施例示出的一种电子设备600的框图。如图6所示,该电子设备600可以包括:处理器601,存储器602。该电子设备600还可以包括多媒体组件603,输入/输出(i/o)接口604,以及通信组件605中的一者或多者。

其中,处理器601用于控制该电子设备600的整体操作,以完成上述的动作学习方法中的全部或部分步骤。存储器602用于存储各种类型的数据以支持在该电子设备600的操作,这些数据例如可以包括用于在该电子设备600上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器602可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(staticrandomaccessmemory,简称sram),电可擦除可编程只读存储器(electricallyerasableprogrammableread-onlymemory,简称eeprom),可擦除可编程只读存储器(erasableprogrammableread-onlymemory,简称eprom),可编程只读存储器(programmableread-onlymemory,简称prom),只读存储器(read-onlymemory,简称rom),磁存储器,快闪存储器,磁盘或光盘。多媒体组件603可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器602或通过通信组件605发送。音频组件还包括至少一个扬声器,用于输出音频信号。i/o接口604为处理器601和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件605用于该电子设备600与其他设备之间进行有线或无线通信。无线通信,例如wi-fi,蓝牙,近场通信(nearfieldcommunication,简称nfc),2g、3g、4g、nb-iot、emtc、或其他5g等等,或它们中的一种或几种的组合,在此不做限定。因此相应的该通信组件605可以包括:wi-fi模块,蓝牙模块,nfc模块等等。

在一示例性实施例中,电子设备600可以被一个或多个应用专用集成电路(applicationspecificintegratedcircuit,简称asic)、数字信号处理器(digitalsignalprocessor,简称dsp)、数字信号处理设备(digitalsignalprocessingdevice,简称dspd)、可编程逻辑器件(programmablelogicdevice,简称pld)、现场可编程门阵列(fieldprogrammablegatearray,简称fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的动作学习方法。

在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的动作学习方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器602,上述程序指令可由电子设备600的处理器601执行以完成上述的动作学习方法。

图7是根据一示例性实施例示出的一种电子设备700的框图。例如,电子设备700可以被提供为一服务器。参照图7,电子设备700包括处理器722,其数量可以为一个或多个,以及存储器732,用于存储可由处理器722执行的计算机程序。存储器732中存储的计算机程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理器722可以被配置为执行该计算机程序,以执行上述的动作学习方法。

另外,电子设备700还可以包括电源组件726和通信组件750,该电源组件726可以被配置为执行电子设备700的电源管理,该通信组件750可以被配置为实现电子设备700的通信,例如,有线或无线通信。此外,该电子设备700还可以包括输入/输出(i/o)接口758。电子设备700可以操作基于存储在存储器732的操作系统,例如windowsservertm,macosxtm,unixtm,linuxtm等等。

在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的动作学习方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器732,上述程序指令可由电子设备700的处理器722执行以完成上述的动作学习方法。

在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的动作学习方法的代码部分。

以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。

另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。

此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1