原论文: Picking Deep Filter Responses for Fine-grained Image Recognition (2016CVPR)
作者是上海交通大学的 Xiaopeng Zhang
1. 背景
细粒度视觉分类(Fine-Grained Visual Categorization, FGVC)是一个非常具有挑战的应用,主要原因是每个子类间的差异小,而类内的差异大。目前,针对细粒度图像的识别,主要的方法分为两类:
(1)基于目标部位的方法(parts based methods):这类方法主要捕捉在特定目标部位的微小外观差异,从而减少类内差异;
(2)基于图像特征表示的方法(feature representation based methods):这类方法聚焦于从图像中学习出一种具有识别性的图像特征。
为了精确的定位图像中的目标(object)和部位(part),绝大多数方法在训练和测试时都需要目标级或部位级的标注信息,即让网络直接从标注的部位中学习检测器(detectors),但人工标注这些信息是非常费时费力的。因此,有些改进的方法能做到只在训练时用到标注信息,而在测试不适用。然而,这对于大尺度的识别任务还是不够。
2. 创新性
这篇论文有两个创新点:
2.1. 提出了一种完全不使用标注信息的部位检测方法 。
这其中包含两个方面:(1) 从深度滤波器中挑选对某些特定部位响应显著且连续的滤波器作为初始的部位检测器;(2)通过交替迭代正样本选择和检测器再训练,学习一系列部位检测器(we propose to learn a set of detectors via iteratively per-category positive sample mining and regularized part model retraining)。
2.2. . 提出了一种新的特征 SWFV-CNN
针对之前直接套用CNN来提取细粒度图像的特征中存在的两个问题:(1)CNN训练时是包含了大量的背景信息,这对细粒度图像识别是没用用的,因为细粒度图像是非常相似的;(2)检测和分类存在很大的鸿沟。作者通过空间带权重的Fisher Vector 与CNN提取的滤波器响应混合,编码成最后的图像表示。
3. 论文框架
4. 学习部位检测器(Learning Part Detectors )
目的: 学习一些能自动发现具有识别性的部位的检测器。主要分为三个模块: 正样本初始化、正则化的检测器训练、检测器选择。
4.1 选择可识别的滤波器:正样本初始化
学习一个部位检测器需要大量的部位样本,并且要在训练数据中标记出来,之前大多数方法都是基于无监督的聚类方法,如K-means,template matching , 但这种聚类方法在mid-level patch上的效果不太理想。作者提出了一种新的样本选择方法:根据CNN中某层滤波器的响应,挑选出响应强烈且一致的滤波器通道,并将与之对应的patch选作为正样本。
4.2 正则化的检测器训练
大致是在反复迭代正样本的选择与检测器训练,具体原理与步骤还没深究。
4.3 检测器的选择
经上面一步,产生了非常多的检测器,为了进一步去除那些定位很差的检测器,作者以识别精度来测量这些检测器的可识别能力(In order to discard those detectors which are poorly localized, we measure the discriminative power of detectors in terms of recognition accuracy)。具体做法:将标记的样本划分为训练集和测试集,分别计算每个检测器的分类精度,将那些分类精度低于40%的检测器去除,保留少部分的检测器。
5. 部位图像的表示(Bag of Parts Image Representation )
6. 实验结果