基础知识/领域常识
大约 2 分钟
本文主要介绍目标检测中的基本概念以及公用的一些知识点。
基本概念
目标检测中,模型一般有哪几种类型?
- one-stage
- 单阶段任务,以YOLO系列为主
- 核心优势:速度非常快,适合做实时检测任务
- two-stage
- 两阶段任务,以RCNN系列为主
- 核心优势:准确率高,适合做离线或实时性要求不高的任务
目标检测中的有哪些指标概念?
二分类指标
TP/TN/FP/FN
:这块完全与二分类任务相同。 需要注意的是:目标检测是基于置信度阈值来计算,例如分别计算 0.9; 0.8; 0.7
mAP
(平均精度):在不同的置信度阈值中,绘画出Precision(y)
和Recall(x)
的曲线图, 并计算出(y取最大值)的面积Recall
:Precision
:
IOU
:
什么是NMS非极大值抑制?
非极大值抑制(Non-maximum supression)简称NMS,其作用是去除冗余的检测框,去冗余手段是剔除与极大值重叠较多的检测框结果。
思路
核心思想是搜索目标局部范围内的边界框置信度最大的这个最优值,去除目标邻域内的冗余边界框。
具体步骤
一般NMS后处理算法需要经历以下步骤(不含背景类,背景类无需NMS):
- 先将所有的边界框按照类别进行区分;
- 把每个类别中的边界框,按照置信度从高到低进行降序排列;
- 选择某类别所有边界框中置信度最高的边界框
bbox1
, 然后从该类别的所有边界框列表中将该置信度最高的边界框bbox1
移除并同时添加到输出列表中; - 依次计算该
bbox1
和该类别边界框列表中剩余的bbox
计算IOU; - 将IOU与NMS预设阈值
Thre
进行比较,若某bbox
与bbox1
的IOU大于Thre
, 即视为bbox1
的“邻域”,则在该类别边界框列表中移除该bbox
,即去除冗余边界框; - 重复
3~5
,直至该类别的所有边界框列表为空,此时即为完成了一个物体类别的遍历; - 重复
2~6
,依次完成所有物体类别的NMS后处理过程; - 输出列表即为想要输出的检测框,NMS流程结束。