文章目录

  • 前言
  • 一、IoU和TP、FP、TN、FN的概念
    • IoU(Intersection over Union):
    • TP、FP、TN、FN
  • 二、Precision和Recall
    • 1.Precision
    • 2.Recall
  • 三、AP(P-R曲线下的面积)
  • 四、map的计算

前言

如何评估一个训练好模型的好坏,是目标检测中一个很重要的因素,如常见的TP、FP、AP、PR、map等,这些概念很容易混淆,搞了两天才搞明白,写一篇博客总结一下,方便以后复习。


一、IoU和TP、FP、TN、FN的概念

IoU(Intersection over Union):

IoU是一种测量在特定数据集中检测相应物体准确度的一个标准。
计算公式为:


两个框交域和并域的比值就是交并比。

TP、FP、TN、FN

TP:被正确分类为正样本的数量;实际是正样本,也被模型分类为正样本
FP:被错误分类为正样本的数量;实际是负样本,但被模型分类为正样本
TN:被正确分类为负样本的数量;实际是负样本,也被模型分类为负样本
FN:被错误分类为负样本的数量;实际是正样本,但被模型分类为负样本

举个例子,比如下面这张图:

红色是预测框,绿色是真实框。
假设阈值为0.5,意思就是预测框与真实框的IoU大于等于0.5时认为检测到目标了。
TP是IoU>0.5的检测框数量(在同一真实框下只计算一次),图中的框①。
FP是IoU<=0.5的检测框数量,图中的框②。
FN是没有被检测到的框数量,图中的框③。

二、Precision和Recall

1.Precision

计算公式:

P = TP / (TP + FP)

Precision是针对预测结果而言的,含义是在预测结果中,有多少预测框预测正确了。
但是光靠一个Precision指标是有缺陷的,比如在下面这种情况中:

在预测结果中,预测正确的目标有一个,预测错误的目标有0个,所以TP=1,FP=0,则P=1,但是图中除了①,②③④⑤都没有检测出来,所以单靠一个Precision指标肯定是不行的。

2.Recall

计算公式:

R = TP / (TP + FN)
Recall是针对原样本而言的,含义是在所有真实目标中,模型预测正确目标的比例。
但是单靠Recall来判断模型预测结果好坏也不行,比如下面这种情况:


此时目标都没有漏检,TP=5,FN=0,R=1,但是检测效果并不好。因此我们需要用Precision和Recall共同来评判我们模型的好坏,也就是AP。

三、AP(P-R曲线下的面积)

这里推荐b站一位up的视频,讲的非常详细
对于以下三张猫的图片,分别对每张图片进行统计,并存入一个表格中,这个表格是按照置信度降序排序的:


此时真实框有两个,所有num_ob=2(num_ob是累加起来的),当IoU大于等于0.5时,认为检测到了目标。



此时num_ob=3,这张图片只有一个真实框,所以num_ob+=1,




最后得到左边的一张表格,先从第一个元素开始计算Precision和Recall,一次累加一个元素,直到表格中所以元素计算完成为止。


此时我们会得到右边的一张表格,按照这个表格,我们就可以绘制P-R曲线了,在绘制前需要删除一些Recall重复的数据,如图中的第五和第六个数据。


AP = (当前点的Recall值 - 上一个点的Recall值)x 当前点以及后面所有Precision值最大的点

四、map的计算

上面的0.6694就是猫所对应的AP值,采用这个方法,我们可以计算出所有类别所对应的AP值,再除以类别的个数,就得到了map。


