當前位置:
首頁 > 最新 > Single-Shot Refinement Neural Network for Object Detection

Single-Shot Refinement Neural Network for Object Detection

論文:https://arxiv.org/abs/1711.06897

代碼:https://github.com/sfzhang15/RefineDet

RefineDet是CVPR2018的一篇論文,之前主流的目標檢測演算法主要分為single-stage和two-stage兩種,single-stage模型的優勢在於速度較快,two-stage模型的優勢在於準確率更高,當下很多工作都是圍繞著提高single-stage的準確率(如之前該公眾號談到的focal loss,解決single-stage的樣本不均衡問題),或者降低two-stage模型的時耗(如Lighthead RCNN)。而這篇論文提出的RefineDet可以說是這兩種方法的融合,在single-stage模型的基礎上,融入了two-stage的思想,可以說single-stage和two-stage已經沒有明顯的分界線了。

RefineDet的網路主要分為三個模塊,anchorrefinement module(ARM)和objectdetection module(ODM),當然還有兩者之間的連接塊,transfer connection block(TCB)。

ARM:本質上是SSD模型,實際上是類似RPN網路的功能,實現前景和背景的二分類,預測前景和背景的得分scores(negative confidence score和positive confidencescore),negative confidence score超過預設的閾值的anchor會被丟掉。最後留下的是negative hard refined anchor和positive refined anchor。解決後續網路多分類中的樣本不均衡問題,同時還預測其坐標的四個offests,粗略調整anchor的位置和大小,為後面的回歸提供更好的初始化。

ODM:網路模型類似於DSSD,不同之處在於輸入ARM網路的輸出結果refinedanchors,解決訓練樣本的篩選問題,在ARM網路的粗略回歸的基礎上進行二次回歸,這種級聯式回歸也使得bbox的回歸更加精確。

TCB:TCB連接了ARM和ODM,實現了特徵的融合。TCB在特徵融合的方法上與之前的特徵融合方法也稍有差異,採用的是先通過反卷積運算,實現維度的統一,再通過Eltw Sum(也叫broadcast add)操作,將淺層和深層的特徵圖在對應的通道上做加法運算。在此之前Google TDM使用的是先通過up-sample操作,實現w、h維度的統一,再進行concat操作,讓淺層和深層的特徵圖在通道數的維度上進行拼接,這種方式的特徵融合較為粗暴,效果也較差。FPN則是通過up-sample操作,再通過Eltw Sum操作。DSSD使用的是先通過反卷積操作,再進行Eltw Product(也叫broadcast mul)操作,將淺層和深層的特徵圖在對應的通道上做點乘運算,Eltw Product操作效果稍微好於Eltw Sum操作,但是乘法運算的耗時也要高於加法運算。

Loss function:直接將ARM和ODM兩部分的loss相加,實現端到端訓練。作者在訓練過程中還用到了一些技巧,有興趣的讀者可以在論文中了解這方面的細節。

歡迎關注,see you next time ~

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 深度學習筆錄 的精彩文章:

TAG:深度學習筆錄 |