摘要:近日,百度憑藉全新的人臉檢測深度學習算法PyramidBox,在世界最權威的人臉檢測公開評測集WIDERFACE的「Easy」、「Medium」和「Hard」三項評測子集中均榮膺榜首,刷新 業內最好成績
近日,百度憑藉全新的人臉檢測深度學習算法PyramidBox,在世界最權威的人臉檢測公開評測集WIDER FACE 的「Easy」、「Medium」和「Hard」三項評測子集中均榮膺榜首,刷新業內 最好成績。 本文將通過論文簡要介紹這一算法背後的技術。
1 引言
人臉檢測是各種人臉應用中的一項基本任務。 Viola – Jones [1] 的開創性研究利用具有類哈爾特徵的 AdaBoost 算法來訓練級聯的人臉與非人臉分類器。 此後不斷有人進行深入研究 [ 2,3,4,5,6,7 ] 來改進級聯檢測器。 之後,[ 8,9,10 ] 通過對可變形面部關係的建模,將可變形部件模型 ( DPM ) 引入到人臉檢測任務中。 這些方法主要是基於設計的特徵,這些特徵不具有很好的可表示性,而且是通過分離的步驟訓練出的。
近年來,卷積神經網絡( CNN ) 取得了巨大突破,基於CNN 的現代目標檢測技術在人臉檢測方面取得了很大進展,包括R – CNN [ 11、12、13、14]、SSD [15 ]、YOLO [16]、FocalLoss [17] 及其延伸產物。 得益於強大的深度學習方法和端到端的優化,基於 CNN 的人臉檢測器性能顯著增強,為以後的方法劃定了一個新的基線。
當下基於 anchor 的檢測框架旨在檢測不受控制的環境中的非常規面部,例如 WIDER FACE[ 18 ]。 SSH [ 19 ] 和 S3FD [ 20 ] 開發了尺度不變網絡,以在單個神經網絡中檢測來自不同層的尺度各異的人臉。 人臉 R – FCN [ 21 ] 利用位置敏感的平均池,對分數圖上嵌入的響應進行重新加權,並消除人臉每個部位中非均勻分佈的影響。 FAN [ 22 ] 提出 anchor 級別的注意機制,通過突出面部區域的特徵來檢測被遮擋的面部。
雖然這些工作為設計anchor 和相關網絡來檢測不同尺度的人臉提供了一種有效的方法,但如何利用語境信息進行人臉檢測還沒有引起足夠的重視,這一問題應該在非常規人臉 檢測中發揮重要作用。 顯然,人臉從不單獨出現在現實世界中,肩部或身體通常也一起出現,它們提供了可茲利用的豐富的語境關聯資源,尤其是在分辨率低、模糊和外部遮擋導致面部紋理 不可區分的情況下。 針對這一問題,我們提出了一種新的語境輔助網絡框架,以充分利用語境信號,具體步驟如下:
首先,網絡不僅要能學習人臉特徵,還要能學習頭部和身體等語境部分的特徵。 為了實現這一目標,我們需要額外的標籤,並設計與之匹配的 anchor。 在本任務中,我們使用半監督解決方案來生成與面部相關的語境部分的近似標籤,並且發明了一系列名為 PyramidAnchors 的 anchor,以便將其添加到基於 anchor 的一般架構中。
其次,高層次的語境特徵應與低層次的語境特徵充分結合。 常規人臉和非常規人臉的外觀可能存在很大差別,這意味著並非所有高級語義特徵都有助於識別較小的人臉。 我們研究了 Feature Pyramid Networks( FPN ) [ 23 ] 的性能,並將其修改為較低級別的 Feature Pyramid Network( LFPN ),以將對彼此有幫助的特徵連接在一起。
第三,預測分支網絡應充分利用聯合特徵。 為了將目標人臉周圍的語境信息與更廣更深的網絡相結合,我們引入了語境敏感預測模塊 ( CPM )。 同時,為了進一步提高分類網絡的性能,我們提出了一種可以預測模塊的最大輸入輸出層。
此外,我們還提出了一種名為「數據-anchor-抽樣」的訓練策略,對訓練數據集的分佈進行調整。 為了學習更具代表性的特徵,非常規人臉樣本的多樣性非常重要,可以通過跨樣本的數據擴充來獲得。
為表述清晰,本研究可以概括為以下五點:
1. 本文提出了一種基於 anchor 的語境輔助方法,即 PyramidAnchors,從而引入有監督的信息來學習較小的、模糊的和部分遮擋的人臉的語境特徵。
2. 我們設計了低層次特徵金字塔網絡 ( LFPN ) 來更好地融合語境特徵和麵部特徵。 同時,該方法可以在單次拍攝中較好地處理不同尺度的人臉。
3. 我們提出了一種語境敏感的預測模型,該模型由混合網絡結構和最大輸入輸出層組成,從融合特徵中學習準確的定位和分類;
4. 我們提出了可以感知尺度的數據-anchor-抽樣策略,改變訓練樣本的分佈,重點關注較小的人臉。
5. 在通用人臉檢測基準 FDDB 和 WIDER FACE 上,我們達到了當前最佳水平。
3 PyramidBox
3.1 網絡架構
基於 anchor 的擁有復雜 anchor 設計的目標檢測框架已被證明在不同層級的特徵圖上執行預測時,可以有效地處理可變尺度的人臉。 同時,FPN 結構表明將高層級特徵和低層級特徵融合能帶來很大的優勢。 PyramidBox(圖 1)的架構使用了於 S3FD[20] 相同的擴展 VGG16 主乾架構和 anchor 尺度設計,可以生成不同層級的特徵圖和等比例的 anchor。 低層級 FPN 被添加到這個主乾架構上,並且使用一個語境敏感的預測模塊作為每個 Pyramid 檢測層的分支網絡來獲得最終的輸出。 該方法的關鍵在於我們設計了一種新型的 Pyramid anchor 方法,它可以在不同層級為每一張人臉生成一系列的 anchor。 架構中每個組件的細節如下:
Scale-equitable 的主幹網絡層。 我們使用了S3FD 中的基礎層和額外卷積層作為我們的主幹網絡層,其中保留了VGG16 中的conv 1_1 層到pool 5 層,然後將fc 6 層和fc 7 層轉換為conv fc 層,再 添加更多的捲積層使其變得更深。
低層級特徵金字塔層。 為了提高人臉檢測器處理不同尺度的人臉的能力,高分辨率的低層級特徵扮演著關鍵角色。 因此,很多當前最佳的研究[25,20,22,19] 在相同的框架內構建了不同的結構來檢測可變尺寸的人臉,其中高層級特徵被用於檢測尺寸較大的人臉 ,而低層級特徵被用於檢測尺寸較小的人臉。 為了將高層級特徵整合到高分辨率的低層級特徵上,FPN[23] 提出了一種自頂向下的架構來利用所有尺度的高層級語義特徵圖。 最近的研究表明,FPN 類型的框架在目標檢測和人臉檢測上都得到了相當不錯的性能。
通過從中間層開始自上而下的結構,我們構建了低層級的特徵金字塔網絡 (LFPN),其感受野接近於輸入尺寸而不是頂層的一半。 此外,每個 LFPN 塊的結構和 FPN [23] 一樣,更多信息詳見圖 2(a)。
圖 1:PyramidBox 架構。 它包含 Scale-equitable 主層、低層級特徵金字塔層 (LFPN)、語境敏感的預測層和 PyramidBox 損失層。
圖 2:(a) 特徵金字塔網絡。 (b) 語境敏感的預測模塊。 (c)PyramidBox 損失。
4 實驗
表 1:從不同層開始的 LFPN 的表現。
表 2:PyramidAnchors 的參數。
表 3:語境敏感的預測模塊。
表 4:PyramidBox 在 WIDER FACE 驗證子集上的對比結果。
論文:PyramidBox: A Context-assisted Single Shot Face Detector
論文鏈接:https://arxiv.org/pdf/1803.07737.pdf
人臉檢測研究從多年前就已開始,然而,在不受控制的環境中檢測小的、模糊的及部分遮擋的人臉仍舊是一個有待解決的難題。 針對棘手的人臉檢測問題,本文提出了一種語境輔助的單次人臉檢測新方法——PyramidBox。 考慮到語境的重要性,我們從以下三個方面改進語境信息的利用。 首先,我們設計了一種全新的語境 anchor,通過半監督的方法來監督高層級語境特徵學習,我們稱之為 PyramidAnchors。 其次,我們提出了一種低層次級特徵金字塔網絡,將充分的高層級語境語義特徵和低層級面部特徵結合在一起,使 PyramidBox 能夠一次性預測所有尺寸的人臉。 再次,我們引入了語境敏感結構,擴大預測網絡的容量,以提高最終的輸出準確率。 此外,我們還採用「數據-anchor-採樣」的方法對不同尺寸的訓練樣本進行擴充,增加了較小人臉訓練數據的多樣性。 PyramidBox 充分利用了語境的價值,在兩個常用人臉檢測基準——FDDB 和 WIDER FACE 上表現非凡,取得當前最優水平。
版權聲明
本文僅代表作者觀點,不代表百度立場。
本文係作者授權百度百家發表,未經許可,不得轉載。