SSD是Single Shot MultiBox Detector的缩写,速度比Faster RCNN更快,mAP优于YOLO v1,SSD为单阶段目标检测算法,所谓单阶段目标检测指的是同时进行分类与定位,一气呵成,目前使用比较火爆的目标检测网络有
Yolo v1,v2 ,v3,SSD,Faster-rcnn的目标检测,以及各种模型的改造版本,今天主要介绍SSD网络与DSSD网络的检测原理,以及DSSD网络是如何对SSD进行改进
以下是SSD网络模型的结构图
SSD的结构特点我们可以看到,其主干网络backbone使用的是VGG16网络结构,但是目标检测与分类网络并不相同,SSD网络结构在VGG16上进行了网路结构的改进,在VGG16的第5层进行了卷积层的更改,且将最后的两个全连接层改为卷积层,最后对各个卷积层进行回归与预测,进行检测,其中低层feature map用来进行小目标的检测,高层feature map 用来进行大目标的检测。
SSD的特点:
SSD的loss函数;
SSD的损失函数:SSD包含三部分的loss:前景分类的loss、背景分类的loss、位置回归的loss,具体的计算方式涉及交并比IOU,感兴趣的可以自己了解一下。
针对SSD的对小目标检测的缺陷,改进出来了DSSD的目标检测算法,以下是DSSD的网络结构:
DSSD网络在SSD网络上增加了反卷积模块:
图像经过卷积层后的输出维度如下,卷积核为k*k*1的尺寸,步长为s,输入图像大小为W*H*D,padding=p
其中对分数计算部分进行向下取整,反卷积简单来说,就是公式的反转,将卷积操作进行反向运算
因此在原来的网络上进行反卷积运算进行特征的提取与回归,当卷积运算最深地方时候,小目标的信息被过滤掉了,因此对小目标的检测效果不好,在其最深的底层进行反卷积运算,同时进行目标的检测与锚框的回归预测,同时进行IOU的限定,进行物体的检测。最终增强对小目标检测的鲁棒性。
AI学习的道路上,一起进步~