使用多任務級聯卷積網絡進行人臉檢測和對齊(MTCNN翻譯)

使用多任務級聯卷積網絡進行人臉檢測和對齊

摘要

在無約束的環境下,由於各種各樣的姿勢、光線強度以及面部遮擋等原因,人臉檢測和對齊是一個巨大的挑戰。最近的研究表明,深度學習的方法在這兩個任務上的表現令人印象深刻。在本文中,我們提出了一個深入的級聯多任務框架,通過它們之間內在的相互關係去提高它們的性能。值得一提的是,我們的框架採用級聯結構伴隨着精心設計的深度卷積網絡的三個階段,以粗到細的方式去預測人臉和特徵點的位置。除此之外,在學習的過程中,我們提出了一種新的在線硬樣本挖掘方法,能夠在沒有手動選擇樣本的情況下自動提升性能。在FDDB和WIDER FACE爲基準的人臉識別挑戰和以ALFW爲基準的人臉對齊挑戰中,我們的方法在保持實時性能的同時,達到了極高的精確度並且超過了現在最新的技術。

關鍵字:人臉檢測    人臉對齊    級聯卷積神經網絡

一、緒論

人臉檢測和對齊是很多人臉應用的基礎,如人臉識別和表情分析。然而,人臉在遮擋、姿態變換以及極端光照的巨大變化下,給這些任務在實際應用中帶來了巨大的挑戰。

Viola和Jones[2]提出的級聯人臉檢測算法利用類haar特徵和adaboost來訓練級聯分類器,取得了良好的性能和實時性。然而,相當多的工作[1, 3, 4]表明該檢測器在實際應用中的性能會顯著降級,即使在具有更高級特徵和分類器的情況下,人臉的視覺變化也會變得更大。在級聯結構的基礎上,[5, 6, 7]引入了用於人臉檢測的可變模型(DPM),取得了顯著的性能。然而,它們需要很高的計算開銷,並且在訓練階段通常需要繁瑣的標註。近年來,卷積神經網絡(CNN)在各種計算機視覺任務中取得了顯著進步,例如圖像分類[9]和人臉識別[10]。由於受到CNN在計算機視覺任務中取得良好表現的啓發,所以近年來提出了一些基於CNN面部檢測的方法。Yang et al. [11]訓練了用於面部屬性識別的深度卷積神經網絡,以便於在面部區域獲得高區分度,從而進一步產生面部的候選窗口。但是由於其複雜的CNN結構,這種方法在實踐中非常耗時。Li et al. [19]使用級聯的CNN進行人臉檢測,但是它需要在人臉檢測中進行邊界框校準,伴隨着額外的計算開銷,並且忽略了人臉標誌定位和邊界框迴歸之間的內在關聯。

人臉對齊也同樣引起了廣泛的關注,基於迴歸的方法[12,13,16]和模板擬合的方法[14,15,7]是兩個流行的類別。最近, Zhang et al. [22]提出了在使用面部屬性識別作爲輔助任務的基礎上利用深度卷積神經網絡提高面部對齊的性能。

然而,大多數可用的面部檢測和麪部對齊的方法都忽略了這兩個任務之間的固有關聯。儘管已經存在了幾種嘗試共同解決它們的作品,但是這些作品然而存在侷限性。例如,Chen et al. [18] 使用像素值差的特徵與隨機森林聯合進行對準和檢測,但是其使用的手動特徵限制了這個方法的性能。Zhang et al. [20]使用多任務CNN來提高多視圖中人臉檢測的準確性,但是其檢測精度收到弱人臉檢測器產生的初始檢測窗口的限制。

另一方面,在訓練過程中,挖掘硬樣本對於增強檢測器的能力至關重要。但是,傳統的硬樣本挖掘通常以離線的方式執行,這大大增加了手動操作。所以期望能夠設計出一種用於面部檢測和對準的在線硬樣本挖掘策略,該策略能夠自動適用於當前的訓練過程。

在本文中,我們提出了一個新框架,通過多任務學習使用統一級聯的CNN去集成這兩個任務。這個CNN框架包含三個階段。在第一階段,它會通過淺層的CNN快速生成候選窗口。然後,它將通過更復雜的CNN來優化窗口以拒絕大量非面部窗口。最後,手那個用功能更強大的CNN細化結果並輸出面部標誌位置。

