我正在使用Caltech Toolbox进行相机校准 http://www.vision.caltech.edu/bouguetj/calib_doc/htmls/example.html 我不太确定我的结果的质量。由于大的重投影错误,我在开始时有大约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_left = [949.92127 946.43747]±[4.75903 4.44547]
主要观点:cc_left = [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]
第3次尝试:
焦距: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]
像素错误对于所有三次尝试大致相同:
错误= [0.24621 0.18013](遗憾的是我没有保存结果)
我的问题是:
我可以做些什么来改善我的结果?
一般来说,我能从校准中得到最好的结果(良好校准的最大不确定性/重投影误差应该是多少)?
谢谢!
答案 0 :(得分:0)
我认为你的校准效果很好。焦距变化是正常的。
您可以尝试将切向失真设置为零。这是当代相机的常见情况。对于该情况,甚至有一个校准标志CV_CALIB_ZERO_TANGENT_DIST。
如果您有高端相机和光学元件,您可以将原理点放在正中心。为此,您可以使用标志CV_CALIB_FIX_PRINCIPAL_POINT。如果我没记错的话,它的值取自传递的内在参数矩阵。
通常,使用3D校准对象而不是平面棋盘时,可以获得更准确的结果。
答案 1 :(得分:0)
我在硕士论文期间使用了caltech工具箱,并且使用良好的平面校准网格获得了更好的结果。
您确定您使用的图案是否真的是平面的?
它是印刷纸吗?
我建议您首先将校准网格连接到平面(金属一个是最好的解决方案,但也可以是木板),然后再次校准系统。
为了测量校准精度,您可以测量已知物体的大小(即长度)(例如,您知道实际测量的盒子长度,以米为单位),并将测量值与真实的。
还要注意,您必须校准由相机构成的整个空间,并且要测量的目标物体应位于您刚刚校准的相同空间体积中。
当然3D校准对象是最好的解决方案,但据我所知,没有现成的免费代码来管理它。