劉英劍 張起貴
摘 要: 針對光線、旋轉(zhuǎn)、遮擋、平移等因素對人臉檢測結(jié)果產(chǎn)生的干擾,提出一種基于Edge Boxes和深度學(xué)習(xí)相結(jié)合的人臉檢測算法。首先采用Edge Boxes算法提取出可能存在人臉的邊界框,提取邊界框中的圖像并調(diào)整至合適的大小,作為卷積神經(jīng)網(wǎng)絡(luò)的輸入,然后利用卷積神經(jīng)網(wǎng)絡(luò)對提取出的圖像進(jìn)行特征提取和分類,最后利用非極大抑制算法排除多余人臉檢測框,得到人臉的準(zhǔn)確位置。該算法應(yīng)用于LFW和Yale B人臉數(shù)據(jù)庫的檢測率分別達(dá)到98.7%和98.5%,識別單張人臉的時間均小于0.5 s。實驗結(jié)果表明,該算法在檢測率和檢測速率方面較傳統(tǒng)算法都有了很大的提高,對于遮擋、光照、旋轉(zhuǎn)等干擾具有更強的魯棒性。
關(guān)鍵詞: 人臉檢測; 特征提??; 深度學(xué)習(xí); Edge Boxes; 卷積神經(jīng)網(wǎng)絡(luò); 非極大抑制算法
中圖分類號: TN911.73?34; TP391 文獻(xiàn)標(biāo)識碼: A 文章編號: 1004?373X(2018)13?0029?05
Abstract: A face detection algorithm based on Edge Boxes and deep learning is proposed to eliminate the interference from light, rotation, occlusion, translation and other factors to the face detection results. The Edge Boxes algorithm is used to extract the bounding box maybe existing in human face, in which the image is adjusted to the appropriate size, and deemed as the input of the convolution neural network. Extraction and classification of the features in the extracted image are carried out by means of convolution neural network. The non?maximal suppression algorithm is used to exclude the excess face detection boxes to get the exact location of the face. The detection rate of the proposed algorithm can reach up to 98.7% and 98.5% respectively for LFW and Yale B face databases, and the identification time for single face is less than 0.5 s. The experimental results show that the detection rate and detection speed of the algorithm are much higher than those of the traditional algorithms, and it has stronger robustness against interference from occlusion, illumination and rotation.
Keywords: face detection; feature extraction; deep learning; Edge Boxes; convolution neural network; non?maximal suppression algorithm
人臉檢測是指給定任意圖像,采用一定的算法對其進(jìn)行搜索,判斷其中是否含有人臉,如果是則計算出人臉的位置信息。人臉檢測是計算機(jī)視覺中的基礎(chǔ)性問題,是人臉識別的基礎(chǔ),在現(xiàn)實生活中廣泛應(yīng)用于視頻監(jiān)控、人機(jī)交互、智能汽車等方面[1]。
研究表明,深度卷積神經(jīng)網(wǎng)絡(luò)能夠很好地表示高階抽象概念的復(fù)雜函數(shù)。對于神經(jīng)網(wǎng)絡(luò)而言,深度指的是網(wǎng)絡(luò)學(xué)習(xí)得到的函數(shù)中非線性運算組合水平的數(shù)量,深度模型表達(dá)能力更強、更有效率。將深度卷積神經(jīng)網(wǎng)絡(luò)用于人臉檢測是一種基于特征的方法,與傳統(tǒng)的人工特征提取相比,它的優(yōu)點是通過逐層卷積層降維進(jìn)行特征提取,通過全連接層形成更抽象、更有效的特征表示。然后經(jīng)過多層非線性映射,使網(wǎng)絡(luò)可以從大量的訓(xùn)練樣本中自動學(xué)習(xí)形成適合人臉檢測的特征提取器和分類器。該方法不僅降低了對訓(xùn)練樣本的要求,而且網(wǎng)絡(luò)層數(shù)越多,學(xué)習(xí)到的特征比傳統(tǒng)人工特征提取得到的特征更具全局性和代表性。
本文基于深度卷積神經(jīng)網(wǎng)絡(luò)的這一特性,將其用于人臉檢測,提出一種新的人臉檢測思路,避免了復(fù)雜的特征提取,利用局部感受野、共享權(quán)重和混合的方法加快網(wǎng)絡(luò)的訓(xùn)練速度和處理速度,在LFW,Yale B人臉庫上表明,與傳統(tǒng)算法LBP[2],HOG[3],PCA[4],SVM[5]相比,本文算法所提取的人臉特征判別性更強,提升了人臉檢測的準(zhǔn)確率,能夠更有效地表征非限制條件下人臉圖像的特征信息,并且進(jìn)行更準(zhǔn)確的預(yù)測。
2.3 非極大抑制算法[10]
通過以上步驟已經(jīng)基本上把人臉?biāo)诘膮^(qū)域找到,但是會從一張圖片中找出多個可能是人臉的矩形框,采用非極大值抑制算法消除多余(交叉重復(fù))的窗口,計算出合適的人臉位置信息。
首先采用Edge Boxes算法提取可能出現(xiàn)物體位置的邊界框,然后截取出邊界框中的圖像并且調(diào)整圖像的大小為32×32,以此作為訓(xùn)練好的深度卷積神經(jīng)網(wǎng)絡(luò)的輸入,利用深度卷積神經(jīng)網(wǎng)絡(luò)對邊界框中的圖像進(jìn)行特征提取和分類,判斷邊界框中的圖像是否存在人臉。最后采用非極大抑制算法進(jìn)行邊界檢測,計算人臉的合適位置。人臉檢測過程如圖3所示,算法步驟如下:
1) 使用Edge Boxes算法檢測出可能出現(xiàn)物體的窗口。
2) 提取窗口中的圖像,并且將圖像統(tǒng)一縮放至32×32,以此作為卷積神經(jīng)網(wǎng)絡(luò)的輸入。
3) 對提取出的圖像進(jìn)行特征提取和分類,判斷提取出的圖像是否是人臉。
4) 利用非極大抑制算法,針對一張人臉排除多余的人臉窗口,計算出合適的人臉位置信息。
為了驗證本文算法的性能,本文在Extend Yale B,LFW和FDDB 3個人臉數(shù)據(jù)庫上進(jìn)行人臉檢測實驗。首先在LFW上與經(jīng)典的人臉檢測算法進(jìn)行對比實驗,測試本文算法的檢測率、誤檢率、漏檢率及檢測速度;其次在Extend Yale B上測試不同光照條件下的檢測率;最后在自然場景下測試該算法的實用性。測試環(huán)境為Intel Corei5處理器,NVIDIA GEFORCE GT640M顯卡和4 GB內(nèi)存的計算機(jī)系統(tǒng),測試平臺為Matlab 2016b。
4.1 LFW人臉庫下人臉檢測對比
對比實驗結(jié)果的柱狀圖如圖4所示。不同算法的性能對比如表2所示。由表2可知,本文算法與Adaboost[11]算法、利用LBP特征進(jìn)行人臉檢測的算法和傳統(tǒng)CNN算法相比,檢測率和誤檢率遠(yuǎn)遠(yuǎn)優(yōu)于這兩種算法,檢測速度達(dá)到了0.5 f/s,基本滿足實時檢測的需求。
4.2 光照實驗
根據(jù)光照強度的不同,采用Yale B人臉數(shù)據(jù)庫作為測試數(shù)據(jù)庫。Yale B人臉數(shù)據(jù)庫分為5個集合,集合1為正面光照下的圖像,集合2和集合3分別包括輕度至中度光照變化的圖像,集合4和集合5分別包括劇烈至重度劇烈光照下的圖像。從中分別選取輕度、中度、劇烈光照下各100張圖片進(jìn)行測試,測試結(jié)果如表3所示。由表3可知,隨著光照條件劇烈惡化,其他4種方法的檢測率下降得都很快,本文算法仍能保持90%的檢測率。
4.3 自然場景檢測實驗
在實際應(yīng)用中,自然場景下多人臉檢測的應(yīng)用更為廣泛,本文中的測試圖片選自FDDB[12]人臉數(shù)據(jù)庫, 圖像中包括旋轉(zhuǎn)、光照、遮擋三種情況,檢測結(jié)果如圖5所示。從實驗結(jié)果可以看出,本文使用的算法在不同光照、人臉角度、部分遮擋的情況下具有良好的性能,在真實的自然場景中具有較好的檢測效果。
本文提出一種基于深度卷積神經(jīng)網(wǎng)絡(luò)和Edge Boxes相結(jié)合的人臉檢測方法。采用深度學(xué)習(xí)代替手工的特征提取,提高了檢測率。用Edge Boxes代替?zhèn)鹘y(tǒng)滑動窗口的算法,提高了檢測速率。在Extend Yale B,LFW和FDDB人臉數(shù)據(jù)庫上的實驗表明,該算法相比傳統(tǒng)人臉檢測算法,大大提高了檢測率和檢測速度,克服了其他算法在光照、旋轉(zhuǎn)等條件下檢測率低的缺陷,驗證了本文算法對光照和遮擋等因素的魯棒性。接下來的工作是對網(wǎng)絡(luò)參數(shù)進(jìn)行優(yōu)化,進(jìn)一步加快模型的訓(xùn)練速度。
[1] GUNASEKAR S, GHOSH J, BOVIK A C. Face detection on distorted images augmented by perceptual quality?aware features [J]. IEEE transactions on information forensics & security, 2014, 9(12): 2119?2131.
[2] WOLF L, HASSNER T, TAIGMAN Y. Effective unconstrained face recognition by combining multiple descriptors and learned background statistics [J]. IEEE transactions on pattern analysis & machine intelligence, 2011, 33(10): 1978?1990.
[3] WANG X, HAN T X, YAN S. An HOG?LBP human detector with partial occlusion handling [C]// Proceedings of 2009 IEEE International Conference on Computer Vision. Kyoto: IEEE, 2009: 32?39.
[4] MOON H, PHILLIPS P J. Computational and performance aspects of PCA?based face?recognition algorithms [J]. Perception, 2001, 30(3): 303?321.
[5] HARIPRASAD E N, JAYASREE M. Face detection using SURF descriptor and SVM [J]. International journal of computer applications, 2015, 129(4): 41?46.
[6] GLOROT X, BORDES A, BENGIO Y. Deep sparse rectifier neural networks [J]. Journal of machine learning research, 2012, 15: 315?323.
[7] SYAFEEZA A R, KHALIL?HANI M, LIEW S S, et al. Convolutional neural network for face recognition with pose and illumination variation [J]. International journal of engineering & technology, 2014, 6(1): 498?519.
[8] ZENG R, WU J, SHAO Z, et al. Quaternion softmax classifier [J]. Electronics letters, 2014, 50(25): 1929?1931.
[9] SRIVASTAVA N, HINTON G, KRIZHEVSKY A, et al. Dropout: a simple way to prevent neural networks from overfitting [J]. Journal of machine learning research, 2014, 15(1): 1929?1958.
[10] ROTHE R, GUILLAUMIN M, GOOL L V. Non?maximum suppression for object detection by passing messages between windows [C]// 2015 Asian Conference on Computer Vision. [S.l.]: IEEE, 2015: 290?306.
[11] LI Lijuan. Face detection algorithm based on general sample Adaboost [J]. Microcomputer information, 2010, 35(1): 187?191.
[12] JAIN V, LEARNED?MILLER E. FDDB: a benchmark for face detection in unconstrained settings [R/OL]. [2010?12?07]. https://people.cs.umass.edu/~elm/papers/fddb.pdf.