掌桥专利:专业的专利平台
掌桥专利
首页

一种人体姿态的比对方法及比对装置

文献发布时间:2023-06-19 12:07:15


一种人体姿态的比对方法及比对装置

技术领域

本发明涉及人体关键点姿态特征描述技术领域,尤其涉及一种人体姿态的比对方法及比对装置。

背景技术

在一些应用场景,比如运动员在训练时,跟着教练的示范动作,并和标准动作进行大量比对,但是人体由于高矮胖瘦不同,同样的姿势比对的精准度不高。

目前的技术有两种,一种是通过人体图像来比对,但是人体体态的图像由像素点组成,让计算机直接比较像素点的相似度太过于抽象,计算机很难完成。图像分析的算法可以将图像的像素点提成计算机更加容易比较的特征数组。类似人脸识别的算法,将人脸的图像信息通过算法的提取和抽样成一组多维的数组用于描述特征。由于这类特征数组很难直接用于特征相似的比较,因此往往需要大量的图像作为样本训练出每一动作所需要的相似度。因此,这类方法不适用于需要比较大量动作的相似度。

第二种是通过提取人体姿态的关键点,再进行比较。这是一种较为通用的比较方法,且可以通过关键点定义不同的姿态,扩展性更好。

但是由于人体姿态的比较必须要考虑人体各个部位的胖瘦长短的影响,和一般的关键点比较有一定的区别。例如,同样的姿势,我们需要考虑手脚长短,肩部窄等人体差异的因素,一般的关键点的定位会存在误差,不够精准。

发明内容

本发明的目的在于提供一种人体姿态的比对方法及比对装置,通过该描述方法,无需训练可以快速比较,并且通过多个向量间夹角的表达式可以解决因人体局部胖瘦和长短带来定位误差。

为达此目的,本发明采用以下技术方案:一种人体姿态的比对方法,包括以下步骤:

获取目标人体的视频或者图像,通过所述视频或者图像提取目标人体关键点;

所述目标人体关键点被获取后,进行建模,通过空间中的三维坐标K(x,y,z)或者二维坐标K(x,y)表示所述目标人体关键点的模型;

计算所述目标人体关键点的若干个向量的夹角的余弦值,将所述余弦值作为所述目标人体关键点的姿态特征向量的特征值;

使用相似度比较方法比较所述目标人体和标准人体的关键点的姿态特征向量的相似性,以判定所述目标人体的运动动作是否准确。

进一步的,所述目标人体关键点包括头部(1)、脖子(2)、右肩(3)、左肩(4)、右肘(5)、左肘(6)、右手腕(7)、左手腕(8)、右臀(9)、左臀(10)、右膝(11)、左膝(12)、右脚踝(13)、左脚踝(14)。

