Cascade R-CNN的一些记录

《Cascade R-CNN: Delving into High Quality Object Detection》CVPR2018的一篇文章

论文链接:https://arxiv.org/abs/1712.00726 
代码链接:https://github.com/zhaoweicai/cascade-rcnn

参考链接:https://blog.csdn.net/qq_21949357/article/details/80046867

本文主要针对的是目标检测问题中的IoU阈值选取问题,众所周知,阈值选取越大就越容易得到高质量的样本,但是一味选取高的阈值会引发两个问题:

  • 样本减少引发的过拟合
  • 在train和inference使用不一样的阈值很容易导致mismatch。(只有输入的region proposal自身的IOU值和训练器训练用的设定IOU阈值较为接近的时候,训练器输出的IOU值才会高即性能才好)

为了解决上述两个问题就提出了一种基于Faster-RCNN的muti-stage的architecture,核心就是利用不断提高的阈值,在保证正例样本数不减少的情况下训练出高质量的检测器

Abstract

  1. 在目标检测中需要一个IOU值来区分样本的正负样例,检测器使用较低的IOU值训练时会产生噪声监测,但是使用的IOU阈值变大时会造成检测效果下降,这主要由两个原因造成,IOU值变大时正例样本指数级消失导致过拟合和在train和inference使用不一样的阈值很容易导致mismatch。
  2. 级联RCNN包括一系列IOU逐渐增大的检测器,并且是一步一步训练,上一个检测器的输出作为下一个检测器的输入,因为对一个检测器来说输出的IOU值会比输入的IOU更高。

1 Introduction

  1. 目标检测两个主要问题:识别分类问题,从背景中识别前景物体并正确分类;定位问题,给不同的目标准确的边界框。
  2. 级联R-CNN的来源:一个检测器只能在一个质量水平(quality level)上表现的很好,这是从代价敏感学习中得出的:ROC曲线不同点的优化需要不同的损失函数,不同的是论文中是优化IOU阈值而不是假阳率。
  3. 从图中看出,如果提供高质量(高IOU)的输入则检测器也有较好的效果,但是随着输入数据的IOU的持续升高,检测器效果会下降(因为过拟合),
  4. 级联R-CNN可以用任意的两步阶段结构的R-CNN建立。

2 Related Work

RetinaNet解决密集物体检测,前景和背景极端不平衡问题,并取得了比两步的目标检测更好的效果。

3、Object Detection

基于Faster-RCNN,第一步proposal subnetwork(RPN网络)生成候选框H0,第二步是ROI池化层H1,将不同大小候选框在特征图上的映射patch,把映射的patch采样成固定大小的特征,和SPP类似,但只是用一个尺度(一个patch不论大小就划分为4个部分)进行划分。分类器是C,边界框是B

3.1 Bounding box regression

边界框b=(bx,by,bw,bh),边界框回归f(x,b)的作用是从候选边界框中选出目标边界框,边界框的损失函数在faster-RCNN中是L1损失函数,并通常用均值和方差正则化处理。在FatserRCNN中一个单独的边界框回归器f不能解决精确定位的问题,所以使用Bbox,但是Bbox中IOU的值固定(单一阈值即使用的是完全相同的级联结构),所以IOU的值不一定一直是最优的,并且边界框的分布随每次迭代变化很大。

(C0的结果是anchor中有目标或者没有目标)

3.2 Classification

分类器的函数是h(x),h(x)是后验概率的M+1维估计,hk(x) = p(y = k|x),通过最小化交叉熵损失来学习,

3.3 Detection Quality

如果IOU的值大于给定阈值,则认为这个patch是这个类中的一个。

当给定的IOU阈值大时,正例中包含很少的背景,但是正例数量会很少;当小时,容易产生接近但不正确的判断(假阳率高)。解决方法:传统最容易想到的是使用分类器的集成,如图c,Iterative Loss实际上没有级联结构,从c图可以看出来,它只是使用了不同的阈值来进行分类,然后融合他们的结果进行分类推理,并没有同时进行BBox reg,因此没有解决 不同数量的正例数应对应不同的损失 的问题。

4、Cascade R-CNN

与Bbox不同的是,级联RCnn通过重采样改变了不同阶段的输入假设分布,并且通过重采样保证了每个阶段有足够固定数量的正例样本数。这就实现了没有过拟合和更深层的训练阶段可以有更高的IOU阈值.

  • cascaded regression通过调整阈值的方式重采样,不断改变候选框region proposal的分布,而且cascaded重采样后的每个检测器,都对重采样后的样本proposals是最优的,没有mismatch问题。
  • cascaded在train和inference时都会使用,因此并没有偏差问题。

    其实像我这样的入门者有很多不懂之处,欢迎指正。

