目標檢測之faster-RCNN和FPN


今年(2017年第一季度),何凱明大神出了一篇文章,叫做fpn,全稱是:feature pyramid network for object Detection,為什么發這篇文章,根據

我現在了解到的是對小目標和大目標識別率都好。為什么?我們來看下面一幅圖:

 

此處來自:http://blog.csdn.net/u014380165/article/details/72890275

(a)圖像金字塔,即將圖像做成不同的scale,然后不同scale的圖像生成對應的不同scale的特征。這種方法的缺點在於增加了時間成本。有些算法會在測試時候采用圖像金字塔。 
(b)像SPP net,Fast RCNN,Faster RCNN是采用這種方式,即僅采用網絡最后一層的特征。 
(c)像SSD(Single Shot Detector)采用這種多尺度特征融合的方式,沒有上采樣過程,即從網絡不同層抽取不同尺度的特征做預測,這種方式不會增加額外的計算量。作者認為SSD算法中沒有用到足夠低層的特征(在SSD中,最低層的特征是VGG網絡的conv4_3),而在作者看來足夠低層的特征對於檢測小物體是很有幫助的。 
(d)本文作者是采用這種方式,頂層特征通過上采樣和低層特征做融合,而且每層都是獨立預測的。

 

其中,圖D是fpn網絡的,它采用每一層都預測目標,可以這樣理解,比較高的層是預測大目標,因為經過多幾次的卷積后,

使得我們的“合計感受野”變大了,可以“看到”大目標了。但是,小目標卻因為失去了,因為經過多次卷積、池化后,小目標

的特征一直在損失,最后后面就沒有了,這時候,最底層就預測小目標,因為最底層的最大呀,經過卷積、池化操作較少呀。

就像有兩個攝像頭,焦距不一樣,可以看到遠近的物體。在這片文章中,是使用resnet101網絡,resnet使用4個block,它就是使用

第4個block作為處理,(最近我也在做小目標識別的項目,都是小目標,幸好我rpn是使用conv3,這樣,小目標的特征就損失

不多,運氣好,剛好可以用,要是不work,按之前的,肯定是找不到問題的,不過,現在問題是樣的目標,占圖像面積比大的情況

會漏檢,尷尬!!!)就是如下圖:

 

 

 如上圖改造,每層anchor的大小都不一樣,但是,從底層往上是變大的,目標就是預測不同尺寸大小的圖片,使得整個算法的大范圍尺度的目標識別適應性更好!!!!

 

 

 

 

具體可以參考下面博客:

1、http://blog.csdn.net/u014380165/article/details/72890275 

2、http://blog.csdn.net/dcxhun3/article/details/59055974

3、http://blog.csdn.net/jesse_mx/article/details/54588085

 


免責聲明!

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



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