Fig. 1

Fig. 1.我們級聯框架的管道包含三個階段任務的深度卷積網絡。首先,通過快速的提案網絡(P-Net)產生候選窗口。之後,在下一階段通過優化網絡(R-Net)優化這些候選對象。在第三階段,輸出網絡(O-Net)產生最終的邊界框和麪部標誌位。

多虧了這種多任務學習框架,該算法的性能得以顯著提升。本文的主要貢獻概括如下:

(1)我們提出了一個新的基於級聯CNN的聯合人臉檢測和對齊的框架,並精心設計了輕量級CNN框架以實現實時性能。

(2)我們提出了一種有效的在線硬樣本挖掘方法以提高其性能。

(3)在具有挑戰性的基準上進行了廣泛的實驗,以證明該方法的顯著能行,並且能夠改進與最先技術相比的面部檢測和對齊任務。

二、方法

在本節中,我們將描述我們人臉檢測和對齊的聯合方法。

A. Overall Framework

我們的方法整體流程如Fig. 1所示。給定圖像,我們首先將其調整爲不同的比例以構建圖片金字塔,以下內容是三個輸入階段的級聯框架:

Stage 1:我們利用被稱之爲全卷積網絡的提案網絡(P-Net),以[29]類似的方式去獲取候選窗口和它們的邊界框迴歸向量。然後我們使用估計的邊界框迴歸向量來校準候選人。接着,我們利用非最大抑制(NMS)來合併高度重疊的候選人。

Stage 2:所有候選人都送入另一個名爲“優化”的CNN網絡(R-Net),進一步拒絕大量錯誤候選者,使用邊界框迴歸進行校準,再與NMS候選者合併。

Stage 3:這個階段類似於第二階段,但是在這個階段,我們旨在更詳細的描述面孔。尤其是,網絡將輸出五個面部標誌的位置。

B. CNN Architectures

在[19]中,已經爲面部檢測設計了多個CNN。然而,我們注意到其性能可能受到以下事實限制:

(1)一些過濾器缺乏權重的多樣性可能會限制它們產生區分性描述。

(2)與其它多類別的目標檢測和分類任務相比,人臉檢測是一個具有挑戰性的二進制分類任務,因此它可能需要用較少的過濾器數量去獲取在它們之中更多的區分度。爲此,我們減少了過濾器的數量,將5x5過濾器更改爲3x3過濾器以較少計算量,同時增加深度以獲得更好的性能。 用這些改善與[19]中之前的架構相比,我們可以用更少的運行時間獲得更好的性能(結果如Table 1所示。爲了公平比較,我們將相同的數據用於兩種方法)。我們的CNN架構如Fig. 2所示。

C. Training

我們利用三項任務來訓練CNN檢測器:人臉/非人臉分類,邊界框迴歸和麪部標誌本地化。

(1)人臉分類:將學習目標表述爲二分類問題。對於每個樣本^{}x_{i},我們使用交叉熵損失:

 其中p_{i}表示網絡產生的概率,表明一個樣本就是一張臉。符號y_{i}^{det}\in \left \{ 0,1 \right \}表示真實標籤。

(2)邊界框迴歸:對每個候選窗口,我們預測它與最接近真實情況之間的偏移量(即,邊界框的左上角,高度和寬度)。學習目標被稱之爲迴歸問題,我們採用每個樣本^{}x_{i}的歐幾里得損失:

其中\widehat{y}_{i}^{box}是從網絡中獲得的迴歸目標,y_{i}^{box}是真實座標。這裏有四個座標,包含左上角,高度和寬度,因此y_{i}^{box}\in R^{4}

(3)面部標誌定位:類似於邊界框迴歸任務,將面部標誌檢測公式化爲迴歸問題,我們將歐幾里得損失降至最低:

 其中\widehat{y}_{i}^{landmark}是從網絡中獲得的面部標誌座標,y_{i}^{landmark}是真實座標。這裏有五個面部標誌,包括左眼,右眼,鼻子,左嘴角和右嘴角,因此y_{i}^{landmark}\in R^{4}

(4)多來源訓練:由於我們在每個CNN中採用不同的任務,因此在學習過程中有不同類型的訓練圖像,例如面部,非面部和部分對齊的面部。在這種情況下,一些損失函數(i.e., Eq. (1)-(3))將不被使用。例如說,對於背景區域的樣本,我們只計算L_{i}^{det},將其它兩個損失值設爲0。這可以直接通過樣本類型指示器來實現。然後總體學習目標可以表述爲:

 其中N是訓練樣本數量。\alpha _{j}表示任務的重要性。我們在P-Net和R-Net中使用\left (\alpha _{det}= 1,\alpha _{box}= 0.5,\alpha _{landmark}= 0.5 \right ),在O-Net中使用\left (\alpha _{det}= 1,\alpha _{box}= 0.5,\alpha _{landmark}= 1 \right )來獲得更準確的面部標誌定位。\beta _{i}^{j}\in \left \{ 0,1 \right \}是樣本類型指示器。在這種情況下,採用自然的隨機梯度下降來訓練CNN。

(5)在線硬樣本挖掘:不同於先進行傳統硬樣本挖掘,後訓練原始分類器的方法,我們在人臉分類任務中進行在線硬樣本挖掘以適應訓練過程。

尤其是,在每個小批量中,我們對所有樣本在前向傳播階段計算出的損耗進行排序,並選擇其中的前70%作爲硬樣本。然後,我們僅在後向傳播階段從硬樣本中計算梯度。這意味着我們忽略了簡單的樣本,這些樣本在訓練時對增強檢測器的幫助較小。實驗表明,這種策略無需手動選擇樣本即可獲得更好的性能。第三節中證明了其有效性。

三、實驗

在本節中,我們首先評估提出的硬樣本挖掘策略的有效性。然後,我們將人臉檢測和對齊與人臉檢測數據集中最先進的方法進行對比,包含FDDB[25],WIDER FACE[24]和帶標記的野外環境AFLW[8]。FDDB數據集包含2,845張圖像,5,171張人臉。WIDER FACE數據集由32,203張圖像中的393,703個帶標籤的面部邊界框組成,其中50%根據圖像的難度分爲三個子集進行測試,40%用於訓練,其餘用於驗證。AFLW包含24,386張面部的標籤註釋,並且我們使用與[22]相同的測試子集。最後,我們評估人臉檢測器的計算效率。

A. Training Data

由於我們同時使用人臉檢測和對齊,因此我們在訓練過程中使用四種不同類型的數據註釋:

(i)負樣本:與真實人臉聯合相交(IoU)小於0.3的區域。

(ii)正樣本:與真實人臉相交高於0.65.

(iii)局部樣本:與真實人臉相交,IoU在0.4和0.65之間。

(iv)標籤樣本:人臉5個標誌的標籤位置。

負樣本和正樣本用於人臉分類任務,正樣本和局部樣本用於邊界框迴歸,標籤樣本用於人臉標誌的定位。每個網絡的訓練數據描述如下:

(1)P-Net:我們對WIDER FACE[24]進行了隨機裁切,以收集正樣本,負樣本和局部樣本。然後,我們將CelebA[23]中的人臉裁剪爲標籤樣本。

(2)R-Net:在從CelebA[23]中檢測標籤人臉的時候,我們使用框架中的第一階段從WIDER FACE[24]檢測人臉,以收集正樣本,負樣本和局部樣本。

(3)O-Net:類似於R-Net收集數據,但我們使用框架的前兩個階段來檢測人臉。

B. The effectiveness of online hard sample mining 

爲了評估提出的在線硬樣本挖掘策略的貢獻,我們訓練了兩個O-Net(有和沒有在線硬樣本挖掘)並比較了它們的損失曲線。爲了更直接地進行比較,我們僅訓練O-Net進行人臉分類任務。在這兩個O-Net中,包括網絡初始化在內的所有訓練參數都相同。爲了更輕鬆地比較它們,我們使用固定學習率。Fig. 3 (a)顯示了兩種不同訓練方式的損耗曲線。很明顯,硬樣本挖掘有利於提高性能。

