目前大部分对一般目标的分类方法在细粒度图像分类上都不好使。这主要归咎于codebook-based image representation。这导致了对细粒度分类至关重要的细节图像信息丢失。
解决这个问题的一个方法是引入人工标注的对象属性或者关键点。
本文提出了一种无codebook以及无注释的细粒度图像分类方法。
不使用失量化的codewords,而是通过一个高吞吐量的模板匹配过程来获得图像表示。
这一阶段的工作,对于图像的表征,要么用global codebook,要么就是人工标注一些关键部位。
为了避免这俩方法的弊端,本文提出了新的方法。该方法通过具有启发性的高效模板匹配算法,直接匹配图像区域,从而捕捉到对象类的细微差异。然后将图像表示为这些高吞吐量特征模板的特征响应映射。最后,该算法使用一种新颖的基于bagging的算法,通过聚合一组分类器来构建最终的分类器。
从所有的训练图像中抽取矩形区域,生成大量的模板。然后图像通过与每个模板相匹配的响应分数来表示。
这是用了连续的模板匹配分数代替离散的视觉码字来表示图像。
这一方法能够捕获相似图像补丁之间的细微区别。另外,这是Codebook-Free与Annotation-Free的。
图像定义为 O O O,我们标注他的外观为S个不同的特征种类为 { O s } s = 1 S \{O^s\}_{s=1}^S {Os}s=1S。
图像模板表示为 T = { { O s } s = 1 S , { r , s } } \Tau=\{\{O^s\}_{s=1}^S,\{r,s\}\} T={{Os}s=1S,{r,s}},其中r和s表示为在 O s O^s Os中位置r的图像特征。
其中,模板与以位置c为中心的图像区域 I I I的相似度进行如下计算:
其中f的计算方式参考该文中引用的其他论文。
为了处理对象尺度的变化,我们考虑每个模板的不同尺度。模板匹配步骤为每个比例尺上的每个模板生成响应分数映射。
本文在两层空间金字塔上使用最大池化来将这一响应图转化为特征向量。
最终的图像表示是连接所有图像尺度上的所有模板池化结果形成的。
算法使用了大量的图像模板,导致每张图像都有一个非常高维的特征向量。使用更多的模板是有利的,因为可以提供更丰富的图像表示。
然而,这个特征向量过于完整,并且包含一些不具有区分度的元素(模板来自于信息部丰富的区域)。这样的问题称之为冗余和无鉴别。其展示如图所示。
本文建议针对该特征表示训练一组SVM分类器,并将所有分类器的结果进行聚合。
相关属性是局部的,但如何选择这些局部属性的问题在很大程度上没有得到探索。本文提出了一种交互式方法,从细粒度类别标签和对象框标记的图像数据中发现具有区别性和语义的局部属性。
本文的方法使用一个潜在的条件随机场模型来发现可检测和具有判别性的候选属性。然后使用一个推荐系统来选择可能具有语义意义的属性。
人工交互被用来为那些发现的属性提供语义名称。
目前,大多数图像分类和目标识别方法都学习了低级的视觉特征的统计模型,比如SIFT、HOG。这些方法虽然提供了不错的结果,但是没有什么意义,限制了人类理解模型的能力。最近的工作引入了视觉属性作为特征。
大部分的属性特征都是由人工标注产生,这样十分得费时费力。当然,也有工作提出了自动地标注技术,但仅限于对全局属性的把握(“城市”与“野外”)。这对于细粒度任务来说并不适合。
发现局部区域是一件困难的事情,要么找到有区别但是没有意义的部分,要么找到有意义但是没有辨识度的部分。
本文提出了一个交互式系统,从一个带有细粒度类别标签和对象边界框注释的图像数据集中发现机器可检测和人类颗理解的、有区别的局部属性。
在过程的每次迭代中,本文都会根据目前发现的属性确定两个最容易混淆的类别。本文使用一个潜在的条件随机场模型自动发现能够区分类别的候选属性。
对于候选属性,本文使用一个推荐系统来识别在语义上可能对人类有意义的。然后,将它们呈现给人了用户以收集属性名称。
对于这些候选,用户可以给一个名称加入到属性池中去,没有赋予名称的就被忽视。
无论是那种情况,推荐系统的语义模型都会根据用户的反应进行更新。一旦局部属性表建立,这些属性就会在新的图像中被检测并使用来分类。