文章快速检索  
  高级检索
基于空间金字塔特征包的手势识别算法
余思泉1, 曹江涛1, 李平1, 姬晓飞2
1. 辽宁石油化工大学 信息与控制工程学院, 辽宁 抚顺 113001;
2. 沈阳航空航天大学 自动化学院, 辽宁 沈阳 110136
摘要:为了解决基于尺度不变特征变换的特征包(BoF-SIFT)算法在描述手势图像特征时对特征点分布情况无法确定的问题,提出了空间金字塔特征包算法提取手势图像特征.该算法通过构造图像金字塔改善了传统的BoF-SIFT算法,生成的描述子能有效表征手势图像的局部特征和全局特征,并能表示图像特征点的分布特性.采用直方图相交核支持向量机进行手势识别.在标准数据库上的测试表明,该算法对于10种手语得到了92.92%的正确识别率,验证了算法的有效性.
关键词手势识别     手势图像     尺度不变特征变换     空间金字塔     特征包     直方图相交核     支持向量机    
Hand gesture recognition based on the spatial pyramid bag of features
YU Siquan1, CAO Jiangtao1 , LI Ping1, JI Xiaofei2     
1. School of Information and Control Engineering, Liaoning Shihua University, Fushun 113001, China;
2. School of Automation, Shenyang Aerospace University, Shenyang 110136, China
Abstract:A novel algorithm based on the spatial pyramid bag of features is proposed to describe the hand image. It is proposed in order to solve the problem that the distribution of feature points cannot be ascertained when using the hand gesture descriptor based on bag of feature of scale invariant feature transform (BoF-SIFT). The capability of the BoF-SIFT can be improved by generating image spatial pyramid. The descriptor can effectively represent the posture by combining the global features and local features of the gesture image, as well as the distribution character of image feature points. Finally, the hand posture recognition is achieved by using the histogram intersection kernel support vector machine (SVM). The experiment on standard database demonstrates the average recognition rate can reach 92.92% for 10 kinds of gestures recognition, verifying the efficiency and effectiveness of the proposed algorithm.
Key words: hand gesture recognition     hand gesture image     scale invariant feature transform (SIFT)     spatial pyramid     bag of features     histogram intersection kernel     support vector machines (SVM)    


随着计算机和人工智能技术的发展,人机交互的研究方向正朝实现拟人化的方向发展。目的是使人类能够利用包括自然语言、手势语言、面部表情在内的人类自然、直观的方式实现人机交互。手势作为一种智能的人机交互接口,十分适用于对复杂的交互系统做出反应。基于视觉的手势识别算法研究,已经成为当今图像处理与模式识别领域研究的热点问题。基于视觉的单一背景的手势识别主要包括特征的提取与描述、分类器的选择与训练2个过程。其中,所选择的特征的好坏将直接影响到手势识别的准确率[1]。文献[2]采用边缘像素点作为手势特征,并使用Hausdorff距离匹配手势模板。该方法较为简单,但所提取的手势特征不具有旋转与缩放的不变性,而且受光照的影响较大。文献[3]利用切线距离作为手势特征,通过K-means聚类生成匹配模板,利用相似性匹配实现手势识别。文献[4]利用图像的Zernike矩和HOG特征构建字典,并通过求解l范数的最优化问题实现分类识别。以上2种特征对于图像的缩放具有不变性,但其特征提取的计算复杂度较高。文献[5]提出利用局部均值模式描述手势特征,采用gentle-Adaboost分类算法实现手势分类和识别。文献[6]提出利用基于尺度不变特征变换特征包(bag of feature-scale invariant feature transformation,BoF-SIFT)模型[7]和支持向量机(support vector machine,SVM)的手势识别。这2种方法对特征提取与描述进行了改善,但BoF-SIFT描述的手势特征丢弃了手势特征点的分布特性,其识别的准确性受到限制。在分类器的选择和设计方面,gentle-Adaboost分类器相对复杂,支持向量机需要选择适当的核函数和参数才能得到有效的识别效果。文献[8]利用分层的特征包算法提取手势图像特征描述子,通过比较2幅手势图像特征描述子的相似度实现手势识别。这种算法取得了很好的识别率,但算法中可调参数较多,识别效果受参数选择影响较大。

