基本流程:
利用现有的faster-rcnn物体检测只前向传播一次来提取整个图像的卷积特征和区域卷积特征,共享计算。
检索物体在检索图像中用提供的坐标框表示其位置,使用faster-rcnn提取整个数据集图像的conv5_3层特征,并于待检索图像的conv5_3层特征比较余弦相似度,这样便完成对整个数据集图像的第一次rank,即和待检索图片越相似越排名越靠前。
在第一次rank后的基础上,针对排名top N的图片,利用faster-rcnn框处物体检测框,取出所有物体检测框的pool5层特征和待检索物体的pool5层特征比较余弦相似度,依然越相似的排名越靠前,完成rerank,即第二次排序。
操作完后将top 10的结果显示出来。
细节:
1.Image-wise pooling of activations (IPA)
就是用最后一层卷积层的激活值来构建对整幅图片的描述。
2.Region-wise pooling of activations (RPA)
RPN产生的proposals的卷积特征求和池化特征先用L2归一化,whitening后再L2归一化一次,而最大池化特征只进行一次L2归一化。
3.微调faster-rcnn
两种:只调整全连接层和除前两层卷积层外都所有层都微调
4.Class-Agnostic Spatial Reranking (CA-SR)
未知类别空间排序
5.Class-Specific Spatial Reranking (CS-SR)
特定类别排序,使用相同检索物体微调后的网络,可以直接使用RPN proposal的得分来作为与待检索物体的相似度得分,
得分用来对图片列表进行排序。
6.数据集
在Oxford和Pairs数据集里,输出12种类别可能(11种建筑+背景)。
在INS 13中有30种不同的检索实例,输出31种类别可能。
只调整全连接层在检索物体较难的时候效果不好。
总结:
这篇文章使用现成的faster-rcnn框架,做完物体检测之后再做检索,使用余弦相似度计算相似性。感觉可以使用高端一点的计算相似度算法,再去做一些有趣的检索任务会比较好。