许易操
(同济大学电子与信息工程学院计算机科学与技术系,上海 201804)
基于视频的步态识别算法
许易操
(同济大学电子与信息工程学院计算机科学与技术系,上海 201804)
视频中的行人的识别问题是计算机视觉领域的研究热点。由于人脸识别极大地受到行人的角度限制,因此步态识别在行人识别中占有更重要的地位。通过HOG+SVM算法对视频进行行人检测提取行人区域,对该区域使用Grabcut算法分割得到行人二值图,通过步态能量图和Trace变换得到步态特征的步态识别算法对该行人进行步态识别。实验表明该算法在视频中能得到很好的识别效果。
步态识别;步态能量图;Trace变换;HOG;Grabcut
基于图像的生物识别技术一直都受到广泛的关注。特别是基于人脸识别的生物识别技术已经取得了很多丰硕的成果。但是在处理诸如监控摄像之类的视频时,受到行人角度、口罩、帽子等因素的影响,人脸识别往往不能发挥很好的效果。而相比之下,步态识别则具备远距离识别、不可隐藏等优点。在1994年Niyogi与Adelson提出了一种识别步态特征的方法。然后Cunado等人提出了一种基于大腿摆动频率的步态特征[1]。Murase与Sakai利用时空相关匹配的方法识别不同的步态[2]。近几年有人提出了基于平面单应性矩阵的识别方法[3]和基于监督Isomap的方法[4]。综合速度和效果考虑,Han在2006年提出的利用步态能量图识别步态的方法[5]在这两方面具有较好的平衡性。TheekhanontP等人在此基础上进一步对步态能量图进行Trace变换[10],提出了一种新的步态特征。本文在此基础上结合行人检测和分割算法,提出了一种适用于视频的步态识别方法。
1.1 行人检测
由于一帧图像内会包含多个行人,对每一帧图像的预处理工作首先是通过对图像进行行人检测提取出每一个行人。在2005年CVPR上,来自法国的研究人员Navneet Dalal和Bill Triggs提出的利用基于梯度方向直方图[6](Histogram of Oriented Gradient,简称HOG)进行特征提取,利用线性SVM作为分类器,从而实现行人检测。由于HOG+SVM是速度和效果综合平衡性能较好的一种方法,本文选择此算法进行行人检测。首先提取正负样本的HOG特征,步骤如下[7]:
(1)将输入图像灰度化;
(2)对灰度图进行Gamma调整和滤波以提高算法的抗噪性;
(3)计算图像每个像素的梯度,并对每个像素上的梯度模值和方向进行加权统计;
(4)将图像划分成小4×4像素大小的单元;
(5)在每个小单元内进行梯度统计,梯度方向在0°~360°之间,将直方图分为9级;
(6)用梯度幅值加权每个单元对应的直方图,将其表示为一个9维的特征向量;
(7)按照每2×2个单元组成一个新的区域,将单元合并成大区域,并将所有单元的特征向量联结起来,构成图像对应的特征向量;
(8)对特征向量进行归一化处理后便可得到HOG特征向量。
提取出正负样本的HOG特征值后,文献[6]通过线性分类器SVM进行训练得到分类器。SVM的基本思想是对于一个非线性可分的样本,通过一个核函数将其映射到高维空间中,然后在高维空间中寻找一个最优的超平面来把不同类别的数据分开。它的优点是它的解总是全局最优的,并且避免了在训练过程中出现的过学习和局部最小值问题。
最后用得到的分类器对每一帧进行行人检测。图2为对原始图像图1进行行人检测的结果。
图1 原始图像
图2 行人检测结果
1.2 行人分割
为了得到步态识别过程中需要使用的行人二值图,本文采用Grabcut算法[8]对检测出的行人图像进行分割。
如图3所示,本文的分割步骤为:
(1)通过HOG+SVM算法对图像进行行人检测;
(2)在被检测出的行人框中画出小矩形框,小矩形框长宽为行人框的9/10;
(3)将小矩形框外像素标记为背景像素,对行人框进行Grabcut分割;
(4)将分割结果二值化得到二值图。
2.1 步态能量图
步态能量图[5]是由Han提出的一种用于步态识别的有效特征。对于连续N帧行人二值图的步态能量图定义为:
图3
其中Bt(x,y)表示第t帧中坐标(x,y)点的像素值。其中N可以是一个完整步态周期所包含的帧数,也可以是一个固定值。文献[9]中提出一种利用人的侧影宽度和高度的比值判断步态周期的方法。由于在视频中受到背包等附加物品以及步行角度和双手摆动的限制,文献[9]中的方法无法得到很好的效果,因此本文选择使用一个固定的N值。
如图4、图5所示,图4为一个步态序列,图5为由图4的步态序列得到的步态能量图。从图5中可以看出步态能量图包含了行人的身体轮廓特征和步态周期特征。步态能量图中某点的像素值越大,表示人在整个步态周期中出现在该点的频率越高。
图4 步态序列
图5 步态能量图
2.2 Trace变换
为了进一步从步态能量图中提取出步态特征,文献[10]中Theekhanont P等人采用Trace变换对步态能量图进行特征提取。
Trace变换[11~14]是由Kadyrov和Petrou等人提出一种图像重建和图像识别的方法。它在图像的射线参数估计、模式识别和特征构造中已经有了很好的应用效果。Trace变换是Radon变换的一般形式。Radon变换是指函数沿包含该函数平面内的一族直线的线积分,是计算图像在某一指定角度射线方向上投影的变换方法。而Trace变换则是沿着直线计算图像函数的某个泛函值来描述一幅图像。即在Radon变换中被变换函数是图像函数的积分,而在Trace变换中,被变换函数不一定是图像函数本身,可以是图像函数经过一定的数学运算然后再进行变换。
图6 迹线参数定义
图7为对图5的步态能量图进行Trace变换后的结果。对图7进行阈值处理滤去图像中大部分的平滑区域后,便可得到如图8所示的Trace变换特征图。
2.3 KPCA特征提取[15]
通过Trace变换得到Trace变换特征图后,本文使用KPCA算法[16]对特征图进行特征提取和降维。KPCA算法是PCA在核空间中的非线性推广,基本思想是将数据从输入空间映射到高维特征空间,然后在特征空间利用PCA计算主成分。
图7 Trace变换图
图8 Trace变换特征图
得到均值向量u后,利用u计算协方差矩阵D:
最后计算协方差矩阵D的特征向量和特征值,将特征向量按照其对应的特征值由大到小排列得到的矩阵就是投影变换矩阵。根据主元比率Z选取前M个主元便可得到所有特征中总特征量超过比率Z的向量V。
2.4 SVM分类器
提取出步态特征后,选取相应的分类器就成为问题的关键。鉴于行人检测中使用的SVM分类器是一种小样本学习方法,并对样本集具有一定的鲁棒性,本文在识别部分依然选择SVM作为分类器。
但是由于SVM本身是一个两类问题的判别方法,不能直接用于多类处理,这里采用一类对余类法[17]来将其扩展为多类分类器。其步骤为对于共有k个类别的样本,先构造k个两类分类机,其中第i个分类机把第i类同余下的各类划分开,训练时第i个分类机取训练集中第i类为正类,其余类为负类进行训练。判别时,输入信号分别经过k个分类机共得到k个输出值fi(x)=sgn(gi(x))。若只有一个+1出现,则其对应类别为输入信号类别;若输出不只一个+1,即不只一类声称它属于自己,则比较gi(x)输出值,最大值对应类别为输入信号的类别;若没有一个输出为+1,则说明识别失败。
为了验证本文算法,笔者拍摄了多段清晰度为856×480的视频,视频总比特率为1082kbps,帧速率为25帧/秒。
由于步态能量图为对连续N帧的步态二值图加权平均得到的结果,因此对行人的短暂遮挡有一定的容忍性。图10为N分别取值10,14和20时的实验结果。从中可以看出,当N取值为10时,行人出现后很快便被识别,但是被遮挡后马上失去目标。当N取值为20时,行人识别需要的帧数较多,但是暂时的遮挡并不会导致目标的丢失。因此N越大,对短暂遮挡的容忍性越强,从行人出现到被识别需要的帧数也越多。综合考虑这两个因素的平衡性,本文的算法中N的取值为14。
为了进一步验证本文步态识别算法的识别效果,笔者将本文的算法与文献[10]和文献[18]的算法相比较。每个行人拍摄3段视频,其中1段用作训练样本,2段用作测试样本。取测试样本中被正确识别出的帧数p与被行人检测算法检测出的帧数q的比值p/q作为识别率。
表1中的文献[18]使用步态能量图提取步态特征图,然后用KPCA和SVM算法构造分类器。从实验结果中可以看出,本文对步态能量图进一步进行Trace变换后,分类效果得到显著提高。而文献[10]采用基于步态能量图和Trace变换的算法提取步态特征图,然后用模板匹配和基于欧氏距离的KNN算法构造分类器。相比之下,由于本文使用的SVM分类器可以自动寻找那些对分类有较好区分能力的支持向量,由此构造出的分类器可以最大化类之间的间隔,因而实验结果体现出更好的识别效果。
图10 不同帧数周期下的步态识别结果
表1 算法比较
本文提出了一种先进行行人检测和分割,然后用步态能量图和Trace变换提取步态特征后,使用KPCA将特征降维并构造SVM分类器进行行人识别的算法。实验中展示了本文算法对于暂时遮挡的容忍性;并与相似算法作了对比,取得了较好的识别效果。但是处理高清视频时,整个算法的运行效率受到HOG+SVM行人检测算法的限制。因此下一步工作是将本文算法在GPU上实现,使其能处理高清视频。
[1] Cunado D,Nixon M,Carter J.Using Gait as a Biometric,Via Phase-Weighted Magnitude Spectra[J].Lecture Notes in Computer Science,1997,1206:95~102
[2] Murase H,Sakai R.Moving Object Recognition in Eigenspace Representation:Gait Analysis and Lip Reading[J].Pattern Recognition Letters,1996,17(2):155~162
[3] Seungdo Jeong,Tai-hoon Kim,Jungwon Cho.Gait Recognition Using Description of Shape Synthesized by Planar Homography[J]. Journal of Supercomputing,2013,65(1):122~135
[4]张善文,张传雷.基于监督Isomap的步态识别方法[J].计算机应用研究,2012,29(11):4338~4341
[5] Han J,Bhanu B.IndividualRecognition Using Gait Energy Image[J].IEEE Transactionson Pattern Analysis and Machine Intelligence,2006,28(2):316~322
[6] Dalal N,Triggs B.Histograms of Oriented Gradients for Human Detection:Conference on Computer Vision and Pattern Recognition,2005[C].San Diego:CA,2005:886~893
[7] 叶林,陈岳林,林景亮.基于HOG的行人快速检测[J].计算机工程,2010,36(22):206~210
[8] Rother C,Kolmogorov V,Blake A.“GrabCut”-Interactive Foreground Extraction Using Iterated Graph Cuts[J].ACM Transactions on Graphics,2004,24(4):309~314
[9] 苏菡,黄凤岗.一种基于时空分析的步态识别方法[J].模式识别与人工智能,2007,20(2):281~286
[10] Theekhanont P,Miguet S,Kurutach W.Gait Recognition Using GEL and Pattern Trace Transform:Proceedings of 2012 International Symposium on Information Technologies in Medicine and Education,Japan,2012[C].Piscataway:IEEE,2012:936~940
[11] Kadyrou A,Petrou M.The Trace Transform as a Tool to Invariant Feature Construction[J].Proceedings.Fourteenth International Conference on Pattern Recognition,1998,2(2):1~3
[12] Petrou M,Kadyrou A.Affine Invariant Features from the Trace Transform[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2004,26(1):30~46
[13] Kadyrou A,Petrou M.Affine Parameter Estimation from the Trace Transform[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2006,28(10):1631~1645
[14] Kadyrou A,Petrou M.The Trace Transform and Its Applications[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2001,23(8):811~828
[15] 贲晛烨,王科俊,刘海洋.核方法的对比研究及在步态识别中的应用[J].智能系统学报,2011,6(1):63~67
[16] Scholkopf B,Smola A,Muller K.Nonlinear Component Analysis as a Kernel Eigenvalue Problem[J].Neural Computation,1998,10(5):1299~1319
[17] Rifkin R,Clautau A.In Defense of One-vs-all Classification[J].Journal of Machine Learning Research,2004,5:101~141
[18] 梁韶聪,周明,李安安.基于步态能量图的KPCA和SVM的步态识别方法[J].计算机应用研究,2010,27(7):2798~2800
Gait Recognition Algorithm Based on Video Sequences
XU Yi-cao
(Departmentof Computer Science and Technology,School of Electronics and Information Engineering,Tongji University,Shanghai 201804)
Video-based human recognition is the research hotspots of computer version.Since face recognition is greatly lim ited by the angle of human,gait recognition has amore important position in the scale of human recognition.Introduces human detection based on HOG+SVM algorithm.Uses Grabcut algorithm to get the human binary image.Uses gait recognition algorithm based on gait energy image and trace transform to recognize the human.The experimental results show that the introduced algorithm has good performance in video sequences.
Gait Recognition;Gait Energy Image;Trace Transform;HOG;Grabcut
1007-1423(2015)06-0035-05
10.3969/j.issn.1007-1423.2015.06.008
许易操(1989-),男,上海人,硕士研究生,研究方向为模式识别与人工智能
2015-01-04
2015-02-10