http://blog.csdn.net/charwing/article/details/27180421

Selective Search for Object Recognition

是J.R.R. Uijlings发表在2012 IJCV上的一篇文章。主要介绍了选择性搜索(Selective Search)的方法。选择性搜索综合了蛮力搜索(exhaustive search)和分割(segmentation)的方法。选择性搜索意在找出可能的目标位置来进行物体的识别。与传统的单一策略相比,选择性搜索提供了多种策略,并且与蛮力搜索相比,大幅度降低搜索空间,让我们可以用到更好的识别算法。

现实中,很多图像是包含多类别,多层次的信息的,如上图。所以我们要用到多层分割的方法,并且要用多种分割策略。

(一)选择性搜索(selectivesearch)

1.      分层分组:区域包含的信息比像素多,所以我们的特征是基于区域的。为了得到一些小的初始化的区域,用的是[13]中区域划分的方法。

[13]具体看http://blog.sciencenet.cn/blog-261330-722530.html

然后我们的分层分组算法如下:

我们首先用[13]得到一些初始化的区域R={r1,….rn}

计算出每个相邻区域的相似性s(ri,rj)

1.      找出相似性最大的区域max(S)={ri,rj}

2.      合并rt=ri∪rj

3.      从S集合中,移走所有与ri,rj相关的数据

4.      计算新集合rt与所有与它相邻区域的相似性s(rt,r*)

5.      R=R∪rt

直到S集合为空,重复1~5。

2.      各种分割策略

关于s(ri,rj)的计算,我们有多种方法,但要注意的是这些相似性特征应该是可以传递的。如当我们合并ri和rj成rt时,rt的特征可以由ri和rj直接计算,而不需要根据他们每个像素点的值进行重新计算。

(1)      多种颜色模型(color model):文章共比较了8种颜色模型

(2)      相似性准则的补充(complementary similarity measure)

共介绍了四种准则,每一种都是可以快速计算的。

Scolor(ri,rj)用于计算ri,rj的相似性。对每个区域,我们都可以得到一个一维的颜色分布直方图。直方图一共有25个区间,区域i的颜色分布直方图为

如果有3个颜色通道,则n=75。还要用L1 norm来进行归一化。

当i和j合并成t,区域t的颜色分布直方图可以用下面式子进行计算:

t 的size用下面式子计算:

Stexture(ri,rj)我们可以用到SIFT(局部特征描述子)

SIFT介绍见:http://www.cnblogs.com/saintbird/archive/2008/08/20/1271943.html

我们取8个方向,方差为1的高斯滤波器,10个空间的直方图来描述。

如果有3个颜色通道,n=240=8*3*10,同理得到区域i的纹理直方图要用L1norm归一化。

同理,纹理的传递性也可以用(2)式解决。

Ssize (ri,rj)鼓励小的区域尽早合并。

size(im)表示整个图片的像素数目。

Sfill (ri,rj)鼓励有相交或者有包含关系的区域先合并。

BBij指包含i,j区域的最小外包区域。

在这篇文章中,我们用到如下计算相似性:

3.      初始化区域

用[13]得到的初始化区域可以根据阈值k得到不同的结果。

(二)用选择性搜索进行识别(object recognition using selective search)

1.  训练数据的产生

在训练数据上,标注出目标区域,如上图中绿色高亮区域的奶牛,将这些标注区域作为正样本。使用selective search产生目标假设区域(也就是若干个分割区域)。将分割区域的外接矩形和目标标注区域的重叠度在20%~50%之间的区域标注为负样本。我们规定负样本之间不能有超过70%的重叠。

有了正样本和负样本之后,我们用的特征提取方法是:

color-SIFT descriptors[32]+a finer spatialpyramid division[18]

然后进行SVM训练。

2.   迭代训练

采用迭代训练方式,在每次训练完成之后,挑选出false positives样本,并将其加入到训练样本中,其实这便是增加了困难样本数。使用其进行模型训练,直到收敛(精度不在产生变化)。

(三)评价(evaluation)

文章给出了一些判断标准。

ABO(Average Best Overlap)

G应该是物体所在的目标区域。L是selective search算法算出的候选区域。找出Selective Search算法中与该类目标区域覆盖最多的区域。覆盖率由(8)式计算。然后再除以该类的数目。

MABO(Mean Average Best Overlap)就是计算每一类的ABO值,再求均值。

之后的实验都是基于这两个评判标准的,详细结果看论文。

本文提到的Reference:

[13] P. F. Felzenszwalb and D. P.Huttenlocher. Efficient Graph-Based Image Segmentation. IJCV, 59:167–181, 2004.

[18] S. Lazebnik, C. Schmid, and J. Ponce.Beyond bags of features: Spatial pyramid matching for recognizing natural scenecategories. In CVPR, 2006.

