柏麗銀,彭亞雄,陸安江,余圣新,張 旭
(貴州大學(xué) 大數(shù)據(jù)與信息工程學(xué)院,貴州 貴陽(yáng) 550025)
近年來(lái),國(guó)內(nèi)外針對(duì)基于計(jì)算機(jī)視覺(jué)的手勢(shì)識(shí)別進(jìn)行了廣泛的研究,本文主要研究基于神經(jīng)網(wǎng)絡(luò)的手勢(shì)識(shí)別,該方法一般主要分為兩個(gè)步驟:①?gòu)?fù)雜背景下的手勢(shì)分割、手勢(shì)目標(biāo)檢測(cè);②基于神經(jīng)網(wǎng)絡(luò)的特征提取與識(shí)別。文獻(xiàn)[1]利用手勢(shì)圖像的深度信息進(jìn)行分割與定位,該方法比已有分割方法更準(zhǔn)確可靠[1]。文獻(xiàn)[2]使用改進(jìn)的YOLOv3對(duì)深度手勢(shì)圖像進(jìn)行手部目標(biāo)檢測(cè),框出手部目標(biāo),再進(jìn)行識(shí)別,該文獻(xiàn)目標(biāo)檢測(cè)和識(shí)別兩個(gè)步驟都使用了深度神經(jīng)網(wǎng)絡(luò)。文獻(xiàn)[1,2]都使用了圖像深度信息,需要的硬件設(shè)備比較高。文獻(xiàn)[3]是基于深度殘差網(wǎng)絡(luò)對(duì)手勢(shì)進(jìn)行定位與識(shí)別,使網(wǎng)絡(luò)能學(xué)習(xí)到抽象的紋理特征來(lái)識(shí)別手勢(shì)。文獻(xiàn)[4-6]基于膚色檢測(cè)分割法去除手勢(shì)圖像背景,利用卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行手勢(shì)特征提取與識(shí)別?;谀w色檢測(cè)分割背景易受光照和膚色背景影響,文獻(xiàn)[4-6]均在室內(nèi)背景下進(jìn)行實(shí)驗(yàn),不滿足任意復(fù)雜背景的需求,而且識(shí)別的手勢(shì)種類也比較少。
針對(duì)以上問(wèn)題,本文提出一種復(fù)雜背景下多特征融合的手勢(shì)識(shí)別:①提出一種改進(jìn)的手勢(shì)圖像邊緣檢測(cè);②針對(duì)復(fù)雜背景、不同光照和手部形狀大小、膚色等因素導(dǎo)致膚色檢測(cè)對(duì)手勢(shì)圖像手部分割不準(zhǔn)確的問(wèn)題,提出一種利用手勢(shì)圖像的邊緣信息與手部膚色相融合的方法,對(duì)復(fù)雜背景下的手勢(shì)進(jìn)行手部分割;③采用卷積神經(jīng)網(wǎng)絡(luò)的特性,設(shè)計(jì)卷積神經(jīng)網(wǎng)絡(luò)模型,對(duì)②分割好的手勢(shì)圖像進(jìn)行特征提取和分類識(shí)別。實(shí)驗(yàn)結(jié)果表明,本文方法在復(fù)雜背景下的魯棒性較好,識(shí)別率較高。
在實(shí)際應(yīng)用中,手勢(shì)的不同角度、不同尺寸、膚色、光照強(qiáng)度以及手勢(shì)周圍的環(huán)境等給手勢(shì)識(shí)別帶來(lái)了巨大的挑戰(zhàn)。手勢(shì)圖像的背景分為簡(jiǎn)單背景和復(fù)雜背景,簡(jiǎn)單背景是指不包含任何噪聲的背景,而復(fù)雜背景是指包含噪聲的背景。本文研究的是復(fù)雜背景下的手勢(shì)識(shí)別,如圖1所示。
圖1 復(fù)雜背景下的手勢(shì)
在圖像邊緣提取算法中,Canny算子利用圖像邊緣像素的梯度變化原理來(lái)判斷圖像的邊緣,具有較好的魯棒性,該方法信噪比大和準(zhǔn)確率高。Canny算子主要缺點(diǎn)是圖像預(yù)處理時(shí)易平滑掉手勢(shì)圖像邊緣,增加了邊緣定位的不確定性,另外在判斷邊緣時(shí),需要人工設(shè)置高低閾值,自適應(yīng)性能低[7]。本研究在Canny算子的基礎(chǔ)上對(duì)Canny算子檢測(cè)手勢(shì)圖像邊緣進(jìn)行了改進(jìn)。
在圖像預(yù)處理時(shí)使用自適應(yīng)中值濾波的保邊性能和濾除椒鹽噪聲的性能與雙邊濾波相結(jié)合的方法。該方法在降噪時(shí)能夠保持圖像邊緣信息。圖像邊緣提取時(shí),在Sobel的基礎(chǔ)上擴(kuò)展45度和135度方向的運(yùn)算[8,9],增強(qiáng)其對(duì)噪聲的適應(yīng)性。定義請(qǐng)參見(jiàn)文獻(xiàn)[10]。在進(jìn)行邊緣檢測(cè)時(shí),梯度幅值分為兩類,即邊緣與非邊緣。在不同場(chǎng)景下,邊緣與非邊緣的閾值是不同的,一個(gè)固定的值不可能適應(yīng)所有場(chǎng)景。針對(duì)手勢(shì)圖像的不同場(chǎng)景,本文利用信息論中的最大熵原理自適應(yīng)求取邊緣與非邊緣的最佳閾值,使手勢(shì)圖像邊緣檢測(cè)更加準(zhǔn)確。
復(fù)雜背景下的手勢(shì)圖像邊緣提取實(shí)驗(yàn)結(jié)果如圖2所示。
圖2 手勢(shì)圖像邊緣檢測(cè)
從實(shí)驗(yàn)結(jié)果圖2可以得出,邊緣檢測(cè)基本檢測(cè)出了手勢(shì)的邊緣,但是,在復(fù)雜背景下拍攝的手勢(shì)圖像,除了手勢(shì),還有復(fù)雜的背景。在對(duì)其進(jìn)行邊緣檢測(cè)時(shí),手勢(shì)邊緣與復(fù)雜背景邊緣同時(shí)被檢測(cè)出來(lái),復(fù)雜背景邊緣對(duì)于手勢(shì)識(shí)別是無(wú)用的,且對(duì)手勢(shì)識(shí)別造成一定的干擾,即噪聲。
膚色是人手的特征之一?;跈E圓模型的膚色檢測(cè)可以適應(yīng)環(huán)境的光照變化和適應(yīng)與膚色不同顏色的背景。RGB圖像采用非線性變換到Y(jié)CbCr空間后,膚色在圖像中呈現(xiàn)明顯的橢圓分布。定義請(qǐng)參見(jiàn)文獻(xiàn)[11]。檢測(cè)結(jié)果如圖3所示。
圖3 橢圓模型膚色檢測(cè)手勢(shì)圖像
在圖3中,圖3(a)和圖3(b)為同一手勢(shì),不同背景下的膚色檢測(cè)結(jié)果對(duì)比。圖3(c)和圖3(d)是不同背景不同手勢(shì)的實(shí)驗(yàn)結(jié)果對(duì)比。由實(shí)驗(yàn)結(jié)果可以得出,在復(fù)雜背景下,沒(méi)有膚色的背景檢測(cè)出的手勢(shì)圖像比較準(zhǔn)確,但是當(dāng)復(fù)雜背景有膚色顏色時(shí),膚色檢測(cè)就會(huì)檢測(cè)出膚色背景。在圖3(a)中有膚色背景,檢測(cè)出了手勢(shì)與部分背景。圖3(c)中,由于膚色背景的原因,該圖基本沒(méi)有過(guò)濾掉背景。圖3(d)由于光照變化的原因,在膚色檢測(cè)時(shí),手勢(shì)部分也會(huì)被默認(rèn)為背景,從而檢測(cè)不出手勢(shì)或檢測(cè)出的手勢(shì)輪廓不完整。
邊緣檢測(cè)基本可以檢測(cè)到圖像全部邊緣,但同時(shí)也會(huì)檢測(cè)到復(fù)雜背景下的邊緣。橢圓膚色模型在簡(jiǎn)單或者膚色與背景顏色相差較大時(shí),檢測(cè)效果較好,在光線較暗、有膚色背景等情況下,基本檢測(cè)不出手勢(shì)。經(jīng)研究,在復(fù)雜背景下具有膚色背景的邊緣信息比較單一,而手部邊緣信息相對(duì)背景邊緣信息較多。根據(jù)上述,本文在手勢(shì)圖像邊緣的基礎(chǔ)上,使用膚色檢測(cè)判斷邊緣像素是否為手部邊緣,然后提取手部。針對(duì)一些光線較暗,無(wú)法檢測(cè)出膚色的圖像,本文使用圖像邊緣代替。具體結(jié)構(gòu)如圖4所示。
圖4 圖像邊緣與膚色檢測(cè)融合結(jié)構(gòu)框架
手勢(shì)圖像的邊緣信息與手部膚色融合具體分為3個(gè)步驟:①遍歷邊緣圖像,判斷像素點(diǎn)是否是邊緣點(diǎn)。②如果是邊緣點(diǎn),判斷該像素點(diǎn)8領(lǐng)域內(nèi)是否有膚色點(diǎn),有,分別保留邊緣像素點(diǎn)和膚色點(diǎn),沒(méi)有,舍去。③判斷經(jīng)過(guò)膚色檢測(cè)后的邊緣圖像所保留的像素點(diǎn)總數(shù)是否大于全圖邊緣檢測(cè)的總像素點(diǎn)的2%,是,則輸出手部圖像邊緣;否,則保留邊緣檢測(cè)原圖。根據(jù)上述步驟,最后輸出手勢(shì)邊緣圖和手勢(shì)邊緣與膚色融合圖。實(shí)驗(yàn)結(jié)果如圖5所示。
圖5 圖像邊緣與膚色融合檢測(cè)結(jié)果
圖5中,圖5(a)與圖5(b)是同一手勢(shì)在不同復(fù)雜背景(有無(wú)膚色)下檢測(cè)結(jié)果對(duì)比。圖5(b)和圖5(c)是不同手勢(shì)不同背景下的檢測(cè)結(jié)果對(duì)比。由實(shí)驗(yàn)結(jié)果可以得出,手勢(shì)圖像邊緣信息與橢圓膚色模型融合,在濾除背景的同時(shí),基本檢測(cè)出了手勢(shì)手部輪廓。
綜上所述,手勢(shì)圖像的邊緣信息與橢圓膚色模型相融合可以有效分隔出手部圖像,優(yōu)于圖像邊緣檢測(cè)和膚色檢測(cè)。
卷積神經(jīng)網(wǎng)絡(luò)能夠?qū)崿F(xiàn)圖像的特征提取和分類,是一個(gè)end to end 的過(guò)程。卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)的特征見(jiàn)文獻(xiàn)[12]。在CNN中局部連接和權(quán)值共享減少訓(xùn)練參數(shù),卷積實(shí)現(xiàn)特征提取。在池化層它實(shí)現(xiàn)了降維的目的,減少網(wǎng)絡(luò)參數(shù)及過(guò)擬合,增加了神經(jīng)網(wǎng)絡(luò)的容錯(cuò)性能,提升模型魯棒性和減少訓(xùn)練參數(shù)。CNN經(jīng)過(guò)特征提取后得到一張二維的特征圖,將二維圖像轉(zhuǎn)化為一維特征圖,進(jìn)行全連接,實(shí)現(xiàn)圖像分類與識(shí)別,網(wǎng)絡(luò)結(jié)構(gòu)如圖6所示。
圖6 卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
本文設(shè)計(jì)的神經(jīng)網(wǎng)絡(luò)模型共12層,其中包含6個(gè)卷積層,每層有32個(gè)卷積核,兩個(gè)max_pooling層,兩個(gè) dropout 層和兩個(gè)全連接層,使用relu激活函數(shù)。該模型第1層使用1*1的卷積核,padding為valid,在信息完整部分采用數(shù)據(jù)加強(qiáng),可以有效提高小目標(biāo)識(shí)別率。第2層和第3層分別使用5*5的卷積核、3*3的卷積核對(duì)圖像信息進(jìn)行特征提取,padding為valid。第4層為池化層,采用最大池化,采樣窗口為2*2,步長(zhǎng)為1。第5層和第6層對(duì)第一次降維后的數(shù)據(jù)進(jìn)行再一次的特征提取,第7層對(duì)數(shù)據(jù)進(jìn)行第二次降維。第8層使用3*3的卷積核對(duì)圖像特征進(jìn)行再次提取,padding為valid。為了防止過(guò)擬合,第9層采用dropout,參數(shù)為0.75;第10層為全連接層,感知器為512個(gè);第11層再次使用dropout;第12層為全連接層,使用softmax對(duì)提取的圖像特征進(jìn)行分類識(shí)別。
本文采用NUS-II手勢(shì)數(shù)據(jù)集下的Hand Postures進(jìn)行實(shí)驗(yàn)。NUS-II數(shù)據(jù)集是在室內(nèi)外各種嘈雜背景下采集得到,圖像背景復(fù)雜多變,該數(shù)據(jù)集包含10種手勢(shì)。手勢(shì)由40個(gè)年齡在22歲~56歲之間不同種族的主體展示,包括男性和女性,因此手部膚色、輪廓大小以及攝像頭距離等表觀差異巨大。每張圖片大小為120*160,共2000張。首先對(duì)圖像進(jìn)行邊緣提取,然后融合膚色檢測(cè)將手部分割出來(lái),再將手勢(shì)圖像送入卷積神經(jīng)網(wǎng)絡(luò)模型進(jìn)行特征提取和識(shí)別。
數(shù)據(jù)集原圖只有2000張,在進(jìn)行圖像分割后得到手勢(shì)邊緣圖和手勢(shì)邊緣與膚色相融合的手勢(shì)圖,共4000張手勢(shì)圖,在訓(xùn)練時(shí),數(shù)據(jù)較少,本文對(duì)手勢(shì)邊緣與膚色融合的手勢(shì)圖取反,得到2000張圖像。將數(shù)據(jù)集增加到6000張。將數(shù)據(jù)集送入網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練,訓(xùn)練次數(shù)為120次。在訓(xùn)練時(shí),訓(xùn)練集為3840張手勢(shì)圖,驗(yàn)證集為960張手勢(shì)圖,測(cè)試集為1200張手勢(shì)圖。訓(xùn)練次數(shù)和損失率關(guān)系如圖7所示,訓(xùn)練次數(shù)與準(zhǔn)確率關(guān)系如圖8所示。
圖7 訓(xùn)練損失率與測(cè)試損失率對(duì)比
圖8 訓(xùn)練準(zhǔn)確率與測(cè)試準(zhǔn)確率對(duì)比
從實(shí)驗(yàn)結(jié)果圖可以得出,當(dāng)訓(xùn)練次數(shù)達(dá)到40次以上時(shí),損失率和準(zhǔn)確率基本收斂。平均損失率為0.0753,識(shí)別率高達(dá)99.38%,平均識(shí)別率為98.81%。為了驗(yàn)證本文算法識(shí)別性能,將本文識(shí)別手勢(shì)種類和識(shí)別率與文獻(xiàn)[4]、文獻(xiàn)[5]、文獻(xiàn)[6]、文獻(xiàn)[12]以及文獻(xiàn)[13]的方法進(jìn)行比較,數(shù)據(jù)見(jiàn)表1。
觀察表1中的數(shù)據(jù),從平均識(shí)別率比較,本文算法的平均識(shí)別率僅低于文獻(xiàn)[6],而本文識(shí)別的種類比文獻(xiàn)[6] 多7類。從手勢(shì)種類比較,本文識(shí)別手勢(shì)種類僅低于文獻(xiàn)[13],但本文平均識(shí)別率比文獻(xiàn)[13]的平均識(shí)別率高2.81%。綜上述,本文識(shí)別性能最優(yōu)。本文算法在手勢(shì)與背景分割時(shí),充分考慮了圖像邊緣與手部膚色的特征,使手勢(shì)與背景的分割更加準(zhǔn)確。在手勢(shì)特征提取時(shí),充分考慮了手部圖像的邊緣細(xì)節(jié),采用數(shù)據(jù)加強(qiáng)的方法使網(wǎng)絡(luò)模型能提取到手勢(shì)圖像更加細(xì)節(jié)的信息,提高其識(shí)別率。
表1 本文算法與其它算法識(shí)別性能比較
本文綜合考慮不同場(chǎng)景光照變化、膚色、不同年齡、手部形狀等因素對(duì)手勢(shì)識(shí)別的影響,利用手勢(shì)圖像邊緣信息與橢圓膚色檢測(cè)相融合來(lái)對(duì)復(fù)雜背景下的手勢(shì)圖像進(jìn)行手部分割,實(shí)驗(yàn)結(jié)果表明,該算法可以有效分割出手部。在構(gòu)建卷積網(wǎng)絡(luò)模型時(shí),使用1*1的卷積核對(duì)數(shù)據(jù)進(jìn)行加強(qiáng),增強(qiáng)卷積網(wǎng)絡(luò)對(duì)圖像細(xì)節(jié)特征的提取,有效減少手部形狀大小對(duì)手勢(shì)識(shí)別的影響,提高識(shí)別率,識(shí)別率為98.81%。在復(fù)雜背景下,具有一定的魯棒性。