您的位置:首页 > 编程语言 > MATLAB

三维重建学习之旅(四)相机标定之(3)Matlab Calibration

2016-06-28 10:34 585 查看
上篇博客笔者大体上介绍了张正友标定的相关理论基础和数学框架,解决了学习之旅(二)中的问题:

原理是什么?

这篇博客具体介绍我们如何使用Matlab来对相机进行标定。

   Matlab Calibration

参考一位外国大神写的资料和工具

在此我结合个人使用过后的理解,对此工具做一些介绍;

首先下载toolbox_calib.zip,在上面超链接中有下载链接;解压之后放在工作目录下,同时跟随【此链接】进行标定,叙述很详尽;

笔者简述使用过程:

1  启动标定工具箱

将解压后的文件和标定图放在同一目录下,将该目录添加到Matlab的搜索路径中;


 

运行calib.m,选择图像载入模式(Standard);



以Standard为例(图像量大且多时选择第二种);



2  载入图像



进入图像所在目录,然后点击Image names按钮;
第一行输入标定图的前缀,第二行是选择图片的后缀名;



3 圈定标定板局域,对标定板进行角点检测
点击Extract grid corners按钮;



看命令窗口,第一行(Number of image to process)直接按回车,默认所有image;
下面弹出的winx和winy是设置我们在以下圈定标定板时,四个角的大小;
设置后按回车,在弹出的窗口指定角点区域;


    


后在命令行中设置棋盘中每个格子的边长;



笔者用的标定板每个格子2cm,后回车;





至此对第一张图的操作结束,以下就是循环对剩下的图提取角点。

4 标定
在所有的图档都已经角点提取完毕之后,点击Calibration进行标定;



5 说明
标定结束后,对剩下的几个按钮说明;
Show Exerinsic按钮(模拟每幅图像采集时的相对相机的位置角度)



Analyse error按钮(展示角点误差分布,用鼠标左键点击后,在命令窗口可直接显示该点信息)



Recomp.Corners按钮(重置winx与winy以提高精度)



Add/Suppess Image按钮(增加更多的图片或去除误差较大的图片)



Calibration必须后按Save按钮后进行保存



Load按钮,很明显是load之前标定过的数据

下面对标定出来的数据说明:



Focal Length :相机的焦距;
Principal point :就是先前博文中的V0、U0成像主点;
Skew与Distortion :径向和切向畸变参数;
Pixel error:像素差错。

至此对单相机标定就告一段落,可能会有疑问,做了很多的目的是什么?
里面的东西理论比较多,笔者才疏学浅,解释不会详尽,为了让读者对重建有大体的了解,笔者在自己的分享资源中上传了中南大学的一篇论文。
笔者认为阅读以后会对学习三维重建会有很大帮助,不仅仅是此论文,拜读其他关于此的论文也很重要。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: