CV03_mAP计算以及COCO评价标准

COCO数据集回顾:CV02_超强数据集:MSCOCO数据集的简单介绍-CSDN博客

1.1 简介

在目标检测领域中,mAP(mean Average Precision,平均精度均值)是一个广泛使用的性能评估指标,用于衡量目标检测模型在检测不同类别目标时的综合性能。以下是mAP的几个关键点:

  1. 定义:mAP是所有类别平均精度(Average Precision, AP)的平均值。AP是针对单个类别计算的,表示在不同召回率(Recall)下精度(Precision)的平均值,或者说是PR曲线(Precision-Recall Curve)下的面积。而mAP则是将所有类别各自的AP值取平均得到的结果,从而提供一个跨类别的整体性能评估。

  2. 计算流程

    • 确定TP/FP:首先,根据预测框与真实框之间的交并比(IoU,Intersection over Union)阈值,确定每个预测框是真阳性(True Positive, TP)还是假阳性(False Positive, FP)。
    • 排序:将预测框按其置信度(confidence score)从高到低排序。
    • 计算Precision和Recall:遍历排序后的预测框,逐步累加TP以计算Recall,同时计算每个步骤的Precision(即当前TP除以总的预测阳性数)。
    • 绘制PR曲线:以Recall为横轴,Precision为纵轴,绘制PR曲线。曲线下的面积即为AP。
    • 计算mAP:对所有类别的AP求平均得到mAP。
  3. 重要性:mAP综合考虑了检测模型的精确度(Precision)和召回率(Recall),是衡量模型在准确检测目标的同时,能否尽可能多地找出所有目标的能力。因此,mAP值越高,表示模型的整体性能越好。

  4. 变体:mAP的计算可以根据不同的应用场景有所变化,比如在某些情况下,会根据不同的IoU阈值计算多个mAP值,或者分别计算不同难度级别(如小目标、中目标、大目标)的mAP,以更全面地评估模型性能。

  5. 应用场景:mAP常用于评估和比较各种目标检测算法,如Faster R-CNN、YOLO、SSD等,在学术研究和工业界均有广泛应用,特别是在自动驾驶、监控系统、医疗影像分析等领域。

在我们使用目标检测网络训练时,最后在验证集上会得到一个coco的评价列表。那么它每个数据的含义都代表什么呢?

1.2 目标检测中常见指标

Precision和Recall

假阳性FP:本来不是目标,但是预测成了目标。

假阴性FN:漏检的目标个数,或者说本来有目标但没有预测出来。

对于Precision和Recall,我们来举几个例子:

图片里有5个GT,模型检测出来一个,那么Precision就是1(TP/(TP+FP)),Recall就是0.2(TP/(TP+FN))。

第二个例子,同样5个GT,查准率大概是5/11,查全率是1。

很显然,只看查准率或者只看查全率是不靠谱的,需要综合起来看。

AP和P-R曲线

AP(Average Precision,平均精度)是一个关键的性能评估指标,用来衡量模型在某一特定类别上检测性能的好坏。

  1. 定义:AP是 Precision(精确率)和 Recall(召回率)之间关系的一种综合度量。它通过计算Precision-Recall曲线(PR曲线)下的面积得到,反映了模型在不同召回率水平下的平均精确度。

  2. PR曲线:在计算AP之前,需要绘制Precision-Recall曲线。随着阈值的调整,模型会输出不同数量的预测框,对应不同的Precision和Recall值。将这些点连接起来形成的曲线即为PR曲线,反映了精确率与召回率之间的权衡。

  3. 计算AP

    • 通常,会在Recall的0到1范围内均匀选取一些点(例如11个点,从0到1每隔0.1取一个点),然后在这些点上计算相应的Precision值。
    • 接着,将这些点的Precision值相加后除以点的数量,得到的就是AP的近似值。有时也会使用数值积分或插值方法来更准确地计算曲线下的面积。
  4. IoU阈值的影响:在计算AP时,通常会涉及到交并比(Intersection over Union, IoU)阈值,用以判断预测框与真实框是否匹配。不同的IoU阈值会得到不同的AP值,常见的IoU阈值有0.5或者更高,这取决于具体的评估标准。

  5. 用途:AP值越高,说明模型在确保召回率的同时,也能保持较高的精确率,是衡量目标检测算法性能好坏的重要标准。在多类别目标检测任务中,还会计算所有类别的AP值的平均值,即mAP(mean Average Precision),以评估模型在所有类别上的平均性能。

AP是目标检测中衡量单一类别检测效果的核心指标,通过综合考虑精确率和召回率,提供了对模型性能全面且直观的评估方式。

举个例子:假设我们已经训练好了模型,下面是用于验证的三张图片。首先累加训练集中目标的个数。接下来通过一个列表来统计我们的网络所检测到的目标信息。第二个检测ID=1的bounding box 的IOU值明显小于0.5,所以被标记为false。

整张表格是按置信度(confidence)排序的。

下面检测下一张图片,此时num_ob的值变为3,表格如下所示:

再检测下一张图片。

接下来我们用拿到的这个表格去计算查准率和查全率。我们将阈值设置到0.98,那么只有一个被筛选出来,我们计算一下此时的查准率和查全率。以此类推,不断降低阈值来计算。

我们以Recall为横坐标,Precision为纵坐标,就能得到一个PR曲线。我们要注意一个问题,对于Recall,我们需要过滤掉一些重复的信息,像0.57的时候我们有三个值,此时我们只需要保留precision最大的这个情况就可以了。右图方框框住的点就是我们的数值。

计算出该类别的AP后,我们再计算出其他类别的AP,然后再求和求均值就得到了MAP。

需要注意的是,网络最终给出的预测结果都是经过NMS(非极大值抑制)之后所得到的目标边界框。

1.3  COCO评价指标每一条数据的含义

虽然下图说的是AP,实际上就是我们之前说的mAP

第一类,就是IOU阈值不同的情况下的mAP,第一行是从IOU0.5开始以步长0.05,直到0.95的是个mAP

对于第二类(AP Across Scales),是针对检测小、中、大物体的mAP。小物体的定义是像素面积小于32的平方,中等物体,大物体如下图所示。第二类就可以衡量模型对不同尺度的目标的检测效果

对于第三类(AR不是AP),先看最后一行是AR max=100, 就是我们每张图片限定只检测100个目标,就是经过NMS后我们最多只提供100个目标。我们得到的相应的recall值

AP和AR的区别

Average Precision (AP):

  • 定义: AP衡量的是模型在不同召回率(Recall)水平下的平均精确度(Precision)。它通过计算Precision-Recall曲线下的面积得到,体现了模型在提升召回率的同时保持高精确度的能力。
  • 计算: AP计算过程中,首先会根据预测框与真实框的交并比(IoU)设定阈值,以此来确定预测是否为真阳性(TP)。然后,通过改变置信度阈值,计算出一系列的Precision和Recall值,进而绘制出PR曲线。AP即为该曲线下方的面积,反映了模型在不同决策阈值下的综合性能。
  • 意义: AP值越高,说明模型在召回所有相关对象(即高召回率)的同时,预测正确的比例也很高(即高精确度),是衡量目标检测算法准确性和全面性的重要指标。

Average Recall (AR):

  • 定义: AR侧重于衡量模型在不同IoU阈值下的平均召回率。与AP不同,AR主要关注模型找到所有相关对象的能力,而不直接考虑预测的精确度。
  • 计算: 在COCO数据集中,AR通常是在多个固定的IoU阈值(例如从0.5到0.95,步长为0.05)下计算召回率,然后取这些召回率的平均值。这种做法考虑了模型在不同定位精度要求下的召回表现。
  • 意义: AR强调模型的召回能力,即检测出所有应该检测到的目标的比例。高AR意味着模型很少漏检,即使某些预测框可能不够精确。

总结:

  • AP更注重精确度和召回率之间的平衡,是综合评价模型在不同置信度阈值下表现的指标。
  • AR则更专注于评估模型召回目标的能力,特别是在不同定位精度标准下的召回一致性。

在实际应用中,两者通常会结合使用,比如mAP(mean Average Precision)是多个类别AP的平均值,而COCO数据集评估时,除了mAP,也会报告AR以获得模型性能的更全面视图。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1473899.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

