APP下载

基于卷积神经网络的手势识别算法设计与实现

2017-11-02孙旭飞吴一鹏

网络安全与数据管理 2017年20期
关键词:手势卷积神经网络

张 斌,孙旭飞,吴一鹏

(福州大学 物理与信息工程学院,福建 福州 350108)

基于卷积神经网络的手势识别算法设计与实现

张 斌,孙旭飞,吴一鹏

(福州大学 物理与信息工程学院,福建 福州 350108)

为了克服传统手势识别方法复杂的人工提取特征值操作,引入卷积神经网络进行手势识别,该算法可以直接对原始图像进行处理,具有局部感知域、权值共享和池化等特点,可以有效提取图像特征。使用Marcel手势识别数据集对框架进行训练,采用交叉验证的方法对系统进行评估,实验结果表明该方法可以识别经过训练的手势,且精确度高,鲁棒性强。

卷积神经网络;局部感受域;权值共享;池化;手势识别

0 引言

近年来,人机交互行为越来越多地出现在日常生活中,特别是随着计算机视觉技术的快速发展,人机交互技术得到长足的进步。按照目前的发展趋势,以人为中心的人机交互技术势必会取代以计算机为中心的人机交互技术[1]。而手势识别的研究正符合这一潮流。手势识别为许多设备提供了人机交互的方式。采用手势操作设备,首先需要预设手势对应的控制指令,然后利用拍照、视频切割等方法,采集不同的手势,最后设备识别出手势所代表的指令,控制设备从而达到人机交互[2]。传统的手势识别方法[3-4]需要人工提取特征值,这是一个费时费力的方法,为了达到更好的精度需要提取大量的特征值,甚至需要依赖专业知识,因此特征值的数量和质量成为了传统手势识别方法的瓶颈。为了突破该瓶颈,本文提出了一种基于卷积神经网络的手势识别算法。

卷积神经网络是一种常见的深度学习架构,受生物自然视觉认知机制启发而来,经过不断的发展改进,最终发展成为一个非常适合用于处理图像和音频的神经网络[5]。由于卷积神经网络可直接从原始图像数据中提取特征的特性,目前它的运用领域已经十分广泛,比如手写字符识别、人脸识别、人眼检测[6]、车牌字符识别[7]。

1 卷积神经网络

卷积神经网络是神经网络的一种,它的结构与之前其他神经网络最大的不同在于它每一层的数据不是由若干个向量节点构成,而是由若干个矩阵数据节点构成。在计算时采用的是矩阵卷积的形式,所以命名为卷积神经网络。卷积神经网络主要用于识别位移、缩放及旋转不变性的二维数据[8],且它的局部感知特性和权值共享网络与现实世界中的动物神经网络相似,因此它在图像处理和音频识别等方面有特殊的优势[9-10]。

1.1 网络特征

卷积神经网络基本结构主要包括两部分:特征提取层和特征映射层。特征提取层中的每个输入与前一层输出的局部接受域相连,以提取该局部的特征,并且该特征与其他特征的相对位置关系也随之确定;特征映射层中每个特征映射为一个平面,上面的权值全部相等,多个特征映射组成一个计算层。因为该层中每个映射平面内权值共享,使得网络中的参数个数大量减少。

特征提取层中主要部分为卷积层和池化层,网络中的每一个卷积层都紧跟着一个池化层,对特征进行二次提取,这种特殊的提取结构减小了特征数量维度,降低了计算量。

卷积层是对输入进行卷积运算。卷积运算的本质是一个卷积核(特征矩阵)在输入的图像矩阵上按照一定的规则移动,并与图像矩阵上对应位置的元素相乘后结果相加得到的一个值。当卷积核移动完毕时,就得到新的图像矩阵,新矩阵就是上一层图像矩阵的特征,其数学表达式如式(1)所示:

(1)

(2)

池化层也称下采样层,其目的是减少特征映射的数量,对特征进行降维操作,因为在计算量非常大的时候,要形成一个特征输入过多的分类器十分不易。并且通过降维能过滤掉带噪声的特性,减少了运算复杂度,增强有效的图像识别特征。池化层一般的形式如式(3)所示:

(3)

其中,down()表示池化函数,一般有最大池化、平均池化等,本文使用最大池化函数。它是对该层输入图像的一个n×n矩阵大小的区域求最大值。式中β为加权系数,b为偏置系数。

