我正在使用 OpenCV 2.2,并且正在尝试校准两个相机以沿相同的坐标系进行查看。两个摄像头将彼此分开放置。我了解校准单个相机的内在函数,但对于如何将两个相机组合在一起有点困惑。后续问题也很好。
干杯。
编辑 - 正在解决这个问题 - 将发布并描述当我完成它时对我有用的东西。
我正在使用 OpenCV 2.2,并且正在尝试校准两个相机以沿相同的坐标系进行查看。两个摄像头将彼此分开放置。我了解校准单个相机的内在函数,但对于如何将两个相机组合在一起有点困惑。后续问题也很好。
干杯。
编辑 - 正在解决这个问题 - 将发布并描述当我完成它时对我有用的东西。
假设您有两个摄像机 C1 和 C2。
基本矩阵F 定义了两个相机之间的关系,这意味着给定 C1 中的图像点 x1 如何约束 C2 中对应点 x2 的位置。答案:x1在 C2 中定义了一条线,x2必须在这条线上。那就是极线几何。它仅由相机参数定义,根本不依赖于场景几何。
假设现在您有两个投影矩阵P1 和 P2,即您知道两个相机的所有参数。如果您有一对对应关系,x1 <-> x2(x1 来自 C1,x2 来自 C2),您可以估计空间中点 X 的 3D 位置,该位置被成像到 C1 中的 x1 和 C2 中的 x2。你可以重建你的球,得到一个 3D 模型。棘手的部分是找到匹配 x1 <-> x2。
现在,如果您的问题是要知道 C1 和 C2 是否看到相同的东西,那么您的问题可能不是立体问题,而是识别问题。也许SIFT或SURF算法是更合适的方法。
可能是这个骗局?我的答案是StereoCalibrate将允许您求解基本矩阵,您可以使用该矩阵将一个摄像机中的任何点与另一台摄像机中的点相关联。