孟彩茹 宋京 孫明揚(yáng)
摘? 要: 手勢(shì)識(shí)別在人機(jī)交互中起著重要的作用,然而手勢(shì)形態(tài)和背景的復(fù)雜多樣性給手勢(shì)識(shí)別過(guò)程帶來(lái)難題。為了降低特征提取的難度和提高識(shí)別準(zhǔn)確率,設(shè)計(jì)一種改進(jìn)卷積神經(jīng)網(wǎng)絡(luò)(CNN)和支持向量機(jī)(SVM)模型來(lái)對(duì)手勢(shì)進(jìn)行識(shí)別。該模型首先對(duì)手勢(shì)圖像分割處理和數(shù)據(jù)增強(qiáng)處理,然后用Inception模塊改進(jìn)后的CNN完成對(duì)手勢(shì)特征的提取,最后通過(guò)SVM對(duì)不同手勢(shì)分類識(shí)別。實(shí)驗(yàn)結(jié)果表明,該模型在自建手勢(shì)數(shù)據(jù)集下平均識(shí)別率為98.13%,在MNIST數(shù)據(jù)集下平均識(shí)別率為98.95%,同一數(shù)據(jù)集下較傳統(tǒng)模型識(shí)別率均有提高。
關(guān)鍵詞: 手勢(shì)識(shí)別; CNN; SVM; 特征提取; 圖像分割; 數(shù)據(jù)增強(qiáng)
中圖分類號(hào): TN915?34; TP183? ? ? ? ? ? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼: A? ? ? ? ? ? ? ? ? ? ? ?文章編號(hào): 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? 引? 言
手勢(shì)識(shí)別是計(jì)算機(jī)視覺(jué)領(lǐng)域中一個(gè)具有挑戰(zhàn)性的問(wèn)題,多年來(lái)一直是人們研究的熱點(diǎn)[1]。在手勢(shì)識(shí)別領(lǐng)域,研究人員使用了許多不同的算法,取得了許多成果。M Rossi等結(jié)合兩種不同結(jié)構(gòu)分類器來(lái)對(duì)手勢(shì)進(jìn)行識(shí)別,人工先提取圖像特征,用隱馬爾可夫(HMM)模型來(lái)區(qū)分?jǐn)?shù)據(jù),后用SVM對(duì)手勢(shì)肌電信號(hào)進(jìn)行識(shí)別[2]。田園等利用Kinect的深度攝像頭去獲取手部深度信息,記錄特征點(diǎn)坐標(biāo),確定手指尖位置,然后用特征點(diǎn)匹配的方法識(shí)別手勢(shì)[3]。這些方法需要人工設(shè)計(jì)提取手勢(shì)特征,這不僅是一項(xiàng)繁瑣費(fèi)時(shí)的工作,而且還會(huì)因?yàn)樘崛【鹊蛯?dǎo)致識(shí)別準(zhǔn)確率不高。近些年來(lái),深度學(xué)習(xí)在人工智能領(lǐng)域取得很大進(jìn)步。許悅雷等先利用主成分分析算法(PCA)的降維處理技術(shù)優(yōu)化CNN的權(quán)值,再用優(yōu)化后的CNN對(duì)手勢(shì)識(shí)別[4]。石雨鑫等結(jié)合CNN與隨機(jī)森林(RF)兩種算法進(jìn)行手勢(shì)識(shí)別,先對(duì)手勢(shì)進(jìn)行分割處理,接著利用CNN進(jìn)行特征提取,最后由隨機(jī)森林分類器完成手勢(shì)識(shí)別[5]。謝崢桂先對(duì)手勢(shì)圖像進(jìn)行手勢(shì)分割預(yù)處理,然后再用CNN進(jìn)行特征提取和識(shí)別[6]。
目前手勢(shì)識(shí)別仍然具有廣泛的實(shí)際應(yīng)用和現(xiàn)實(shí)意義,如識(shí)別手語(yǔ)促進(jìn)與聾啞人的交流、加強(qiáng)控制智能機(jī)器人使用戶更加自然、輔助汽車駕駛提高安全度等。手勢(shì)識(shí)別需要一個(gè)識(shí)別率高且泛化能力強(qiáng)的模型,為此本文設(shè)計(jì)了一種改進(jìn)CNN?SVM模型用于手勢(shì)識(shí)別,該模型首先對(duì)手勢(shì)圖像進(jìn)行手勢(shì)分割處理和數(shù)據(jù)增強(qiáng)處理,然后用加入Inception模塊改進(jìn)后的CNN完成對(duì)手勢(shì)特征的提取,最后通過(guò)SVM分類識(shí)別。對(duì)手勢(shì)進(jìn)行預(yù)處理,減少模型參數(shù),降低了算法復(fù)雜度;加入Inception模塊提高了對(duì)圖像尺度的適應(yīng)性;利用SVM分類提高了模型泛化能力和準(zhǔn)確率。為驗(yàn)證模型性能,在兩種數(shù)據(jù)集下進(jìn)行了測(cè)試。實(shí)驗(yàn)結(jié)果表明,本文設(shè)計(jì)的模型較傳統(tǒng)模型泛化能力更強(qiáng),分類更準(zhǔn)確,識(shí)別率均達(dá)到98%以上。
1? 手勢(shì)圖像的預(yù)處理
1.1? 手勢(shì)分割處理
為了降低手勢(shì)圖像的復(fù)雜多樣性對(duì)手勢(shì)特征提取和訓(xùn)練過(guò)程中的影響,提高特征提取和識(shí)別的可靠性,需要先對(duì)手勢(shì)圖像進(jìn)行分割處理。手勢(shì)分割的方法有很多,常見(jiàn)的有膚色分割法、輪廓分割法、SS?ROI分割法等。觀察手勢(shì)圖像,很容易看出手部膚色是區(qū)別于其他物體的首要特征,本文選用膚色分割法對(duì)手勢(shì)圖像做分割處理。首先是顏色空間的選取,因?yàn)槭植磕w色在不一樣顏色空間中有著不一樣的區(qū)域分布,顏色空間有很多種,常用的有RGB 顏色空間、HSV 顏色空間和 YCrCb 顏色空間等。因?yàn)樵赮CrCb顏色空間中,膚色基本上不受亮度的影響,膚色點(diǎn)多數(shù)都落在Cr,Cb分量上,即在膚色分割過(guò)程中有不錯(cuò)的效果和穩(wěn)定性[7]。所以本文選擇 YCrCb 空間對(duì)手勢(shì)圖像分割,手勢(shì)圖像映射到 YCrCb 空間所用關(guān)系式如下:
1.2? 數(shù)據(jù)集增強(qiáng)處理
為了訓(xùn)練更加有效的深度學(xué)習(xí)模型,提高模型對(duì)新圖片的適應(yīng)能力??紤]到手勢(shì)識(shí)別過(guò)程中實(shí)際情況的復(fù)雜性,如光照強(qiáng)度、手勢(shì)的方向、噪聲數(shù)據(jù)等影響,本文還對(duì)手勢(shì)圖片做了數(shù)據(jù)增強(qiáng)處理,包括對(duì)圖片的隨機(jī)上下翻轉(zhuǎn)、隨機(jī)左右翻轉(zhuǎn)、隨機(jī)裁剪、隨機(jī)設(shè)置圖片的亮度、隨機(jī)添加噪聲擾動(dòng)。
2? 改進(jìn)的CNN與SVM混合模型
2.1? 傳統(tǒng)CNN結(jié)構(gòu)
卷積神經(jīng)網(wǎng)絡(luò)于1998年由Yann Lecun提出,該算法擅長(zhǎng)處理識(shí)別各種圖像[9]。卷積神經(jīng)網(wǎng)絡(luò)是一種具有深度監(jiān)督學(xué)習(xí)結(jié)構(gòu)的多層神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),可以看作是由兩部分組成:自動(dòng)特征提取器和可訓(xùn)練分類器。特征提取器包含特征映射層:卷積層、池化層以及全連接層。在本文中,卷積層從原始圖像中提取基本手勢(shì)特征;池化層再進(jìn)一步提取手勢(shì)的主要特征;在全連接層中匯總可以區(qū)別手勢(shì)的各個(gè)部分特征;最后由分類器進(jìn)行手勢(shì)的預(yù)測(cè)識(shí)別。卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。
2.2? 傳統(tǒng)CNN的改進(jìn)
2.2.1? Inception模塊
為了降低網(wǎng)絡(luò)復(fù)雜度,提高識(shí)別準(zhǔn)確率和網(wǎng)絡(luò)模型對(duì)尺度的適應(yīng)性。本文添加Inception 模塊來(lái)限制輸入信道的數(shù)量,這樣在同一層級(jí)網(wǎng)絡(luò)上可運(yùn)行多個(gè)尺寸的濾波器,即讓網(wǎng)絡(luò)層級(jí)變得更寬而不是更深。Inception模塊最開(kāi)始出現(xiàn)于谷歌團(tuán)隊(duì)提出的GoogLeNet[10]網(wǎng)絡(luò)中,它利用3個(gè)不同大小的濾波器(1×1,3×3,5×5)對(duì)上層進(jìn)行卷積操作,并且其還可以執(zhí)行最大池化。最后全部子層的輸出連接在一起傳送至下一個(gè)模塊。Inception 結(jié)構(gòu)[11]如圖3所示。
2.2.2? SVM分類器
本文使用的卷積神經(jīng)網(wǎng)絡(luò)可以準(zhǔn)確地提取圖像中的手勢(shì)特征[12],在此基礎(chǔ)上,使用一些傳統(tǒng)的分類方法也能實(shí)現(xiàn)較高精度的分類。傳統(tǒng)分類方法有支持向量機(jī)分類、樸素貝葉斯分類、隨機(jī)森林分類等。其中,SVM學(xué)習(xí)[13]的超平面是距離各個(gè)類別樣本點(diǎn)最遠(yuǎn)的平面,用于分類的可靠性是機(jī)器學(xué)習(xí)工具中最好的。其采用最大類間分類平面的原則對(duì)樣本數(shù)據(jù)分類,相比于Softmax具有更強(qiáng)的泛化推廣能力和更高的識(shí)別準(zhǔn)確率。故本文選用SVM分類器替代原CNN模型中的Softmax分類器。SVM分類器替代原CNN模型中的Softmax分類器具體操作如下:
1) 訓(xùn)練原始CNN網(wǎng)絡(luò)得到較高的識(shí)別率;
2) 將訓(xùn)練模型中損失函數(shù)Softmax Loss更改為Hinge Loss;
3) 將全連接層之前的學(xué)習(xí)率系數(shù)lr_mult全部改為0,固定特征提取完畢;
4) 重新訓(xùn)練時(shí)就只訓(xùn)練最后的SVM分類器,訓(xùn)練一段時(shí)間直至CNN?SVM模型完成。
2.3? 混合模型網(wǎng)絡(luò)結(jié)構(gòu)
參照第2.1節(jié)傳統(tǒng)卷積網(wǎng)絡(luò)結(jié)構(gòu)圖,結(jié)合2.2節(jié),本文設(shè)計(jì)的用于手勢(shì)識(shí)別改進(jìn)卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)由3個(gè)卷積層、3個(gè)池化層、1個(gè)全連接層、3個(gè)Inception結(jié)構(gòu)以及1個(gè)SVM分類層組成。其混合模型網(wǎng)絡(luò)結(jié)構(gòu)示意圖如圖4所示。
3? 混合模型訓(xùn)練與測(cè)試結(jié)果分析
本文采用自建手勢(shì)數(shù)據(jù)集訓(xùn)練和測(cè)試模型,隨后在經(jīng)典Minist數(shù)據(jù)集下驗(yàn)證。訓(xùn)練模型過(guò)程中使用隨機(jī)梯度下降法來(lái)最小化訓(xùn)練模型中的誤差,即每完成一次迭代時(shí)重新評(píng)估和更新一次權(quán)值。這個(gè)重復(fù)迭代到一定次數(shù)的過(guò)程可以找出使訓(xùn)練數(shù)據(jù)最小誤差的模型的系數(shù)。自建手勢(shì)數(shù)據(jù)集包含表示數(shù)字1~10的10種手勢(shì)如圖5所示,每種手勢(shì)有800張且手勢(shì)形態(tài)不一,共計(jì)8 000張手勢(shì)圖像。選取其中4 000張作為訓(xùn)練樣本,在訓(xùn)練過(guò)程中運(yùn)用數(shù)據(jù)增強(qiáng)技術(shù)提高模型的泛化能力,其余4 000張作為測(cè)試集,驗(yàn)證模型性能的優(yōu)劣。
4? 結(jié)? 語(yǔ)
本文設(shè)計(jì)了基于改進(jìn)卷積神經(jīng)網(wǎng)絡(luò)和支持向量機(jī)的模型對(duì)手勢(shì)進(jìn)行識(shí)別。該模型主要修改了傳統(tǒng)CNN網(wǎng)絡(luò)結(jié)構(gòu)加入Inception模塊并結(jié)合SVM算法,首先對(duì)手勢(shì)圖像進(jìn)行分割處理和數(shù)據(jù)增強(qiáng)處理,然后利用該模型對(duì)手勢(shì)進(jìn)行識(shí)別分類。實(shí)驗(yàn)結(jié)果表明,改進(jìn)卷積神經(jīng)網(wǎng)絡(luò)和支持向量機(jī)模型比傳統(tǒng)模型具有更好的識(shí)別性能。在接下來(lái)的研究中,將針對(duì)更加復(fù)雜的背景,如手部遮擋等情況進(jìn)行識(shí)別研究,同時(shí)嘗試多種圖像預(yù)處理算法,以求得到更精準(zhǔn)的識(shí)別率。
參考文獻(xiàn)
[1] 朱雯文,葉西寧.基于卷積神經(jīng)網(wǎng)絡(luò)的手勢(shì)識(shí)別算法[J].華東理工大學(xué)學(xué)報(bào)(自然科學(xué)版),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] 田元,王學(xué)璠,王志鋒,等.基于Kinect的實(shí)時(shí)手勢(shì)識(shí)別方法[J].計(jì)算機(jī)工程與設(shè)計(jì),2018,39(6):1721?1726.
[4] 史鶴歡,許悅雷,馬時(shí)平,等.PCA預(yù)訓(xùn)練的卷積神經(jīng)網(wǎng)絡(luò)目標(biāo)識(shí)別算法[J].西安電子科技大學(xué)學(xué)報(bào),2016,43(3):161?166.
[5] 石雨鑫,鄧洪敏,郭偉林.基于混合卷積神經(jīng)網(wǎng)絡(luò)的靜態(tài)手勢(shì)識(shí)別[J].計(jì)算機(jī)科學(xué),2019,46(z1):165?168.
[6] 謝錚桂.基于改進(jìn)的卷積神經(jīng)網(wǎng)絡(luò)的手勢(shì)識(shí)別的研究[J].計(jì)算機(jī)應(yīng)用與軟件,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] 楊世強(qiáng),弓逯琦.基于高斯模型的手部膚色建模與區(qū)域檢測(cè)[J].中國(guó)圖象圖形學(xué)報(bào),2016,21(11):1492?1501.
[9] 周飛燕,金林鵬,董軍.卷積神經(jīng)網(wǎng)絡(luò)研究綜述[J].計(jì)算機(jī)學(xué)報(bào),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] 溫靜,安國(guó)艷,梁宇棟.基于CNN特征提取和加權(quán)深度遷移的單目圖像深度估計(jì)[J].圖學(xué)學(xué)報(bào),2019,40(2):248?255.
[13] 黃孝喜,李晗雨,王榮波,等.基于卷積神經(jīng)網(wǎng)絡(luò)與SVM分類器的隱喻識(shí)別[J].數(shù)據(jù)分析與知識(shí)發(fā)現(xiàn),2018,2(10):77?83.