天天看點

SSD(單次多盒檢測)用于實時物體檢測

雷鋒網(公衆号:雷鋒網) AI 研習社按:本文為雷鋒網字幕組編譯的技術部落格,原标題 SSD(Single Shot Multi-Box Detection) for real time object detection,作者 Rabin Poudyal。

翻譯 | 陶玉龍    校對 | 佟金廣     整理 |  孔令雙

卷積神經網絡在檢測圖像中的物體時優于其他神經網絡結構。很快,研究人員改進了 CNN 來進行對象定位與檢測,并稱這種結構為 R-CNN(Region-CNN)。R-CNN 的輸出是具有矩形框和分類的圖像,矩形框圍繞着圖像中的對象。以下是 R-CNN 的工作步驟:

使用我們稱為選擇性搜尋的算法掃描輸入圖像,進而查找可能的對象,生成大約 2000 個候選區域, 

在每個候選區域上運作 CNN,

擷取每個 CNN 的輸出并将其輸入:

SVM 來區域進行分類

線性回歸器來收緊對象的邊界框,如果對象存在

SSD(單次多盒檢測)用于實時物體檢測

R-CNN 運用于目标檢測

雖然與傳統的 CNN 相比,R-CNN 在目标定位,檢測和分類方面都取得了很大進步,但在實作目标實時檢測方面依舊存在問題。以下是其中的一些問題:     

     1、訓練資料很難處理,而且耗時很長

     2、訓練分為兩個階段進行(即:候選區域的選擇和分類)

     3、網絡在推理階段很慢(處理非訓練資料時)

為了改進 R-CNN,研究人員們相繼提出了其他算法,如 Fast-RCNN,Faster-RCNN 等。 這些算法為目标檢測提供了更準确的結果。 但它們對于實時檢測來說顯得有點慢。SSD 就在這個時候應運而生,它在準确性和計算速度方面具有良好的平衡。

SSD(單發多邊框檢測器)的含義 

單發:目标定位和分類在網絡的單個前向傳遞中完成 : 

多框:邊界框回歸的技術

檢測器:對檢測到的對象進行分類

結構

SSD(單次多盒檢測)用于實時物體檢測

SSD 結構

SSD 的結建構立在 VGG-16 的基礎上。但在這裡對 VGG-16 進行了一些微小調整,從 Conv6 層開始,我們用一系列輔助卷積層來代替原先全連接配接層。因為 VGG-16 可以提供高品質的圖像分類和遷移學習來改善結果, 我們将其作為 SSD 的基礎網絡。通過使用輔助卷積層,我們可以提取圖像多個尺度的特征,并逐漸減小每個卷積層的尺寸。我已在下一節讨論了它的工作原理。您可以看到 VGG-16 架構的以下圖像, 它包含全連接配接層。

SSD(單次多盒檢測)用于實時物體檢測

VGG-16 結構

工作機制

SSD(單次多盒檢測)用于實時物體檢測

為了訓練我們的算法,我們需要一個包含帶有對象的圖像的訓練集,這些對象必須在它們上面有邊界框。 通過這種方式學習,算法學習如何在對象上放置矩形框以及放置在何處。 我們通過調參使預測出的邊界框和實際的邊界框之間的誤差最小,進而優化我們的模型以正确地檢測對象。與 CNN 不同,我們不僅預測圖像中是否存在物體,還需要預測物體在圖像中的位置。在訓練期間,算法也要學習調整對象邊界框中的高度和寬度。 

SSD(單次多盒檢測)用于實時物體檢測

上圖是我們用于目标檢測的訓練資料集的示例。 這些資料集必須包含在圖像中标記類别的對象。 更多預設框會有更準确的檢測,但會以速度犧牲作為代價。

Pascal VOC 和 COCO 資料集對初學者而言是一個很好的入門。

處理尺度問題

SSD(單次多盒檢測)用于實時物體檢測

在左邊是一張有幾匹馬的圖像。我們将輸入圖像劃分為網格集。 然後我們圍繞這些網格制作幾個不同寬高比的矩形框。 我們在這些框中應用卷積來研究這些網格中是否存在對象。這裡的一匹黑馬在圖像中更靠近攝像頭。是以,我們繪制的邊界框無法識别是否是馬,因為邊界框沒有任何可以識别馬匹的特征。

SSD(單次多盒檢測)用于實時物體檢測

如果我們看上述 SSD 的架構,我們可以看到在 conv6 層之後的每個步驟中圖像的大小在顯著減小。 我們讨論的關于劃分網格和在這些網格上查找對象的每個操作都适用于從網絡的後面到前面的卷積的每個步驟。 分類器也應用在每個步驟中來檢測對象。 是以,由于物體在每個步驟中變得更小,它很容易識别。

SSD 算法還知道如何從一個卷積操作傳回到另一個卷積操作。 它不僅會前向運算而且會後向運算。 例如,如果它在 conv4 中看到馬,那麼它可以傳回到 conv6 并且将在馬周圍繪制矩形框。

原文連結:

https://medium.com/@rabinpoudyal1995/ssd-single-shot-multi-box-detection-for-real-time-object-detection-5f2a06e33a4a

雷鋒網 AI 研習社編譯。

号外号外~

一個專注于

AI技術發展和AI工程師成長的求知求職社群

誕生啦!

歡迎大家通路以下連結或者掃碼體驗

https://club.leiphone.com/page/home

SSD(單次多盒檢測)用于實時物體檢測
SSD(單次多盒檢測)用于實時物體檢測

繼續閱讀