Faster RCNN系列算法原理讲解(笔记)

  • Faster RCNN介绍:

  • 给定图片中精确定位物体位置,预测物体类别

  • 尺度变化、视觉变化、姿态变化、场景不确定、多个类别

  • RCNN->SPPNet->Fast-RCNN->Faster-RCNN升级
    它的检测方法流程与传统方法类似:
    Faster RCNN系列算法原理讲解(笔记)_第1张图片
    候选框选取可采用滑动窗口策略或选择性搜索策略。

  • RCNN网络

  • RBG 2014年提出

  • 深度特征
    Faster RCNN系列算法原理讲解(笔记)_第2张图片
    RBG首次将卷积神经网用在了深度学习目标检测算法中。利用卷积神经网代替了原先的颜色、纹理这样的低层次的视觉特征。因为RCNN并没有对整个传统目标检测的框架进行改进 ,因此RCNN依然存在传统目标检测存在的问题。例如:检测速度效率低下。

  • RCNN介绍

  • 步骤一:训练分类网络AlexNet

  • 步骤二:模型左fine-tuning
    + 类别1000改为20
    + 去掉FC

  • 步骤三:特征提取
    + 提取候选框(选择性搜索)
    + 对弈每一个区域:修正区域为CNN的输入,利用网络对候选框提取到特征

  • 步骤四:训练SVM分类器:每个类别对应一个SVM

  • 步骤五:回归器精修候选框位置:利用线性回归模型判定框的准确度
    解释:
    提取候选框(选择性搜索)

  • step0:生成区域集R(区域分割)

  • step1:计算区域集R里每个相邻区域的相似度S={s1,s2…}

  • step2:找出相似度最高的两个区域,将其合并为新集,添加进R

  • step3:从S中移除所有与step2中有关的子集

  • step4:计算新集与所有子集的相似度

  • step5:跳至step2,直至S为空
    Faster RCNN系列算法原理讲解(笔记)_第3张图片

  • RCNN缺点:

    • 候选框选择算法耗时严重
    • 重叠区域特征重复计算
    • 分步骤进行,过程繁琐
  • SPPNet介绍:

  • Spatial Pyramid Pooling
  • 空间金字塔池化
    • CNN不同尺度输入
    • 仅对原图提取一次卷积特征
      Faster RCNN系列算法原理讲解(笔记)_第4张图片
      Image:这里的输入图像可以理解为候选区域。
      Crop/warp:对候选区域进行抠图,然后将图片resize到固定的尺寸。
      因为有了这两个操作,所以候选区域可能出现扭曲。因此将固定尺寸的图片输入到卷积神经网中,尽心特征提取,最终在FC层得到输出的特征向量。因为采用同一个卷积神经网,因此保证输入的尺寸必须一致。这里将候选区域的提取放在了图像输入的下一步,不同的候选区域会分别采用一次卷积来完成特征提取的过程,就意味着会有计算量的重复,也是RCNN网络存在的问题。所以做了优化(上图最下边),引入spp层(右上图)对于不同尺寸提取不同维度的特征,它会将每一个卷积层的输出固定的通过SPP层得到一个21维特征,这个21维是针对每个feature map而言的,也就是对每一个通道(channel),具体维数21 * c,就是通过SPP层得到固定的输出,然后再通过FC层计算。
      那具体是如何根据这样一个区域来得到一个值呢,实际上可以采用pooling操作来完成。有各种pooling算子。
  • Fast RNN介绍
  • 结合SPPNet改进RCNN
    • ROI Pooling:单层SPPNet
  • 多任务网络同时解决分类和位置回归
    • 共享卷积特征
  • 为Faster RCNN的提出打下基础,提供了可能
    Faster RCNN系列算法原理讲解(笔记)_第5张图片
  • ROI Pooling:
    • pooling层的一种
    • 为了proposal抠出来的过程,然后resize到统一的大小
    • 操作如下:
      (1)根据输入的image,将Roi映射到feature mao对应的位置
      (2)将映射后的区域划分为相同大小的sections(sections数量和输出的维度相同)
      (3)对每个section进行max pooling操作
      Faster RCNN系列算法原理讲解(笔记)_第6张图片
      • Fast RNN网络缺点:
        • 存在瓶颈:选择性搜索,找出所有的候选框十分耗时
        • 那么能不能找出一个更加高效的方法来求出这些候选框呢
          • Region Proposal Network(RPN)网络
      • Faster RNN网络
        • Region Proposal Network(RPN)
        • 端到端的检测
          Faster RCNN系列算法原理讲解(笔记)_第7张图片
      • Faster RNN网络结构
      • 主干网络:13con+13relu+4pooling
      • RPN:3 × 3 + 背景前景区分 + 初步定位
      • ROI Pooing
      • 分类 + 位置精确定位
        Faster RCNN系列算法原理讲解(笔记)_第8张图片
  • RPN网络
  • Anchor
  • 前景背景分类 + 框位置的回归
    • 粗定位
    • 粗分类
      Faster RCNN系列算法原理讲解(笔记)_第9张图片
      图解:
      RPN网络中,通常会使用滑动窗口(通常是3 × 3),卷积后会的到一个固定长度的向量,接下来分别用两个FC层对类别和位置进行分类和回归,这里的Anchor是指对于每一个滑动窗口,它的中心点都会作为一个Anchor,再针对这个Anchor来分别同原始的图像找到不同尺寸的窗口,认为不同尺寸的窗口经过poling之后就能映射到这样一个3 × 3的区域上,也就是通过Anchor找到原始图像。
  • RPN网络
  • Anchor
  • 三个面积尺寸(128,256,512)
  • 在每个面积尺寸下,取三种不同长宽比(1:1,1:2,2:1)
    proposal个数:9 ×w ×hFaster RCNN系列算法原理讲解(笔记)_第10张图片
  • Faster RCNN介绍
  • Ross B.Girshick大神在2016年提出
  • 目标检测任务
    • 给定图片中精确定位物体位置,预测物体的类别
    • 尺度变化、视觉变化、姿态变化、场景不确定、多个类别
    • RCNN ->SppNET -> Fast-RCNN->Faster-RCNN升级
  • Cascade RCNN
  • 只有proposal自身的阈值和训练器训练用的阈值较为接近的时候,训练器的性能才最好
    Faster RCNN系列算法原理讲解(笔记)_第11张图片
    Faster RCNN系列算法原理讲解(笔记)_第12张图片
    Faster RCNN系列算法原理讲解(笔记)_第13张图片
    Faster RCNN系列算法原理讲解(笔记)_第14张图片

你可能感兴趣的:(论文笔记,深度学习,Faster,RCNN系列)