孫 進(jìn), 張道周, 張 洋, 習(xí)俊通, 朱興龍
(1.揚(yáng)州大學(xué) 機(jī)械工程學(xué)院,江蘇 揚(yáng)州 225127;2.上海交通大學(xué) 機(jī)械系統(tǒng)與振動(dòng)國(guó)家重點(diǎn)實(shí)驗(yàn)室,上海 200240)
隨著計(jì)算機(jī)性能的發(fā)展,人機(jī)交互越來(lái)越頻繁。手勢(shì)是人機(jī)交互的一種方式,手勢(shì)識(shí)別就是通過(guò)計(jì)算機(jī)分析每個(gè)手勢(shì)的具體含義。通過(guò)對(duì)手勢(shì)的識(shí)別,可以獲得人的表情,從而達(dá)到直觀、智能的人機(jī)交互目的[1]。多通道卷積神經(jīng)網(wǎng)絡(luò)(convolution neural network,CNN)是CNN的一種新結(jié)構(gòu)。它可以接受圖像的不同特征作為輸入,并分別進(jìn)行卷積處理[2]。
為了提高手勢(shì)識(shí)別率,本文提出了一種基于雙通道空洞卷積神經(jīng)網(wǎng)絡(luò)(dilated convolution Net,DC-Net)的手勢(shì)識(shí)別算法。對(duì)原始手勢(shì)圖像進(jìn)行預(yù)處理、去噪和邊緣檢測(cè),然后,將邊緣圖像和手勢(shì)圖像分別作為DC-Net的兩個(gè)輸入通道。每個(gè)通道包含相同數(shù)量的卷積層和相同的參數(shù),但每個(gè)通道都有單獨(dú)的權(quán)重。在全連接層進(jìn)行特征融合,最后,用SoftMax分類(lèi)器對(duì)識(shí)別結(jié)果進(jìn)行分類(lèi)。
本文采用改進(jìn)CNN的特征提取和分類(lèi)器的方式,將輸入通過(guò)5個(gè)Block模塊后,再接入全連接層進(jìn)行輸出[3],如圖1所示為本文DC-Net網(wǎng)絡(luò)結(jié)構(gòu)。前兩個(gè)Block先采用空洞卷積代替普通卷積,擴(kuò)大感受野,提取整體特征。然后再通過(guò)三個(gè)普通卷積核模塊進(jìn)行細(xì)節(jié)提取。最后通過(guò)兩層全連接層輸出,完成訓(xùn)練。

圖1 DC-Net網(wǎng)絡(luò)結(jié)構(gòu)
1.1.1 空洞卷積
傳統(tǒng)的卷積方法是將濾波器滑過(guò)相鄰的元素,并提取這些元素之間的高層特征[4],如圖2(a)所示。而在空洞卷積中,其卷積示意圖如圖2(b)所示,卷積濾波器中所涉及的點(diǎn)之間存在空格。因此,在不增加濾波器大小和計(jì)算時(shí)間的情況下,可以擴(kuò)大感受野[5]。

圖2 卷積示意
1.1.2 兩個(gè)3×3普通卷積
3×3卷積核能夠捕獲像素八鄰域的信息[6]。假設(shè)輸入(input)圖片大小為(n,n),卷積核大小為(k,k),步長(zhǎng)為s,填充為p,卷積核卷積后輸出尺寸:(n+2p-k)/s+1。因此,(5,5)卷積核的感受野和的2個(gè)(3,3)卷積核的感受野是一樣的,故可以通過(guò)小尺寸卷積層的堆疊替代大尺寸卷積層,并且感受野大小不變。
1.1.3 兩個(gè)3×3空洞卷積
3×3空洞卷積在膨脹率為2時(shí),感受域變?yōu)?×5,也就是說(shuō)3×3空洞卷積感受野等效于5×5普通卷積感受野[7]。連續(xù)兩個(gè)3×3普通卷積,同樣步長(zhǎng)為1,填充為0。兩個(gè)3×3空洞卷積相當(dāng)于9×9的普通卷積的感受野,所提取的特征更大,可以獲取更豐富的信息,從而提高分割精度[8]。
1.1.4 批量歸一化層
為了避免空洞卷積塊中的參數(shù)更新導(dǎo)致空洞卷積層的輸出發(fā)生劇烈變化,本文在空洞卷積層后增加一層批量歸一化層,通過(guò)引入小批量數(shù)據(jù)的均值和標(biāo)準(zhǔn)差來(lái)調(diào)整輸出,從而使整體模型輸出更加穩(wěn)定。
1.1.5 最大值池化層
由于最大值池化層具有保留數(shù)據(jù)的顯著特征且能夠進(jìn)行尺度放縮的特點(diǎn),本文選擇最大值池化層對(duì)卷積后的數(shù)據(jù)進(jìn)行下采樣,并將下采樣得到的特征通作為該通道的輸出,使得顯著的特征能夠傳遞到輸出部分,并且特征塊能夠與空洞卷積層輸出特征塊大小相適應(yīng)。
為了在不丟失邊緣的情況下獲得平滑的圖像,采用高斯濾波對(duì)原始手勢(shì)圖像進(jìn)行去噪處理,然后進(jìn)行閾值分割,利用形態(tài)學(xué)處理得到輪廓,最后通過(guò)Canny算法進(jìn)行邊緣檢測(cè),得到邊緣圖像,其流程如圖3所示。

