two-stage与one-stage目标检测算法概览

25 篇文章 0 订阅
7 篇文章 3 订阅

two-stage检测算法

1、特点

1)主干网络为CNN,提取卷积特征;
2)最早由rgb提出,典型代表为R-CNN;
3)是一种端到端的目标检测算法(基于RPN网络);
4)准确度高,速度相对one-stage慢;

2、检测流程

在这里插入图片描述
简单来说,就是首先产生候选区域,然后提取CNN特征,再进行区域分类和位置精修。

3、常见算法

代表算法有:R-CNN,Fast R-CNN,Faster R-CNN,以及各种变体。

这里,我截了一张图,可以很清晰的看到它的各种变体算法:

在这里插入图片描述

4、核心组件

核心组件就是主干网络CNN,加RPN网络,关于CNN网络要遵循以下几个原则:

1)尽量去繁从简;
2)多尺度特征融合;
3)模型尽量轻量化;

再来说下RPN网络吧。

在这里插入图片描述
1)区域推荐

采用anchor机制,看下图;
在这里插入图片描述
以每个feature map的每一个像素为中心(叫做锚点),按照不同比例提取候选区域,以Fast R-CNN为例,会采用9个不同的尺度,所以最后会提取到wxhx9个候选区域;
然后利用GT来对这些候选区域进行筛选,得到正样本和负样本,这里要注意GT和候选区域的size;
具体的后面博客更新会专门讲到,今天只是概览。

2)ROI Pooling

ROI Pooling属于RPN网络的一个layer,它的输入有3部分,分别为:feature map、ROIs(1x5x1x1,这里的5指的是x,y,w,h,idx,idx索引是为了将x,y,w,h指定的ROI信息映射到feature map,因为可能会有多个ROI映射到同一个feature map)、ROI参数(缩放尺度参数等);输出则是固定尺寸的feature map;

总结的说,ROI Pooling的作用其实就是完成了抠图加resize的操作。

3)分类和回归

这部分不再介绍;

5、two-stage的改进方向

1)寻求更好的网络特征;
2)寻求更好的RPN网络;
3)更完善的ROI分类;
4)样本后处理;
5)更大的mini-batch

one-stage检测算法

1、特点

1)使用CNN卷积作为特征提取;
2)无需region proposal,直接回归目标物体的类别概率和位置坐标;
3)准确度低,但速度快;

2、常见算法

1)YOLO V1、YOLO V2、YOLO V3
2)SSD及变体
3)RetinaNet等

4、核心组件

one-stage检测算法的核心组件是CNN主干网络+回归网络;
不再细说,前面讲过SSD的原理,可以参考;

one-stage和two-stage算法对比

one-stage的优缺点:
优点:速度快、能够学到物体的泛化特征、避免背景错误产生false positive;
缺点:准确度低、对小目标检测效果不佳;

two-stage的优缺点:
优点:准确度高、anchor机制、共享计算量;
缺点:速度慢、训练时间长;

总结:一般来说,在终端产品会选择one-stage,云端会偏向选择two-stage。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值