为啥用非线性LM方法优化相机标定

先说为什么要迭代。
为的是得到a closed-form solution。因为求解相机的内外参数是分步求解的,先求解一部分,然后再求解另外一部分。这样就会导致后边求解的参数依赖于前边求解的参数,后边求解的参数的精度不如求先求解的参数。使用迭代的原因就是为了集体调整这些参数,让他们的精度整体上都有一定的提升。优化普遍见于各种线性、非线性问题的求解,如PnP、三维重建、BA等等。BA经常用于各种视觉问题的最后一步,这一点类似于LM常用于非线性问题的最后一步骤。
然后说为啥是非线性。
镜头的畸变模型,如布朗模型,是非线性的,需要使用非线性优化。虽然如果把求解的理想点和畸变点放在方程里,可以使用线性最小二乘得到畸变参数中的k1,k2。然而对于一个a closed-form solution,这样的假设是不成立的。那是一个非线性函数,需要使用非线性优化,详细参见参考文献1中的第三页Dealing with radial distortion
Zhang Z. Flexible camera calibration by viewing a plane from unknown orientations//Computer Vision, 1999. The Proceedings of the Seventh IEEE International Conference on. Ieee, 1999, 1: 666-673.

■网友
1.为什么用非线性LM方法优化相机标定?
因为相机的畸变模型是非线性的, 也就是一个非线性函数, 在偏微分后,就可以使用LM方法求解了。
2.使用非线性方法一定能得出误差更小的模型么?请问有没有理论依据。
【为啥用非线性LM方法优化相机标定】 这一点是看你的残差方程表示的什么意思, lm就优化的什么东西, 一定能得到误差更小的模型吗? 未必,非线性优化模型需要初值, 得到的结果是局部最优,在不存在不收敛的情况下,一般可以得到误差更小的结果。


    推荐阅读