APP下载

基于改进CNN与SVM的手势识别研究

2020-12-07孟彩茹宋京孙明扬

现代电子技术 2020年22期
关键词:手势识别图像分割特征提取

孟彩茹 宋京 孙明扬

摘  要: 手势识别在人机交互中起着重要的作用,然而手势形态和背景的复杂多样性给手势识别过程带来难题。为了降低特征提取的难度和提高识别准确率,设计一种改进卷积神经网络(CNN)和支持向量机(SVM)模型来对手势进行识别。该模型首先对手势图像分割处理和数据增强处理,然后用Inception模块改进后的CNN完成对手势特征的提取,最后通过SVM对不同手势分类识别。实验结果表明,该模型在自建手势数据集下平均识别率为98.13%,在MNIST数据集下平均识别率为98.95%,同一数据集下较传统模型识别率均有提高。

关键词: 手势识别; CNN; SVM; 特征提取; 图像分割; 数据增强

中图分类号: TN915?34; TP183                  文献标识码: A                       文章编号: 1004?373X(2020)22?0128?04

Abstract: Gesture recognition plays an important role in human?computer interaction. However, the complex diversity of gesture shape and background brings difficulties to the process of gesture recognition. In order to reduce the difficulty of feature extraction and improve the recognition accuracy, an improved convolution neural network (CNN) and support vector machine (SVM) model is designed to recognize gestures. In this model, the gesture image segmentation and data enhancement are performed, the CNN improved by the Inception module is used to complete the gesture features extraction, and different gestures are classified and recognized by SVM. The experimental results show that the average recognition rate of the model is 98.13% under the self?built gesture dataset and is 98.95% under the MNIST dataset, which are all higher than those of the traditional model under the same dataset.

Keywords: gesture recognition; CNN; SVM; feature extraction; picture segmentation; data enhancement

0  引  言

手势识别是计算机视觉领域中一个具有挑战性的问题,多年来一直是人们研究的热点[1]。在手势识别领域,研究人员使用了许多不同的算法,取得了许多成果。M Rossi等结合两种不同结构分类器来对手势进行识别,人工先提取图像特征,用隐马尔可夫(HMM)模型来区分数据,后用SVM对手势肌电信号进行识别[2]。田园等利用Kinect的深度摄像头去获取手部深度信息,记录特征点坐标,确定手指尖位置,然后用特征点匹配的方法识别手势[3]。这些方法需要人工设计提取手势特征,这不仅是一项繁琐费时的工作,而且还会因为提取精度低导致识别准确率不高。近些年来,深度学习在人工智能领域取得很大进步。许悦雷等先利用主成分分析算法(PCA)的降维处理技术优化CNN的权值,再用优化后的CNN对手势识别[4]。石雨鑫等结合CNN与随机森林(RF)两种算法进行手势识别,先对手势进行分割处理,接着利用CNN进行特征提取,最后由随机森林分类器完成手势识别[5]。谢峥桂先对手势图像进行手势分割预处理,然后再用CNN进行特征提取和识别[6]。

目前手势识别仍然具有广泛的实际应用和现实意义,如识别手语促进与聋哑人的交流、加强控制智能機器人使用户更加自然、辅助汽车驾驶提高安全度等。手势识别需要一个识别率高且泛化能力强的模型,为此本文设计了一种改进CNN?SVM模型用于手势识别,该模型首先对手势图像进行手势分割处理和数据增强处理,然后用加入Inception模块改进后的CNN完成对手势特征的提取,最后通过SVM分类识别。对手势进行预处理,减少模型参数,降低了算法复杂度;加入Inception模块提高了对图像尺度的适应性;利用SVM分类提高了模型泛化能力和准确率。为验证模型性能,在两种数据集下进行了测试。实验结果表明,本文设计的模型较传统模型泛化能力更强,分类更准确,识别率均达到98%以上。

1  手势图像的预处理

1.1  手势分割处理

