1. 目标检测-任务概述

分类 VS 检测

  • 分类问题:所属类别
  • 检测问题:所属类别 + 物体位置

1.1 从分类到检测算法

为图片中的某个像素点,
为其他位置,由
可构成一个矩形框。

穷举图片中所有可能的矩形框

,每个子区域当成一张图片来做分类。

3b9c5f00310b563424a5989120d9dd7b.png

候选区域:每个

所代表的矩形框,也被称为感兴趣区域(Region of Interest,
ROI)。

1.2 目标检测的核心问题

  • 如何产生候选区域,并对它们进行标注;
  • 如何提取图像特征,并将提取到的特征与候选区域的类别和位置进行关联。

1.3 目标检测算法

bc2f5d85b85850467df1a5cb8720666d.png
  • 两阶段目标检测算法:特征提取 -> 生成 Region Proposal -> 分类 + 位置调整(bounding box regression)

典型算法: Faster-RCNN, Pyramid Network

  • 单阶段目标检测算法:特征提取 -> 分类 + 位置调整(bounding box regression)

典型算法:SSD, YOLOv3,RetinaNet

2. 目标检测基础知识

边界框:正好能包含物体的矩形框,bounding box, bbox。

真实框:数据集标注中给出的目标物体对应的边界框, ground truth box, 简称 gt_box。

预测框:由模型预测出的可能包含目标物体的边界框,prediction box, 简称 pred_box。

检测任务输出:[L, P, x1, y1, x2, y2],L 是类别标签,P 是所属类别的概率。一张图片会有多个预测框。

锚框:以某种规则生成边界框,经过位置调整后成为预测框, anchors。

878b930abf71ae9424eecb2b0bccee70.png

锚框的生成可参考程序:

书亮:generate_anchors.py​zhuanlan.zhihu.com

锚框和真实框的重合程度可以用指标 IOU(Intersection of Union)来衡量。

3. 目标检测的指标

  • TP (True Positive): 正确的正样本。即检测器找出了样本区域,正确的判断。
  • FN (False Negative): 错误的负样本,即检测器把样本区域判定为背景,相当于『遗漏』。
  • TN (True Negative): 正确的负样本。即检测器把背景判定为背景,正确的判断。
  • FP (False Positive): 错误的正样本。即检测器把背景判定为样本区域,也叫『虚警』。

3.1 两个指标

  • Precision

Precision - 正确率,也即检测结果的正确率:

  • Recall

Recall - 召回率,也即样本被检测出来的概率:

3.2 如何判断检测器的好坏?

对于检测算法,每个框的输出如下:

或者

confidence 代表当前框是目标的置信度,

PR 曲线

调整

,计算不同
下检测器的 Precison 和 Recall 值,然后连接成曲线,就是 PR 曲线。

从积分的角度来看,PR 曲线下的面积就是检测器在各个

下的 AP(Average Precision)。当然,AP 越高的检测器就越好。

3.3 mAP

关于多类别检测器,考虑 mAP (mean Average Precision):

3.4 NMS

NMS(None Maximum Suppression),又名为非极大值抑制,是目标检测框架种的后处理模块,主要用于删除高度冗余的 bbox。

4. Faster-RCNN

5. YOLOv3

5.1 实现方案

7ae9a3891f08e4a54e4f42f56a443a73.png

6d302a8ba3df3e909cd72204f1c5111b.png

参考

  1. Paddle 深度学习应用公开课: https://www.bilibili.com/video/av83663267
  2. NMS: https://zhuanlan.zhihu.com/p/50126479
Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