关于单应矩阵的困惑

时间:2018-11-06 14:07:11

标签: python computer-vision

我正在尝试获取描述从一个图像到另一个图像的转换的单应矩阵。我尝试通过使用特征分解并采用最小的特征向量来做到这一点。显然,我必须将其重塑为3x3矩阵,但是numpy linalg函数返回的形状的特征值(9,9)。 (尝试从4个点进行计算)

A是8x9矩阵。 pts1和pts2分别是源图像和目标图像中4个点的阵列。

代码从对称矩阵开始,用于单应性计算(尺寸为8x9)

A_t = A.transpose()
sym_mat = np.dot(A_t,A)

eig_val,eig_vec = np.linalg.eig(sym_mat)

#sort according to value
idx = np.argsort(eig_val)
eig_val = eig_val[idx]
eig_vec = eig_vec[:,idx]
# Return the eigenvector corresponding to the smallest eigenvalue, reshaped
# as a 3x3 matrix.
H = np.reshape(smallest,(3,3))

`

0 个答案:

没有答案