目标检测中评估指标mAP详解和计算方式

您所在的位置:网站首页 计算公式max什么意思啊 目标检测中评估指标mAP详解和计算方式

目标检测中评估指标mAP详解和计算方式

2024-07-14 23:04| 来源: 网络整理| 查看: 265

相信大家在看一些目标检测论文中经常会看到作者将自己的模型和其他的模型做了mAP比较,mAP作为目标检测中一个非常重要的评估指标,是对模型好坏的评价标准,当时在看YOLOv3、SSD、Faster R-CNN等这些论文的时候,对mAP还不是很熟悉,看了很多的博文,写得都很零碎,很难理解,虽然大概能明白其原理,但是可能对于很多刚进入这个领域的同学来说,难度还是很大的,刚好这几天被困在家没事做,在复习之前的东西,也重新整理一下本人对mAP的理解,用这篇博客记录下来。

YOLOv3论文中的各个模型的mAP对比图: 在这里插入图片描述 目标检测问题中,每张图片可能包含多个不同类别的不同物体,需要评测模型的分类和定位性能.

因此,图像分类问题中的精度指标是不能直接适用的. 这就是为什么采用 mAP 的原因.

一、理解mAP前要知道的一些基础概念 1.IOU

IoU 的全称为交并比(Intersection over Union),在目标检测中即计算预测边界框与真实边界框的重叠程度,重叠程度越高,说明越接近真实框。IoU 计算的是 “预测的边框” 和 “真实的边框” 的交集和并集的比值,即公式等于:

IOU = 相交的面积 / 相并的面积

在这里插入图片描述

2. 混淆矩阵

混淆矩阵是机器学习中总结分类模型预测结果的情形分析表,以矩阵形式将数据集中的记录按照真实的类别与分类模型预测的类别判断两个标准进行汇总。其中矩阵的行表示真实值,矩阵的列表示预测值,矩阵表现形式,如下: 在这里插入图片描述 为了更好的理解,我们把矩阵中英文翻译成字面信息,True(对)、False(错)、Positive(正例)、Negative(负例),混淆矩阵重新整理一下: 在这里插入图片描述 现在我们来分析一下这个混淆矩阵,在mAP计算中,混淆矩阵的概念是非常重要的,如果你这步都没有理解的话,那接下来的mAP计算你肯定也看不懂。

2.1 真正例 TP(True Positives):

预测结果是True(对),真实值为Positives(正例),模型认为它也是Positives(正例);在一般情况下,会认为IOU>0.5时为真正例,在一些数据集上的指标也是为0.5;

2.2 假正例 FP(False Positives)

预测结果是False(错),真实值为Negative(负例),模型却认为它是Positives(正例);同理,一般情况下会认为 IOU=阈值元素所对应的precision的最大值。为此可得precision列表为[1,1,1,0.5,0.5,0.5,0]。

在这里举个计算的例子吧,比如找recall阈值列表中0.57所对应的precision,当recall>=0.57时,由上表可得precision为max{0.44,0.5}=0.5,其他recall对应precision的选取同理。

有了这两个列表就可以计算类A的AP了: AP=(0.14−0)∗1+(0.29−0.14)∗1+(0.43−0.29)∗0.5+(0.57−0.43)∗0.5+(0.71−0.57)∗0.5+(1−0.71)∗0=0.5。

同样可以通过绘制PR曲线计算线下面积,如下图所示: 在这里插入图片描述 AP值即浅蓝色图形的面积,蓝色折线为recall、precision点,同理求出其他类的AP,即可算出mAP值。

参考文档:

理解目标检测当中的mAP

目标检测中的评价指标mAP理解及计算

目标检测评测指标mAP及计算[译]



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3