双目相机标定理论总结
一、双目相机标定简介
双目相机标定包含两个部分内容
1)两台相机各自内参和畸变系数的标定(单目标定)
2)两台相机之间相互位置的标定(双目标定)
提问:为什么要进行双目标定?
因为在许多三维重建算法中,我们都要知道两台相机之间的相对位置关系,这样才能进行距离计算。
双目标定前后,双目模型对比如下图所示:
图1 标定模型
一些名词概念:
基线:两个光心的连线称为基线;
极平面:物点(空间点M)与两个光心的连线构成的平面称为极平面;
极线:极平面与成像平面的交线
极点:极线的一端,基线与像平面的交点
像点:极线的一端,光心与物点连线与像平面的交点;
可以看出:
校正前,相机的光心不是相互平行的
校正后,极点在无穷远处,两个相机的光轴平行,像点在左右图像上的高度一致
标定+校正后图片:
图2 立体校正后左右相机图像发生一定扭曲
这样做的好处是:比如后续的立体匹配时,只需在同一行上搜索左右像平面的匹配点即可,能使效率大大提高。所以,我们要知道右相机相对于左相机的位姿关系,那我们才可以做校正。
二、单目相机标定理论
1、相机成像原理
相机成像系统中,共包含四个坐标系:世界坐标系、相机坐标系、图像坐标系、像素坐标系。
这四个坐标系之间的转化关系为:
其中, (U,V,W)为在世界坐标系下一点的物理坐标, (u,v)为该点对应的在像素坐标系下的像素坐标, Z为尺度因子。
我们将矩阵:
称为相机的内参矩阵,内参矩阵取决于相机的内部参数。其中, f为像距, dX, dY分别表示X,Y方向上的一个像素在相机感光板上的物理长度(即一个像素在感光板上是多少毫米), u0,v0 分别表示相机感光板中心在像素坐标系下的坐标, θ 表示感光板的横边和纵边之间的角度( 90°表示无误差)。
我们将矩阵: 称为相机的外参矩阵,外参矩阵取决于相机坐标系和世界坐标系的相对位置, R表示旋转矩阵, T表示平移矢量。
即单点无畸变的相机成像模型如下:
相机标定的目的其实很简单,我们要想对一个成像系统建模,进而进行相应的计算,所必须的参数就是相机的内参矩阵: 和相机的外参矩阵
,因此,相机标定的第一个目的就是获得相机的内参矩阵和外参矩阵。
2、畸变与畸变矫正
另外,相机拍摄的图片还存在一定的畸变,畸变包括桶形畸变和枕形畸变。畸变模型包括径向畸变和切向畸变。
畸变公式(3阶)如下:
其中,分别为理想的无畸变的归一化的图像坐标、畸变后的归一化图像坐标, r为图像像素点到图像中心点的距离,即
相机标定的第二个目的就是获得相机的畸变参数,如上式中的 k1, k2, p1, p2等,进而对拍摄的图片进行去畸变处理。
3、张正友标定法
张正友标定法利用如下图所示的棋盘格标定板,在得到一张标定板的图像之后,可以利用相应的图像检测算法得到每一个角点的像素坐标 (u,v)。
张正友标定法将世界坐标系固定于棋盘格上,则棋盘格上任一点的物理坐标 W=0,由于标定板的世界坐标系是人为事先定义好的,标定板上每一个格子的大小是已知的,我们可以计算得到每一个角点在世界坐标系下的物理坐标 (U,V,W=0)。
我们将利用这些信息:每一个角点的像素坐标 (u,v)、每一个角点在世界坐标系下的物理坐标 (U,V,W=0),来进行相机的标定,获得相机的内外参矩阵、畸变参数。
3.1标定相机的内参矩阵和外参矩阵
张正友标定法标定相机的内外参数的思路如下:
1)求解单应矩阵;
2)求解内参矩阵;
3)求解外参矩阵;
4)极大似然估计优化;
3.1.1 求解单应矩阵
棋盘平面和成像平面间的单应
将一个平面映射到另一个平面,将棋盘格所在的平面映射到相机的成像平面,则有
p = HP ①
双目相机标定理论总结相关推荐
- 一文详解双目相机标定理论
01 前言 双目相机标定,从广义上讲,其实它包含两个部分内容: 两台相机各自误差的标定(单目标定) 两台相机之间相互位置的标定(狭义,双目标定) 在这里我们所说的双目标定是狭义的,讲解理论的时候仅指两 ...
- 相机标定和双目相机标定标定原理推导及效果展示
文章目录 前言 一.相机标定 1.相机的四个坐标系 2.相机的畸变 二.张正友标定法 1.求解内参矩阵与外参矩阵的积 2.求解内参矩阵 3.求解外参矩阵 4.标定相机的畸变参数 5.双目标定 6.极线 ...
- matlab鱼眼镜头,普通镜头,单目双目相机标定校正(四)
写这篇文章的目的,是记录相机标定过程和问题,经过试验,记录问题 1.单目相机与双目相机的标定.区别.目的 2.相机拍照时,距离标定板的距离 3.填写参数时.黑白格的大小有影响? 4.参数的设置 5.拍 ...
- OpenCV | 双目相机标定之OpenCV获取左右相机图像+MATLAB单目标定+双目标定
博主github:https://github.com/MichaelBeechan 博主CSDN:https://blog.csdn.net/u011344545 原本网上可以搜到很多关于双目相机标 ...
- matlab双目相机标定校正_基于双目视觉的无人机避障算法(一)
讲述在10月到12月所做的所有工作 对于一个无人机自主避障来说,存在着以下流程: 感知:障碍物检测.行人检测.目标检测 SLAM:为无人机提供位置估计,构建稀疏环境地图 路径规划:规划一条从当前位置到 ...
- Python实现的双目相机标定系统
Python实现的双目相机标定系统 主要是求基础矩阵来确定两个相机坐标系之间的旋转和平移,继而实现双目相机拍摄图片之间的对齐(校正). copyright@Eason 文末有代码链接. Require ...
- 相机标定的意义,单目相机和双目相机标定注意事项
本博客解释了相机标定的意义,单目相机和双目相机标定注意事项.对单目相机标定时物体距离相机位置不同,需要在不同位置进行标定做了解释. 坐标转换 像素坐标.相机坐标.世界物理坐标之间的坐标转换条件 相机标 ...
- 双目相机标定以及立体测距原理及OpenCV实现
转载 双目相机标定以及立体测距原理及OpenCV实现 http://blog.csdn.net/dcrmg/article/details/52986522?locationNum=15&fp ...
- MatLab的双目相机标定和orbslam双目参数匹配
本文承接ROS调用USB双目摄像头模组 目录 相机标定 导出为YAML文件(也可以手动粘贴) 生成可用于ORB-SLAM2的yaml文件 生成可用于ORB-SLAM3的yaml文件 2022.5.6补 ...
最新文章
- 生态伙伴 | Canva上线飞书应用目录,帮你零门槛轻松做出大师级设计!
- play mysql_play framework 2.0 使用 mysql
- postman设置带token的请求
- Druid 配置_LogFilter
- AxWebBrowser打开本地文件
- “打”遍全球!支付宝重磅新功能上线...
- 利用python进行数据分析——第十四章_数据分析案例
- python判断日期为第几天_python怎么判断某一天是一年中的第几天
- K-Means原理及代码实现
- 经典排序算法(四)--基数排序Radix Sort
- mybatis与hibernate的区别及各自应用场景
- 通信技术属于计算机相关专业吗,通信技术属于计算机类专业吗
- 软考答题卡如何填写,这些你都清楚吗?
- 杭州电子科技大学acm-2001
- Linux共享内存使用常见陷阱与分析
- 在c语言中1和0的意思,!1在c语言中是什么意思?
- java rectangle获取xy_Day06 Java基础学习笔记
- Oracle EBS Interface/API(35) -创建供应商地点API
- 羊皮卷二我要用心中的爱来迎接今天(中英对照)
- 计算机科学速成课笔记(六):计算机的未来
热门文章
- vscode win10笔记本 蓝屏_Win10下为VSCode配置LaTex编辑器的方法
- 如何搭建知识付费平台
- 网易易盾验证码移动端迎来新版本 开始支持智能无感知验证 1
- 哈尔滨工业大学计算机系统大作业 程序人生-Hello’s P2P
- 快速搭建企业内部信息推送平台
- SQLServer数据库还原常用问题的解决方案
- 开源NoSQL数据库ArangoDB浅析
- 武汉华夏理工学院计算机住宿,武汉华夏理工学院宿舍条件,宿舍环境图片(10篇)...
- 【imessage苹果家庭推送群发】messageview前置的类型转换因变量
- 桑坦德银行使用以太坊区块链赎回2000万美元债券