基于深度学习的目标检测算法对比分析(RCNN、SPP、YOLO、SSD、FPN、RetinaNet)

目录

(1) RCNN与SPP的比较

(2) RCNN → Fast RCNN → Faster RCNN

(3) YOLO与RCNN类方法比较

(4) YOLO与SSD的比较

(5) YOLO v1 → YOLO v2 → YOLO v3

(6) FPN、RetinaNet、Mask R-CNN、YOLOv3

FPN(2017_CVPR)

RetinaNet(2017_ICCV)

Mask R-CNN(2017_ICCV)

YOLOv3


(1) RCNN与SPP的比较

  • SPP-net提出了SPP层(空间金字塔池化层,Spatial Pyramid Pooling),使得输入的候选框可大可小,解决了R-CNN区域候选时crop/warp(裁剪和放缩)带来的偏差问题

    • 卷积网络对尺寸并没有要求,固定尺寸的要求完全来源于全连接层部分,借助空间金字塔池化的方法来衔接两者(卷积层和全连接层)

    • 如:3种池化视图,分别是{4∗4,2∗2,1∗1},最后不管候选框大小如何,输出的特征数都一样

  • 但其他方面依然和R-CNN一样,因而依然存在不少问题,这就有了后面的Fast R-CNN

(2) RCNN → Fast RCNN → Faster RCNN

  • RCNN:区域候选(选择性搜索)、特征提取(卷积网络)、分类(SVM)、位置精修(回归方法)

        位置回归:学习目标框相对于真实框的平移参数和缩放参数

       (1) 先得到候选区域,再对每个候选区域提取特征 (与传统方法相比,用选择性搜索而非滑动窗的穷举法)

        缺点:重复计算(几千个候选区域存在重叠)、训练的空间和时间代价很高、慢

    • 1. 训练分多个阶段

    • 2. 每个proposal都要计算convNet特征,并保存在硬盘上。

  • Fast R-CNN:区域候选(选择性搜索)、特征提取+分类+位置精修(神经网络)

    • 先得到整幅特征图,在对候选区域进行处理,减少重复计算 (候选区域仍由之前的方法得到,故速度还是很慢)

    • 把多个任务的损失函数写到一起,分类与位置精修同时执行(用统一的全连接层),节省了时间,并与特征提取一起融合到一个网络里面,无需像RCNN那样中间存储特征供后续SVM使用,节省空间

    • 用到了SPP的思想(ROI pooling层),无需像R-CNN那样对ROI区域放缩,可以一定程度上提升准确率

  • Faster R-CNN:区域候选+特征提取+分类+位置精修(神经网络)

    • 提出了RPN(区域候选网络),代替选择性搜索生成候选区域,将四个步骤融合到一个网络里面

      • 这里生成的候选区域即滑动窗口的卷积实现,虽然候选区域算一种穷举,但是是并行生成的,而非传统方法中的串行进行,且共享了特征提取时的很多计算,故速度还是有很大提升。通过共享卷积,RPN在测试时的速度约为10ms,相比于selective search的秒级简直可以忽略不计。

      • RPN的作用:RPN在卷积层后增加滑动窗口操作以及两个卷积层完成区域候选功能,第一个卷积层将特征图每个滑窗位置编码成一个特征向量,第二个卷积层对应每个滑窗位置输出k个区域得分和k个回归后的区域候选,并对得分区域进行非极大值抑制后输出得分Top-N【文中为300】区域,告诉检测网络应该注意哪些区域

    • 提出了anchor box的概念,有参考,学习更准确

      • 一个滑动窗对应多个anchor box(原文用了三种尺度,

  • 9
    点赞
  • 72
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值