APP下载

基于肤色分割和卷积神经网络的手语识别系统

2021-02-28刘涛马静徐军郑煜伟唐兆军付琳周莹莹

电脑知识与技术 2021年35期
关键词:卷积神经网络

刘涛 马静 徐军 郑煜伟 唐兆军 付琳 周莹莹

摘要:针对听障人士手语交流的问题,设计了一种基于肤色分割和卷积神经网络的手语识别系统。首先,利用视觉传感器采集不同的手势图像,然后基于YCrCb空间对手势图像进行肤色分割,构建手势图像数据集,采用卷积神经网络对手势图像数据进行特征提取与分类,将训练与测试得到的最优模型导入树莓派,使用讯飞语音包将识别结果转化为语音,实现语音播报手语识别结果。

关键词: 肤色分割; YCrCb; 卷积神经网络; 手语识别

中图分类号:TP183     文献标识码:A

文章编号:1009-3044(2021)35-0014-04

Sign Language Recognition System Based on Skin Color Detection and Convolutional Neural Network

LIU Tao,MA Jing ,XU Jun,ZHENG Yu-wei,TANG Zhao-jun,FU Lin,ZHOU Ying-ying

(Harbin University of Science And Technology, School of Measurement and Control Technology and Communication Engineering, Harbin 150000, China)

Abstract:Aiming at the problem of sign language communication for the hearing impaired, a sign language recognition system based on skin color segmentation and convolutional neural network is proposed. First, the visual sensor is used to collect different gesture images, and then the gesture image is segmented based on the YCrCb space to construct the gesture Image data set, using convolutional neural network to extract and classify gesture image data, import the optimal model obtained from training and testing into the Raspberry Pi, use the iFLYTEK voice package to convert the recognition result into speech, and realize the speech broadcast sign language recognition result.

Key words: skin tone segmentation; YCrCb; convolutional neural network; sign language recognition

1 引言

手语作为听障人士的“语言”表达形式,含有明确的信息。而正常人需要进行系统学习才能与听障人士进行良好沟通,所以正确识别听障人士的手语信息是非常重要的。随着科学技术的不断发展,手语识别技术已经成为人机共融领域的热门研究方向。

目前,众多学者对手语识别进行了研究,如基于传感手套的手语识别系统[1]、基于肌电传感器的手语识别系统[2]、基于深度传感器的手语识别系统[3]等。其中文献[1-2]需要可穿戴设备的支持,文献[3]需要对手部进行复杂建模。上述有关于手语识别的研究都有各自的适用要求,为了满足实际手语识别所需的便携性和易使用性,本文设計了一种基于肤色分割和卷积神经网络的手语识别系统,通过YCrCb空间对手势图像进行肤色分割,然后使用卷积神经网络来代替传统的特征提取方法提取手部图像特征和建立手语识别模型,完成手语图像信息的识别与分类。

2 肤色分割与卷积神经网络

2.1  肤色分割

肤色分割是一种通过筛选图像中符合肤色范围像素实现肤色提取的方法,在手部跟踪、人机交互等领域,具有巨大的潜力和应用前景。

2.1.1 颜色空间

颜色空间,也被称为色彩模型。学者们使用不同维度空间坐标构建了若干色彩模型,用一维、二维、三维或者四维空间坐标表示某种色彩[4]。目前情况,国际上常用的颜色空间有YCrCb、RGB、HSV等。各个颜色空间描述的颜色都有不同程度的差异。

我们常常把RGB空间图像转化为YCbCr颜色空间,然后再进行图像处理。YCbCr颜色空间的Y是指灰阶值,可以表示明亮度,Cb与Cr分别可以表示成蓝色分量、红色分量与亮度的差值。YCbCr颜色空间有将色度与亮度分开的特点,在YCbCr颜色空间中肤色的聚类特性较好,能够较好地限制肤色分布区域[5]。本文通过YCbCr颜色空间对图像进行肤色区域分割。

2.1.2 肤色检测

通过转换公式[6]将RGB颜色空间转换进而得到YCbCr颜色空间,转换公式如下:

[Y=0.299R+0.587G+0.114BCr=R-YCb=B-Y]               (1)

根据实验表明,人体肤色在CbCr平面上的范围为[77≤Cb≤127,133≤Cr≤173]。本研究利用公式(1)将图像从RGB颜色空间转化为YCbCr颜色空间,然后通过设定图像在CbCr平面上的投影范围,从而将含有肤色的部分从背景图像中分离出来,如图1所示。

