问题标签 [eigenvector]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
6003 浏览

python - PCA 计算中的复特征值

我正在尝试计算矩阵的 PCA。

有时,得到的特征值/向量是复值,因此当尝试通过将特征向量矩阵与点坐标相乘来将点投影到低维计划时,我得到以下警告

在那行代码中np.dot(self.u[0:components,:],vector)

我用来计算 PCA 的整个代码

0 投票
2 回答
204 浏览

performance - 为eigs做matlab缓存解决方案吗

使用eigs. 在同一个矩阵上,调用
[c, v] = eigs(A, 2, 'sm'); somtimes 需要 30 秒,有时需要 2 秒。
我需要知道eigs在同一矩阵上的后续调用中使用一些缓存是否有加速,因为我需要报告时间......

0 投票
0 回答
4087 浏览

r - 计算主成分分析的特征向量和特征值

我正在尝试对一些 3D 扫描执行主成分分析,但是在计算和使用特征值和特征向量时我被卡住了。

扫描采用 .obj 文件格式。

有 6449 个向量、12894 个面和 115 次扫描。我的理解是,由于数据是 3D 的,我无法使用内置princomp功能,而且由于数据量大,我可能会在笔记本电脑上遇到一些内存问题,最后我想学习手动进行 PCA。

我相信执行此操作有 5 个阶段

  1. 计算平均 3D 扫描。酒吧X
  2. 从每个扫描中减去平均值。Xa - BarX = 酒吧 Xa
  3. 创建一个 Bar Xa * Bar Xa = Ma 的矩阵
  4. 计算 Ma 的特征值和特征向量。帕
  5. 将平均形状 BarX 添加到 Pa 以根据特征值和特征向量查看形状变形

我希望我没有过度简化这一点,但由于我不是数学家/统计学家,这是我目前的理解。

第 1 阶段和第 2 阶段我已经完成了,因为它们很简单,但我对以下阶段感到困惑。

由于我担心遇到内存问题,我将分别为 x、y 和 z 创建一个矩阵。所以我正在创建一个 6449x6449 的对角矩阵,其中 x * x。这是我用来为第一次扫描的 x 创建矩阵的代码。

我对 x、y 和 z 执行此操作。然后使用计算特征值和特征向量

在这个阶段我不确定我所做的是否正确?但是从这里开始,我不知道如何将特征向量和特征值组合成一种格式,我可以将它们添加到 BarX 上以查看形状变形?

如果有人有建议或指导,将不胜感激。

提前致谢。

0 投票
0 回答
268 浏览

background - 如何加快特征背景计算?

我正在尝试优化此算法以使用移动摄像机视频进行自适应背景检测

http://www.springerlink.com/content/4j2m3885r3133202/fulltext.pdf

该算法加快了背景模型的升级(SVD 对于实时应用来说太重了)。我可以管理 3 个属性来加速算法。属性是:

  1. N第一次 SVD 计算的帧数
  2. M描述背景模型的特征向量个数(M<=N)
  3. P等待批量更新的帧数

你知道我怎样才能找出处理时间和这三个属性之间的关系吗?

你知道如何找出最优值吗?

该算法的主要部分是在批量更新期间对传入帧进行正交归一化的 QR 分解。这个功能需要很多时间。

你知道计算正交化的更快算法吗?

