DSSD DSOD FSSD RSSD

# SSD算法缺陷

1)存在重复框的问题;

2)对小目标检测不够鲁棒(因为浅层feature map的表征能力不够强)

因此,针对以上问题,对传统SSD算法进行了扩展和优化;优化主要从两部分下手,一个是从主干网络,比如将传统的VGG16换成ResNet、DenseNet、MobileNet等;另一个则是从预测网络着手,寻找更好的特征表征方式来提高模型性能,比如通过反卷积引入上下文信息,丰富不同feature map层之间的关系连接等。

下面我们来介绍四种比较典型的优化算法:

#DSSD算法

##简介

该算法于2017年CVPR上发表,依然是SSD的作者提出,算法的主要改进在两个地方:1)将主干网络改成ResNet;2)在预测网络中引入反卷积(Deconv),加入上下文特征信息,从而使得模型性能有了较大的提升;
简单来说,DSSD = ResNet + Deconv;

##原理

上图中可以看到,在6个尺度的feature map层都做了很大的改动,除了1x1的feature map层,其他5个层都分别引入了上一层通过反卷积得到的特征,然后将这个反卷积得到的特征与原始特征进行求和,作为相应预测层的输入,从而对后续prior box的提取,box框的类别以及位置的预测工作提供了很好的表征特征。
##性能

通过改进之后,DSSD的性能有了明显的提升,mAP提高到了85-89点多。

#DSOD算法

##简介

DSOD算法于2017年ECCV提出的一个改进算法,它是在原始SSD框架的基础上结合DenseNet得到的,DSOD算法可以从零开始训练数据,不需要预训练模型,而且可以和fine-tune的模型媲美;

关于预训练模型,它的***好处***是1)开源模型多,可以直接用于模型迁移,2)而且需要的训练数据也相对较少,能够快速的得到训练模型,当然***缺点***也有很多,1)模型比较大,参数多,模型结构灵活性差,难以改变网络结构,计算量大,限制应用场合;2)分类和检测模型的损失函数和类别分布不一样,优化空间存在差异;3)尽管微调可以减少不同目标类别分布的差异性,但是差异太大时,微调效果不明显;

正是因为这些缺点,文章作者才突发奇想,认为是否可以不需要预训练,就能够得到完美的检测模型,所以DSOD的主要核心思想,就是如何从零开始训练一个好的目标检测网络,或者说是否能够从零开始训练一个目标检测网络,如果可以的话,训练这样的一个网络有什么规律或原则可以去遵守。

简单来说,DSOD = SSD + DenseNet;

##原理

设计原则:
1.基于候选区域提取的方法无法从零开始训练,结果不收敛,只有基于proposal的方法才可以从零训练(关于这个结论是作者文中提到的(当然不一定对,哈哈),至于原因作者猜测是ROI Pooling的作用);
2.denseNet中通过更多的skip connection来实现信号的传递;
3.增加dense blocks的数量;
4.对Stem Block层进行了优化,采用3个3x3的卷积层和1个2x2的最大池化层;
5.6个尺度的feature map作为预测层的输入,在进行融合;

##性能

相对于SSD算法提升明显,但效果比DSSD逊色了很多;

#FSSD算法

##简介

FSSD算法借鉴了FPN的思想,改进了主干网络,然后将feature map较小的层进行调整重构了一组金字塔feature map,从而使得算法的精度有了明显的提升,但速度仍然在线;

##原理

可以看到,它将那些feature map较小的层通过上采样得到同一尺寸的feature,然后concat起来,以此作为base feature,生成金字塔feature map,最后再把这些特征进行融合,作为预测层的输入,这样一来既融入了上下文特征,又实现了多尺度。
##性能

效果相较SSD有提升,但不明显,性能弱于DSSD和DSOD;

#RSSD算法

##简介

通过rainbow connection的方式(Pooling + deconvolution)融合不同层的特征,不仅增加feature map层之间的连接,也增加feature map层的数量,从而提高了后续的预测和回归的输入特征;

RSSD算法解决了传统SSD算法的两大缺点:重复框和小物体的问题;

##原理

可以看到,每一层的feature map数量有很多,其中有原始通过Pooling下采样得到的,还有通过反卷积得到的,然后一起融合,所以上图我们看到非常厚的feature map;

##性能

算法性能确实有所提升,但是缺憾是速度下降了;