综上所述,为了更加有效地进行手势特征的描述和识别,本文提出利用空间金字塔(spatial pyramid matching,SPM)特征包对手势图像特征进行提取和表示,该特征可以有效地描述手势图像的特征点及其分布特性,采用直方图相交核(histogram intersection kernel,HIK)支持向量机对手势特征进行分类和识别。该手势识别算法的优势在于:1)空间金字塔特征包算法通过构造图像金字塔的方法,对每层图像的不同块区域运用BoF-SIFT算法来描述特征点,既能保持BoF-SIFT算法特征简单、解决图像局部特征不一致问题的优点,还在BoF-SIFT的基础上,增加了对特征点的分布特性的描述;2)直方图相交核支持向量机可以用于解决高维、小样本、非线性向量的分类问题,并且不用像其他类型的支持向量机核函数那样需要选择参数。

1 手势识别算法简介

手势识别算法如图 1所示。该方法主要针对单一背景下的手势识别,因此无需对手势图像进行分割预处理。首先将图像分割成不同的大小的块组成图像金字塔,然后对图像金字塔中的每一层的每一块生成BoF-SIFT特征描述,最后将图像金字塔各层特征融合组成手势图像的SPM-BoF特征,并用直方图相交核支持向量机进行特征的分类,实现对未知手势的识别。

图 1 基于SPM-BoF算法的支持向量机手势识别框图 Fig. 1 The diagram of posture recognition based on SPM- BoF algorithm and SVM
2 BoF-SIFT算法提取图像特征

BoF-SIFT算法描述手势图像特征分为2个步骤:1)检测图像特征点并生成特征点的SIFT描述子的特征向量形式;2)利用K-means算法对所有手势图像的SIFT特征进行向量聚类,用聚类中心建立视觉词汇表,通过统计每张手势图像的视觉词汇表直方图作为手势图像的特征表示。

2.1 检测图像关键点并生成关键点的SIFT描述子

尺度不变特征变换(scale invariant feature transform,SIFT)是D. G. Lowe在2004年首次提出的[9]。SIFT特征是一种图像的局部特征,该特征对旋转、尺度、缩放、亮度变化均具有不变性。获取该特征主要分为特征点检测与生成特征点SIFT描述符2个部分。在特征点检测阶段,David提出的构造图像尺度空间金字塔的方法将特征点周围的每个像素的梯度模值和方向定义为:

式中:(x,y)为特征点的坐标,L(x,y)是图像的高斯卷积。构造描述子需要计算特征点周围16×16图像块中各像素的梯度模值和方向。将坐标轴旋转为关键点的方向,以确保旋转不变性。将16×16图像块平均分成16个4×4的子区域,在每个子区域内统计每个采样点的梯度方向,并投影到8个方向上,计算其权值。最终得到16×8=128个梯度信息即为关键点的特征向量。SIFT特征点的SIFT描述过程如图 2所示。

图 2 SIFT描述子的生成过程 Fig. 2 SIFT descriptor generation process
2.2 生成BoF-SIFT描述子

BoF算法是2004年由Csurka引入到图像处理领域[10]。BoF算法叫做作词袋算法,其思想是把一张图像看作包含若干特征的集合,用这些特征的直方图表征图像特征。BoF算法首先要构造视觉词汇表(vsual vocabulary)。通常采用K-means算法将生成的SIFT描述符进行聚类,选取聚类中心作为视觉词汇表,图像的特征点可以利用与其最近邻的视觉词汇表示。通过直方图方式进行量化,得到图像的视觉码字就是该图像的BoF-SIFT特征描述子。

3 空间金字塔特征包手势识别算法 3.1 空间金字塔特征包算法提取图像特征

BoF-SIFT算法通过统计整张图像的特征点特征生成全局直方图,该方法丢失了图像特征点的分布信息,因此不能很好地反应图像特征点的分布特性。空间金字塔算法是一种利用空间金字塔进行图像匹配、识别、分类的算法[10]。将空间金字塔思想与BoF算法结合。通过构造空间图像金字塔,对图像分层运用BoF-SIFT算法,能在保持BoF-SIFT特征原有优势的基础上,有效地表征目标图像的局部特征和全局特征,并能更好地表示图像特征点的分布特性。SPM-BoF算法框图如图 3所示,具体的处理过程如下:

图 3 空间金字塔特征包算法 Fig. 3 The schematic diagram of space pyramid BoF algorithm

