Fast-Rcnn学习笔记

Fast-RCNN总览



step1:图片先放进卷积层
step2:再卷积层的特征图谱上回映射出对应的感兴趣区域
step3:集过一层ROI Pooling(后面介绍)
step4:每一个ROI变成一维的向量送入两个全连接层
step5:在最后的全连接层再分别将向量送入到分类框/回归框

Fast-RCNN与SPPNet的比较

  • Fast-Rcnn在SPPNet上再进行改进
  • SPP-net上的不足之处
    1. 训练比较慢(25h),需要许多磁盘空间
    2. 再训练时不能更新SPP层下的参数
  • Fast R-CNN有点
    1. 测试是更快
    2. 一步训练
    3. 更高的map
  • Fast R-CNN的ROI跟sPPNet类似但是又不太一样
    • Fast R-CNN是用固定大小的H*W的框(H,W是需要设置的超参数)
    • 假设从特征图谱出来的特征图大小为(hw),则每一个小格的大小为(h/Hw/W)
    • 然后从每个小的格子中max-pooling,在每个特征图的通道中最大池化都是独立的

在测试时和训练时的过程

  • 测试时

  • 训练时

关于在分类器和回归器中的详解

在分类器

  • 说明
step1:这里包括N+1个类别(包括1个背景类)
step2:对这一个类别使用softmax进行打分(总和为1)
step3:从这N+1中选择一个分最大的,则该ROI属于的类别为该类

在回归器

  • 说明
step1:每一个类别对应4个参数(后面介绍dx,dy,dw,dh这四个参数)
step2:同理选出属于该类的dx,dy,dw,dh
  • 详解边界框回归器

  • 说明
step1:绿色的G是Ground Truth,黄色框P是预选框,红色框是最终预测的边界框
step2:dx(P) = (Gx-px)/Pw。同理可以求得dy(p),dw(p),dh(p)
step3:将求得的带入上面的公式中即可求得最终的预测框

关于Fast-RCnn中的Multi-task loss

分类损失

  • 因为是属于分类任务,所以使用Cross Entropy loss
  • 关于Cross Entropy

  • 本文对应的是多分类任务
step1:假设真实标签的one-hot编码是:[0,0,...,1,...,0]
step2:预测的softmax概率为[0.1,0.3,...,0.4,...,0.1]
step3:那么Loss=-log(0.4)

边界框回归损失

  • 说明
针对[u>=1]艾弗森括号:如果是背景类别则该项为0,即:背景不用边界框回归
  • 总上所述:fast-rcnn除了没用将selective search融为一体,将Feature extraction,classification,bounding-box regression都融为一体了
  • 后面提出的Faster-RCNN将解决这一问题

