目标检测——基础知识

交并比(IOU)

IoU (Interseeection over Union) 交并比:计算“预测边框”和“真实边框”的交集和并集的比值,用来衡量检测算法性能。
在这里插入图片描述


准确率(Precision)和召回率(Recall)

精度(Precision): 精度是精确性的度量,表示被分为正例的示例中实际为正例的比例。
Precision = TP /(TP + FP)

召回率(Recall):召回率是覆盖面的度量,度量有多少正例被分为正例。
Recall=TP/(TP + FN)
在这里插入图片描述


AP(平均精度)和mAP(平均精度均值)

AP和MAP是多标签分类任务的评价方法。假设整个数据集中共有5个苹果。我们收集了模型对苹果的所有预测,并根据预测的置信度(从最高的置信度到最低的置信度)对其进行排序。第二列表示预测是否正确。如果匹配ground truth和IoU 0.5,就是正确的。
在这里插入图片描述
当我们包含更多的预测时,召回值会增加,但精确度会上下波动。以Recall为横坐标,Precision为纵坐标,可以的得到PR曲线。
在这里插入图片描述
首先对PR曲线进行平滑,对于所有的Recall用最大精度替换当前精度。(线B是平滑前,线C是平滑后)
在这里插入图片描述
将召回值从0到1.0分成11个点,计算这11个召回值的最大精度值的平均值。

AP = (5x1 + 4x0.57 + 2x0.5)/ 11 (也可以理解为平滑后PR图线下面的面积)

mAP是所有类别的平均值,mAP = 所有类别的平均精度的和  /  所有的类别 。
在这里插入图片描述


非极大值抑制:NMS

NMS的作用是在目标检测中去掉重复的Bounding Box(BB)。
可以通过下面的图理解一下NMS:
在这里插入图片描述
NMS的整个过程:

  • 获取所有的Bounding Box(BB)的信息(也就是图中的框框),按照置信分数从高到低排序,并记录当前分数最高的框。
  • 计算当前最高分的框与其他框的IOU,然后删除所有IOU大于阈值的框。
  • 对于剩下的框,循环执行上一步的操作直到剩下符合要求的框。

代码实现:

import numpy as np
def nms(dets, thresh):
    x1 = dets[:, 0]
    y1 = dets[:, 1]
    x2 = dets[:, 2]
    y2 = dets[:, 3]
    scores = dets[:, 4]
    areas = (x2-x1+1)*(y2-y1+1)  # 计算面积
    order = scores.argsort()[::-1]  # 降序排列
    keep = []  # 保存bounding box

    while order.size > 0:
        i = order[0]
        keep.append(i)
        xx1 = np.maximum(x1[i], x1[order[1:]])  # 计算xmin的max,即overlap的xmin
        yy1 = np.maximum(y1[i], y1[order[1:]])  # 计算ymin的max,即overlap的ymin
        xx2 = np.minimum(x2[i], x2[order[1:]])  # 计算xmax的min,即overlap的xmax
        yy2 = np.minimum(y2[i], y2[order[1:]])  # 计算ymax的min,即overlap的ymax
        w = np.maximum(0.0, xx2-xx1+1)
        h = np.maximum(0.0, yy2-yy1+1)
        inter = w*h  # 计算相交部分面积
        ovr = inter / (areas[i]+areas[order[1:]] - inter)  # 计算IOU
        inds = np.where(ovr <= thresh)[0]
        order = order[inds+1]
    return keep

Soft NMS

如下图所示,当两个目标重叠的时候,NMS然仍然会删除一个框,图中绿色的框会被删除。

Soft NMS通过权重下降重新调整置信度,如果一个检测框和另一个检测框有大部分重叠(IOU大),那它会有很低的分数。如果只是小部分重叠那么原有的分数不会受太大的改变。
在这里插入图片描述


Sliding-window(滑动窗口)

用于目标检测的一种蛮力方法是从左向右滑动窗口,从上向下滑动窗口使用分类来识别对象。 为了在不同的观察距离处检测不同的对象类型,使用大小和纵横比不同的窗口。
在这里插入图片描述


Select Search(选择搜索)

采用经典的滑动窗口+图像缩放的方案解决通用目标检测问题的成本太高。
在选择性搜索(SS)中,我们从每个单独的像素作为自己的组开始。 接下来,我们为每个组计算纹理并将两个最接近的纹理组合在一起。 我们将继续合并区域,直到所有内容组合在一起。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值