如何根据立体图像的相对旋转和内在矩阵估计相机平移?

时间:2017-07-19 15:58:29

标签: computer-vision camera-calibration extrinsic-parameters

我有一张相机拍摄的场景的2张图像(左右)。 我知道两个图像的内在矩阵K_LK_R以及两个相机之间的相对旋转R

如何计算两台相机之间的精确相对平移t

Scheme of the scene

1 个答案:

答案 0 :(得分:1)

除非您有单独的方法来解决比例,例如通过观察已知大小的物体,或者让传感器(例如LIDAR)给你距地平面的距离或来自两个视图中可见的对象。

那就是说,解决方案非常简单。您可以通过计算然后分解基本矩阵来实现,但这是一种更直观的方法。令xl和xr是均匀图像坐标中两个视图中的两个匹配像素,并且让X为它们对应的3D世界点,以左相机坐标表示。令Kli和Kri分别是左和右相机矩阵K1和Kr的倒数。用R和t表示从右到左相机坐标的变换。那就是:

X = sl * Kli * xl = t + sr * R * Kri * xr

其中sl和sr是左右光线的刻度,分别从左右相机反射到X点。

上面的第二个等式表示5个未知数中的3个标量方程:t,sl和sr的3个分量。根据您拥有的其他信息,您可以通过不同的方式解决它。

例如,如果您知道(例如从LIDAR测量中)摄像机到X的距离,您可以从上面的等式中删除缩放项并直接求解。如果在两个图像中都有一个已知长度[X1,X2]的片段,您可以像上面一样编写两个等式,然后再直接求解。