这里是我正在使用的 m_cT 的函数 QR(论文中的矩阵U'=[U|E] ):

在测试过程中,我注意到帧中的高频细节在相机运动过程中会产生大量误报。

你认为在 SVD 计算之前应用一个平滑滤波器可以得到更好的检测 BG/FG 吗?

谢谢您的帮助。

0 投票
1 回答
1029 浏览

python - python查找特征值和特征向量

我有一个图拉普拉斯算子,我需要找出最大的“k”特征值和特征向量。我正在使用这样的东西:-

这给了我大致正确的结果,但是出了点问题,我得到的 eig 值略大于 1(比如 1.05)。在我的情况下,特征值的上限为 1。当使用 MATLAB 和其他平台时,我得到了想要的结果。

我在这里做错了什么?有什么方法可以并行计算特征向量和值?(我正在考虑使用 pyCuda。)

0 投票
2 回答
7137 浏览

c++ - C++特征值/向量分解,只需要快速的前n个向量

我有一个 ~3000x3000 类似协方差的矩阵,我在其上计算特征值 - 特征向量分解(它是一个 OpenCV 矩阵,我用来cv::eigen()完成工作)。

但是,我实际上只需要前 30 个特征值/向量,其余的我不关心。从理论上讲,这应该可以显着加快计算速度,对吧?我的意思是,这意味着它需要计算的特征向量少了 2970 个。

哪个 C++ 库允许我这样做?请注意,OpenCV 的eigen()方法确实有参数,但是文档说它们被忽略了,我自己测试过,它们确实被忽略了:D

更新: 我设法用 ARPACK 做到了。我设法为 Windows 编译它,甚至使用它。结果看起来很有希望,可以在这个玩具示例中看到一个插图:

结果是:

对于特征值,和

分别为 2 个特征向量(每行一个特征向量) 代码无法找到 3 个特征向量(在这种情况下它只能找到 1-2,assert() 可以确保这一点,但是,这不是问题)。

0 投票
2 回答
1321 浏览

matlab - 绘制二维应力矢量场的特征向量和值

我打算绘制一个二维应力场。我手头有 2 个特征向量和系统中所有粒子的 2D 应力张量场各自的 2 个特征值。恐怕我无法弄清楚如何使用 MATLAB、gnuplot、Grapher、ParaView 或任何其他合适的板形式来评估这些特征向量(方向)和特征值(最大和最小应力值)来绘制 2D 应力场。

任何形式的代码(C、C++、MATLAB 或 ParaView)以及对利用这个微不足道的特征问题的简要说明都将是非常可观的。

0 投票
2 回答
18126 浏览

java - OpenCV/JavaCV 人脸识别 - 非常相似的置信度值

我将解释我正在尝试做的事情,因为它似乎与理解我的问题有关。

我目前正在尝试根据数据库中的已知图片对站​​在相机前的人进行面部识别。

这些已知图片是从识别智能卡(仅包含一张正面图片)或来自社交网络的正面个人资料图片中收集的。从我目前阅读的内容来看,似乎要获得良好的人脸识别,需要大量的训练图像(50+)。因此,由于我收集的图像很少,无法创建可靠的训练集,因此我尝试使用我的实时相机帧捕获(当前使用 150 个)作为训练集,并将之前收集的识别图片作为测试集。我不确定我的尝试是否正确,所以如果我搞砸了,请告诉我。

所以,问题是,假设我从智能卡中获得了 5 张已识别的图片,我尝试使用相机捕获的 150 帧作为训练集来进行人脸识别。在尝试识别时,5 个测试面中的每一个的置信度值都非常相似,这使得整个程序毫无用处,因为我无法准确识别任何人。通常,使用不同的相机捕捉作为训练,我从随机人的照片中获得比我自己的照片更高的置信度值。

我会很感激你能给我的任何帮助,因为我在这里不知所措。

谢谢你。

注意:我使用 OpenCV 的 JavaCV 包装器来制作我的程序,以及包中包含的 haarcascades。特征脸是使用的算法。

0 投票
0 回答
860 浏览

c++ - opencv中的复杂特征值

在opencv中计算不对称矩阵的特征值和特征向量的任何方法?

0 投票
1 回答
3384 浏览

c# - 8 X 8 矩阵的特征向量和特征值

我有一个 8 x 8 浮点数矩阵,需要从中计算特征向量和特征值。这是为了使用 PCA(主成分分析)减少特征,如果通过传统方法完成,这是一项非常耗时的工作。我尝试使用幂法,Y = C*X,其中 X 是我的 8 X 8 矩阵。

我知道这是不正确的,但无法弄清楚。我需要帮助来使用幂法或更有效的计算方法。

提前致谢。