物体检测的评价指标——IOU(交并比)、FP、FN、TN、mAP(mean Average Precision)与R(召回率,Recall)、P(准确率,Precision)、P-R曲线

 

目录

1.IOU(Intersection of Union,交并比)


对于物体检测模型输出是非结构化的,事先并无法知道输出物体的数量、位置、大小等,因此物体检测的评价算法稍微复杂些。下面我将目前公用的几乎所有评价指标都进行解释说明,部分指标附上实现代码。

1.IOU(Intersection of Union,交并比)

对于具体的某个物体,我们可以从预测框与真实框的贴合程度判断检测的质量,这个指标就是IoU(Intersection of Union,交并比),用于量化两个框的贴合程度。

IoU的计算方式如下所示,使用两个边框的交集与并集 的比值,即可得到交并比。

其中,A为真实框,B为预测框,公式如下,IoU的取值区间为[0,1],IoU值越大,表明两个框重合越好。

下面为Python代码实现,也很简单:

def iou(boxA, boxB):    #(xmin, ymin, xmax, ymax)格式的框坐标
    #先确定交集框的上下左右边的值
    top_x = max(boxA[0], boxB[0])
    left_y = max(boxA[1], boxB[1])
    bottom_x = min(boxA[2], boxB[2])
    right_y= min(boxA[3], boxB[3])
    #计算交集部分的面积
    inter = (right_y - left_min) * (bottom_x - top_x)
    area_A = (boxA[2]-boxA[0]) * (boxA[3] - boxA[1])
    area_B = (boxB[2]-boxB[0]) * (boxB[3] - boxB[1])
    #计算并集的面积与交并比IOU
    union = area_A + area_B - inter
    iou = inter / union

    return iou

 可参考下图以便于理解上面的代码:

对于Iou而言,我们通常会选取一个阈值,如0.5,来确定预测框是正确还是错误的。当两个框的IoU大于0.5时,我们认为是一个有效的检测,否则属于无效的匹配。如果有两个杯子,则模型产生了两个预测框。如下图示。

由于图像中存在背景与物体两种标签,预测框也分为正确与错误,因此在评测时会产生以下4种样本。

  • 正确检测框TP(True Positive) :预测框正确地与标签框匹配了,两者间的IoU大于0.5,如图检测框①
  • 误检框FP(False Positive):将背景预测成了物体,如图中检测框②,通常这种框与所有标签框的IoU都不会超过0.5。
  • 漏检框FN(False Negative):本来需要模型检测出的物体,模型没有检测出,如图③检测框所示。
  • 正确背景TN(False Negative):本身是背景,模型也没有检测出来,这种情况在物体检测中通常不需要考虑。

 

  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值