MongoDB集群搭建-最简单

目录 前言 一、分片概念 二、搭建集群的步骤 总结 前言 MongoDB分片(Sharding)是一种水平扩展数据库的方法,它允许将数据分散存储在多个服务器上,从而提高数据库的存储容量和处理能力。分片是MongoDB为了应对大数据量和高吞吐量需…

创新引领未来,智慧水利在路上:数字孪生技术为水库管理开辟新机遇,带来新挑战,引领水利行业迈向智能化新纪元

目录 前言 一、数字孪生技术概述 二、新机遇:数字孪生技术如何重塑水库管理 1、精准预测,科学调度 2、智能监测,及时预警 3、优化资源配置,提升管理效率 4、促进公众参与,增强透明度 三、新挑战:数字…

Fill - UVA 10603

网址如下&#xff1a; Fill - UVA 10603 - Virtual Judge (vjudge.net) 感觉有点浮躁&#xff0c;没法完全将思绪投入题的思考中 脑袋糊糊的 一道bfs题 代码如下&#xff1a; #include<queue> #include<cstdio> #include<cstring> #include<vector&g…

奇迹MU 骷髅战士在哪

BOSS分布图介绍 我为大家带来各地区怪物分布图。在游戏前期&#xff0c;很多玩家可能会不知道该去哪里寻找怪物&#xff0c;也不知道哪些怪物值得打。如果选择了太强的怪物&#xff0c;弱小的玩家可能会无法抵御攻击。如果选择了低等级的boss&#xff0c;收益可能并不理想。所…

吴恩达机器学习 第三课 week3 强化学习(月球着陆器自动着陆)

目录 01 学习目标 02 概念 2.1 强化学习 2.2 深度Q学习&#xff08;Deep Q-Learning &#xff09; 03 问题描述 04 算法中的概念及原理 05 月球着陆器自动着陆的算法实现 06 拓展&#xff1a;基于pytorch实现月球着陆器着陆 07 总结 写在最前&#xff1a;关于强化学习…

【MindSpore学习打卡】应用实践-自然语言处理-基于RNN的情感分类:使用MindSpore实现IMDB影评分类

情感分类是自然语言处理&#xff08;NLP&#xff09;中的一个经典任务&#xff0c;广泛应用于社交媒体分析、市场调研和客户反馈等领域。本篇博客将带领大家使用MindSpore框架&#xff0c;基于RNN&#xff08;循环神经网络&#xff09;实现一个情感分类模型。我们将详细介绍数据…

UE5 07-给物体添加一个拖尾粒子

添加一个(旧版粒子系统)cascade粒子系统组件 ,在模板中选择一个开发学习初始包里的粒子

智慧文旅(景区)解决方案PPT(42页)

智慧文旅解决方案摘要 行业分析中国旅游业正经历消费大众化、需求品质化、发展全域化和产业现代化的发展趋势。《“十三五”旅游业发展规划》的发布&#xff0c;以及文化和旅游部的设立&#xff0c;标志着旅游业的信息化和智能化建设成为国家战略。2018年推出的旅游行业安全防范…

cs224n作业4

NMT结构图&#xff1a;&#xff08;具体结构图&#xff09; LSTM基础知识 nmt_model.py&#xff1a; 参考文章&#xff1a;LSTM输出结构描述 #!/usr/bin/env python3 # -*- coding: utf-8 -*-""" CS224N 2020-21: Homework 4 nmt_model.py: NMT Model Penchen…

2024年导游资格证题库备考题库,高效备考!

1.台湾著名的太鲁阁公园的特色是&#xff08;&#xff09;。 A.丘陵和溶洞 B.森林和瀑布 C.峡谷和断崖 D.彩林和彩池 答案&#xff1a;C 解析&#xff1a;台湾著名的太鲁阁公园的特色是峡谷和断崖。 2.下列位于台湾的景区中&#xff0c;素有"神秘的森林王国"之…

51单片机STC89C52RC——15.1 AD/DA(模数数模)

