目录
1.IOU的概念
介绍mAP和AP之前应该先了解一下IOU,IOU就是衡量预测狂和真实框的重合程度。
计算IOU的公式为:
可以看到IOU是个一个壁纸,既并交叉。
在分子部分,值为预测框和实际框之间的重叠区域;
在分母部分,值为预测框和实际框所占有的总区域。
交区域和并区域的比值,就是IOU。
2.TP TN FP FN的概念
TP TN FP FN里面一共出现了4个字母,分别是T、P、N、F。
T是True、F是False、P是positive、N是Negative。
T或者F代表的该样本 是否被正确分类。
P或者N代表的是该样本 被预测成了正样本还是负样本。
TP(True Positives)意思就是被分为了正样本,而且分对了。
TN(True Negatives)意思就是被分为了负样本,而且分对了,
FP(False Positives)意思就是被分为了正样本,但是分错了(事实上这个样本是负样本)。
FN(False Negatives)意思就是被分为了负样本,但是分错了(事实上这个样本是正样本)。
3.precision(精确度)和recall(召回率)
TP是分类器认为样本是正样本而且确实是正样本的例子,FP是分类器认为是正样本但实际上并不是正样本的例子,Precision翻译成中文就是“分类器认为是正类并且确实是正类的部分占所有分类器认为是正类的比例”。
TP是分类器认为是正样本而且确实是正样本的例子,FN是分类器认为是负样本但实际上不是负样本的例子,Recall翻译成中文就是“分类器认为是正类并且确实是正类的部分占所有确实是正类的比例”。
4.概念举例
如图所示,蓝色的框是 真实框。绿色和红色的框是 预测框,绿色的框是正样本,红色的框是负样本。一般来讲,当预测框和真是框IOU>=0.5,被认为是正样本。
对于这个图来说,真实框有三个,正样本两个,负样本两个。
此时:
5.单个指标的局限性
在目标检测算法里有一个非常重要的概念是置信度,如果置信度设置得高的话,预测的结果和实际情况就很符合,如果置信度低的华,就会有很多误差。
假设一幅图片里面总共有3个正样本,目标检测对这副图的预测结果有10个,其中3个是正样本,7个是负样本。对应置信度如下:
如果我们将置信度设置为0.95,此时就只有序号1的样本作为正样本,其他都是负样本。此时TP=1(序号1),FP=0,FN=2(序号2.3).
此时Precision非常高,但是事实上我们只检测出一个正样本,还有两个没有检测出来,因此只用Precision就不合适。
这个时候如果我们将可以接受的置信度设置为0.35的话,那么目标检测算法就会将序号为1的样本作为正样本,其它的都是负样本。此时TP = 3(序号1、2、3),FP = 3(序号4、5、6),FN = 0。
此时Recall非常高,但是事实上目标检测算法认为是正样本的样本里面,有3个样本确实是正样本,但有三个是负样本,存在非常严重的误检测,因此只用Recall就不合适。
所以结合两者,AP就应运而生啦~
6.AP和mAP
AP事实上指的是,利用不同的Precision和Recall的点的组合,画出来的曲线下面的面积。
如下面这幅图所示。
当我们取不同的置信度,可以获得不同的 Precision 和不同的 Recall ,当我们取得置信度够密集的时候,就可以取得非常多的 Precision 和 Recall。
此时Precision和Recall可以在图片上画出一条线,这条线下部分的面积就是某个类的AP值。
mAP就是所有的类的AP值求平均。
试运行代码在下文:
睿智的目标检测20——利用mAP计算目标检测精确度_Bubbliiiing的学习小课堂-CSDN博客_睿智的目标检测