ComputerScienceandApplication计算机科学与应用,2018,8(7),1134-1145PublishedOnlineJuly2018inHans.://doi.org/10.12677/csa.2018.87125文章引用:王怡,朱晓文,曲成璋.基于Kinect的健身动作识别与评价[J].计算机科学与应用,2018,8(7):1134-1145.DOI:10.12677/csa.2018.87125FitnessMovementRecognitionandEvaluationBasedonKinectYiWang,XiaowenZhu,ChengzhangQu*CollegeofInformationEngineering,WuhanBusinessUniversity,WuhanHubeiReceived:Jul.5th,2018;accepted:Jul.20th,2018;published:Jul.27th,2018AbstractAshealthissueenrollingamoreimportantroleindailylife,sportsandfitnessmovementsareac-ceptedincreasinglybythemajorityofpeople.Howtoexercisemoreeffectivelyandreducephysi-calinjuriesreasonablyisoneofthehottestresearchesinthecurrentscientificfitnessmovement.Inthispaper,weuseKinecttocollectfitnessmovementdata,thenautomaticallyclassifythemovements,andcomparethemwithstandardmovementstocalculatethedegreeofvulnerability.Specifically,wecollectandpreprocesstheskeletondataofperson’smovementsfirst,andthenweextractthefeatureandnormalizetheweighttoformarepresentativefeatureamongallmove-ments.Second,weclassifyallthemovementsbylittletunedKNNalgorithm,andformthemove-ment’stemplatemodelbysimilaritycalculation.Third,weevaluatethemovementsbasedontheidentifiedtemplateandtheinjurymodeltoguidetheperformanceofmovement.TheexperimentsshowthefeaturesweextractforallmovementscanrepresentthemovementwellthatonlylittletunedKNNalgorithmcangetacompetitiverecognitionresult.Wehascomparedneuralnetalgo-rithmandKNNthattheformerislessgeneralizedthanthelatter.Thescoreandsuggestionoffit-nessmovementcanreducesportsinjuriesandimprovetheenjoymentoffitnesssports.KeywordsKNN,StaticActionClassification,SkeletonData,StandardizedScore基于Kinect的健身动作识别与评价王怡,朱晓文,曲成璋*武汉商学院信息工程学院,湖北武汉收稿日期:2018年7月5日;录用日期:2018年7月20日;发布日期:2018年7月27日*通讯作者。王怡等DOI:10.12677/csa.2018.871251135计算机科学与应用摘要随着健康问题越来越受到人们的重视,运动健身越来越被广大人民所接受。如何更有效的运动健身并合理减少身体伤害,是现今科学健身运动的研究热点之一。本文利用Kinect收集健身动作数据,对动作进行自动分类,与标准动作进行比对评分,计算出易受伤程度。具体的,首先通过对骨架点的收集和预处理,从骨架点数据中提取特征值,计算权重并对特征值归一化,得到健身动作的动作测试数据集和模板数据集。通过KNN算法对测试数据进行分类与识别,得到测试动作的分类结果。对应分类结果,利用评价和易受伤害计算模型,最终得到健身动作的评分和建议。实验表明,提取的骨架数据特征对所有动作识别仅配合微调的KNN算法就能有较好的效果,并比神经网络算法更具有广泛性。动作评价和易受伤分析可以减少运动伤害,提高健身运动趣味性。关键词KNN算法,静态动作分类,骨骼数据,标准化评分Copyright©2018byauthorsandHansPublishersInc.ThisworkislicensedundertheCreativeCommonsAttributionInternationalLicense(CCBY).引言随着信息化时代的快速发展,新型科技在传统领域的应用也愈发广泛。传统的体育行业中,人们愈来愈注重提高身体素质,健身日渐成为青年人运动的首选方式。但是,青年人在运动时,多因热身不充足、动作不标准而造成运动伤害。如何规范动作,减少运动伤害,更加健康、有效并具有趣味性的运动成为了热门的研究内容。规范运动动作需要对动作进行识别分类,与模板对应计算评分结果。因此动作规范化的重点是动作识别分类和动作评分。动作识别分类中,常见的方法有支持向量机(supportvectormachine,SVM)[1],K最近邻(K-nearest-neighbor,KNN)[2],人工神经网络(ArtificialNeuralNetworks,ANN)[3]等。LinL等[4]提出基于Kinect的静态人体姿势评分方法,李红波等[5]对评分进行修改,能够有效对动作进行评分。KNN算法能够有效分类静态动作,神经网络具有较高的自学习和自适应能力。评分方法基于模板数据和测试数据特征向量的角度差,对一般常见健身动作可评分。本文选取KNN算法和神经网络算法作为识别算法并将两者计算结果进行对比,对于基于个人的运动识别领域样本数据不宜选取过多而影响用户体验的原则,选择能够准确识别错误特征并推广性更佳的KNN算法作为模型最终方法。在进行运动分类后,针对运动的标准性和易受伤性,通过获取24维特征值并对评分公式进行修改,最终对用户动作是否易受伤和是否有锻炼效果进行综合评分,为用户的运动提供了有效的科学指导。2.相关技术2.1.基于Kinect的骨架特征选取Kinect设备是由微软公司研发,能够在不使用控制器的情况下进行人机交互。在硬件上,从左往右依次是红外线发射器、RGB彩色摄影机和红外线摄影机。中间的镜头用来采集彩色图像,两边的镜头则OpenAccess王怡等DOI:10.12677/csa.2018.871251136计算机科学与应用用来采集深度数据。建立模板所用的数据,依据骨架关节点提取[6]。由Kinect获取的人体骨架图,如图1所示。其中包括头、肩、肘、脊柱、髋、膝、脚踝等20个三维关节点。获取到的关节点不可直接使用,需要对60维数据进行预处理。将跳动点、异常值等与常规骨架点不相符的一帧数据去掉,提高骨架数据的可靠性、稳定性,增强匹配率并降低误差。2.2.动作分类与评分方法2.2.1.动作分类KNN(K最近邻,k-NearestNeighbor)算法,即一个测试数据在特征空间中到模板的距离,在距离最小的K个数据中,属于某一类的数量最多,测试数据也属于此类别,并具有此类模板具有的特性。KNN算法结合其他领域的方法,在众多方向均有应用[7][8][9][10]。假设由Kinect收集模板数据集M和测试数据集T,测试数据共有k个。将数据集处理后,得到距离特征和角度特征,组合形成特征值。其中有u类动作,v维特征值,对每个特征设置权重w。将测试数据与模板数据集中某一动作的特征值对应相减,特征距离差添加权重,将其相加计算出的距离差,代表了两动作之间的差距。lD是测试动作与模板动作之间的距离差。()(){}2testmodel1,,lDsqrtCvCuvw=−⋅(1)2.2.2.动作评分运动评分是为了减少运动损伤的情况,现有研究包括了针对运动损伤风险因素与目标之间的关联度,对运动受伤风险进行评估[11];基于大数据的运动损伤程度评估[12];利用SVM建立运动损伤与运动强度之间的关系模型[13]等方面。Figure1.Skeletonjointofhuman图1.人体骨架关节王怡等DOI:10.12677/csa.2018.871251137计算机科学与应用针对Kinect获取的静态人体姿势,LinL等[4]提出了一种静态动作的评分方法。计算模板的特征向量与测试数据的特征向量之间的夹角作为特征角度,对每个特征角度赋予不同权重,得到归一化角度值,并加入分段惩罚因子。将两者综合,得到准确度计算公式。李红波等[5]对惩罚因子进行了修改,使评分更佳合理。评分公式与惩罚因子如下。1)提出的静态姿势识别准确度计算公式(maxα为最大的iα)()()max10000ststststststSfZZZZZSZZZα−⋅−⋅+≤≤=≥(2)2)设置肢体偏移极限函数作为惩罚因子(M为预设肢体偏移最大角度阈值)()2maxmax2maxmax0.3101030103MMfMαααα−⋅≤≤=≥(3)3.静态动作识别与评分本文选择KNN算法,加入权重对健身动作进行分类。进一步的健身动作评分中,在上述方法基础上,面向健身动作的标准化和易受伤部位,重新设定惩罚因子,并对权重的分布进行了调整。本文得到静态健身动作评分与建议的过程,如图2。3.1.测试及模板数据获取常用的动作分类方法有三类,本文使用模板分类的方法[14]。选取静态动作6个,包含热身运动1个,腿部练习2个,腰部练习1个,手臂练习1个,全身协调性练习1个。收集静态健身动作的测试数据,共20名实验者,6类动作,每类动作每人做5次,共收集600个动作数据,每个样本骨骼帧数最低为90帧。同时,收集来自江汉大学体育学院的专业运动人员的健身动作作为评分的标准。选择专业运动员的健身动作作为模板,构造较精确的模板数据库,使综合评分更具有说服力。收集动作时,控制实验者到Kinect的距离在1.5m~2.5m之间。6种健身动作的镜面示范,如图3所示。在600个动作数据中随机抽取5个数据作为模板,对5个数据取均值得到分类模板。在评分过程中,用标准健身动作作为评分模板。最终得到的分类模板和标准评分模板包括6类动作,每类动作5个数据,其余均为测试数据。在计算特征值距离时,将模板中5组数据求均值,合为一组数据,即每个模板为一组24维特征值。将每个动作的模板库中的模板数据合为一组数据,增加模板的鲁棒性,更加合理、有效的对健身动作进行分类。3.2.特征值选取及分类根据问卷调查分析“健身人群主要针对的训练部位及运动受伤情况”,在静态健身动作的设计中,选取针对腰、腿以及全身协调性的动作。因为运动而受伤的人占了1/2,人们对运动受伤主要是动作不标准和未热身或运动安排不当造成的。根据每个动作不同的特点和侧重部位,选择了12维距离特征和12维角度特征(共24维特征值),用以提取静态健身动作的模型。处理后的关节点