一种基于目标检测和人体姿态估计的运动评估方法及装置与流程

未命名 08-15 阅读:123 评论:0


1.本发明涉及计算机视觉技术领域,特别是涉及一种基于目标检测和人体姿态估计的运动评估方法、装置、计算机设备及存储介质。


背景技术:

2.中学生体育中考是对学生体育素质的全面评估,其中考试项目及辅助训练项目包括俯卧撑、仰卧起坐、立定跳远、引体向上等多个项目。对于学生来说,合理的训练和正确的技术动作对于取得好成绩至关重要。
3.传统的中学生体育中考状态评估方法主要依靠人工测量和判定,如裁判员手动计时、手动计数、手动判断动作是否规范等。这种方法需要裁判员进行人工操作,不仅费时费力,而且评估结果存在主观性和误差性,对于准确评估学生的体育水平不够理想。
4.近年来,随着计算机视觉技术的发展,基于目标检测和分类的中学生体育中考状态评估方法逐渐成为研究热点。这种方法利用计算机视觉技术对学生的运动状态进行识别和监测,实现对学生运动状态的实时评估。然而,目前的方法存在着一些问题,如准确率不高、分类效果不稳定等。
5.因此,亟需基于计算机视觉提出一种新的的体育项目状态评估方案,以解决上述问题。


技术实现要素:

