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. HDU - 6025 Coprime Sequence(gcd+前缀后缀)

    Do you know what is called ``Coprime Sequence''? That is a sequence consists of nnpositive integers, ...

  2. Mac安装python细节

    前言 之前在windows平台上安装python直接用Anaconda,优点是所有的科学计算的库都整合进去了,安装方便.在Mac系统下,当然也可以直接安装Anaconda,但是考虑到Mac会自带pyt ...

  3. android studio 改包名

    使用Android studio有一段时间了,但是每次修改包名的时候都是用一种简单粗暴的方式,那就是新建一个想要的包名,然后直接拖拽. 但是这样有个不好的地方就是每次都要去修改manifest.xml ...

  4. shader Category

    Category:是渲染命令的逻辑组,着色器可以多个子着色器,他们需要共同的效果 // Copyright 2014 Google Inc. All rights reserved. // // Li ...

  5. MySQL学习基础之一 — 数据库查询

    廖大神的练手神器:在线SQL: https://www.liaoxuefeng.com/wiki/1177760294764384/1179611432985088 运行MySQL等实际的数据库软件, ...

  6. 【TIDB】3、数据库的发展历史、现在、未来

    1.从单机数据库说起(Mysql.Oracle.PostgreSQL) 关系型数据库起源自1970年代,其最基本的功能有两个: 把数据存下来: 满足用户对数据的计算需求. 第一点是最基本的要求,如果一 ...

  7. 爬虫之scapy

    一 介绍 Scrapy一个开源和协作的框架,其最初是为了页面抓取 (更确切来说, 网络抓取 )所设计的,使用它可以以快速.简单.可扩展的方式从网站中提取所需的数据.但目前Scrapy的用途十分广泛,可 ...

  8. mac搭建TensorFlow环境

    1.首先安装Anaconda,下载地址:https://www.anaconda.com/download/#macos,根据需要下载所需的版本. 2.安装TensorFlow,安装命令:pip in ...

  9. [NOI2002] 贪吃的九头蛇

    考虑任意一种划给大头的方案,两端的都给了大头(bel=1)的边产生难受值,剩下n-k个果子分给m-1个头,当m-1=1时,两端都给了这个小头也产生难受值:而m-1>1的情况要好看的多,贪心的,因 ...

  10. selenium基础操作

    selenium 1.打开和关闭网页 #!/usr/bin/env python # -*- coding:utf-8 -*- from selenium import webdriver drive ...