OpenCV分解投影矩阵

时间:2020-07-01 23:10:06

标签: python opencv computer-vision

我对opencv decomposeProjectionMatrix函数的输出感到困惑。

我有投影矩阵和相机矩阵“ K”,我想从投影矩阵中获取平移矢量“ t”和旋转矩阵“ R”

我知道尺寸为3 * 4 = K [R | t]的投影矩阵,其中“ t”是3 * 1向量

cv2.decomposeProjectionMatrix返回的R的尺寸为3 * 3,这是正确的,但返回的transVect的尺寸为4 * 1,而不是3 * 1

我的问题是如何从函数输出中获取投影矩阵?

文档:https://docs.opencv.org/2.4/modules/calib3d/doc/camera_calibration_and_3d_reconstruction.html

1 个答案:

答案 0 :(得分:0)

C = K[R|t] = K(R|Rt) = (KR|KRt) = (M | Mt) C的第四列是c4。

Mt = c4.
t = M^(-1)c4

参考https://www.ics.uci.edu/~majumder/vispercep/cameracalib.pdf