6.为了解决现有技术的问题,本发明提供了一种基于目标检测和人体姿态估计的运动评估方法、装置、计算机设备以及存储介质,以解决现有技术中的利用计算机视觉技术对运动状态进行识别和监测的方法存在的准确率不高、分类效果不稳定等问题。
7.为解决上述一个或多个技术问题,本技术采用的技术方案是:
8.第一方面,提供了一种基于目标检测和人体姿态估计的运动评估方法,所述方法包括:
9.获取待评估对象的运动视频,提取所述运动视频的关键帧;
10.基于人体姿态估计神经网络对所述关键帧进行人体姿态估计,得到所述待评估对象在进行运动时的第一关键点的归一化的第一位置信息;
11.将所述第一位置信息还原为所述关键帧上的第一坐标信息;
12.从所述第一关键点中选取部分关键点构建多个第一关键三角形,根据所述第一坐标信息计算所述第一关键三角形的第一关键角度;
13.对所述第一关键角度进行指数平滑处理,获取第一平滑结果;
14.将所述第一平滑结果输入预先训练得到的目标检测模型中,获取检测结果,所述检测结果包括运动状态和错误姿势;
15.根据所述检测结果生成所述待评估对象的运动评估结果。
16.在一个具体的实施例中,每一所述第一关键三角形由三个所述第一关键点组成,
且每一所述第一关键三角形对应于所述待评估对象的预设部位。
17.在一个具体的实施例中,所述运动状态至少包括不是该运动、起始运动状态、过程运动状态和最终运动状态,所述错误姿势至少包括一个。
18.在一个具体的实施例中,所述方法还包括:
19.初始化视频流姿态估计参数,设置标准动作个数和非标准动作个数均为0;
20.创建运动状态序列以及错误姿势集合,所述运动状态序列初始为空数组,所述错误姿势集合中各元素对应初始值为0,所述错误姿态集合中的元素分别对应其中一个错误姿势;
21.所述根据所述检测结果生成所述待评估对象的运动评估结果包括:
22.根据所述检测结果中的所述运动状态更新所述运动状态序列以及根据所述检测结果中的所述错误姿势更新所述错误姿态集合中各元素对应的值。
23.在一个具体的实施例中,所述根据所述检测结果中的所述运动状态更新所述运动状态序列以及根据所述检测结果中的所述错误姿势更新所述错误姿态集合中各元素对应的值包括:
24.在所述检测结果中的所述运动状态为起始运动状态时,若所述运动状态序列的长度为3且所述错误姿态集合中各元素对应的值均为0,则标准动作个数加1,若所述运动状态序列为只包括过程运动状态,则非标准动作个数加1并将所述错误姿态集合中相关元素对应的值设为1,若所述运动状态序列的长度为3且所述错误姿态集合中各元素对应的值不均为0,则非标准动作个数加1;
25.在所述检测结果中的所述运动状态为过程运动状态,且所述运动状态序列为空数组或包括过程运动状态和最终运动状态时,在所述运动状态序列中添加过程运动状态;
26.在所述检测结果中的所述运动状态为最终运动状态,且所述运动状态序列为包括过程运动状态时,在所述运动状态序列中添加最终运动状态。
27.在一个具体的实施例中,所述方法还包括所述目标检测模型的训练过程,包括:
28.获取目标对象的运动图像,并对所述运动图像进行标注得到标签数据;
29.基于人体姿态估计神经网络对所述运动图像进行人体姿态估计,得到所述目标对象在进行运动时的第二关键点的归一化的第二位置信息;
30.将所述第二位置信息还原为所述运动图像上的第二坐标信息;
31.从所述第二关键点中选取部分关键点构建多个第二关键三角形,根据所述第二坐标信息计算所述第二关键三角形的第二关键角度;
32.对所述第二关键角度进行指数平滑处理,获取第二平滑结果;
33.将所述第二平滑结果作为输入,所述标签数据作为输出,对神经网络模型进行训练,得到目标检测模型。
34.在一个具体的实施例中,所述标签数据至少包括所述运动状态和所述错误姿态。
35.第二方面,对应于上述基于目标检测和人体姿态估计的运动评估方法,还提供了一种基于目标检测和人体姿态估计的运动评估装置,所述装置包括:
36.视频提取模块,用于获取待评估对象的运动视频,提取所述运动视频的关键帧;
37.姿态估计模块,用于基于人体姿态估计神经网络对所述关键帧进行人体姿态估计,得到所述待评估对象在进行运动时的第一关键点的归一化的第一位置信息;
38.第一计算模块,用于将所述第一位置信息还原为所述关键帧上的第一坐标信息;
39.第二计算模块,用于从所述第一关键点中选取部分关键点构建多个第一关键三角形,根据所述第一坐标信息计算所述第一关键三角形的第一关键角度;
40.平滑处理模块,用于对所述第一关键角度进行指数平滑处理,获取第一平滑结果;
41.目标检测模块,用于将所述第一平滑结果输入预先训练得到的目标检测模型中,获取检测结果,所述检测结果包括运动状态和错误姿势;
42.运动评估模块,用于根据所述检测结果生成所述待评估对象的运动评估结果。
43.第三方面,还提供了一种计算机设备,包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,当所述计算机程序被所述处理器执行时,实现所述基于目标检测和人体姿态估计的运动评估方法。
44.第四方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被执行时,实现所述基于目标检测和人体姿态估计的运动评估方法。
45.根据本发明提供的具体实施例,本发明公开了以下技术效果:
46.本发明提供的基于目标检测和人体姿态估计的运动评估方法、装置、计算机设备以及存储介质,方法包括获取待评估对象的运动视频,提取所述运动视频的关键帧;基于人体姿态估计神经网络对所述关键帧进行人体姿态估计,得到所述待评估对象在进行运动时的第一关键点的归一化的第一位置信息;将所述第一位置信息还原为所述关键帧上的第一坐标信息;从所述第一关键点中选取部分关键点构建多个第一关键三角形,并计算所述第一关键三角形的第一关键角度;对所述第一关键角度进行指数平滑处理,获取第一平滑结果;将所述第一平滑结果输入预先训练得到的目标检测模型中,获取检测结果,所述检测结果包括运动状态和错误姿势;根据所述检测结果生成所述待评估对象的运动评估结果。本技术方案可以克服现有技术的不足,提高运动状态评估的准确性和客观性。
附图说明
47.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
48.图1和图2是本技术实施例提供的基于目标检测和人体姿态估计的运动评估方法的流程图:
49.图3是本技术实施例提供的目标检测模型的训练过程的流程图;
50.图4是本技术实施例提供的基于目标检测和人体姿态估计的运动评估装置的结构示意图;
51.图5是本技术实施例提供的计算机设备的架构图。
具体实施方式
52.为使本技术的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本
申请一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
53.如背景技术所述,目前利用计算机视觉技术对学生的运动状态进行识别和监测以实现对学生运动状态的实时评估的方案中,存在着一些问题,如准确率不高、分类效果不稳定等。
54.面对上述需求与缺陷,本技术基于计算机视觉提出了一种新的运动状态评估方法,具体实施时,基于目标检测和人体姿态估计算法对待评估对象(如学生等)的运动状态进行识别和监测,实现对待评估对象的运动状态的实时评估,并且可以克服现有技术的不足,提高状态评估的准确性和客观性。
55.下面将结合附图和各个实施例,对本技术的方案进行详细介绍。
56.实施例一
57.图1和图2是本技术实施例提供的基于目标检测和人体姿态估计的运动评估方法的流程图,参照图1和图2所示,该方法主要包括如下步骤:
58.s110:获取待评估对象的运动视频,提取所述运动视频的关键帧。
59.本技术方案主要适用于运动状态评估,其中,待评估对象指需要评估运动状态的对象,例如,在应用于体育考试场景时,待评估对象主要包括参加考试的学生等。具体实施时,首先获取待评估对象的运动视频,对该运动视频进行帧处理,提取出运动视频中的关键帧。
60.s120:基于人体姿态估计神经网络对所述关键帧进行人体姿态估计,得到所述待评估对象在进行运动时的第一关键点的归一化的第一位置信息。
61.具体地,本技术实施例中采用的人体姿态估计神经网络包括但不限于blazepose卷积神经网络。作为一种较优的示例,本技术实施例中的第一关键点可以为待评估对象的主要关节点,优选地,可以选取待评估对象的32个关节点作为第一关键点。基于blazepose卷积神经网络对提出的关键帧进行人体姿态估计,得到待评估对象在进行运动时各个主要关节点(即第一关键点)的归一化的第一位置信息,记为j(x,y,z,v),其中x和y表示为图像关节点归一化的坐标位置,z表示以胯部为原点的关节点深度,v表示关节点可见的可能性。
62.s130:将所述第一位置信息还原为所述关键帧上的第一坐标信息。
63.具体地,将上述各主要关节点的第一位置信息还原为具体图像(即关键帧)上的第一坐标信息,其中,图像上的关节点的第一坐标信息的x坐标表示为:
64.x=x
×
image_width
65.y坐标表示为:
66.y=y
×
image_height
67.其中image_width为原图像宽度,image_height为原图像高度。
68.s140:从所述第一关键点中选取部分关键点构建多个第一关键三角形,根据所述第一坐标信息计算所述第一关键三角形的第一关键角度。
69.具体地,本技术实施例中,第一关键三角形可以由3个关键点组成的三角形,每一关键点对应于三角形的其中一个顶点。其中每个三角形对应于人体的一个主要部位(如头部、手臂、腿等)。通过组合这些关键点,可以准确地表示人体的姿态和动作。
70.作为一种较优的示例,第一关键角度ang1可以使用三角余弦函数进行计算,通过
计算关键三角形之间的角度,可以准确地估计人体的姿态和动作。第一关键角度anga具体公式如下:
[0071][0072]
其中b和c是角度anga相邻的两个边,a是anga相对的边。
[0073]
s150:对所述第一关键角度进行指数平滑处理,获取第一平滑结果。
[0074]
具体地,指数平滑法实际上是一种特殊的加权移动平均法,对第一关键角度进行指数平滑处理,可以减少姿态识别误差带来的影响。指数平滑算法包含两个需要初始化的参数:滑动窗口大小n和平滑参数α。滑动窗口为一个集合,表示为:
[0075]
data_in_window=[ang
cur
,ang
cur-1
,.....ang
cur-n
]
[0076]
指数平均的公式为:
[0077][0078]
其中y为输出平滑结果,α为平滑参数。
[0079]
s160:将所述第一平滑结果输入预先训练得到的目标检测模型中,获取检测结果,所述检测结果包括运动状态和错误姿势。
[0080]
具体地,对选取的第一关键角度平滑过后的输出值y(即第一平滑结果)组成数组进行区域缩放后作为目标检测模型的输入值,模型的输出结果为预测到的运动状态和错误姿势组成的数组。
[0081]
s170:根据所述检测结果生成所述待评估对象的运动评估结果。
[0082]
作为一种较优的实施方式,本技术实施例中,每一所述第一关键三角形由三个所述第一关键点组成,且每一所述第一关键三角形对应于所述待评估对象的预设部位。
[0083]
具体地,预设部位包括但不限于人体的一个主要部位,如头部、手臂、腿等。作为一种较优的示例,本技术实施例中,第一关键三角形的边长可以通过组成其的相邻的两个第一关键点的欧式距离来表示。例如,组成某一第一关键三角形的相邻的两个第一关键点分别为a(xa,ya,za,va)和b(xb,yb,zb,vb),则该关键点a和b对应的边长为关键点a和b之间的欧氏距离,表示为:
[0084][0085]
其中xa,ya是原图像中的a的坐标位置(即a的第一坐标信息),xb,yb是原图像中b的坐标位置(即b的第一坐标信息)。
[0086]
作为一种较优的实施方式,本技术实施例中,所述运动状态至少包括不是该运动、起始运动状态s1、过程运动状态s2和最终运动状态s3,所述错误姿势至少包括一个,如错误姿态1,错误姿态2、错误姿态3等,具体的错误姿态可根据实际运动进行设置,这里不做限制。
[0087]
作为一种较优的实施方式,本技术实施例中,所述方法还包括:
[0088]
初始化视频流姿态估计参数,设置标准动作个数和非标准动作个数均为0;
[0089]
创建运动状态序列以及错误姿势集合,所述运动状态序列初始为空数组,所述错误姿势集合中各元素对应初始值为0,所述错误姿态集合中的元素分别对应其中一个错误姿势;
[0090]
所述根据所述检测结果生成所述待评估对象的运动评估结果包括:
[0091]
根据所述检测结果中的所述运动状态更新所述运动状态序列以及根据所述检测结果中的所述错误姿势更新所述错误姿态集合中各元素对应的值。
[0092]
具体地,在进行评估前,首先初始化视频流姿态估计参数,将标准动作个数和非标准动作个数均设置为o;其次,创建一个运动状态序列和一个错误姿势集合,运动状态序列表示为state_seq,运动状态序列初始为空数组,错误姿势集表示为incorrect_posture为{
″0″
:0,
″1″
:0,
″2″
:0,
″3″
:0},其中”1”、”2”、
″3″
分别对应错误姿态1、错误姿态2和错误姿态3,如果没有,则其对应的数值一直为0,
″0″
代表动作未达标;最后,在通过训练的目标检测模型进行预测,获取到检测结果后,根据检测结果中的运动状态更新运动状态序列、根据检测结果中的错误姿势更新错误姿态集合中各元素对应的值。
[0093]
作为一种较优的实施方式,本技术实施例中,所述根据所述检测结果中的所述运动状态更新所述运动状态序列以及根据所述检测结果中的所述错误姿势更新所述错误姿态集合中各元素对应的值包括:
[0094]
在所述检测结果中的所述运动状态为起始运动状态时,若所述运动状态序列的长度为3且所述错误姿态集合中各元素对应的值均为0,则标准动作个数加1,若所述运动状态序列为只包括过程运动状态,则非标准动作个数加1并将所述错误姿态集合中相关元素对应的值设为1,若所述运动状态序列的长度为3且所述错误姿态集合中各元素对应的值不均为0,则标准动作个数加1;
[0095]
在所述检测结果中的所述运动状态为过程运动状态,且所述运动状态序列为空数组或包括过程运动状态和最终运动状态时,在所述运动状态序列中添加过程运动状态;
[0096]
在所述检测结果中的所述运动状态为最终运动状态,且所述运动状态序列为包括过程运动状态时,在所述运动状态序列中添加最终运动状态。
[0097]
具体地,如果检测结果中的运动状态为起始运动状态s1,此时,若运动状态序列state_seq的长度为3且错误姿态集合incorrect_posture集合中值都为0,则运动标准个数加1;若运动状态序列state_seq=[s2],则非标准动作个数加1,并将错误姿态集合中相关元素对应的值设为1,并在视频中显示错误,表示该错误姿态运动未达标,例如,如果是仰卧起坐则为起身未达标,如果为俯卧撑则为下压未达标;若state_seq的长度为3,且错误姿态集合incorrect posture不为空,则非标准动作个数加1。
[0098]
如果检测结果中的运动状态为过程运动状态s2,且state_seq=[]或state_seq=[s2,s3],在state_seq中添加s2。
[0099]
如果检测结果中的运动状态为最终运动状态s3,且state_seq=[s2],在state_seq中添加s3。
[0100]
作为一种较优的实施方式,本技术实施例中,在完成一次计数判断后,对运动状态序列以及错误姿态集合进行初始化处理,初始化后state_seq为空数组,incorrect_posture={
″0″
:0,
″1″
:0,
″2″
:0,
″3″
:0}。然后再进行视频下一关键帧处理,如果视频结束则输出标准动作个数、非标准动作个数、运动历史等参数,并根据这些参数改进指导运动提
示运动成绩。
[0101]
作为一种较优的实施方式,本技术实施例中,所述方法还包括所述目标检测模型的训练过程,包括:
[0102]
s210:获取目标对象的运动图像,并对所述运动图像进行标注得到标签数据。
[0103]
具体地,对于每个运动图像,要标注其运动状态和错误姿态,标注其运动状态可以用一个one-hot编码来表示,作为一种较优的示例,每项运动有四个运动状态:不是该运动、起始运动状态s1、过程运动态s2、最终运动状态s3。例如,运动图像处于状态s2,则标注为[0,0,1,0],若是有错误姿态1,没有错误姿态2和错误姿态3,则标签为[0,0,1,0,1,0,0]。例如仰卧起坐处于过程运动状态s3,只有一个姿态错误为屈膝未达标图像中未发生错误,则标签为[0,0,0,1,0]。例如俯卧撑处于运动状态s2,有膝盖为伸直和腰部为伸直两个姿态错误且都发生,则标签为[0,0,1,0,1,1]。
[0104]
s220:基于人体姿态估计神经网络对所述运动图像进行人体姿态估计,得到所述目标对象在进行运动时的第二关键点的归一化的第二位置信息。
[0105]
s230:将所述第二位置信息还原为所述运动图像上的第二坐标信息。
[0106]
s240:从所述第二关键点中选取部分关键点构建多个第二关键三角形,根据所述第二坐标信息计算所述第二关键三角形的第二关键角度。
[0107]
s250:对所述第二关键角度进行指数平滑处理,获取第二平滑结果。
[0108]
具体的,步骤s220-s250可参照步骤s120-s150的相关内容,这里不在赘述。
[0109]
s260:将所述第二平滑结果作为输入,所述标签数据作为输出,对神经网络模型进行训练,得到目标检测模型。
[0110]
具体地,对选取的第二关键角度平滑过后的输出值组成数组进行区域缩放后作为神经网络模型的输入值,标注的运动状态和错误姿势组成的数组作为输出值,进行模型训练。其中,选用softmax作为分类器,神经网络的损失函数的值为预测状态分类损失和错误姿态估计损失的和,对超参数进行调整,训练出精确度最高的模型作为本技术的目标检测模型。
[0111]
实施例二
[0112]
对应于上述实施例一,本技术还提供了一种基于目标检测和人体姿态估计的运动评估装置,其中,本实施例中,与上述实施例一相同或相似的内容,可以参考上文介绍,后续不在赘述。参照图4所示,该装置包括:
[0113]
视频提取模块,用于获取待评估对象的运动视频,提取所述运动视频的关键帧;
[0114]
姿态估计模块,用于基于人体姿态估计神经网络对所述关键帧进行人体姿态估计,得到所述待评估对象在进行运动时的第一关键点的归一化的第一位置信息;
[0115]
第一计算模块,用于将所述第一位置信息还原为所述关键帧上的第一坐标信息;
[0116]
第二计算模块,用于从所述第一关键点中选取部分关键点构建多个第一关键三角形,根据所述第一坐标信息计算所述第一关键三角形的第一关键角度;
[0117]
平滑处理模块,用于对所述第一关键角度进行指数平滑处理,获取第一平滑结果;
[0118]
目标检测模块,用于将所述第一平滑结果输入预先训练得到的目标检测模型中,获取检测结果,所述检测结果包括运动状态和错误姿势;
[0119]
运动评估模块,用于根据所述检测结果生成所述待评估对象的运动评估结果。
[0120]
实施例三
[0121]
对应上述实施例一和二,本技术还提供了一种计算机设备,包括:处理器和存储器,存储器上存储有可在处理器上运行的计算机程序,当计算机程序被处理器执行时,执行上述任意一个实施例提供的基于目标检测和人体姿态估计的运动评估方法。
[0122]
其中,图5示例性的展示出了计算机设备,具体可以包括处理器1510,视频显示适配器1511,磁盘驱动器1512,输入/输出接口1513,网络接口1514,以及存储器1520。上述处理器1510、视频显示适配器1511、磁盘驱动器1512、输入/输出接口1513、网络接口1514,与存储器1520之间可以通过通信总线1530进行通信连接。
[0123]
其中,处理器1510可以采用通用的cpu(central processing unit,中央处理器)、微处理器、应用专用集成电路(application specific integrated circuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本发明所提供的技术方案。
[0124]
存储器1520可以采用rom(read only memory,只读存储器)、ram(random access memory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1520可以存储用于控制电子设备运行的操作系统1521,用于控制电子设备的低级别操作的基本输入输出系统(bios)。另外,还可以存储网页浏览器1523,数据存储管理系统1524,以及设备标识信息处理系统1525等等。上述设备标识信息处理系统1525就可以是本发明实施例中具体实现前述各步骤操作的应用程序。总之,在通过软件或者固件来实现本发明所提供的技术方案时,相关的程序代码保存在存储器1520中,并由处理器1510来调用执行。
[0125]
输入/输出接口1513用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
[0126]
网络接口1514用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信。
[0127]
总线包括一通路,在设备的各个组件(例如处理器1510、视频显示适配器1511、磁盘驱动器1512、输入/输出接口1513、网络接口1514,与存储器1520)之间传输信息。
[0128]
另外,该电子设备还可以从虚拟资源对象领取条件信息数据库中获得具体领取条件的信息,以用于进行条件判断,等等。
[0129]
需要说明的是,尽管上述设备仅示出了处理器1510、视频显示适配器1511、磁盘驱动器1512、输入/输出接口1513、网络接口1514,存储器1520,总线等,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本发明方案所必需的组件,而不必包含图中所示的全部组件。
[0130]
实施例四
[0131]
对应于上述实施例一至三,本技术实施例还提供了一种计算机可读存储介质,其中,本实施例中,与上述实施例一至三相同或相似的内容,可以参考上文介绍,后续不再赘述。
[0132]
所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执
行时,实现如上所述的基于目标检测和人体姿态估计的运动评估方法。
[0133]
在一些实施方式中,本技术实施例中,所述计算机程序被处理器执行时,还可以实现与实施例一所述方法对应的步骤,可以参考实施例一中的详细描述,此处不作赘述。
[0134]
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
[0135]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0136]
以上对本发明所提供的技术方案,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。

技术特征:
1.一种基于目标检测和人体姿态估计的运动评估方法,其特征在于,所述方法包括:获取待评估对象的运动视频,提取所述运动视频的关键帧;基于人体姿态估计神经网络对所述关键帧进行人体姿态估计,得到所述待评估对象在进行运动时的第一关键点的归一化的第一位置信息;将所述第一位置信息还原为所述关键帧上的第一坐标信息;从所述第一关键点中选取部分关键点构建多个第一关键三角形,根据所述第一坐标信息计算所述第一关键三角形的第一关键角度;对所述第一关键角度进行指数平滑处理,获取第一平滑结果;将所述第一平滑结果输入预先训练得到的目标检测模型中,获取检测结果,所述检测结果包括运动状态和错误姿势;根据所述检测结果生成所述待评估对象的运动评估结果。2.根据权利要求1所述的基于目标检测和人体姿态估计的运动评估方法,其特征在于,每一所述第一关键三角形由三个所述第一关键点组成,且每一所述第一关键三角形对应于所述待评估对象的预设部位。3.根据权利要求1所述的基于目标检测和人体姿态估计的运动评估方法,其特征在于,所述运动状态至少包括不是该运动、起始运动状态、过程运动状态和最终运动状态,所述错误姿势至少包括一个。4.根据权利要求3所述的基于目标检测和人体姿态估计的运动评估方法,其特征在于,所述方法还包括:初始化视频流姿态估计参数,设置标准动作个数和非标准动作个数均为0;创建运动状态序列以及错误姿势集合,所述运动状态序列初始为空数组,所述错误姿势集合中各元素对应初始值为0,所述错误姿态集合中的元素分别对应其中一个错误姿势;所述根据所述检测结果生成所述待评估对象的运动评估结果包括:根据所述检测结果中的所述运动状态更新所述运动状态序列以及根据所述检测结果中的所述错误姿势更新所述错误姿态集合中各元素对应的值。5.根据权利要求4所述的基于目标检测和人体姿态估计的运动评估方法,其特征在于,所述根据所述检测结果中的所述运动状态更新所述运动状态序列以及根据所述检测结果中的所述错误姿势更新所述错误姿态集合中各元素对应的值包括:在所述检测结果中的所述运动状态为起始运动状态时,若所述运动状态序列的长度为3且所述错误姿态集合中各元素对应的值均为0,则标准动作个数加1,若所述运动状态序列为只包括过程运动状态,则非标准动作个数加1并将所述错误姿态集合中相关元素对应的值设为1,若所述运动状态序列的长度为3且所述错误姿态集合中各元素对应的值不均为0,则非标准动作个数加1;在所述检测结果中的所述运动状态为过程运动状态,且所述运动状态序列为空数组或包括过程运动状态和最终运动状态时,在所述运动状态序列中添加过程运动状态;在所述检测结果中的所述运动状态为最终运动状态,且所述运动状态序列为包括过程运动状态时,在所述运动状态序列中添加最终运动状态。6.根据权利要求1至5任一项所述的基于目标检测和人体姿态估计的运动评估方法,其特征在于,所述方法还包括所述目标检测模型的训练过程,包括:
获取目标对象的运动图像,并对所述运动图像进行标注得到标签数据;基于人体姿态估计神经网络对所述运动图像进行人体姿态估计,得到所述目标对象在进行运动时的第二关键点的归一化的第二位置信息;将所述第二位置信息还原为所述运动图像上的第二坐标信息;从所述第二关键点中选取部分关键点构建多个第二关键三角形,根据所述第二坐标信息计算所述第二关键三角形的第二关键角度;对所述第二关键角度进行指数平滑处理,获取第二平滑结果;将所述第二平滑结果作为输入,所述标签数据作为输出,对神经网络模型进行训练,得到目标检测模型。7.根据权利要求6所述的基于目标检测和人体姿态估计的运动评估方法,其特征在于,所述标签数据至少包括所述运动状态和所述错误姿态。8.一种基于目标检测和人体姿态估计的运动评估装置,其特征在于,所述装置包括:视频提取模块,用于获取待评估对象的运动视频,提取所述运动视频的关键帧;姿态估计模块,用于基于人体姿态估计神经网络对所述关键帧进行人体姿态估计,得到所述待评估对象在进行运动时的第一关键点的归一化的第一位置信息;第一计算模块,用于将所述第一位置信息还原为所述关键帧上的第一坐标信息;第二计算模块,用于从所述第一关键点中选取部分关键点构建多个第一关键三角形,根据所述第一坐标信息计算所述第一关键三角形的第一关键角度;平滑处理模块,用于对所述第一关键角度进行指数平滑处理,获取第一平滑结果;目标检测模块,用于将所述第一平滑结果输入预先训练得到的目标检测模型中,获取检测结果,所述检测结果包括运动状态和错误姿势;运动评估模块,用于根据所述检测结果生成所述待评估对象的运动评估结果。9.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,当所述计算机程序被所述处理器执行时,实现权利要求1~7中任一项所述的基于目标检测和人体姿态估计的运动评估方法。10.一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,其特征在于,所述计算机程序被执行时,实现权利要求1~7中任一项所述的基于目标检测和人体姿态估计的运动评估方法。

技术总结
本申请提供了一种基于目标检测和人体姿态估计的运动评估方法及装置,包括获取待评估对象的运动视频,提取运动视频的关键帧,基于人体姿态估计神经网络对关键帧进行人体姿态估计,得到待评估对象在进行运动时的第一关键点的归一化的第一位置信息,将第一位置信息还原为关键帧上的第一坐标信息,从第一关键点中选取部分关键点构建多个第一关键三角形,根据第一坐标信息计算第一关键三角形的第一关键角度,对第一关键角度进行指数平滑处理,获取第一平滑结果输入预先训练得到的目标检测模型中,获取检测结果,根据检测结果生成待评估对象的运动评估结果。本申请方案可以克服现有技术的不足,提高运动状态评估的准确性和客观性。性。性。


技术研发人员:余天驰 徐文峰 胡文博 聂磊 潘连军
受保护的技术使用者:上海新近纪智能科技有限公司
技术研发日:2023.04.27
技术公布日:2023/8/14
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