首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

【深度学习项目】目标检测中的常见指标(Precision、Recall、F1 Score、IoU、AP、mAP、COCO指标)

  • 25-02-16 04:41
  • 2760
  • 13847
blog.csdn.net

文章目录

  • 介绍
    • 1. 精确率(Precision)
    • 2. 召回率(Recall)
    • 3. F1 分数(F1 Score)
    • 4. 交并比(Intersection over Union, IoU)
    • 5. 平均精度(Average Precision, AP)
    • 6. 平均平均精度(Mean Average Precision, mAP)
    • 7. COCO 指标
    • 8. Speed and Accuracy Trade-off
    • 总结
  • 举例详解
    • mAP详解
      • 1. 理解 AP(Average Precision)
        • 计算 AP 的步骤:
      • 2. mAP 的定义
        • 计算 mAP 的公式:
      • 3. COCO 数据集中的 mAP
      • 4. 为什么 mAP 重要?
      • 5. 如何提高 mAP?
    • 示例

介绍

在目标检测任务中,评估模型性能的指标非常重要,因为它们帮助我们了解模型的效果,并指导进一步的改进。以下是几种常见的目标检测评估指标:

1. 精确率(Precision)

  • 定义:精确率是指所有预测为正类的样本中,真正是正类的比例。
  • 公式:
    在这里插入图片描述
    其中 TP 表示真阳性(True Positives),即正确地被识别为目标的实例;FP 表示假阳性(False Positives),即错误地被识别为目标的背景。

2. 召回率(Recall)

  • 定义:召回率是指所有实际为正类的样本中,被正确预测为正类的比例。
  • 公式:
    ​在这里插入图片描述
    其中 FN 表示假阴性(False Negatives),即实际为目标但未被检测出来的实例。

3. F1 分数(F1 Score)

  • 定义:F1 分数是精确率和召回率的调和平均值,它提供了一个综合评价指标。
  • 公式:
    在这里插入图片描述

4. 交并比(Intersection over Union, IoU)

  • 定义:IoU 是衡量两个边界框重叠程度的标准方法,通常用于判断预测框与真实框之间的匹配度。
  • 公式:
    在这里插入图片描述
    一般情况下,当 IoU 超过某个阈值(如 0.5 或 0.7)时,认为该预测框是一个有效的检测结果。

5. 平均精度(Average Precision, AP)

  • 定义:AP 是根据 PR 曲线下面积计算得出的一个数值,反映了不同置信度下的模型表现。对于每个类别,可以绘制出其对应的 PR 曲线,并计算该曲线下的面积作为 AP。
  • 计算方式:
    对于每个类别,按照预测得分排序后,逐步降低阈值,并记录不同阈值下的 Precision 和 Recall 值。然后计算这些点组成的 PR 曲线下的面积。

6. 平均平均精度(Mean Average Precision, mAP)

  • 定义:mAP 是所有类别 AP 的平均值,它是目标检测中最常用的综合评价标准之一。它可以反映出模型在整个数据集上的整体性能。
  • 计算方式:
    首先计算每个类别的 AP。然后取所有类别 AP 的平均值得到 mAP。

7. COCO 指标

  • 定义:COCO 数据集提出了更严格的评估标准,除了传统的 mAP 外,还包括了不同 IoU 阈值(例如 [0.5:0.05:0.95])下以及不同对象尺度(小、中、大)下的 AP 计算。
  • 特点:
    • 更加全面地考虑了各种情况下的检测效果。
    • 特别适合像 COCO 这样包含大量多样性和复杂场景的数据集。

8. Speed and Accuracy Trade-off

  • 定义:在实际应用中,除了准确性之外,推理速度也是一个重要的考量因素。因此,在选择或优化模型时,还需要权衡速度与准确性的关系。

总结

在这里插入图片描述

以上列出的目标检测评估指标各有侧重,可以根据具体的应用场景和个人需求来选择合适的评估标准。例如,在某些场合下,可能更关心高召回率以确保不漏检关键目标;而在其他情况下,则可能更注重高精确率以减少误报。此外,随着研究的发展,新的评估指标和技术也在不断涌现,以更好地适应日益复杂的任务要求。

举例详解

COCO Evaluation Result

在这里插入图片描述

mAP详解

