zoukankan      html  css  js  c++  java
  • 论文-Learning Features and Parts for Fine-Grained Recognition

    Learning Features and Parts for Fine-Grained Recognition

    本文主要讲细粒度识别(fine-grained recognition),主要几种在两点:学习表达性的外表特征和定位可区分特征。其中使用CNN来学习表达性的外部特征,而采用part detector来定位和描述细粒度特征。

    后者part detector and describer 的方法叫: ELLF (Ensemble of Localized Learned Features) , 它含有两个关键点: learning discriminative appearance features 和 discovering parts。

     

    Part的集合,是通过无监督学习得到的,即是通过 traditional human feature 来得到,这些feature 来源于一个CNN网络得到的feature map。

    整个算法的框架是:

    给予一张image,先使用无监督方法的part detector得到一些region 或者 grid,再使用CNN的前基层的Conv层去提取出特征,parts of feature maps,接着分为两路,一路是继续CNN的FC部分,另一路则是part detector之后的feature 的重新组织和ensemble,同时两路为最后的classification服务。

    Part Discovery的几个步骤:

    (1), 对于一张image,先使用GrabCut算法来初始化背景和object的Bounding box,起到一个foreground segmentation的作用,然后再使用multi-scale 的HOG features 提取。

    (2), 以image中的HOG多样性为能量函数,选择能量值最高的parts,这样是为了找到最有判别性的part。同时,在选择一个part之后,除去其他与之overlap大于一定值的未选parts,避免最后的ensemble学习多余的parts。

    (3),为每一个选择的part训练一个detector,训练目标是最小化该函数

     

    (4), 最后将parts detectors 进行ensemble,得到一个part detector collection。

    实验效果:

     

    添加了辅助feature之后,ELLF比没加feature 的CNN增强了3个多点。

    评价:

    在AlexNet阶段,由于CNN的网络层数浅,学习能力稍微弱,无法从image 中提取出更为全面的信息,所以利用传统的方法来增加feature 提取,来为classification更好的服务。

  • 相关阅读:
    java 接口和抽象类的一个最大的区别
    python 简化数据结构的初始化二 支持关键字参数
    python 简化数据结构的初始化一
    python @staticmethod
    python @classmethod
    codeskulptor hosts
    An Introduction to Interactive Programming in Python (Part 1) -- Week 2_2 练习
    An Introduction to Interactive Programming in Python (Part 1) -- Week 2_1 练习
    mysql-5.7.14-winx64免安装版在win10下的详细配置过程
    python 反模式
  • 原文地址:https://www.cnblogs.com/zhang-yd/p/6535235.html
Copyright © 2011-2022 走看看