理解目标检测中的mAP指标(1)

本文介绍了目标检测模型评估的重要指标mAP,包括mAP的含义、为什么在目标检测中使用mAP、如何计算mAP,以及AP与IOU的概念。通过理解mAP和IOU,可以更好地评估模型在分类和定位任务上的性能。文中还提到了PASCAL VOC和COCO挑战赛中mAP的计算方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如果你已经评估过目标检测模型或者读过这个领域的相关论文,那你一定碰到“平均均值精确率”或者“mAP”这个概念。mAP被目标检测竞赛(比如PASCAL VOC,ImageNet以及COCO )当做模型性能评估的一种方式。在这篇文章中,我将介绍:

  • mAp是什么?
  • 为什么mAP在目标检测中是一种有用的度量方式
  • 对于特定的类别如何计算mAP

另外,我将提供计算mAP的代码方便读者可以在自己的项目中使用

检测模型的评估

在物体检测领域,模型评估是非常重要的,因为存在两个不同的任务需要度量:

  • 决定一个物体是否存在一副图片中(分类)
  • 决定物体在图片中的位置(定位,回归任务)

还有,在这些经典的数据集往往拥有多个类别并且类别的分布不是均匀的(比如含狗的图片比冰淇淋更多)。因此基于准确率的度量会带来偏差。同时,对错分类的风险评估也是很重要的。因此需要将一个自信度分数或者模型的分数与检测框联系在一起,在各种不同的标准的自信度下对模型的评估。

为了满足这些需求,AP(Average Precision)这个概念被引入。为了理解AP需要理解分类器的精确率与召回率。关于这些术语的的全面解释,可以查看wikipedia article。简洁的的说,精确率衡量分类器预测的所有物体中是真正物体的概率。如果模型的精准率接近1.0,表示预测到的物体有很高的可能是真实的物体。召回率衡量的是在数据集所有物体中分类器能够预测到的物体的概率。如果模型的召回率接近1.0,表示数据集中的所有物体有几乎都可以预测到。注意,精准率与召回率存在负相关,并且这两个衡量指标依赖于给定模型的分数阈值。举例来说,这张图片来自与TensorFlow物体检测API,如果我们对kite类别设置模型的分数阈值为50%,就可以获得7个正样本类别,但是如果我们设置我们的模型分数阈值为90%,就只存在4个正样本类别。

为了计算AP,对给定类别(比如人)精确率-召回率(PR)曲线可以通过调整模型的分数阈值计算模型的检测输出计算得到。PR曲线看起来是这样的:
PR曲线
计算AP的最后一个步骤取所有召回率下的精准率的平均值(说明请查看Pascal Challenge paper4.2节),AP是对PR曲线的求和,更具体来说,AP曲线可以定义为在11个等距的召回率, R e c a l l i = [ 0 , 0.1 , 0.2 , . . . , 1.0 ] Recall_i=[0,0.1,0.2,...,1.0] Recalli=[0,0.1,0.2,...,1.0],上精准率的平均值,如下公式:
A P = 1 11 ∑ R e c a l l i P r e c i s i o n ( R e c a l l i ) {AP}=\frac {1} {11}\sum_{Recall_i}{Precision(Recall_i)} AP=111RecalliPrecision(Recalli)
注意,召回率i时的精准率取超过召回率i时的最大精准率值,用公式表示如下:
P r e c i s i o n ( R e c a l l i ) = max ⁡ i < r R e c a l l r Precision(Recall_i)=\max_{i<r} {Recall_r} Precision(Recalli)=i<rmaxRecallr

到这里,我们已经仅仅讨论了分类任务。对于定位部分(预测的物体位置是否正确)我们需要考虑物体位置与模型预测的位置的重叠度。

定位与交并比(IOU)

为了评估模型的物体定位,我们首先需要决定模型预测物体位置好坏程度。通常可以通过在感兴趣的物体周围画检测框来决定,但是在一下情况下可以是多边形,甚至像素级别的分割。对于大部分情况,定位任务通常通过交并比来评估。

模型检测到物体是通过IOU阈值来决定是true还是false。每个目标检测竞赛采用的iou阈值都有所变化,比如在COCO挑战赛采用10不同的iou阈值,从0.5到0.95间隔是0.05。COCO数据集中人类别的在不同IOU阈值下的PR曲线如下图所示:
在这里插入图片描述

整合在一起