C. The effectiveness of joint detection and alignment

爲了評估聯合檢測和對齊的貢獻,我們評估了FDDB(具有相同的P-Net和R-Net,以進行公平比較)上兩個不同的O-Net(聯合面部標識迴歸任務和不聯合)的性能。我們還比較了這兩個O-Net中邊界框迴歸的性能。Fig. 3 (b) 表明聯合面部標識任務學習對於人臉分類和邊界框迴歸任務都是有益的。

D. Evaluation on face detection

爲了評估我們的人臉檢測方法的性能,我們將我們的方法與FDDB中 [1,5, 6, 11, 18, 19, 26, 27, 28, 29]和WIDER FACE中[1, 24, 11]最先進的方法進行了比較。Fig. 4(a)-(d)表明,我們的方法在兩個基準測試中均以較大的優勢勝過先前所有的方法。我們還評估了一些具有挑戰性照片的方法。

E. Evaluation on face alignment

在這一部分中,我們將我們的方法與以下方法的人臉對齊性能進行了比較:RCPR [12], TSPM[7], Luxand face SDK [17], ESR [13], CDM [15], SDM [21], TCDCN [22]。在測試階段,我們的方法無法檢測到13張圖像。 因此,我們裁剪了這13張圖像的中心區域,並將它們作爲O-Net的輸入。通過估計的標誌位和真實標誌位之間的距離測量平均誤差,並相對於眼間距離進行歸一化。 Fig. 4 (e)表明我們的方法在性能上優於所有最新方法。

F. Runtime efficiency

給定級聯結構,我們的方法可以在聯合人臉檢測和對齊中實現非常快的速度。在2.60GHz CPU上達到16fps,在GPU (Nvidia Titan Black)上達到99fps。目前,我們的實現基於未優化的MATLAB代碼。

四、結論

在本文中,我們提出了一種基於多任務級聯CNN的框架,用於聯合人臉檢測和對齊。實驗結果表明,在保持實時性能的同時,我們的方法在多個具有挑戰性的基準(包括用於人臉檢測的FDDB和WIDER FACE,以及用於人臉對齊的AFLW)上始終優於最新方法。 將來,我們將利用人臉檢測與其它人臉分析任務之間的固有關聯性,進一步提高性能。

參考資料

[1] B. Yang, J. Yan, Z. Lei, and S. Z. Li, “Aggregate channel eatures for multi-view face detection,” in IEEE International Joint Conference on Biometrics, 2014, pp. 1-8.

[2] P. Viola and M. J. Jones, “Robust real-time face detection. International journal of computer vision,” vol. 57, no. 2, pp. 137-154, 2004

[3] M. T. Pham, Y. Gao, V. D. D. Hoang, and T. J. Cham, “Fast polygonal integration and its application in extending haar-like features to improve object detection,” in IEEE Conference on Computer Vision and Pattern Recognition, 2010, pp. 942-949.

[4] Q. Zhu, M. C. Yeh, K. T. Cheng, and S. Avidan, “Fast human detection using a cascade of histograms of oriented gradients,” in IEEE Computer Conference on Computer Vision and Pattern Recognition, 2006, pp. 1491-1498.

[5] M. Mathias, R. Benenson, M. Pedersoli, and L. Van Gool, “Face detection without bells and whistles,” in European Conference on Computer Vision, 2014, pp. 720-735.

[6] J. Yan, Z. Lei, L. Wen, and S. Li, “The fastest deformable part model for object detection,” in IEEE Conference on Computer Vision and Pattern Recognition, 2014, pp. 2497-2504.

[7] X. Zhu, and D. Ramanan, “Face detection, pose estimation, and landmark localization in the wild,” in IEEE Conference on Computer Vision and Pattern Recognition, 2012, pp. 2879-2886.

[8] M. Köstinger, P. Wohlhart, P. M. Roth, and H. Bischof, “Annotated facial landmarks in the wild: A large-scale, real-world database for facial landmark localization,” in IEEE Conference on Computer Vision and Pattern Recognition Workshops, 2011, pp. 2144-2151.

