Ultralytics YOLO27:
获取 YOLO 许可
返回 Ultralytics 术语表

Mean Average Precision (mAP)

平均精度均值 (mAP) 通过对召回率、类别和 IoU 阈值上的精度取平均来评估检测器。了解 mAP50 和 mAP50-95 的计算方法。

平均精度均值(mAP)是目标检测的标准评估指标,同样的方法也可评估实例分割、姿势估计和旋转目标检测。它会综合衡量模型是否找到了所有目标、是否避免了误检,以及每个边界框是否贴合目标,并将这三方面压缩为 0 到 1 之间的一个数值,通常以百分比表示。平均精度(AP)是某一类别的精确率-召回率曲线下的面积;mAP 是各类别 AP 的均值,而最常报告的形式 mAP50-95 还会对十个交并比(IoU)阈值上的结果取平均。

基本组成#

  • IoU:预测框与标注框之间的重叠程度,范围为 0 到 1。只有当预测框与同类别且尚未匹配的标注框之间的 IoU 达到阈值(例如 0.5)时,该预测才算真正例。
  • 精确率:预测正确的比例,TP / (TP + FP)。
  • 召回率:模型找到的已标注目标所占比例,TP / (TP + FN)。
  • 置信度:用于给检测结果排序的分数。每个置信度阈值对应一组精确率和召回率,而所有阈值共同描绘出精确率-召回率曲线。

mAP 的计算方法#

评估时会汇总整个数据集中某一类别的所有检测结果,并按置信度排序。从列表顶部开始逐项检查:每个检测结果要么与该类别中重叠最多且尚未匹配的标注框配对,成为真正例;要么成为假正例。每个标注框只能匹配一次,因此已经找到的目标如果再次出现一个框,就会拉低精确率。每处理一项都会重新计算精确率和召回率,由此从置信度最高的检测结果到最低的检测结果绘制出精确率-召回率曲线。

AP 是该曲线下的面积。积分前,曲线会替换为其包络线,即每个召回率水平及其之后能达到的最高精确率,这样细小的曲线波动就不会影响分数。COCO 评估会在召回率从 0 到 1 的范围内取 101 个点,而原始的 PASCAL VOC 基准使用 11 个点。模型无法达到的召回率水平会以零精确率计入,因此每个漏检目标都会降低 AP。

import numpy as np

# One class: 8 detections sorted by confidence (1 = matched a label, 0 = false positive)
tp = np.array([1, 1, 0, 1, 0, 1, 0, 0])
num_labels = 5  # ground-truth objects of this class in the dataset

# Precision and recall after each detection in the ranked list
tp_cum = np.cumsum(tp)
precision = tp_cum / np.arange(1, len(tp) + 1)
recall = tp_cum / num_labels

# Precision envelope: best precision at this recall or any higher recall
envelope = np.maximum.accumulate(precision[::-1])[::-1]

# COCO-style AP: average the envelope at 101 recall points (0 beyond the highest recall reached)
points = np.linspace(0, 1, 101)
idx = np.searchsorted(recall, points, side="left")
ap = np.mean([envelope[i] if i < len(envelope) else 0.0 for i in idx])
print(f"Max recall: {recall[-1]:.1f}, AP: {ap:.3f}")

脚本会打印 Max recall: 0.8, AP: 0.686。五个标注目标中有一个始终未被检测到,因此召回率轴上最后五分之一的区间不会增加面积;尽管置信度最高的两个检测结果都正确,AP 仍为 0.686。

  • 准确率用正确预测数除以所有预测数,因此需要统计真负例。对于检测器,真负例会是每个没有目标的背景图块,所以准确率对目标检测没有实际意义。
  • F1 分数在一个置信度阈值下综合精确率和召回率,描述单个工作点,例如部署模型所使用的阈值。
  • 混淆矩阵统计检测器在一个阈值下会混淆哪些类别,呈现单个 mAP 数值无法体现的细节。

mAP50、mAP75 和 mAP50-95#

由于 mAP 是对各类别求简单平均,因此稀有类别和常见类别的权重相同。IoU 阈值决定边界框必须贴合到什么程度才算正确:

  • mAP50:IoU 为 0.5 时检测结果即为正确,这是 PASCAL VOC 的规则。
  • mAP75:阈值提高到 0.75,用于严格检验定位效果。
  • mAP50-95:在 10 个阈值上取 mAP 平均值,阈值范围为 0.50 到 0.95,步长为 0.05。COCO 将这个数值简称为“AP”,不区分 AP 和 mAP,并将其作为主要挑战指标。

