目标检测中的AP计算

本文详细介绍了目标检测中AP(average precision)的计算过程,包括TP, FP, TN, FN, precision, recall和IOU等概念,以及如何绘制P-R曲线和计算AP值。通过实例解释了如何判断bounding boxes的真伪,并给出了AP计算的Python代码。" 114030616,10538811,Java实现:创建简单留言板功能,"['Java', 'Web开发', '数据库', 'Servlet']
摘要由CSDN通过智能技术生成

目标检测中的AP计算

最近在学习目标检测,对模型评价指标AP的计算过程有点疑问,经过查找资料、问师兄,最终算是有了一个相对明确的了解,特此记录一下,方便以后查看,不足之处还请大家批评指正!
AP(average precision)是目标检测论文中广泛使用的模型评价指标,VOC的AP计算方法在2010年的时候发生过一次更改,现在常用的是2010年之后更改的AP计算方法,该计算方法相比于之前也更为合理,本文的AP计算也是2010年之后的计算方法。官方的定义如下:
()在这里插入图片描述
(图片源自博客https://blog.csdn.net/hsqyc/article/details/81702437

AP计算涉及到一些其他的知识,如TP,FP,TN,FN,precision,recall,IOU等等,下面进行简单介绍:

TP,FP,TN,FN,precision,recall

TP:真正例 true positive
FP:假正例 false positive
TN:真负例 true negative
FN:假负例 false negative
precision:准确率
recall:召回率
这几个名词的介绍我觉得这篇博客(https://blog.csdn.net/qq_41994006/article/details/81051150)里的一张图说的很清晰,这里直接摘下来了(略懒。。。)
在这里插入图片描述

IOU

IOU(交并比)就是两个bounding box的交集与并集之比,这里再摘一张图。。。(源自博客https://blog.csdn.net/hsqyc/article/details/81702437

在这里插入图片描述
具体实现的python代码如下:

def box_iou(b1,b2):
    '''b1,b2均为[x1,y1,x2,y2]'''
    x1_1,y1_1,x2_1,y2_1=b1
    x1_2,y1_2,x2_2,y2_2=b2
    
    x1=max(x1_1,x1_2)
    y1=max(y1_1,y1_2)
    x2=min(x2_1,x2_2)
    y2=min(y2_1,y2_2)
    
    if x2-x1+1<=0 or y2-y1+1<=0:
        return 0
    else:
        inter=(x2-x1+1)*( y2-y1+
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值