在一個典型的對象檢測管道中,網絡會在中間層輸出不少候選框-BB(bounding box)。在這個階段輸出的BB大多數都會關聯同一個檢測對象,這個時候須要一個方法來合併這些BB成爲一個對象檢測框,除了FP以外。Non-maximum-suppression(NMS)經過空間距離結合並交比(IOU)完成聚類劃分,對每一個cluster只保留得分最高的BB,這種方法中文也被稱着-非最大抑制。
算法
NMS有兩種最多見的代碼實現方法網絡
兩種算法提供了不一樣的解決思路:ide
兩個重要的參數是score閾值與overlap閾值,任何低於score閾值的BB將會被拒絕,當兩個BB的IOU大於給定的overlap閾值時候,兩個檢測框將會被聚類分割爲同一個對象檢測框。Overlap閾值須要平衡精度與抑制效果:翻譯
- 當overlap閾值越大、proposals boxes被壓制的就越少,結果就是致使大量的FP(False Positives),進一步致使檢測精度降低與丟失(緣由在於對象與背景圖像之間不平衡比率,致使FP增長數目遠高於TP)
- 當overlap閾值很小的時候,致使proposals boxes被壓制的很厲害,致使recall大幅降低。
使用soft-NMS,在soft-NMS中score被乘以負向IOU,圖示以下:code
下圖是基於soft-NMS實現了對部分重疊對象的成功檢測:
對象
本文轉自it
https://medium.com/@yusuken/object-detction-1-nms-ed00d16fdcf9
由gloomyfish翻譯,轉載請註明出處!io