立体相机的最佳相对方向和位置

时间:2017-12-14 22:25:23

标签: computer-vision computational-geometry

我有2个静态相机用于物体的立体3D定位。我需要尽可能准确地确定第二台相机相对于第一台相机的位置和方向。我试图通过在两个摄像机的图像上定位n个对象并在两个摄像机之间进行关联来校准我的系统以便稍后定位其他对象。

是否有一种首选方法可以使用大量(6+)相关点来确定2个摄像机的最佳拟合相对位置/方向,假设我已经补偿了任何扭曲效果并且知道正确(但是光轴和物体之间的角度有点嘈杂,以及相机之间的距离?

1 个答案:

答案 0 :(得分:0)

我的解决方案是确定要在第二个摄像机(B)上执行的旋转,以便重新调整其测量值,使它们从第一个摄像机(A)的角度来看,好像它已被转换到第二个摄像机的位置相机B.

我使用复合旋转,首先旋转第二个相机关于矢量-AB(B从A的角度指向A)和BA(B从A的角度指向A)的叉积的测量值。从B)得到R1 * BA = -AB。执行此旋转只意味着指向摄像机之间的矢量对齐,并且必须进行另一次旋转以便考虑更多的自由度。

完成旋转,以便第二个旋转 -AB。 R2是θ弧度约-AB的旋转。我通过从摄像机A和矢量AB获取我的测量结果,并将它们与R1 *(来自摄像机B的测量值)和-AB的交叉乘积进行比较,从而找到了θ。我在数值上最小化了交叉乘积对之间角度的RMS,因为当相机对齐时,这些交叉乘积矢量应该指向相同的方向,因为它们与共面平面垂直。

之后我可以使用https://math.stackexchange.com/questions/61719/finding-the-intersection-point-of-many-lines-in-3d-point-closest-to-all-lines通过将R1 * R2应用于来自摄像机B的任何未来测量来找到交叉点的精确3D位置。