1)将原图像分成不同大小的块,构造一个3层的图像金字塔,第1层将整个图像划分为16个子块,第2层将整个图像划分为4个子块,第3层为整个图像。

2)生成图像的SIFT描述子,由于D. G. Lowe提出的检测特征点的方法同时会模糊图像的边缘信息,造成检测到的兴趣点数目较少。本文直接将图像均匀分成若干个像素为16×16的块,以每个小块的中心作为特征点生成SIFT描述子。

3)将所有图像的SIFT描述子用K-means++算法[11]聚类。传统的K-means算法由于初始聚类中心的不同,迭代次数和聚类结果会有很大差别。为了提高算法的稳定性,使用K-means++算法来获得初始聚类中心。从手势样本库的所有手势图像中提取m个特征点,每个特征点的SIFT特征描述向量为xi(i=1,2,...,m),则构成的手势样本库的特征向量空间为X=[x1x2...xm],确定K-means++实现步骤如下:

a)从特征向量空间X=[x1x2...xm]中,任取一个向量为第1个聚类中心c1

b)根据概率

确定下一个初始聚类中心cj=xj。其中D(x)表示向量x到目前已选出的所有聚类中心中的最近距离。

c)重复步骤b),直到选出所有的初始聚类中心C={c1,c2,...,ck}。

d)确定所有的初始聚类中心后,用K-means算法聚类,得到了最终的K个聚类中心。

4)将得到的K个聚类中心作为视觉词汇表,在步骤1)构造的图像金字塔中的每一层图像的子块中用BoF算法进行特征提取。在图像金字塔中的每一层子块中生成K个视觉码字的BoF-SIFT描述子。

5)将每层的直方图描述子加权组合构造整张图像的特征描述子。

3.2 直方图相交核支持向量机

支持向量机(SVM)在解决小样本、非线性及高维的模式识别问题中表现出许多特有的优势[12]。其解决无法线性分类的样本的关键在于核函数的选择。直方图相交核支持向量机利用直方图描述的图像特征能够很好解决图像分类和识别问题[13]。直方图相交核的定义为

式中:AB是图像AimBim的直方图,每个直方图由m个类组成,aibi(i =1,2,…,m)是直方图A、B每个类的值。直方图相交核的优点并不只是能实现利用直方图描述图像的分类,更关键的一点是直方图交叉核不用其他核函数那样选定参数,这样可以减少分类器设计时的参数设定。

4 实验结果与分析

实验通过台湾大学林智仁等开发的SVM模式识别与回归的软件包LIBSVM[14]建立,并构建了直方图相交核函数。利用J. Triesch提供的手势数据库[15]进行了大量实验。该手势库中包含了10个手语字母手势,分别为字母A、B、C、D、G、H、I、L、V、Y。每种手势包含了24个人分别在单一黑色背景、单一白色背景和复杂背景的3类图像,总数据量为719张图像。实验只验证算法在单一背景手势图像识别的有效性,不考虑复杂背景的情况,单一背景图像总数为480张。数据库部分手语图像如图 4所示。所有实验环境为主频3.0 GHz,内存2 GB的PC、MATLAB 2009软件。

图 4 Jochen Triesch数据库的部分图像 Fig. 4 Some images from Jochen Triesch’s database
4.1 参数测试

通过分析算法的执行过程,训练样本数N和K-means++算法聚类中心数K的选择会影响识别结果。在不同参数下进行试验,以最优识别率为选择参数的标准。

1)训练样本数对识别率的影响。

首先确定实验中训练数据和测试数据集的数目。设计训练样本N分别为120、140、160、180、200、220、240张图像。测试样本为240张图像。初始聚类数为K=100。在选择不同数目样本情况下应用直方图相交核支持向量机得到识别率变化曲线如图 5(a)所示。从图中可以看到,当训练样本数N为220时,系统的识别率达到稳定值。

图 5 当不同训练样本数和不同聚类数的平均识别率 Fig. 5 The average recognition rate of different training sample and the number of clustering

2)不同聚类数对识别的影响。

设定不同的聚类数,分别为K=60,70,80,90,100,110,120,在相同样本数的情况下测试算法的识别率。另外,为了测试样本数和聚类中心数对系统的综合影响,对不同输入样本的情况下变化聚类中心数,得到的识别率如图 5(b)所示。可以看出,在聚类中心数K≥100,训练样本数N=220和N=240时,曲线重合,平均识别率达到最大值。因此确定最优参数为聚类中心数K=100,训练样本数N=240。

