一、BA问题(本质:最小化重投影误差)
- 束调整(BA)是SaM的关键组成部分,几乎总是作为SaM的最后一步使用。
-
这是一个三维结构和观察参数(相机姿态、内部校准和径向畸变参数)的优化问题,这些参数同时被优化以最小化重新投影误差。
-
BA是假设零均值高斯图像噪声的ML估计量。
-
BA归结为一个非常大的非线性最小二乘问题,通常用Levenberg-Marquardt(LM)算法求解。
-
Std-LM涉及线性系统的重复解,每一个线性系统具有O(N3)时间和O(N2)存储复杂度。
-
LM需要求解的线性系统具有稀疏块结构。
-
这是因为某个点在某个相机上的投影不依赖于任何其他点或相机的参数。
-
一种处理BA的方案,它利用稀疏性来节省大量的计算量。一个ANSI C软件库(称为sba)实现了这个方案,并已在GNU GPL下公开提供。
二、BA迭代
- n个三维物点,围绕这些点拍摄m张照片,第j张图片上看到的第i个物点为Xij。更具体的说:每个相机j用向量aj表示,每个三维物点i用向量bi表示。则BA核心问题即为:
其中,是点i在图像j上的预测投影。函数d(x,y)表示观测的图像坐标与预测图像坐标间的欧氏距离。若点i在图像j中可见,则=1。
2.用向量P代表m个投影矩阵和那个三维物点所有参数:
用向量X表示所有图像内所有物点观测坐标:
3.利用投影关系X‘=f(P)。每组参数的预测向量为:
其中