目标检测map计算

目标检测评价指标MAP计算流程小结

目标检测由于包含分类以及box回归, 对其进行评价相对于单独的分类问题更复杂,直接使用精度、召回作为评估准则不太适合, 使用MAP作为评估准则.

TP、FP的判定,目标检测涉及到IOU计算MAP时需要先指定一个IOU阈值,计算此IOU阈值下的MAP,取阈值设为0.5,假设共有15个GT框,检测出了24个预测框。若预测框与GT框的IOU大于阈值则记为TP,小于阈值则记为FP,同时,当多个预测框针对于一个GT 时,最高IOU的预测框记为TP,其余的为FP。

$$precision= \frac{TP}{TP + FP}$$

上式分母即为所有检测出的框,即为24

$$recall= \frac{TP}{TP + FN}$$

上式分母为所有的GT box,即为15

每一个类别的AP计算流程如下:

  • 将该类别的检测结果按置信度逆序排序,对每一个置信度计算累计的TP、FP(如置信度0.95 时,TP 一个,FP 为0, 当置信度为0.85 时,累计TP为0.95的TP + 当前0.85 的TP个数,FP同理), 然后计算当前置信度下的P、R值,那么每个置信度都能得到一对P、R
  • 以R为横轴,P为纵轴,绘制PR图,一个recall可能会对应多个precision
  • 计算AP,两种方式11点内插法或所有点进行内插,一般使用第二种,即计算AUC面积,即为当前类的AP

11点内插法: 将每个红点的值相加再除以11

每点内插法: 求出四个区域的面积相加即可

得到每一个类的AP值后,再求个均值即为MAP。

参考

最流行的度量标准,用于评估对象检测算法