【问题标题】:Epipolar lines with known rotation and translation具有已知旋转和平移的极线
【发布时间】:2013-07-29 16:49:15
【问题描述】:

我想计算两幅图像之间兴趣点的核线。我正在研究喷泉数据集,所以我有旋转和平移矩阵,以及相机矩阵。我目前使用 Matlab 以提高速度,但我拥有的版本相当旧(2009 年)。

我通过 E=t*R 计算基本矩阵,然后计算 l=E*P 的极线,其中 P 是兴趣点/兴趣点集。然后我得到一个包含三行的向量,我猜是 ax+by+c=0 的行参数。右图绘制的极线是完全错误的,与左图的点相距甚远。有什么想法???

编辑:使用的数据集 --> 喷泉基准,图像 0000 和 0001 http://cvlabwww.epfl.ch/~strecha/multiview/denseMVS.html

输出:基本矩阵,例如对于点 P1=[433.36;861.15;1]

E =

0.761857065048902  1.969487475012598 40.418915885686594

-0.927781947178923 0.698934833377211 33.173562943087106

-45.044061511303227 -26.573128396975097 1.000000000000000

它有两个共轭的复特征值。

极线:1.0e+004 *

0.206660143270238 0.023299771007641 -4.240274401559348

【问题讨论】:

  • 您遇到的问题可能由多种原因引起:不理解概念、在 Matlab 中使用错误的操作、质量差的图像等。提供您正在处理的示例(代码、图像、输出等)肯定会有所帮助。如果您的问题在我下班时仍未解决,我会尽力提供一个可行的解决方案。
  • 谢谢!你说的对。问题已编辑。

标签: matlab computer-vision


【解决方案1】:

我终于找到了解决问题的方法。我把它贴在这里以防其他人感兴趣。

要正确计算相对旋转和平移矩阵,必须使用 Roto-Translation 矩阵。该矩阵是每个图像的 4x4 矩阵。左上部分是旋转(世界坐标系),第4子列是平移向量(世界坐标系),最后一行是[0 0 0 1]。因此,如果我们有 2 个这样的矩阵用于 2 个图像,则最终的旋转平移矩阵是 Qright-->left=inv(Qright)*Qleft。从这个矩阵中,我们提取相对平移 (t) 和旋转 (R)(分别为第 4 个子列和左上角矩阵)。然后,我们创建用于平移的斜对称矩阵 T。对极矩阵是 E=R*T。但这还不够。为了正确计算极线,必须找到基本矩阵 F。对于给定的数据集,例如我使用的数据集,给出了相机矩阵 K,因此这很容易:F=inv(Kright')*E*inv(Kleft),其中 (') 是转置矩阵,inv 是倒置矩阵。然后,右图的核线计算为lines=F*P,其中P为齐次坐标中的点。

谢谢!

【讨论】:

    【解决方案2】:

    可以在网上找到很多解释核几何以及如何在立体图像中找到核线的文档。这里是one。它体面地引导您了解不同的概念。我发现这个话题的诀窍是跟踪变量,这些变量最终是矩阵变换和隐含(教授快捷方式)代数运算的结果。

    我的建议是查看我提供的链接的第 12 页并将其应用到您的场景中。 除了您提供的描述之外,如果没有任何数据可供参考,就不可能解决问题。

    祝你好运。

    注意:很遗憾听到您的 Matlab 版本过旧。我知道 2013 已经为这些东西内置了函数,但我不确定 2009 是否这样做,因为 MathWorks 需要一个帐户才能阅读旧文档。

    【讨论】:

    • 谢谢!是的,我已经查阅了数百万本极线几何手册。问题是我在实施过程中做错了什么。您可以检查上面的编辑。
    • 我知道在 MATLAB 2013 中,您可以使用现成函数计算所有这些东西,无论如何我也应该尝试这种方式。
    • 好的,我还在研究这个问题。我猜这是我在 E=t*R 中提供的旋转和平移矩阵的问题。我使用的数据集包括一些 .camera 文件,这些文件提供了有关 R 和 t wrt 世界参考系统的信息。现在,我必须找到相机之间的相对平移和旋转。我像这里的第二个答案stackoverflow.com/questions/12283501/… 一样做到了,但我仍然没有得到好的结果。有什么建议吗?
    猜你喜欢
    • 2014-07-01
    • 2013-05-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-19
    相关资源
    最近更新 更多