为了降低手势图像的复杂多样性对手势特征提取和训练过程中的影响,提高特征提取和识别的可靠性,需要先对手势图像进行分割处理。手势分割的方法有很多,常见的有肤色分割法、轮廓分割法、SS?ROI分割法等。观察手势图像,很容易看出手部肤色是区别于其他物体的首要特征,本文选用肤色分割法对手势图像做分割处理。首先是颜色空间的选取,因为手部肤色在不一样颜色空间中有着不一样的区域分布,颜色空间有很多种,常用的有RGB 颜色空间、HSV 颜色空间和 YCrCb 颜色空间等。因为在YCrCb颜色空间中,肤色基本上不受亮度的影响,肤色点多数都落在Cr,Cb分量上,即在肤色分割过程中有不错的效果和稳定性[7]。所以本文选择 YCrCb 空间对手势图像分割,手势图像映射到 YCrCb 空间所用关系式如下:

1.2  数据集增强处理

为了训练更加有效的深度学习模型,提高模型对新图片的适应能力。考虑到手势识别过程中实际情况的复杂性,如光照强度、手势的方向、噪声数据等影响,本文还对手势图片做了数据增强处理,包括对图片的随机上下翻转、随机左右翻转、随机裁剪、随机设置图片的亮度、随机添加噪声扰动。

2  改进的CNN与SVM混合模型

2.1  传统CNN结构

卷积神经网络于1998年由Yann Lecun提出,该算法擅长处理识别各种图像[9]。卷积神经网络是一种具有深度监督学习结构的多层神经网络结构,可以看作是由两部分组成:自动特征提取器和可训练分类器。特征提取器包含特征映射层:卷积层、池化层以及全连接层。在本文中,卷积层从原始图像中提取基本手势特征;池化层再进一步提取手势的主要特征;在全连接层中汇总可以区别手势的各个部分特征;最后由分类器进行手势的预测识别。卷积神经网络结构如图2所示。

2.2  传统CNN的改进

2.2.1  Inception模块

为了降低网络复杂度,提高识别准确率和网络模型对尺度的适应性。本文添加Inception 模块来限制输入信道的数量,这样在同一层级网络上可运行多个尺寸的滤波器,即让网络层级变得更宽而不是更深。Inception模块最开始出现于谷歌团队提出的GoogLeNet[10]网络中,它利用3个不同大小的滤波器(1×1,3×3,5×5)对上层进行卷积操作,并且其还可以执行最大池化。最后全部子层的输出连接在一起传送至下一个模块。Inception 结构[11]如图3所示。

2.2.2  SVM分类器

本文使用的卷积神经网络可以准确地提取图像中的手势特征[12],在此基础上,使用一些传统的分类方法也能实现较高精度的分类。传统分类方法有支持向量机分类、朴素贝叶斯分类、随机森林分类等。其中,SVM学习[13]的超平面是距离各个类别样本点最远的平面,用于分类的可靠性是机器学习工具中最好的。其采用最大类间分类平面的原则对样本数据分类,相比于Softmax具有更强的泛化推广能力和更高的识别准确率。故本文选用SVM分类器替代原CNN模型中的Softmax分类器。SVM分类器替代原CNN模型中的Softmax分类器具体操作如下:

1) 训练原始CNN网络得到较高的识别率;

2) 将训练模型中损失函数Softmax Loss更改为Hinge Loss;

3) 将全连接层之前的学习率系数lr_mult全部改为0,固定特征提取完毕;

4) 重新训练时就只训练最后的SVM分类器,训练一段时间直至CNN?SVM模型完成。

2.3  混合模型网络结构

参照第2.1节传统卷积网络结构图,结合2.2节,本文设计的用于手势识别改进卷积神经网络结构由3个卷积层、3个池化层、1个全连接层、3个Inception结构以及1個SVM分类层组成。其混合模型网络结构示意图如图4所示。

3  混合模型训练与测试结果分析