进一步的,定义Ki=(x

定义所述向量为V,计算获得第一向量和第二向量;

第一向量V(i,j)=(x

第二向量V(i,t)=(x

通过公式cos(V(i,j),V(i,t))计算获得所述第一向量和所述第二向量的夹角的余弦值。

进一步的,所述人体关键点的姿态特征向量包括头部姿态特征向量、手部姿态特征向量、上半身姿态特征向量和下半身姿态特征向量;将所述头部姿态特征向量、所述手部姿态特征向量、所述上半身姿态特征向量和所述下半身姿态特征向量合并,获得全身姿态特征向量,将所述目标人体的全身姿态特征向量和标准人体的全身姿态特征向量进行对比,以判定所述目标人体的运动动作是否准确。

进一步的,手部姿态的定义为:

使用7个余弦值和4个方向值用来唯一定义手部的姿态,7个余弦值为:

cos(V(2,3),V(2,4)),cos(V(3,2),V(3,5)),cos(V(5,3),V(5,7)),cos(V(4,2),V(4,6)),cos(V(6,4),V(6,8)),cos(V(7,5),V(7,8)),cos(V(8,6),V(8,7))作为特征值;4个方向值为:

r1=(v(2,3)+v(2,4))·(v(3,2)+v(3,5))>0

r2=(v(2,3)+v(2,4))·(v(5,3)+v(5,7))>0

r3=(v(2,3)+v(2,4))·(v(4,2)+v(4,6))>0

r4=(v(2,3)+v(2,4))·(v(6,4)+v(6,8))>0

以上为右边不等式成立r1=1,否认这r1=0。

结合7个余弦值和4个方向值,定义手部姿态特征向量如下:

F2=[cos(v(2,3),v(2,4)),r1·cos(v(3,2),v(3,5)),r2·cos(v(5,3),v(5,7)),r3·cos(v(4,2),v(4,6)),r4·cos(v(6,4),v(6,8)),cos(v(7,5),v(7,8)),cos(v(8,6),v(8,7))]。

进一步的,上半身姿态的定义如下:

使用5个余弦值作为上半身的特征值,cos(V(2,3),V(2,4)),cos(V(3,2),V(3,9)),cos(V(9,3),V(9,10)),cos(V(10,9),V(10,4)),cos(V(4,2),V(4,10)),并定义上半身姿态特征向量:

F3=[cos(V(2,3),V(2,4)),cos(V(3,2),V(3,9)),cos(V(9,3),V(9,10)),cos(V(10,9),V(10,4)),cos(V(4,2),V(4,10)]。

进一步的,下半身姿态的定义如下:

使用6个余弦值和2个方向值作为下半身的特征值,6个余弦值为:cos(V(9,11),V(9,10)),cos(V(10,9),V(10,12),cos(V(11,9),V(11,13)),cos(V(12,10),V(12,14)),cos(V(13,11),V(13,14)),cos(V(14,13),V(14,12));2个方向值为:

r1=(v(9,10)+v(9,11))·(v(11,9),v(11,13))>0

r2=(v(10,9)+v(10,12))·(v(12,10),v(12,14))>0

以上为右边不等式成立r1=1,否认这r1=0。

根据以上的余弦值和方向至,我们定义下半身姿态特征向量如下:

F4=[cos(v(9,11),v(9,10)),

cos(v(10,9),v(10,12)),

r1·cos(v(11,9),v(11,13)),

r2·cos(v(12,10),v(12,14)),

cos(v(13,11),v(13,14)),

cos(v(14,13),v(14,12))]。

进一步的,所述相似度比较方法包括:欧几里得距离,马氏距离,闵可夫斯基距离,汉明距离,余弦相似度。

一种根据所述的人体姿态的比对方法的比对装置,包括:

获取模块,用于获取目标人体的视频或者图像,通过所述视频或者图像提取目标人体关键点;

建模模块,用于所述目标人体关键点被获取后,进行建模,通过空间中的三维坐标K(x,y,z)或者二维坐标K(x,y)表示所述目标人体关键点的模型;

计算模块,用于所计算所述目标人体关键点的若干个向量的夹角的余弦值,将所述余弦值作为所述目标人体关键点的姿态特征向量的特征值;

比较模块,用于使用相似度比较方法比较所述目标人体和标准人体的关键点的姿态特征向量的相似性,以判定所述目标人体的运动动作是否准确。

本发明的有益效果:本发明提供了一种人体姿态的比对方法及比对装置,考虑了人体各部分的胖瘦和高低,本发明通过获取人体的关键点信息;人体的关键点信息被获取后,通过空间中的三维坐标K(x,y,z)或者二维坐标K(x,y)表示,通过定义人体的关键点之间的夹角关系来比较人体的姿态,使用若干个向量的余弦值和方向作为特征值,姿态特征使用特征向量表示;所述特征向量的所述特征值是若干所述向量间夹角和方向的数学表达式;并通过相似度比较方法来比较两个人体的姿态,即比较两个人体所对应的姿态特征向量的相似性。该描述方法无需训练且可以快速比较,通过多个向量间夹角和方向的表达式可以解决因人体局部胖瘦和长短带来的误差。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。

图1为本发明实施例提供的一种人体姿态的比对方法的步骤流程图;

图2为本发明实施例提供的一种人体姿态的比对装置的模块图;

图3为本发明实施例提供的人体关键点的示意图;

图4为本发明实施例提供的头部关键点的示意图;

图5为本发明实施例提供的手部关键点的示意图;

图6为本发明实施例提供的上半身关键点的示意图;

图7为本发明实施例提供的下半身关键点的示意图。

图中:1、头;2、脖子;3、右肩;4、左肩;5、右肘;6、左肘;7、右手腕;8、左手腕;9、右臀;10、左臀;11、右膝;12、左膝;13、右脚踝;14、左脚踝。

具体实施方式

本发明实施例提供了一种人体姿态的比对方法及比对装置,通过该方法,无需训练可以快速比较,并且通过多个向量间夹角的表达式可以解决因人体局部胖瘦和长短带来定位误差。

为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

下面结合附图并通过具体实施方式来进一步说明本发明的技术方案。

本发明的描述中,需要说明的是,术语“上”、“下”、“前”、“后”、“左”、“右”、“内”、“外”等指示的方位或位置关系为基于图1所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。

请参考图1,图1为本发明实施例提供的一种人体姿态的比对方法的步骤流程图;

实施例一:

如图1所示,本发明实施例提供一种人体姿态的比对方法,包括以下步骤:

步骤101:获取目标人体的视频或者图像,通过所述视频或者图像提取目标人体关键点;

步骤102:所述目标人体关键点被获取后,进行建模,通过空间中的三维坐标K(x,y,z)或者二维坐标K(x,y)表示所述目标人体关键点的模型;

步骤103:计算所述目标人体关键点的若干个向量的夹角的余弦值,将所述余弦值作为所述目标人体关键点的姿态特征向量的特征值;

步骤104:使用相似度比较方法比较所述目标人体和标准人体的关键点的姿态特征向量的相似性,以判定所述目标人体的运动动作是否准确。

具体的,特征值是线性代数中的一个重要概念,在数学、物理学、化学、计算机等领域有着广泛的应用。线性变换的特征向量是一个非简并的向量,其方向在该变换下不变。该向量在此变换下缩放的比例称为其特征值。线性变换的特征向量是指在变换下方向不变,或者简单地乘以一个缩放因子的非零向量,特征向量对应的特征值是它所乘的那个缩放因子。

本发明中的特征值使用向量的余弦值表示,也可以选用其他的的表示方式,只要可以表示向量的夹角。

其中步骤104中的相似度比较方法可以选用欧几里得距离,马氏距离,闵可夫斯基距离,汉明距离,余弦相似度等。欧几里得度量(euclidean metric)(也称欧氏距离)是一个通常采用的距离定义,指在m维空间中两个点之间的真实距离,或者向量的自然长度(即该点到原点的距离)。在二维和三维空间中的欧氏距离就是两点之间的实际距离;马氏距离(Mahalanobis distance)是表示点与一个分布之间的距离,是一种有效的计算两个未知样本集的相似度的方法;闵氏距离有时也指时空间隔;汉明距离是使用在数据传输差错控制编码里面的,汉明距离是一个概念,它表示两个(相同长度)字对应位不同的数量,我们以d(x,y)表示两个字x,y之间的汉明距离。对两个字符串进行异或运算,并统计结果为1的个数,那么这个数就是汉明距离。余弦相似度,又称为余弦相似性,是通过计算两个向量的夹角余弦值来评估他们的相似度。余弦相似度将向量根据坐标值,绘制到向量空间中,如最常见的二维空间。

进一步的,所述目标人体关键点包括头部1、脖子2、右肩3、左肩4、右肘5、左肘6、右手腕7、左手腕8、右臀9、左臀10、右膝11、左膝12、右脚踝13、左脚踝14。

具体的,定义为k1,k2,k3,k4,k5,k6,k7,k8,k9,k10,k11,k12,k13,k14为14个人体关键点。

进一步的,定义Ki=(x

定义所述向量为V,计算获得第一向量和第二向量;

第一向量V(i,j)=(x

第二向量V(i,t)=(x

通过公式cos(V(i,j),V(i,t))计算获得所述第一向量和所述第二向量的夹角的余弦值。

具体的,如图3-7所示,通过公式cos(V(i,j),V(i,t))计算获得所述第一向量和所述第二向量的夹角的余弦值。

进一步的,所述特征向量包括头部姿态特征向量,手部姿态特征向量,上半身姿态特征向量和下半身姿态特征向量,将所述头部姿态特征向量,所述手部姿态特征向量,所述上半身姿态特征向量,所述下半身姿态特征向量合并,形成全身的特征向量。

具体的,人体姿态的特征向量主要包括了头部姿态特征向量,手部姿态特征向量,上半身姿态特征向量和下半身姿态特征向量,将所述头部姿态特征向量,所述手部姿态特征向量,所述上半身姿态特征向量,所述下半身姿态特征向量合并,形成全身的特征向量。

进一步的,如图4所示,头部姿态定义为:

使用三个余弦值cos(V(2,1),V(2,3)),cos(V(2,1),V(2,4)),cos(V(2,3),V(2,4))作为特征值,并定义头部姿态特征向量:

F1=[cos(V(2,1),V(2,3)),cos(V(2,1),V(2,4)),cos(V(2,3),V(2,4))]。

进一步的,如图5所示,进一步的,手部姿态的定义为:

使用7个余弦值和4个方向值用来唯一定义手部的姿态,7个余弦值为:

cos(V(2,3),V(2,4)),cos(V(3,2),V(3,5)),cos(V(5,3),V(5,7)),cos(V(4,2),V(4,6)),cos(V(6,4),V(6,8)),cos(V(7,5),V(7,8)),cos(V(8,6),V(8,7))作为特征值;4个方向值为:

r1=(v(2,3)+v(2,4))·(v(3,2)+v(3,5))>0

r2=(v(2,3)+v(2,4))·(v(5,3)+v(5,7))>0

r3=(v(2,3)+v(2,4))·(v(4,2)+v(4,6))>0

r4=(v(2,3)+v(2,4))·(v(6,4)+v(6,8))>0

以上为右边不等式成立r1=1,否认这r1=0。

结合7个余弦值和4个方向值,定义手部姿态特征向量如下:

F2=[cos(v(2,3),v(2,4)),r1·cos(v(3,2),v(3,5)),r2·cos(v(5,3),v(5,7)),r3·cos(v(4,2),v(4,6)),r4·cos(v(6,4),v(6,8)),cos(v(7,5),v(7,8)),cos(v(8,6),v(8,7))]。

以上特征向量F2是可以唯一定义手部的姿态,且考虑了高矮胖瘦的影响。以上特征向量考虑了2-3,3-5,5-7,2-4,4-6,6-8的长短带来的影响。

进一步的,如图6所示,上半身姿态的定义如下:

使用5个余弦值作为上半身的特征值,cos(V(2,3),V(2,4)),cos(V(3,2),V(3,9)),cos(V(9,3),V(9,10)),cos(V(10,9),V(10,4)),cos(V(4,2),V(4,10)),并定义上半身姿态特征向量:

F3=[cos(V(2,3),V(2,4)),cos(V(3,2),V(3,9)),cos(V(9,3),V(9,10)),cos(V(10,9),V(10,4)),cos(V(4,2),V(4,10)]。

以上特征向量F3是可以唯一定义上半身的姿态,且考虑了高矮胖瘦的影响。上身不需考虑方向性,因为身体的姿态的变动不可能导致这个5个关键点形成的夹角方向出现变动。

进一步的,下半身姿态的定义如下:

使用6个余弦值和2个方向值作为下半身的特征值,6个余弦值为:cos(V(9,11),V(9,10)),cos(V(10,9),V(10,12),cos(V(11,9),V(11,13)),cos(V(12,10),V(12,14)),cos(V(13,11),V(13,14)),cos(V(14,13),V(14,12));2个方向值为:

r1=(v(9,10)+v(9,11))·(v(11,9),v(11,13))>0

r2=(v(10,9)+v(10,12))·(v(12,10),v(12,14))>0

以上为右边不等式成立r1=1,否认这r1=0。

根据以上的余弦值和方向至,我们定义下半身姿态特征向量如下:

F4=[cos(v(9,11),v(9,10)),

cos(v(10,9),v(10,12)),

r1·cos(v(11,9),v(11,13)),

r2·cos(v(12,10),v(12,14)),

cos(v(13,11),v(13,14)),

cos(v(14,13),v(14,12))]。

以上特征向量F4是可以唯一定义下半身的姿态,且考虑了高矮胖瘦的影响。以上特征向量考虑了9-11,13-11,12-10,14-10,9-10的长短带来的影响。

进一步的,所述相似度比较方法包括欧几里得距离,马氏距离,闵可夫斯基距离,汉明距离,余弦相似度。

具体的,使用相似度比较方法比较两个特征向量的相似性。

在具体的实施例中,我们将头部特征向量,手部特征向量,上半身特征向量,下半身特征向量,4个特征向量F1,F2,F3,F4合并,成为完整的全身特征向量。此外,考虑状态比较中,部分部位的重要性,我们可以在特征向量中加入权重参数。例如:

F2=[α1·cos(v(2,3),v(2,4)),α2·r1·cos(v(3,2),v(3,5)),α3·r2·cos(v(5,3),v(5,7)),α4·r3·cos(v(4,2),v(4,6)),α5·r4·cos(v(6,4),v(6,8)),α6·cos(v(7,5),v(7,8)),α7·cos(v(8,6),v(8,7))]

α1,α2,α3,α4,α5,α6,α7,即为权重值。

以上特征值使用向量的余弦值表示,可以选用其他的的表示方式,只要可以表示向量的夹角。

以上定义的姿态的特征方程同时也可以直接用于快速动作比较中。我们可以将每一帧的姿态特征连接起来形成时间序列姿态特征。那么比较动作的相似性,即比较两个时间序列姿态特征的相似性。我们选用例如动态规划的比较方法DTW(Dynamic TimeWarping)进行快速比较。

实施例二:

如图2所示,一种根据所述的人体姿态的比对方法的比对装置,包括:

获取模块,用于获取目标人体的视频或者图像,通过所述视频或者图像提取目标人体关键点;

具体的,可以拍摄目标人体运动时的视频,通过通过基于图像人体关键点分析算法或者其他的方式取得目标人体关键点。

建模模块,用于所述目标人体关键点被获取后,进行建模,通过空间中的三维坐标K(x,y,z)或者二维坐标K(x,y)表示所述目标人体关键点的模型;

具体的,可以通过三维建模或者二维建模,二维建模会丢失深度的信息实施例提出的关键点比较方法可以使用三维和二维空间。二维人体关键点信息损失了深度信息,因此比较三维信息较好。

计算模块,用于所计算所述目标人体关键点的若干个向量的夹角的余弦值,将所述余弦值作为所述目标人体关键点的姿态特征向量的特征值;

具体的,以上特征值使用向量的余弦值表示,可以选用其他的的标示方式,只要可以表示向量的夹角。

比较模块,用于使用相似度比较方法比较所述目标人体和标准人体的关键点的姿态特征向量的相似性,以判定所述目标人体的运动动作是否准确。

具体的,比较两个向量的相似性,可以选用现有的相似对比较方法,例如欧几里得距离,马氏距离,闵可夫斯基距离,汉明距离,余弦相似度等,通过多个向量间夹角的表达式可以解决因人体局部胖瘦和长短带来的误差。

综上所述,本发明实施例提供一种人体姿态的比对方法及比对装置,考虑了人体各部分的胖瘦和高低,本发明通过获取人体的关键点信息;人体的关键点信息被获取后,通过空间中的三维坐标K(x,y,z)或者二维坐标K(x,y)表示,通过定义人体的关键点之间的夹角关系来比较人体的姿态,使用若干个向量的余弦值作为特征值,姿态特征使用特征向量表示;所述特征向量的所述特征值是若干所述向量间夹角的数学表达式;并通过相似度比较方法来比较两个人的姿态,即比较两个人所对应的姿态特征向量的相似性。该描述方法无需训练且可以快速比较,通过多个向量间夹角的表达式可以解决因人体局部胖瘦和长短带来的误差。

以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

相关技术
  • 一种人体姿态的比对方法及比对装置
  • 一种基于姿态估计的人体运动节奏比对系统及方法
技术分类

06120113177058