飞道的博客

基于MATLAB的单目摄像机标定

369人阅读  评论(0)

1、前言

最近接触了摄像机标定实验,感觉还挺有意思,操作也不难,因此借此篇文章记录分享一下怎么使用MATLAB工具箱进行单目摄像机标定。

2.准备工作

这里我们是基于MATLAB的单目摄像机标定,因此需要用到MATLAB环境,这里我使用的是MATLAB R2017a版本。本次实验还需要用到下图中的工具箱toolbox-calib。
百度网盘下载链接:工具箱
提取码:vinc

我这里使用MATLAB2017版本,其他版本应该也都兼容这个工具箱,所以大家自行下载操作就可以。

3.标定过程

1.标定准备阶段

1、下载好工具箱之后,可以将其解压到任何一个固定的位置,我这里解压放在matlab的文件夹里面。

2、打开matlab后,点击设置路径

3、添加工具包文件
点击添加文件夹,此时找到TOOLBOX_calib这个文件夹,然后将文件添加进去,最后保存关闭。

4、导入标定图片
这里我将需要标定的图片存在D盘的JQimage_R这个文件里面,然后打开matlab之后,将文件目录点位到要标定的图片集目录下面。如下图:

2.标定操作步骤

1、以上操作完成后,此时在命令行输入calib,就会弹出标定的界面,该界面有两个选项,我选择的是第一个(差别不大,区别就是括号里的意思)。

2、点击以上选项之后,就会出现下面图一所示窗口,然后点击下面箭头指向的选项,就会出现图二箭头指向的信息,这行信息是要求输入图片的名字,从上面导入的标定图片可以看到我这里图片名都是Image,输入之后回车,就会出现另一方信息,这是让输入图片格式的,我这里格式都是tif。

3、接下来,选择以下图一所示读取图片选项框,然后读取图片后会弹出如下图二预览图片框。


4、然后我们直接点击第三个选项框进行角点提取,点击之后命令提示行就会出现对图片进行处理,括号里面是默认全部,因此我们这里就默认,敲回车就可以。回车之后,就会出现角窗选取,我这个版本角窗默认是5X5的,可以先拿默认的操作。我这里是拿默认的角窗大小进行操作的。后面存在误差时,再进行误差校正。因此这里面就都进行回车就可以。

5、接着上述操作后就会弹出图片框,此时鼠标就会变成一个黑色十字标,尽量把这个界面全屏进行操作,提高角点标定的精准度。这是第一张图片角点提取,按顺时针或者逆时针顺序对次外层角点进行依次提取。提取结束之后回车,继续提取下一张图片,以此类推将所有图片都提取完成。

我这里是20张图片,此时提取完成后,命令提示行显示如下:

6、提取完成之后,进行标定,点击以下图一选项框开始标定(点击之后,就不用管,会自动进行标定并得到数据)。自动标定结束之后就会出现图二的相关数据以及误差。


7、由以上操作6中的图二中数据可知存在误差的大小,接下来就需要进行误差分析啦!点击以下选项。

然后就会出现如下图所示的数据分析图:

此时我们可以看出粉红色和绿色的分布误差很大,不集中,此时用十字叉去任意点击一个粉红色或者一个绿色的加号(不管点击谁,后面都要依次对这些误差大的图片,进行再次提取标定),然后命令行就会出现相应图片号码以及具体错误量。这里我点击了粉红色的。

8、此时先点击以下选项将前面得到的数据保存。只有保存后才能更好的继续下面的操作。

3.误差分析调整

1、紧接着上述操作然后我们点击重新提取选项框,对粉红色的18号图片重新进行提取。

之前角窗是默认的5x5的,这里设置为6x6。回车后输入图片号,然后后面一行随便输入一个值。


2、重新提取然后标定后,点击分析,可以发现粉红色的分布稍微有一点变化,但变化不大,说明还存在一定误差。然后这里我有反复粉红色进行重复标定,可是如下图所示还是很发散,然后我们就先再去修正重新标定其他图片。记住每次标定结束后需要保存一下之前数据哈~

3、此时再重复提取标定另一个图片,然后尝试将误差err减小。这里我是对绿色15号图片进行重复提取标定的结果。明显可以看出绿色的标收敛了很多。

4、就这样依次对上面分散的图片进行重新提取标定,后来我又对粉红色进行了多次重现提取标定,得到如下图所示:


5、此时你会发现,用不同的数据反反复复标定,始终粉红色是发散的无法聚集,此时我们可以将这个误差很大的图片删除处理。

这里输入需要删除的图片号。

删除之后分析得到数据如下:

此时误差也减少很多:

6、此时点击以下选项框,外参就以3D的形式显示出来。

外参3D显示图:

7、点击以下选项框查看相关数据:

4、结语

本篇文章是对自己做实验的一次记录,可能实验结果误差很大,因为手动标定可能不是很细节,但是整体摄像机单目标定操作流程如此所示。
如有存在不足之处,还请指正!

以上操作环境为 MATLAB R2017a哈~


转载:https://blog.csdn.net/m0_56817529/article/details/127819167
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场