[9] A. Krizhevsky, I. Sutskever, and G. E. Hinton, “Imagenet classification with deep convolutional neural networks,” in Advances in neural information processing systems, 2012, pp. 1097-1105.

[10] Y. Sun, Y. Chen, X. Wang, and X. Tang, “Deep learning face representation by joint identification-verification,” in Advances in Neural Information Processing Systems, 2014, pp. 1988-1996.

[11] S. Yang, P. Luo, C. C. Loy, and X. Tang, “From facial parts responses to face detection: A deep learning approach,” in IEEE International Conference on Computer Vision, 2015, pp. 3676-3684.

[12] X. P. Burgos-Artizzu, P. Perona, and P. Dollar, “Robust face landmark estimation under occlusion,” in IEEE International Conference on Computer Vision, 2013, pp. 1513-1520.

[13] X. Cao, Y. Wei, F. Wen, and J. Sun, “Face alignment by explicit shape regression,” International Journal of Computer Vision, vol 107, no. 2, pp. 177-190, 2012.

[14] T. F. Cootes, G. J. Edwards, and C. J. Taylor, “Active appearance models,” IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 23, no. 6, pp. 681-685, 2001.

[15] X. Yu, J. Huang, S. Zhang, W. Yan, and D. Metaxas, “Pose-free facial landmark fitting via optimized part mixtures and cascaded deformable shape model,” in IEEE International Conference on Computer Vision, 2013, pp. 1944-1951.

[16] J. Zhang, S. Shan, M. Kan, and X. Chen, “Coarse-to-fine auto-encoder networks (CFAN) for real-time face alignment,” in European Conference on Computer Vision, 2014, pp. 1-16.

[17] Luxand Incorporated: Luxand face SDK, http://www.luxand.com/

[18] D. Chen, S. Ren, Y. Wei, X. Cao, and J. Sun, “Joint cascade face detection and alignment,” in European Conference on Computer Vision, 2014, pp. 109-122.

[19] H. Li, Z. Lin, X. Shen, J. Brandt, and G. Hua, “A convolutional neural network cascade for face detection,” in IEEE Conference on Computer Vision and Pattern Recognition, 2015, pp. 5325-5334.

[20] C. Zhang, and Z. Zhang, “Improving multiview face detection with multi-task deep convolutional neural networks,” IEEE Winter Conference on Applications of Computer Vision, 2014, pp. 1036-1041.

[21] X. Xiong, and F. Torre, “Supervised descent method and its applications to face alignment,” in IEEE Conference on Computer Vision and Pattern Recognition, 2013, pp. 532-539.

[22] Z. Zhang, P. Luo, C. C. Loy, and X. Tang, “Facial landmark detection by deep multi-task learning,” in European Conference on Computer Vision, 2014, pp. 94-108.

[23] Z. Liu, P. Luo, X. Wang, and X. Tang, “Deep learning face attributes in the wild,” in IEEE International Conference on Computer Vision, 2015, pp. 3730-3738.

[24] S. Yang, P. Luo, C. C. Loy, and X. Tang, “WIDER FACE: A Face Detection Benchmark”. arXiv preprint arXiv:1511.06523

[25] V. Jain, and E. G. Learned-Miller, “FDDB: A benchmark for face detection in unconstrained settings,” Technical Report UMCS-2010-009, University of Massachusetts, Amherst, 2010.

[26] B. Yang, J. Yan, Z. Lei, and S. Z. Li, “Convolutional channel features,” in IEEE International Conference on Computer Vision, 2015, pp. 82-90.

[27] R. Ranjan, V. M. Patel, and R. Chellappa, “A deep pyramid deformable part model for face detection,” in IEEE International Conference on Biometrics Theory, Applications and Systems, 2015, pp. 1-8.

[28] G. Ghiasi, and C. C. Fowlkes, “Occlusion Coherence: Detecting and Localizing Occluded Faces,” arXiv preprint arXiv:1506.08347.

[29] S. S. Farfade, M. J. Saberian, and L. J. Li, “Multi-view face detection using deep convolutional neural networks,” in ACM on International Conference on Multimedia Retrieval, 2015, pp. 643-650.

發佈了117 篇原創文章 · 獲贊 15 · 訪問量 7279
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章