在实际的肤色分割中,往往会受到类似肤色的颜色背景干扰,此时肤色分割往往分离出一些非肤色区域,而这些非肤色区域往往会影响最后模型训练的效果。因此,本研究先对肤色提取后图像进行开运算,即先腐蚀后膨胀,去除孤立的小点,毛刺,然后对各个联通区域进行计算,获取出最大联通区域,并将其提取出来,这样便能排除肤色分割后图像中的非肤色区域带来的干扰。

如图2所示,当原图像出现非肤色区域或者非手部图像时,通过上述等操作能够有效地排除非肤色区域或者非手部图像所带来的干扰。但是当非肤色区域或者非手语图像的联通区域面积大于手部图像面积时,上述算法会将手部图像剔除,所以在实际操作过程中避免出现上述情况便能取得很好的手部图像提取效果。

2.2 卷积神经网络

卷积神经网络是一类包含了卷积运算的神经网络,是深度学习的代表算法之一[6]。本研究利用卷积神经网络实现手部图像特征的提取和手语识别模型的构建。

2.2.1 网络结构

经典的卷积神经网络结构如图3所示。其分别参照LeNet-5,LeNet-5并由Lecun作为手写数字识别设计的卷积网络结构。该结构由2层卷积层、2层池化层、1层全连接层构成[7]。

卷积层,又叫作特征提取层,一般采用3[×]3、5[×]5、7[×]7大小的卷積核,对输入的图像进行卷积操作。卷积层有着加强特征,降低噪声的作用。输入的原始图像用[X]表示,[Qi]为卷积网络第[i]层的特征图像([Q0=X])。卷积的产生过程可以表示为:

[Qi=f(Qi-1*Ti+bi)]                       (2)

其中,[Wi]表示为第[i]层卷积核的权值矩阵,[*]表示为卷积运算,[bi]为偏置矩阵。

池化层是对数据进行降维,也就是所谓的下采样。常见的池化方法有均匀池化和最大池化,此处采用最大池化的方法,把图像数据划分成若干个2[×]2的区域,然后在这四个之中取最大值,从而形成新的数据输出。

而全连接层的作用相当于一个分类器。

2.2.2 AlexNet模型

本研究采用AlexNet模型来训练手语识别模型,AlexNet模型架构如图5所示。AlexNet模型包括有5个卷积层和3个全连接层。其中有3个地方还做了最大池化处理。激活函数采用线性校正单元ReLU函数,即[ReLUx=max (0,x)]。

同时,AlexNet还采用了局部响应归一化的处理,进一步改善了卷积神经网络性能,具体公式如下:

[bix,y=aix,y/(k+αj=max (0,i-n/2)min (N-1,i+n/2)(aix,y)2)β] (3)

[aix,y]表示第[i]个卷积面上在位置[(x,y)]的值,[bix,y]表示局部响应归一化的值,N是卷积面的总数,n是相邻面的个数,[k,α,β]是可调参数,可以通过选择合适的参数来减少错误率[8]。

3  手语识别系统

3.1系统总体结构

整个手语识别系统采用模块化设计方法,总共可以分为数据采集模块、模型训练模块、嵌入式硬件模块、手语翻译模块。系统总体结构如图6所示。数据采集模块目前有两种途径:一是利用高分辨率摄像头进行手语图片的采集和存储,二是下载现有的American Sign Language(ASL)或者Chinese Sign Language(CSL)数据集;模型训练模块是通过卷积神经网络对数据进行训练和测试,并选出最优模型作为最终的手语识别模型;嵌入式硬件模块主要以微型计算机树莓派4B作为主控器,在其上连接触摸屏、摄像头来分别实现人机交互、实时手语识别;手语翻译模块是通过导入讯飞语音包到树莓派上,再连接上扬声器实现语音播报的功能。

用户点击数据采集功能时,将自己的手部对准摄像头,按下对应的字母键,系统就会对图像进行采集。采集成功之后系统将会生成图片转为NPZ格式。采集完成以后按Q键存储数据,下方会显示采集数据的种类及数量。本系统的手语识别内容包含A、B、C、D、E、F,可根据实际需求改动相应内容。点击手语翻译后,将手部对准摄像头即可进行实时手语翻译。当用户对系统不熟悉时,可以打开操作提示,按照系统的提示进行手语识别操作。

系统主界面和采集界面如图7所示。

3.2  实验流程

3.2.1 数据集构建

目前,数据采集有两种途径:一是利用高分辨率摄像头进行手语图片的采集和存储;二是下载现有的ASL或者CSL数据集。途径一利用前文所述的肤色分割技术,能够将手部图像从复杂背景中提取出来,降低环境带来的干扰,而现有数据集无法实现这一点。实验对现有的ASL Alphabet手语数据库进行训练,以期验证利用TensorFlow搭建的AlexNet模型能够实现图像识别与分类的功能。

