鐘國韻,王檬檬,汪宇玲,常艷榮,吳忠粱
(東華理工大學(xué)江西省放射性地學(xué)大數(shù)據(jù)技術(shù)工程實驗室,江西 南昌 330013)
目前,人臉識別技術(shù)進(jìn)入全面攻堅階段,研究人員在已有研究成果基礎(chǔ)上提出了基于小波變換、局部二值模式、SIFT等人臉特征提取方法[1 - 3],在人臉識別中取得了重大突破。針對目前已有人臉識別方法對低分辨率(模糊)人臉識別率低的問題,近年來有許多學(xué)者進(jìn)行研究并提出了采用超分辨率重建來提高低分辨率(模糊)人臉識別率,但重建后失真像素可能影響識別性能[4 - 11]。針對這一缺陷,研究人員提出了把傳統(tǒng)特征提取方法進(jìn)行融合的新思路[12 - 16]。上述方法雖然提高了低分辨率(模糊)人臉識別率,但在實際應(yīng)用中還存在較大提升空間。近年來,人臉識別主要采取深度卷積神經(jīng)網(wǎng)絡(luò)DCNN(Deep Convolutional Neural Networks)方法,如Deepface、DeepID、Facenet等方法識別率均達(dá)到97%以上[17 - 22],但這些方法均是在分辨率較高的國際標(biāo)準(zhǔn)人臉庫上進(jìn)行實驗,在實際應(yīng)用中,尤其是在電子監(jiān)控攝像頭應(yīng)用中,由于遠(yuǎn)距離等干擾因素影響會產(chǎn)生模糊人臉,這種條件下運用DCNN識別效果會急劇下降。
Figure 1 Princilple of trace transformation 圖1 跡變換原理圖
雖然在深度學(xué)習(xí)技術(shù)推動下,人臉識別方法的識別率得到空前的提升,但在現(xiàn)實應(yīng)用場合中,光照、距離、角度、運動等客觀因素會造成人臉圖像的模糊。在這種情況下,應(yīng)用目前識別效果較好的深度卷積神經(jīng)網(wǎng)絡(luò),其模糊人臉識別效果仍然不佳,其原因是深度卷積神經(jīng)網(wǎng)絡(luò)提取的特征為局部特征的無序組合,因此模糊人臉識別率還有很大的提升空間。
為了獲得有效描述混合紋理融合的特征,本文提出一種具有“有序”全局性結(jié)構(gòu)特征的旋轉(zhuǎn)均值跳動特征提取算法,并使用基于Randon變換的極大值MRT(Maximum algorithm based on Randon Transform)進(jìn)行圖像特征提取。MRT將傳統(tǒng)跡變換中T、P泛函去掉,直接在?泛函前融合均值跳動思想,在垂線上等分選擇若干采樣點,計算每條垂線上所有值不為0的像素的平均值,按照每條垂線的紋理特征信息,結(jié)合圖像預(yù)處理和直方圖歸一化實現(xiàn)對紋理圖像“有序”全局結(jié)構(gòu)性特征信息的提取,并在支持向量機(jī)中進(jìn)行分類識別,采用多個不同類型人臉數(shù)據(jù)庫來進(jìn)一步驗證該算法對模糊人臉的識別效果。對比實驗統(tǒng)計數(shù)據(jù)顯示,利用該算法提取到的“有序”全局結(jié)構(gòu)性紋理特征,其識別效果相比深度學(xué)習(xí)算法Sphereface和VGG-19均有明顯提升,并且波動范圍較小,識別率較穩(wěn)定。
跡變換的原理如圖1所示。首先對原始圖像進(jìn)行預(yù)處理,即對圖像進(jìn)行等間隔角度的旋轉(zhuǎn)(如間隔1.5°,即能產(chǎn)生360°/1.5°=240幅圖像),對旋轉(zhuǎn)后圖像周圍填充0(如圖2所示),每幅旋轉(zhuǎn)角度后的圖像在垂直方向直線上所有像素進(jìn)行1次P泛函(可為任意函數(shù))會得到1個行向量,進(jìn)而把不同角度圖像組合成的矩陣各行進(jìn)行1次?泛函(可為任意函數(shù)),得到1個列向量,最后對該向量進(jìn)行1次T泛函(也可為任意函數(shù)),得到最后1個特征值。
Figure 2 Image rotation preprocessing圖2 圖像旋轉(zhuǎn)預(yù)處理
在圖3b中,即使把人臉五官置亂位置,DCNN還是會誤認(rèn)為是人臉;在圖3c中,把人臉進(jìn)行倒置,DCNN則會因為圖像中有一大塊黑色將其誤認(rèn)為是頭發(fā)[23]。出現(xiàn)以上現(xiàn)象的原因是,在人臉識別領(lǐng)域目前主流的深度卷積神經(jīng)網(wǎng)絡(luò)(DCNN)提取的特征為局部特征的“無序”組合,其對圖像紋理特征信息的描述還不夠全面。若采用在直線上按序取點來提取“有序”特征的方式,則可能會避免誤判的發(fā)生。
Figure 3 Face image contrast before and after scrambling the position of facial features and inversion faces圖3 置亂人臉五官位置及倒置人臉前后對比圖
對于模糊人臉,深度卷積神經(jīng)網(wǎng)絡(luò)(DCNN)的識別率還有待提高,如果采用本文所提出的具有“有序”排列的全局結(jié)構(gòu)性特征提取算法,將提取的各層特征之間進(jìn)行一個“有序”的排列組合,那么圖像之間的空間關(guān)系和旋轉(zhuǎn)不變性會得到一定程度的提升,可能會比普通的卷積神經(jīng)網(wǎng)絡(luò)有更好的識別效果。
3.2.1 旋轉(zhuǎn)均值跳動特征提取
在圖像處理中,圖像中每1行或每1列的像素值都是1組起伏波動的數(shù)值,這組數(shù)值的每一個像素值相對于其平均值來說都是上下跳動的,如圖4所示。針對于這一現(xiàn)象,本文算法的核心是在垂線上等分選擇采樣點,即每條垂線上按照從上至下的順序等分選擇8個采樣點,然后用均值跳動的方法對選擇的采樣點進(jìn)行編碼。如圖5所示,首先計算每條垂線上所有值不為0的像素的平均值;再按順序分別將選取的8個采樣點的像素值和平均值進(jìn)行比較,如果采樣點的像素值大于平均值,那么標(biāo)記為“1”,否則標(biāo)記為“0”,這樣每條垂直直線上的8個采樣點和均值比較可以生成1個8位的二進(jìn)制數(shù),將其轉(zhuǎn)化為十進(jìn)制后其值的范圍與像素值范圍相同,該十進(jìn)制數(shù)就是整條垂直直線上的特征,從而提取出描述每條垂線的紋理特征信息。由于編碼過程是按照一定的順序進(jìn)行的,所以其提取到的特征是“有序”的,且具有全局結(jié)構(gòu)性的特點。
Figure 4 Mean pulsation waveform圖4 均值跳動波形圖
Figure 5 Selection of sampling points and coding principle圖5 采樣點選取及其編碼原理
本文提取的“有序”全局結(jié)構(gòu)性特征算法中,“有序”指的是每條垂線上按照從上至下的順序等分選擇8個采樣點,“全局”指的是沿著每條垂線從圖的上沿至下沿等分采樣,即從頭至尾對垂線進(jìn)行等間隔采樣。
計算平均值公式如式(1)所示:
(1)
編碼公式如下:
ci=c1c2c3c4c5c6c7c8
(2)
如此,圖像每旋轉(zhuǎn)1個角度,對每個垂線進(jìn)行1次編碼,從而提取到1個二維的融合特征。本文算法特征提取效果圖如圖6所示。
Figure 6 Features extracted by botation mean pulsation圖6 旋轉(zhuǎn)均值跳動特征提取圖
旋轉(zhuǎn)均值跳動特征提取算法流程圖如圖7所示。
Figure 7 Flow chart of rotation means pulsation feature extraction method 圖7 旋轉(zhuǎn)均值跳動特征提取算法流程圖
3.2.2 旋轉(zhuǎn)均值跳動特征提取一般形式
在2.2.1節(jié)所述方法中,在每條垂線上只提取了1個特征值,為了進(jìn)一步研究采樣點的選取數(shù)量對于提取圖像紋理信息的影響,本節(jié)采用多點采樣分塊編碼方式,如圖8所示。
Figure 8 Selection of mean pulsation multipoint sampling and block coding diagram圖8 均值跳動多采樣點選取及分塊編碼示意圖
在輸入圖像中的每1條垂直直線上等間隔選取16個采樣點,記作x1,x2,x3,…,x16,進(jìn)而在每條垂直直線上提取2個特征值,最終得到1個三維的融合特征。為了進(jìn)一步進(jìn)行實驗驗證,將其轉(zhuǎn)化為二維特征,特征提取效果如圖9所示。
Figure 9 Rotation means pulsation extraction of two eigenvalues圖9 旋轉(zhuǎn)均值跳動提取2個特征值效果
相對于每條垂直直線上選取8個采樣點來說,選取更多的采樣點能夠捕捉到更多直線上的紋理信息,使得提取到的特征信息更加豐富。
對垂線進(jìn)行從頭至尾按順序等間隔選取24個或32個采樣點,從而得到3個或4個特征值的提取方法與之類似。
本文算法進(jìn)行直方圖歸一化時采用的灰度級為默認(rèn)的256級,不同灰度級圖像的直方圖中所包含的圖像紋理特征信息是不同的,直接影響對圖像的識別效果。本文通過降級處理分別對256,128,64,32,16級灰度圖像分別進(jìn)行分類識別,將實驗結(jié)果進(jìn)行分析比較得出能夠取得最高識別率的最適合灰度級。
3.3.1 旋轉(zhuǎn)均值跳動特征提取總框圖
旋轉(zhuǎn)均值跳動特征提取算法的總框圖如圖10所示。首先,輸入原始圖像并對圖像進(jìn)行預(yù)處理,即將圖像進(jìn)行等間隔角度旋轉(zhuǎn),為了防止圖像旋轉(zhuǎn)導(dǎo)致邊角信息缺失,我們將原圖擴(kuò)充為正方形(擴(kuò)充部分為0),然后,對圖像進(jìn)行“有序”全局結(jié)構(gòu)性特征提取,即將垂線上等分選擇的若干采樣點像素值與垂線上所有不為0的像素平均值進(jìn)行比較,并依次進(jìn)行編碼,將產(chǎn)生的8位二進(jìn)制數(shù)值對應(yīng)的十進(jìn)制數(shù)值作為垂線的特征值。接下來對所有角度提取到的特征值進(jìn)行直方圖歸一化操作,得到1個特征向量。最后將特征向量輸入到支持向量機(jī)中進(jìn)行分類識別。
Figure 10 Schematic diagram of rotation mean pulsation feature extraction method 圖10 旋轉(zhuǎn)均值跳動特征提取方法總框圖
3.3.2 圖像預(yù)處理
在實驗中,首先將原樣本圖像進(jìn)行resize處理,即將原矩形樣本圖像改變?yōu)槌叽鐬?00*100的正方形圖像。由第1節(jié)對跡變換的介紹可以得出:因穿過圖像跡線的位置是由角度和步長決定的,跡線是指穿過圖像的直線,它的位置是由角度和步長決定的,為了提高在跡線上采樣的精度以及簡化算法,本文對角度φ的取值采用圖像旋轉(zhuǎn)的方法得到。通過對resize后的圖像進(jìn)行旋轉(zhuǎn),將跡線轉(zhuǎn)化為垂直狀態(tài),即圖像中的每1列。
由于圖像旋轉(zhuǎn)會導(dǎo)致部分邊角圖像信息超出原圖像范圍,為防止圖像信息缺失,遂將原圖像擴(kuò)充為一個正方形。該正方形邊長為原圖像的對角線長,擴(kuò)充部分填充為0,且與原圖在不同區(qū)域,保證了圖像旋轉(zhuǎn)后補(bǔ)0區(qū)域像素不會干擾原圖像中灰度值為0的像素。預(yù)處理中圖像擴(kuò)充流程如圖11所示。
Figure 11 Expansion the original image into square iamge圖11 圖像預(yù)處理中將原圖像擴(kuò)充成正方形示意圖
3.3.3 直方圖歸一化方法
由于在提取旋轉(zhuǎn)均值跳動的融合特征過程中,圖像不斷地以給定角度等間隔旋轉(zhuǎn),每旋轉(zhuǎn)1個角度,都會提取出1組特征,把每1個角度的圖像特征當(dāng)作是1個cell,然后計算每個cell的直方圖,即每個數(shù)字(十進(jìn)制數(shù)特征值)出現(xiàn)的頻率,因此需要對該直方圖進(jìn)行歸一化處理。處理方法如式(3)所示:
(3)
其中,ni表示每1個cell中像素值為i的像素個數(shù),Pi表示像素值i出現(xiàn)的概率,N表示1個cell中的全部像素數(shù),k表示灰度值。
將得到的每個cell的統(tǒng)計直方圖連接成1個特征向量,這個特征向量反映了整幅圖像的紋理信息。最后將此融合特征向量輸入到支持向量機(jī)中進(jìn)行訓(xùn)練識別。本文算法采用常規(guī)的支持向量機(jī)機(jī)器學(xué)習(xí)方法,且通過本文算法獲得的融合特征更易于在支持向量機(jī)中進(jìn)行識別。
本文所用的實驗環(huán)境是Windows 7 64位操作系統(tǒng),處理器為Intel Core i3-4030U CPU@1.9 GHz。為了進(jìn)一步驗證本算法對于模糊人臉識別的精確度和實用性,本節(jié)采用ORL、Yale及AR 3種不同類型的人臉庫分別進(jìn)行實驗分析。對于監(jiān)控攝像頭遠(yuǎn)處拍攝到的低分辨率的模糊人臉,即使對它進(jìn)行分辨率插值成為更高分辨率的圖像,還是與原圖像的模糊程度接近。因此,為了使實驗過程可對比,對以上人臉庫人臉進(jìn)行高斯模糊。
ORL人臉庫中有40類人臉圖像,從每類中隨機(jī)選取8幅圖像組成訓(xùn)練集,2幅圖像組成測試集。對于Yale人臉庫中每類選取11幅圖像,其中9幅用于訓(xùn)練,2幅用于測試。AR人臉庫中有120類人臉圖像,從每類中隨機(jī)選取20幅圖像組成訓(xùn)練集,4幅圖像用于測試,每種類型循環(huán)訓(xùn)練100次得出平均識別率。識別率R定義如下:
其中,Rc為總識別的人臉數(shù)量,Rt為正確識別的人臉數(shù)量。
本文利用Sphereface和VGG-19在模糊人臉庫上與本文所提算法進(jìn)行對比,2種對比算法的訓(xùn)練樣本數(shù)與本文算法相同。
本節(jié)在上述訓(xùn)練條件下對標(biāo)準(zhǔn)人臉庫分別進(jìn)行識別,識別結(jié)果如表1所示。表1中加粗?jǐn)?shù)字為該訓(xùn)練條件下最佳識別率;P、D、H分別為取點數(shù)、人臉庫及直方圖灰度級;P1為取1個8位二進(jìn)制值的點,P2為取2個8位二進(jìn)制值的點;D1、D2、D3分別為ORL、Yale及AR庫。
Table 1 Statistical table of recognition rate on standard face database表1 標(biāo)準(zhǔn)人臉庫識別率統(tǒng)計表 %
由表1統(tǒng)計數(shù)據(jù)可知:
(1)本文算法在3個標(biāo)準(zhǔn)人臉庫均表現(xiàn)出取1個點時識別率相對更高一些。
(2)不同數(shù)據(jù)庫上人臉識別率最優(yōu)的灰度級數(shù)不同,降級處理在一定程度上減少了計算量,提高了運算效率。
(3)本文算法在3個標(biāo)準(zhǔn)人臉庫上達(dá)到的最高識別率均在98%以上,目前人臉識別效果突出的深度卷積神經(jīng)網(wǎng)絡(luò)VGG-19等相關(guān)深度學(xué)習(xí)算法在標(biāo)準(zhǔn)庫上的識別率最高是98%左右,充分驗證了本文算法的識別效果要優(yōu)于深度學(xué)習(xí)算法的。
對上述3種人臉庫圖像進(jìn)行3種不同級別的高斯模糊,其中δ為高斯半徑,均取4.0。ORL 和Yale人臉庫的1~3級模糊分別采用7×7、9×9和11×11的高斯模板;由于AR庫圖像尺寸較小,所以將其1~3級模糊分別采用3×3、5×5和7×7高斯模板。ORL人臉庫模糊示例如圖12所示。
Figure 12 Three fuzzy samples in ORL database圖12 ORL人臉庫3個模糊級別示例
在上述模糊條件下,采用本文算法、Sphereface算法及VGG-19算法對3個模糊人臉庫分別進(jìn)行訓(xùn)練識別并對其結(jié)果進(jìn)行對比分析。本文算法識別效果如表2~表4所示,加粗?jǐn)?shù)字為該訓(xùn)練條件下最佳識別率,F(xiàn)表示模糊級別。3個數(shù)據(jù)庫上取最佳識別率統(tǒng)計如表5所示。
Table 2 Fuzzy face recognition rate on ORL database表2 ORL模糊人臉庫識別率 %
Table 3 Fuzzy face recognition rate on Yale database表3 Yale模糊人臉庫識別率 %
Table 4 Fuzzy face recognition rate on AR database表4 AR模糊人臉庫識別率 %
Table 5 Optimum recognition rate for each fuzzy level on three databases表5 3個數(shù)據(jù)庫上各模糊級別最佳識別率 %
由表5可以看出,本文算法對標(biāo)準(zhǔn)人臉和模糊人臉的識別效果不相上下,進(jìn)一步驗證了本文算法的實用性。從表2~表5中也可發(fā)現(xiàn),在少數(shù)幾種實驗條件下,模糊3級的識別率甚至高于模糊1級的識別率。這種現(xiàn)象的出現(xiàn),一方面表示本文提出的“全局結(jié)構(gòu)性”特征受模糊程度影響很??;另一方面說明不同條件下提取的特征存在一些影響訓(xùn)練分類器效果的波動性。
在不同模糊程度下,本文算法、Sphereface算法和VGG-19算法上述3個人臉庫上的識別率和時效性統(tǒng)計數(shù)據(jù)如表6和表7所示,其中,本文算法識別率和識別耗時統(tǒng)計數(shù)據(jù)均是在P1條件下的最佳識別率和所用識別時間(s),加粗?jǐn)?shù)字為3種算法在各模糊3級人臉庫上的最佳識別率和識別時間。
Table 6 Recognition rates using three algorithms on fuzzy face databases表6 模糊人臉庫上3種算法識別率 %
Table 7 Recognition time using three algorithms on fuzzy face databases表7 模糊人臉庫上運用3種算法識別時間 s
圖13為3種算法在模糊人臉上的識別效果。
Figure 13 Recognition effect comparison among three algorithms on fuzzy three-level face databases圖13 3種算法在模糊3級人臉庫上識別效果對比圖
由上述實驗結(jié)果可以看出,在3種模糊程度上,本文算法對模糊人臉的識別時間和識別率要遠(yuǎn)遠(yuǎn)優(yōu)于Sphereface和VGG-19算法,圖像的模糊級別越高,深度學(xué)習(xí)算法對其識別的時效性及識別效果越差,但模糊圖像對本文算法識別效果影響卻很小。這也進(jìn)一步說明了本文算法提取到的是“有序”全局結(jié)構(gòu)性特征。與深度學(xué)習(xí)算法提取到的局部特征的“無序”組合相比,本文算法使提取的各層特征之間進(jìn)行一個“有序”的排列組合,就是這種“有序性”帶來了“全局結(jié)構(gòu)性”,使得本文算法能不受模糊影響,以較高的識別率識別出各種模糊的人臉。
本文提出了一種旋轉(zhuǎn)均值跳動特征提取算法,通過圖像預(yù)處理、圖像旋轉(zhuǎn)、均值跳動圖像紋理特征提取和直方圖歸一化實現(xiàn)對圖像“有序”全局結(jié)構(gòu)性特征信息的提取,最后在支持向量機(jī)中進(jìn)行分類識別并對實驗結(jié)果進(jìn)行了詳細(xì)分析。
從實驗對比數(shù)據(jù)分析可以得出,在ORL、Yale和AR人臉庫上本文算法在模糊3級條件下取得的最優(yōu)識別率分別為:98.6667%,98.0667%和97.9269%,而目前人臉識別領(lǐng)域主流的CNN卷積神經(jīng)網(wǎng)絡(luò)VGG-19算法所得最高識別率為94.25%,并且本文算法識別波動較小,識別率較穩(wěn)定。