目标检测:YOLO和SSD简介
常用的目标检测框架可以分为两类。一种是两阶段/两次触发方法,其特征在于将感兴趣区域的检测和分类分开。比较有代表性的有R-CNN,FAST R-CNN,Fast R-CNN。另一种是一阶段/一次法,用一个网络同时检测和分类感兴趣区域,以YOLO(v1,v2,v3)和SSD为代表。
两阶段的出现比较早,因为它需要把感兴趣区域的检测和分类分开。虽然准确率比较高,但是实时性比较差,不适合自动驾驶、无人车感知等应用场景。所以这次我们主要介绍SSD和YOLO系列框架。
SSD和2016是W. Liu等人在《SSD:单次多盒探测器》一文中提出的。虽然它比YOLO(v1)同年提出的时间稍晚,但它更快、更精确。
SSD的框架在一个基本的CNN网络上增加了一些附加的结构(作者使用VGG-16,但也可以用其他网络代替),使网络具有以下特点:
多尺度特征图检测
作者在VGG-16后面添加了一些特征层,这些层的大小逐渐减小,让我们可以在不同的尺度上进行预测。特征图越深越小,可以预测的物体越大。
卷积网络预测
与YOLO的全连通层不同,对于每个用于预测的通道特征图,SSD分类器都使用卷积进行预测,其中每个单元中放置的先验帧数就是预测类别数。
集合超越盒
对于特征图上的每个单元,我们放置一系列先前的框。然后,对于对应于特征图上每个细胞的每个先前帧,我们预测先前帧的维度偏移和每个类别的置信度。例如,对于一个新的特征映射,如果每个特征映射对应于一个先前的框,并且要预测的类别被分类,则输出大小为。(体现在培训过程中)
其中,如果用前一帧的中心位置和宽高来表示预测帧的中心位置和宽高,则实际预测的维度偏移量分别为:
下图是SSD的一帧。先用一个VGG-16卷积前五层,然后级联一系列卷积层,其中六层分别卷积(或者最后一层的平均池化)进行预测,得到一个的输出,再通过最大抑制(NMS)得到最终结果。
图中有四个用于网络检测的特征图,大小分别是、、、和;这些特征图的每个单元对应有、、、和预置的先验框,所以网络* * *预测一个边界框,输出维数(最大抑制前)为。
待续
参考:
chenxp2311的CSDN博客:论文阅读:SSD:单次多盒探测器。
小江之虎专栏:目标检测|SSD原理与实现
LittleYii的CSDN博客:目标探测论文阅读:YOLOv1-YOLOv3 (1)
作者的其他相关文章:
图像分割:全卷积神经网络(FCN)详解
PointNet:基于深度学习的3D点云分类分割模型详解
基于视觉的机器人室内定位