目的/效果 1 LCD1602 显示 可调电阻、光敏电阻、热敏电阻值&#xff08;AD&#xff09; 2 模拟信号控制LED明暗&#xff08;DA&#xff09; 一&#xff0c;STC单片机模块 二&#xff0c;AD/DA 2.1 AD/DA 介绍 AD&#xff08;Analog to Digital&#xff09;&#xff1a;模拟…

金丝键合强度测试仪试验条件要求:键合拉脱/引线拉力/剪切力等

金丝键合强度测试仪是测量引线键合强度&#xff0c;评估键合强度分布或测定键合强度是否符合有关的订购文件的要求。键合强度试验机可应用于采用低温焊、热压焊、超声焊或有关技术键合的、具有内引线的器件封装内部的引线-芯片键合、引线-基板键合或内引线一封装引线键合&#…

Redis的zset的zrem命令可以做到O(1)吗?

事情是这样的&#xff0c;当我用zrem命令去移除value的时候&#xff0c;我知道他之前会做的几个步骤 1、查找这个value对应的score&#xff08;通过zset中的dict&#xff09;2、根据这个score查找到跳表中的节点3、删除这个节点 我就想了一下为什么dict为什么要保存score呢&a…

非堆成加密是公私钥使用

对称加密学习-CSDN博客 加密算法学习-CSDN博客 非对称加密算法使用一对密钥&#xff0c;包括一个公钥和一个私钥&#xff0c;它们是数学上相关联的&#xff0c;但公钥可以公开分享&#xff0c;而私钥必须保密。以下是使用非对称加密算法的一般步骤&#xff1a; 密钥生成&…

2024年江苏省研究生数学建模竞赛B题火箭烟幕弹运用策略优化论文和代码分析

经过不懈的努力&#xff0c; 2024年江苏省研究生数学建模竞赛B题火箭烟幕弹运用策略优化论文和代码已完成&#xff0c;代码为B题全部问题的代码&#xff0c;论文包括摘要、问题重述、问题分析、模型假设、符号说明、模型的建立和求解&#xff08;问题1模型的建立和求解、问题2模…

基于Java中的SSM框架实现计算机类考研院校推荐系统项目【项目源码+论文说明】

基于Java中的SSM框架实现计算机类考研院校推荐系统演示 摘要 在互联网时代人们获取信息的方式变得非常快捷&#xff0c;登录网站搜索就能快速查找到相关的信息&#xff0c;但是网络上面的信息数量非常庞大&#xff0c;有很多信息虽然和自己搜索的相关&#xff0c;但并不是自己…

猫狗图像分类-划分数据集

&#x1f4da;博客主页&#xff1a;knighthood2001 ✨公众号&#xff1a;认知up吧 &#xff08;目前正在带领大家一起提升认知&#xff0c;感兴趣可以来围观一下&#xff09; &#x1f383;知识星球&#xff1a;【认知up吧|成长|副业】介绍 ❤️如遇文章付费&#xff0c;可先看…

网络-calico问题分析

项目场景&#xff1a; calico-node日志提示 Failed to auto-detect host MTU - no interfaces matched the MTU interface pattern. To use auto-MTU, set mtuifacePattern to match your hosts’s interfaes. 同时&#xff0c;cali开头网卡的mtu是1440大小 原因分析&#xff…

强技能 展风采 促提升——北京市大兴区餐饮行业职工技能竞赛精彩呈现

6月19日&#xff0c;由大兴区总工会、区商务局、青云店镇人民政府联合主办&#xff0c;区服务工会、区餐饮行业协会承办的“传承中国技艺&#xff0c;打造新一代餐饮工匠”2024年大兴区餐饮行业职工职业技能竞赛决赛在北京华联创新学习中心隆重开幕。区总工会副主席郝泽宏&…

Alibaba Cloud Toolkit前端使用proxy代理配置

1、vscode 先安装插件 Alibaba Cloud Toolkit 2、前端代码&#xff1a; /personnel: {// target: http://xxx.xx.xxx.xx:9100, // 测试环境// target: http://xxx.xx.xxx.xx:9200, // 线上环境target: http://127.0.0.1:18002, // toolkit 代理changeOrigin: true,},3、打开插…