一种用户跑步姿态分析方法、装置、跑步机及存储介质与流程

文档序号:31793436发布日期:2022-10-14 16:35阅读:95来源:国知局
一种用户跑步姿态分析方法、装置、跑步机及存储介质与流程

1.本技术涉及图像识别技术领域,尤其涉及一种用户跑步姿态分析方法、装置、跑步机及存储介质。


背景技术:

2.随着社会的进步,人们对运动健身越来越重视,其中,跑步机成为了最为普及的健身器材。然而,有缺少教练一对一指导,错误的跑步姿态非但不能起到锻炼的作用,反而会伤害到运动者的膝盖脚踝。对用户跑步姿态进行分析并及时提供纠正意见成为跑步机上一项比较受用户欢迎的功能应用。
3.现有的跑步姿态分析方法,通常基于单张图像展开跑步姿态的分析,比如通过关联膝盖或者脚踝的关键点计算角度并进行阈值判定,以此对跑步姿态进行分类等。
4.然而,人体在跑步的过程中是动态的,采用现有的跑步姿态分析方法所确定的结果并不具备代表性;此外,现有分析方法中对关键点的错误预测也会对分析结果带来较大的影响。


技术实现要素:

5.有鉴于此,本技术实施例提供了一种用户跑步姿态分析方法、装置、跑步机及存储介质,能够实现用户跑步姿态的有效分析,以此提升跑步机的用户体验。
6.第一方面,本技术实施例提供了一种用户跑步姿态分析方法,包括:
7.从摄像头捕获的用户跑步视频中提取设定帧数的人体下半身图像;
8.根据从各所述人体下半身图像中确定的骨骼关键点,构建关键点坐标矩阵;
9.根据所述关键点坐标矩阵,确定人体下半身中各骨骼关键点对应的语义特征信息;
10.通过对各所述语义特征信息的分析,确定用户跑步时所关联身体部位的跑步姿态。
11.进一步地,所述根据从各所述人体下半身图像中确定的骨骼关键点,构建关键点坐标矩阵,包括:
12.针对各所述人体下半身图像,将所述人体下半身图像作为输入数据,输入骨骼点提取网络模型,获得输出的骨骼关键点热力图;
13.对所述骨骼关键点热力图通过峰值计算方法进行解码处理,获得所述人体下半身图像所对应设定个数的骨骼关键点坐标;
14.汇总各所述人体下半身图像的骨骼关键点坐标,形成以骨骼关键点坐标为元素,以所述设定帧数为行数、所述设定个数为列数的关键点坐标矩阵。
15.进一步地,所述根据所述关键点坐标矩阵,确定人体下半身中各骨骼关键点对应的语义特征信息,包括:
16.对所述关键点坐标矩阵按照确定的关键点关联关系进行空间划分,获得所确定矩
阵个数的关键点坐标子矩阵;
17.针对每个关键点坐标子矩阵,将所述关键点坐标子矩阵作为输入数据,输入至相应的神经网络模型,获得所述关键点坐标子矩阵所包括各关联骨骼点对应的语义特征向量,并记为语义特征信息。
18.进一步地,所述对所述关键点坐标矩阵按照确定的关键点关联关系进行空间划分,获得所确定矩阵个数的关键点坐标子矩阵,包括:
19.确定用户跑步时人体下半身关联的关联身体部位,将确定出的关联身体部位的个数确定为所述矩阵个数;
20.确定构成各所述关联身体部位的关联骨骼点集,其中,所述关联骨骼点集中包含相对所述关联身体部位具备关键点关联关系的所有关联骨骼点;
21.针对每个关联骨骼点集,从所述关键点坐标矩阵中提取所述关联骨骼点集内各关联骨骼点对应的列信息,并基于各所述列信息形成相应的关键点坐标子矩阵;
22.获得所述矩阵个数的关键点坐标子矩阵。
23.进一步地,所述矩阵个数的取值为4;
24.所述矩阵个数的关键点坐标子矩阵分别为:表征左膝盖的第一关键点坐标子矩阵、表征右膝盖的第二关键点坐标子矩阵、表征左脚踝的第三关键点坐标子矩阵以及表征右脚踝的第四关键点坐标子矩阵。
25.进一步地,各所述关键点坐标子矩阵对应的神经网络模型为自适应图卷积网络模型;
26.所述自适应图卷积网络模型的运算中采用邻接矩阵来表征各个关联骨骼点之间的关系,并通过对各邻接矩阵中元素值的确定,来确定各关联骨骼点的语义特征向量;
27.所述邻接矩阵中的元素值至少通过下述三种方式表征并确定:
28.基于人体骨骼的物理连接来表征元素值;
29.基于训练集中样本数据进行训练和学习后确定的节点关联强度来表征元素值;
30.基于输入所述自适应图卷积网络模型的当前输入数据确定出的关键点特征来表征元素值。
31.进一步地,分别与所述第一关键点坐标子矩阵及第二关键点坐标子矩阵对应的第一自适应图卷积网络模型以及第二自适应图卷积网络模型,运算中所采用的邻接矩阵大小为3*3;
32.分别与所述第三关键点坐标子矩阵及第四关键点坐标子矩阵对应的第三自适应图卷积网络模型以及第四自适应图卷积网络模型,运算中所采用的邻接矩阵大小为5*5。
33.进一步地,所述通过对各所述语义特征信息的分析,确定用户跑步时所关联身体部位的跑步姿态,包括:
34.针对每个关键点坐标子矩阵,将相应的语义特征信息输入至预先训练的姿态分类器,获得所述关键点坐标子矩阵所关联身体部位相对各跑步姿态的匹配得分值;
35.将最高匹配得分值对应的跑步姿态确定为相应身体部位的当前跑步姿态;
36.其中,所述跑步姿态包括正常跑步、外翻跑步以及内扣跑步。
37.进一步地,所述姿态分类器中至少包括:级联全连接层、激活层、批量归一化层以及逻辑回归层。
38.第二方面,本技术实施例提供了一种用户跑步姿态分析装置,包括:
39.图像提取模块,用于从摄像头捕获的用户跑步视频中提取设定帧数的人体下半身图像;
40.矩阵确定模块,用于根据从各所述人体下半身图像中确定的骨骼关键点,构建关键点坐标矩阵;
41.特征确定模块,用于根据所述关键点坐标矩阵,确定人体下半身中各骨骼关键点对应的语义特征信息;
42.姿态确定模块,用于通过对各所述语义特征信息的分析,确定用户跑步时所关联身体部位的跑步姿态。
43.第三方面,本技术实施例还提供一种跑步机,包括:底座、立柱、设置于立柱顶端的智能交互装置,还包括:存储器、一个或多个控制器,以及设置于所述立柱指定位置的摄像机;
44.所述摄像机,用于捕获用户跑步时的视频流;
45.所述存储器,用于存储一个或多个程序;
46.当所述一个或多个程序被所述一个或多个控制执行,使得所述一个或多个控制器实现如权利要求1-7任一所述的方法。
47.第四方面,本技术实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机控制器执行时用于执行如第一方面所述的用户跑步姿态分析方法。
48.上述提供的一种用户跑步姿态分析方法、装置、跑步机及存储介质,该方法从摄像头捕获的用户跑步视频中提取设定帧数的人体下半身图像;然后根据从各人体下半身图像中确定的骨骼关键点,构建关键点坐标矩阵;之后根据该关键点坐标矩阵,确定人体下半身中各骨骼关键点对应的语义特征信息,最终,通过对各所述语义特征信息的分析,确定用户跑步时所关联身体部位的跑步姿态。本实施例上述技术方案,采用了视频流中的多帧人体下半身图像作为姿态分析的输入,由此保证了相对用户动态跑步过程中更为鲁棒的姿态分析结果,同时,姿态分析实现中对多帧人体下半身图像进行的骨骼关键点检测,也有效降低了关键点预测错误的概率,提高了姿态分析结果的准确率和有效性。
附图说明
49.通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本技术的其它特征、目的和优点将会变得更明显:
50.图1为本技术实施例一提供的一种用户跑步姿态分析方法的流程示意图;
51.图1a给出了本实施例一所提供用户跑步姿态分析方法中所提供骨骼关键点的实例展示图;
52.图1b给出了本技术实施例一所提供用户跑步姿态分析方法的示例流程图;
53.图2为本技术实施例二提供的一种用户跑步姿态分析方法的流程示意图;
54.图2a给出了本技术实施例二中关键点坐标子矩阵确定的实现流程图;
55.图2b给出了本技术实施例二所提供用户跑步姿态分析方法中各关联身体部位所包括关联骨骼点集的示例说明图;
56.图3为本技术实施例三提供的一种用户跑步姿态分析装置的结构框图;
57.图4为本技术实施例四提供的一种跑步机的结构示意图。
具体实施方式
58.为使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术实施例方式作进一步地详细描述。应当明确,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本技术保护的范围。
59.下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
60.在本技术的描述中,需要理解的是,术语“第一”、“第二”、“第三”等仅用于用于区别类似的对象,而不必用于描述特定的顺序或先后次序,也不能理解为指示或暗示相对重要性。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本技术中的具体含义。此外,在本技术的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
61.实施例一
62.图1为本技术实施例一提供的一种用户跑步姿态分析方法的流程示意图,该方法适用于对用户在跑步机上跑步时的姿态进行分析的情况。该方法可以由用户跑步姿态分析装置执行,该装置可以由硬件和/或软件实现,并一般集成在跑步机中。
63.可以知道的是,现有的跑步姿态分析方法采用单张图像进行分析,确定出的跑步姿态往往不具备代表性,同时若对单张图像进行关键点检测时检测有误,也会直接影响跑步姿态的分析结果。本实施例一提供的一种用户跑步姿态分析方法,能够实现用户跑步姿态的有效分析。
64.如图1所示,本实施例一提供的一种用户跑步姿态分析方法,具体包括如下步骤:
65.s101、从摄像头捕获的用户跑步视频中提取设定帧数的人体下半身图像。
66.在本实施例中,所述摄像头具体可认为设置在跑步机的某个位置处,用户在跑步机上跑步时,摄像头可以捕获到用户跑步视频。同时,所捕获的用户跑步视频中至少需要包括用户下半身的相关跑步动作。
67.示例性的,摄像头在跑步机上可以设置在能够清晰捕获用户髋关节以下部位的位置,由此保证所提取的每帧人体下半身图像中至少包括了用户的髋关节部位、膝盖部位、脚踝部位、脚趾部位以及脚跟部位。
68.本实施例考虑采用对多帧包含用户跑步动作的图像进行分析,以此来规避对单张图像进行分析所获得分析结果不准确的问题。具体的,本实施例可以实时的从摄像头捕获的用户跑步视频中以帧为单位连续截取设定帧数的图像,并记为人体下半身图像。
69.或者,本实施例还可以实时的以设定时间间隔从用户跑步视频中截取设定帧数的人体下半身图像;同样的,还可以是摄像头已捕获的离线的用户跑步视频,由此在该离线的
用户跑步视频中连续或者以设定时间间隔的获取设定帧数的人体下半身图像。
70.s102、根据从各所述人体下半身图像中确定的骨骼关键点,构建关键点坐标矩阵。
71.在本实施例中,所述骨骼关键点具体可理解为能够表征人体骨骼关节部位的关键点。本步骤可以采用预先训练好的骨骼点提取网络模型来从人体下半身图像中提取所包含的骨骼关键点。示例性的,本步骤可将全部的人体下半身图像一同输入骨骼点提取网络模型,之后可获得所有人体下半身图像分别对应的包含各骨骼关键点的关键点热力图,最终可以从各关键点热力图中获取到其所包含的骨骼关键点坐标。
72.另外,本步骤也可以首先对一张人体下半身图像进行处理,将其输入骨骼点提取网络模型,并在获得关键点热力图后直接确定出所包含的骨骼关键点坐标,之后在顺序依次对余下的各张人体下半身图像进行处理,直至所有的人体下半身图像均对应存在所包含的各骨骼关键点坐标。
73.在本实施例中,本步骤可以在确定出各人体下半身图像对应的骨骼关键点坐标后,按照一定的顺序汇总全部的骨骼关键点坐标,由此形成包含全部骨骼关键点坐标的关键点坐标矩阵。示例性的,本步骤在形成关键点坐标矩阵时,所依照的顺序可以是将同一张人体下半身图像中不同的骨骼关键点坐标进行汇总,构成矩阵中同一行的元素值;同时,可以限定矩阵中的每一列的元素值均可看作表征同一身体部位的骨骼关键点在不同人体下半身图像中所具备的坐标值。
74.s103、根据所述关键点坐标矩阵,确定人体下半身中各骨骼关键点对应的语义特征信息。
75.在本实施例中,通过上述s102,相当于获得了由多张人体下半身图像所包含人体骨骼的关键点构成的融合矩阵,即关键点坐标矩阵。可以理解的是,一张人体下半身图像包含的所有骨骼关键点中,至少包含了表征人体下半身所具备髋关节部位的髋部骨骼关键点,包含了表征膝盖关节部位的膝盖骨骼关键点,还包含了表征整个脚部的脚踝及脚趾骨骼关键点。
76.示例性的,图1a给出了本实施例一所提供用户跑步姿态分析方法中所提供骨骼关键点的实例展示图。如图1a所示,可以通过12个骨骼关键点来表征人体下半身的骨骼轮廓。具体的,标记为0和1的骨骼关键点分别表征右髋部和左髋部,标记为2和3的骨骼关键点分别表征右膝盖关节和左膝盖关节,标记为4和5的骨骼关键点分别表征右脚踝和左脚踝,标记为6和7的骨骼关键点分别表征右大脚趾和左大脚趾,标记为8和9的骨骼关键点分别表征右小脚趾和左小脚趾,标记为10和11的骨骼关键点分别表征右脚跟和左脚跟。
77.在本实施例中,可以将关键点坐标矩阵作为输入数据采用一个特征提取网络模型来获得各骨骼关键点的语义特征信息。然而,需要说明的是,在用户跑步过程中,并非所有的骨骼关键点都存在关联关系,例如,髋部骨骼关键点与脚部的脚趾骨骼关键点并不存在紧密联系。
78.在上述基础下,本实施例在基于关键点坐标矩阵确定各骨骼关键点的语义特征信息时,可以先考虑将联系比较紧密的骨骼关键点进行汇总,然后基于汇总后的骨骼关键点子集从关键点坐标矩阵中提取出相应的关键点坐标子矩阵,最终再基于形成的每个关键点坐标子矩阵,分别确定各骨骼关键点的语义特征信息。
79.其中,对于联系紧密的骨骼关键点汇总,本实施例可以考虑按照人体下半身中各
身体部位在用户跑步时的关联性来确定。示例性的,髋部骨骼关键点、膝盖骨骼关键点以及脚踝骨骼关键点可一同表征用户跑步时膝盖所处的状态,由此可认为上述几个骨骼关键点存在紧密联系。
80.本实施例可以在划分形成多个关键点坐标子矩阵后,分别将关键点坐标子矩阵与训练好的特征提取网络模型相结合,之后相对每个关键点坐标子矩阵中所包含的骨骼关键点,获得相应的语义特征信息。
81.s104、通过对各所述语义特征信息的分析,确定用户跑步时所关联身体部位的跑步姿态。
82.在本实施例中,相对于s103中语义特征信息获取的过程,本实施例可认为相对于人体下半身包括的每个骨骼关键点,分别存在相应的语义特征信息,语义特征信息可以采用语义特征向量的形式表示,每个语义特征信息中包括了所对应骨骼关键点在用户跑步时所关联身体部位所呈现的状态。
83.可以理解的是,在进行用户跑步姿态的分析时,可以将对用户跑步姿态的确定转化为对用户跑步中所关联身体部位的姿态确定,而用户跑步时所关联身体部位主要为左/右膝盖以及左/右脚踝,且本实施例中存在表征左/右膝盖的骨骼关键点集合(除左/右膝盖骨骼关键点外,还有与之紧密连接的其他骨骼关键点)以及左/右脚踝的骨骼关键点集合(除左/右脚踝关键点外,还有与之紧密连接的其他骨骼关键点)。
84.在上述基础上,本实施例可以将上述表征左/右膝盖的骨骼关键点集合所对应的语义特征信息进行汇总,并对汇总后的语义特征信息进行姿态分类处理,以此来确定出左/右膝盖当前所呈现的跑步姿态;同样的,本实施例还可以将左/右脚踝的骨骼关键点集合所对应的语义特征信息进行汇总,并对汇总后的语义特征信息进行姿态分类处理,以此来确定出左/右脚踝当前所呈现的跑步姿态。其中,姿态分类处理可以采用预先训练好的姿态分类器来实现,所呈现的姿态分类结果可以包括正常姿态、外翻姿态以及内扣姿态。
85.示例性的,为更好理解本实施例所提供用户跑步姿态分析方法的具体实现,图1b给出了本技术实施例一所提供用户跑步姿态分析方法的示例流程图。如图1b所示,首先可以从摄像头11进行捕获操作的视频流中获得到所提取的设定帧数的人体下半身图像12,之后,可以获得到对每张人体下半身图像进行骨骼点提取后的所有骨骼关键点13,然后,可以将基于所有骨骼关键点通过语义特征以及分类分析操作,获得用户跑步时所关联身体部位的姿态结果14。
86.本发明实施例一提供的一种用户跑步姿态分析方法,采用了视频流中的多帧人体下半身图像作为姿态分析的输入,由此保证了相对用户动态跑步过程中更为鲁棒的姿态分析结果,同时,姿态分析实现中对多帧人体下半身图像进行的骨骼关键点检测,也有效降低了关键点预测错误的概率,提高了姿态分析结果的准确率和有效性。
87.实施例二
88.图2为本技术实施例二提供的一种用户跑步姿态分析方法的流程示意图,本实施例以上述实施例为基础,在本实施例中,可以将根据从各所述人体下半身图像中确定的骨骼关键点,构建关键点坐标矩阵具体表述为针对各所述人体下半身图像,将所述人体下半身图像作为输入数据,输入骨骼点提取网络模型,获得输出的骨骼关键点热力图;对所述骨骼关键点热力图通过峰值计算方法进行解码处理,获得所述人体下半身图像所对应设定个
数的骨骼关键点坐标;汇总各所述人体下半身图像的骨骼关键点坐标,形成以骨骼关键点坐标为元素,以所述设定帧数为行数、所述设定个数为列数的关键点坐标矩阵。
89.同时,本实施例还可以将根据所述关键点坐标矩阵,确定人体下半身中各骨骼关键点对应的语义特征信息具体表述为:对所述关键点坐标矩阵按照确定的关键点关联关系进行空间划分,获得所确定矩阵个数的关键点坐标子矩阵;针对每个关键点坐标子矩阵,将所述关键点坐标子矩阵作为输入数据,输入至相应的神经网络模型,获得所述关键点坐标子矩阵所包括各关联骨骼点对应的语义特征向量,并记为语义特征信息。
90.此外,本实施例也可以将通过对各所述语义特征信息的分析,确定用户跑步时所关联身体部位的跑步姿态具体表述为:针对每个关键点坐标子矩阵,将相应的语义特征信息输入至预先训练的姿态分类器,获得所述关键点坐标子矩阵所关联身体部位相对各跑步姿态的匹配得分值;将最高匹配得分值对应的跑步姿态确定为相应身体部位的当前跑步姿态;其中,所述跑步姿态包括正常跑步、外翻跑步以及内扣跑步。
91.如图2所示,本技术实施例二提供的一种用户跑步姿态分析方法,具体包括如下操作:
92.s201、从摄像头捕获的用户跑步视频中提取设定帧数的人体下半身图像。
93.示例性的,本步骤可以通过设置在跑步机立柱上的摄像头来实时捕获视频流并从中提取设定帧数的人体下半身图像,各人体下半身图像中包括了用户跑步时下半身的身体部位,如髋部、膝盖以及脚部等。
94.本实施例下述s202至s204给出了关键点坐标矩阵的具体构建过程。
95.s202、针对各所述人体下半身图像,将所述人体下半身图像作为输入数据,输入骨骼点提取网络模型,获得输出的骨骼关键点热力图。
96.在本实施例中,对每个人体下半身图像的骨骼点提取操作实现过程是一样的,首先可以通过本步骤采用骨骼点提取网络模型,获得与各人体下半身图像对应的骨骼关键点热力图。所述骨骼关键点热力图包含了表征人体下半身中各身体部位的骨骼关键点。
97.示例性的,通过骨骼点提取网络模型获得骨骼关键点热力图的过程可表述为:识别人体下半身图像中所有人的骨骼关键点,之后通过对各骨骼关键点进行匹配连接,并通过给定的匹配度范围将处于该范围内的骨骼关键点看作属于同一人的骨骼关键点并分配到同一组中,最终输出基于同一组的骨骼关键点所构成的关键点坐标热力图。在该过程中,所使用的骨骼点提取网络模型采用了1*1,3*3,以及3*3三个卷积层构成的卷积级联。该骨骼点提取网络模型具备计算量小,速度快,效率高的特点。
98.s203、对所述骨骼关键点热力图通过峰值计算方法进行解码处理,获得所述人体下半身图像所对应设定个数的骨骼关键点坐标。
99.可以知道的是,获取的骨骼关键点热力图并不能直接获得骨骼关键点的坐标信息,还需要通过本步骤对骨骼关键点热力图进行解码,获得骨骼关键点坐标。且由于人体身体部位所对应的骨骼关键点的数目基本限定,本步骤中每张人体下半身图像可以获得到设定个数的骨骼关键点坐标,每个骨骼关键点坐标均为二维坐标,该设定个数可优选为12。
100.s204、汇总各所述人体下半身图像的骨骼关键点坐标,形成以骨骼关键点坐标为元素,以所述设定帧数为行数、所述设定个数为列数的关键点坐标矩阵。
101.在本实施例中,本步骤汇总骨骼关键点坐标形成关键帧坐标矩阵所采用的排序方
式为将单张人体下半身图像所对应的骨骼关键点坐标看作一个元素行,每个元素为该人体下半身图像中的一个骨骼关键点坐标。假设设定帧数为n,设定个数为v,骨骼关键点坐标维度为c,则所形成的关键点坐标矩阵的大小可以表示为:n
×v×
c。
102.本实施例下述s205和s206给出了语义特征信息确定的实现操作。
103.s205、对所述关键点坐标矩阵按照确定的关键点关联关系进行空间划分,获得所确定矩阵个数的关键点坐标子矩阵。
104.在本实施例中,关键点坐标矩阵中包括了设定帧数人体下半身图像中分别包括的骨骼关键点的坐标信息。本实施例考虑到表征用户跑步时所关联身体部位采用的骨骼关键点,使得不同骨骼关键点之间的紧密联系程度也存在不同,如果直接对所获得的关键点坐标矩阵进行跑步姿态分析,来获得各骨骼关键点的语义特征信息,会影响跑步姿态分析结果的准确性。
105.由此,本实施例首先通过本步骤对关键点坐标矩阵进行划分,将关键点关联关系紧密的骨骼关键点划分在一起,形成一定数量的关键点坐标子矩阵。其中,所述关键点关联关系可以通过用户跑步时所涉及身体部位关联的骨骼关键点来确定。
106.示例性的,对于膝盖这个身体部位而言,其在用户跑步时,所关联的骨骼关键点包括了表征膝盖的膝盖骨骼关键点,还包括了表征髋部的髋部骨骼关键点以及表征脚踝的脚踝骨骼关键点,由此可确定膝盖骨骼关键点、髋部骨骼关键点以及脚踝骨骼关键点相对膝盖这个身体部位形成了关键点关联关系。本步骤就可以将相对膝盖的这个关键点关联关系看作一个空间划分项,基于该空间划分项从关键点坐标矩阵中提取出相关的关键点坐标子矩阵。
107.需要说明的是,人体下半身主要是双腿,而每条腿上都存在髋部、膝盖以及脚踝等身体部位,本实施例中所提及的身体部位相当于一条腿上的一个部位,如左腿上对应的左膝盖、左脚踝或左髋部等,又如右腿上对应的右膝盖、右脚踝或右髋部等,均分别看作一个身体部位。
108.考虑到用户跑步时关联的身体部位主要包括膝盖和脚踝,相当于存在四个需要确定关键点关联关系的身体部位,也即本步骤可以认为存在四种关键点关联关系,基于每种关键点关联关系均可以从关键点坐标矩阵中提取出相应的关键点坐标子矩阵。且所确定矩阵个数可相当于用户跑步所关联身体部位的个数。
109.图2a给出了本技术实施例二中关键点坐标子矩阵确定的实现流程图,如图2a所示,本实施例二将对所述关键点坐标矩阵按照确定的关键点关联关系进行空间划分,获得所确定矩阵个数的关键点坐标子矩阵具体表述为:
110.s2051、确定用户跑步时人体下半身关联的关联身体部位,将确定出的关联身体部位的个数确定为所述矩阵个数。
111.本步骤实现了关联身体部位以及矩阵个数的确定。可以确定出的关联身体部位优选存在四处,即,左膝盖、右膝盖、左脚踝以及右脚踝,进一步地,本实施例优选确定所述矩阵个数的取值为4。
112.s2052、确定构成各所述关联身体部位的关联骨骼点集,其中,所述关联骨骼点集中包含相对所述关联身体部位具备关键点关联关系的所有关联骨骼点。
113.示例性的,在关联身体部位为右脚踝时,相对该右脚踝具备关键点关联关系的骨
骼关键点可以是右脚踝骨骼点、右大脚趾骨骼点、右小脚趾骨骼点以及右脚跟骨骼点。因此,相对右脚踝的关联骨骼点集中包含了作为关联骨骼点的右脚踝骨骼点、右大脚趾骨骼点、右小脚趾骨骼点以及右脚跟骨骼点。
114.示例性的,图2b给出了本技术实施例二所提供用户跑步姿态分析方法中各关联身体部位所包括关联骨骼点集的示例说明图。如图2b所示,第一区域21中包括左膝盖及联动部位(如左髋部和左脚踝)构成的关联身体部位;第二区域22中包括右膝盖及联动部位(如右髋部和右脚踝)构成的关联身体部位;第三区域23中包括左脚踝及联动部位(若左脚跟、左大脚趾及左小脚趾)构成的关联身体部位;第四区域24中包括右脚踝及联动部位(若右脚跟、右大脚趾及右小脚趾)构成的关联身体部位
115.s2053、针对每个关联骨骼点集,从所述关键点坐标矩阵中提取所述关联骨骼点集内各关联骨骼点对应的列信息,并基于各所述列信息形成相应的关键点坐标子矩阵。
116.通过上述s2052可以获取到相对每个关联身体部位的关联骨骼点集。本步骤给出了关键点坐标子矩阵的具体实现,其主要通过关联骨骼点集中包括的各关联骨骼点,从关键点坐标矩阵中提取形成。其中,通过上述描述可以知道关键点坐标矩阵中的行信息为一张人体下半身图像所包含各骨骼关键点的坐标信息,列信息则为具备同一属性的骨骼关键点在不同人体下半身图像中所具备的坐标信息。
117.在本实施例中,相对于一个关联骨骼点,本步骤可以查找到其在关键点坐标矩阵中的列下标,并提取具备该列下标的列信息。相对于关联骨骼点集中的每个关联骨骼点,均可以通过本步骤提取到相应的列信息,基于这些列信息,可以按照列下标顺序排列形成相应的关键点坐标子矩阵。由此实现了关键点坐标矩阵的空间划分。
118.s2054、获得所述矩阵个数的关键点坐标子矩阵。
119.在本实施例中,考虑到用户跑步时具备的关联身体部位至少包括了左膝盖、右膝盖、左脚踝以及右脚踝,因此,在对关键点坐标矩阵进行上述的空间划分后,所形成的所述矩阵个数的关键点坐标子矩阵可分别记为:表征左膝盖的第一关键点坐标子矩阵、表征右膝盖的第二关键点坐标子矩阵、表征左脚踝的第三关键点坐标子矩阵以及表征右脚踝的第四关键点坐标子矩阵。
120.s206、针对每个关键点坐标子矩阵,将所述关键点坐标子矩阵作为输入数据,输入至相应的神经网络模型,获得所述关键点坐标子矩阵所包括各关联骨骼点对应的语义特征向量,并记为语义特征信息。
121.在本实施例中,对于每个关键点坐标子矩阵而言,分别存在一个进行语义特征提取处理的神经网络模型,本步骤可以将每个关键点坐标子矩阵分别看作输入数据输入至相应的神经网络模型,通过相应神经网络模型的处理,相对关键点坐标子矩阵中的每个关联骨骼点,都可以获得到一个语义特征向量。本实施例将相对一个关键点坐标子矩阵所确定各语义特征向量的集合,看作该关键点坐标子矩阵对应的语义特征信息,其中,不同关键点坐标子矩阵对应的神经网络模型在网络结构上可能存在不同。
122.在本实施例中,可以优选自适应图卷积网络模型为各所述关键点坐标子矩阵对应的神经网络模型;通过该自适应图卷积网络模型进行语义特征提取的关键在于:该网络模型所面向的对象是每个关联骨骼点,对每个关联骨骼点进行语义特征提取的过程需要依赖该关联骨骼点与关键点坐标子矩阵中其他关联骨骼点的关系来实现。
123.然而,任意两个关联骨骼点之间的关系可以通过一个行列大小确定的邻接矩阵来表示,即,所述自适应图卷积网络模型的运算中采用邻接矩阵来表征各个关联骨骼点之间的关系,并通过对各邻接矩阵中元素值的确定,来确定各关联骨骼点的语义特征向量。
124.在本实施例中,对于一个行列大小确定的的邻接矩阵,需要确定出所包括的各元素值,所采用的确定方式可以从不同维度来考虑,其中,所考虑的维度可以有:人体骨骼的物理连接关系、用于自适应图卷积神经网络模型训练的样本数据、以及作为自适应图卷积神经网络模型的当前输入数据。
125.具体的,所述邻接矩阵中的元素值至少可优选通过下述三种方式表征并确定:
126.1)基于人体骨骼的物理连接来表征元素值。
127.示例性的,如关联骨骼点i和关联骨骼点j存在物理连接,则两者所对应的元素值可确定为1,若二者不存在物理连接,则元素值可确定为0。
128.2)基于训练集中样本数据进行训练和学习后确定的节点关联强度来表征元素值。
129.需要说明的是,该种方式主要考虑邻接矩阵中的元素值在对自适应图卷积神经网络的训练过程中时可学习的,即使两个关联骨骼点在物理上不存在连接,只要两者存在关联,就可将二者所存在的关联用关联强度表示,且可将确定出的关联强度作为元素值。由于该种方式是可学习的,邻接矩阵中的元素值与训练集的样本数据以及整个学习过程有关。
130.3)基于输入数据且不依赖于训练集数据的关键点特征来表征元素值。
131.可以知道的是,该种方式下邻接矩阵中的元素值也无需考虑两个关联骨骼点在物理上是否存在连接。其主要关联骨骼点在图卷积神经网络迭代处理中所输入的关联骨骼点的特征数据来确定,该种方式元素值的确定主要依赖于一次迭代下所确定的关键点特征。
132.在本实施例中,每个关键点坐标子矩阵通过相应的自适应图卷积网络模型获得关键点坐标子矩阵中所包含各关联骨骼关键点的语义特征信息的实现中,考虑采用上述三种方式分别确定表征任意两个关联骨骼关键点关系的邻接矩阵,并将采用上述三种方式确定的邻接矩阵进行加权处理;之后采用加权后形成的一个邻接矩阵来表征任意两个关联骨骼关键点关系,最终根据每两个关联骨骼关键点具备的邻接矩阵,对每个关联骨骼关键点的语义特征进行完善,以使所提取的语义特征向量有效包含了跑步姿态所需的信息。
133.同时在本实施例中,考虑到相对不同关联身体部位的关键点坐标子矩阵所包含的关联骨骼点的个数不同,在进行自适应图卷积网络模型设定时,可以设定相应的自适应图卷积网络模型中运算时所采用邻接矩阵的大小存在不同。
134.优选的,与所述第一关键点坐标子矩阵对应的第一自适应图卷积网络模型,以及与所述第二关键点坐标子矩阵对应的第二自适应图卷积网络模型,其在运算中所采用邻接矩阵的行列大小均可设定为3*3;同时,与所述第三关键点坐标子矩阵对应的第三自适应图卷积网络模型,以及与所述第四关键点坐标子矩阵对应的第四自适应图卷积网络模型,其在运算中所采用邻接矩阵的行列大小均可设定为5*5。
135.本实施例下述s207和s208相当于用户跑步时所关联身体部位的跑步姿态分析实现步骤。
136.s207、针对每个关键点坐标子矩阵,将相应的语义特征信息输入至预先训练的姿态分类器,获得所述关键点坐标子矩阵所关联身体部位相对各跑步姿态的匹配得分值。
137.在本实施例中,所述姿态分类器中至少包括了:级联全连接层、激活层、批量归一
化层以及逻辑回归层,其中,语义特征信息中包含了该关键点坐标子矩阵通过上述步骤确定出的各关联骨骼点的语义特征向量。
138.基于语义特征的分析,可以确定出该关键点坐标子矩阵所关联身体部位相对各跑步姿态的匹配得分值,其中,所述跑步姿态可以包括正常跑步、外翻跑步以及内扣跑步。
139.s208、将最高匹配得分值对应的跑步姿态确定为相应身体部位的当前跑步姿态。
140.在上述实施例的基础上,本步骤可以筛选出匹配得分值最高的跑步姿态来作为关键点坐标子矩阵所关联身体部位的目标跑步姿态。
141.本技术实施例二提供的一种用户跑步姿态分析方法,具体化了关键点坐标矩阵的构架过程,还具体化了语义特征信息的确定过程以及跑步姿态的分析过程,本实施例所提供的方法,不同于现有方法基于大振图像提取的骨骼点通过角度阈值判断实现的姿态分析,而是具体采用了将从多帧中获得的骨骼关键点作为输入数据实现跑步姿态的动态分析的方法,有效提高了跑步姿态分析功能的鲁棒性以及准确性;同时,不同于现有方法采用人体所有骨骼关键点提取出的特征信息来确定跑步姿态分类结果,而是具体将获得的骨骼点形成一个大的关键点坐标矩阵并通过身体部位关联的思想划分成多个子矩阵在分别进行语义特征提取,有效减少了跑步姿态分析中其他无效骨骼点对姿态分类结果的不良影响,增强了跑步时所关联身体部位内部关联的灵活性,进而提高了跑步分类结果的准确性。
142.实施例三
143.图3为本技术实施例三提供的一种用户跑步姿态分析装置的结构框图,该装置适用于对用户在跑步机上跑步时的姿态进行分析的情况。该装置可以由硬件和/或软件实现,并一般集成在跑步机中。如图3所示,该装置包括:图像提取模块31、矩阵确定模块32、特征确定模块33以及姿态确定模块34。
144.图像提取模块31,用于从摄像头捕获的用户跑步视频中提取设定帧数的人体下半身图像;
145.矩阵确定模块32,用于根据从各所述人体下半身图像中确定的骨骼关键点,构建关键点坐标矩阵;
146.特征确定模块33,用于根据所述关键点坐标矩阵,确定人体下半身中各骨骼关键点对应的语义特征信息;
147.姿态确定模块34,用于通过对各所述语义特征信息的分析,确定用户跑步时所关联身体部位的跑步姿态。
148.本实施例三提供的一种用户跑步姿态分析装置,采用了视频流中的多帧人体下半身图像作为姿态分析的输入,由此保证了相对用户动态跑步过程中更为鲁棒的姿态分析结果,同时,姿态分析实现中对多帧人体下半身图像进行的骨骼关键点检测,也有效降低了关键点预测错误的概率,提高了姿态分析结果的准确率和有效性。
149.进一步地,矩阵确定模块32具体可以用于:
150.针对各所述人体下半身图像,将所述人体下半身图像作为输入数据,输入骨骼点提取网络模型,获得输出的骨骼关键点热力图;
151.对所述骨骼关键点热力图通过峰值计算方法进行解码处理,获得所述人体下半身图像所对应设定个数的骨骼关键点坐标;
152.汇总各所述人体下半身图像的骨骼关键点坐标,形成以骨骼关键点坐标为元素,
以所述设定帧数为行数、所述设定个数为列数的关键点坐标矩阵。
153.进一步地,特征确定模块33可以包括:
154.子矩阵确定单元,用于对所述关键点坐标矩阵按照确定的关键点关联关系进行空间划分,获得所确定矩阵个数的关键点坐标子矩阵;
155.信息确定单元,用于针对每个关键点坐标子矩阵,将所述关键点坐标子矩阵作为输入数据,输入至相应的神经网络模型,获得所述关键点坐标子矩阵所包括各关联骨骼点对应的语义特征向量,并记为语义特征信息。
156.进一步地,子矩阵确定单元具体可用于:
157.确定用户跑步时人体下半身关联的关联身体部位,将确定出的关联身体部位的个数确定为所述矩阵个数;
158.确定构成各所述关联身体部位的关联骨骼点集,其中,所述关联骨骼点集中包含相对所述关联身体部位具备关键点关联关系的所有关联骨骼点;
159.针对每个关联骨骼点集,从所述关键点坐标矩阵中提取所述关联骨骼点集内各关联骨骼点对应的列信息,并基于各所述列信息形成相应的关键点坐标子矩阵;
160.获得所述矩阵个数的关键点坐标子矩阵。
161.进一步地,所述矩阵个数的取值为4;
162.所述矩阵个数的关键点坐标子矩阵分别为:表征左膝盖的第一关键点坐标子矩阵、表征右膝盖的第二关键点坐标子矩阵、表征左脚踝的第三关键点坐标子矩阵以及表征右脚踝的第四关键点坐标子矩阵。
163.在上述优化的基础上,各所述关键点坐标子矩阵对应的神经网络模型为自适应图卷积网络模型;
164.所述自适应图卷积网络模型的运算中采用邻接矩阵来表征各个关联骨骼点之间的关系,并通过对各邻接矩阵中元素值的确定,来确定各关联骨骼点的语义特征向量;
165.所述邻接矩阵中的元素值至少通过下述三种方式表征并确定:
166.基于人体骨骼的物理连接来表征元素值;
167.基于训练集中样本数据进行训练和学习后确定的节点关联强度来表征元素值;
168.基于输入所述自适应图卷积网络模型的当前输入数据确定出的关键点特征来表征元素值。
169.进一步地,分别与所述第一关键点坐标子矩阵及第二关键点坐标子矩阵对应的第一自适应图卷积网络模型以及第二自适应图卷积网络模型,运算中所采用的邻接矩阵大小为3*3;
170.分别与所述第三关键点坐标子矩阵及第四关键点坐标子矩阵对应的第三自适应图卷积网络模型以及第四自适应图卷积网络模型,运算中所采用的邻接矩阵大小为5*5。
171.进一步地,姿态确定模块34具体可以用于:
172.针对每个关键点坐标子矩阵,将相应的语义特征信息输入至预先训练的姿态分类器,获得所述关键点坐标子矩阵所关联身体部位相对各跑步姿态的匹配得分值;
173.将最高匹配得分值对应的跑步姿态确定为相应身体部位的当前跑步姿态;
174.其中,所述跑步姿态包括正常跑步、外翻跑步以及内扣跑步。
175.在上述优化的基础上,所述姿态分类器中至少包括:级联全连接层、激活层、批量
归一化层以及逻辑回归层。
176.实施例四
177.图4为本技术实施例四提供的一种跑步机的结构示意图。该跑步机包括:底座41、立柱42、设置于立柱42顶端的智能交互装置43,还包括存储器、一个或多个控制器,以及设置于所述立柱指定位置的摄像机44。该跑步机中控制器的数量可以是一个或者多个,同时,该跑步机中存储器的数量可以是一个或者多个,本实施例分别以一个存储器和一个控制器为例,但本实施例的图4中未示出存储器和控制器的具体位置。
178.具体的,该跑步机的主体部分在于底座41、立柱42以及智能交互装置43,可优选认为智能交互装置43上存在显示屏、输入模块以及输出模块,且控制器和存储器也可设置在智能交互装置43中,也可以设置在底座内,其中,跑步机所包括的控制器、存储器、显示屏、输入模块以及输出模块可以通过总线或者其他方式连接,图4中以通过总线连接为例。另外,摄像机44设置在立柱上,用于捕获用户跑步时的图像,且摄像机44也可以通过总线或者其他连接方式与控制器及存储器连接。
179.存储器作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明任意实施例所述的跑步机对应的程序指令/模块(例如,用户跑步姿态分析装置中的图像提取模块31、矩阵确定模块32、特征确定模块33以及姿态确定模块34)。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据设备的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器可进一步包括相对于控制器远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
180.显示屏可以为具有触摸功能的显示屏,其可以是电容屏、电磁屏或者红外屏。一般而言,显示屏用于根据控制器的指示显示数据,还用于接收作用于显示屏的触摸操作,并将相应的信号发送至控制器或其他装置。
181.输入模块可用于接收输入的数字或者字符信息,以及产生与展示设备的用户设置以及功能控制有关的键信号输入,还可以是用于获取图像的摄像头以及获取音频数据的拾音设备。输出模块可以包括扬声器等音频设备。需要说明的是,输入模块和输出模块的具体组成可以根据实际情况设定。
182.控制器通过运行存储在存储器中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的用户跑步姿态分析方法。
183.上述提供的跑步机可用于执行上述任意实施例提供的用户跑步姿态分析方法,具备相应的功能和有益效果。
184.实施例五
185.本发明实施例五还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机控制器执行时用于执行一种用户跑步姿态分析方法,包括:
186.从摄像头捕获的用户跑步视频中提取设定帧数的人体下半身图像;
187.根据从各所述人体下半身图像中确定的骨骼关键点,构建关键点坐标矩阵;
188.根据所述关键点坐标矩阵,确定人体下半身中各骨骼关键点对应的语义特征信
息;
189.通过对各所述语义特征信息的分析,确定用户跑步时所关联身体部位的跑步姿态。
190.当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的用户跑步姿态分析方法操作,还可以执行本发明任意实施例所提供的用户跑步姿态分析方法中的相关操作,且具备相应的功能和有益效果。
191.通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本技术可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、闪存(flash)、硬盘或光盘等,包括若干指令用以使得一台跑步机(可以是机器人,个人计算机,服务器,或者网络设备等)执行本技术任意实施例所述的用户跑步姿态分析方法。值得注意的是,上述用户跑步姿态分析装置中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本技术的保护范围。
192.应当理解,本技术的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
193.注意,上述仅为本技术的较佳实施例及所运用技术原理。本领域技术人员会理解,本技术不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本技术的保护范围。因此,虽然通过以上实施例对本技术进行了较为详细的说明,但是本技术不仅仅限于以上实施例,在不脱离本技术构思的情况下,还可以包括更多其他等效实施例,而本技术的范围由所附的权利要求范围决定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1