1.2 基于卷积神经网络的算法结构设计

本文采用8层结构的卷积神经网络,包括输入层、2层卷积层(C)、2层抽样层(S)、2层全连接层(F)和输出层,如图1所示。

图1 手势识别网络结构示意图

卷积神经网络模型的输入层直接读取原始图像,并将图片按固定数量随机打乱顺序封装成批输入,防止读入的一批图片都是同一手势,保证每次训练能包含多数手势。C1层与C3层为卷积层,作用是对上一层的输出结果进行卷积得出图像的特征矩阵,本文是用5×5的卷积核对输入图像抽取特征,生成特征图。S1层与S2层为池化层,对卷积层的输出进行子采样,池化窗口大小为3×3。F1层与F2层是全连接层,该层的每个神经元与上一层所有输出神经元相连接。最终由F2层把特征数据向量化并连接到输出层。输出层是一个分类器,该层的神经元数量由识别的种类确定,本文有6类手势用于识别,因此有6个神经元。输出层采用Softmax回归模型,该模型是一个将目标变量分为K类的算法,建模使用的分布是多项式分布。Softmax模型可以将F2层传过来的特征值经过计算转换成相应的概率。

1.3 卷积神经网络模型训练

本文的模型是一个串联结构,根据图1的结构,每一层的输入为上一层的输出。模型训练是一个迭代的过程,将图像数据封装成批,分批输入模型,优化模型参数。本文使用的优化策略是随机梯度下降算法。衡量优化效果的标准是损失函数的解,损失函数是一种衡量预测值与真实值之间的相关程度的函数,目标是求每个批次中所有样本的平均损失。因此合适大小的批次对模型的优化程度和速度有一定的提高。本文选用交叉熵函数作为模型的损失函数。交叉熵函数起初常用在信息压缩编码技术中,目前已经发展成为深度学习领域中的重要技术。它的定义如式(4)所示,式中y是预测的概率分布,y′是实际的分布。交叉熵用于衡量预测与真实之间的差距性,该值越小说明预测与真实越相似。

(4)

本文使用随机梯度下降优化算法降低损失函数的解。梯度下降是在每次迭代中对每个变量,按照损失函数在该变量当前点负梯度方向前进一定步长,更新对应的参数值,以达到最小化损失函数。这里的步长就是学习率,它是优化算法中的一个重要参数,它的初始值对算法有很大的影响,过大可能导致无法优化,太小有可能会导致函数得到的是局部最优。

学习率在训练过程中呈指数形式衰减,学习率的衰减函数如式(5)所示。公式中y为新的学习率,x为当前学习率,dr为学习率的衰减因子,s为当前训练步数,ds为衰减宽带,控制衰减周期。学习率的衰减可以加快算法的收敛速度。

(5)

2 实验过程及结果分析

本文的手势识别算法是基于Python语言和TensorFlow深度学习框架开发的,采用类似LeNet5的CNN模型框架[6]。TensorFlow是Google公司发布的第二代机器学习系统,它采用数据流图的形式构建网络模型,具有很强的数值计算能力和高度的灵活性,并且提供了大量神经网络的接口,简化构建卷积神经网络模型的代码任务。本文使用的数据库是Marcel手势数据库,该库包含6类手势图片,其中训练集有4 872张图片,测试集有1 057张图片。

2.1 图像的预处理

卷积神经网络可以直接对原始图像进行处理分析,本文随机对数据集中的图片进行翻转、亮度调节、对比度更改等操作,加入噪声可防止模型过拟合。这样可以扩大样本集,充分训练模型参数,提高模型的准确率。

2.2 实验结果分析

本算法利用TensorFlow提供的可视化系统监控卷积神经网络的训练,跟踪模型中重要参数在训练过程中的变化趋势。图2与图3是实验输出的图表,其中图2是学习率的变化趋势,它的横坐标为当前训练的步数,纵坐标为学习率的值。由图可知学习率是衰减的。图3是训练过程中总体的loss值,它是损失函数的解,loss值总体趋势降低表明训练的效果越来越好。

图2 学习率变化趋势

图3 loss值变化趋势

模型训练完成后,利用测试集评估模型,可以得出该模型对手势的识别率。手势识别总体测试结果如表1所示,可以看出对Marcel手势数据库的平均识别率达88.7%,说明该模型对手势的识别率高。由表中克制手势C识别率较其他手势识别率低,分析训练集发现手势C展示的是手的侧面,背景占据图片过多影响手势识别准确率。

