使用OpenCV过度确定最小二乘法

时间:2014-07-05 03:41:14

标签: c++ opencv math vector

我想在矢量之间的比例因子上使用OpenCV的最小二乘SVD算法:

  

argmin(λ)Σ_(i∈I)|| vec(a)_i - λvec(b)_i || ^ 2< ---最小化此错误

     

vec(a)_i = [x_i,y_i,z_i] ^ T< --- 3D vector

     

vec(b)_i = [x_i',y_i',z_i'] ^ T

n对向量中的每一对都是已知的,因此只有一个自由度并且系统是过度确定的。据我所知,最小二乘应该找到一个解决Ax=B的x。在这种情况下,A是向量:

  

[X_1,Y_1,Z_1,X_2,Y_2,Z_2 ...]

B是列向量:

  

[X_1' ,Y_1' ,Z_1' ,X_2' ,Y_2' ,Z_2' ...] ^ T

λ是向量[x]

所以,为了在最小二乘意义上得到正确的解决方案,我应该使用:

solve(A, B, lambda, DECOMP_SVD);

这是对的吗?

0 个答案:

没有答案