• 耀世娱乐注册
  • 耀世娱乐登录
  • 耀世娱乐招商QQ
  • 目标检测中的mAP是什么含义?

    作者:admin发表时间:2023-09-23

      交并比(IOU)是度量两个检测框(对于目标检测来说)的交叠程度,公式如下:

      B_gt 代表的是目标实际的边框(Ground Truth,GT),B_p 代表的是预测的边框,通过计算这两者的 IOU,可以判断预测的检测框是否符合条件,IOU 用图片展示如下:

      先规定两个公式,一个是 Precision,一个是 Recall,这两个公式同上面的一样,我们把它们扩展开来,用另外一种形式进行展示,其中all detctions代表所有预测框的数量,all ground truths代表所有 GT 的数量。

      AP 是计算某一类 P-R 曲线下的面积,mAP 则是计算所有类别 P-R 曲线下面积的平均值。

      假设我们有 7 张图片(Images1-Image7),这些图片有 15 个目标(绿色的框,GT 的数量,上文提及的all ground truths)以及 24 个预测边框(红色的框,A-Y 编号表示,并且有一个置信度值)

      根据上图以及说明,我们可以列出以下表格,其中 Images 代表图片的编号,Detections 代表预测边框的编号,Confidences 代表预测边框的置信度,TP or FP 代表预测的边框是标记为 TP 还是 FP(认为预测边框与 GT 的 IOU 值大于等于 0.3 就标记为 TP;若一个 GT 有多个预测边框,则认为 IOU 最大且大于等于 0.3 的预测框标记为 TP,其他的标记为 FP,即一个 GT 只能有一个预测框标记为 TP),这里的 0.3 是随机取的一个值。

      通过上表,我们可以绘制出 P-R 曲线(因为 AP 就是 P-R 曲线下面的面积),但是在此之前我们需要计算出 P-R 曲线上各个点的坐标,根据置信度从大到小排序所有的预测框,然后就可以计算 Precision 和 Recall 的值,见下表。(需要记住一个叫累加的概念,就是下图的 ACC TP 和 ACC FP)

      mAP相关问题、文章有很多,但都是讲的很模糊,甚至还有错误,真是看不下去(ノ`Д)ノ

      这边我推荐StackExchange上的一个问题及其答案:Ps: 这个答案我两天前编辑过,结合例子讲解了VOC10以前和以后两种mAP计算方法

      在VOC2010及以后,需要针对每一个不同的Recall值(包括0和1),选取其大于等于这些Recall值时的Precision最大值,然后计算PR曲线下面积作为AP值。

      我刚刚学到这个地方, 觉得自己应该差不多学明白了, 壮胆答一发 (第一次认真回答嘻嘻)

      基本定义:precision和recall的含义, preicision是在你认为的正样本中, 有多大比例真的是正样本, recall则是在真正的正样本中, 有多少被你找到了。

      问题核心:我们需要一个对于score的threshold, 为什么呢? 比如在一个bounding box里, 我识别出来鸭子的score最高, 可是他也只有0.1, 那么他真的是鸭子吗? 很可能他还是负样本。 所以我们需要一个阈值, 如果识别出了鸭子而且分数大于这个阈值才真的说他是正样本, 否则他是负样本

      如果threshold太高, prediction非常严格, 所以我们认为是鸭子的基本都是鸭子,precision就高了;但也因为筛选太严格, 我们也放过了一些score比较低的鸭子, 所以recall就低了

      如果threshold太低, 什么都会被当成鸭子, precision就会很低, recall就会很高

      目标检测中衡量识别精度的指标是mAP(mean average precision)。多个类别物体检测中,每一个类别都可以根据recall和precision绘制一条曲线,AP就是该曲线下的面积,mAP是多个类别AP的平均值

      10.21日更新:回复里有人提到那篇博客很多地方有问题,我看了下博客不知道为什么和我最早的印象有点出入。因此删除原答案。Wentao MA的回答更加详细易懂,推荐大家去看。

    联系方式

    电话:400-123-4567

    Email: admin@baidu.com

    传真:+86-123-4567

    手机:13888888888