【人臉檢測】學界 | 中科院自動化研究所提出 FaceBoxes:實時、高準確率的 CPU 面部檢測器

要想用神經網絡有效地進行面部檢測等操作,往往需要 GPU 等高速並行的計算設備。如果僅使用 CPU,往往會遇到速度與準確度不能兼得的困境。爲了解決這個問題,中國科學院自動化研究所和中國科學院大學的研究者提出了一種名叫 FaceBoxes 的新方法,在保證了 CPU 面部識別的準確度的同時,還做到了實時處理。機器之心對該研究進行了摘要介紹。

論文:一種使用 CPU 的高準確度實時面部檢測器(FaceBoxes: A CPU Real-time Face Detector with High Accuracy)

論文地址:https://arxiv.org/abs/1708.05234

儘管面部檢測領域已經取得了巨大的進展,但要在 CPU 上滿足高表現水平的同時實現實時的速度仍然還是一個懸而未決的難題,因爲用於面部檢測的有效模型往往需要過高的計算基礎。爲了解決這個難題,我們提出了一種全新的面部檢測器 FaceBoxes,它在速度和準確度上都表現優異。具體而言,我們的方法具有輕量卻又強大的網絡結構,它由快速消化的卷積層(RDCL:Rapidly Digested Convolutional Layers)和多尺度卷積層(MSCL:Multiple Scale Convolutional Layers)構成。RDCL 可以讓 FaceBoxes 在 CPU 上實現實時的速度;而 MSCL 的目的是在不同層上豐富感受野(receptive field)和離散化 anchor,以便處理不同尺度的面部。此外,我們還提出了一種新的 anchor 密度化策略,可以讓圖像上不同類型的 anchor 具有相同的密度,這可以顯著提升小面部的召回率。由此,我們提出的這個檢測器在 VGA 分辨率的圖像上可以在單核 CPU 上以 20 FPS 的速度運行,也可在單個 GPU 上以 125 FPS 的速度運行。此外,FaceBoxes 的速度不會因人臉的數量發生改變。我們對這種方法進行了全面的評估,並且在 AFW、PASCAL 人臉數據集和 FDDB 等多個面部檢測基準數據集上都得到了當前最佳的檢測表現。

圖 1:FaceBoxes 的架構以及我們的 anchor 設計的詳細信息表

圖 2: ( a ) C.ReLU 模塊,其中 Negation 只是簡單地爲 Convolution 的輸出乘上 -1。 ( b ) Inception 模塊

圖 3:anchor 密度化示例。爲了清楚說明,我們僅對一個感受野中心(即中心的黑色單元)的 anchor 進行了密度化,並且只標出了對角 anchor 的顏色

表 1:不同方法的整體 CPU 推理時間和 mAP 比較。FPS 是在 CPU 上處理 VGA 分辨率圖像的速度,mAP 的意思是在 FDDB 上 1000 個假正例的真正例率。要提一下,STN [ 5 ] 的 mAP 是 179 個假正例的真正例率,並且使用了 ROI 卷積,它的 FPS 可以提速到 30,而召回率僅會降低 0.6%

表 2:FaceBoxes 在 FDDB 數據集上增添不同方法時的結果變化。Accuracy ( mAP ) 表示 1000 個假正例的真正例率。Speed ( ms ) 是在 CPU 上處理 VGA 分辨率圖像的速度

圖 4:在 AFW 數據集上的精度召回率曲線

圖 5:在 PASCAL 人臉數據集上的精度召回率曲線

圖 6:在 FDDB 數據集上的評估結果

本文爲機器之心編譯,轉載請聯繫本公衆號獲得授權。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章