RefineDet論文閱讀 題目:用于目标檢測的單發細化神經網絡
RefineDet論文閱讀
RefineDet論文閱讀 對于物體檢測,兩階段方法(例如,更快的R-CNN)已經實作了最高的準确性,
而一階段方法(例如,SSD)具有高效的優點。為了繼承兩者的優點并克服它們的缺點。
RefineDet論文閱讀 RefineDet的主要思想:一方面引入two stage類型的object detection算法中對box的由粗到細的回歸思想。
另一方面引入類似FPN網絡的特征融合操作用于檢測網絡,可以有效提高對小目标的檢測效果,檢測網絡的架構還是SSD。
由粗到細回歸:其實就是先通過RPN網絡得到粗粒度的box資訊,然後再通過正常的回歸支路進行進一步回歸進而得到更加精确的框資訊,
這也是two stage類型的object detection算法效果優于one stage類型的一個重要原因
從RefineDet網絡的結構圖(直覺的特點就是two-step cascaded regression兩步級聯回歸),
主要包含三個部分:anchor refinement module (ARM) 、object detection module (ODM)、transfer connection block (TCB)。
anchor refinement module (ARM)部分類似Faster RCNN算法中的RPN網絡,主要用來得到bbox(類似Faster RCNN中的ROI或proposal)和去除一些負樣本(這是因為負樣本數量遠大于正樣本)。
是以基于4層特征最後得到的還是兩條支路,一個bbox的坐标回歸支路,另一個是bbox的二分類支路。
我們知道在Faster RCNN算法中RPN網絡存在的意義就是生成proposal(或者叫ROI),這些proposal會給後續檢測網絡提供較好的初始資訊,
這也是one stage的object detection算法和two stage的object detection算法的重要差別,
這裡的anchor refinement module基本上扮演了RPN網絡的角色,如果一定要說不同點的話,那應該就是這裡的輸入利用了多層特征,而RPN網絡的輸入是單層特征。
transfer connection block (TCB)部分是做特征的轉換操作,也就是将ARM部分的輸出feature map轉換成ODM部分的輸入,
這部分其實和FPN算法的特征融合很像,FPN也是這樣的upsample後融合的思想。
object detection module (ODM)部分和就基本上是SSD了,也是融合不同層的特征,然後做multi class classification和regression。
主要的不同點一方面在于這部分的輸入anchors是ARM部分得到的refined anchors(提純改成的anchor),類似RPN網絡輸出的proposal。
另一方面和FPN算法類似,這裡的淺層feature map(size較大的藍色矩形塊)融合了高層feature map的資訊,然後預測bbox是基于每層feature map(每個藍色矩形塊)進行,
最後将各層結果再整合到一起。而在SSD中淺層的feature map是直接拿來用的(并沒有和高層的feature map融合),也就是對bbox的預測是在每一層上進行的,
預測得到結果後再将各層結果整合在一起,這是非常重要的差別。這樣做的好處就是對小目标物體的檢測效果更好,這在FPN和RON等算法中已經證明過了。
其中ODM子產品沒有使用類似逐候選區域RoIPooling的耗時操作,而是直接通過TCB連接配接,轉換ARM的特征,
并融合高層的特征,以得到感受野豐富、細節充足、内容抽象的特征,用于進一步的分類和回歸。
是以RefineDet屬于一步法,但是具備了二步法的二階段分類、二階段回歸、二階段特征這3個優勢。
區分一步法和二步法的關鍵點:是否有逐區域的操作。
RefineDet論文閱讀 同是COCO資料集,可以看出RefineDet比前面的YOLOv3,RetinaNet和RFB效果都要好
速度和SSD相近,精度明顯更高,精度更高沒什麼好說的,速度在多了下面一部分卷積層和反卷積層的情況下沒有明顯下降,
作者分析有兩點原因,anchors較少以及基礎網絡後的附加網路層數少、特征選取層更少(4個,我記得SSD有5個)