多语言展示
当前在线:1640今日阅读:152今日分享:13

双目标定:matlab自动标定相机参数方法

双目标定是立体视觉系统中的一个关键步骤,双目标定的目的是获取相机的内参和外参,外参包括旋转矩阵和平移向量;在进行双目标定时,有两种常见的数据库:matlab视觉处理库和opencv开源视觉库;通常matlab中标定的结果比较稳定,可以在matlab中标定之后再使用opencv标定;在matlab标定中,大家比较熟悉的是使用标定工具箱,一幅幅图像进行手动标定;这很耗时间;本经验主要介绍一下,使用Matlab中的函数进行一键自动标定双目相机参数。
工具/原料
1

双目标定图像

2

matlab标定工具箱

方法/步骤
1

打开matlab,输入命令:“stereoCameraCalibrator”,弹出标定窗口,将窗口上方Skew、Tangential Distortion以及3 Coefficients选项选中,将2 Coefficients选项去掉,如下图所示:

2

点击“Add Images”按钮,弹出添加对话框,输入左标定图像所在文件夹和右标定图像所在文件夹;并且输入棋盘格上每个格子所占的真实尺寸大小;如图所示:

3

选择好左右相机所在文件之后,点击确定按钮,系统会自动检测效果好的标定图像,并剔除效果不好的图像;如图所示:

4

点击“Calibrate”按钮,进行标定;窗口界面包含:标定的效果;或双目矫正结果;重投影误差柱状图:对于重投影误差较大的图像可以手动删除掉,然后重新标定;相机外参结构图;

5

点击“Exprot Camera Parameters”按钮,保存标定的参数数据;如图所示:

6

标定结果分析:对于双目标定数据,通常只需要得到:相机内参:Intrinsic Matrix;畸变:径向畸变+切向畸变;[k1,k2,k3,p1,p2]重投影平均误差;相机外参:旋转矩阵3*3 +平移向量3*1

注意事项

此工具箱优点就是可以自动进行标定;但标定结果对于图像的要求比较高,如果图像效果不好,标定所得到的结果用于立体校正的话会出现很大的偏差。 鲁棒性不如手动标定的好;

推荐信息