这篇笔记,仅仅是对选择性算法介绍一下原理性知识,不对公式进行推倒.

前言:

这篇论文介绍的是,如果快速的找到的可能是物体目标的区域,不像使用传统的滑动窗口来暴力进行区域识别.这里是使用算法从多个维度对找到图片中,可能的区域目标,减少目标碎片,提升物体检测效率. 下面是这篇文章的笔记:

介绍及引言:

   图片是分层次的,比如下图中a:

      

   沙拉和匙在沙拉碗里,而碗又在桌子上,另外桌子和木头有关或者说桌子和桌子上的所有东西有关.所以图片中的目标是有层次的. 图片分割应该按层次来,也不存在使用单个策略这样通用的方法来进行图片分割,所以对图片分割都是基于多个策略,但是这样又会在合并区域的时候产生冲突. 比如说上图中的b图,猫可以使用颜色进行分割,但是它们的纹理是一样的. 相反的 ; 图C中的变色龙和周围的叶子在颜色上是相似的,但是在纹理上确实不同的.最后,图d中,汽车轮子和汽车在颜色和纹理上都是不同的,但是和汽车的形状吻合度很高. 对于这三个图,采用他们其中的一种视觉特征是无法来对它们进行图片分割的.

  在这篇文章中,作者结合直觉分割算法和穷举搜索算法来提出这个selective search(选择性搜索)算法,使用直觉分割算法是希望达到结合图片的结构层次从下至上来分割,来产生目标区域. 使用穷举搜索算法的目的是得到所有可能是目标的区域. 选择性搜索算法,使用的是多样化在抽样算法

  在这篇文章中,作者主要从下面问题来介绍选择性策略:

           1.  选择性策略采用的是什么样的多样性策略来自适应分割图片?.

      2.  选择性策略在图片中生成高质量小目标的效率怎么样?

      3.  能否使用选择性策略来结合分类模型和外观模型来进行目标识别?

选择性算法介绍:

 特点介绍:

    1. 适用所有尺寸.

     目标可以以任意尺寸出现在图片中,甚至有些目标和其他目标的边界并不明显,面对这些问题,选择性算法会对所有的目标尺寸进行记录,就像下图一样,

可以很容易使用层次算法来实现.

     2. 多样化.

       单个的策略无法去处理各种各样差异化区域. 所以使用了多种策略比如颜色空间,纹理,吻合度等.

3. 快速的计算.

流程介绍:

选择性算法使用的是按层次合并算法(Hierarchical Grouping),基本思路是这样:

    通过对一张图片从低向上进行层次划分,当我们划出一个大区域时,继续在这个大区域中迭代划分,直到划不出区域为止.并将这个过程中产生的所有的区域记录下来,

在通过颜色,纹理,吻合度,大小来将这些细碎的区域进行合并.这种方式不需要设定滑动窗口,滑动格子,可以适应于任何目标的尺寸.

那么这个算法的具体过程:

   

   1. 首先使用Efficient Graph-Based Image Segmentation论文中的方法来按层次来快速得到分割区域R

   2. 初始化相似度集合S

3. 从分割区域集合R中来两两计算相似度,放入到相似度S集合中.

4. 从相似度S集合中,取出相似度最高的两个分割区域.然后将这两个区域进行合并,并放入到R中,然后从相似度S集合中去除掉

    这两个分割区域相关联的区域.然后计算合并的新区域 和它邻近区域的相似性,放入到S中,这样循环.直到S集合为空集 

   5.重复3直到这个区域变为一个.

   然后输出在这个过程中的所有的变化的区域.

关于多样性策略:

  分为两个大部分: 颜色空间多样性,区域相似度多样性 

  1.  颜色空间多样性包含八种:  [1]. RGB,[2]. I灰度图(grey), [3]. Lab,[4]. RGB图像中归一化的rg通道和图像的灰度图. [5].HSV

   [6].归一化的rbg,[7].C,[8].H

