opencv - OpenCV 的增量奇异值分解

标签 opencv eigen pca svd

我有大量来自户外相机的图像存档。接近 200000 个项目,每个项目 1280x960 彩色像素。我想通过为这些数据构建 SVD(特征图像)并制作数据的简化向量(比如每张图片的 100 维向量)来索引这个数据库。

一次将所有这些数据加载到 RAM 中需要大约 200GB 的 RAM。 首先,我没有那么多内存。 其次,它不会扩展太多。所以,我正在寻找增量奇异向量分解的实现,它可能应该存在于 OpenCV 或 Eigen 等库中。

我不想在制作 SVD 之前降低分辨率,因为我相信小部分(分辨率远的物体)可能对我很重要,但降低分辨率我只是失去了所有高频特征。

更新:

最佳答案

我还没有看到使用 Eigen 的实现。但是编写 scikit-learn 用于 incremental PCA 的相同方法似乎并不难.

关于opencv - OpenCV 的增量奇异值分解,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42179568/

相关文章:

c++ - 关于 Eigen C++ 库的 EulerAngles 转换

matlab - 如何在 MATLAB 中找到 PCA 的投影矩阵?

matlab - 使用 PCA 降维 - MATLAB

r - 如何在 R 基础包中向 ordiellipse 添加颜色和图例?

c++ - 链接 OpenCV 3.0。 QT Creator 的库

python - 在 opencv 中使用 getPerspective

c++ - rows() 方法有什么作用?

c++ - Eigen:是否有计算样本协方差的内置方法

android - highgui.imread 读取旋转图像

c - 从文件夹加载图像(使用 C、OpenCV、Visual Studio 2008)