从对象变换矩阵中获取相机矩阵

时间:2017-09-27 08:15:53

标签: graphics geometry computer-vision

我在世界空间中有一个3d对象的变换矩阵,具有固定的摄像机位置。我想得到相机矩阵(位置,查找向量,右向量),如果对象没有被转换,相机被转换。我该如何计算呢?希望我的问题有道理

1 个答案:

答案 0 :(得分:0)

前提。让我们用4x4矩阵表示坐标变换。具体来说,表示帧Qab中帧a的坐标变换的4x4矩阵 b 是这样的:

  • 它的3x3左上子矩阵是旋转矩阵 Rab ,即3x3正交矩阵,其列通常是 x_b的组件 y_b z_b 框架b的单位向量,在框架a中分解。
  • 它的3x1右上子矩阵是从帧t_ab的原点到帧a的原点的平移向量 b ,在帧{分解} {1}}。
  • 第4行是[0,0,0,1]。
  • 如果 a 是框架p中的坐标为 b p_b的点,那么坐标 = [px_b, py_b, pz_b, 1] p_a提供了第= [px_a, py_a, pz_a, 1]帧中同一点的 a p_a.T = ,其中Qab * p_b.T表示向量x.T的转置。请注意,我们将x附加为虚拟第四坐标,以便能够将3D点乘以4x4矩阵。

现在,问你的问题。设 1 为4x4矩阵,表示摄像机从世界参考系中的旋转和平移, Qcw 对象的类似变换来自世界。

然后你的答案就是物体相机变换 Qow 。我们可以通过首先从Qco转到o,然后从c转到{o,从框架w转到框架w来计算它{1}}。因此, c Qco = ,其中 Qcw * Qwo {{1} } Qwo = 的反转,表示从对象看到的世界框架。