Region-Based Convolutional Networks for Accurate Object Detection and Segmentation

概括

这是一篇2016年的目标检测的文章,也是一篇比较经典的目标检测的文章。作者介绍到,现在表现最好的方法非常的复杂,而本文的方法,简单又容易理解,并且不需要大量的训练集。

文章的大致脉络如图。

产生region proposal

文章提到了滑窗的方法,由于滑窗的方法缺点非常明显,就是每次只能检测一个aspect ratio,所以确定object的框的大小很难确定,而且很笨重。而文章中采用的是selective search算法得到region proposal,这个算法是作者对比了多种方法后采取的方法。在实验的时候,作者描述可以用selective search得到大概2000个region proposal。

得到CNN features

这里作者是采用了训练好的网络来提取特征。首先在大训练集上使用使用CNN训练一个用于识别的网络,然后拿这个网络进行微调。具体的做法是,将softmax之前的fc层的输出变为要识别的类别数+1,1是背景,然后再在具体的训练集上进行小数据训练。最终要取的feature是每个region都丢进CNN,然后取softmax之前的fc层是输出值作为feature,这里要注意,输入网络的region的长宽都必须warp到CNN需要的长宽才能进行输入。

此外,作者还提到了 Visualizing Learned Features ,作者直接将某一层的特征视作分类,直接执行activation,得到activation之后的值按照从大到小排序,选取最大的几个,进行非最大抑制,显示得分最高的几个。作者称为“speak for itself”,这种方法可以直接可视化CNN中经过学习之后的内容。如作者可视化了TorontoNet的pool5 层,pool5的feature map是6✖6✖256=9216维的,而每个pool5层又代表原输入图像227✖227pixel的195✖195 pixel的部分,因此可以用来检查某一层是否学的正确。

下图是CNN对COV2007训练集进行微调后训练的pool5的激活后排名前16 的图像。这些层的选择是为了展示网络学习代表性的样本。

丢进SVM训练

从上面我们得到了CNN提取的feature,我们要做的是把这些feature丢进SVM进行训练,这里有多少个类就有多少个分类器负责某一类别的分类。

Bounding-Box Regression

上面训练完了,我们就知道那个region里的东西属于哪个类别,但是我们还需要用Bounding Box把这个类别的object给框起来,所以就需要Bounding-Box Regression.文章采用的是简单的线性回归模型来预测Bounding Box.抱歉公式不会打。只能粘贴论文原文。简单来说就是给定x,y,w,h预测对应的ground truth的x,y,w,h。然后就得到了bounding box。


链接:论文原文

[论文理解]Region-Based Convolutional Networks for Accurate Object Detection and Segmentation的更多相关文章

  1. [论文理解] Acquisition of Localization Confidence for Accurate Object Detection

    Acquisition of Localization Confidence for Accurate Object Detection Intro 目标检测领域的问题有很多,本文的作者捕捉到了这样一 ...

  2. 论文笔记:Rich feature hierarchies for accurate object detection and semantic segmentation

    在上计算机视觉这门课的时候,老师曾经留过一个作业:识别一张 A4 纸上的手写数字.按照传统的做法,这种手写体或者验证码识别的项目,都是按照定位+分割+识别的套路.但凡上网搜一下,就能找到一堆识别的教程 ...

  3. [论文理解] Learning Efficient Convolutional Networks through Network Slimming

    Learning Efficient Convolutional Networks through Network Slimming 简介 这是我看的第一篇模型压缩方面的论文,应该也算比较出名的一篇吧 ...

  4. 目标检测论文解读1——Rich feature hierarchies for accurate object detection and semantic segmentation

    背景 在2012 Imagenet LSVRC比赛中,Alexnet以15.3%的top-5 错误率轻松拔得头筹(第二名top-5错误率为26.2%).由此,ConvNet的潜力受到广泛认可,一炮而红 ...

  5. [论文理解] An Analysis of Scale Invariance in Object Detection – SNIP

    An Analysis of Scale Invariance in Object Detection – SNIP 简介 小目标问题一直是目标检测领域一个比较难解决的问题,因为小目标提供的信息比较少 ...

  6. 深度学习论文翻译解析(八):Rich feature hierarchies for accurate object detection and semantic segmentation

    论文标题:Rich feature hierarchies for accurate object detection and semantic segmentation 标题翻译:丰富的特征层次结构 ...

  7. VGGNet论文翻译-Very Deep Convolutional Networks for Large-Scale Image Recognition

    Very Deep Convolutional Networks for Large-Scale Image Recognition Karen Simonyan[‡] & Andrew Zi ...

  8. 目标检测论文阅读:Deformable Convolutional Networks

    https://blog.csdn.net/qq_21949357/article/details/80538255 这篇论文其实读起来还是比较难懂的,主要是细节部分很需要推敲,尤其是deformab ...

  9. 图像处理论文详解 | Deformable Convolutional Networks | CVPR | 2017

    文章转自同一作者的微信公众号:[机器学习炼丹术] 论文名称:"Deformable Convolutional Networks" 论文链接:https://arxiv.org/a ...

随机推荐

  1. Gym - 100851A Adjustment Office(O(1)求行列和)

    Adjustment Office Gym - 100851A 2       3       4 3       4       5 4       5       6 n<=10^6,q&l ...

  2. 使用的SQLServer版本不支持数据类型“datetime2“

    快速解决方法: 原因,在使用ado.net entity的时候,entity使用的数据库是sqlserver 2008, 但后来实际使用中使用的数据库是sqlserver 2005, 操作DateTi ...

  3. 卸载/安装ubuntu系统教程

    卸载ubuntu 1.修复Mbr 1.下载软件MbrFix,地址:https://www.softpedia.com/get/System/Hard-Disk-Utils/MBRFix.shtml 2 ...

  4. css需要注意的地方

    如果一个元素设置了postion:abslute;top:20;botoom:20因为设置了top又设置了botoom所以元素会有高度.

  5. Git 深度学习填坑之旅三(分支branch、远程操作)

    0x01 分支branch依旧借用大表哥(@表元素)的图 很多时候,我们需要建立另一条分支来进行项目的独立开发,当完成后再跟主流回合进行合并这个时候就要启用分支branch功能 git branch ...

  6. sublime安装与使用

    整理sublime的安装和使用的步骤,以及一些常用插件的安装.配置.使用.免得每次换环境都需要重新上网查找一堆资料. 前言目前使用的版本是sublime text3.选择sublime的理由 subl ...

  7. hdu1166-敌兵布阵-分块

    把区间分成√n份降低复杂度. #include<bits/stdc++.h> #define inf 0x3f3f3f3f ; ; using namespace std; int t,n ...

  8. NET Everywhere

    NET Everywhere 8月份已经发布了.NET Core 2.0, 大会Keynote 一开始花了大量的篇幅回顾.NET Core 2.0的发布,社区的参与度已经非常高.大会的主题是.NET ...

  9. MapReduce基本流程与设计思想初步

    1.MapReduce是什么? MapReduce是一种编程模型,用于大规模数据集的并行运算.它借用了函数式的编程概念,是Google发明的一种数据处理模型. 主要思想为:Map(映射)和Reduce ...

  10. MCS-51单片机的定时器/计数器概念

    一.MCS-51单片机的定时器/计数器概念 单片机中,脉冲计数与时间之间的关系十分密切,每输入一个脉冲,计数器的值就会自动累加1,而花费的时间恰好是1微秒;只要相邻两个计数脉冲之间的时间间隔相等,则计 ...