Cascade R-CNN的一些记录相关推荐

  1. CNN实操记录(goal:一日一更新)

    导师说:"最快的学习方式是看别人的博客,然后实操.你需要实操." 开始进行CNN实操记录!尽量一日一更新,依照忙的程度进行略微调整,看能坚持多久!争取在下个月汇报前做出点东西. - ...

  2. Faster R CNN

    Faster R CNN 3 FASTER R-CNN 我们的Faster R CNN 由两个模块组成,第一个模块是 proposes regions 的全卷积网络,第二个是使用 proposed r ...

  3. R语言数据处理学习记录--使用linkET包完成mental test

    R语言数据处理学习记录–使用linkET包完成mental test 注:本文仅作为自己的学习记录以备复习查阅 一 简单介绍一下 这个包依旧是来自于GitHub上,作者给出的介绍:linkET的目标是 ...

  4. cascade down_Cascaded CNN 方法寻找人脸关键点

    Cascaded CNN 方法寻找人脸关键点 论文笔记 阅读论文 第一阶段阅读论文,大约两天大体阅读完论文 Deep Convolutional Network Cascade for Facial ...

  5. R语言基础学习记录4:重要函数

    时间: 2018-07-18(学习) 2018-07-22(学习记录) 教程:慕课网 <R语言基础> 讲师:Angelayuan 补充内容: R语言常用函数总结大全.gl()函数 学习内容 ...

  6. R 语言学习过程全记录 ~

    RStudio介绍超详细的教程:https://www.jianshu.com/p/132919ca2ca9 前辈的心得:https://blog.csdn.net/kMD8d5R/article/d ...

  7. R qtl package 使用记录

    1.  qtl安装了很多次,提示R版本不符合:重启了R,安装成功 2. 画出的图如下,更详细的linkage map 图需要借助其它软件 ######################## instal ...

  8. R语言报错记录The following objects are masked from ‘package:stats’:decompose, spectrum

    报错记录

  9. 2021年小目标检测最新研究综述 很全面值得收藏

    摘要 小目标检测长期以来是计算机视觉中的一个难点和研究热点.在深度学习的驱动下,小目标检测已取得了重大突破,并成功应用于国防安全.智能交通和工业自动化等领域.为了进一步促进小目标检测的发展,本文对小目 ...

  10. 【今日CV 计算机视觉论文速览 第149期】Tue, 30 Jul 2019

    今日CS.CV 计算机视觉论文速览 Tue, 30 Jul 2019 Totally 77 papers ?上期速览✈更多精彩请移步主页 Interesting: ?MaskGAN人脸属性操作的新方法 ...

最新文章

  1. Eclipse搭建android环境及Genymotion模拟器安装问题解决方法
  2. 替换Webbrowser默认的弹出菜单
  3. Jquery跳出each循环
  4. 三种常见单片机时钟电路方案,对比其优缺点
  5. Eric Evans说DDD还未结束
  6. 设计模式是用来弥补面向对象编程缺陷的方法总结
  7. POJ-3061 尺取
  8. 计算机二级ps教程 百度云,全国计算机等级考试一级Photoshop模拟题及解析第六套(完整版).pdf...
  9. 腾讯游戏健康系统继续推进:1月新增16款手游接入
  10. 朴素贝叶斯-垃圾邮件(中文的)处理
  11. python入门代码-python基础知识和练习代码
  12. Ferris教程学习笔记:js示例2.11 图片列表:鼠标移入/移出改变图片透明度
  13. DDR2 DDR3 PCBlayout规则
  14. 为什么现在不看好 CV 方向了呢?
  15. 宝塔 域名指向ip 反向代理
  16. 超实用的Mac风扇控制系统:Macs Fan Control Pro mac中文版
  17. error: OpenCV(4.4.0) C:\Users\appveyor\AppData\Local\Temp\1\pip-req-build-h4wtvo23\opencv\
  18. 软件测试 | 期末复习——软件测试综述
  19. 为什么算法这么难???
  20. 预告 ARC 重写:iOS 实现的 json 数据源的 O-R Mapping

热门文章

  1. 什么是MyCat?为什么要用到MyCat呢?
  2. windows下怎么安装protobuf for python
  3. Redis 实践笔记
  4. ASMSupport教程4.2
  5. 分享一下cookies操作(增、删、改、查)小经验
  6. 请问一个表的update能同时触发两个触发器吗?
  7. csdn开发者报告中学习到的新知识
  8. unity2019,打包APK时的gradle错误问题
  9. sqlite3 命令行简易教程
  10. day22 Pythonpython 本文json模块