由于具有对人体动作的高度概括性与精简性,基于3D人体骨架的动作识别正逐渐成为计算机视觉领域的重要话题,同时随着体育格斗竞技与计算机技术的兴起,人们产生了使用计算机作为格斗训练设备的需求。使用计算机技术对运动员的格斗动作进行感知、捕捉、识别与反馈,可以将传统人与人的对抗,解放到个人与计算机自行锻炼的环境中。这可以应用于体育教学、医疗康复锻炼、运动员训练辅助,甚至是线上玩家对抗模拟等产品中。
而基于体育格斗运动本身的性质,应用于其上的动作感知技术必须有足够高的感知频率与感知精度,以捕捉高速的出拳动作,产生更准确的击打判定。因此,我们采用运算量相对较小的高速判别模型来应对,以适应格斗运动中的种种需要,最终设计实现出可以应用于体育格斗竞技中的动作感知产品。
我们使用RGB+D的相机作为捕捉设备同时采集拳击手运动过程的彩色与深度图像,并以此为基础识别人体身上的关节关键点,进一步生成完整的人体骨架。该骨架包含32个人体关键点,利用深度相机提供的深度信息,我们可以很容易地将关节点配准到三维空间中获得3D人体骨架,这将作为我们下一步进行动作识别的基础。
在上一步提取的人体骨架基础上,我们进一步设计特征,来更进一步针对拳击运动的具体问题,来提取更加凝练的信息。我们计算各个关节连接的相邻骨骼组成的夹角、各关节之间的相对高度差与相对距离等数据,组成一维向量来作为模型输入的特征,以满足平移、旋转不变性的需求。
在识别模型的选择上,我们考虑了支持向量机(SVM),最近邻算法(KNN)与多层感知机等模型,最终在计算量与准确性等的多重要求下,我们选用了支持向量机模型。我们自行采集录制了大量的拳击动作数据作为训练与测试样本,训练得到了可以有效解决问题的产品。
图一. 左拳识别画面
图二. 右拳识别画面
最终产品的效果如上面的视频一与视频二展示,其中部分识别画面在图一与图二中给出。识别的类别包括基本防御姿势判定、左右冲拳、左右直踢等五类动作。在合适的硬件设备支持下,模型可以稳定运行在30fps的帧率,可以完整捕捉高速的拳击动作。识别的准确率达90%以上,误识别主要来自于由遮挡导致的骨架提取失准。
在下一步的工作中,我们将尝试优化动作识别算法,来使之在不降低运行速度的情况下,识别更多的动作类别。另外,我们还拟采用视觉+惯性信息相结合的系统搭建策略,来进一步丰富产品的功能,即在人体四肢上配备IMU(惯性测量单元)来对手、脚的格斗动作进行速度、力量等运动参数的测量,并辅助视觉信息的动作识别结果,进一步地为运动员自训等需求提供更细致的帮助。
图三. 未来希望加入的动作类别
图四. 未来希望加入的动作类别