4.2 不同特征选择对识别算法的影响

使用空间金字塔算法描述手势图像特征时,需要构建图像金字塔,并对各层特征加权融合得到最终的特征。所以权值的选取也是一个影响识别率的重要因素。在4.1节得到的最优参数下,训练样本和测试样本的图像金字塔各层特征分别采用支持向量机进行训练和识别,得到各层特征的识别率混淆矩阵如图 6所示,平均识别率如表 1所示。

图 6 空间金字塔不同层特征得到的识别率混淆矩阵 Fig. 6 Recognition confusion matrix of different image pyramid layers

表 1 训练集和测试集统计数据 Table 1 Statistical data of training sets and test sets
特征向量维数平均识别率/%
11 60088.33
240087.92
310081.67

通过观察图像金字塔各层特征的识别率可以看到,3层特征的平均识别率呈递减趋势,这是因为图像金字塔中不同层数的图像分割块数依次变少。图像金字塔第1层的图像分割块数最多,它比其他2层更能描述特征点的分布特性。本文用遍历所有权值组合的方法得到了最佳识别率下的各层权值,具体过程为设权值矩阵为A=[a1 a2 a3],其中ai∈[0.1,1.0](i=1,2,3),变化率为Δ=0.1,所有权值组合数为103=1 000。通过实验,选取各层特征的权值分别为0.5、0.5和0.2,此时系统具有最高的识别率。

4.3 实验结果与其他文献的比较

利用测试得到的最佳参数,重新从数据库中选取12个人的40张手语图像进行实验。得到各个手语的识别混淆矩阵如图 7所示,可以看到,融合后的特征的识别率得到进一步改善。

图 7 最佳参数下不同手语手势识别率混淆矩阵 Fig. 7 Recognition confusion matrix with optimal parameters

将本文的手势识别方法与在Jochen Triesch数据库中简单背景进行测试的其他方法进行比较,比较结果见表 2所示。从实验结果中可以看出,提出的方法识别准确率高于文献[16, 17]的手势识别方法。实验结果验证了空间金字塔与直方图相交核支持向量机应用在手势识别系统中的优越性。

表 2 不同方法的识别结果 Table 2 Comparison results of different methods
%
算法识别方法识别结果
张秋余的方法[17]BoF-SIFT特征+
RBF核支持向量机
81.67
A. Just的方法[16]MCT特征+AdaBoost89.97
实验1BoF-SIFT特征+
直方图相交核支持向量机
86.25
实验2空间金字塔特征包+
RBF核支持向量机
86.67
本文方法空间金字塔特征包+
直方图相交核支持向量机
92.92
5 结束语

本文提出了一种基于空间金字塔特征包的特征对手势图像进行表示,该方法相比于传统的BoF-SIFT方法的优势在于能同时从局部和全局描述手势图像的特征点,还能描述特征点的分布特性。采用直方图相交核支持向量机对所提取特征进行识别,该方法的优点在于无需选择参数,增加了系统的稳定性。实验表明了新方法的有效性。后续工作将考虑与其他识别算法的融合,以进一步提高识别的准确率。

