具体步骤如下
-
运行matlab后,打开APP栏。
-
在APP中找到Camera Calibrator工具并打开。
-
点击添加图片
-
这里我随机打开了一组实现拍好的照片,注意照片尽量不要出现模糊,反光等问题。
-
输入标定棋盘格大小,我用的是边长为40mm,这里我修改为40
-
点击Option,在弹出的串口中选择如下几个选项。选用二系数是因为三个系数的标定结果不稳定。然后需要计算其切向畸变(这里默认skew为0)。然后点击Calirate
-
下图为得到标定结果,中间部分显示检测出的角点。右侧分别是误差分布和空间分布。
8. 误差分布反应了标定过程中每张图片的投影误差,我们选择误差较大的几个直接delete即可。(一般来说平均误差小于0.2即可满足要求)
9. 导出标定参数并保存。
10. 下面是得到的标定参数。
TangentialDistortion两个参数分别对应p1和p2。
RadialDistortion中的两个参数分别对应k1和k2,这里k3=0.
opencv中内参矩阵与matlab对应如下
fx | 0 | 0 |
---|---|---|
0 | fy | 0 |
cx | cy | 1 |
END