相机标定——MATLAB

    相机标定是计算机视觉中最基础的模块,要问我为什么要搞这个东西。我只能说这是作!业!  

    不说了,说多了都是泪

 

    用Matlab做相机标定,使用的是matlab提供的标定工具箱,需要下载,如果英文好可以看这篇文章,里面还提供了例子图片。

1. 启动标定的工具箱

    打开matlab,在进入工具箱目录,运行calib.m,有一个standard还有Memory efficient。当图像非常多时,需要选择第二种。

    我选择了Standard。

2. 选择图像载入

    我是将图片都放到了工具箱目录里面,在接着点击Image names按钮,之后就出现下面这样的情况了

    

    输入Image(<-因为这东西是文件的前缀),因为我们图片类型是.tif,因此再输入t

    如果这里出现了OUT OF MEMORY,RAM太小了。你可以选择memory efficient mode试试。。。

    标定后面的步骤就剩下grid corner extraction 以及 calibration

3. 提取角点

    点击xtract grid corners进行脚点的提取。

    接着你就要选择你要处理的图像,如果直接点击回车,他会选择所有的图像,如果你输入2 5 8 10 12,它会选出这几幅图像让你去处理。这里我的选择是直接回车,处理所有的图像。

    再接着,它会让你选择窗口的大小,这里默认使用了默认窗口的大小,即再次回车。具体发生的情况如下图:

    

 

    经过这些操作之后,我们要开始选择区域了

在这样选择好区域,matlab程序会询问你中间的角点是否与实际图像中的有变形,如果有进行调整。

    这边输入dx,dy=30 ......我也不知道为什么,文档里面就是这样,应该是实际的长度吧。输入后,图像里面会出现红色的十字点。这个是角点。看一下是否与实际图像中的角点一致,如果不对,输出除了[](就是Enter),如果不一致,就输入其他的,我输入了1....为了方便。 之后输入kc值来进行修改(first order lens distortion coefficient kc) 

    在取完所有角点之后,calib_data.mat文件会自动生成,还有什么文件会自动产生。具体的我不说了 

    再接着我们要进行最主要的标定过程,该步骤主要分为两个部分:first initialization以及接下来要做的nonlinear optimization 

    处理了几张以后以后应该可以按clibration按钮了吧,这个主要是在处理first initialization的步骤

    再接着按reproject on image 会出现以下几个图

    在这些操作都做完以后,可以直接点击alibration进行标定

未完待续……

转载于:https://www.cnblogs.com/carels/p/5528231.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值