張 哲,孫 瑾,楊劉濤
(南京航空航天大學(xué) 民航學(xué)院,南京 211106)
隨著智能設(shè)備日益滲入到我們的生活,人們?cè)谙硎苓@些設(shè)備帶來(lái)方便的同時(shí),如何促進(jìn)人與機(jī)器進(jìn)行更好的“交流”成為智能設(shè)備發(fā)展的目標(biāo)之一.眾多的人機(jī)交互方式中,由于操作的靈巧性,手勢(shì)是使用最廣、用途最多的交互方式,其中基于視覺(jué)的手部交互技術(shù)因?yàn)閷?duì)用戶限制較少,更容易提供一種自然、和諧、智能的交互方式而成為交互技術(shù)的熱門研究領(lǐng)域,在遠(yuǎn)程醫(yī)療、指導(dǎo)機(jī)器人在空間、深海進(jìn)行復(fù)雜作業(yè)等領(lǐng)域也具有潛在的巨大商業(yè)價(jià)值.
基于視覺(jué)的人手交互通過(guò)視頻采集卡、攝像頭等視頻采集設(shè)備獲取運(yùn)動(dòng)人手圖像,根據(jù)圖像信息推斷出手勢(shì)的三維方位指向,完成交互操作.因此,準(zhǔn)確實(shí)現(xiàn)手部交互的過(guò)程,首先要對(duì)手勢(shì)包含的信息進(jìn)行分析,手勢(shì)識(shí)別就成為了關(guān)鍵的步驟.同其他圖像分類方法類似,手勢(shì)識(shí)別方法包括特征提取和特征分類兩大步驟.傳統(tǒng)特征往往依據(jù)先驗(yàn)知識(shí),由人工設(shè)計(jì)提取圖像特征,如LBP[1](Local Binary Pattern)、HoG[2](Histogram of Oriented Gradient)和SIFT[3](Scale-invariant feature transform)等.單一特征包含的圖像信息有限,而且一個(gè)成熟的特征形成需要很長(zhǎng)時(shí)間的驗(yàn)證與改進(jìn).
最近幾年隨著深度學(xué)習(xí)的挖掘與應(yīng)用,基于深度學(xué)習(xí)框架的分類方法極大提高了圖像識(shí)別的準(zhǔn)確性.自從2012年Alex Krizhevsky[4]利用深度學(xué)習(xí)方法取得ImageNet大賽的冠軍之后,卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN )成為了圖像識(shí)別領(lǐng)域的研究熱門.訓(xùn)練好的卷積網(wǎng)絡(luò)模型每一層能自動(dòng)提取大量的圖像特征,將最終提取特征輸入到Softmax層利用交叉熵得到屬于各個(gè)類別的概率.
牛津大學(xué)視覺(jué)幾何組提出的VGGNet[5]結(jié)構(gòu)通過(guò)小尺寸卷積和增加網(wǎng)絡(luò)深度的方法有效提升模型效果.研究表明[6,7],網(wǎng)絡(luò)層次越深,提取的視覺(jué)特征可分辨性越好,更有利于圖像分類.但加深網(wǎng)絡(luò)會(huì)使網(wǎng)絡(luò)復(fù)雜化,從而增加網(wǎng)絡(luò)的訓(xùn)練時(shí)間和出現(xiàn)“過(guò)擬合”的傾向,為此,GoogLeNet[8]網(wǎng)絡(luò)提出了Inception基本單元,使用不同尺度的卷積核來(lái)增強(qiáng)單層卷積的寬度.同時(shí)為了減少網(wǎng)絡(luò)參數(shù),每個(gè)Inception單元進(jìn)行特征提取前會(huì)進(jìn)行一次降維,既能大大提升卷積提取特征的能力,又不會(huì)使計(jì)算量提升很多.但是通過(guò)實(shí)驗(yàn)發(fā)現(xiàn),利用GoogLeNet網(wǎng)絡(luò)對(duì)存在“同形異構(gòu)”問(wèn)題(圖1)的單視點(diǎn)手勢(shì)識(shí)別效果不佳.分析其原因,主要由于單視點(diǎn)下容易出現(xiàn)手勢(shì)自遮擋問(wèn)題,使得對(duì)于姿態(tài)較為相近的手勢(shì)識(shí)別誤差較大.同時(shí)最后的全連接層提取的特征,在網(wǎng)絡(luò)傳遞過(guò)程中也丟失了部分淺層網(wǎng)絡(luò)提取的特征信息.
圖1 自遮擋導(dǎo)致的“同形異構(gòu)”手勢(shì)Fig.1 Indistinguishable gestures caused by self-occlusion
針對(duì)以上分析可知,GoogLeNet具有卷積層深度和寬度更大、網(wǎng)絡(luò)參數(shù)更少的優(yōu)點(diǎn).因此本文以GoogLeNet網(wǎng)絡(luò)為基礎(chǔ),進(jìn)一步提出了一種融合多層卷積特征的雙視點(diǎn)手勢(shì)識(shí)別方法.首先對(duì)雙視點(diǎn)框架下手勢(shì)圖像采集和手勢(shì)分類結(jié)果進(jìn)行融合,降低單一視點(diǎn)下手勢(shì)自遮擋的影響,提高手勢(shì)識(shí)別的準(zhǔn)確性;同時(shí)在每個(gè)視點(diǎn)下,學(xué)習(xí)網(wǎng)絡(luò)融合多層卷積特征以補(bǔ)充深層網(wǎng)絡(luò)在特征提取時(shí)降維造成的信息丟失,增強(qiáng)特征的魯棒性;最后利用支持向量機(jī)代替Softmax邏輯回歸層提高分類效果.
卷積神經(jīng)網(wǎng)絡(luò)是一種深度前饋人工神經(jīng)網(wǎng)絡(luò),與普通神經(jīng)網(wǎng)絡(luò)相比,卷積神經(jīng)網(wǎng)絡(luò)包含了一個(gè)由卷積層和池化層構(gòu)成的特征抽取器.其中每一層卷積層包含大量作為神經(jīng)元權(quán)值的卷積核,根據(jù)局部感受野和權(quán)值共享原則對(duì)全局圖像進(jìn)行卷積操作提取特征;池化層也稱為子采樣層,可以看做是一種特殊的卷積過(guò)程,池化層能有效減小特征的分辨率,和卷積層一起大大簡(jiǎn)化模型復(fù)雜度和網(wǎng)絡(luò)參數(shù)數(shù)量.
本文的網(wǎng)絡(luò)框架是基于GoogLeNet網(wǎng)絡(luò).網(wǎng)絡(luò)框架在一般的卷積神經(jīng)網(wǎng)絡(luò)基礎(chǔ)上,除了提高網(wǎng)絡(luò)深度以增強(qiáng)網(wǎng)絡(luò)提取特征的泛化性以外,為了減少網(wǎng)絡(luò)參數(shù),防止出現(xiàn)過(guò)擬合,提出了一種Inception模型單元,如圖2所示.
圖2 Inception單元組成Fig.2 Structure of ′Inception′
Inception單元分別采用1×1、3×3、5×5三種尺寸的卷積層以及一個(gè)3×3的最大值池化層對(duì)輸入層的神經(jīng)元進(jìn)行卷積操作提取更為豐富的特征,提高了卷積網(wǎng)絡(luò)的寬度.為減少5×5的卷積核產(chǎn)生的巨大計(jì)算量,受NIN[9](Network in network)的啟發(fā),在對(duì)輸入層神經(jīng)元進(jìn)行3×3、5×5卷積操作前先采用1×1的卷積核進(jìn)行降維操作,在保證特征提取性能的同時(shí)成倍數(shù)的降低網(wǎng)絡(luò)參數(shù),節(jié)約了大量的運(yùn)行時(shí)間.與此同時(shí),GoogLeNet網(wǎng)絡(luò)整體網(wǎng)絡(luò)深度達(dá)到22層,網(wǎng)絡(luò)越深越容易帶來(lái)梯度消失問(wèn)題,不利于模型優(yōu)化.所以在整個(gè)網(wǎng)絡(luò)不同深度的Inception單元處加上了三個(gè)損失函數(shù)層(如圖3所示)來(lái)保證向前傳導(dǎo)時(shí)梯度不會(huì)消失.
圖3 GoogLeNet網(wǎng)絡(luò)損失函數(shù)層Fig.3 Loss function layer on GoogLeNet
在識(shí)別過(guò)程中,最后提取到的圖像卷積特征通過(guò)全連接層得到分類向量X=[x1,x2,…,xm],m為類別總數(shù),再輸入Softmax分類層得到樣本屬于類別i的概率值:
(1)
所以分類結(jié)果為:
(2)
訓(xùn)練時(shí)損失函數(shù)為:
Loss=-logPl
(3)
其中l(wèi)為訓(xùn)練樣本的類別標(biāo)簽.
本文使用GoogLeNet網(wǎng)絡(luò)作為整個(gè)手勢(shì)識(shí)別框架結(jié)構(gòu)的核心,參考文獻(xiàn)[11]的雙分辨率網(wǎng)絡(luò)結(jié)構(gòu),提出雙視點(diǎn)下的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu).3.1節(jié)介紹了雙視點(diǎn)手勢(shì)識(shí)別方法及多手勢(shì)預(yù)測(cè)結(jié)果的投票機(jī)制,以及利用SVM分類器替代網(wǎng)絡(luò)原有Softmax分類函數(shù)的設(shè)計(jì)方案;3.2節(jié)分析介紹了不同深度網(wǎng)絡(luò)層的特征冗余問(wèn)題以及多層卷積特征融合的問(wèn)題.
前文提到,GoogLeNet網(wǎng)絡(luò)擁有很好的分類識(shí)別性能,但是對(duì)于單視點(diǎn)手勢(shì)圖像來(lái)說(shuō)性能卻遠(yuǎn)未達(dá)到預(yù)期.究其原因,手部自由度高,單視點(diǎn)下會(huì)出現(xiàn)如圖1的手勢(shì)自遮擋問(wèn)題,導(dǎo)致“同形異構(gòu)”手勢(shì)在單視點(diǎn)下的特征差異較小,可分辨性不高,容易出現(xiàn)手勢(shì)誤判.為了減小手勢(shì)自遮擋的影響,本文借鑒文獻(xiàn)[13]提出的正交雙視點(diǎn)布局,如圖4所示,分別從兩個(gè)正交視點(diǎn)C1、C2采集目標(biāo)手勢(shì)s的輸入圖像I(s|C1)、I(s|C2).預(yù)處理后同時(shí)將雙視點(diǎn)圖像分別輸入到單獨(dú)訓(xùn)練的GoogLeNet網(wǎng)絡(luò)模型中進(jìn)行特征提取,得到三層不同深度的卷積特征f1、f2、f3.根據(jù)多卷積特征融合方法(3.2中介紹)對(duì)三個(gè)特征進(jìn)行特征降維和融合,得到最終雙視點(diǎn)下融合特征FC1、FC2.
(4)
圖4 融合多卷積特征的雙視點(diǎn)手勢(shì)識(shí)別網(wǎng)絡(luò)結(jié)構(gòu)Fig. 4 Dual-views gesture recognition framework based on the fusion of multi-convolution features
(5)
其中yi表示第i個(gè)類別標(biāo)簽,m為手勢(shì)類別數(shù)量.
在得到兩個(gè)視點(diǎn)下的預(yù)測(cè)向量XC1,XC2后結(jié)合雙視點(diǎn)預(yù)測(cè)向量的結(jié)果,采用絕對(duì)多數(shù)投票法得到最終目標(biāo)手勢(shì)的分類預(yù)測(cè)向量:
R=1-(1-XC1)?(1-XC2)
(6)
“?”表示向量對(duì)應(yīng)元素相乘,依據(jù)概率最大原則得到目標(biāo)手勢(shì)的分類結(jié)果,其中ri為R向量的第i個(gè)分量,即預(yù)測(cè)為第i類的概率:
(7)
深度學(xué)習(xí)網(wǎng)絡(luò)為了加強(qiáng)特征提取的泛化性,往往需要層數(shù)很深的卷積網(wǎng)絡(luò).一般來(lái)說(shuō),深度越深,特征表達(dá)能力越強(qiáng).通常會(huì)選取最后的全連接層特征,即圖4中特征f3,進(jìn)行分類器的訓(xùn)練.但是由于Inception單元在進(jìn)行多尺度卷積核訓(xùn)練時(shí)為了降低參數(shù)量,對(duì)特征輸入層進(jìn)行了降維操作,導(dǎo)致輸入圖像在前向傳播提取特征時(shí)丟失一部分底層特征信息.相關(guān)研究[12]證明了不同卷積層特征之間存在一定的互補(bǔ)性.為了提高深度學(xué)習(xí)網(wǎng)絡(luò)提取特征的魯棒性,本文提出了一種融合不同深度層卷積特征的方法,結(jié)合多層次特征以補(bǔ)充單層卷積特征可能造成的特征信息丟失.
GoogLeNet網(wǎng)絡(luò)共有9個(gè)Inception單元.如圖4所示,本文從淺至深分別選取第3、6、9個(gè)Inception單元的輸出進(jìn)行特征提取,得到三個(gè)不同層次的卷積特征f1、f2、f3.其中特征空間均為1×n維.為了保持融合過(guò)程中特征空間維度不變,同時(shí)忽略特征中的次要成分,本文在特征融合前先對(duì)網(wǎng)絡(luò)提取的卷積特征進(jìn)行主成分分析,并在保證特征正確表示(累計(jì)貢獻(xiàn)率>97%)的前提下對(duì)三個(gè)卷積特征進(jìn)行降維:
φ(f,α)=f*T(:,1:α·n)
(8)
其中f為原特征向量,壓縮率α根據(jù)訓(xùn)練樣本卷積特征的累計(jì)貢獻(xiàn)率確定.T∈Rn×n為根據(jù)樣本集特征得到的映射轉(zhuǎn)化矩陣,降維后特征φ(·,·)空間維度為1×(α·n)進(jìn)行降維串聯(lián)后得到三個(gè)不同層次卷積特征的融合特征為:
F=[φ(f1,α1),φ(f2,α2),φ(f3,α3)]
(9)
本文雙視點(diǎn)安排如圖5所示,數(shù)據(jù)集利用poser建模軟件構(gòu)建20種常用手勢(shì),如圖6所示.數(shù)據(jù)集中存在多種由于自遮擋導(dǎo)致的“同形異構(gòu)”手勢(shì),如手勢(shì)5和手勢(shì)6等.
圖5 視點(diǎn)安排Fig.5 Illustration of viewpoint
每一種手勢(shì)根據(jù)人手在空間中的可轉(zhuǎn)動(dòng)范圍,在三維正交軸的三個(gè)方向以一定的角度間隔連續(xù)旋轉(zhuǎn)并從正交雙視點(diǎn)方向進(jìn)行采樣.每種手勢(shì)共有1936種姿態(tài)樣本,從中選取1540組雙視點(diǎn)圖像作為訓(xùn)練樣本集,在其余樣本中再選取220組作為測(cè)試樣本.
圖6 poser建模工具構(gòu)建的20種手勢(shì)Fig.6 20 different types of gestures modeled by the software of poser
為解決自遮擋問(wèn)題,提高識(shí)別準(zhǔn)確率,本文采用雙視點(diǎn)下的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),通過(guò)實(shí)驗(yàn)對(duì)比單視點(diǎn)和雙視點(diǎn)下每一類手勢(shì)識(shí)別的準(zhǔn)確性,得到如圖7所示的對(duì)比曲線.
可以發(fā)現(xiàn)雙視點(diǎn)框架下能有效的降低單一視點(diǎn)存在的手勢(shì)自遮擋問(wèn)題的影響,明顯提高“同形異構(gòu)”手勢(shì)的整體識(shí)別準(zhǔn)確率.圖7中手勢(shì)9在視點(diǎn)C1下的識(shí)別精度要明顯高于視點(diǎn)C2下的識(shí)別精度,但是在雙視點(diǎn)結(jié)果融合后,其結(jié)果大于C2視點(diǎn)下的識(shí)別精度,卻略小于視點(diǎn)C1下的識(shí)別結(jié)果(雙視點(diǎn)和C1下準(zhǔn)確率分別為96.3636%和97.2727%).結(jié)合手勢(shì)9的測(cè)試樣本和公式(6)分析可知:該手勢(shì)在C1視點(diǎn)下不存在歧義手勢(shì),隸屬手勢(shì)9類別的置信概率最大,準(zhǔn)確率高,但在C2視點(diǎn)下由于自遮擋造成該手勢(shì)與其他手勢(shì)相似,導(dǎo)致屬于其他手勢(shì)識(shí)別置信概率增大,識(shí)別錯(cuò)誤.本文方法是結(jié)合兩個(gè)視點(diǎn)預(yù)測(cè)向量的結(jié)果,根據(jù)公式(6)在C2視點(diǎn)下錯(cuò)誤類別置信概率增大同時(shí)正確類別置信概率降低會(huì)導(dǎo)致雙視點(diǎn)下的錯(cuò)誤分類,因此出現(xiàn)雙視點(diǎn)識(shí)別率小于視點(diǎn)C1下的識(shí)別率.識(shí)別過(guò)程選擇任一視點(diǎn)都會(huì)出現(xiàn)自遮擋情況,但根據(jù)圖7所示20種手勢(shì)測(cè)試樣本的結(jié)果分析,雙視點(diǎn)識(shí)別網(wǎng)絡(luò)整體識(shí)別準(zhǔn)確率更為穩(wěn)定,能有效降低手勢(shì)在某一單視點(diǎn)下的誤識(shí)別概率.
圖7 單視點(diǎn)結(jié)構(gòu)與雙視點(diǎn)結(jié)構(gòu)效果比較Fig.7 Accuracy comparison between single view and dual-views
本文的雙視點(diǎn)識(shí)別網(wǎng)絡(luò)是基于GoogLeNet深度學(xué)習(xí)網(wǎng)絡(luò)的改進(jìn).通過(guò)在單視點(diǎn)下與兩種經(jīng)典的深度學(xué)習(xí)網(wǎng)絡(luò)GoogLeNet和Alexnet進(jìn)行識(shí)別效果的比較,驗(yàn)證本文融合多層卷積特征的方法性能.本文的三層特征的壓縮率根據(jù)實(shí)驗(yàn)結(jié)果分別取α1=1/2,α2=3/8,α3=1/8,兩個(gè)視點(diǎn)下的實(shí)驗(yàn)結(jié)果分別如圖8所示.
圖8 不同視點(diǎn)下識(shí)別準(zhǔn)確率比較Fig.8 Accuracy comparison at different viewpoint
從實(shí)驗(yàn)結(jié)果可知,本文提出的融合多卷積特征的識(shí)別方法在自遮擋程度不同的兩個(gè)視點(diǎn)下的整體識(shí)別效果均優(yōu)于GoogLeNet和Alexnet深度識(shí)別網(wǎng)絡(luò),并且對(duì)于每一類手勢(shì)的識(shí)別結(jié)果波動(dòng)較小,表明對(duì)于單視點(diǎn)下自遮擋嚴(yán)重的手勢(shì),手勢(shì)特征的可分辨性更好.
4.3節(jié)驗(yàn)證了本文方法較現(xiàn)有深度學(xué)習(xí)方法的優(yōu)勢(shì),本節(jié)為充分驗(yàn)證融合特征魯棒性,選取手勢(shì)自遮擋現(xiàn)象嚴(yán)重,“同形異構(gòu)”手勢(shì)較為突出的視點(diǎn)下,通過(guò)實(shí)驗(yàn)驗(yàn)證不同卷積層特征對(duì)識(shí)別準(zhǔn)確度的影響.實(shí)驗(yàn)結(jié)果如表1所示,隨著卷積層數(shù)的加深,手勢(shì)識(shí)別準(zhǔn)確率遞增.而融合后的多卷積特征,在單視點(diǎn)下的效果準(zhǔn)確率要優(yōu)于單一卷積層特征,說(shuō)明了多卷積特征融合具有較強(qiáng)的魯棒性.
表1 單層卷積特征與多層融合特征效果比較Table 1 Accuracy comparisons between single layer feature and fusion feature of multi-layers
本文與文獻(xiàn)[13]提出的傳統(tǒng)KNN方法和Pareto-Optimality方法進(jìn)行比較驗(yàn)證雙視點(diǎn)下不同識(shí)別方法的性能.三種方法均采用正交雙視點(diǎn)的識(shí)別框架,其中,KNN方法采用串聯(lián)結(jié)構(gòu),先在一個(gè)視點(diǎn)下進(jìn)行手勢(shì)相似度比較,篩選出一部分相似度較高的手勢(shì),再與目標(biāo)手勢(shì)在第二個(gè)視點(diǎn)下再進(jìn)行比較,最終得出手勢(shì)識(shí)別結(jié)果.而Pareto-Optimality方法則是雙視點(diǎn)下同時(shí)進(jìn)行特征相似度比較,將識(shí)別匹配問(wèn)題轉(zhuǎn)化為數(shù)據(jù)點(diǎn)集的優(yōu)化問(wèn)題得到手勢(shì)識(shí)別結(jié)果.這兩種方法進(jìn)行比較的手勢(shì)特征均采用人工設(shè)計(jì)的改進(jìn)LBP特征.
圖9 三種手勢(shì)識(shí)別方法準(zhǔn)確率比較Fig.9 Accuracy result of three methods on 20 gesture
與上述兩種方法識(shí)別準(zhǔn)確率對(duì)比結(jié)果如圖9所示.可以看出在同樣的雙視點(diǎn)框架中,本文的方法能明顯提高手勢(shì)識(shí)別的準(zhǔn)確性,證明了多卷積特征相對(duì)于傳統(tǒng)人工設(shè)計(jì)特征具有明顯的優(yōu)勢(shì).
表2 單個(gè)手勢(shì)識(shí)別平均用時(shí)Table 2 Average time cost of three methods on each gesture
傳統(tǒng)KNN方法和Pareto-Optimality方法均屬于在線學(xué)習(xí)的方法,隨著樣本庫(kù)的增大,其識(shí)別的時(shí)間也隨之增加.本文基于深度學(xué)習(xí)的方法屬于離線學(xué)習(xí)方法,只需要提前訓(xùn)練好網(wǎng)絡(luò)模型參數(shù),在實(shí)際識(shí)別過(guò)程中將目標(biāo)手勢(shì)圖像輸入網(wǎng)絡(luò)即可.即使有新的樣本加入訓(xùn)練集,只需要在原先的網(wǎng)絡(luò)參數(shù)基礎(chǔ)上對(duì)網(wǎng)絡(luò)參數(shù)進(jìn)行微調(diào),微調(diào)過(guò)程離線進(jìn)行,不影響在線識(shí)別過(guò)程.在本文相同的實(shí)驗(yàn)環(huán)境(Intel i5-4590,3.30GHz)下,表2給出了目標(biāo)手勢(shì)在三種方法下的平均識(shí)別時(shí)間,可以看出本文方法較傳統(tǒng)方法能有效提高時(shí)間效率.
本文在深度學(xué)習(xí)網(wǎng)絡(luò)基礎(chǔ)上提出了一種融合多層卷積特征的雙視點(diǎn)手勢(shì)識(shí)別方法,通過(guò)將不同層的卷積特征進(jìn)行降維,根據(jù)訓(xùn)練樣本特征貢獻(xiàn)率得到的融合特征補(bǔ)充了丟失的部分淺層卷積特征信息,提高了特征的魯棒性.同時(shí)雙視點(diǎn)網(wǎng)絡(luò)結(jié)構(gòu)能有效降低單視點(diǎn)下存在的手勢(shì)自遮擋問(wèn)題的影響,提高識(shí)別精度.基于深度學(xué)習(xí)框架的手勢(shì)識(shí)別方法在運(yùn)算時(shí)間上優(yōu)于基于數(shù)據(jù)庫(kù)查詢的在線學(xué)習(xí)方法,有利于提高手部識(shí)別的時(shí)間效率.