现在我们已经定义了AP并且已经看到IOU如何影响AP,mAP是通过计算所有类别的均值AP或者在不同IOU阈值下的所有类别的均值AP,计算的方式取决于竞赛,比如:

  • PASCAL VOC2007 挑战赛仅仅使用iou为0.5的阈值,因此它的mAP是在iou为0.5时20类的均值AP
  • COCO 2017挑战赛的mAP是在10个iou阈值下80类的均值AP

在10个iou阈值上进行平均而不是单单考虑iou大于0.5的情况,这有助于奖励在精确定位表现较好的模型

<think>嗯,用户问的是AD软件中换层的快捷键。首先,我需要确定AD指的是哪个软件。通常,AD可能指Altium Designer,这是一款常用的电子设计自动化软件,用于电路板设计。所以用户可能是在使用Altium Designer时想要快速切换层,提高工作效率。 接下来,我需要回忆或查找Altium Designer中关于层切换的快捷键。根据之前的知识,Altium Designer中确实有一些快捷键用于切换不同的层。比如,小键盘的数字键可能对应不同的层,例如1是Top Layer,2是Mid Layer 1,依此类推。不过,不同版本可能会有些差异,所以需要确认这一点是否正确。 另外,用户可能还不太清楚如何自定义这些快捷键,或者是否有其他方式快速换层。比如,使用快捷键L调出层设置面板,或者通过Preferences设置自定义快捷键。这可能是用户潜在的需求,想要更灵活地调整快捷键以适应自己的习惯。 还要考虑用户可能的操作环境,比如是否在使用英文版软件,或者是否有安装不同版本的Altium Designer,因为不同版本快捷键可能不同。此外,用户可能对层的概念不太熟悉,比如信号层、电源层、丝印层等,是否需要简要解释这些层的用途,以帮助用户更好地理解换层的意义。 另外,是否有其他相关功能,比如切换层的同时切换走线层,或者如何在多层板中快速跳转,这些也可能是用户需要的信息。比如在布线时按数字键切换层并自动添加过孔,这样的操作是否可行,需要确认正确性。 总结一下,回答需要包括: 1. 常用默认快捷键,如小键盘数字键对应各层。 2. 如何通过快捷键L打开层设置面板。 3. 自定义快捷键的方法。 4. 可能需要注意的版本差异或操作细节。 5. 简要说明层的类型和用途,帮助用户理解为何需要换层。 需要确保信息准确,避免错误,比如Altium Designer是否真的使用小键盘数字键作为默认切换层的快捷键。可能需要查阅官方文档或可靠来源确认。此外,提醒用户如果快捷键不起作用,可能需要检查键盘设置或软件版本,确保兼容性。 最后,组织回答时要结构清晰,分点说明,便于用户理解。如果有不确定的地方,建议用户参考软件帮助文档或官方资源,以确保信息的正确性。</think>在 Altium Designer(AD)中,**换层快捷键**是提高 PCB 设计效率的重要工具。以下是常用操作说明: --- ### 一、默认快捷键 1. **小键盘数字键** - 按下数字键 **1~6** 可快速切换至对应信号层(例如:1=Top Layer,2=Mid Layer 1,依此类推)。 - **+/- 键**:切换至下一层/上一层(需开启小键盘的 Num Lock)。 2. **信号层与平面层切换** - **Shift+Ctrl+鼠标滚轮**:按住后滚动滚轮可快速切换层(需按住快捷键)。 3. **特殊层快捷键** - **L**:打开层设置面板(快速启用/禁用层显示)。 - **Ctrl+Shift+G**:切换到丝印层(Top Overlay)。 - **Ctrl+Shift+M**:切换到阻焊层(Top Solder Mask)。 --- ### 二、自定义快捷键 1. 通过 **Preferences > PCB Editor > Shortcuts** 修改快捷键。 2. 搜索功能关键词(如 `Layer Next`、`Layer Previous`)绑定自定义按键。 --- ### 三、实用技巧 1. **布线时自动换层**: 布线过程中按下对应层数字键,软件会自动添加过孔并切换至目标层。 2. **层高亮显示**: 按 **Shift+S** 进入单层模式,按层数字键可快速高亮特定层。 --- ### 四、注意事项 - 不同版本快捷键可能略有差异,建议通过 **Help > Shortcuts** 确认当前版本设置。 - 若快捷键失效,检查键盘输入法或软件冲突。 如果需要更详细的层管理(如创建/删除层),可通过 **Design > Layer Stack Manager** 操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值