SSD解讀-lidawei0124
學習筆記
1 優點:
快,準 58fps 72.1%
取消了RPN(region proposal network)區域生成網絡
把邊界框的輸出(以一個點爲中心的邊界框有無窮多個),經過離散化爲默認的4-9個(實際操作中選擇和真實框重疊度最高的那個)
2 網絡結構:
基於前饋卷積網絡, 產生固定大小的邊界框,以及框中對象類別的分數然後是非極大值抑制,以產生最終檢測
基礎網絡+額外特徵層(層尺寸逐漸減小(這樣做不僅僅是爲了減少計算與內存的需求,還有個好處就是,最後提取的 feature map 就會有某種程度上的平移與尺度不變性。))(可以得到不同尺度檢測的預測值)
ssd在基礎網絡的末尾添加了幾個特徵層,這些層預測了不同尺度和寬高比對默認框的偏移及相關自信度
3 損失函數:
4 算法流程:
5 SSD提高精度的方法:
5.1. 數據增強:包括水平翻轉、裁剪、放大和縮小等。論文明確指出,數據增強可以明顯的提高算法的性能
5.2. Hard Negative Mining技術:將正負樣本的比例控制在positive:negative=1:3,這樣會取得更好的效果。如果我們不加控制的話,很可能會出現Sample到的所有樣本都是負樣本
5.3. 匹配策略(即如何重多個default box中找到和ground truth最接近的box)
Defalut box
圖8 default bounding box
如上圖所示,在特徵圖的每個位置預測K個BB,對於每一個BB,預測C個類別得分,以及相對於Default box的4個偏移量值,這樣總共需要(C+4)* K個預測器,則在m*n的特徵圖上面將會產生(C+4)* K * m * n個預測值。
5.4. Atrous Algothrim(獲得更加密集的得分映射)
圖13 Atrous Algothrim理解1
作用:既想利用已經訓練好的模型進行fine-tuning,又想改變網絡結構得到更加dense的score map。同時是特徵圖變大,同時也使得感受野變大(同時變大)
6 各部件對性能的影響:
7 其他補充:
VGG16 :
長寬從224到112 到56到28到14到7到1,但是通道從3 到64到128到256到512到4096到1000
基礎網絡VGG16+額外特徵層: