【问题标题】:Image matching using intrinsic and extrinsic camera parameters使用内部和外部相机参数进行图像匹配
【发布时间】:2018-09-27 11:59:35
【问题描述】:

目前我有一个图像数据集(帧序列),我有内在的相机校准矩阵。此外,对于每张图像,我都有外部参数(旋转和平移)。

我想知道是否可以使用该参数来找到每对图像之间的正确像素对应关系。

我发现了两个不同视角之间每个对应点的关系平移(t)和旋转(R)。

我猜使用上面的图像,只需要固定一个“x”点(在齐次坐标中)并求解“x”的方程组,但我不知道使用的是什么操作(符号) .如果有人知道如何使用matlab来做,我希望有所帮助。

另外,如果有其他方法可以使用相同的信息发现匹配项,我希望能得到某人的帮助。

谢谢

【问题讨论】:

    标签: opencv image-processing camera-calibration


    【解决方案1】:

    不,这些信息不足以找到帧之间的点对应关系。我将首先解释我认为您可以使用给定信息做什么,然后我们将了解为什么仅从 Essential 中获取像素到像素匹配是不可能的。

    • 你能做什么。对于一个点m,你可以通过使用基本矩阵找到m'所在的另一张图像上的线。假设您在问题中给出的 XX'(分别)投影到 mm'

      //K denotes the intrinsics matrix
      m=KX
      m'=KX'
      

      从你的方程式开始,我们有:

       X^{T}EX'=0  ==>  m^T K^{-T} E K^{-1} m' 
      

      矩阵K^{-T} E K^{-1},我们将注意到F,被称为基本矩阵,现在您在图像平面中的二维点之间有一个约束:

       m^TFm'=0
      

      请注意,mm' 是用齐次坐标表示的 3d 向量。这里要注意的有趣的事情是,Fm'm 位于第一张图像上的线(因为上面给出的约束只不过是mFm' 之间的点积)。同样,m^TF 是另一张图片上的线,m' 预计位于其中。所以,要找到m 的匹配项,您可以在Fm' 的附近进行搜索。

    • 为什么不能进行像素到像素匹配。让我们从直观的角度看一下约束xEx'=0 的含义。基本上,它说的是我们期望xx' 和基线T 是共面的。假设您修复了x,并且您寻找满足xEx'=0 的点。然后,虽然您图中的 x' 满足此约束,但每个点 n(从 y 重新投影)如下图所示也是一个很好的候选:

      这表明正确的匹配取决于您对x 深度的估计,而您没有。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-04-09
      • 1970-01-01
      • 1970-01-01
      • 2015-12-18
      • 2023-03-16
      • 2011-09-23
      • 1970-01-01
      相关资源
      最近更新 更多