CN112975993B - 一种机器人示教方法、装置、存储介质和设备 - Google Patents
一种机器人示教方法、装置、存储介质和设备 Download PDFInfo
- Publication number
- CN112975993B CN112975993B CN202110196778.4A CN202110196778A CN112975993B CN 112975993 B CN112975993 B CN 112975993B CN 202110196778 A CN202110196778 A CN 202110196778A CN 112975993 B CN112975993 B CN 112975993B
- Authority
- CN
- China
- Prior art keywords
- vector
- neural network
- network model
- joint angle
- robot
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- 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/0081—Programme-controlled manipulators with master teach-in means
-
- 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/0006—Exoskeletons, i.e. resembling a human figure
-
- 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
-
- 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/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
- B25J9/1697—Vision controlled systems
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Manipulator (AREA)
- Image Analysis (AREA)
Abstract
本申请公开了一种机器人示教方法、装置、存储介质和设备,从输入的影像信息中提取人物图像,影像信息基于影像采集设备采集。将人物图像输入至神经网络模型中,得到人物的三维骨架。对三维骨架进行归一化处理,得到多个向量。对各个向量进行单位化处理,得到各个单位向量。基于各个单位向量,计算得到各个关节角。对各个关节角进行碰撞检测,将碰撞检测结果指示无碰撞的关节角,发送至机器人的控制系统中,使得机器人执行与关节角对应的动作。本申请所述的方法,无需采用专业的硬件设备进行人体的动作姿态捕捉,只需输入影像信息便可驱动机器人进行示教动作,用户可以使用诸如智能手机等影像采集设备采集影像信息,从而大大降低机器人示教的门槛。
Description
技术领域
本申请涉及机器人技术领域,尤其涉及一种机器人示教方法、装置、存储介质和设备。
背景技术
传统的机器人示教过程,需要通过可穿戴设备来追踪人体的运动和姿态,需要的场地比较大、成本高。此外,在机器人动作设计和技能学习过程中,譬如握手、举手、摆头、以及拥抱等动作,基于动作捕捉设备来实现,过程会十分繁琐,费时费力。可见,传统的机器人示教过程,对硬件设备、场地、以及人员的专业水平均具有较高要求,难以适用于大多数个体和企业,适用范围过于狭隘,不利于机器人产业的良性发展。
发明内容
本申请提供了一种机器人示教方法、装置、存储介质和设备,目的在于提供一种使用影像采集设备(例如摄像头、智能手机等)便可完成机器人示教的技术方案。
为了实现上述目的,本申请提供了以下技术方案:
一种机器人示教方法,包括:
从输入的影像信息中提取人物图像,所述影像信息基于影像采集设备预先采集;
将所述人物图像输入至预先构建的神经网络模型中,得到所述神经网络模型的输出结果;所述输出结果包括人物的三维骨架;
对所述三维骨架进行归一化处理,得到多个向量;
对各个所述向量进行单位化处理,得到各个单位向量;
基于各个所述单位向量,计算得到人体骨架的各个关节角;
对各个所述关节角进行碰撞检测;
将碰撞检测结果指示无碰撞的关节角,发送至机器人的控制系统中,使得所述机器人执行与所述关节角对应的动作。
可选的,所述从输入的影像信息中提取人物图像,包括:
获取用户输入的影像信息;
对所述影像信息进行场景分割,得到包含有人物特征的图像;
对包含有人物特征的所述图像进行人物识别,得到人物图像。
可选的,所述将所述人物图像输入至预先构建的神经网络模型中,得到所述神经网络模型的输出结果,包括:
将所述人物图像输入至第一神经网络模型中,得到所述第一神经网络模型的输出结果;所述第一神经网络模型基于目标检测框架进行迁移学习所得到;所述第一神经网络模型的输出结果包括人物的二维骨架;
将所述二维骨架输入至第二神经网络模型中,得到第二神经网络模型的输出结果;所述第二神经网络模型的输出结果包括所述人物的三维骨架;所述第二神经网络模型基于样本二维骨架、以及所述样本二维骨架的真实三维坐标训练得到。
可选的,所述基于各个所述单位向量,计算得到人体骨架的各个关节角,包括:
基于各个所述单位向量,构建欧式空间;
计算所述欧式空间中两两所述单位向量之间的空间夹角,得到人体骨架的各个关节角。
可选的,所述对各个所述关节角进行碰撞检测之前,还包括:
对各个所述关节角进行滤波处理;
所述对各个所述关节角进行碰撞检测,包括:
对滤波处理后的各个所述关节角进行碰撞检测。
一种机器人示教装置,包括:
提取单元,用于从输入的影像信息中提取人物图像,所述影像信息基于影像采集设备预先采集;
输入单元,用于将所述人物图像输入至预先构建的神经网络模型中,得到所述神经网络模型的输出结果;所述输出结果包括人物的三维骨架;
归一化单元,用于对所述三维骨架进行归一化处理,得到多个向量;
单位化单元,用于对各个所述向量进行单位化处理,得到各个单位向量;
计算单元,用于基于各个所述单位向量,计算得到人体骨架的各个关节角;
检测单元,用于对各个所述关节角进行碰撞检测;
发送单元,用于将碰撞检测结果指示无碰撞的关节角,发送至机器人的控制系统中,使得所述机器人执行与所述关节角对应的动作。
可选的,还包括:
滤波单元,用于对各个所述关节角进行滤波处理。
可选的,所述输入单元具体用于:
将所述人物图像输入至第一神经网络模型中,得到所述第一神经网络模型的输出结果;所述第一神经网络模型基于目标检测框架进行迁移学习所得到;所述第一神经网络模型的输出结果包括人物的二维骨架;
将所述二维骨架输入至第二神经网络模型中,得到第二神经网络模型的输出结果;所述第二神经网络模型的输出结果包括所述人物的三维骨架;所述第二神经网络模型基于样本二维骨架、以及所述样本二维骨架的真实三维坐标训练得到。
一种计算机可读存储介质,所述计算机可读存储介质包括存储的程序,其中,所述程序执行所述的机器人示教方法。
一种机器人示教设备,包括:处理器、存储器和总线;所述处理器与所述存储器通过所述总线连接;
所述存储器用于存储程序,所述处理器用于运行程序,其中,所述程序运行时执行所述的机器人示教方法。
本申请提供的技术方案,从输入的影像信息中提取人物图像,影像信息基于影像采集设备预先采集。将人物图像输入至预先构建的神经网络模型中,得到神经网络模型的输出结果,输出结果包括人物的三维骨架。对三维骨架进行归一化处理,得到多个向量。对各个向量进行单位化处理,得到各个单位向量。基于各个单位向量,计算得到人体骨架的各个关节角。对各个关节角进行碰撞检测,并将碰撞检测结果指示无碰撞的关节角,发送至机器人的控制系统中,使得机器人执行与关节角对应的动作。可见,本申请所述的方法,无需采用专业的硬件设备进行人体的动作姿态捕捉(即由人工带动机器人执行动作),只需输入影像信息便可驱动机器人进行示教动作,用户可以使用诸如智能手机等影像采集设备采集影像信息,从而大大降低机器人示教的门槛。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a为本申请实施例提供的一种机器人示教方法的示意图;
图1b为本申请实施例提供的一种二维骨架的示意图;
图1c为本申请实施例提供的一种人体骨架的示意图;
图1d为本申请实施例提供的一种三维骨架的示意图;
图2为本申请实施例提供的另一种机器人示教方法的示意图;
图3为本申请实施例提供的一种机器人示教装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
如图1a所示,为本申请实施例提供的一种机器人示教方法的示意图,包括如下步骤:
S101:获取影像采集设备采集的影像信息。
其中,影像采集设备包括但不限于摄像头、可拍摄影像的移动设备、以及摄影设备等,影像信息包括但不限于为视频和图像等。
S102:对影像信息进行场景分割,得到包含有人物特征的图像。
其中,场景分割的具体执行过程和实现原理,为本领域技术人员所熟悉的公知常识,这里不再赘述。
S103:对包含有人物特征的图像进行人物识别,得到人物图像。
其中,人物识别的具体执行过程和实现原理,为本领域技术人员所熟悉的公知常识。
S104:将人物图像输入至第一神经网络模型中,得到第一神经网络模型的输出结果。
其中,第一神经网络模型的输出结果包括人物的二维骨架(下述简称为2D骨架),所谓的2D骨架是指人体骨架的二维平面图像。
需要说明的是,第一神经网络模型的构建过程可以为:在现有公开的目标检测框架(即detectron2神经网络)的基础上进行迁移学习,得到第一神经网络模型。迁移学习的具体执行过程和实现原理,为本领域技术人员所熟悉的公知常识,这里不再赘述。
具体的,将人物图像输入至第一神经网络模型中,第一神经网络模型的输出结果为,如图1b所示,为方框内人物的2D骨架。
S105:将人物的2D骨架输入至第二神经网络模型中,得到第二神经网络模型的输出结果。
其中,第二神经网络模型的输出结果包括人物的三维骨架(下述简称为3D骨架),所谓的3D骨架是指人体骨架的三维立体图像。
需要说明的是,第二神经网络模型基于开源数据集训练得到,开源数据集包括人体骨架的二维图像(即样本二维骨架)、以及样本二维骨架的真实三维坐标。在本申请实施例中,训练所用的开源数据集可以为现有公开的hunman3.6M数据集,hunman3.6M数据集提供的人体骨架如图1c所示(在图1c中,线段用于指示骨骼),第二神经网络模型包括但不限于为深度学习神经网络模型。
具体的,将人物的2D骨架输入至第二神经网络模型中,得到第二神经网络的输出结果,即所谓的3D骨架可以参见图1d所示。
S106:对人物的3D骨架进行归一化处理,得到多个向量。
其中,对人物的3D骨架进行归一化处理,实质就是将3D骨架中的骨骼转化成向量。
需要说明的是,归一化处理的具体执行过程和实现原理,为本领域技术人员所熟悉的公知常识,这里不再赘述。
S107:对各个向量进行单位化处理,得到各个单位向量。
其中,对各个向量进行单位化处理,实质就是保持向量的方向不变,将向量的长度转化为1。
需要说明的是,单位化处理的具体执行过程和实现原理,为本领域技术人员所熟悉的公知常识,这里不再赘述。
S108:基于各个单位向量,构建欧式空间。
其中,构建欧式空间(一种现有的几何空间表达方式)的目的是:将欧式空间中的向量关系映射到骨架的关节空间中,以便于计算两两单位向量之间的空间夹角(即骨架的关节角)。
S109:计算欧式空间中两两单位向量之间的空间夹角,得到人体骨架的各个关节角。
其中,计算欧式空间中两两单位向量之间的空间夹角,为数学算法中常用的欧式几何算法。
具体的,因为人类的四肢运动都是以躯干为基准中心,故需以躯干为整个欧式几何计算的参考坐标系。以图1c所示的2D骨架为例,以0、11、14坐标点形成的平面的法向量作为z轴、以0、8坐标点形成的向量(即“0→8”向量)作为x轴、0、11、14坐标点形成的平面的法向量与“0→8”向量的公共垂线作为y轴,构建一个坐标系,并将图1c所示的其它坐标点全部转换至该坐标系下。在本申请实施例中,该坐标系在人体直立的时候有:z向上,y向右,x向前。
由医学常识可知,人体骨架包括手臂、头部、腰部、以及腿部等四个部位。以图1c为例,譬如想要计算左臂的指向方向,我可以用12坐标点减去11坐标点,得到“11→12”向量,该向量方向就表示了左手大臂的指向方向。其他的如头部、腰部、腿部等皆可如此推导,可以得到整个骨架的向量指向。然后我们只选用计算关节角,使得“机器人的部件”与对应的“骨架的向量”指向相同,就能够模仿出人物图像中人物所展示的动作姿态。
针对手臂的关节,以图1c中所示的一条手臂(即“8→11”向量、“11→12”向量、以及“12→13”向量)为例,在欧式几何算法中,通常会对向量的空间角度进行抽象化展开:已知一个空间向量(即“11→12”向量),求关节角a(即肩关节的左右摆动角)和关节角b(即肩关节的前后摆动角),预先将-x轴绕(cos20°,sin20°,0)向量转a弧度后,再绕z轴转b弧度,使得-x轴与向量重合,这里的20°是因为机器人的肩关节并不是沿水平轴前后摆动,而是与水平轴有一个20°的倾角,从计算得到的多组解中,选择取值归属于关节角取值范围内的解作为关节角a和关节角b。另外,关节角d(即大臂与小臂的折叠角度)实质就是“11→12”向量和“12→13”向量之间的空间夹角,把两个向量绕z轴转负b弧度,再绕(cos20°,sin20°,0)向量转负a弧度,使得向量和-x轴重合,此时“12→13”向量到达一个新的位置,将新位置的向量投影到y-z平面,则y-z平面上的投影与z轴的夹角就是关节角c(即手臂的翻转角度)。
在本申请实施例中,关节角a和关节角b的计算过程如公式(1)所示。
在公式(1)中,Ca代表cos(a),Sa代表sin(a),Cb代表cos(b),Sb代表sin(b),C0代表cos20°,S0代表sin20°,所谓的20°为肩关节转轴与水平方向的夹角。
通过求解公式(1),可得到关节角a和关节角b的取值,如公式(2)所示。
关节角d的计算过程如公式(3)所示。
关节角c的计算过程如公式(4)和公式(5)所示。
同理,对于图1c中所示的另一条手臂(即“8→11”向量、“14→15”向量、以及“15→16”向量),依据上述求解原理,同样能够计算得到四个关节角。
针对头部的关节,以图1c中所示的头部(即“8→9”向量和“9→10”向量)为例,在欧式几何算法中,以8、9、10坐标点构建一个旋转矩阵,并将“9→10”向量作为向量,将向量作为旋转矩阵的第三列,将“8→9”向量与“9→10”向量之间的乘积作为向量,将向量作为旋转矩阵的第二列,然后将向量与向量之间的乘积作为向量,并将向量作为旋转矩阵的第一列,求解旋转矩阵即可得到头部的三个关节角。
在本申请实施例中,旋转矩阵的计算过程如公式(6)和公式(7)所示。
在公式(6)和公式(7)中,z'代表向量,y'代表向量,x'代表向量,代表“8→9”向量,代表“9→10”向量,Cx代表cos(x),Sx代表sin(x),x代表向量绕x轴转动的角度,Cy代表cos(y),Sy代表sin(y),y代表向量绕y轴转动的角度,Cz代表cos(z),Sz代表sin(z),z代表向量绕z轴转动的角度。
针对腰部的关节,腰部的关节角的计算原理与上述头部的关节角的计算原理相同,以图1c中所示的腰部(“8→7”向量和“7→0”向量)为例,在欧式几何算法中,以8、7、0坐标点构建一个旋转矩阵,并将“7→0”向量作为向量,将向量作为旋转矩阵的第三列,将“8→7”向量与“7→0”向量之间的乘积作为向量,将向量作为旋转矩阵的第二列,然后将向量与向量之间的乘积作为向量,将向量作为旋转矩阵的第一列,求解旋转矩阵即可得到腰部的三个关节角。
针对腿部的关节,腿部的关节角的计算原理与上述手臂的关节角的计算原理相同,以图1c中所示的一条腿(即“0→1”向量、“1→2”向量、以及“2→3”向量)为例,在欧式几何算法中,通常会对向量的空间角度进行抽象化展开:已知一个空间向量(即“0→1”向量),求关节角e(即腿关节的左右摆动角)和关节角f(即腿关节的前后摆动角),预先将-x轴绕(cos20°,sin20°,0)向量转e弧度后,再绕z轴转f弧度,使得-x轴与向量重合,这里的20°是因为机器人的腿关节并不是沿水平轴前后摆动,而是与水平轴有一个20°的倾角,从计算得到的多组解中,选择取值归属于关节角取值范围内的解作为关节角e和关节角f。另外,关节角h(即大腿与小腿的折叠角度)实质就是“0→1”向量和“2→3”向量之间的空间夹角,把两个向量绕z轴转负f弧度,再绕(cos20°,sin20°,0)向量转负e弧度,使得向量和-x轴重合,此时“2→3”向量到达一个新的位置,将新位置的向量投影到y-z平面,则y-z平面上的投影与z轴的夹角就是关节角g(即腿部的翻转角度)。同理,对于图1c中所示的另一条腿(即“0→4”向量、“4→5”向量、以及“5→6”向量),依据上述求解原理,同样能够计算得到四个关节角。
需要说明的是,上述具体实现过程仅仅用于举例说明。
S110:对各个关节角进行滤波处理。
其中,滤波处理的具体实现过程,为本领域技术人员所熟悉的公知常识,具体的,可以采用滑动窗口的方式对各个关节角进行滤波,从而去除骨架中存在的噪声。
S111:对滤波处理后的各个关节角进行碰撞检测。
其中,碰撞检测的具体方式包括但不限于为:将机器人的urdf模型(现有的机器人运动模型)预先封装至moveit开源库(一种现有的开源工具库)中,再将滤波处理后的各个关节角输入至moveit开源库中,实现对各个关节角的碰撞检测。
S112:将碰撞检测结果指示无碰撞的关节角,发送至机器人的控制系统中,使得机器人执行与关节角对应的动作。
其中,机器人执行与关节角对应的动作,其实质就是模仿人物图像中人体所展现的姿态。
综上所述,本申请实施例所述的方法,无需采用专业的硬件设备进行人体的动作姿态捕捉(即由人工带动机器人执行动作),只需输入影像信息便可驱动机器人进行示教动作,用户可以使用诸如智能手机等影像采集设备采集影像信息,从而大大降低机器人示教的门槛。
需要说明的是,上述实施例提及的S102,为本申请所述机器人示教方法的一种可选的具体实现方式。此外,上述实施例提及的S103、S104、以及S105,也均为本申请所述机器人示教方法的一种可选的具体实现方式。为此,上述实施例所示的流程,可以概括为图2所示的方法。
如图2所示,为本申请实施例提供的另一种机器人示教方法的示意图,包括如下步骤:
S201:从输入的影像信息中提取人物图像。
其中,影像信息基于影像采集设备预先采集。
S202:将人物图像输入至预先构建的神经网络模型中,得到神经网络模型的输出结果。
其中,输出结果包括人物的三维骨架。
S203:对三维骨架进行归一化处理,得到多个向量。
S204:对各个向量进行单位化处理,得到各个单位向量。
S205:基于各个单位向量,计算得到人体骨架的各个关节角。
S206:对各个关节角进行碰撞检测。
S207:将碰撞检测结果指示无碰撞的关节角,发送至机器人的控制系统中,使得机器人执行与关节角对应的动作。
综上所述,本申请实施例的方法,无需采用专业的硬件设备进行人体的动作姿态捕捉,只需输入影像信息便可驱动机器人进行示教动作,用户可以使用诸如智能手机等影像采集设备采集影像信息,从而大大降低机器人示教的门槛。
与上述本申请实施例提供的机器人示教方法相对应,本申请实施例还提供了一种机器人示教装置。
如图3所示,为本申请实施例提供的一种机器人示教装置的结构示意图,包括:
提取单元100,用于从输入的影像信息中提取人物图像,影像信息基于影像采集设备预先采集。
其中,提取单元100具体用于:获取用户输入的影像信息;对影像信息进行场景分割,得到包含有人物特征的图像;对包含有人物特征的图像进行人物识别,得到人物图像。
输入单元200,用于将人物图像输入至预先构建的神经网络模型中,得到神经网络模型的输出结果,输出结果包括人物的三维骨架。
其中,输入单元200具体用于:将人物图像输入至第一神经网络模型中,得到第一神经网络模型的输出结果;第一神经网络模型基于目标检测框架进行迁移学习所得到;第一神经网络模型的输出结果包括人物的二维骨架;将二维骨架输入至第二神经网络模型中,得到第二神经网络模型的输出结果;第二神经网络模型的输出结果包括人物的三维骨架;第二神经网络模型基于样本二维骨架、以及样本二维骨架的真实三维坐标训练得到。
归一化单元300,用于对三维骨架进行归一化处理,得到多个向量。
单位化单元400,用于对各个向量进行单位化处理,得到各个单位向量。
计算单元500,用于基于各个单位向量,计算得到人体骨架的各个关节角。
其中,计算单元500具体用于:基于各个单位向量,构建欧式空间;计算欧式空间中两两单位向量之间的空间夹角,得到人体骨架的各个关节角。
滤波单元600,用于对各个关节角进行滤波处理。
检测单元700,用于对滤波处理后的各个关节角进行碰撞检测。
发送单元800,用于将碰撞检测结果指示无碰撞的关节角,发送至机器人的控制系统中,使得机器人执行与关节角对应的动作。
综上所述,本申请实施例的方法,无需采用专业的硬件设备进行人体的动作姿态捕捉,只需输入影像信息便可驱动机器人进行示教动作,用户可以使用诸如智能手机等影像采集设备采集影像信息,从而大大降低机器人示教的门槛。
本申请还提供了一种计算机可读存储介质,计算机可读存储介质包括存储的程序,其中,程序执行上述本申请提供的机器人示教方法。
本申请还提供了一种机器人示教设备,包括:处理器、存储器和总线。处理器与存储器通过总线连接,存储器用于存储程序,处理器用于运行程序,其中,程序运行时执行上述本申请提供的机器人示教方法,包括如下步骤:
从输入的影像信息中提取人物图像,所述影像信息基于影像采集设备预先采集;
将所述人物图像输入至预先构建的神经网络模型中,得到所述神经网络模型的输出结果;所述输出结果包括人物的三维骨架;
对所述三维骨架进行归一化处理,得到多个向量;
对各个所述向量进行单位化处理,得到各个单位向量;
基于各个所述单位向量,计算得到人体骨架的各个关节角;
对各个所述关节角进行碰撞检测;
将碰撞检测结果指示无碰撞的关节角,发送至机器人的控制系统中,使得所述机器人执行与所述关节角对应的动作。
可选的,所述从输入的影像信息中提取人物图像,包括:
获取用户输入的影像信息;
对所述影像信息进行场景分割,得到包含有人物特征的图像;
对包含有人物特征的所述图像进行人物识别,得到人物图像。
可选的,所述将所述人物图像输入至预先构建的神经网络模型中,得到所述神经网络模型的输出结果,包括:
将所述人物图像输入至第一神经网络模型中,得到所述第一神经网络模型的输出结果;所述第一神经网络模型基于目标检测框架进行迁移学习所得到;所述第一神经网络模型的输出结果包括人物的二维骨架;
将所述二维骨架输入至第二神经网络模型中,得到第二神经网络模型的输出结果;所述第二神经网络模型的输出结果包括所述人物的三维骨架;所述第二神经网络模型基于样本二维骨架、以及所述样本二维骨架的真实三维坐标训练得到。
可选的,所述基于各个所述单位向量,计算得到人体骨架的各个关节角,包括:
基于各个所述单位向量,构建欧式空间;
计算所述欧式空间中两两所述单位向量之间的空间夹角,得到人体骨架的各个关节角。
可选的,所述对各个所述关节角进行碰撞检测之前,还包括:
对各个所述关节角进行滤波处理;
所述对各个所述关节角进行碰撞检测,包括:
对滤波处理后的各个所述关节角进行碰撞检测。
本申请实施例所述的功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算设备可读取存储介质中。基于这样的理解,本申请实施例对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台计算设备(可以是个人计算机,服务器,移动计算设备或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (8)
1.一种机器人示教方法,其特征在于,包括:
从输入的影像信息中提取人物图像,所述影像信息基于影像采集设备预先采集;
将所述人物图像输入至第一神经网络模型中,得到所述第一神经网络模型的输出结果;所述第一神经网络模型基于目标检测框架进行迁移学习所得到;所述第一神经网络模型的输出结果包括人物的二维骨架;
将所述二维骨架输入至第二神经网络模型中,得到第二神经网络模型的输出结果;所述第二神经网络模型的输出结果包括所述人物的三维骨架;所述第二神经网络模型基于开源数据集训练得到,所述开源数据集包括样本二维骨架、以及所述样本二维骨架的真实三维坐标;所述输出结果包括人物的三维骨架;
对所述三维骨架进行归一化处理,得到多个向量;
对各个所述向量进行单位化处理,得到各个单位向量;
基于各个所述单位向量,计算得到人体骨架的各个关节角,其中,所述人体骨架包括手臂、头部、腰部及腿部;
对各个所述关节角进行碰撞检测;
将碰撞检测结果指示无碰撞的关节角,发送至机器人的控制系统中,使得所述机器人执行与所述关节角对应的动作;
其中,通过对预先构建的与所述头部相关联的旋转矩阵进行计算,得到所述头部的各个关节角;所述头部的关节角数量有三个;
所述旋转矩阵的计算过程如公式(1)~(2)所示:
2.根据权利要求1所述的方法,其特征在于,所述从输入的影像信息中提取人物图像,包括:
获取用户输入的影像信息;
对所述影像信息进行场景分割,得到包含有人物特征的图像;
对包含有人物特征的所述图像进行人物识别,得到人物图像。
3.根据权利要求1所述的方法,其特征在于,所述基于各个所述单位向量,计算得到人体骨架的各个关节角,包括:
基于各个所述单位向量,构建欧式空间;
计算所述欧式空间中两两所述单位向量之间的空间夹角,得到人体骨架的各个关节角。
4.根据权利要求1所述的方法,其特征在于,所述对各个所述关节角进行碰撞检测之前,还包括:
对各个所述关节角进行滤波处理;
所述对各个所述关节角进行碰撞检测,包括:
对滤波处理后的各个所述关节角进行碰撞检测。
5.一种机器人示教装置,其特征在于,包括:
提取单元,用于从输入的影像信息中提取人物图像,所述影像信息基于影像采集设备预先采集;
输入单元,用于将所述人物图像输入至预先构建的神经网络模型中,得到所述神经网络模型的输出结果;所述输出结果包括人物的三维骨架;
归一化单元,用于对所述三维骨架进行归一化处理,得到多个向量;
单位化单元,用于对各个所述向量进行单位化处理,得到各个单位向量;
计算单元,用于基于各个所述单位向量,计算得到人体骨架的各个关节角,其中,所述人体骨架包括手臂、头部、腰部及腿部;
检测单元,用于对各个所述关节角进行碰撞检测;
发送单元,用于将碰撞检测结果指示无碰撞的关节角,发送至机器人的控制系统中,使得所述机器人执行与所述关节角对应的动作;
所述输入单元具体用于:
将所述人物图像输入至第一神经网络模型中,得到所述第一神经网络模型的输出结果;所述第一神经网络模型基于目标检测框架进行迁移学习所得到;所述第一神经网络模型的输出结果包括人物的二维骨架;
将所述二维骨架输入至第二神经网络模型中,得到第二神经网络模型的输出结果;所述第二神经网络模型的输出结果包括所述人物的三维骨架;所述第二神经网络模型基于开源数据集训练得到,所述开源数据集包括:样本二维骨架、以及所述样本二维骨架的真实三维坐标训练得到;
其中,通过对预先构建的与所述头部相关联的旋转矩阵进行计算,得到所述头部的各个关节角;所述头部的关节角数量有三个;
所述旋转矩阵的计算过程如公式(1)~(2)所示:
6.根据权利要求5所述的装置,其特征在于,还包括:
滤波单元,用于对各个所述关节角进行滤波处理;
所述检测单元,具体用于对滤波处理后的各个所述关节角进行碰撞检测。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的程序,其中,所述程序执行权利要求1-4任一所述的机器人示教方法。
8.一种机器人示教设备,其特征在于,包括:处理器、存储器和总线;所述处理器与所述存储器通过所述总线连接;
所述存储器用于存储程序,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1-4任一所述的机器人示教方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110196778.4A CN112975993B (zh) | 2021-02-22 | 2021-02-22 | 一种机器人示教方法、装置、存储介质和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110196778.4A CN112975993B (zh) | 2021-02-22 | 2021-02-22 | 一种机器人示教方法、装置、存储介质和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112975993A CN112975993A (zh) | 2021-06-18 |
CN112975993B true CN112975993B (zh) | 2022-11-25 |
Family
ID=76349327
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110196778.4A Active CN112975993B (zh) | 2021-02-22 | 2021-02-22 | 一种机器人示教方法、装置、存储介质和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112975993B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113146634A (zh) * | 2021-04-25 | 2021-07-23 | 达闼机器人有限公司 | 机器人姿态的控制方法、机器人及存储介质 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105252532B (zh) * | 2015-11-24 | 2017-07-04 | 山东大学 | 动作捕捉机器人协同柔性姿态控制的方法 |
US10919152B1 (en) * | 2017-05-30 | 2021-02-16 | Nimble Robotics, Inc. | Teleoperating of robots with tasks by mapping to human operator pose |
CN108053469A (zh) * | 2017-12-26 | 2018-05-18 | 清华大学 | 多视角相机下的复杂动态场景人体三维重建方法及装置 |
CN109344803A (zh) * | 2018-10-29 | 2019-02-15 | 广东工业大学 | 一种姿态特征提取方法及相关装置 |
WO2021002025A1 (ja) * | 2019-07-04 | 2021-01-07 | 富士通株式会社 | 骨格認識方法、骨格認識プログラム、骨格認識システム、学習方法、学習プログラムおよび学習装置 |
CN111208783B (zh) * | 2019-12-30 | 2021-09-17 | 深圳市优必选科技股份有限公司 | 一种动作模仿方法、装置、终端及计算机存储介质 |
CN112207835B (zh) * | 2020-09-18 | 2021-11-16 | 浙江大学 | 一种基于示教学习实现双臂协同作业任务的方法 |
CN112200157A (zh) * | 2020-11-30 | 2021-01-08 | 成都市谛视科技有限公司 | 一种降低图像背景干扰的人体3d姿态识别方法及其系统 |
-
2021
- 2021-02-22 CN CN202110196778.4A patent/CN112975993B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112975993A (zh) | 2021-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11741629B2 (en) | Controlling display of model derived from captured image | |
JP7015152B2 (ja) | キーポイントデータに関する加工装置、方法及びプログラム | |
CN102074034B (zh) | 多模型人体运动跟踪方法 | |
CN111402290A (zh) | 一种基于骨骼关键点的动作还原方法以及装置 | |
CN108875586B (zh) | 一种基于深度图像与骨骼数据多特征融合的功能性肢体康复训练检测方法 | |
WO2022227664A1 (zh) | 机器人姿态的控制方法、机器人、存储介质及计算机程序 | |
CN112401369A (zh) | 基于人体重建的身体参数测量方法、系统、设备、芯片及介质 | |
CN108305321A (zh) | 一种基于双目彩色成像系统的立体人手3d骨架模型实时重建方法和装置 | |
CN112975993B (zh) | 一种机器人示教方法、装置、存储介质和设备 | |
CN114495273A (zh) | 一种机器人手势遥操作方法及相关装置 | |
Jatesiktat et al. | Personalized markerless upper-body tracking with a depth camera and wrist-worn inertial measurement units | |
CN113610969A (zh) | 一种三维人体模型生成方法、装置、电子设备及存储介质 | |
CN112712030A (zh) | 三维姿态信息还原方法及装置 | |
CN109531578B (zh) | 仿人机械手臂体感控制方法及装置 | |
Vignola et al. | Progressive human skeleton fitting | |
CN109214295B (zh) | 基于Kinect v2和Leap Motion的数据融合的手势识别方法 | |
JP2023527627A (ja) | 逆運動学に基づいた関節の回転の推測 | |
CN115205737B (zh) | 基于Transformer模型的运动实时计数方法和系统 | |
CN115205750B (zh) | 基于深度学习模型的运动实时计数方法和系统 | |
Li | Badminton motion capture with visual image detection of picking robotics | |
Wang et al. | Im2fit: Fast 3d model fitting and anthropometrics using single consumer depth camera and synthetic data | |
Sigalas et al. | Robust model-based 3d torso pose estimation in rgb-d sequences | |
CN111767886A (zh) | 一种基于移动机器人的动捕跟踪方法 | |
Martinez et al. | Optimized 4D DPM for Pose Estimation on RGBD Channels using Polisphere Models | |
Xin et al. | Visual servoing of unknown objects for family service robots |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |