zoukankan      html  css  js  c++  java
  • Selective Search for Object Recognition 论文笔记【图片目标分割】

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

    前言:

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

     

    介绍及引言:

       图片是分层次的,比如下图中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进行该类进行训练.然后将得分很高的错误样本,放入到负样本中继续训练.依次往复.

  • 相关阅读:
    (十五)、常见的几种RuntimeException
    (十四)、泛型中extends和super的区别
    (十三)、Java泛型
    (十二)、构造方法、静态属性和静态方法的使用要点
    (十一)、final,finally,finalize的区别
    (十)、java内部类与内部类的闭包和回调
    (九)、线程sleep和wait的区别
    (八)、java中==和equals和hashCode的区别
    sketch中做outline icon的制作技巧
    sketch Measure的安装及使用
  • 原文地址:https://www.cnblogs.com/gongxijun/p/7097630.html
Copyright © 2011-2022 走看看