表1 手势识别结

3 结论

本文引入卷积神经网络实现手势识别算法,通过对样本数据学习训练,获得图像的特征矩阵,避免了传统手势识别方法复杂的人工提取特征值等操作所可能导致的图像信息的丢失,特征提取不完整等缺点。总结了卷积神经网络在图像处理中的优点:可以直接对原始图像进行处理;局部感知域和权值共享减少了参数空间,降低了算法的复杂度;池化技术增强了卷积网络的鲁棒性,避免了图片畸变导致识别错误。本文通过设计模型,并对模型进行实验,验证了卷积神经网络手势识别算法的精确性和鲁棒性。为了提高识别的准确率,下一步应该进一步优化模型的网络结构,寻找手势识别最优的卷积神经网络模型。

[1] 吴杰.基于深度学习的手势识别研究[D].成都:电子科技大学,2015.

[2] 杜晓川.基于视觉的动态手势识别相关技术研究及实现[D]. 成都:电子科技大学, 2012.

[3] 徐鹏, 薄华. 基于卷积神经网络的人脸表情识别[J]. 微型机与应用, 2015, 34(12):45-47.

[4] 邓柳,汪子杰.基于深度卷积神经网络的车型识别研究[J]. 计算机应用研究, 2016, 33(3):930-932.

[5] 王振, 高茂庭. 基于卷积神经网络的图像识别算法设计与实现[J]. 现代计算机(普及版), 2015(7):61-66.

[6] TIVIVE F H C, BOUZERDOWN A. An eye feature detector based on convolutional neural network[C].Eighth International Symposium on Signal Processing and ITS Applications. IEEE, 2005:90-93.

[7] 赵志宏,杨绍普,马增强.基于卷积神经网络LeNet-5的车牌字符识别研究[J].天津:系统仿真学报,2010, 22(3):638-641.

[8] 王强.基于CNN的字符识别方法研究[D].天津:天津师范大学,2014.

[9] AN D C, MEIER U, MASCI J, et al. Flexible, high performance convolutional neural networks for image classification[C].IJCAI 2011, Proceedings of the International Joint Conference on Artificial Intelligence, Barcelona, Catalonia, Spain, July. DBLP, 2011:1237-1242.

[10] KRIZHEVSKY A, SUTSKEVER I, HINTON G E. ImageNet classification with deep convolutional neural networks[C]. International Conference on Neural Information Processing Systems. Curran Associates Inc., 2012:1097-1105.

Design and implementation of gesture recognition algorithm based on convolution neural network

Zhang Bin, Sun Xufei, Wu Yipeng

(College of Physics and Information Engineering, Fuzhou University, Fuzhou 350108, China)

In order to overcome the traditional gesture recognition method of complex artificial extraction of characteristic value, this paper introduces the convolution neural network into gesture recognition. The algorithm can deal with the original gesture image directly, and has local receptive fields, shared weights and pooling and so on ,which can effectively extract the image features. In this paper, the Marcel gesture recognition dataset is used to train the framework. The cross validation method is used to evaluate the system. The experimental results show that the method can identify trained gestures with high accuracy and robustness.

convolutional neural network; local receptive fields; shared weights; pooling; gesture recognition

TP391.9

A

10.19358/j.issn.1674- 7720.2017.20.015

张斌,孙旭飞,吴一鹏.基于卷积神经网络的手势识别算法设计与实现[J].微型机与应用,2017,36(20):51-53.

2017-03-31)

张斌(1992-),通信作者,男,在读硕士研究生,主要研究方向:智能交通、嵌入式系统。E-mail:308009849@qq.com。

孙旭飞(1961-),男,硕士,副教授,主要研究方向:嵌入式系统、智能交通技术、电力线扩频载波技术。

吴一鹏(1991-),男,在读硕士研究生,主要研究方向:智能交通、嵌入式系统。

猜你喜欢

手势卷积神经网络
基于3D-Winograd的快速卷积算法设计及FPGA实现
神经网络抑制无线通信干扰探究
挑战!神秘手势
从滤波器理解卷积
V字手势的由来
基于傅里叶域卷积表示的目标跟踪算法
胜利的手势
基于神经网络的拉矫机控制模型建立
复数神经网络在基于WiFi的室内LBS应用
基于支持向量机回归和RBF神经网络的PID整定