本文主要是介绍局部特征与图像检索,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Exploiting Local Features from Deep Networks for Image Retrieval 阅读笔记
摘要
这篇⽂章发表在CVPR 2015 workshop上,是来⾃于马⾥兰⼤学帕克学院Joe Yue-Hei Ng等⼈的⼯作。近期的很多研究⼯作表明,相⽐于全相连层的输出,卷积层的特征图谱(feature map)更适⽤于实例搜索。本篇⽂章介绍了如何将卷积层的特征图谱转化为“局部特征”,并使⽤VLAD将其编码为图像特征。另外,作者还进⾏了⼀系列的相关试验去观察不同卷积层的特征图谱对实例搜索准确率的影响。(摘自深度学习大讲坛)
两个问题
1、默认的,CNN一般用于分类任务,使用最后一层(或者说高层)的特征作为分类依据,主要原因是高层捕获了更多语义特征(整体特征),但是实例的局部特征(比如说纹理,颜色等)没有很好的保留。对于图像检索而言就有这样的问题:同一类别的两个外观不同的实例不能被区分。
2、一般的我们都会假设测试时输入图片和训练时的图片大小相同。但是每个卷积层的特征会一定程度地随输入图片尺度的不同而变化。
具体想法
1、卷积网络
实验是基于GoogLenet和OxfordNet(VGG-16),使用ImageNet上预训练的权值。CNN在这里的作用只是为了提取特征,且这里需要验证输入图片尺寸对卷积特征的影响,因此不需要全连接层。GoogLenet本就是全卷积网络,而Oxford需要将最后的全连接层去掉。
2、提取特征
输入图片 I ,首先缩放成
3、VLAD编码
通过VLAD编码将第 l 层的卷积特征
实验结果
1、不同卷积层特征对检索结果的影响:
可以看到,mAP先随着层深度的增加而提升,达到顶峰,在更高的层中,mAP又开始下降,说明了并不是越高层的特征对图像检索而言越好,反而是中间偏上层达到最佳效果。这也说明了图像检索与图像分类的不同之处!图像检索需要局部特征(低层特征),在如今网络结构越来越深的情况下,尤其需要注意,太高层的特征丢失了很多实例特征。
2、输入图片的尺寸对检索结果的影响:
根据前人的经验,应用多尺度(Multi-Scale)显著提高检索效果(如:MOP-CNN)。这里使用了两个尺度:scale1( n×n ),scale2( 2n×2n )。
实验结果表明,对于高分辨率图片,高层特征依然可以保留局部特征,直观上可以理解为是感受野的原因。同样一个局部细节,高分辨率图片需要更大的感受野来提取特征。
Correspondence visualization
这部分我是参考《Do Convnets Learn Correspondence?》这篇论文来理解的,通过特征非参数化重构图片。具体做法是将第 l 层的特征图
对于AlexNet(具体怎么算参考感受野的计算):
将原始图片中每个图像块用数据库中k近邻(图像块对应的特征向量得到的k近邻)的图像块像素的平均值进行替换。
这篇关于局部特征与图像检索的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!