目标检测类mAP等衡量指标的含义和计算方法

简介: 目标检测类mAP等衡量指标的含义和计算方法

1、IoU(Intersection over Union):

预测框与Ground truth(真实框)的交集与并集的比值。这个量也被称为Jaccard指数。


计算公式

 image.png


2、TP(True Positive):

loU>0.5的检测框数量  (同一Ground Truth只计算一次),意思就是预测的样本被分为了正样本,且分对了(即本来就是正样本)。


3、TN(True Negatives):

意思就是预测的样本被分为了负样本,且分对了(即本来就是负样本)。


4、FP(False Positive):

loU<=0.5的检测框  (或者是检测到同一个GT的多余检测框的数量),意思就是预测的样本被分为了正样本,但是分错了(即本来是负样本)。


5、FN(False Negative):

没有检测到的GT的数量,IoU=0,意思就是预测的样本被分为了负样本,但是分错了(即本来是正样本)。


6、GT(Ground Truth):

ground truth包括图像中物体的类别以及该图像中每个物体的真实边界框。


7、Precision:

TP / (TP +FP)模型预测的所有目标中,预测正确的比例 (又称为查准率)


8、Recall:

召回率,计算方式为TP / (TP +FN)所有真实目标中,模型预测正确的目标比例(又称为查全率)


10、AP:

AP为平均精度,使用积分来计算PR曲线与坐标轴围成的面积。


计算方式如下:

           image.png                                    


11、P-R曲线:

Precision-Recall曲线(即以Precision 和 recall作为纵横坐标的二维曲线。


12、mAP:

(mean Average Precision) ,即各类别AP的平均值。AP 是计算某一类 P-R 曲线下的面积,mAP 则是计算所有类别 P-R 曲线下面积的平均值。


简而言之:AP衡量一个类别的检测效果好坏,mAP则是衡量多个类别检测效果的好坏。把所有类的AP值取相加然后除以类别总数,即可得mAP。比如有两类,类1的AP值是0.8,类2的AP值是0.4,那么mAP=(0.8 + 0.4)/ 2=1.2。

相关文章
|
7天前
|
存储
`map()`方法在什么场景下会比 `forEach()`方法更高效?
综上所述,当需要对数组元素进行复杂的转换并生成新数组、进行链式调用和函数式编程、处理元素之间存在明确映射关系的情况以及与其他数组方法结合使用时,`map()`方法比`forEach()`方法更高效,能够使代码更加简洁、清晰和易于维护。
46 32
WK
|
21天前
|
Python
Python中format_map()方法
在Python中,`format_map()`方法用于使用字典格式化字符串。它接受一个字典作为参数,用字典中的键值对替换字符串中的占位符。此方法适用于从字典动态获取值的场景,尤其在处理大量替换值时更为清晰和方便。
WK
68 36
|
7天前
|
存储 JavaScript 前端开发
如何选择使用`map()`方法和`forEach()`方法?
选择使用`map()`方法还是`forEach()`方法主要取决于操作的目的、是否需要返回值、代码的可读性和维护性等因素。在实际开发中,需要根据具体的业务需求和场景来灵活选择合适的方法,以实现更高效、更易读和更易维护的代码。
13 3
|
25天前
|
存储 Java API
详细解析HashMap、TreeMap、LinkedHashMap等实现类,帮助您更好地理解和应用Java Map。
【10月更文挑战第19天】深入剖析Java Map:不仅是高效存储键值对的数据结构,更是展现设计艺术的典范。本文从基本概念、设计艺术和使用技巧三个方面,详细解析HashMap、TreeMap、LinkedHashMap等实现类,帮助您更好地理解和应用Java Map。
41 3
|
1月前
|
存储 JavaScript 前端开发
《进阶篇第8章:vuex》包括理解vuex、安装vuex、搭建vuex环境、四个map方法的使用、模块化+名命空间
《进阶篇第8章:vuex》包括理解vuex、安装vuex、搭建vuex环境、四个map方法的使用、模块化+名命空间
17 3
|
1月前
|
Java
vue2知识点:vuex中四个map方法的使用,包括:mapState、mapGetters、mapMutations、mapActions
vue2知识点:vuex中四个map方法的使用,包括:mapState、mapGetters、mapMutations、mapActions
87 1
|
2月前
|
存储 JavaScript 前端开发
`forEach()`方法和`map()`方法哪个执行效率更高?
`forEach()`方法和`map()`方法哪个执行效率更高?
|
2月前
|
JavaScript 前端开发
JavaScript Array map() 方法
JavaScript Array map() 方法
|
2月前
数组方法中的`forEach()`方法和`map()`方法有什么区别?
数组方法中的`forEach()`方法和`map()`方法有什么区别?
|
2月前
|
JavaScript 前端开发
JavaScript 中 五种迭代数组的方法 every some map filter forEach
本文介绍了JavaScript中五种常用数组迭代方法:every、some、filter、map和forEach,并通过示例代码展示了它们的基本用法和区别。