论文部分内容阅读
随着人体运动数据采集技术的进步,用数据表示的人体运动的研究越来越受到人们的关注。人体运动的研究在医疗康复、模拟场景、以及影视等领域有着很大的应用空间。本文的研究主要包括人体动作的可视化以及人体动作的分类这两大问题。人体动作的可视化就是将以数据表示的人体动作用渲染引擎进行复现,相对于传统的用视频记录并展现人体动作的方式,基于数据的人体动作可视化有着数据量小、可移植性强、方便观察和研究等优势。而人体动作分类问题的目的是基于大量已标注的人体动作对未标注的人体动作进行分类标注,在本文中我们分别用基于动态时间规整算法(DTW)的人体动作分类算法和基于长短时记忆网络(LSTM)的人体动作分类模型来实现人体动作的分类。在人体动作的可视化部分,我们用Ogre渲染引擎对人体动作进行显示,并提供了数据接口来控制虚拟的3D人体模型的运动。在解决了动作显示、坐标系变换、姿势校准、模型校准、控制摄像头等问题后,我们实现了基于四元数的人体动作格式和BVH人体动作格式的人体动作的可视化。并且根绝我们提供的数据接口,该可视化系统对其他格式的人体动作有着良好的可扩展性。在基于DTW算法的人体动作分类算法中,我们仅用人体的胸、左小臂、右小臂、左小腿、右小腿这5个骨头的数据进行计算来减少计算量。我们用两个动作每个骨头上的DTW距离的平均值作为两个人体动作的距离,然后基于该距离用最近邻算法对人体动作进行分类,将每个未标注的人体动作分类到与它最近的人体动作所属的类别中。另外,为了计算两个四元数序列的距离,我们还提出了基于相对旋转角的四元数距离的定义。而在基于LSTM神经网络的人体动作分类模型中,我们将表示成时间序列的人体动作逐帧输入到去掉输出层的正向和反向LSTM中,并将隐藏层的输出依次送入平均池层和逻辑回归层得到最终的分类结果。我们用目前流行的深度学习平台Tensor Flow实现我们的分类模型并进行训练。我们用人体动作数据库HDM05中切分好的人体动作进行实验来验证我们所用的两种分类方法,分别得到了94.23%和94.84%的分类准确率。