PCA如何用于SIFT或VLAD载体?

时间:2017-01-09 15:05:15

标签: opencv matrix pca sift svd

我正在阅读很多关于VLADFisher Vectors(FV)的论文。特别是,在this论文中(基本上每篇论文都在讨论该主题),作者使用PCA来减少SIFT,VLAD和FV维度。

然而,根据我的理解,PCA涉及计算协方差矩阵的特征值,我们只能计算平方矩阵的特征值。

现在,假设我们想为1M SIFT向量计算PCA。我们如何在1Mx128矩阵上计算PCA?

我从this的问题中了解到SVD是另一种选择,但我很惊讶,因为在任何论文中都没有人谈过PCA!我错过了什么?

1 个答案:

答案 0 :(得分:1)

VLAD和Fisher Vectors的实现有效地倾向于使用PCA来降低图像块的维数。大多数论文报告的典型值是DIM = 64并且使用1M补丁,这有效地使得难以直接应用SVD。

我见过用于SIFT的PCA实现,它使用此处报告的迭代算法:https://en.wikipedia.org/wiki/Principal_component_analysis#Iterative_computation