本文实验所选取ASL Alphabet手语数据库作为基础数据集。该数据集包含87000张200[×]200像素的图像,其中每一种英文静态手语数据为3000张。训练选取了其中A、B、C、D、E、F六种手语的图像,并按照7:3的比例随机将18000张图像分为了12600个训练集和5400个测试集。

3.2.2 模型训练设置

卷积神经网络的训练采用的是误差反向传播算法进行训练。

1)计算[softmax]损失函数:

[HP,T=-1Cplog (T)]

其中T为样本的实际输出,

[T=[softmaxy1,softmaxy2,...,softmax(yi=n)]],P为样本的期望输出。交叉熵表现的是实际输出与预测输出的差距,交叉熵的值越小,预测输出就越接近实际输出。

2)按极小误差的方法调整权值矩阵[W]以及偏置值[b]。更新过程中运用梯度下降法中的小批量梯度下降法:

[W2=W1-?E?W1]                    (5)

[b2=b1-?E?b1]                       (6)

其中,[η]为梯度下降的学习率,[W2]和[b2]为更新后的值。误差反向传播训练就是为了更新网络的权值,使得(4)中的交叉熵最小,即实际输出与期望输出最接近。

3.2.3 训练结果及分析

本文实验使用AlexNet模型进行1000次迭代训练。在训练数据集进行训练的过程中,使用测试数据集对神经网络模型进行同步测试,计算得出随着训练数据迭代次数的增加,其网络准确率以及损失函数曲线如图8所示。

由图8可知,训练过程中训练数据迭代次数增加的同时,网络模型的损失曲线呈不断下降趋势,这个现象证明了AlexNet模型的训练过程是一个不断收敛的过程。由公式(4)可知,随着损失曲线的不断下降,实际输出与期望输出之间的差距越来越小。同时,该模型在测试数据集上的准确率也在不断提升,并且在数据迭代超过400次之后,准确率曲线与损失函数曲线逐渐趋于平稳,测试准确率停留在98%与99%之间,最终识别模型选用迭代次数为704次的迭代模型,704模型的准确率为99.53%。图9为手语识别演示图。

4 结论

本文设计了一个基于YCrCb空间和卷积神经网络的手语识别系统。首先,对静态手语图像进行预处理,分割手部图像。同时该算法对复杂环境下的手语图像进行分割,手部图像提取的效果也比较好。接着利用卷积神经网络提取手部图像特征,对图像特征进行识别与分类。最后,将最优模型导入树莓派,并利用讯飞语音包把识别结果转化为语音进行播报,实现手语的实时识别和语音播报。下一步将考虑如何优化AlexNet模型的各项参数,使提高模型识别的准确率,并使得网络模型能够快速地收敛。卷积神经网络被广泛应用于自然语言处理、机器视觉等许多领域,仍然需要进行大力的研究。

参考文献:

[1] Tubaiz N,Shanableh T,Assaleh K.Glove-based continuous Arabic sign language recognition in user-dependent mode[J].IEEE Transactions on Human-Machine Systems,2015,45(4):526-533.

[2] 李云,陈香,张旭,等.基于表面肌电信号对中国手语识别的探索与动作规范[J].航天医学与医学工程,2010,23(3):196-202.

[3] Fang B Y,Co J,Zhang M.DeepASL:enabling ubiquitous and non-intrusive word and sentence-level sign language translation[C]//Proceedings of the 15th ACM Conference on Embedded Network Sensor Systems.Delft Netherlands.New York,NY,USA:ACM,2017.

[4] 吴要领.基于YCrCb色彩空间的人脸检测算法的设计与实现[D].成都:电子科技大学,2013.

[5] 陶坚坚.基于肤色分割和未确知聚类的彩色人臉检测算法研究[D].邯郸:河北工程大学,2012.

[6] 张书真.彩色图像中复杂背景下的人脸检测[D].长沙:国防科学技术大学,2006.

[7] Yann L,Yoshua B.Convolutional networks for images,speech,and time-series[J].The Handbook of Brain Theory and Neural Networks,1995:255-258.

[8] Krizhevsky A,Sutskever I,Hinton G E.ImageNet classification with deep convolutional neural networks[J].Communications of the ACM,2017,60(6):84-90.

[9] 李强.基于卷积神经网络的静态手语识别系统[D].长春:吉林大学,2020.

【通联编辑:唐一东】

猜你喜欢

卷积神经网络
基于深度神经网络的微表情识别
卷积神经网络中减少训练样本时间方法研究
卷积神经网络语言模型研究
基于卷积神经网络的车辆检索方法研究
基于卷积神经网络温室智能大棚监控系统的研究
基于深度卷积神经网络的物体识别算法
深度学习技术下的中文微博情感的分析与研究
基于卷积神经网络的树叶识别的算法的研究