SSD: Single Shot MultiBox Detector 解讀

SSD: Single Shot MultiBox Detector SSD 一句話就是速度快,效果好! 
第一版 8 Dec 2015,第二版是30 Mar 2016 
主要改進是內容更加詳實,實驗更加豐富,尤其是和 Faster R-CNN 和 YOLO 做了對比,其優勢比較明顯。 SSD把 候選區域提取步驟取消了。The fundamental improvement in speed comes from eliminating bounding box proposals and the subsequent pixel or feature resampling stage. 
For 300 × 300 input, SSD achieves 72.1% mAP on VOC2007 test at 58 FPS on a Nvidia TitanX and for 500×500 input , SSD achieves 75.1% mAP, outperforming a comparable state of the art Faster R-CNN model. 
開源代碼 https://github.com/weiliu89/caffe/tree/ssd

2 The Single Shot Detector (SSD)

這裏寫圖片描述

2.1 Model 
SSD網絡包括兩個部分,前面的是基礎網絡,就是用於圖像分類的標準網絡,但是把涉及到分類的層全部裁掉,後面的網絡是我們自己的設計的,主要實現以下目標: 
Multi-scale feature maps for detection:我們加入卷積特徵層,得到不同尺度的特徵層,從而實現多尺度目標檢測 ,用於不同尺度的目標預測的卷積模型是不同的。

這裏寫圖片描述

Convolutional predictors for detection 
對於每個添加的特徵層,我們使用一組卷積濾波器,可以得到一組固定數目的目標檢測的預測 。對於一個尺寸爲m*n,p通道的特徵層,我們使用一個 3*3*p 的小核作爲一個基礎元素來預測一個可能檢測的信息(類別信息,位置信息)

Default boxes and aspect ratios 
在 Faster R-CNN中使用了 anchor boxes 實現不同大小和寬高比的物體提取 ,本文使用了類似的一組 default bounding boxes,和 Faster R-CNN 主要區別在於,我們是在不同尺度的特徵層上進行 這些default bounding boxes 檢測運算的。

2.2 Training 
訓練SSD和訓練一個使用候選區域及池化的標準檢測器最大不同之處在於,真值信息需要被賦予一組固定集合檢測輸出中某一個特定輸出。當這個賦值確定之後,損失函數和後向傳播就可以被端到端的應用。

Matching strategy 
在訓練時,我們需要建立真值和 default boxes的對應關係。對於每個真值,我們選擇不同位置、寬高比、尺度的 default boxes 與之匹配,選擇重合最大的 default boxe。這個和 original MultiBox [7] 是相似的。但是不同於 MultiBox,我們match default boxes to any ground truth with jaccard overlap higher than a threshold(0.5),這麼做是爲了簡化學習問題

Training objective 
SSD的訓練目標函數是從 MultiBox 目標函數衍生出來的,但是被拓展到多類別問題。 
這裏寫圖片描述

Choosing scales and aspect ratios for default boxes 
主要是利用了不同尺寸的特徵層,在文獻【10,11,12】中已經使用過,例如是 Hypercolumn。圖1 給出了一個示例,不同大小目標對應不同尺度

Hard negative mining 
這裏我們將正負樣本比保持爲 3:1

Data augmentation 
爲了使得模型適應各種情況,我們做了訓練數據擴展

3 Experimental Results 
Base network 使用 VGG16 
這裏寫圖片描述

這裏寫圖片描述

這裏寫圖片描述


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