相机标定简介与MatLab相机标定工具箱的使用(未涉及原理公式推导)
相机标定
一、相机标定的目的
确定空间物体表面某点的三维几何位置与其在图像中对应点之间的相互关系,建立摄像机成像的几何模型,这些几何模型参数就是摄像机参数。
二、通用摄像机模型

世界坐标系、摄像机坐标系和像平面坐标系都不重合。同时考虑两个因素 :
(1)摄像机镜头的畸变误差,像平面上的成像位置与线性变换公式计算的透视变换投影结果有偏差;
(2)计算机中图像坐标单位是存储器中离散像素的个数,所以像平面上的连续坐标还需取整转换。

摄像机参数
l 摄像机内部参数 (Intrinsic Parameters)
摄像机坐标和理想坐标系之间的关系
图像坐标系、摄像机坐标系
The list of internal parameters:
- Focal length(焦距): The focal length in pixels is stored in the 2x1 vector fc.
- Principal point(主点): The principal point coordinates are stored in the 2x1 vector cc.
- Skew coefficient(偏斜系数): The skew coefficient defining the angle between the x and y pixel axes is stored in the scalar alpha_c.
- Distortions(畸变): The image distortion coefficients (radial and tangential distortions) are stored in the 5x1 vector kc.
l 摄像机外部参数 (Extrinsic Parameters)
摄像机在世界坐标系里的位置和方向
摄像机坐标系、世界坐标系
主要包括:旋转矩阵 R 的9个参数和平移矩阵的3个参数。或定义为 6 个。主要包括: 旋转矩阵的3个偏转角和平移矩阵的3个参数。
简而言之:

三、摄像机原理

摄像机坐标系的原点

位于摄像机的镜头中心,像平面坐标中心

位于光轴上,由小孔成像模型,

为焦距。从客观场景到数字图像的成像变换由 以下4步组成 :

四、摄像机标定方法分类
l 传统摄像机标定方法
l 主动视觉摄像机标定方法
l 摄像机自标定方法
|
标定方法 |
特点 |
优点 |
不足 |
|
传统摄像机标定方法 |
利用已知的景物结构信息。常用到标定块。 |
可以使用于任意的摄像机模型,标定精度高 |
标定过程复杂,需要高精度的已知结构信息。 |
|
主动视觉摄像机标定方法 |
已知摄像机的某些运动信息 |
通常可以线性求解,鲁棒性比较高 |
不能使用于摄像机运动未知和无法控制的场合 |
|
摄像机自标定方法 |
仅依靠多幅图像之间的对应关系进行标定 |
仅需要建立图像之间的对应,灵活性强 |
非线性标定,鲁棒性不高 |

四、张正友平面标定方法
算法原理


• 在这里假定模板平面在世界坐标系

的平面上
• 其中,

为摄像机的内参数矩阵,

为模板平面上点的齐次坐标,

为模板平面上点投影到图象平面上对应点的齐次坐标,

和

分别是摄像机坐标系相对于世界坐标系的旋转矩阵和平移向量


根据旋转矩阵的性质,即

和

,每幅图象可以获得以下两个对内参数矩阵的基本约束


由于摄像机有5个未知内参数,所以当所摄取得的图象数目大于等于3时,就可以线性唯一求解出

算法描述
- 打印一张模板并贴在一个平面上
- 从不同角度拍摄若干张模板图象
- 检测出图象中的特征点
- 求出摄像机的内参数和外参数
- 求出畸变系数
- 优化求精
五.使用Matlab相机标定工具箱标定相机的基本步骤
1.安装MATLAB
2.安装相机标定工具箱Camera Calibration Toolbox


2.准备一张标定板
3、实验数据采集

3、相机标定步骤
First calibration example - Corner extraction, calibration, additional tools






然后在对每一幅测试图进行手动设置最外围的四个角点,第一个点会作为原点,一般位于左上角,其他三个点选择顺序不重要,不过还是建议按顺时针选取(为标定方便,我们未将最外层的方格包括在内)

接下来需要设定每个小方格在现实世界中的宽高,以便随后角点的自动选择;实验过程中设定为30mm×30mm;只需第一次设定



说明
A. 通过Recomp. corners按钮提高标定精确度;
B. Analyse error展示角点误差分布,用鼠标左键点击后,在命令窗口可直接显示该点信息;
C.点击Reproject on images按钮用计算出来的参数投影到图像。这些投影是基于当前的内部参数和外部参数。二次投影误差同样显示如下:



