首页 > 编程知识 正文

vivlas,vfp教程入门

时间:2023-05-05 22:11:34 阅读:139454 作者:3753

如标题所示,此处将记录所有VLAD。 VLAD本混蛋也读过一些这方面的paper,但读的时候一直理解很粗糙。 所以希望借此机会投稿,一方面调动自己加深理解,另一方面记录下这些自己的理解,便于自己调查。

VLAD在进行理论分析之前,我们先来看看VLAD是如何成长的。 现在,这个孩子将逐步展开VLAD是如何得到的。

提取SIFT的特征。 对于样本数为n的数据库,首先对图像库中的所有图像提取SIFT描述符,假设所有SIFT描述符被提取的数量为n,用x表示,x为n*128的矩阵。 聚类生成词汇向量。 假设要生成k个单词,对x直接用Kmeans归纳为k类的话,类的中心就是单词(也称为码字)。 生成VLAD向量。 这一步其实只要BOW的生成过程清晰,这一步就非常容易理解。 BOW计算描述符包含在最近的单词中的数量,VLAD计算与这些最近的单词中包含的单词的累积残差。 根据aggregatinglocalimagedescriptorsintocompactcodes的说明,bycountingthenumberofoccurrencesofvisualwords、 bowencodesthe0- orderstatisticsofthedistributionofdescriptors.thefishervectorextendsthebowbyencodinghigh-order statistics

BOW进行描述符的0次统计分布,FV是扩展后的BOW的高次统计。 从这里引出的FV是什么呢? VLAD是FV的特例,在此不关注FV,据此只要压住VLAD为BOW的高阶统计即可。

经过以上三个步骤,图像可以用1*(K*128 )维的向量表示。 为了初步验证以上过程是否正确,我们来看看以上论文中VLAD的维数是否为1*(k*128 )维的向量,正如这里所理解的那样。 直接看看实验表:

上表中FV和VLAD的d表示维数,可以看到D=K*64。 这里为什么不是128呢? 原因是作者对SIFT进行了PCA维度削减处理,将128维度削减到了64维度。

上面的VLAD生成过程用文字记述并不简洁,所以在论文中直接抓住了计算VLAD的算法流程图。 算法的流程图如下。

提取VLAD是在对VLAD有了初步的认识后,继而手动提取VLAD,通过实验可以进一步了解VLAD。

(待续) )

参考:

机器学习笔记—— fishervectorcodinglarge-scalevisualrecognitionnovelpatchaggregationmechanismsvladfrom 3360http://yongyuan.name/ble

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。