论文部分内容阅读
人体动作识别在计算机视觉领域一直都是一个重要且具有挑战性的课题。因为其在安全监控、虚拟现实、智能人机交互等很多领域广泛的应用,正受到研究者和工业界越来越多的重视。人体动作识别传统的模型通常是基于像素值的视频数据,容易受到背景、光照等条件的影响,存在识别精度不高、实际应用难度大等问题。而近期出现的深度商用传感器为这个课题开启了新的机遇。本文基于动作序列的深度信息,利用深度传感器采集到的人体主要关节的三维位置信息进行动作识别。在本文中,我们提出了一整套人体动作识别的模型框架。整个框架分为两大部分:基于深度信息的特征提取和分类器模型的构造。在特征提取部分,尽管传感器采集到的数据是人体关节三维坐标,相比像素值已经是一种更高层次的且具有显著物理意义的特征,但是这种数据仅仅包含了人体姿态特征。而人体动作序列作为一种描述人体运动的时间序列,提取的特征应该能够反映人体的运动信息和时域上的变化信息。所以,在人体运动特征提取上,我们同时利用了人体姿态、运动速度、加速度信息构建了能够更好反映关节空间运动特征的描述子。在另一方面,我们使用了图像空间特征提取经典模型空间域金字塔匹配(Spatial Pyramid Matching)的变体——时域金字塔匹配模型来构建时域特征,从不同尺度更好地描述了运动序列的时域变化。分类器模型构造部分包含了本文最重要的两点突破点和创新点:基于多例学习的关键帧提取,以及将时域特征作为隐状态构造出的结构化支持向量机(Struct SVM)。在研究中我们观察到,一类动作和另一类动作会共享很多类似的运动状态,将一类动作序列中的所有帧都标记为该动作类别进行训练是不合理的;同时我们在识别一类动作时,可以仅通过其中的几帧关键动作识别出动作类别,由此可以说明提取关键帧对于动作识别的必要性和重要性。我们提出了一种基于多例学习的迭代支持向量机的算法,从动作序列中提取出了关键帧用于模型训练。而在另一方面,对每一帧进行时域信息提取时,需要选择一定长度的时间窗口,在其他模型中,通常使用交叉验证的方式选定一个最优的常数。相似地,在时间窗口内提取时域特征时,传统的时域金字塔模型使用固定的等分的方式分割时间域。但我们认为这些参数反映的是当前帧的运动状态,不能对所有帧都选用一个常数来处理,而在本文中,我们将这几个参数作为隐变量,使用隐元结构化支持向量机(Latent Struct SVM),在训练分类超平面的同时,对每一帧都学习该帧对应的最优窗口长度和时域分割点,建立了能更好表达动作信息、更有判别力的特征。最后在实验部分,分别通过离线和在线实验较为全面地验证了我们提出的模型的正确性和有效性。