目标检测中map的计算相关推荐

  1. 车牌检测中mAP的计算

    出于最近进行车牌检测与识别的项目需要,因此开设该博客进行相关学习的手把手记录,以便于后期的回顾. 首先附上目标检测中mAP的原文链接: http://tarangshah.com/blog/2018- ...

  2. 一文讲清楚目标检测中mAP、AP、precison、recall、accuracy、TP、FP、FN、TN

    TP.FP.FN.TN 分类中TP.FP.FN.TN含义 目标检测中TP.FP.FN.TN的含义 precision .recall .accuracy precision recall accura ...

  3. 对于目标检测中mAP@0.5的理解

    文章目录 前言 mAP@0.5 AP是Precision-Recall Curve(PRC)下面的面积!!! 理一下思路 参考 前言 一直不是很理解目标检测中的mAP是如何的,今天具体来写一下,加深一 ...

  4. 目标检测中的mAP是什么含义?

    目标检测中的mAP是什么含义? 1.mAP定义及相关概念 mAP: mean Average Precision, 即各类别AP的平均值 AP: PR曲线下面积,后文会详细讲解 PR曲线: Preci ...

  5. 目标检测中NMS和mAP指标中的的IoU阈值和置信度阈值

    有时候路走的太远,会忘了为什么要出发. 学习亦如是 在目标检测中,经常看到置信度阈值和IoU阈值这两个关键参数,且NMS计算和mAP计算中都会有这两个,那它们的区别是什么?本文就这个问题做一次总结. ...

  6. 目标检测中的Iou与map指标详细介绍(零基础)

    目标检测中的Iou与map指标详细介绍(零基础) 最近在算法岗实习,更新的频率会低一点,希望在实习过程中学到更多有用的视觉知识. IOU指标 下图中Ground truth为标记的正确框,Predic ...

  7. 目标检测中如何定义正负样本,和正负样本在学习过程中loss计算起的作用

    如何定义正负样本,和正负样本在学习过程中loss计算起的作用 正负样本定义 分类和回归head如何学习和利用划分后的正负样本(loss如何计算) 正负样本在分类中loss计算的处理 正样本在bbox ...

  8. 目标检测中准确率accuracy的计算(precision是精度、查准率)(Recall是召回率、查全率)

    准确率定义为: 查准率P和查全率R分别定义为: 查准率关心的是"预测出正例的正确率"即从正反例子中挑选出正例的问题. 查全率关心的是"预测出正例的保证性"即从正 ...

  9. 目标检测中特征融合技术(YOLO v4)(下)

    目标检测中特征融合技术(YOLO v4)(下) ASFF:自适应特征融合方式 ASFF来自论文:<Learning Spatial Fusion for Single-Shot Object D ...

最新文章

  1. 10行代码实现目标检测,请收下这份教程
  2. vue 使用font-awesome 只需两步
  3. 探测电磁波就能揪出恶意软件,网友:搁这给电脑把脉呢?
  4. Yeslab安全实验室CCNP Security PPT到货
  5. 动态视频目标检测和跟踪技术(入门)
  6. 拒绝“魏则西悲剧”, 产品经理支招,根解百度医疗“莆田系”漏洞
  7. foxmail、outlook发送邮件,进度条很慢
  8. Log4j配置文件解读和模板页收藏
  9. golang 远程传输文件
  10. 如何在SAP Spartacus的scss里引入全局变量
  11. shell编程之基础篇
  12. TensorFlow.js:零基础在小程序上实现机器学习
  13. IntelliJ IDEA 面板、菜单介绍
  14. javascript学习笔记 - 引用类型 Function
  15. python语言是 创造的_1.python简介
  16. Popclip插件:任务自动添加进 Microsoft ToDo的任务列表
  17. 屏幕中间html滚动字幕,Gom引擎屏幕中间滚动大字及屏幕其他信息滚动条脚本实例...
  18. OpenCV 调整图像亮度与对比度
  19. 华为浏览器如何进入阅读模式_华为浏览器阅读模式 | 手游网游页游攻略大全
  20. vue中的prop验证

热门文章

  1. KMP / EXKMP
  2. 抽象数据类型Triplet的表示和实现。
  3. pos、ansipos、fillchar在delphi2010中unicode的问题
  4. Incorrect datetime value: '' for column
  5. 2019测试指南-web应用程序安全测试(二)地图应用架构
  6. Codeforces Gym 102956 C. Brave Seekers of Unicorns(位运算 + dp)
  7. 1104 Sum of Number Segments
  8. 网络经济与企业管理自考学习
  9. 机器人运动学笔记3——林沛群
  10. node.js async/await 继发执行与并发执行