目标检测中的mAP浅析

当初理解这个问题时,查了很多资料,特写下自己的理解。

mAP(mean average precision )平均精度均值

precision:检出目标正确率;

recall:目标检出率(很多人翻译为召回率,不好理解);

经典表格
  real A real B
test A TP(true positive) FP(false positive)
test B FN(false negative) TN(true negative)

A.precision=TP/(TP+FP)

A.recall=TP/(TP+FN)

很明显,一个目标检测系统性能的好坏,需要使用precision和recall两个参数,但是我们从小被教育‘简单才是美’,所以我们想要用一个参数来描述目标检测系统性能的好坏。这里我们引入AP(average precision)。

我们可以以precision和recall为笛卡尔坐标系的纵/横坐标轴,根据不同的recall值及其对应的precision值,绘出PR曲线,PR曲线下边的面积就是AP值。

至于不同的recall值(或precision值),可以通过改变IoU(intersection over union)值来实现。

实际上我们使用的时候并不是计算PR曲线下边的面积。假如总样本数是N,A类有M个样本,对其进行Top-N划分:

Top-N划分
top-N precision recall max precision AP
1     1/1 1/3 1/1=1 //
2 2/2 //:与下方单元格合并 // //
3 2/3 // // //
4 2/4 // // //
5 2/5 // // //
6 2/6 // // //
7 2/7 2/3 2/2=2 //
8 3/8 // // //
9 3/9 // // //
10 3/10 3/3 3/8 (1+1+3/8)/3=19/24

表格中以N=10,M=3为例,计算AP值。

至于mAP的计算,实际上目标检测不可能只是一类目标,我们将各类的AP值求加权平均和就得到了mAP值。


你可能感兴趣的:(目标检测中的mAP浅析)