AP、mAP计算
概念
AP計算 PR曲線的與坐標軸圍成的圖形的面積
mAP 所有類別的AP的均值
參考鏈接https://www.bilibili.com/video/BV1ez4y1X7g2?from=search&seid=13320469311104224558
sklearn中計算AP的函數sklearn.metrics.average_precision_score(y_true, y_score, average=‘macro’, sample_weight=None)
y_true:標簽
y_score:預測值
這個函數不能直接在目標檢測中計算ap,因為這個不能體現ground truth的數量
計算過程
對于某個類別, 比如狗。
- 有非常多張圖像上檢測到了有狗,每張圖片上不止一個。
- 所有圖片上狗的總數為T,即Ground Truth的數目。
- 這些圖形輸入到網絡,檢測得到的預測框bounding box,可能與ground truth 有交集,也可能沒有交集。
- bounding box與ground truth 的 IOU>0.5的認為是正樣本,小于0.5的認為是負樣本。
- 每個bounding box都有一個置信度,即屬于狗的概率(?)
計算步驟
示例如下
圖片來自https://www.bilibili.com/video/BV1ez4y1X7g2?from=search&seid=13320469311104224558
總共輸入了三張圖片,有7個目標框。綠色的是ground truth,紅色的是預測的bounding box.
按置信度排序。
置信度取0.98時precision和recall
最終結果如下
繪制PR曲線即計算AP
總結
- 上一篇: python中常见的异常
- 下一篇: ROC曲线 vs Precision-R