[CV Paper] FaceBoxes: A CPU Real-time Face Detector with High Accuracy

論文閱讀:CPU上的高精度實時人臉檢測器

綜述

人臉識別是計算機視覺和模式識別的基礎問題,過去幾十年取得了長足進步,但是由於計算量較大,在CPU上的實時檢測一直沒有很好的被解決。面臨的主要問題,一是人臉和背景的可變性都太大(種類太多),二是由於人臉的不同尺寸,使得搜索空間快速上升。
過去的主流方法,一種是基於手動構建的特徵(hand-craft features),這種方法在CPU上速度尚可,但是面對種類繁多的圖像變體精確度不足。另一種是基於CNN的方法,精確度足夠,但是在CPU上過於耗時,很難達到實時效果。
本文受Faster-RCNN中RPN、SSD中多尺度技術的影響,提出了一種名爲FaceBoxes的人臉檢測器並且可以在CPU上達到實時檢測的效果。網絡結構是一個完整的CNN架構,可以實現端到端的訓練,雖然網絡結構輕量,但效果突出。包含了RDCL和MSCL。

1. RDCL

Rapidly Digested Convolutional Layers (RDCL)旨在讓檢測器在CPU上達到實時檢測的速度。

  • 1.通過在卷積層和池化層設置較大的stride size來很快的減小input size。
  • 2.選擇合適的kernel size。前幾層的kernel應該小一些這樣達到加速計算的效果,同時也不能過小,要保證它可以緩解(1)中較大的步長帶來的信息損失
  • 3.用C.ReLU激活函數來減少輸出通道。

2. MSCL

Multiple Scale Convolutional Layers (MSCL)旨在讓感受野更加豐富,爲不同尺度的anchor設置不同的檢測層,來檢測不同尺度的人臉。

在網絡 深度 的維度進行多尺度設計

思路和上一篇論文相同,設置不同尺度的anchor,分別與不同層級的layer關聯,在不同尺度分別檢測。

這裏寫圖片描述

在網絡 寬度 的維度進行多尺度設計

這裏寫圖片描述

顯然,這樣的設計包羅了各種不同的尺度,可以使感受野更加豐富,從而很好的處理各種不同尺度的人臉。

3. anchor密度設計

同時還使用了一些小技巧使得不同的anchor在圖片上密度相同,有效提高了小型人臉的召回率。(其實這一點在上一篇論文裏也用到過,畢竟都是自動化所的論文)在人臉識別中,我們一般把anchor的長寬比置爲1,因爲一般方框可以正好框住一張人臉。anchor的間隔對應的就是stride size,比如某一層的stride size爲64,anchor是256*256,意味着每64個像素就有一個256*256的anchor。定義anchor密度爲

這裏寫圖片描述

A-scale是anchor的尺度大小,A-interval是間隔(也就是stride size)
不同密度anchor會對檢測的效果造成影響,因此儘量追求密度均衡。給A-density設置固定值。實現方式也是通過設置不同的stride size


Reference

Zhang, Shifeng, et al. “Faceboxes: A CPU real-time face detector with high accuracy.” Biometrics (IJCB), 2017 IEEE International Joint Conference on. IEEE, 2017.

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