Ultralytics YOLO26 训练会保留验证 mAP50-95 最高的轮次对应的 best.pt,并在每次运行时通过验证报告这三个变体的结果。

from ultralytics import YOLO

# Load a pretrained YOLO26 nano detector
model = YOLO("yolo26n.pt")

# Validate on the small COCO8 dataset to compute mAP
metrics = model.val(data="coco8.yaml")

# The same detections scored at three IoU thresholds
print(f"mAP50:    {metrics.box.map50:.3f}")
print(f"mAP75:    {metrics.box.map75:.3f}")
print(f"mAP50-95: {metrics.box.map:.3f}")

IoU 阈值越宽松,算作正确的检测结果就越多,因此 mAP50 最高,mAP50-95 则低于它。COCO还会按对象大小划分 AP:小型对象的面积小于 32 × 32 像素,中型对象的面积不超过 96 × 96 像素,大型对象的面积则更大。

Explore solutions

体育领域的计算机视觉

体育领域的计算机视觉

了解 Ultralytics YOLO 如何通过球员和球追踪、表现分析、教练洞察及运动员康复,推动体育视觉技术的发展。
了解详情
航空影像计算机视觉

航空影像计算机视觉

借助 Ultralytics YOLO,将无人机和航空影像转化为实时洞察,应用于农业、水产养殖、环境监测、自然保护和地理空间分析。
了解详情
航空航天中的计算机视觉

航空航天中的计算机视觉

使用 Ultralytics YOLO 模型将视觉 AI 应用于航空监测。借助计算机视觉解决方案,赋能无人机、航空航天工作流、环境保护和地理空间行业。
了解详情
安防领域的计算机视觉

安防领域的计算机视觉

使用 Ultralytics YOLO 模型守护每个场所。视觉 AI 可用于周界监控、威胁检测、车牌识别和工作场所安全。
了解详情
机器人领域的计算机视觉

机器人领域的计算机视觉

使用 Ultralytics YOLO 模型提升智能机器的能力。机器人领域的视觉 AI 可用于自主导航、感知、目标跟踪和实时控制。
了解详情
物流中的计算机视觉

物流中的计算机视觉

借助 Ultralytics YOLO 模型优化物流流程。视觉 AI 可用于包裹检查、分拣、车辆跟踪和仓库安全实时监控。
了解详情
零售中的计算机视觉

零售中的计算机视觉

借助 Ultralytics YOLO 模型重新构想零售。视觉 AI 可用于库存跟踪、货架监控、排队管理和更深入的客户洞察。
了解详情
医疗领域的计算机视觉

医疗领域的计算机视觉

借助 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可加快医学影像处理、优化诊断并监测患者。
了解详情
制造业中的计算机视觉

制造业中的计算机视觉

利用 Ultralytics YOLO 模型优化制造流程。视觉 AI 可用于质量控制、缺陷检测、个人防护装备合规检查和装配线自动化。
了解详情
汽车领域的计算机视觉

汽车领域的计算机视觉

利用 Ultralytics YOLO 模型在汽车领域应用计算机视觉。视觉 AI 可提升道路安全、驾驶辅助和车辆自动化水平,让道路更智能。
了解详情
农业中的计算机视觉

农业中的计算机视觉

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。为作物监测、牲畜追踪和精准农业提供支持,从而提高产量并实现更智能的生产。
了解详情
体育领域的计算机视觉

体育领域的计算机视觉

了解 Ultralytics YOLO 如何通过球员和球追踪、表现分析、教练洞察及运动员康复,推动体育视觉技术的发展。
了解详情
航空影像计算机视觉

航空影像计算机视觉

借助 Ultralytics YOLO,将无人机和航空影像转化为实时洞察,应用于农业、水产养殖、环境监测、自然保护和地理空间分析。
了解详情
航空航天中的计算机视觉

航空航天中的计算机视觉

使用 Ultralytics YOLO 模型将视觉 AI 应用于航空监测。借助计算机视觉解决方案,赋能无人机、航空航天工作流、环境保护和地理空间行业。
了解详情
安防领域的计算机视觉

