一、目标检测概述及相关概念

1、目标检测概述

目标检测=目标类别分类+目标坐标回归
即目标检测任务是在图像分类的基础上,加上目标的坐标回归,使得原本的单纯分类任务变成一张图片里多个目标的分类与定位任务。
示意如下图:(引自Datawhale动手学CV-Python)

目标检测FPS怎么得到的 目标检测wbf_深度学习

2、目标检测思路及分类

思路:确立多个候选框->对候选框进行分类与微调

目标检测FPS怎么得到的 目标检测wbf_深度学习_02


分类:

基于深度学习的目标检测方法按照结构可分为one-stage与two-stage,即基于回归的目标检测方法与基于区域的目标检测方法,具体如下图:

目标检测FPS怎么得到的 目标检测wbf_深度学习_03


按照是否使用Anchor可分为Anchor-Based与Anchor-Free。Anchor-Based方法使用Anchor提取候选目标框,在特征图上每一个点对Anchor进行分类与回归;Anchor-Free方法不使用预先设定的anchor,通常使用预测目标的中心或角点,完成目标检测,具体分类如下:

目标检测FPS怎么得到的 目标检测wbf_目标检测_04

3、目标检测相关基本概念

3.1、目标框定义方式

bounding box的格式通常有两种:1、(x1, y1, x2, y2)

2、(c_x, c_y, w, h)

目标检测FPS怎么得到的 目标检测wbf_目标检测_05

3.2、交并比(IoU,Intersection over Union)

即两个bbox交集比上并集

目标检测FPS怎么得到的 目标检测wbf_深度学习_06


计算流程:`

  1. 首先获取两个框的坐标,红框坐标: 左上(red_x1, red_y1), 右下(red_x2, red_y2),绿框坐标: 左上(green_x1, green_y1),右下(green_x2, green_y2)
  2. 计算两个框左上点的坐标最大值:(max(red_x1, green_x1), max(red_y1, green_y1)), 和右下点坐标最小值:(min(red_x2, green_x2), min(red_y2, green_y2))
  3. 计算红绿框的面积:red_area 和 green_area
  4. iou = yellow_area / (red_area + green_area - yellow_area)
3.3、锚框(anchor)

人为设定的不同长宽比、面积的先验框;在单阶段SSD目标检测算法中也称Prior box

3.4、非极大值抑制(NMS,Non-Maximum Suppression)

用来抑制冗余的框,具体如下图(引自百度paddlepaddle目标检测课程):

目标检测FPS怎么得到的 目标检测wbf_深度学习_07

3.5、其他一些概念

ROI:Region of Interest 特定感兴趣区域

Region Proposal 候选区域/框

RPN:Region Proposal Network Anchor-based的两阶段方法提取候选框的网络

目标检测FPS怎么得到的 目标检测wbf_计算机视觉_08


P-R曲线:以Precision、Recall为纵、横坐标的曲线

AP(Average Precision):某一类P-R曲线下的面积

mAP(mean Average Precision):所有类别AP平均值