目标检测介绍

目标检测

目标检测任务是什么

image-20220620182452332

相比分类,目标检测还要确定物体在图像中的位置(多任务的学习)

目标检测经典工作/算法

anchor-based 基于锚框的

Anchor-free 没有锚框的

two-stage 模型 VS one-stage 模型

目标检测任务可细分为两个子任务:

  • 定位(确定物体的位置)
  • 分类()

R-CNN系列

R-CNN Regions with CNN features
image-20220622175553246

Selective search

用来在图片上抽取多个候选框的算法,如图第二步 操作。

Bounding-box regression

用来减少定位错误的,在图中第四步中进行回归。

粗略的过程:

候选框 \(P\),有四个值 \(x,y,w,h\),目标框\(G\),同样也有这些值;

\(\widehat{G}\) = \(W*P\) ,学习参数\(W\),让\(\widehat{G}\) 近似\(G\)

Fast R-CNN
image-20220623103048357

训练过程

  1. 把图片和 候选框(region proposals) 送进CNN
  2. CNN处理得出特征图(feature map)
  3. 将每个候选框的位置映射到特征图上,获得候选框对应的特征图,对这个特征图进行分类和定位

RoI pooling layer

RoI: region of interest

由于候选框大小不一,所以对应的特征图大小不一,用这个pooling layer来统一下尺寸。

Multi-task loss

\(L(p, u, tu, v) = Lcls(p, u) + λ[u ≥ 1]Lloc(tu, v)\)

分类loss + 定位loss

Does multi-task training help?

image-20220623172948495

第一列的数据是模型没有bounding box regressors,第二列数据是模型是在train的时候有,在test的时候没有。

结论:多任务训练对结果有益

Faster R-CNN(没有Fastest R-CNN了)
image-20220624172545335

Region Proposal Networks

主要提出了选择候选框的网络,叫region proposal networks (RPN)

Mask R-CNN
image-20220624174539472

在Faster R-CNN上继续扩展,可以同时做三件事:

  1. 分类
  2. 给出bounding box
  3. 实例分割(在像素上区分不同的物体)

相比Faster R-CNN,多了一个分支用来实例分割,并且提出了一个RoIAlign来代替RoI pooling。

Yolo 系列

Yolo v1 开山之作1

image-20220703161818081

一个end-to-end的卷积网络,直接得出bounding box和每个框的物体的分类

具体做的事:

输入图像分成\(S*S\) 个格子,每个格子预测\(B\)个框,每个框有5个值:x,y,w,h,confidence;共有\(C\)个类别,所以每个格子会预测\(C\)个概率值对应每个类别。

输出为上图的最后一个全连接层,为\(7*7*30\),分解下就是:\(7*7*(20+2*5)\) ,7对应\(S\),20对应\(C\)类别数,2对应\(B\); 这样就得出一张图所有格子的输出值;

image-20220703163719371

这样就是把分类问题变为了回归问题2

坐标Loss:

image-20220703165841656

这里直接使用的是x,y,w,h计算,不同于r-cnn系列。

SSD(不是固态硬盘)

DETR

Deformable DETR

其他

FPN: Feature Pyramid Networks 特征金字塔网络

FPN主要解决的是物体检测中的多尺度问题,通过简单的网络连接改变,在基本不增加原有模型计算量情况下,大幅度提升了小物体检测的性能。

image-20220626165446263

图d就是网络架构

先从底到上,用CNN提取特征图,然后再从上到下,融合左侧到特征图和上一层上采样的结果作为新的特征图。

先验的结论:

  • 深层网络输出的图像分辨率低,学的更多是语义特征
  • 浅层网络输出的图像分辨率高,学的更多是细节特征

常用的开源库

detectron2

参考

知乎 目标检测入门

b站 DETR 论文精读

b站 目标检测算法

R-CNN paper

Fast R-CNN paper

Faster R-CNN paper

Faster R-CNN 解读

Faster R-CNN超详细解读

多尺度目标检测简介--FPN

Deformable DETR 解读


  1. Yolo v1 解读↩︎

  2. 分类问题 VS 回归问题↩︎