安防领域的计算机视觉

使用 Ultralytics YOLO 模型守护每个场所。视觉 AI 可用于周界监控、威胁检测、车牌识别和工作场所安全。
了解详情
机器人领域的计算机视觉

机器人领域的计算机视觉

使用 Ultralytics YOLO 模型提升智能机器的能力。机器人领域的视觉 AI 可用于自主导航、感知、目标跟踪和实时控制。
了解详情
物流中的计算机视觉

物流中的计算机视觉

借助 Ultralytics YOLO 模型优化物流流程。视觉 AI 可用于包裹检查、分拣、车辆跟踪和仓库安全实时监控。
了解详情
零售中的计算机视觉

零售中的计算机视觉

借助 Ultralytics YOLO 模型重新构想零售。视觉 AI 可用于库存跟踪、货架监控、排队管理和更深入的客户洞察。
了解详情
医疗领域的计算机视觉

医疗领域的计算机视觉

借助 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可加快医学影像处理、优化诊断并监测患者。
了解详情
制造业中的计算机视觉

制造业中的计算机视觉

利用 Ultralytics YOLO 模型优化制造流程。视觉 AI 可用于质量控制、缺陷检测、个人防护装备合规检查和装配线自动化。
了解详情
汽车领域的计算机视觉

汽车领域的计算机视觉

利用 Ultralytics YOLO 模型在汽车领域应用计算机视觉。视觉 AI 可提升道路安全、驾驶辅助和车辆自动化水平,让道路更智能。
了解详情
农业中的计算机视觉

农业中的计算机视觉

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。为作物监测、牲畜追踪和精准农业提供支持,从而提高产量并实现更智能的生产。
了解详情
体育领域的计算机视觉

体育领域的计算机视觉

了解 Ultralytics YOLO 如何通过球员和球追踪、表现分析、教练洞察及运动员康复,推动体育视觉技术的发展。
了解详情
航空影像计算机视觉

航空影像计算机视觉

借助 Ultralytics YOLO,将无人机和航空影像转化为实时洞察,应用于农业、水产养殖、环境监测、自然保护和地理空间分析。
了解详情
航空航天中的计算机视觉

航空航天中的计算机视觉

使用 Ultralytics YOLO 模型将视觉 AI 应用于航空监测。借助计算机视觉解决方案,赋能无人机、航空航天工作流、环境保护和地理空间行业。
了解详情
安防领域的计算机视觉

安防领域的计算机视觉

使用 Ultralytics YOLO 模型守护每个场所。视觉 AI 可用于周界监控、威胁检测、车牌识别和工作场所安全。
了解详情
机器人领域的计算机视觉

机器人领域的计算机视觉

使用 Ultralytics YOLO 模型提升智能机器的能力。机器人领域的视觉 AI 可用于自主导航、感知、目标跟踪和实时控制。
了解详情
物流中的计算机视觉

物流中的计算机视觉

借助 Ultralytics YOLO 模型优化物流流程。视觉 AI 可用于包裹检查、分拣、车辆跟踪和仓库安全实时监控。
了解详情
零售中的计算机视觉

零售中的计算机视觉

借助 Ultralytics YOLO 模型重新构想零售。视觉 AI 可用于库存跟踪、货架监控、排队管理和更深入的客户洞察。
了解详情
医疗领域的计算机视觉

医疗领域的计算机视觉

借助 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可加快医学影像处理、优化诊断并监测患者。
了解详情
制造业中的计算机视觉

制造业中的计算机视觉

利用 Ultralytics YOLO 模型优化制造流程。视觉 AI 可用于质量控制、缺陷检测、个人防护装备合规检查和装配线自动化。
了解详情
汽车领域的计算机视觉

汽车领域的计算机视觉

利用 Ultralytics YOLO 模型在汽车领域应用计算机视觉。视觉 AI 可提升道路安全、驾驶辅助和车辆自动化水平,让道路更智能。
了解详情
农业中的计算机视觉

农业中的计算机视觉

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。为作物监测、牲畜追踪和精准农业提供支持,从而提高产量并实现更智能的生产。
了解详情

让我们携手构建 AI 的未来!

开启你的旅程,迎接机器学习的未来