Fast-Rcnn学习笔记的更多相关文章

  1. R-CNN学习笔记

    R-CNN学习笔记 step1:总览 步骤: 输入图片 先挑选大约2000个感兴趣区域(ROI)使用select search方法:[在输入的图像中寻找blobby regions(可能相同纹理,颜色 ...

  2. Fast RCNN 学习

    因为项目需要,之前没有接触过深度学习的东西,现在需要学习Fast RCNN这个方法. 一步步来,先跟着做,然后再学习理论 Fast RCNN 训练自己数据集 (1编译配置) Fast RCNN 训练自 ...

  3. 【CV论文阅读】 Fast RCNN + SGD笔记

    Fast RCNN的结构: 先从这幅图解释FAST RCNN的结构.首先,FAST RCNN的输入是包含两部分,image以及region proposal(在论文中叫做region of inter ...

  4. Faster RCNN学习笔记

    感谢知乎大神的分享 https://zhuanlan.zhihu.com/p/31426458 Ross B. Girshick在2016年提出了新的Faster RCNN,在结构上,Faster R ...

  5. Fast R-CNN学习总结

    Fast R-CNN是R-CNN的改良版,同时也吸取了SPP-net中的方法.在此做一下总结. 论文中讲到在训练阶段,训练一个深度目标检测网络(VGG16),训练速度要比R-CNN快9倍左右,比SPP ...

  6. Faster RCNN 学习笔记

    下面的介绍都是基于VGG16 的Faster RCNN网络,各网络的差异在于Conv layers层提取特征时有细微差异,至于后续的RPN层.Pooling层及全连接的分类和目标定位基本相同. 一). ...

  7. Mask RCNN 学习笔记

    下面会介绍基于ResNet50的Mask RCNN网络,其中会涉及到RPN.FPN.ROIAlign以及分类.回归使用的损失函数等 介绍时所采用的MaskRCNN源码(python版本)来源于GitH ...

  8. 目标检测(三)Fast R-CNN

    作者:Ross Girshick 该论文提出的目标检测算法Fast Region-based Convolutional Network(Fast R-CNN)能够single-stage训练,并且可 ...

  9. 深度学习论文笔记:Fast R-CNN

    知识点 mAP:detection quality. Abstract 本文提出一种基于快速区域的卷积网络方法(快速R-CNN)用于对象检测. 快速R-CNN采用多项创新技术来提高训练和测试速度,同时 ...

  10. 标题 发布状态 评论数 阅读数 操作 操作 CNN目标检测系列算法发展脉络简析——学习笔记(三):Fast R-CNN

    最近两周忙着上网课.投简历,博客没什么时间写,姑且把之前做的笔记放上来把... 下面是我之前看论文时记的笔记,之间copy上来了,内容是Fast R-CNN的,以后如果抽不出时间写博客,就放笔记上来( ...

随机推荐

  1. CSRF浅析

    概念 CSRF,Cross Site Request Forgery,跨站请求伪造. 为什么跨站的请求需要伪造? 因为浏览器实现了同源策略,这里可以将站和源视为同一个概念. 同源策略 The same ...

  2. ES6-11学习笔记--扩展运算符与rest参数

    1.符号都是使用:... 2.扩展运算符:把数组或者类数组展开成用逗号隔开的值 3.rest参数:把逗号隔开的值组合成一个数组   扩展运算符: function foo(a, b, c) { con ...

  3. [ Linux ] 设置服务器开机自启端口

    https://www.cnblogs.com/yeungchie/ 需要用到的工具: crontab iptables crontab.set SHELL=/bin/bash PATH=/sbin: ...

  4. SpringMVC的数据响应-回写数据

    1.直接返回字符串 其他具体代码请访问chilianjie @RequestMapping("/report5") public String save5(HttpServletR ...

  5. Codeforces Round #719 (Div. 3) C. Not Adjacent Matrix

    地址 Problem - C - Codeforces 题意 每个格子,该格子和相邻的格子的值不能相同 题解 思维题, 先从1~n输出奇数,再输出偶数 代码 #include <iostream ...

  6. 2021.08.05 P5357 康托展开模板(康托展开)

    2021.08.05 P5357 康托展开模板(康托展开) P5367 [模板]康托展开 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 重点: 1.康托展开 算法学习笔记(56): ...

  7. RecyclerView + SQLite 简易备忘录-----中(1)

    在上一节讲完了登录界面的内容,现在随着Activity的跳转,来到MainActivity. 1.主界面activity_main.xml 由上图,activity_main.xml的内容很简单. 首 ...

  8. python基础练习题(题目 有序列表插入元素)

    day26 --------------------------------------------------------------- 实例039:有序列表插入元素 题目 有一个已经排好序的数组. ...

  9. CSS一个较为完整的页面布局_可以根据页面屏幕大小调整布局

    1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="U ...

  10. MySQL数据库常识之储存引擎

    我的博客 储存引擎分类 show engines; 这个命令可以查看数据库的数据引擎,可以看到InnoDB是默认的引擎. 命令除了在终端运行,也可以在查询数据库可视化工具中运行. 而,(我是5.7版本 ...