圖3 手勢(shì)邊緣檢測(cè)
1.2.1高斯濾波去噪
根據(jù)研究問(wèn)題的特點(diǎn)及需求,選擇采用高斯濾波手段。高斯濾波實(shí)際上是一種低通濾波器,可以過(guò)濾高頻的噪聲信號(hào)。高斯濾波依賴(lài)的是高斯函數(shù),而高斯函數(shù)是一種具有可分離性的函數(shù),即可將二維高斯函數(shù)運(yùn)算轉(zhuǎn)換為一維高斯,實(shí)現(xiàn)平滑模糊處理。
1.2.2 YCrCb閾值分割
YCrCb是一種顏色空間,該空間可分離出亮度,大大減輕光照影響,從而將三維空間降為二維。將RGB圖像轉(zhuǎn)換到Y(jié)CrCb空間中,膚色的像素點(diǎn)在Cr-Cb面上會(huì)集中成一個(gè)橢圓區(qū)域。相比于在HSV空間里,橢圓模型很好地排除了光照的影響。
1.2.3 形態(tài)學(xué)處理
膨脹與腐蝕作為最基本的形態(tài)學(xué)操作,可以經(jīng)過(guò)不同的順序組合,獲取多樣且豐富的圖像效果。膨脹是獲取像素點(diǎn)的局部最大值。結(jié)構(gòu)元與圖像卷積運(yùn)算,獲取結(jié)構(gòu)元覆蓋區(qū)域像素最大值,并賦值給指定的像素。膨脹后,圖像中的明亮區(qū)域增加。腐蝕操作就是獲取區(qū)域像素的局部最小值。
1.2.4 Canny算子邊緣檢測(cè)
利用Canny算子計(jì)算方法完成邊緣檢測(cè),其步驟如下:1)計(jì)算圖像中每個(gè)像素點(diǎn)梯度矢量;2)檢測(cè)像素點(diǎn),保留最大梯度幅值點(diǎn),抑制其他點(diǎn);3)Canny邊緣檢測(cè)用到高低兩個(gè)閾值,高閾值區(qū)分特征與背景,低閾值平滑邊緣。
為了優(yōu)化手勢(shì)識(shí)別的訓(xùn)練過(guò)程,本文提出了雙通道的DC-Net,其結(jié)構(gòu)如圖4所示。雙通道DC-Net結(jié)構(gòu)由兩個(gè)相對(duì)獨(dú)立的CNN組成。第一個(gè)DC-Net的輸入是經(jīng)過(guò)預(yù)處理后的手勢(shì)圖像,第二個(gè)DC-Net輸入的是手勢(shì)邊緣圖像。在卷積層之后,雙通道分別連接到全連接層,并執(zhí)行全連接映射。

圖4 算法流程框圖
本文的數(shù)據(jù)采用自制的5 000張大小統(tǒng)一為227×227×3數(shù)據(jù)集,分為5類(lèi),分別為1,2,3,4,5種手勢(shì),如圖5所示,在網(wǎng)絡(luò)訓(xùn)練和驗(yàn)證階段,每類(lèi)手勢(shì)有1 000張照片,訓(xùn)練和驗(yàn)證比例采用8︰2。

圖5 數(shù)據(jù)庫(kù)圖片
為了驗(yàn)證雙通道DC-Net在手勢(shì)識(shí)別中的實(shí)際應(yīng)用,通過(guò)PYQT建立識(shí)別界面,如圖6所示。

圖6 手勢(shì)識(shí)別界面
同時(shí)設(shè)計(jì)了兩組實(shí)驗(yàn),進(jìn)行算法的比較:
2.2.1 單通道DC-Net與雙通道DC-Net的比較
DC-Net結(jié)合空洞卷積得到整體特征與普通卷積得到的細(xì)節(jié)特征,能夠有效識(shí)別手勢(shì),如圖7所示。單通道DC-Net訓(xùn)練準(zhǔn)確率達(dá)到96.2 %,損失值降低至0.1;通過(guò)雙通道DC-Net,將普通的RGB圖像與手勢(shì)輪廓圖像共同訓(xùn)練,訓(xùn)練結(jié)果如圖7所示,雙通道DC-Net訓(xùn)練準(zhǔn)確率達(dá)到99.6 %,損失值降低至0.06。

圖7 雙通道DC-Net訓(xùn)練結(jié)果
雙通道DC-Net算法利用手勢(shì)圖像和邊緣圖像的兩個(gè)輸入通道可以學(xué)習(xí)到更豐富的信息。與傳統(tǒng)的單通道卷積神經(jīng)網(wǎng)絡(luò)相比,雙通道DC-Net特征提取的范圍更廣;與單通道DC-Net相比,提取的手勢(shì)特征更廣。
2.2.2 雙通道DC-Net算法與其他算法的比較
選取了具有代表性的傳統(tǒng)手勢(shì)識(shí)別算法Alexnet與本文提出的雙通道DC-Net算法進(jìn)行了比較。單通道Alexnet訓(xùn)練準(zhǔn)確率保持在80.3 %;雙通道Alexnet訓(xùn)練準(zhǔn)確率保持在84.1 %。單通道DC-Net算法結(jié)合空洞卷積和普通卷積,進(jìn)行整體特征與細(xì)節(jié)特征的提取。與傳統(tǒng)的Alexnet CNN相比,單通道DC-Net所提取特征更完整,手勢(shì)識(shí)別率較好。
為了提高手勢(shì)識(shí)別率,本文提出了一種新的雙通道手勢(shì)識(shí)別算法DC-Net。在該算法模型中,選擇手勢(shì)圖像和邊緣圖像作為兩個(gè)輸入通道。為了獲得更豐富的局部信息和整體拓?fù)浣Y(jié)構(gòu),在融合后的全連接層進(jìn)行特征融合,提取更深層次的分類(lèi)信息。實(shí)驗(yàn)結(jié)果表明,雙通道DC-Net手勢(shì)識(shí)別率達(dá)到99.6 %。同時(shí),它能適應(yīng)簡(jiǎn)單復(fù)雜、明暗背景形式,具有較強(qiáng)的泛化能力。