MATLAB双目摄像头标定教程:棋盘图与参数提取

需积分: 33 49 下载量 33 浏览量 更新于2024-09-10 收藏 746KB PDF 举报
双目摄像头标定是一种在计算机视觉领域中常用的技术,用于精确地获取并同步来自两个或多个摄像头的深度信息,从而实现三维空间的重建。本文将详细介绍如何利用MATLAB工具箱进行双目摄像头的标定过程。 首先,准备工作是至关重要的。你需要下载名为TOOLBOX_calib的工具箱,这个工具箱在网上能找到,便于安装和使用。工具箱包含一系列函数和界面,帮助用户处理图像数据和执行标定步骤。 标定步骤如下: 1. 准备棋盘图:在MATLAB环境中,将预先准备好的棋盘图案放置在.m文件所在的目录下。为了便于识别,建议将一类棋盘图命名为“right”,另一类为“left”,以便后续确定摄像头的左右位置。确保棋盘图占据图片的大部分,以便获取更准确的畸变信息。 2. 调用标定界面:通过在MATLAB命令行窗口输入`calib_gui`,选择Standard模式,系统会打开一个用于标定的图形用户界面。在这个界面上,你需要输入右摄像头下的图片文件名(如right1、right2等)和格式。 3. 标定右摄像头:首先从右摄像头采集的棋盘图片被导入,系统会自动读取并显示。通过`Extractgridcorners`功能,用户可以设置角点搜索窗口的大小,注意不要过大也不要太小,以保证角点的准确提取。 4. 提取角点:依次对每一幅图像提取角点,程序会自动检测并匹配棋盘的角点。在提取第一幅图时,需根据实际情况输入或确认棋盘格子的尺寸,这是标定过程中确定空间尺度的关键步骤。 5. 重复提取和标定:完成右摄像头的角点提取后,继续用同样的方法处理左摄像头的图片,最后回到calib_gui界面,点击Calibration进行双目摄像头的联合标定。这个过程可能需要多次迭代,直至得到满意的内外参数,包括相机的焦距、主点坐标、畸变系数等。 标定完成后,你将获得一组参数,它们能用于校正双目摄像头的图像,消除视差误差,并通过计算深度信息,为机器视觉、增强现实、三维重建等应用提供精准的数据支持。如果在测试过程中发现左右摄像头图像不对称,可能是标定方向错误,只需调整参数即可。
2014-12-15 上传
各标定步骤实现方法 1 计算标靶平面与图像平面之间的映射矩阵 计算标靶平面与图像平面之间的映射矩阵,计算映射矩阵时不考虑摄像机的成像模型,只是根据平面标靶坐标点和对应的图像坐标点的数据,利用最小二乘方法计算得到[ [ix] ] .2 求解摄像机参数矩阵 由计算得到的标靶平面和图像平面的映射矩阵得到与摄像机内部参数相关的基本方程关系,求解方程得到摄像机内部参数,考虑镜头的畸变模型,将上述解方程获 得的内部参数作为初值,进行非线性优化搜索,从而计算出所有参数的准确值 [[x] ] .3 求解左右两摄像机之间的相对位置关系 设双目视觉系统左右摄像机的外部参数分别为Rl, Tl,与Rr, Tr,,即Rl, Tl表示左摄像机与世界坐标系的相对位置,Rr, Tr表示右摄像机与世界坐标系的相对位置 [[xi] ]。因此,对于空间任意一点,如果在世界坐标系、左摄像机坐标系和右摄像机坐标系中的坐标分别为Xw,, Xl , Xr,则有:Xl=RlXw+Tl ;Xr=RrXw+Tr .因此,两台摄像机之间的相对几何关系可以由下式表示R=RrRl-1 ;T=Tr- RrRl-1Tl 在实际标定过程中,由标定靶对两台摄像机同时进行摄像标定,以分别获得两台摄像机的内、外参数,从而不仅可以标定出摄像机的内部参数,还可以同时标定出双目视觉系统的结构参数 [xii] 。由单摄像机标定过程可以知道,标定靶每变换一个位置就可以得到一组摄像机外参数:Rr,Tr,与Rl, Tl,因此,由公式R=RrRl-1 ;T=Tr- RrRl-1Tl,可以得到一组结构参数R和T