公开/公告号CN111680586B
专利类型发明专利
公开/公告日2022.08.26
原文格式PDF
申请/专利权人 电子科技大学;
申请/专利号CN202010452902.4
申请日2020.05.26
分类号G06V40/20(2022.01);G06V10/774(2022.01);G06V10/82(2022.01);G06V10/96(2022.01);G06K9/62(2022.01);G06N3/04(2006.01);G06N3/08(2006.01);H04N5/247(2006.01);H04N5/232(2006.01);
代理机构四川力久律师事务所 51221;
代理人冯精恒
地址 611731 四川省成都市高新(西)区西源大道2006号
入库时间 2022-09-26 23:16:43
法律状态公告日
法律状态信息
法律状态
2022-08-26
授权
发明专利权授予
技术领域
本发明涉及人体姿态估计领域,特别是一种羽毛球运动员运动姿态估计方法及系统。
背景技术
人体姿态估计的主要目的是通过摄像头等设备让计算机在复杂场景下估计人体姿态的具体内容,以方便进行后续的动作分类和评估。大多数方法都将人体姿态评估转化为人体骨骼点的预测,其中有两个主流方向:一是使用双目视觉系统(或单目视觉系统加深度相机)采集图像像素坐标系下的坐标,通过图像像素坐标系向世界坐标系下进行转换,计算人体骨骼点的三维坐标坐标;二是使用单目视觉系统借助深度神经网络预测图像像素坐标系下人体姿态的坐标。
目前来说,使用深度相机方法所形成的Kinect等产品虽然可以生成世界坐标系(三维坐标系)下采集人体骨骼点坐标,但是由于视觉系统的限制导致其产品价格居高不下,导致Kinect的应用层面并不广泛。而使用单目视觉方法所形成的大多都还局限与理论和实验室层面,预测网络模型对于硬件平台的要求高,虽然大多预测出的都是图像像素坐标系下的人体骨骼点坐标,但是后续的姿态评估不完善。
发明内容
本发明的目的在于:针对现有技术中针对图像像素坐标系下的姿态评估不完善、以及成本高的问题,提供一种羽毛球运动员运动姿态估计方法及系统。
为了实现上述目的,本发明采用的技术方案为:
一种羽毛球运动员运动姿态估计方法,包括以下步骤:
S1:采集包含人体骨骼点的羽毛球运动员运动姿态图像,并对所述运动姿态图像进行预处理;
S2:将所述运动姿态图像输入到预先训练好的预测网络模型中进行预测,输出一组图像像素坐标系下的人体骨骼点坐标;
其中,所述预测网络模型包括:VGG阶段以及4个stage阶段;所述VGG阶段由多个卷积层以及池化层依次串联而成;每个所述stage阶段包含两个分支:一条分支用于计算人体肢体概率置信图,一条分支用于计算人体关节点概率置信图;所述人体骨骼点坐标通过提取最后一个所述stage阶段中人体关节点概率置信图上的峰值点得到。
本发明通过以一种新的深度神经网络模型对单帧图像进行预测的方法,来得到在图像像素坐标系下的一组人体骨骼点坐标;同时,本发明提出的深度神经网络模型在整体流程中减少了卷积层的数量,缩短了预测的时间,与传统的人体姿态估计模型相比,该模型预测时间更短,效率更高,成本更低。
作为本发明的优选方案,所述步骤S1包括:
S11:初始化采集的摄像头,并以预设的采样间隔从多个摄像头同时获取带有摄像头ID的图像,对所述带有摄像头ID的图像进行放缩操作,调整所述带有摄像头ID的图像的帧率和分辨率参数;其中,所述带有摄像头ID的图像包含运动员运动姿态的人体骨骼点;
S12:从所述带有摄像头ID的图像中提取出图像像素数据,将图所述像像素数据转换成cv::Mat格式输出。
本发明利用初始化流程来兼容不同的摄像头驱动。同时提出预处理操作,创新性地在人体姿态估计系统中加入了间隔采样和放缩操作。等间隔采样使羽毛球运动员的姿态变换离散化,让系统实时性得到保证;放缩操作保证了输入到预测网络模型前的采集图像大小,解决了分辨率不同对预测网络模型预测时间的影响。
作为本发明的优选方案,所述步骤S11中摄像头基于ICmera基类进行设计,初始化步骤包括:
a:检测输入的摄像头ID对应的摄像头是否正常连接;
b:从连接的多个摄像头中选择所需摄像头的摄像头ID;
c:显示选择的所述摄像头的相关参数;
d:修改选择的所述摄像头的帧率和分辨率参数。
本发明提出的摄像头初始化流程,通过独有的基类ICmera来兼容不同摄像头的驱动,有利于数据的传输和存储。
作为本发明的优选方案,每个所述stage阶段的每个所述分支包括至少5个卷积层。
作为本发明的优选方案,所述人体骨骼点为羽毛球运动员运动姿态的特征点,包括neck点(颈部点)、Rshoulder点(右肩点)、Relbow点(右手肘点)、Rwrist点(右手腕点)、Lshoulder点(左肩点)、Leblow点(左手肘点)、Lwrist点(左手腕点)、Rhip点(右臀点)、Rknee点(右膝点)、Rankle点(右脚踝点)、Lhip点(左臀点)、Lknee点(左膝点)以及Rankle点(左脚踝点)。
本发明将局部评估的思想应用于对羽毛球运动员人体姿态的评估中,提出了一种新的人体姿态模型。该策略使用了针对羽毛球运动员运动姿态设计的13点人体姿态模型,取消了头部区域的评估。传统人体姿态评估是通用性的人体姿态评估,其评姿态范围包括行走、奔跑、挥手乃至各种运动相比,因此传统人体姿态模型对人体骨骼点的分布覆盖全身,而羽毛球运动属于上肢运动,使用新的人体姿态模型放大了肢体对姿态的贡献度,排除了无关人体骨骼点对姿态的影响。
作为本发明的优选方案,所述步骤S2所述预测网络模型的训练过程满足:
a)模型训练过程的数据集包括含有人体的图像和羽毛球运动员的图像,每幅图像都具有人体骨骼点的13个点坐标;
b)模型训练过程初始化时基础学习率为5e-5,卷积层权重初始值为5e-4,卷积层修正值初始值为0.01;
c)模型训练时使用随机梯度下降来更新模型权重参数;
d)模型训练时使用损失函数监控训练过程。
本发明采用随机梯度下降来对权重参数进行优化,对所有样本进行计算,可以覆盖所有情况;由全数据集来确定方向,能够更好地代表样本总体,从而更准确地朝向极值所在的方向。通过在训练过程中对各个的损失函数进行监控,使得整体预测损失下降。当目标函数为凸函数时,随机梯度下降一定能够得到全局最优。与传统的人体姿态估计模型相比,该模型预测时间更短,而在训练中加入羽毛球运动员运动姿态的数据集,也大大的提高了预测精度。
作为本发明的优选方案,所述损失函数为:
其中,i为stage层数,stage_w1
一种羽毛球运动员运动姿态估计系统,包括摄像头以及处理模块;
所述摄像头用于采集包含人体骨骼点的羽毛球运动员运动姿态图像,并发送所述运动姿态图像到所述处理模块;
所述处理模块对所述运动姿态图像进行预处理,并输入到预先训练好的预测网络模型中进行预测,输出一组图像像素坐标系下的人体骨骼点坐标;
其中,所述预测网络模型包括:VGG阶段以及4个stage阶段;所述VGG阶段由多个卷积层以及池化层依次串联而成;每个所述stage阶段包含两个分支:一条分支用于计算人体肢体概率置信图,一条分支用于计算人体关节点概率置信图;所述人体骨骼点坐标通过提取最后一个所述stage阶段中人体关节点概率置信图上的峰值点得到。
作为本发明的优选方案,所述摄像头的参数满足预设条件;所述预设条件包括接口型号、像素、帧率、焦距、摆放高度以及摆放角度。本发明通过对摄像头参数的限定,最大限度的保障了本发明方法的应用效果,也更加有便于后面的处理。
作为本发明的优选方案,所述接口型号为USB3.0;所述像素不小于800万;所述帧率不小于60帧;所述焦距为3.1mm;所述摆放高度满足区间[1.0m,1.4m];所述摆放角度为摄像头光轴与球网的夹角,满足区间[50°,70°]。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
1、本发明通过以一种新的深度神经网络模型对单帧图像进行预测的方法,来得到在图像像素坐标系下的一组人体骨骼点坐标;同时,本发明提出的深度神经网络模型在整体流程中减少了卷积层的数量,缩短了预测的时间,与传统的人体姿态估计模型相比,该模型预测时间更短,效率更高。
2、本发明利用初始化流程来兼容不同的摄像头驱动。同时提出预处理操作,创新性地在人体姿态估计系统中加入了间隔采样和放缩操作。等间隔采样使羽毛球运动员的姿态变换离散化,让系统实时性得到保证;放缩操作保证了输入到预测网络模型前的采集图像大小,解决了分辨率不同对预测网络模型预测时间的影响。
3、本发明提出的摄像头初始化流程,通过独有的基类ICmera来兼容不同摄像头的驱动,有利于数据的传输和存储。
4、本发明将局部评估的思想应用于对羽毛球运动员人体姿态的评估中,提出了一种新的人体姿态模型。该策略使用了针对羽毛球运动员运动姿态设计的13点人体姿态模型,取消了头部区域的评估。传统人体姿态评估是通用性的人体姿态评估,其评姿态范围包括行走、奔跑、挥手乃至各种运动相比,因此传统人体姿态模型对人体骨骼点的分布覆盖全身,而羽毛球运动属于上肢运动,使用新的人体姿态模型放大了肢体对姿态的贡献度,排除了无关骨骼点对姿态的影响。
5、本发明采用随机梯度下降来对权重参数进行优化,对所有样本进行计算,可以覆盖所有情况;由全数据集来确定方向,能够更好地代表样本总体,从而更准确地朝向极值所在的方向。通过在训练过程中对各个的损失函数进行监控,使得整体预测损失下降。当目标函数为凸函数时,随机梯度下降一定能够得到全局最优。与传统的人体姿态估计模型相比,该模型预测时间更短,而在训练中加入羽毛球运动员运动姿态的数据集,也大大的提高了预测精度。
6、本发明通过对摄像头参数的限定,最大限度的保障了本发明方法的应用效果,也更加有便于后面的处理。
附图说明
图1是本发明实施例1所述的一种羽毛球运动员运动姿态估计方法的流程示意图;
图2为本发明实施例1中所述的一种羽毛球运动员运动姿态估计方法的13点人体骨骼点坐标模型图;
图3为本发明实施例1中所述的一种羽毛球运动员运动姿态估计方法的软件接口层结构图;
图4为本发明实施例1中所述的一种羽毛球运动员运动姿态估计方法的软件架构运行流程图;
图5为本发明实施例1中所述的一种羽毛球运动员运动姿态估计方法的预测网络模型图;
图6为本发明实施例1中所述的一种羽毛球运动员运动姿态估计方法的详细网络设置图;
图7为本发明实施例1中所述的一种羽毛球运动员运动姿态估计方法的预测网络模型训练流程图;
图8为本发明实施例1中所述的一种羽毛球运动员运动姿态估计方法的人体肢体特征概率置信图的损失曲线图;
图9为本发明实施例1中所述的一种羽毛球运动员运动姿态估计方法的人体关节点概率置信图的损失曲线图;
图10为本发明实施例2中所述的一种羽毛球运动员运动姿态估计方法的具体应用效果图。
具体实施方式
下面结合附图,对本发明作详细的说明。
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
实施例1
如图1所示,一种羽毛球运动员运动姿态估计方法,包括以下步骤:
S1:采集包含人体骨骼点的羽毛球运动员运动姿态图像,并对所述运动姿态图像进行预处理;其中,如图2所示,所述人体骨骼点为羽毛球运动员运动姿态的特征点,包括neck点(颈部点)、Rshoulder点(右肩点)、Relbow点(右手肘点)、Rwrist点(右手腕点)、Lshoulder点(左肩点)、Leblow点(左手肘点)、Lwrist点(左手腕点)、Rhip点(右臀点)、Rknee点(右膝点)、Rankle点(右脚踝点)、Lhip点(左臀点)、Lknee点(左膝点)以及Rankle点(左脚踝点),同时,在采集时工作人员可以依据需要增加或删除其中的特征点,使本发明方法更加灵活实用。
S2:将所述运动姿态图像输入到预先训练好的预测网络模型中进行预测,输出一组图像像素坐标系下的人体骨骼点坐标;
其中,所述预测网络模型包括:VGG阶段以及4个stage阶段;所述VGG阶段由多个卷积层以及池化层依次串联而成;每个所述stage阶段包含两个分支:一条分支用于计算人体肢体概率置信图,一条分支用于计算人体关节点概率置信图;所述人体骨骼点坐标通过提取最后一个所述stage阶段中人体关节点概率置信图上的峰值点得到。
其中,步骤S1包括:
S11:初始化采集的摄像头,并以预设的采样间隔从多个摄像头同时获取带有摄像头ID的图像,对所述带有摄像头ID的图像进行放缩操作,调整所述带有摄像头ID的图像的帧率和分辨率参数;其中,所述带有摄像头ID的图像包含运动员运动姿态的13个骨骼点;
S12:从所述带有摄像头ID的图像中提取出图像像素数据,将图所述像像素数据转换成cv::Mat格式输出。
其中,所述摄像头参数需满足下表:
所述摄像头的采集软件架构的设计重心在于摄像头接口层。由于摄像头的驱动都是独自开发,导致摄像头使用的驱动不同意,因此本系统设计摄像头接口层来去驱动进行兼容,整体的软件接口层设计(即所述步骤S2中的软件架构)如图3所示,摄像头采集模块的基类ICmera中提供了4个检测函数和1个工作函数。
如图4所示,检测摄像头checkCmera和设置摄像头IDsetID用于系统初次部署:由于计算机可能搭载多个摄像头而每个摄像头在计算机中有其单独的硬件ID,因此需要根据需要设置系统中使用的摄像头的ID。然后,显示摄像头参数showParam和设置摄像头参数setParam用于系统调试:由于用于对场地环境、人体姿态评估准确率要求的不同,需要更改摄像头中帧率、分辨率等参数,因此开放了这两个函数接口。最后,ICmera需要一个提供连续图像输出的函数work,通常摄像头采集到的图像是以矩阵的形式存储在摄像头内置缓冲区中的,根据摄像头驱动的不同将数据封装成不同的数据格式在输出到计算机中,这也就导致了图像存储的数据格式混乱,而实际上图像中的数据没有改变,只是添加了诸如宽高、分辨率等信息,这些信息对于系统没用,因此通过该函数将采集到的图像转换为cv::Mat格式(OpenCV中的通用图像存储格式)。
通过基类ICmera可以兼容其他摄像头的驱动模块,并以ICmera的形式进入系统的后续流程。因此,本发明不需要具体的摄像头型号,只要满足参数要求的摄像头,都可以通过继承基类的方式设置驱动。在实际测试中如果效果不好,还可以根据ICmera的功能函数修正摄像头参数。
步骤S2中所述预测网络模型,结构如图5所示,在训练过程中,该模型input有两部分,一部分是input层,即将输入图片经过剪切、旋转、掩膜等操作,从维度[height,width,channels]转换到[bantch,height,weight,channels];另一部分是mask层,在COCO数据集中提供了训练集中人体的ROI区域,训练时需要读入以方便后续每个stage与其做比较计算loss。
接下来是VGG阶段,主要是借助已经训练好的VGG参数对input层在128个维度上进行卷积,以提取不同尺度空间下的图像特征。
最后由4个stage阶段组成,为了提高预测速度,每个stage阶段有两个分支,每个分支各5个卷积层;在stage阶段会得到13个人体关节点概率置信图,依次在这些概率置信图上寻找峰值点即为预测到人体骨骼点,峰值点坐标即为预测到的人体骨骼点坐标。
如图6所示,本发明的一种详细网络设置,包括了3个池化层以及52个卷积层。
如图7所示,所述预测网络模型训练流程包括收集数据,制作训练数据集,设置权重参数初始值,进行训练以及输出权重参数等步骤。
其中,所述训练数据集包括COCO数据集中含有人的图像以及摄像头采集图像,图像资料来源于羽毛球运动视频,且所述训练数据集中的每张图像都包含13个在图像像素坐标系下符合人体姿态模型的真实坐标。
在训练过程中,设置批次参数量batch_size为10,最大迭代次数max_iter为200000,基础学习率base_lr为5e-5。而权重初始值和权重修正值的初始值与学习率有关,根据基础学习率base_lr的量级,将权重值初始值weight_decay设置为为5e-4,权重修正值lamdb设置为0.01。
其中,所述优化器optimizer使用的是随机梯度下降Gradient Decent,其优点在于:(1)一次迭代是对所有样本进行计算,可以覆盖所有情况;(2)由全数据集确定的方向能够更好地代表样本总体,从而更准确地朝向极值所在的方向。当目标函数为凸函数时,随机梯度下降一定能够得到全局最优。
损失函数loss如公式:
其中,i为stage层数,stage_w1
训练后的损失loss曲线有两条,分别为stage4层的人体肢体特征概率置信图产生的stage4_L1_loss和人体关节点概率置信图产生的stage4_L2_loss如图8和图9所示。
在训练结束后,得到预测网络模型权重参数文件。
实施例2
本实施例为本发明一种羽毛球运动员运动姿态估计方法的具体应用实例。
摄像头选取参数为:
在预测网络模型中进行预测,得到的预测点展示效果如图10所示。
实施例3
一种羽毛球运动员运动姿态估计系统,包括摄像头以及处理模块;
所述摄像头用于采集包含人体骨骼点的羽毛球运动员运动姿态图像,并发送所述运动姿态图像到所述处理模块;
所述处理模块对所述运动姿态图像进行预处理,并输入到预先训练好的预测网络模型中进行预测,输出一组图像像素坐标系下的人体骨骼点坐标;
其中,所述预测网络模型包括:VGG、stage1、stage2、stage3、stage4,所述VGG部分由多个卷积层以及池化层依次串联而成;所述stage1、stage2、stage3、stage4的结构相同,包含两个分支:一条分支用于计算人体肢体概率置信图,一条分支用于计算人体关节点概率置信图;所述人体骨骼点坐标通过提取stage4部分中人体关节点概率置信图上的峰值点得到。
所述摄像头的参数需满足预设条件;所述预设条件包括接口型号、像素、帧率、焦距、摆放高度以及摆放角度。所述接口型号为USB3.0;所述像素不小于800万;所述帧率不小于60帧;所述焦距为3.1mm;所述摆放高度满足区间[1.0m,1.4m];所述摆放角度为摄像头光轴与球网的夹角,满足区间[50°,70°]。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
机译: 运动员管理装置,运动员管理系统以及使用该运动员的运动员管理方法,其与运动员所佩戴的保护器一起管理运动员的状态。
机译: 运动员管理装置,运动员管理系统以及使用该运动员管理装置的运动员管理方法,其与运动员所佩戴的保护器一起管理运动员的状态。
机译: 姿态估计装置,姿态估计系统,姿态估计方法,姿态估计程序以及记录该姿态估计程序的计算机可读记录介质