我们如何计算两个立体相机的旋转和平移以在 opencv StereoRectify(r,t argument) 中使用

Posted

技术标签:

【中文标题】我们如何计算两个立体相机的旋转和平移以在 opencv StereoRectify(r,t argument) 中使用【英文标题】:How can we compute rotation and translation two stereo cameras to use in opencv StereoRectify(r,t argument) 【发布时间】:2013-07-14 00:46:15 【问题描述】:

我知道我可以使用一些真实的 3d 点计算两个立体摄像机的旋转和平移,然后在 opencv 中调用 solvepnp 函数,但我没有这些 3d 点。 我有每个图像的内在参数和外在参数。 另外我在左图中有一些二维点,在右图中有它们的对应点。 如果我有两个立体相机的旋转和平移,我将能够使用 stereoRectify 函数,然后可以计算图像中某些 2d 点的 3d 真实坐标。 我在不同的网站上进行了很多搜索,但没有找到从两个立体相机中的 2d 点计算 3d 真实坐标 (x,y,z) 的常规且直接的方法。

【问题讨论】:

【参考方案1】:

为什么不使用 triangulatePoints? 你说你对这两个图像都有外在和内在的校准,这意味着你有他们的投影矩阵。这就是您作为 triangulatePoints 参数所需的全部内容。

http://docs.opencv.org/modules/calib3d/doc/camera_calibration_and_3d_reconstruction.html#triangulatepoints

【讨论】:

以上是关于我们如何计算两个立体相机的旋转和平移以在 opencv StereoRectify(r,t argument) 中使用的主要内容,如果未能解决你的问题,请参考以下文章

具有已知内在和外在矩阵的立体视觉 3d 点计算

第七节双目视觉之空间坐标计算

相机姿态估计:如何解释旋转和平移矩阵?

深度估计的准确性 - 立体视觉

在两个摄像机之间进行旋转和平移时计算单应性

如何在emgu CV中进行相机校准后访问旋转和平移向量