坐标系转换后如何计算新的相机外部性?

时间:2019-01-29 07:38:58

标签: opencv camera-calibration coordinate-transformation

我正在尝试在坐标转换后计算新的相机外部性。假设旧的外部特性(旋转和变换)为R0,T0。我首先沿X轴旋转坐标系α,然后沿Y轴旋转β,然后沿Z轴旋转γ,αβγ处于弧度,并且旋转遵循右手定则。我也通过Tt翻译坐标系。

我们代表:

Rx = {1, 0, 0; 
      0, cosα, -sinα;
      0, sinα, cosα}

Ry = {cosβ, 0, sinβ; 
      0, 1, 0;
      -sinβ, 0, cosβ}

Rz = {cosγ, -sinγ, 0; 
      0, 1, 0;
      sinγ, cosγ, 1}

因此,在进行此转换之后,新的外部变量会变为R = R0 * Rx * Ry * Rz,而T = T0 + Tt吗?

我也不知道给定3D点的新坐标会是什么样。假设旧的3D坐标为P0(3X1),新坐标会变为Rx * Ry * Rz * P0-Tt吗?

非常感谢您!

1 个答案:

答案 0 :(得分:0)

经过大量测试,我得到了答案。 转换后,新的外在形式将是:

R = R0 * Rx ^(-1)* Ry ^(-1)* Rz ^(-1); //-1是逆或转置(它们相等)

T = Rz * Ry * Rx * T0 + Tt;

//新坐标: P = Rz * Ry * Rx * P0 + Tt;

NB。很容易为T犯错误。T不是T0 + Tt