[\*v*/]人臉識別任務算法RetinaFace


RetinaFace: Single-stage Dense Face Localisation in the Wild

論文:https://arxiv.org/pdf/1905.00641.pdf

pytorch實現:https://github.com/biubug6/Pytorch_Retinaface

C++實現:https://github.com/Charrin/RetinaFace-Cpp

RetinaFace是Insight Face在2019年提出的最新one-stage人臉檢測模型,原模型使用了deformable 、convolutiondense regression loss, 在 WiderFace 數據集上達到SOTA。截止2019年8月,原始模型尚未全部開源,目前開源的簡化版是基於傳統物體檢測網絡RetinaNet的改進版,添加了SSH網絡的檢測模塊,提升檢測精度,作者提供了三種基礎網絡,基於ResNet的ResNet50和ResNet152版本能提供更好的精度,以及基於mobilenet(0.25)的輕量版本mnet,檢測速度更快。

RetinaFace結構

簡化版mnet結構

RetinaFace的mnet本質是基於RetinaNet的結構,采用了特征金字塔的技術,實現了多尺度信息的融合,對檢測小物體有重要的作用,筆者在這里突然有聯想到SSD不就是利用金字塔結構的技術來彌補YOLO對小物體檢測效果不好的缺點嗎,果然要想兼顧大目標和小目標看來最好是使用金字塔結構來進行多尺度特征融合。RetinaNet的結構如下:

簡化版的mnet與RetinaNet采用了相同的proposal策略,即保留了在feature pyramid net的3層特征圖每一層檢測框分別proposal,生成3個不同尺度上的檢測框,每個尺度上又引入了不同尺寸的anchor大小,保證可以檢測到不同大小的物體。

簡化版mnet與RetinaNet的區別除了在於主干網絡的選擇上替換了ResNet使用了Mobilenet做到了模型的輕量化,最大的區別在於檢測模塊的設計。mnet使用了SSH檢測網絡的檢測模塊,SSH檢測模塊由SSH上下文模塊組成

 

 

 上下文模塊的作用是擴張預檢測區域的上下文信息。上下文模塊和conv結合組成了一個檢測模塊,該檢測模塊如圖:

 

 

 上圖為SSH網絡的檢測模塊,將一個上下文模塊與conv疊加后生成分類頭和回歸頭得到網絡的輸出。
mnet網絡在使用SSH檢測模塊的同時實現了多任務學習,即在分類和回歸的基礎上加入了目標點(landmark點)的回歸。官方的網絡結構采用了5個目標點的學習,后續也可以修改為更多目標點,比如AFLW中的21個目標點以及常用的68或者106個目標點。

 

 

 上圖是原版RetinaFace論文中的檢測分支圖,注意在開源簡化版的不包含self-supervision部分,但是有5個關鍵點的extra-supervision部分。

檢測

RetinaFace的檢測過程和所有的one-stage的檢測器過程相似,在github原版的實現上主要在retinaface.py中的detect()中實現,實驗中主要可調整的超參數包括threshold, nms_threshold,scale等。

  • threshold : 分類概率的閾值,超過這個閾值的檢測被判定為正例
  • nms_threshold : 非極大值抑制(NMS)中的IOU閾值,即在NMS中與正例的IOU超過這個閾值的檢測將被舍棄
  • scale : 圖像金字塔的縮放值,通過對原圖進行由scale值指定的大小縮放得到網絡圖片的輸入大小,注意在檢測時網絡的輸入不必保持相同的大小

多任務學習

在目前廣泛使用的方案是結合人臉檢測和人臉對齊,對齊后的人臉形狀為人臉分類提供了更好的特征。在Mask R-CNN中,通過添加一個並行分支來預測目標Mask,顯著提高了檢測性能。Densepose采用Mask-RCNN的結構,在每個選定區域內獲得密集的part標簽和坐標。然而,[20,1]中的dense回歸分支是通過監督學習訓練的。此外,dense分支是一個小的FCN應用於每個RoI預測像素到像素的密集映射 [2]
RetinaFace最大的貢獻就是其加入了關鍵點的分支,這樣可以確保檢測到的人臉質量,而且在損失函數也只是將其作為一個比較小的約束項,不怎么會影響分類以及人臉框的判斷,但是一旦關鍵點太過偏離就會使loss相對變大(產生約束)[1]

最終效果

Reference

[1] https://blog.csdn.net/wzjwj/article/details/94456036

[2] https://www.jianshu.com/p/d4534ac94a65

[3] https://blog.csdn.net/warrentdrew/article/details/98742948

[4] https://baijiahao.baidu.com/s?id=1645023042411162473&wfr=spider&for=pc

[5] https://arxiv.org/pdf/1905.00641.pdf

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2026 CODEPRJ.COM