[32] K. E. A. van de Sande, T. Gevers, andC. G. M. Snoek. Evaluating color descriptors for object and scenerecognition.TPAMI, 32:1582–1596, 2010.

 
代码下载地址:http://pan.baidu.com/s/1sjOLbat

Selective Search for Object Recognition的更多相关文章

  1. Notes on 'Selective Search For Object Recognition'

    UijlingsIJCV2013, Selective Search For Object Recognition code 算法思想 利用分割算法将图片细分成很多region, 或超像素. 在这个基 ...

  2. 论文笔记:Selective Search for Object Recognition

    与 Selective Search 初次见面是在著名的物体检测论文 「Rich feature hierarchies for accurate object detection and seman ...

  3. 目标检测--Selective Search for Object Recognition(IJCV, 2013)

    Selective Search for Object Recognition 作者: J. R. R. Uijlings, K. E. A. van de Sande, T. Gevers, A. ...

  4. 机器学习:Selective Search for Object Recognition

    今天介绍 IJCV 2013 年的一篇文章,Selective Search for Object Recognition,这个是后面著名的DL架构 R-CNN 的基础,后续介绍 R-CNN 的时候, ...

  5. [论文理解]Selective Search for Object Recognition

    Selective Search for Object Recognition 简介 Selective Search是现在目标检测里面非常常用的方法,rcnn.frcnn等就是通过selective ...

  6. 【计算机视觉】Selective Search for Object Recognition论文阅读3

    Selective Search for Object Recoginition surgewong@gmail.com http://blog.csdn.net/surgewong       在前 ...

  7. 【计算机视觉】Selective Search for Object Recognition论文阅读2

    Selective Search for Object Recognition 是J.R.R. Uijlings发表在2012 IJCV上的一篇文章.主要介绍了选择性搜索(Selective Sear ...

  8. 【计算机视觉】Selective Search for Object Recognition论文阅读1

    Selective Search for Object Recognition 作者: J. R. R. Uijlings, K. E. A. van de Sande, T. Gevers, A. ...

  9. Selective Search for Object Recognition 论文笔记【图片目标分割】

    这篇笔记,仅仅是对选择性算法介绍一下原理性知识,不对公式进行推倒. 前言: 这篇论文介绍的是,如果快速的找到的可能是物体目标的区域,不像使用传统的滑动窗口来暴力进行区域识别.这里是使用算法从多个维度对 ...

随机推荐

  1. 基于Mininet测量路径的损耗率

    基于Mininet测量路径的损耗率 控制器采用POX,基于OVS仿真 Mininet脚本 创建Node mininet.node Node 创建链路连接 mininet.link TCLink 设置i ...

  2. Hibernate查询的六种方式

        Hibernate查询的六种方式 分别是HQL查询,对象化查询Criteria方法,动态查询DetachedCriteria,例子查询,sql查询,命名查询. 如果单纯的使用hibernate ...

  3. mininet实验 连接floodlight控制器

    参考博客一 参考博客二 事先准备-floodlight安装 Java安装方法及环境变量配置 执行ifconfig命令获取floodlight所在服务器的IP地址. 1.启动floodlight jav ...

  4. 第二次c++作业(觉得渐渐入门系列)

    其实说实话,我还是不敢很确定地说面向对象和面向过程这两种语言,我确实能分得开,但是我觉得倒是比以前好很多了.//(大概是谈了对象,知道了什么是面向对象编程) 1.从个人角度来说, a:面向过程就是-- ...

  5. whu Problem 1537 - A - Stones I 贪心

    题目链接: http://acm.whu.edu.cn/land/problem/detail?problem_id=1537 Stones I Time Limit: 1000MSMemory Li ...

  6. 不要USB数据线调试Android开发

    不管是过去Eclipse还是现在的Android Studio开发Android,运行或者调试时都会利用USB数据线连接电脑和手机,特别是当现在的手机只有一个Type-c接口,意味着,插上后,啥也干不 ...

  7. EF动态排序

    转载的代码,改天再研究 public PageData<T> FindAll(int PageIndex, int PageSize, Expression<Func<T, b ...

  8. NFS 它的目的就是想让不同的机器、不同的作业系统可以彼此分享个别的档案啦

    NFS即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源.在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件, ...

  9. vbs习题

    练习题: 1.输入3个数,输出其中最大的那个值. Option Explicit Dim intA,intB,intC intA=CInt(InputBox("请输入a:")) i ...

  10. 规则引擎之easyRules

    规则引擎听起来是蛮高深的一个词语,但透过现象看本质,Martin Fowler 有如下言: You can build a simple rules engine yourself. All you ...