SSD系列目標檢測算法

1.原版SSD

 

2.tinyDSOD

結合DenseNet和深度可分離卷積,提出了Depthwise dense block (DDB) 

結合FPN和深度可分離卷積,提出了D-FPN;

結合提出的Depthwise dense block (DDB)D-FPN,提出Tiny-DSOD

3.RefineDet

Two Stage 的精度優勢

二階段的分類:二步法的第一步在分類時,正負樣本是極不平衡的,導致分類器訓練比較困難,這也是一步法效果不如二步法的原因之一,也是focal loss的motivation。而第二步在分類時,由於第一步濾掉了絕大部分的負樣本,送給第二步分類的proposal中,正負樣本比例已經比較平衡了,所以第二步分類中不存在正負樣本極度不平衡的問題。即二步法可以在很大程度上,緩和正負樣本極度不平衡的分類問題。
二階段的迴歸:二步法中,第一步會先對初始候選框進行校正,然後把校正過的候選框送給第二步,作爲第二步校正的初始候選框,再讓第二步進一步校正。
二階段的特徵:在二步法中,第一步和第二步法,除了共享的特徵外,他們都有自己獨有的特徵,專注於自身的任務。具體來說,這兩個步驟獨有的特徵,分別處理着不同難度的任務,如第一步中的特徵,專注於處理二分類任務(區分前景和背景)和粗略的迴歸問題;第二步的特徵,專注於處理多分類任務和精確的迴歸問題
特徵校準:在二步法中,有一個很重要的RoIPooling扣特徵的操作,它把候選區域對應的特徵摳出來,達到了特徵校準的目的,而一步法中,特徵是對不齊的。

這個是RefineDet的檢測框架。該框架由兩個模塊組成,即上面的Anchor Refinement Module(ARM)和下面的Object Detection Module(ODM),它倆是由Transfer Connection Block(TCB)連接。  

 • 在這個框架中,ARM模塊專注於二分類任務,爲後續ODM模塊過濾掉大量簡單的負樣本;同時進行初級的邊框校正,爲後續的ODM模塊提供更好的邊框迴歸起點。ARM模塊模擬的是二步法中第一個步驟,如Faster R-CNN的RPN。  

 •ODM模塊把ARM優化過的anchor作爲輸入,專注於多分類任務和進一步的邊框校正。它模擬的是二步法中的第二個步驟,如Faster R-CNN的Fast R-CNN。    

• 其中ODM模塊沒有使用類似逐候選區域RoIPooling的耗時操作,而是直接通過TCB連接,轉換ARM的特徵,並融合高層的特徵,以得到感受野豐富、細節充足、內容抽象的特徵,用於進一步的分類和迴歸。因此RefineDet屬於一步法,但是具備了二步法的二階段分類、二階段迴歸、二階段特徵這3個優勢。

關於RefineDet是否爲單階段

二步法之所以精度比較高,是因爲它有一個逐區域操作的第二步,這個操作非常有效果,但也比較耗時,而RefineDet在沒有用逐區域操作的情況下,獲得了同等的效果。因此我們認爲,區分一步法和二步法的關鍵點:是否有逐區域的操作。

速度和SSD相近,精度明顯更高,精度更高沒什麼好說的,速度在多了下面一部分卷積層和反捲積層的情況下沒有明顯下降,作者分析有兩點原因:

1. 我們使用了較少的anchor,如512尺度下,我們總共有1.6W個框,而SSD有2.5W個框。我們使用較少anchor也能達到高精度的原因是二階段迴歸。雖然我們總共預設了4個尺度(32,,64,128,256,)和3個比例(0.5,1,2),但是經過第一階段的迴歸後,預設的anchor被極大的豐富了,因此用於第二階段迴歸的anchor,具備着豐富的尺度和比例。    

2. 第2個原因是,由於顯存限制,我們只在基礎網絡的基礎上,新加了很少的卷積層,並只選了4個卷積層作爲檢測層。如果增加更多卷積層,並選擇更多檢測層,效果應該還能得到進一步提升。

 

參考文獻:

  1. https://www.cnblogs.com/hellcat/p/10357220.html

 

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