Camera 摄像机校准-结果是否足够?

Camera 摄像机校准-结果是否足够?,camera,camera-calibration,calibration,reprojection-error,Camera,Camera Calibration,Calibration,Reprojection Error,我正在用加州理工学院工具箱校准我的相机 我也不太确定我的结果的质量。我在开始时有大约40幅图像,在校准过程中由于重投影错误而下降了大约10幅。我将相机安装在三脚架上,并将棋盘放置在某个位置以避免运动模糊。我把焦距调整到最大 我想重投影误差看起来不错,但焦距、主点和失真的不确定性让我头疼。虽然给出的不确定度应该是标准偏差的3倍,因此涵盖了99%假设正态分布的可能偏差,但我的结果变化更大。以下是我从校准中得到的信息: 第一次尝试: 焦距:fc=[952.67300 952.58901]±[3.186

我正在用加州理工学院工具箱校准我的相机 我也不太确定我的结果的质量。我在开始时有大约40幅图像,在校准过程中由于重投影错误而下降了大约10幅。我将相机安装在三脚架上,并将棋盘放置在某个位置以避免运动模糊。我把焦距调整到最大

我想重投影误差看起来不错,但焦距、主点和失真的不确定性让我头疼。虽然给出的不确定度应该是标准偏差的3倍,因此涵盖了99%假设正态分布的可能偏差,但我的结果变化更大。以下是我从校准中得到的信息:

第一次尝试:

焦距:fc=[952.67300 952.58901]±[3.18678 3.24121]

主要点:cc=[641.33128 339.39042]±[2.07428 2.53779]

kc=[0.16627-0.28830-0.00118-0.00074 0.00000]±[0.00554 0.00979 0.00093 0.00076 0.00000]

第二次尝试:

焦距:fc_左=[949.92127 946.43747]±[4.75903 4.44547]

主点:cc_左=[642.39817 345.69787]±[2.95598 4.19728]

kc=[0.13925-0.23895 0.00141-0.00062 0.00000]±[0.00319 0.00490 0.00054 0.00041 0.00000]

第三次尝试:

焦距:fc=[949.55376 948.31960]±[1.87647 1.73045]

主要观点:cc=[644.32264 342.15631±[1.19304 1.89943]

变形

kc=[0.15587-0.26060-0.00010 0.00018 0.00000]±[0.00350 0.00612 0.00061 0.00044 0.00000]

三次尝试的像素错误大致相同:

err=[0.24621 0.18013]很遗憾,我没有保存结果

我的问题是:

我能做些什么来提高我的成绩

一般来说,我能从校准中得到的最好结果是什么?良好校准的最大不确定度/重投影误差应该是多少


谢谢!

我认为你的校准看起来不错。焦距变化是正常的

您可以尝试将切向失真设置为零。这是当代相机的常见情况。这种情况下,CV_CALIB_zero_TANGENT_DIST甚至有一个校准标志

如果你有一个高端相机和光学元件,你可以把主点放在最中间。为此,你可以使用标志CV_CALIB_FIX_PRINCIPAL_point。如果我没记错的话,它的值是从传递的内在参数矩阵中获取的


一般来说,使用三维校准对象而不是平面棋盘时,可以获得更精确的结果。

我在硕士论文中使用了加州理工学院工具箱,使用良好的平面校准网格可以获得更好的结果

你确定你使用的图案是平面的吗? 是印刷纸吗

我建议您首先将校准网格连接到平面,金属网格是最好的解决方案,但木板也足够,然后再次校准您的系统

为了测量校准精度,您可以测量已知对象的尺寸,即长度,例如,您知道实际测量值(以米为单位)的盒子的长度,并将测量值与实际值进行比较

还要注意的是,您必须校准相机所框定的整个空间,并且要测量的目标对象应位于您刚刚校准的相同空间体积中

当然,3D校准对象是最好的解决方案,但据我所知,没有现成的免费代码来管理它