Kar*_*mar 8 calibration computer-vision camera-calibration rotational-matrices extrinsic-parameters
我已根据某个世界坐标系校准了2个摄像头.我知道相对于世界框架的每一个的旋转矩阵和平移向量.从这些矩阵如何计算一个摄像机相对于另一个摄像机的旋转矩阵和平移矢量?
请给我任何帮助或建议.谢谢!
这是一个更简单的解决方案,因为您已经有3x3旋转矩阵R1和R2,以及3x1平移向量t1和t2.
这些表示从世界坐标系到每个摄像机的运动,即矩阵,使得如果p是以世界坐标系表示的点,那么在相机1帧中表示的相同点是p1 = R1*p + T1.
从摄像机1到2的运动简单地是(a)从摄像机1到世界帧的运动,以及(b)从世界帧到摄像机2的运动的组成.您可以如下轻松计算该组成:
一旦你有Q12,你可以从它的上3x3子矩阵和右3x1子列中分别从中提取旋转和平移部分.
首先将旋转矩阵转换为旋转向量。现在每个摄像机都有 2 个 3d 矢量,将它们称为 A1、A2、B1、B2。对于某个起源 O,您拥有全部 4 个。您需要的规则是
A relative to B = (A relative to O)- (B relative to O)
Run Code Online (Sandbox Code Playgroud)
将这一规则应用到您的 2 个向量上,您将获得它们相对于彼此的姿势。
可以在此处以及许多其他地方找到有关从旋转矩阵转换为欧拉角的一些文档。如果您使用 openCV 您可以只使用Rodrigues。 这是我找到的一些 matlab/octave 代码。