MVG学习笔记(5) --四视图几何和n视图重建

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/YuYunTan/article/details/83501064

四视图几何和n视图重建

  可以使用基于张量的方法再进行一步,并定义四个视图中可见的四焦点张量相关实体。 然而这种方法很少使用,因为计算符合其内部约束的四焦点张量的相对困难。

  然而,它确实提供了基于四个视图计算投影重建的非迭代方法。 然而,张量方法不会扩展到超过四个视图,因此从四个以上的视图重建变得更加困难。

  从几种观点考虑了许多方法进行重建,我们考虑了其中的一些方法。 一种方法是使用三视图或双视图技术逐位重建场景。 这种方法可以应用于任何图像序列,并且在选择要使用的正确三元组时要小心,但是它通常会成功。

  有些方法可以在特定情况下使用。 如果我们能够应用更简单的相机模型(称为仿射相机,affine camera),则重建的任务变得更容易。 每当到场景的距离与场景的背面和正面之间的深度差异相比较大时,该相机模型就是透视投影的公平近似。

  如果在涉及仿射相机的所有 n n 个视图中都可以看到一组点,那么可以使用众所周知的算法(因式分解算法,factorization algorithm)来计算场景的结构,以及使用在一个步骤中使用奇异值分解得到的特定相机模型。

  该算法非常可靠且易于实现。 它的主要困难是使用仿射相机模型,而不是完整的射影(投影)模型,以及要求所有点在所有视图中都可见。

  该方法已经在称为投影分解(projective factorization)的方法中扩展到投影相机。 虽然这种方法通常令人满意,但无法证明在所有情况下都能收敛到正确的解决方案。 此外,它还要求所有点在所有图像中都可见。

  用于 n n 视图重建的其他方法涉及各种假设,例如假设在所有视图中可见的世界中的四个共面点,或者在序列中的所有图像中可见的六个或七个点。 还开发了适用于特定运动序列的方法,例如线性运动,平面运动或单轴(转盘)运动。

  一般重建问题的主要方法是捆绑调整(bundle adjustment,BA)。 这是一种迭代方法,其中人们试图将非线性模型拟合到测量数据(点对应关系)。 BA的优点在于它是一种非常通用的方法,可以应用于广泛的重建和优化问题。 它可以用这样的方式实现,即所发现的解决方案是问题的最大似然解决方案,该解决方案在某种意义上就图像测量的不准确性的模型而言是最优的。

  不幸的是,BA是一个迭代过程,不能保证从任意起始点收敛到最优解。 大量对重建方法的研究,寻求易于计算的可用作BA的起点非最优解。 随后进行BA的初始化步骤是用于重建的通常优选的技术。

  一个共同的印象是BA必然是一种缓慢的技术。 事实是,当实现时会发现它是非常有效的,而且现如今很多SFM和SLAM领域采用了BA,以后有机会则弄个博文描述该技术。

  使用 n n 视图重建技术,可以从相当长的图像序列自动执行重建。 下图给出了一个例子,显示了700帧的重建。
在这里插入图片描述

图1,重建。 (a)手持相机在牛津街上行走时获得的700帧序列的七帧。 (b)(c)重建点云和摄像机路径(红色曲线)的两个视图。 图由David Capel和2d3(www.2d3.com)提供。

猜你喜欢

转载自blog.csdn.net/YuYunTan/article/details/83501064