我想要验证单应矩阵会给出好的结果,并且这个this answer有它的答案-但是,我不知道如何实现这个答案。
那么,谁能推荐我如何使用OpenCV来计算奇异值和奇异值,并验证第一个到最后一个奇异值的比率是合理的?
发布于 2013-05-08 12:01:23
在OpenCV中有几种计算奇异值的方法:
cv::SVD homographySVD(homography, cv::SVD::FULL_UV); // constructor
// or:
homographySVD(newHomography, cv::SVD::FULL_UV); // operator ()
homographySVD.w.at<double>(0, 0); // access the first singular value
// alternatives:
cv::SVD::compute(homography, w); // compute just the singular values
cv::eigen(homography, w);
发布于 2017-04-05 10:21:56
您可以使用numpy
在python中计算奇异值分解。例如:
import numpy as np
U, s, V = np.linalg.svd(a, full_matrices=True)
其将维度M x N
的矩阵a
因数为u * np.diag(s) * v
,其中u
和v
是么正的,并且s
是a
的奇异值的一维阵列。
更多信息可以在here上找到。
https://stackoverflow.com/questions/16439792
复制