vlad
1.1 vlad的基本概念
VLAD是vectoroflocallyaggregateddescriptors的简称,由Jegou et al .于2010年提出,其核心思想是aggregated (积累),主要应用于图像检索领域
1.2相关方法的优缺点
在深度学习时代以前,在图像检索领域以及分类中主要使用的一般算法有BoW、Fisher Vector、VLAD等。
BoW方法的核心思想是提取关键点描述符后,采用聚类的方法对码本进行训练,然后按照每个图像中每个描述符向量出现在码本中每个中心向量的次数来表示该图像,存在码本需要较大的缺点FV方法的核心思想是利用高斯混合模型(GMM ),通过计算高斯混合模型中的均值、协方差等参数来表示各图像。 该方法的优点是精度高,但具有计算量大的缺点。
1.3VLAD算法
VLAD算法可看作是一种简化的FV,其主要方法是通过聚类方法训练小码本,找出与每个图像中特征最接近的码本聚类中心,然后与所有特征和聚类中心在此,k是聚类中心的数量,d是特征维数。 例如,sift是128维。 之后,将该矩阵扩展为一个(关于该算法为什么有效,Jegou et al .在2012年的期刊版本aggregatinglocalimagedescriptorsintocompactcodes中进行了证明)
1.4 VLAD算法的发展
基于VLAD算法,Arandjelovic et al .在All about VLAD的文中提出了一种改进方法。 随后,结合深卷积神经网络的相关内容,提出了NetVLAD。
2 VLAD算法流程
(1)读取图像文件路径和特征提取
)2)采用聚类方法训练码本
)3)将各图像的特征与最近的聚类中心进行累计
*(4)对累积的VLAD进行PCA降维,并进行正规化
*5)获得VLAD后,继续使用ADC方法减少存储容量并提高搜索速度
其中,步骤4、5是可选,在步骤3中得到残差累积向量后,通过进行L2归一化,可以用zxdxb距离等计算两张图像的相似性来实现图像检索
请参见简单实现(基于sift和orb特性)
VLAD-ORB-C
垂直偏移
相关阅读
局部集合向量notevladstandsoutforthefollowingreasons 3360 (1)计算是原始的)加法/减法操作)2)与CNN进行比较来训练VLAD
一种局部集向量(vectoroflocallyaggregateddescriptors,VLAD )编码方法,广泛应用于语音人脸识别、动态场景识别和头部姿态分析