2. 区域相似度多样性: 对纹理,吻合度,大小这几个特征进行计算

具体推倒过程,见论文.

那么选择性算法在物体识别中如何使用的呢?

   

我们使用选择性算法获取到一系列可能有目标的区域L,然后我们将我们事先打好标签的目标区域(我们成为的GT)作为正样本,在L集合中的区域中和GT的IOU在0.2~0.5之间的作为这个类的负样本,对于重合度及IOU超过0.7的负样本,我将它丢掉,然后对这些区域的数据,进行特征提取,论文中使用的SIFT算法,然后将这些特征中一起放入到线性SVM进行该类进行训练.然后将得分很高的错误样本,放入到负样本中继续训练.依次往复.

Selective Search for Object Recognition 论文笔记【图片目标分割】的更多相关文章

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

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

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

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

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

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

  4. Notes on 'Selective Search For Object Recognition'

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

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

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

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

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

  7. Selective Search for Object Recognition

    http://blog.csdn.net/charwing/article/details/27180421 Selective Search for Object Recognition 是J.R. ...

  8. 目标检测--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. ...

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

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

随机推荐

  1. 13、Java菜单条、菜单、菜单项

    13.Java菜单条.菜单.菜单项 一般用Java做界面时,都得牵涉到菜单条.菜单.菜单项的设计.菜单项放在菜单里,菜单放在菜单条里,且其字体均可设置. 13.1.菜单条(Menubar) Frame ...

  2. java虚拟机学习-JVM调优总结(5)

    数据类型 Java虚拟机中,数据类型可以分为两类:基本类型和引用类型.基本类型的变量保存原始值,即:他代表的值就是数值本身:而引用类型的变量保存引用值.“引用值”代表了某个对象的引用,而不是对象本身, ...

  3. 走进javascript——数组的那些事

    Array构造器 如果参数只有一个并且是Number类型,那么就是指定数组的长度,但不能是NaN,如果是多个会被当做参数列表. new Array(12) // (12) [undefined × 1 ...

  4. 查看c语言的函数运行时间的简单模板

    /* clock():捕捉从程序开始运行到 clock() 被调用时所耗费的时间,时间单位 是clock tick, 即:"时钟打点". 常数CLK_TCK:机器时钟每秒所走的时钟 ...

  5. 对pathtracing的一些个人理解

    本人水平有限,若有错误也请指正~ 上面说到pathtracing(pt)的一些优点和缺点,优点即其实现很简单,这就是大概为什么当今市面上流行的很多渲染器如今都相继采用pathtracing算法为核心进 ...

  6. 543. Diameter of Binary Tree

    https://leetcode.com/problems/diameter-of-binary-tree/#/description Given a binary tree, you need to ...

  7. PHP初体验

    PHP初体验 提笔写初体验总不知道从何说起,直接聊PHP中的函数.PHP网络技术.数据库操作.PHP模板等感觉又不是初体验.最后还是决定从PHP的面向对象.PHP的魔术方法.PHP的反射.PHP中的异 ...

  8. git使用3

    如何使用/学习第三方框架? 优秀的第三方框架都在 github.com 1> 搜索 2> git clone 获得完整版本 $ git clone https://github.com/A ...

  9. iOS项目评估报告

    1.整体项目无分层概念,结构混乱,代码耦合严重. 影响:后期扩展困难,维护困难. 解决方案:1.整体采用mvc模式. 2.在原来的基础再抽离出业务层 3.业务层按模块管理,合理分层分包. 4.做好共用 ...

  10. 微信公众平台开发实战Java版之如何网页授权获取用户基本信息

    第一部分:微信授权获取基本信息的介绍 我们首先来看看官方的文档怎么说: 如果用户在微信客户端中访问第三方网页,公众号可以通过微信网页授权机制,来获取用户基本信息,进而实现业务逻辑. 关于网页授权回调域 ...