林建宏 莫琦 周俊杰 莫松颖 谢小旋
摘要:随着时代的发展,世界科技创新水平不断提高,然而国民的身体素质却逐年每况愈下。因此锻炼身体,改善体质同样是当前国民的首要任务。为此我们团队开发了一个智能健身平台,利用神经网络做图像识别处理,Android平台作为客户端。人们可以在运动时运行软件对动作进行识别判断并纠错,从而达到跟私人教练贴身指导一样的效果。
关键词:神经网络;图像识别;动作教学
中图分类号:TP391.41 文献标识码:A 文章编号:1007-9416(2019)09-0093-02
0 引言
根据中国国民体质监测报告显示,各个年龄段人群的身体素质继续呈下降趋势,甚至呈现低龄化趋向,尤其是学生,各年龄段的学生肥胖检出率持续上升等。在这种情况下,“全民健身、全民运动”便成为了当今国民所呼吁的口号之一。与此同时人群中也涌现出了大批运动及健身爱好者,健身房俱乐部等新时代产物应运而生,但问题也随之出现:一方面是健身学习效率低下、动作不标准,需要多次巩固纠正,这导致学员学习时间长;另一方面则是部分课程价格昂贵,课时、学习内容少。针对这一问题,本团队开发了一款提高动作学习效率的智能教育平台“影子教练”,它能够通过线上实时纠错、线上互动的方式,给予使用者正确的指导,帮助使用者提高学习效率,减轻健身学员的负担。
1 软件组成及功能介绍
1.1 软件组成
本教学平台的目的是为了能够给健身初学者提供正确的动作指导。系统的组成和功能流程如图1所示,教学从最基本的动作纠正开始,系统反馈信息为使用者提供建议,同时也可以与教练进行互动,为使用者提供更深层次的指导,这就需要在客户端实现动作采集,与服务端通信,并在屏幕上显示;在服务端实现对收到的数据进行分析处理,并将结果反馈给客户端。图像识别处理技术是软件的核心技术,它利用带摄像头的电子产品采集图像信息,并采用神经网络算法对图片进行动态分析。并将结果反馈到使用者的手持电子产品上,帮助使用者调整动作姿势,达到纠错的目的。
1.2 功能介绍
1.2.1 动作纠正功能
本系统带有实时的动作监控功能与动作纠错功能。当用户的动作与系统的动作库相似度低于80%时,系统就会出现报警提示和语音提醒,实现及时纠正用户错误姿势的功能。
1.2.2 其他模式
(1)教练在线教学模式。当用户模仿视频上的动作进行学习时,系统还会对用户的每个动作进行评分,用户可通过分数的高低来判断自己的锻炼效果。教练可通过影子教练平台观看每个学员的学习情况,当用户的动作错误过多时,系统会报警提示,教练可对其进行在线指导。
(2)直播模式。教练可以通过直播进行教学示范,也可以借助此平台展现自己的技能。用户可以在平台上分享自己的视频,或者是直播,成为一名网络红人。
(3)多人模式。用户可以和朋友一起健身,也可以一起玩游戲,一起享受健身的快乐。
(4)排位模式。用户可以通过排位赛,了解自己的实力在哪个程度,激发他们的好胜心。为了上一个段位,要花一点时间,这样可以让用户对健身更加痴迷,增强用户的粘性。
2 软件设计方案
2.1 手机客户端
系统的通讯流程如图2所示,客户端是基于Android6.0开发的app,主要负责采集人体图像和图片发送。利用电子移动设备上自带的摄像头采集动作图片,再通过无线网络发送到服务端。调用系统摄像头及屏幕截取函数获取当前预览图片,利用Android系统定时器决定获取图像的频率,将图片矩阵压缩后利用TCP/IP通信协议发送数据,当获取服务IP和端口号即可进行数据传输。客户端在发送成功后处于待机状态,等待服务端的回复。
2.2 服务器端
2.2.1 主要流程
服务端负责接收处理数据并进行反馈。服务端则分为两部分,一部分负责双方通信,另一部分是执行图像识别处理。通信部份同时监听两个端口,在接收到图片数据后暂时保存到本地,等待图像识别结果。在获取信息后将其显示在电子设备屏幕上,同时还添加了语音播报功能,使得平台更加智能化。图3阐述了系统进行图像识别的大概流程:先对接收到的视频文件一帧帧提取出来,借助神经网络算法对图片进行处理获得人体特征,再根据相应的算法对当前的动作种类,动作正误进行判断。
2.2.2 人体姿态提取
关于人体姿态识别部分,调用了Openpose库,该库是美国卡耐基梅隆大学(CMU)基于卷积神经网络和监督学习并以caffe为框架开发的开源库。它可以实现人体动作等姿态估计,无论是静止的还是运动中的人体它都能识别出来,具有极好的鲁棒性。它的功能在于对二维的单人或多人图像的人体骨骼关键点进行实时识别。
人体骨架的提取:输入一副图像,经过卷积神经网络提取特征,得到一组特征图,然后分成两个岔路,分别使用CNN网络提取Part Confidence Maps 和Part Affinity Fields。得到信息后,用Bipartite Matching(偶匹配)求出Part Association,将同一个人的关节点连接起来,因为PAF自身具有矢量性,会使生成的偶匹配正确,将它们合并成一个人体的骨架。最后基于PAFs求Multi-Person Parsing, 也就是把Multi-persion parsing问题转换成graphs问题。(该算法的核心就是寻找增广路径,是一种用增广路径求二分图最大匹配的算法)[1]。
2.2.3 动作评判
通过openpose获得肢体关键点的位置信息后,就可以得到每个关键点的坐标。在这里平台采用了数据集中训练好的18点模型输出格式为:鼻子-0,脖子-1,右肩-2,右肘-3,右腕-4,左肩-5,左肘-6,左腕-7,右臀-8,右膝盖-9,右脚踝-10,左臀-11,左膝盖-12,左脚踝-13,右眼-14,左眼-15,右耳-16,左耳-17。通过这些坐标能判断某一关键点的移动矢量,关节弯曲的角度。有了这些数据,再加上一定条件,就能用来作为动作的判断标准。如图4所示,在知道了右手三个关键点的情况下,右肘部的弯曲角度通过相应的数学算法可以得出。
3 结语
在人们印象中,传统的健身方式效率一般,课程内容枯燥无味。影子教练平台的出现,将会给健身人士的生活带来巨大的变革。健身的时间地点不会有局限性,人们对健身的概念将会有新的理解。“影子教练”是围绕动作的教与学为主题的新时代的人工智能助教平台。 “影子教练”人工智能算法不仅仅用于健身,同样适用于其他智能教学上,其应用范围相当广阔。
参考文献
[1] CAO Z, SIMON T, WEI S E, et al.Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields[C].IEEE Conference on Computer Vision&Parrern Reconition,IEEE Computer Society,2017.