参考文献
[1] 隋云衡, 郭元术. 融合Hu矩与BoF-SURF支持向量机的手势识别[J]. 计算机应用研究, 2013, 31(3): 953-956, 960. SUI Yunheng, GUO Yuanshu. Hand gesture recognition based on combining Hu moments and BoF-SURF support vector machine[J]. Application Research of Computers, 2013, 31(3): 953-956, 960.
[2] 张良国, 吴江琴, 高文, 等. 基于Hausdorff距离的手势识别[J]. 中国图象图形学报, 2002, 7(11): 1144-1150.ZHANG Liangguo, WU Jiangqin, GAO Wen, et al. Hand gesture recognition based on Hausdorff distance[J]. Journal of Image and Graphics, 2002, 7(11): 1144-1150.
[3] 黄国范, 毛红阁. 基于切线距离的中国手指语字母手势识别[J]. 吉林化工学院学报, 2013, 30(3): 79-81. HUANG Guofan, MAO Hongge. Tangent distance-based Chinese finger alphabet gesture recognition[J]. Journal of Jilin Institute of Chemical Technology, 2013, 30(3): 79-81.
[4] 张汗灵, 李红英, 周敏. 融合多特征和压缩感知的手势识别[J]. 湖南大学学报:自然科学版, 2013, 40(3): 87-92. ZHANG Hanling, LI Hongying, ZHOU Min. Hand posture recognition based on multi-feature and compressive sensing[J]. Journal of Hunan University: Natural Sciences, 2013, 40(3): 87-92.
[5] 丁友东, 庞海波, 吴学纯, 等. 一种用于手势识别的局部均值模式纹理描述子[J]. 应用科学学报, 2013, 31(5): 526-532.DING Youdong, PANG Haibo, WU Xuechun, et al. Local mean pattern texture descriptor for gesture recognition[J]. Journal of Applied Sciences, 2013, 31(5): 526-532.
[6] DARDAS N H, GEORGANAS N D. Real-time hand gesture detection and recognition using bag-of-features and support vector machine techniques[J]. IEEE Transaction on Instrumentation and Measurement, 2011, 60(11): 3592-3607.
[7] JIANG Yugang, NGO C W, YANG Jun. Towards optimal bag-of-features for object categorization and semantic video retrieval[C]//Proceedings of the 6th ACM International Conference on Image and Video Retrieval. New York, USA, 2007: 494-501.
[8] CHUANG Yuelong, CHEN Ling, CHEN Gencai. Hierarchical bag-of-features for hand gesture recognition[C]//Proceedings of 18th IEEE International Conference on Image Processing. Brussels, Belgium, 2011: 1777-1780.
[9] LOWE D G. Distinctive image features from scale-invariant keypoints[J]. International Journal of Computer Vision, 2004, 60(2): 91-110.
[10] LAZEBNIK S, SCHMID C, PONCE J. Beyond bags of features: Spatial pyramid matching for recognizing natural scene categories[C]//Proceedings of the 2006 IEEE Computer Society Conference on Computer Vision and Pattern Recognition. New York, USA, 2006: 2169-2178.
[11] ARTHER D, VASSILVITSKII S. K-means++: the advantages of careful seeding[C]//Proceedings of the Eighteenth Annual ACM-SIAM Symposium on Discrete Algorithms. New York, USA, 2007: 1027-1035.
[12] 易晓梅, 吴鹏, 刘丽娟, 等. 一种基于改进支持向量机的入侵检测方法研究[J]. 计算机工程与应用, 2012, 48(15): 74-77.YI Xiaomei, WU Peng, LIU Lijuan, et al. Intrusion detection method based on improved SVM[J]. Computer Engineering and Applications, 2012, 48(15): 74-77.
[13] BARLA A, ODONE F, VERRI A. Histogram intersection kernel for image classification[C]//Proceedings of International Conference on Image Processing. Barcelona, Spain, 2003: 513-516.
[14] CHANG C C, LIN C J. LIBSVM: a library for support vector machines.[EB/OL]. [2014-05-10].
[15] TRIESCH J, MALSBURG C, MARCEL S. Hand posture and gesture datasets: Jochen Triesch static hand posture database.[EB/OL]. [2014-05-10]. .
[16] JUST A, RODRIGUEZ Y, MARCEL S. Hand posture classification and recognition using the modified census transform[C]//Proceedings of the IEEE International Conference on Automatic Face and Gesture Recognition. Southampton, UK, 2006: 351-356.
[17] 张秋余, 王道东, 张墨逸, 等. 基于特征包支持向量机的手势识别[J]. 计算机应用, 2012, 32(12): 3392-3396. ZHANG Qiuyu, WANG Daogdong, ZHANG Moyi, et al. Hand gesture recognition based on bag of features and support vector machine[J]. Journal of Computer Applications, 2012, 32(12): 3392-3396.
DOI: 10.3969/j.issn.1673-4785.201405054
中国人工智能学会和哈尔滨工程大学联合主办。
0

文章信息

余思泉, 曹江涛, 李平, 姬晓飞
YU Siquan, CAO Jiangtao, LI Ping, JI Xiaofei
基于空间金字塔特征包的手势识别算法
Hand gesture recognition based on the spatial pyramid bag of features
智能系统学报, 2015, 10(03): 429-435
CAAI Transactions on Intelligent Systems, 2015, 10(03): 429-435.
DOI: 10.3969/j.issn.1673-4785.201405054

文章历史

收稿日期:2014-05-26
网络出版日期:2015-06-04

相关文章

工作空间