内部校准参数的验证

Validation of intrinsic calibration parameters

验证相机校准的标准方法是计算检测点与图像中重新投影的相应世界点之间的距离,此过程验证内部参数和外部参数

现在可以通过捕获线条图像然后对图像进行去畸变并测量线条现在是否为直线来验证非线性失真参数的准确性。

有没有办法验证与外部参数分开的线性内部参数(光学中心、焦点、偏斜)的准确性?

这很棘手,如果您需要高水平的准确性,则往往 非常 棘手。问题是所有内在参数都耦合在重投影误差中。

为了让您了解所涉及的困难,请考虑主要观点的情况。可以证明,针孔相机的主点是三个独立消失点组成的三角形的重心。这似乎暗示了一种独立于其他内在参数对其进行验证的程序:拍摄一张或多张图像,共同显示三支或多支平行线,检测并建模所述线束,估计它们的消失点等。但是,要精确地对检测到的线进行建模,因此您可以将它们相交以找到消失点,您需要准确地消除图像的失真 - 你猜怎么着,非线性镜头失真的中心通常被主点近似,所以你的 "verification" 过程最终使用与您尝试独立验证的完全相同的估计参数。

您可以尝试通过使用非线性失真的替代非参数模型来解决上述困难 - 例如,使用仅取决于线性偏差的成本函数从网格构建的薄板样条 -正如你所建议的。再一次,想出这样一个无偏的成本函数是很棘手的:简单的线性最小二乘法拟合直线是行不通的,因为线点的失真图像通常 not i.i.d。关于底层未失真线。所以你需要为每一行使用一个 "local" 模型,通常是一个低阶多项式。

最后,你最好接受参数(内在和外在)是耦合的​​,并简单地将你的验证基于你实际应用的输入输出需求:确定什么是可接受的 RMS图像区域上的重投影误差,然后使用已知校准对象的独立图像集,这些图像以某种方式模拟对您的应用程序很重要的 3D 场景的属性,然后重新投影它的点并验证您得到的错误是否可以接受。