我正在使用matlab制作简单的图像拼接脚本。我现在的代码采用有序的图像序列(I0 I1 I2 I3 ...)。对于每个图像,我提取SIFT描述符并在每个图像对之间匹配它们。 (找到I0-I1和I1-I2之间的匹配...)。我使用ransac来计算内部并在每对之间拟合Homography。 (H01 => I0-I1)。然后我将图像拼接在一起,I0与I1然后(I0I1)到I2,依此类推。 (基本全景制作我猜)。
但是,现在我想尝试实现光束调整以校正整个图像中的投影误差。我在Szeliski计算机视觉书中已经阅读了关于束调整的内容(但我发现它更多关于3D重建中的BA,我不知道如何在2D图像拼接中使用它)。然后我也看了this paper。
我不知道从哪里开始,论文使用更复杂的拼接和所有关于相机模型的讨论有点令人困惑,因为我无法将这些讨论连接到我的简单应用程序。有人可以帮助我开始这个吗?或者指向一些更合适的材料,在简单的全景制作中应用束调整?我需要做的伪代码也很有帮助。
答案 0 :(得分:2)
我认为你已经尝试了前两个步骤,现在第三步是通过捆绑器进行改进。我强烈建议您阅读Hartley Zisserman的书,多视图几何,附录6.提供清晰的伪代码,用于基于LM的最小二乘估计,以便进行错误优化。
现在针对您的问题,您正在尝试优化单应性以获得更好的匹配。因此,您的错误是光度误差,类似于x1'Hx2。本案例也在附录中提供。