附件列表
相机标定简介与MatLab相机标定工具箱的使用(未涉及原理公式推导)的更多相关文章
- 相机标定过程(opencv) + matlab参数导入opencv + matlab标定和矫正
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 辛苦原创所得,转载请注明出处 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ...
- SLAM入门之视觉里程计(6):相机标定 张正友经典标定法详解
想要从二维图像中获取到场景的三维信息,相机的内参数是必须的,在SLAM中,相机通常是提前标定好的.张正友于1998年在论文:"A Flexible New Technique fro Cam ...
- Autoware 标定工具 Calibration Tool Kit 联合标定 Robosense-16 和 ZED 相机!
一.安装 Autoware & ZED 内参标定 & 外参标定准备 之前的这篇文章:Autoware 进行 Robosense-16 线雷达与 ZED 双目相机联合标定! 记录了我用 ...
- 利用matlab摄像机标定
(1)输入图像 "Image names"键 Matlab的图形窗口显示出20幅靶标图像 (2) 提取角点 "Extract grid corners"键. 输 ...
- Matlab 摄像机标定+畸变校正
博客转载自:http://blog.csdn.net/Loser__Wang/article/details/51811347 本文目的在于记录如何使用MATLAB做摄像机标定,并通过opencv进行 ...
- Matlab计算机视觉/图像处理工具箱推荐
Matlab计算机视觉/图像处理工具箱推荐 转载http://cvnote.info/matlab-cv-ip-toolbox/ 计算机视觉/图像处理研究中经常要用到Matlab,虽然其自带了图像处理 ...
- matlab 小波工具箱
wavemenu --- >wavelet ---->wavelet packet1-D Matlab小波工具箱的使用1 转载▼ http://blog.sina.com.cn/s/blo ...
- matlab添加M_map工具箱(转 http://blog.sina.com.cn/s/blog_491b86bf0100srt9.html)
之前转载过matlab画世界地图的博文.最近正好用到.首先试了matlab自带的worldmap,感觉画出来的图形不尽如人意,比较杂乱.如下图. 略查阅了些资料,请教了Liangjing,一致推荐m_ ...
- Matlab小波工具箱的使用2
Matlab小波工具箱的使用2 (2011-11-11 09:32:57) 转载▼ http://blog.sina.com.cn/s/blog_6163bdeb0102dw7a.html#cmt_5 ...
随机推荐
- webpack使用的心得
1 . 我们需要使用打包工具,首先第一步就得 执行 npm install进行安装,可是很多时候 加载速度很慢,这个时候我们可以 用淘宝镜像源,参考地址: p.p1 { margin: 0.0px 0 ...
- PHP中Exception异常
异常的基本使用 当异常被抛出时,其后的代码不会继续执行,PHP 会尝试查找匹配的 "catch" 代码块. 如果异常没有被捕获,而且又没用使用 set_exception_hand ...
- python之numpy
一.矩阵的拼接合并 列拼接:np.column_stack() >>> import numpy as np >>> a = np.arange(9).reshap ...
- 第一届山东省ACM——Balloons(java)
Description Both Saya and Kudo like balloons. One day, they heard that in the central park, there wi ...
- HTML 内容居中方式总结
在HTML网页排版经常会用到关于对其方式的情况,水平居中和垂直居中.特别是水平居中,并不是一个简单的text-align就可以解决所有的情况. 开始之前普及一点HTML知识,目标很明显,不同的页面结构 ...
- 【bzoj1688】[USACO2005 Open]Disease Manangement 疾病管理
题目描述 Alas! A set of D (1 <= D <= 15) diseases (numbered 1..D) is running through the farm. Far ...
- win7下IIS的安装和配置 图文教程
转自 http://www.jb51.net/article/29787.htm 最近工作需要IIS,自己的电脑又是Windows7系统,找了下安装的方法,已经安装成功.在博客里记录一下,给需要的 ...
- Python 动态创建函数【转】
知乎上也有相似的问题 偶然碰到一个问题,初想是通过动态创建Python函数的方式来解决,于是调研了动态创建Python函数的方法. 定义lambda函数 在Python中定义lambda函数的写法很简 ...
- 关于a标签自身的click事件所带来的一些影响
众所周知a标签自身带有点击事件<a href="#"></a>从它本身的特性来讲并没有什么不好的影响,但是如果你在a标签里又加入onclick事件则< ...
- VS Build目录下各文件的作用
VS2010中各种类型文件的作用: .sln 相当于VC6中 .dsw .vcxproj 相当于VC6中 .dsp .suo 相当于VC6中 .ncb .vcxproj.filter ...