SSD算法原理


Paper: https://arxiv.org/pdf/1512.02325.pdf


SSD用神經網絡(VGG)提取多層feature map ,來實現對不同大小物體的檢測。如下圖所示:

We use the VGG-16 network as a base, but other networks should also produce good results.

Train:

損失函數=位置誤差(locatization loss, loc)+alpha*置信度誤差(confidence loss, conf)

其中:

  1. 解決負樣本過多的問題,僅保留損失函數最大的K個FPs,即只保留K個最像正陽本的背景。
  2. 運用Data augmentation技術,提高魯棒性。

 

Detect/Predict:

  1. 對於每個預測框,根據類別置信度確定其類別(置信度最大者)與置信度值。
  2. 根據置信度閾值(如0.5)過濾掉閾值較低的預測框。
  3. 對於留下的預測框進行解碼,根據先驗框得到其真實的位置參數(解碼后一般還需要做clip,防止預測框位置超出圖片)。
  4. 解碼之后,一般需要根據置信度進行降序排列,然后僅保留top-k(如400)個預測框。
  5. 最后就是進行NMS算法,過濾掉那些重疊度較大的預測框。最后剩余的預測框就是檢測結果了。

 

本文參考了下面兩篇文章:

https://zhuanlan.zhihu.com/p/33544892

https://blog.csdn.net/remanented/article/details/79943418


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM