我想在矢量之间的比例因子上使用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);
这是对的吗?