【目标检测必学】快速理解IOU、Recall、Precision、AP、mAP检测指标

学习目标:

总结了几篇个人认为深入浅出的目标检测性能指标相关博客,希望通过这次笔记能帮助到还不理解的同学!

**理解目标检测中常用的性能检测指标mAP、IOU、Recall、Precision,**通过约30分钟的阅读深刻理解并掌握这几个常见指标的运用。


学习内容:

1、什么是IoU

IoU简单说就是预测框和真实框(GroundTruth)的重合程度,通常在训练VOC数据集时设置IoU=0.5为阈值,如果大于0.5则算作正确True,小于0.5则算作错误False,*具体见论文"The PASCAL Visual Object Classes (VOC) Challenge"Page_11。*需要说明的是,阈值的改变会影响检测结果,TP\FP\FN\TN等都会随着阈值的改变而改变。

具体的IoU定义为:
在这里插入图片描述

通俗理解如下图所示:
在这里插入图片描述

通常在目标检测中:

IoU大于设置阈值时,检测出现的预测框叫做Positive;


2、什么是TP TN FP FN:

理解这点很重要!
TP TN FP FN里面一共出现了4个字母,分别是T F P N。
T是True;
F是False;
P是Positive;
N是Negative。

T或者F代表的是该样本 是否被正确分类。
P或者N代表的是该样本 被预测成了正样本还是负样本。

真阳性TP:正确样本预测为正,在目标检测中为IoU大于阈值记为TP;
假阳性FP:错误样本预测为正,检测框的IoU小于阈值记为FP;
假阴性FN:正确样本预测为负,没有检测到框;
真阴性TN:错误样本预测为负;

直观解释如下图所示:
在这里插入图片描述


3、Precision(精确度)和Recall(召回率):

在论文中常见的PR曲线图中的“PR”就是Precision(精确度)和Recall(召回率),定义如下:

3.1、Precision
在这里插入图片描述
Precision精度,即TP/(TP+FP)。指所有结果中正确的检索所占比例。结果中包含了真阳性结果TP和假阳性结果FP。其含义为所有被预测为正类的结果(其中也包含了被错误预测成正类的FP)中预测正确的结果所占比例。

3.2、Recall:
在这里插入图片描述
Recall召回率,即TP/(TP+FN)。指模型查找出正确对象的概率。其中包含了正确预测的正类TP,也包括了将正类错误预测成负类的FN。召回率的本质可以理解为查全率,即结果中的正样本占全部正样本的比例。

3.3、PR曲线
PR:精度-召回率(P r e c i s i o n − R e c a l l Precision-RecallPrecision−Recall)曲线。这条曲线的两个变量程负相关,精度越高,召回率越低;召回率越高,精度越低。如果将所有对象都预测为正类,没有被错误预测成负类的正类(FN为0)那么召回率将为100%;如果将所有对象的预测都为负,没有被错误预测成正的样本,那么精度就将为100%,这两个指标间存在着此消彼长的关系,理想的曲线是向右上方凸出的、包围面积大的曲线。
在这里插入图片描述


4、通俗理解PR

进一步理解:理想的曲线是向右上方凸出的、包围面积大的曲线。

在目标检测算法里面有一个非常重要的概念是置信度,如果置信度设置的高的话,预测的结果和实际情况就很符合,如果置信度低的话,就会有很多误检测。

假设一幅图里面总共有3个正样本,目标检测对这幅图的预测结果有10个,其中3个实际上是正样本,7个实际上是负样本。对应置信度如下。
在这里插入图片描述
如果我们将可以接受的置信度设置为0.95的话,那么目标检测算法就会将序号为1的样本作为正样本,其它的都是负样本。此时TP = 1,FP = 0,FN = 2。

那么P和R的计算为:

在这里插入图片描述
此时Precision非常高,但是事实上我们只检测出一个正样本,还有两个没有检测出来,因此只用Precision就不合适。

这个时候如果我们将可以接受的置信度设置为0.35的话,那么目标检测算法就会将序号为1的样本作为正样本,其它的都是负样本。此时TP = 3,FP = 3,FN = 0。
在这里插入图片描述
此时Recall非常高,但是事实上目标检测算法认为是正样本的样本里面,有3个样本确实是正样本,但有三个是负样本,存在非常严重的误检测,因此只用Recall就不合适。


5、什么是AP和mAP

5.1、AP

AP均匀精度Average Precision:PR曲线下所围成的面积,面积越大越好
通俗来说就是利用不同的Precision和Recall的点的组合,画出来的曲线下面的面积。

在这里插入图片描述
当我们取不同的置信度,可以获得不同的Precision和不同的Recall,当我们取得置信度够密集的时候,就可以获得非常多的Precision和Recall。

5.2、mAP
mAP指的是对所有类别都计算好AP,然后在类别上求平均即可得到mAP,定义如下:
在这里插入图片描述


6、Reference

1、https://blog.csdn.net/u014636245/article/details/89236073
2、https://blog.csdn.net/weixin_44791964
3、https://blog.csdn.net/weixin_45192980/article/details/108031085

猜你喜欢

转载自blog.csdn.net/qq_45193872/article/details/123254930