动作识别之STIP(Space-Time Interest Point)(二)

读 P. Dollar, V. Rabaud, G. Cottrell, and S. Belongie.  Behavior Recognition via Sparse Spatio-Temporal Features. VS-PETS ,2005.    

       这篇文章提出了一种经典的兴趣点检测器——cuboid detector。文章主要分为以下几个部分:

Detector

       作者的思想是需要将图片的空间检测算子扩展到视频的时空检测算子。但是在此之前得到扩展只有3D Harris检测器。Harris角点检测器检测出的实际上是正在变成相反运动方向的点。比如挥手时,手在最左端和最右端的点;走路时,脚的最高点。如果数据集包含具有这样特征的点,那么在这个数据集上做识别就能得到较好的识别结果。KTH数据集包含:walking,jogging,running,boxing,clapping,waving等六种动作,这六种动作都具有上述特点,这使得在KTH数据集上使用Harris角点检测器做测试,能够得到较好的识别率。

       这篇文章的作者希望提出一种detector,使得能够在不具有上述特点,或不是很明显的具有上述特点的数据集上能够得到较好的识别率。在其他的数据集上,比如啮齿类动物的行为,不同的面部表情,我们发现即使是当我们认为感兴趣的动作发生时,用Harris角点检测器检测出的角点非常少。虽然我们希望得到稀疏的特征,但当产生的特征过于稀疏时,会对识别产生阻碍。

       除了时空角点具有稀疏性这个问题外,时空角点是否真的是动作识别所真正需要的特征也是一个问题。我们感兴趣的是得到的特征能否最大化的区分不同的行为。例如,马咀嚼干草,自行车的轮胎旋转,这两个例子中的行为都可以被提取出来当特征。但是这两个例子中的行为与Harris角点检测器能检测出来的点的特性不符(这两个行为是具有微妙的变化的渐变过程,就好像具有特殊的相关性的特征),因而无法用Harris角点检测器很好的检测出角点。 

       在摄像头静止或者摄像头运动但是其运动能够通过算法进行补偿的前提下,在避免检测出的兴趣点过于稀疏的原则下,作者提出了一个时空特征点检测器——cuboid detector。该检测器是基于时域Gabor滤波器的检测器,响应函数具有以下形式:

       

       其中,是一维Gabor滤波器的正交分量,取

       响应函数R的局部极大值对应着兴趣点。

       该特征点检测器检测出能够周期性运动的物体,或者其他有着显著运动特征的物体,且检测出来的特征点数目非常多,也能够检测出角点。但是如果物体做纯粹的平移运动或者运动特征不明显则检测的特征点数目很少。

Cuboid

       当检测到特征兴趣点后,就需要将每个特征兴趣点扩展成cuboid,cuboid的长和宽大约为检测尺度的6倍。接着就需要考虑用什么指标比较2个cuboid的相似度了。首先需要对cuboid做变换,作者采用了3种方法,即(1)归一化像素值;(2)亮度梯度,每点计算3个值,分为3通道,每个通道与cuboid的大小相同;(3)加窗光流,每点计算Lucas-Kanade光流,得到,分为2通道,每个通道与cuboid的大小相同。然后作者比较了(1)直接用cuboid特征向量,缺点:有小的cuboid扰动;(2)用全局直方图,即对cuboid中的值做直方图统计,缺点:丢弃了所有位置信息;(3)用局部直方图,即先把cuboid分成很多区域,然后在每个区域内做直方图统计。经过测试比较,发现直接用cuboid求梯度得到特征向量的分类误差最小,这样的特征向量其本质就是PCA-SIFT描述子。这种描述子不是尺度不变的。

Cuboid prototypes

       当不同人做同一种动作时,尽管其表观和运动有所不同,但是检测到的兴趣点应该相似。尽管可能的cuboid的数目很多,但cuboid的类型的很少。所以在动作识别领域,cuboid的精确构成不是很重要,而是要检测出cuboid的类型,即cuboid prototypes。

       所以在作者在进行检测cuboid后,将大量的cuboid进行了k-means聚类。所以在训练阶段,每个cuboid都被分到了某一个cuboid prototypes。

Behavior Descriptor

       当得到了cuboid prototypes后,就可以进行行为描述了。作者用cuboid prototypes直方图作为行为描述子,描述子中没有使用cuboid的相对位置信息。作者使用使用了两种方法做分类,一种是最小距离(卡方距离),一种是SVM。

实验 

       作者采用了3个数据集:面部表情数据集(作者自己的);老鼠行为数据集(作者自己的);KTH人体行为数据集(公认测试集)。在这个3个数据集上,作者和另外3中比较流行的行为识别算法ZMI,EFROS,CUBOIDS+HARRIS做了比较,并证明自己的算法(取名为CUBOIDS,其实就是提取的特征过程)比其他3种效果都要好,其中KTH数据集上的识别率超过了80%。分类器采用SVM比1NN效果稍好。





http://blog.csdn.net/win_in_action/article/details/19481185

 

你可能感兴趣的:(动作识别)