操小文,薄華
?。ㄉ虾:J麓髮W(xué) 信息工程學(xué)院,上海201306)
摘要:傳統(tǒng)的手勢(shì)識(shí)別系統(tǒng)由特征提取和分類器組成,需要人工設(shè)計(jì)特征,但很難達(dá)到足夠滿意的效果且耗費(fèi)大量的時(shí)間。將卷積神經(jīng)網(wǎng)絡(luò)應(yīng)用于手勢(shì)識(shí)別,能直接把圖像數(shù)據(jù)輸入網(wǎng)絡(luò),且不用進(jìn)行復(fù)雜的前期預(yù)處理。卷積神經(jīng)網(wǎng)絡(luò)擁有很強(qiáng)的魯棒性和較低的復(fù)雜性,通過(guò)大量的仿真實(shí)驗(yàn),證明了該識(shí)別方法具有很好的識(shí)別效果,相比現(xiàn)有方法有較大的優(yōu)勢(shì)。
關(guān)鍵詞:特征提??;卷積神經(jīng)網(wǎng)絡(luò);手勢(shì)識(shí)別;魯棒性
0引言
隨著現(xiàn)有科學(xué)技術(shù)的發(fā)展,機(jī)器人技術(shù)[1]將會(huì)給人類帶來(lái)很大的便利,而人機(jī)交互[2]則是其中最重要的一環(huán)。因此,要讓機(jī)器人根據(jù)人的指示完成相應(yīng)的動(dòng)作,就必須要讓機(jī)器人“明白”人的指示。人們平時(shí)運(yùn)用最多的就是手勢(shì),而基于視覺(jué)的手勢(shì)識(shí)別技術(shù)涉及到模式識(shí)別[3]、圖像處理以及計(jì)算機(jī)視覺(jué)[4]等許多領(lǐng)域,是現(xiàn)在非常熱門的研究課題。目前國(guó)內(nèi)對(duì)基于視覺(jué)的手勢(shì)識(shí)別技術(shù)已展開(kāi)了許多的研究工作。
關(guān)于手勢(shì)識(shí)別[5]的常用算法有以下三種:(1)基于幾何特征[6]的手勢(shì)識(shí)別。將手勢(shì)的區(qū)域和邊緣特征用作待識(shí)別的特征,并采用各種距離公式進(jìn)行模板匹配。該方法有較強(qiáng)的適應(yīng)性和穩(wěn)定性,但是學(xué)習(xí)能力不足且效率不高,有很明顯的不足。(2)基于隱馬爾可夫模型的手勢(shì)識(shí)別。這是一種統(tǒng)計(jì)分析模型,其拓?fù)浣Y(jié)構(gòu)具有一般性,能夠很好地描述手勢(shì)信號(hào)的時(shí)空變化,適用于動(dòng)態(tài)手勢(shì)的識(shí)別,但是計(jì)算量過(guò)于龐大且速度緩慢,不能很好地滿足當(dāng)前應(yīng)用的需要。(3)基于人工神經(jīng)網(wǎng)絡(luò)[7]的手勢(shì)識(shí)別。具有較強(qiáng)的學(xué)習(xí)能力和抗干擾能力,而且網(wǎng)絡(luò)能很好地?cái)M合各類非線性映射,在擁有更快的計(jì)算速度的同時(shí)還有很強(qiáng)的魯棒性和泛化能力,但由于其對(duì)時(shí)間序列的處理能力不強(qiáng),主要應(yīng)用于靜態(tài)手勢(shì)識(shí)別[8],而對(duì)于動(dòng)態(tài)手勢(shì)的識(shí)別[9]則效果不佳。
由以上分析可知,現(xiàn)有算法都有或多或少的缺陷,因此未能得到很好的應(yīng)用。而卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)在二維圖像處理中的獨(dú)特優(yōu)勢(shì),使其在手勢(shì)識(shí)別中的研究也漸漸開(kāi)展。
1卷積神經(jīng)網(wǎng)絡(luò)
傳統(tǒng)圖像識(shí)別[10]的分類模型如圖1所示。人工設(shè)計(jì)特征是一件非常耗時(shí)耗力的事情,必須要有非常深厚的專業(yè)知識(shí)和經(jīng)驗(yàn)才能確定出能用于正確分類的特征。然而卷積神經(jīng)網(wǎng)絡(luò)[11]則不需要人工設(shè)計(jì)特征,它能夠?qū)D像數(shù)據(jù)直接輸入網(wǎng)絡(luò)中,然后在輸出端即可給出分類結(jié)果。其分類模型如圖2所示。
1.1CNN網(wǎng)絡(luò)結(jié)構(gòu)
CNN包含有兩種特殊的神經(jīng)元層,分別是卷積層和下采樣層[12],其整個(gè)網(wǎng)絡(luò)結(jié)構(gòu)由卷積層(C)和下采樣層(S)交替出現(xiàn)最后與全連接層(F)相連所構(gòu)成,并在最后的輸出層給出結(jié)果。本文的網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示。
卷積操作其實(shí)是用一個(gè)卷積核[13](即特征矩陣)在圖像矩陣上移動(dòng),卷積核與圖像上相對(duì)位置的元素作乘積,最后將所得結(jié)果相加得到一個(gè)值。當(dāng)卷積核移動(dòng)完畢,所有值就構(gòu)成了一個(gè)新的圖像矩陣,即完成了對(duì)上一層的特征抽取。其數(shù)學(xué)表達(dá)式如(1)所示:
其中,f為激活函數(shù),一般為sigmoid或tanh;b為偏置項(xiàng)。
下采樣則相當(dāng)于對(duì)特征進(jìn)行二次提取,這樣做是為了對(duì)上一層的特征進(jìn)行降維,減少計(jì)算量并且避免因特征過(guò)多導(dǎo)致出現(xiàn)過(guò)擬合。經(jīng)過(guò)降維后的特征更能刻畫出圖像的一般性,更加適用于分類[14],并可以增強(qiáng)網(wǎng)絡(luò)結(jié)構(gòu)對(duì)位移的魯棒性。
下采樣的一般形式如式(2):
xij=down(xi-1j)(2)
down(·) 為下采樣函數(shù),與卷積操作類似,其也是對(duì)一個(gè)區(qū)域的加權(quán)求和,若用n×n大小的窗口進(jìn)行下采樣,最終的圖像大小將會(huì)是輸入圖像的1/n。
1.2基于卷積神經(jīng)網(wǎng)絡(luò)的算法及訓(xùn)練過(guò)程
本文所采用的網(wǎng)絡(luò)結(jié)構(gòu)有8層,包含輸入層、3層卷積層、3層下采樣層、1層全連接層。與參考文獻(xiàn)[8]相比,本文所用網(wǎng)絡(luò)多了一層卷積層和一層下采樣層,且卷積核大小設(shè)置也不一樣。本文將網(wǎng)絡(luò)的學(xué)習(xí)速率(alpha)設(shè)置為0.2,批次大?。╞atchsize)設(shè)置為20,迭代次數(shù)(numepochs)設(shè)置為150。且卷積核和各偏置等參數(shù)的初始值均隨機(jī)產(chǎn)生,輸入樣本后通過(guò)前向傳播和反向傳播算法對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練來(lái)更新參數(shù)。其中每層所做的操作如下:
(1)輸入層是已經(jīng)歸一化為48×48的圖像,經(jīng)二值化處理后即可輸入網(wǎng)絡(luò)。
(2)C1網(wǎng)絡(luò)層是對(duì)輸入圖像進(jìn)行卷積所得結(jié)果,本文使用7×7的卷積核對(duì)輸入圖像進(jìn)行特征抽取,該層特征圖為3張,大小為42×42。
(3)S2網(wǎng)絡(luò)層是對(duì)C1層進(jìn)行的抽樣,抽樣窗口大小為2×2,此時(shí)特征圖數(shù)量仍為3張,大小為21×21。
(4)C3是對(duì)S2的卷積操作,卷積核大小設(shè)置為6×6,特征圖為5張,大小為16×16。
(5)S4網(wǎng)絡(luò)層(同S2),為第二個(gè)下采樣層,抽樣窗口仍是2×2,特征圖為5張,大小為8×8。
(6)C5是第三個(gè)卷積層,卷積核大小為5×5,此時(shí)圖像大小為4×4,特征圖數(shù)量設(shè)置為7張。
(7)S6是第三個(gè)下采樣層,經(jīng)2×2的抽樣窗口后大小是2×2,圖像數(shù)量為7張。
(8)F7層是全連接層,是把S6層的特征數(shù)據(jù)向量化后連接到輸出層。根據(jù)分類的類別數(shù),本文的輸出層有三個(gè)神經(jīng)元,即分三類。
整個(gè)網(wǎng)絡(luò)結(jié)構(gòu)確定后,利用前向傳播(fp)、反向傳播(bp)等算法確定網(wǎng)絡(luò)參數(shù),這樣整個(gè)網(wǎng)絡(luò)就訓(xùn)練完畢。
2仿真實(shí)驗(yàn)
2.1手勢(shì)圖像的預(yù)處理
雖然CNN可以直接輸入原始圖像,但是簡(jiǎn)單的預(yù)處理可以使最終識(shí)別效果更好而又不耗費(fèi)太多時(shí)間。
本文將圖像進(jìn)行灰度和二值化處理,最終歸一化到48×48作為試驗(yàn)的最終輸入數(shù)據(jù),如圖4所示。
2.2實(shí)驗(yàn)結(jié)果及分析
本文的實(shí)驗(yàn)數(shù)據(jù)均為作者自己拍攝,手勢(shì)總共有3種,分別是指向手勢(shì)1、勝利手勢(shì)2、搖滾手勢(shì)3,如圖5所示。當(dāng)用設(shè)備拍攝時(shí),保持設(shè)備與手的位置基本不變,在限制范圍內(nèi),手可以任意旋轉(zhuǎn)、平移,方向不定。
對(duì)于神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),樣本的多少對(duì)最終學(xué)習(xí)效果有很大的影響。樣本過(guò)少會(huì)使網(wǎng)絡(luò)無(wú)法學(xué)習(xí)到圖像的有效特征,降低識(shí)別效率。因此本文拍攝了大量的樣本來(lái)進(jìn)行試驗(yàn),從各類手勢(shì)中選取2 500個(gè)訓(xùn)練樣本和500個(gè)測(cè)試樣本。取其迭代10次的平均識(shí)別率作為該方法的最終識(shí)別率。
?。?)分別用圖像的灰度圖和二值圖進(jìn)行試驗(yàn),結(jié)果如表1、表2所示。
由以上結(jié)果可知,卷積神經(jīng)網(wǎng)絡(luò)在手勢(shì)識(shí)別中擁有較高的識(shí)別率,且在單一背景下因手的灰度與周圍環(huán)境的反差,用二值圖像能獲得更好的識(shí)別率。后續(xù)試驗(yàn)均采用二值化圖像進(jìn)行。
?。?)為了驗(yàn)證該網(wǎng)絡(luò)結(jié)構(gòu)的魯棒性,模擬真實(shí)情況下的場(chǎng)景,給圖像加上3種不同程度的噪聲和3種不同程度的運(yùn)動(dòng)模糊。如圖6所示。
實(shí)驗(yàn)結(jié)果如表3~表8所示。
由上述結(jié)果可知,給圖像加了噪聲和運(yùn)動(dòng)模糊后,各類手勢(shì)的識(shí)別率均有所下降,且受影響最大的為手勢(shì)3,可能因?yàn)槭謩?shì)3最復(fù)雜,所包含的特征數(shù)最多,在噪聲和模糊的影響下所掩蓋的特征最多,導(dǎo)致識(shí)別率下降最快。但是在一定程度內(nèi),識(shí)別率雖有所下降但依舊維持在一個(gè)較高的水準(zhǔn),表明該網(wǎng)絡(luò)確實(shí)有很強(qiáng)的魯棒性,沒(méi)有因?yàn)樵肼暫湍:拇嬖诙霈F(xiàn)較大的異常,完全可以滿足現(xiàn)有的應(yīng)用需要。
3結(jié)論
卷積神經(jīng)網(wǎng)絡(luò)避免了對(duì)圖像前期復(fù)雜的預(yù)處理,不用去人工設(shè)計(jì)和提取特征,節(jié)省了大量的時(shí)間和人工成本。其獨(dú)特的卷積-下采樣結(jié)構(gòu)使其擁有很強(qiáng)的容忍畸變的能力,而獨(dú)有的權(quán)值共享則極大地縮減了網(wǎng)絡(luò)的訓(xùn)練參數(shù),大大降低了計(jì)算量,且使其擁有更簡(jiǎn)單的網(wǎng)絡(luò)結(jié)構(gòu)和更強(qiáng)的適應(yīng)能力,給圖像處理領(lǐng)域帶來(lái)了極大的方便。
本文通過(guò)大量的仿真實(shí)驗(yàn),驗(yàn)證了卷積神經(jīng)網(wǎng)絡(luò)在手勢(shì)識(shí)別中的高效性和強(qiáng)魯棒性,具有很好的應(yīng)用前景。后續(xù)可以通過(guò)對(duì)網(wǎng)絡(luò)結(jié)構(gòu)和算法的一些改進(jìn),進(jìn)一步降低其在手勢(shì)識(shí)別中的誤識(shí)率。
參考文獻(xiàn)
?。?] 劉江華,程君實(shí),陳佳品.基于視覺(jué)的動(dòng)態(tài)手勢(shì)識(shí)別及其在仿人機(jī)器人交互中的應(yīng)用[J]. 機(jī)器人, 2002,24(3):4651.
?。?] 王茂吉.基于視覺(jué)的靜態(tài)手勢(shì)識(shí)別系統(tǒng)[D]. 哈爾濱:哈爾濱工業(yè)大學(xué),2006.
?。?] 孫世輝.基于視覺(jué)的復(fù)雜背景下手勢(shì)識(shí)別方法的研究[D]. 大連:大連海事大學(xué),2014.
?。?] 王振,高茂庭.基于卷積神經(jīng)網(wǎng)絡(luò)的圖像識(shí)別算法設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代計(jì)算機(jī),2015,34(7):6166.
[5] 張圓圓.基于視覺(jué)的手勢(shì)識(shí)別技術(shù)及其應(yīng)用研究[J].計(jì)算技術(shù)與自動(dòng)化,2015,34(1):131135.
?。?] 殷倩倩.基于計(jì)算機(jī)視覺(jué)的靜態(tài)手勢(shì)識(shí)別[D]. 上海:復(fù)旦大學(xué),2014.
?。?] 陳先昌.基于卷積神經(jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)算法與應(yīng)用研究[D].杭州:浙江工商大學(xué),2013.
?。?] 劉飛飛.基于視覺(jué)的實(shí)時(shí)手勢(shì)識(shí)別及應(yīng)用[D]. 西安:長(zhǎng)安大學(xué),2015.
?。?] 王西穎,戴國(guó)忠,張習(xí)文,等.基于HMMFNN模型的復(fù)雜動(dòng)態(tài)手勢(shì)識(shí)別[J]. 軟件學(xué)報(bào), 2008,19(9):2529.
?。?0] 楊耿,和衛(wèi)星.運(yùn)動(dòng)目標(biāo)圖像識(shí)別與跟蹤系統(tǒng)的研究[J].計(jì)算機(jī)測(cè)量與控制,2005,13(3):267269.
?。?1] LECUN Y, BOTTOU L, BENGIO Y, et al. Gradientbased learning applied to document recognition[J]. Proceedings of the IEEE, 1998,86(11):22782324.
?。?2] 趙志宏,楊紹普,馬增強(qiáng).基于卷積神經(jīng)網(wǎng)絡(luò)LeNet5的車牌字符識(shí)別研究[J].系統(tǒng)仿真學(xué)報(bào),2010,22(3):638641.