SSD系列算法扩展与优化相关推荐

  1. 目标检测—SSD系列算法原理介绍

    一.SSD系列算法原理介绍 1.1 SSD算法介绍: ➢Single Shot MultiBox Detector (one-stage方法)                  ●Wei Liu在EC ...

  2. 计算机视觉目标检测算法总结4——其他SSD系列算法

    RSSD算法 rainbow concatenation方式(pooling加deconvolution)融合不同层的特征,在增加不同层之间feature map关系的同时也增加了不同层的featur ...

  3. SSD系列算法原理讲解----(1)SSD系列算法介绍(主干网络、多尺度Feature Map预测)(笔记)

    SSD系列算法原理介绍 SSD算法介绍: Single Shot MultiBox Detector(One-stage方法) - Wei Liu在ECCV 2016提出 - 直接回归目标类别和位置 ...

  4. 谱聚类算法(Spectral Clustering)优化与扩展

    谱聚类算法(Spectral Clustering)优化与扩展 谱聚类(Spectral Clustering, SC)在前面的博文中已经详述,是一种基于图论的聚类方法,简单形象且理论基础充分,在社交 ...

  5. 【百度飞浆】RCNN系列算法优化策略与案例

    RCNN系列算法优化策略与案例 目录 1 两阶段检测进阶模型介绍 2 两阶段检测进阶模型优化策略 3 工业应用:铝压铸件质检 目录 1 两阶段检测进阶模型介绍 2 两阶段检测进阶模型优化策略 3 工业 ...

  6. 智能算法系列之粒子群优化算法

      本博客封面由ChatGPT + DALL·E 2共同创作而成. 文章目录 前言 1. 算法思想 2. 细节梳理 2.1 超参数的选择 2.2 一些trick 3. 算法实现 3.1 问题场景 3. ...

  7. ## ***电池SOC仿真系列-基于扩展卡尔曼(EKF)算法的SOC估计(内含代码等资料)***

    ## ***电池SOC仿真系列-基于扩展卡尔曼(EKF)算法的SOC估计(内含代码等资料)*** ## 1 研究背景 电池的荷电状态(SOC)代表的是电池当前的剩余容量,数值定义是电池剩余电量与电池额 ...

  8. SSD系列、Retinanet、Efficientdet、RCNN系列知识点整理

    接着前面的YOLO系列继续做一些简单的关键点整理,便于博主快速回忆起来. 1.SSD(2016) https://arxiv.org/pdf/1512.02325.pdf 类似前面整理YOLO系列,先 ...

  9. 目标检测 YOLO系列算法

    文章目录 1. YOLO算法 1.1 Yolo算法思想 1.2 Yolo的网络结构 1.2.1 网络输入 1.2.2 网络输出 1.7X7网格 2x30维向量 1.3 Yolo模型的训练 1.3.1训 ...

最新文章

  1. 现行技术体系的问题总结
  2. 黄聪:DEDECMS联动调用时提示“你设定了字段为联动类型,但系统中没找到与你定义的字段名相同的联动组名!”...
  3. xp mysql字符集与乱码_解决MYSQL中文乱码问题三种方法
  4. 我国将于今年春季发射空间站核心舱 空间站进入全面实施阶段
  5. hibernate.hbm2ddl.auto配置及意义
  6. “穿透”与“征兆”:长篇小说《环形女人》(一)
  7. 都江堰很美-佩服古人_Crmhf的一天
  8. css改变谷歌浏览器的滚动条样式
  9. python 机器学习——从感知机算法到各种最优化方法的应用(python)
  10. 光声光谱技术和激光、红外技术的优劣势对比
  11. mysql 超级管理员权限_取得超级管理员权限
  12. Android实现手机和电脑屏幕共享
  13. vue常见面试题(附带答案) 超实用!!建议收藏!!
  14. 开学季,如何申请免费学生云服务器
  15. java微信获取素材列表_微信公众号开发之获取素材列表并保存
  16. 大型网站图片服务器架构的演进
  17. 试述HDFS中的名称节点和数据节点的具体功能
  18. linux 清除bios 密码吗,如何设置/清除 BIOS 硬盘密码
  19. 随机池化(Stochastic Pooling)
  20. Spring4实战读书笔记

热门文章

  1. 听我瞎说--路指人仙
  2. QT读取EXCEL表格日期格式问题解决
  3. 玩转树莓派——支持PS3手柄
  4. 微服务架构设计模式 读书笔记一
  5. 申请HTTPS需要哪些条件?如何申请?
  6. POJ 1509 Glass Beads
  7. 【Java网络编程】获得实验室局域网中所有开机主机名称和IP地址,InetAddress类,在java中如何获取IP地址的方法
  8. 如何在线观看或直播2018年奥运会(无电缆)
  9. anychat java_AnyChat的视频会议程序实例详解
  10. 【微信小程序】制作个人信息页面