本文采用自建手势数据集训练和测试模型,随后在经典Minist数据集下验证。训练模型过程中使用随机梯度下降法来最小化训练模型中的误差,即每完成一次迭代时重新评估和更新一次权值。这个重复迭代到一定次数的过程可以找出使训练数据最小误差的模型的系数。自建手势数据集包含表示数字1~10的10种手势如图5所示,每种手势有800张且手势形态不一,共计8 000张手势图像。选取其中4 000张作为训练样本,在训练过程中运用数据增强技术提高模型的泛化能力,其余4 000张作为测试集,验证模型性能的优劣。

4  结  语

本文设计了基于改进卷积神经网络和支持向量机的模型对手势进行识别。该模型主要修改了传统CNN网络结构加入Inception模块并结合SVM算法,首先对手势图像进行分割处理和数据增强处理,然后利用该模型对手势进行识别分类。实验结果表明,改进卷积神经网络和支持向量机模型比传统模型具有更好的识别性能。在接下来的研究中,将针对更加复杂的背景,如手部遮挡等情况进行识别研究,同时尝试多种图像预处理算法,以求得到更精准的识别率。

参考文献

[1] 朱雯文,叶西宁.基于卷积神经网络的手势识别算法[J].华东理工大学学报(自然科学版),2018,44(2):260?269.

[2] ROSSI M, BENATTI S, FARELLA E, et al. Hybrid EMG classifier based on HMM and SVM for hand gesture recognition in prosthetics [C]// 2015 IEEE International Conference on Industrial Technology. Seville: IEEE, 2015: 301?311.

[3] 田元,王学璠,王志锋,等.基于Kinect的实时手势识别方法[J].计算机工程与设计,2018,39(6):1721?1726.

[4] 史鹤欢,许悦雷,马时平,等.PCA预训练的卷积神经网络目标识别算法[J].西安电子科技大学学报,2016,43(3):161?166.

[5] 石雨鑫,邓洪敏,郭伟林.基于混合卷积神经网络的静态手势识别[J].计算机科学,2019,46(z1):165?168.

[6] 谢铮桂.基于改进的卷积神经网络的手势识别的研究[J].计算机应用与软件,2019,36(3):192?195.

[7] SHAIK B K, GANESAN P, KALIST V, et al. Comparative study of skin color detection and segmentation in HSV and YCbCr color space [J]. Procedia computer science, 2015, 57: 41?48.

[8] 杨世强,弓逯琦.基于高斯模型的手部肤色建模与区域检测[J].中国图象图形学报,2016,21(11):1492?1501.

[9] 周飞燕,金林鹏,董军.卷积神经网络研究综述[J].计算机学报,2017,40(6):1229?1251.

[10] SZEGEDY C, LIU W, JIA Y Q, et al. Going deeper with convolutions [C]// 2015 IEEE Conference on Computer Vision and Pattern Recognition. Boston: IEEE, 2015: 17?33.

[11] SZEGEDY C, VANHOUCKE V, IOFFE S, et al. Rethinking the inception architecture for computer vision [C]// Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas: IEEE, 2016: 2818?2826.

[12] 温静,安国艳,梁宇栋.基于CNN特征提取和加权深度迁移的单目图像深度估计[J].图学学报,2019,40(2):248?255.

[13] 黄孝喜,李晗雨,王荣波,等.基于卷积神经网络与SVM分类器的隐喻识别[J].数据分析与知识发现,2018,2(10):77?83.

猜你喜欢

手势识别图像分割特征提取
基于Daubechies(dbN)的飞行器音频特征提取
Bagging RCSP脑电特征提取算法
基于手势识别的工业机器人操作控制方法
基于红外的非接触式手势识别系统设计
基于嵌入式的智能手表设计
一种改进的分水岭图像分割算法研究
一种图像超像素的快速生成算法
基于鲁棒性的广义FCM图像分割算法
复杂背景下的手势识别方法
基于MED和循环域解调的多故障特征提取