您好, 访客   登录/注册

基于改进卷积神经网络的手势识别

来源:用户上传      作者:

  摘 要:为了解决传统卷积神经网络(CNN)由于手势背景复杂和手势姿态多样性而导致准确率不高的问题,提出一种改进卷积神经网络方法对手势进行分类识别。首先对手势图像做基于肤色阈值的手势分割处理,然后用Dropout优化后的卷积神经网络对手势图像特征进行提取和分类识别。在不同环境下对手势识别并与传统方法进行对比实验。实验表明,改进CNN识别准确率为96.92%,传统CNN识别准确率为93.58%,证明改进CNN识别准确率较传統CNN有一定提高。
  关键词:改进卷积神经网络;手势识别;准确率;图像处理;过拟合;Dropout
  中图分类号:TP39 文献标识码:A 文章编号:2095-1302(2020)07-00-02
  0 引 言
  随着人工智能技术的飞速发展,其在人机交互[1]领域的应用也越来越广泛,手势识别[2]正是其中之一。实现手势识别的核心是对手势特征的提取[3]。传统的识别算法中多是由人工设计提取特征,然后再用分类器分类识别,例如HMM-SVM[4],Kinect特征匹配法[5]等。这项工作繁琐、费时,而且还会因为提取特征误差导致识别率降低。近年来,深度学习在识别领域有很大进展,谢峥桂[6]在对手势识别的研究中首先对手势图像进行手势分割预处理,然后再用传统CNN进行特征提取和识别。张起浩等[7]在做手势识别研究中利用Leap Motion结合CNN进行识别,首先利用Leap Motion获取手势图像并进行灰度处理,然后用CNN算法对图像进行特征提取及分类。然而考虑到手势的复杂性、多样性特点,传统卷积神经网络已不能满足对其鲁棒性的识别[8]。随着卷积神经网络的深入学习,很容易出现过拟合问题,大大降低了识别准确率。为此,本文提出的方法是在识别之前对手势图像进行手势分割处理,并在传统卷进神经网络中加入Dropout层。通过增加网络连接的随机性和稀疏性来提高泛化能力,解决因为过拟合而造成的识别率低的问题。
  1 手势图像数据集制作及预处理
  本文手势数据集的制作利用python中的OpenCV调用摄像头采集录制不同手势,然后将不同手势定义相应的标签生成主文件。为满足手势训练集的降噪要求,在采集过程中对手势图像做基于肤色阈值的二值化预处理。处理过程主要分为如下三步:
  (1)选用YCrCb作为手部肤色的颜色空间;
  (2)在空间下建立手部肤色的高斯模型;
  (3)对模型做二值化处理,二值化处理过程图像如图1所示。
  2 卷积神经网络及改进
  2.1 传统卷积神经网络
  卷积神经网络结构雏形于1998年由Yann Lecun提出[9]。与人工神经网络不同,这是一种深度神经网络。它拥有很多网络层数,主要分为卷积层、池化层和全连接层。卷积层中前一层输入更高层次特征到下一层并形成特征图,池化层可以对特征图进行降维以减少不必要的数据。全连接层总结归纳池化层输入的特征信息,通过分类器进行分类识别。卷积神经网络的一个优点在于权值共享,使得网络复杂度和训练时的运算复杂度大大降低,因此被广泛应用于图像识别领域。本文应用卷积神经网络对手势进行识别,大大减小了传统人工提取特征的难度,其网络结构如图2所示。
  在卷积层中,卷积核用于提取图像中的特征信息。不同的卷积核先与上一层得到的特征图作卷积运算,然后加上偏置值得到输出,最后通过合适的激活函数推出卷积结果,即输出特征图。卷积运算如下所示:
  式中:ylj为当前卷积层的第j个特征图;f()表示激活函数,为降低网络复杂度,本文使用ReLU()型激活函数;Mj为全部的输入特征图;wi, j为i与j间的卷积核;blj表示偏置。
  2.2 Dropout优化
  随着卷积神经网络对图像特征学习的深入,其网络架构层数变得越来越多。随着卷积神经网络的层数不断增加,网络训练复杂度也随之上升。在数据集少的条件下还会导致网络模型泛化能力下降,识别率降低。为此,本文在传统模型的最大池化层后加入Dropout层,在模型训练时会增加网络神经连接的不确定性,使网络变得更稀疏,以此来提高模型的泛化能力,解决过拟合问题。加入Dropout[10]后的全连接层对比如图3所示,它通过随机删掉网络中p=0.5(0<p<1)的隐藏神经元(虚线连接的是删除的神经元),输入、输出神经元保持不变。通过该操作可为特定的样本提供合适的分类,即便一些激活参数丢弃,此模型也不会因对其样本过于匹配而导致过拟合。
  2.3 改进卷积神经网络
  为提高手势识别准确率,本文设计的适用于手势识别分类的改进卷积神经网络模型结构如图4所示。
  3 实验与结果分析
  本文实验数据集包括6种表示不同数字1,2,3,4,5,6的手势图片,如图5所示,每个数字400张,共计
  2 400张。图片大小统一为32 cm×32 cm,按比例选取其中的80%作为训练样本,20%为测试样本。分别训练和测试改进卷积神经网络模型和传统卷积神经网络模型,并对其准确率做对比实验。两模型测试准确率与迭代步数的曲线如图6所示。
  从图6中可以看出,准确率在迭代步数达到50时趋于饱和,改进CNN模型准确率为96.92%,CNN模型准确率为93.58%。即改进卷积神经网络模型比传统卷积神经网络模型在零件识别方面的准确率更高。
  4 结 语
  本文设计了一种改进卷积神经网络模型,分别对6种手势进行识别。首先,在训练模型之前对手势图像数据做增强处理,使模型训练更加充分。然后,运用Dropout优化传统模型,对图像进行特征提取,多次训练得到高性能模型。最后,用测试样本图片对改进模型进行测试,并与传统模型作对比实验。实验结果表明:改进卷积神经网络模型平均识别准确率为96.92%,传统卷积神经网络模型为93.58%,改进模型准确率比传统模型识别率提高了3.34%。
  参考文献
  [1]范向民,范俊君,田丰,等.人机交互与人工智能:从交替浮沉到协同共进[J].中国科学:信息科学, 2019, 49(3):361-366.
  [2]宋一凡,张鹏,刘立波.基于视觉手势识别的人机交互系统[J].计算机学,2019,46(S2):570-574.
  [3]刘小建,张元.基于多特征提取和SVM分类的手势识别[J].计算机工程与设计,2017,38(4):953-958.
  [4] ROSSI M,BENATTI S,FARELLA E,et al. Hybrid EMG classifier based on HMM and SVM for hand gesture recognition in prosthetics [C]// IEEE International Conference on Industrial Technology. IEEE,2015.
  [5]田元,王学璠,王志锋,等.基于Kinect的实时手势识别方法[J].计算机工程与设计,2018,39(6):1721-1726.
  [6]谢铮桂.基于改进的卷积神经网络的手势识别的研究[J].计算机应用与软件,2019,36(3):192-195.
  [7]张起浩,蒋少国,蒋青山,等.基于Leap Motion和卷积神经网络的手势识别[J].物联网技术,2019,9(10):47-49.
  [8]杨红玲,宣士斌,莫愿斌.基于卷积神经网络的手势识别[J].计算机技术与发展,2018,28(7):11-14.
  [9]周飞燕,金林鹏,董军.卷积神经网络研究综述[J].计算机学报,2017,40(6):1229-1251.
  [10]任晓霞.基于Dropout深度卷积神经网络的ST段波形分类算法[J].传感技术学报,2018,31(8):1217-1222.
转载注明来源:https://www.xzbu.com/8/view-15280235.htm