相机标定:Matlab标定工具箱使用要点
1.单目标定
|
1.核心步骤 (1)获得标定数据:<Images_names>, <Read images>, <Extract grid corners> 1)输入数据:源图像序列(必选)、棋盘格数量(可选)、棋盘格尺寸(必选) 2)读入图像:输入图像基名和图像扩展名 3)提取角点:对每幅图像依次执行,若对提取的角点不满意则输入可能畸变参数(值在-1~1之间)后重新提取直到满意为止 (2)执行初次标定:<Calibration>, <Save>, <Analyse error> 1)执行标定 2)保存结果:保存标定结果 3)误差分析:显示重投影点与提取角点的偏差,单击误差分析图像上的点可显示该点的相关信息 ▲原始数据重合名:bak1_calib_data.mat ▲标定结果重命名为:bak1_calib_results.mat、bak1_calib_results.m ▲误差图像保存为:bak1_calib_error.fig (3)基于优化后的角点标定:<Recomp. Corners>, <Calibration>, <Save>, <Analyse error> 1)重新定位角点:将重投影的点作为初始值来重新定位角点 2)执行标定:同前 3)保存结果:同前 4)误差分析:同前 (4)可持续数据:bak1_calib_data.mat和bak1_calib_results.mat 1)导入bak1_calib_data.mat相当执行步骤(1) 2)导入bak1_calib_data.mat和bak1_calib_results.mat相当执行步骤(1)和(2) 2.辅助工具 (1)直观地查看重投影点与提取点之间的误差:<Reproject on images> (2)直观地查看外参(即相机和标定板之间的相对位置关系):<Show Extrinsic> (3)导出标定数据(即世界坐标和像素坐标)以提供给OpenCV使用:<Export calib data>,可命名为:bak1_calib_xyz/uv_*.txt 3.可分离功能 (1)计算外参:<Comp. Extrinsic>,相当于OpenCV中的 (2)图像矫正:<Undistort image>,相当于OpenCV中的<InitUndistortMap+remap> |
2.双目标定
|
1.核心步骤 (1)获得标定数据:<Load left and right calibration files> 1)输入数据:左右标定数据(必选)、左右源图像序列(可选) 2)读入左右标定数据:输入左右标定数据文件名 3)查看外参初值:输入左右标定数据后将自动计算并回显外参初值 (2)执行双目标定:<Run stereo calibration>, <Save stereo calib results> 1)执行全局优化 2)保存标定结果:保存为bak1_calib_results_stereo.mat 2.辅助工具:<Show Extrinsic of stereo rig>,直观地查看外参(即左右相机和标定板之间的相对位置关系) 3.可分离功能:<Rectify the calibration images>,图像矫正,相当于OpenCV中的<InitUndistortMap+remap> |
相机标定:Matlab标定工具箱使用要点的更多相关文章
- 相机标定过程(opencv) + matlab参数导入opencv + matlab标定和矫正
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 辛苦原创所得,转载请注明出处 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ...
- matlab calibration toolbox -- matlab标定工具的使用方法--去畸变和双目校正
matlab calibration toolbox -- matlab标定工具的使用方法--去畸变和双目校正 2015-04-06 22:45 5407人阅读 评论(2) 收藏 举报 分类: 机器 ...
- VIO系统的IMU与相机时间偏差标定
视觉里程计(VIO)作为一种空间定位方法,广泛应用于VR/AR.无人驾驶和移动机器人,比如近年火热的苹果 AR-Kit和谷歌AR-Core都使用了VIO技术进行空间定位.通常,VIO系统忽略IMU ...
- 基于OpenCV单目相机的快速标定--源码、工程、实现过程
相机的标定是所有人走进视觉世界需要做的第一件事,辣么多的视觉标定原理解释你可以随便在网上找到,这里只讲到底如何去实现,也算是给刚入门的朋友做个简单的分享. 1.单目相机标定的工程源码 首先请到同性交友 ...
- 张正友相机标定Opencv实现以及标定流程&&标定结果评价&&图像矫正流程解析(附标定程序和棋盘图)
使用Opencv实现张正友法相机标定之前,有几个问题事先要确认一下,那就是相机为什么需要标定,标定需要的输入和输出分别是哪些? 相机标定的目的:获取摄像机的内参和外参矩阵(同时也会得到每一幅标定图像的 ...
- MATLAB地图工具箱学习总结(四)自定义投影
MATLAB地图工具箱学习总结(四)自定义投影 这是本系列的最后一篇文章,准备给大家讲讲自定义投影怎么做.在做这项作业的时候,自己也是花了不少时间,将所有地图投影源文件都看了一遍,简单分析了一下源代码 ...
- MATLAB地图工具箱学习总结(三)地图工具箱的基本知识
MATLAB地图工具箱学习总结(三)地图工具箱的基本知识 今天想要介绍的是一些比较基础的函数.了解了这些函数,地图投影的基本概念才能真正明白.而要想继续研究MATLAB中有关地图投影的函数,尤其是未来 ...
- MATLAB地图工具箱学习总结(二)大圆和恒向线
MATLAB地图工具箱学习总结(二)大圆和恒向线 今天要和大家谈一谈大圆.恒向线航道的画法.还是先从案例开始说起,再分别介绍相关的函数. 1 作业案例:地图投影作 ...
- MATLAB地图工具箱学习总结(一)从地图投影说起
MATLAB地图工具箱学习总结(一)从地图投影说起 前言 本学期地图投影课上,李连营老师建议我们使用MATLAB完成每周的作业.从大二上学期开始接触MATLAB学习数学运算和地理数据处理的我,自然不会 ...
- matlab coder 工具箱使用教程
之前一直听说matlab代码可以转C和C++代码,但是一直都没有时间尝试,最近闲着无聊,就想来试试如何转换,上网查了很多资料,照着做下去,发现都有一些问题,之后自己琢磨了很久,终于将一个很简单的例子给 ...
随机推荐
- How to:如何让Installshield显示正确的软件所需空间--网友冰块先生贡献
软件环境: installshield2010 工程类型:installshield project 现象:当转换目录后所需空间显示不正常. 解决办法:在转换目录地方加上一个TARGETDIR重新 ...
- 优化 UltraEdit 打开大文件时的性能
UltraEdit 原本就是被设计成可以打开超大文件的工具,只不过在默认情况下需要进行以下优化设置: 禁止临时文件 禁止显示行号 禁止文件(回车 & 换行符)转换 禁止代码折叠 禁止显示函数列 ...
- Chp10 10.7
<Java语言程序设计>P296 本章是关于对象的思考,主要是在研究面向对象的程序设计时类的设计,作业写得比较杂乱,构造方法时没有严格遵守类的流行设计风格,由于是作业,再加上比较简单,没有 ...
- jquery 无缝滚动 jquery.kxbdmarquee
DEMO http://code.ciaoca.com/jquery/kxbdmarquee/demo/ 官网 http://code.ciaoca.com/jquery/kxbdmarquee/ D ...
- must implement the inherited abstract method
The type VideoView must implement the inherited abstract method MediaController.MediaPlayerControl.g ...
- CSS中的text-overflow:clip|ellipsis的使用
如果想让某个容器(div或者li或者...块级元素)显示一行文字,当文字内容过多时,不换行,而是出现...,可以使用text-overflow:clip|ellipsis 基本语法:text-over ...
- 在linux中使用cmake编译运行cocos2d-x 3.4 projects
原因: 由于不想在真机环境和 ide中调试环境, 只想在linux端进行 调试和运行, 需要使用cmake对现有的游戏进行编译(cocos2dx-lua 3.4) 修改步骤: 1.修改framewor ...
- Surprise团队项目总结
Surprise团队项目总结 项目实现情况 实现人人模式:2个用户在同一台电脑上进行切磋下棋,即实现五子棋游戏的基本功能 实现人机模式:初级模式已经实现,可以进行人机交互,但是还没达到智能判断下棋点 ...
- Git服务器搭建及配置
一.部署环境 Server操作系统:CentOS release 6.7 (Final) 内核版本:2.6.32-358.el6.x86_64 git版本:1.9.0,源码下载地址如下 https:/ ...
- Linear Algebra lecture10 note
Four fundamental subspaces( for matrix A) if A is m by n matrix: Column space C(A) in Rm (列空间在m维实 ...