目标检测之mAP

1.混淆矩阵

TP:真正,真阳性,实际为正例,预测也为正例;
FP:假正,假阳性,实际为负例,预测为正例;
TN:真负,真阴性,实际为负例,预测也为负例;
FN:假负,假阴性,实际为正例,预测为负例
目标检测之mAP
目标检测之mAP
目标检测之mAP

2.计算TP和FP

对于精度(Precision)和召回率(Recall)的计算和机器学 习一样,都是需要判断出TP(真正例)、FP(假正例)、 TN(真负例)、FN(假负例)
为了得到TP和FP,需要用到IOU,以判断检测结果正 确还是错误,一般以0.5作为IOU的阈值,如果 IOU>0.5,认为检测结果为TP,否则为FP。在COCO数 据集中,建议使用不同的阈值分别计算,在PASCAL VOC中建议直接0.5阈值。
为了计算Recall,可以直接将漏检的物体数目当做FN。
目标检测之mAP

3.不同阈值下召回率的计算

mAP(mean Average Precision)在目标检测中定义为平均精度评估指标值
目标检测之mAP
根据predict的置信度阈值进行排序,这里刚好就是predict1(0.9)、predict2(0.8)、predict3(0.7)的顺序;
计算在不同置信度阈值的情况下,Predicision和Recall的值。
阈值0.9,无视所有小于0.9的predict,那么此时TP=1, FP=0, precision=1,所有标签数目为3,那么recall=1/3;
阈值0.8,无视所有小于0.8的predict,那么此时TP=1, FP=1, precision=1/2,所有标签数目为3,那么recall=1/3
阈值0.7,无视所有小于0.7的predict,那么此时TP=2, FP=1, precision=2/3,所有标签数目为3,那么recall=2/3

4.绘制PR曲线,计算AP值

在每个”峰值点”往左画一条直线,和上一个”峰值点”的垂直线像交,这样和坐标轴框出来的面积就是AP值。
目标检测之mAP

5.计算mAP

AP值是衡量一个类别的检测好坏情况的,mAP就是对多个类别的 检测好坏情况进行评估,简单来讲就是将所有类别的AP值进行平 均取值即可。比如现在有两个类别,类别A的AP值为0.5,类别B 的AP值为0.2,那么mAP=(0.5+0.2)/2=0.35
目标检测之mAP