平均平均精度(Mean Average Precision, mAP)是目标检测任务中最常用和最全面的性能评估指标之一。它综合考虑了不同类别的检测效果,以及每个类别在不同置信度阈值下的表现。下面将详细解释 mAP 的计算过程及其重要性。

1. 理解 AP(Average Precision)

在深入探讨 mAP 之前,我们首先需要了解什么是 AP。AP 是根据 PR 曲线(Precision-Recall Curve)下面积来衡量模型在一个特定类别上的性能。PR 曲线展示了随着检测阈值变化时,精确率(Precision)和召回率(Recall)之间的关系。

计算 AP 的步骤:
  • 排序预测结果:对于给定类别,按照预测得分(即模型输出的概率或置信度)从高到低对所有检测结果进行排序。
  • 计算 TP 和 FP:遍历排序后的检测结果,逐个检查是否为真阳性(TP)或假阳性(FP),并累积计算 TP 和 FP 数量。
  • 生成 PR 曲线:根据累积的 TP 和 FP 值,计算每一个检测结果对应的精确率和召回率,并绘制 PR 曲线。
  • 计算 AP:AP 可以通过多种方式计算,例如:
    • 11-point interpolated AP:在召回率为 [0, 0.1, 0.2, …, 1.0] 的点上取最大精确率值,然后计算这些点的平均值。
    • COCO-style AP:使用更精细的方法,在一系列 IoU 阈值范围内(如 [0.5:0.05:0.95])计算 PR 曲线下面积的平均值。

2. mAP 的定义

mAP 是所有类别 AP 的平均值,用于衡量整个数据集上的整体性能。具体来说,它是对每个类别分别计算 AP 后求得的平均数。这意味着 mAP 不仅反映了单个类别的检测质量,还考虑了多类别之间的平衡。

计算 mAP 的公式:

在这里插入图片描述

3. COCO 数据集中的 mAP

在 COCO 数据集中,mAP 的定义更为严格和复杂,因为它引入了多个 IoU 阈值和对象尺度的考量。以下是 COCO 中常用的几个 mAP 指标:

  • mAP@[IoU=0.50]:当 IoU 阈值为 0.50 时计算的 mAP。
  • mAP@[IoU=0.75]:当 IoU 阈值为 0.75 时计算的 mAP。
  • mAP@[IoU=0.50:0.95]:在 IoU 阈值范围 [0.50, 0.55, …, 0.95] 内计算的 mAP 平均值。
  • mAP (small)、mAP (medium)、mAP (large):针对小、中、大尺寸对象分别计算的 mAP。
    这种多维度的评估方法确保了模型不仅能在标准条件下表现良好,还能适应各种不同的检测要求。

4. 为什么 mAP 重要?

  • 综合评价:mAP 提供了一个综合性的评分体系,能够同时反映模型的精确性和召回能力。
  • 跨类别比较:由于它是基于所有类别的平均值,因此可以公平地比较不同模型在同一数据集上的表现。
  • 鲁棒性强:通过考虑不同 IoU 阈值下的 AP,mAP 更加稳健,不容易受到个别极端情况的影响。
  • 促进研究进展:作为广泛接受的标准,mAP 有助于推动社区内的竞争和技术进步。

5. 如何提高 mAP?

要提升模型的 mAP 分数,可以从以下几个方面入手:

  • 改进特征提取器:使用更深或更高效的卷积神经网络来增强特征表示能力。
  • 优化区域提议机制:例如采用 FPN(Feature Pyramid Network)等技术来更好地捕捉多尺度信息。
  • 调整损失函数:尝试不同的损失组合(如 focal loss),以改善难例的学习。
  • 数据增强:利用更多的数据增强手段增加训练样本多样性。
  • 后处理策略:优化非极大值抑制(NMS)等后处理步骤,减少冗余检测框。

总之,mAP 是一个强大且灵活的目标检测评估指标,它帮助研究人员和开发者全面了解模型的优势与不足,从而指导后续的工作。

示例

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

mAP=(0.14 - 0) ´1.0 + (0.28 - 0.14) ´1.0 + (0.42 - 0.28) ´1.0 + (0.57 - 0.42) ´1.0 + (0.71- 0.57) ´ 0.71 = 0.6694

注:本文转载自blog.csdn.net的道友老李的文章"https://blog.csdn.net/u014608435/article/details/144453657"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2491) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

101
推荐
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2025 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top