(单目)相机标定算法:张正友的算法

一些帖子对摄像头畸变原理的总结:

http://www.baidu.com/link?url=Y-D_PIABMU-1VZsusDcBCMoFz-br4wg69tYUbnDIFMlfRlRBL7hnal_4r47cnDxSsm1eHYEDJJ43qslLTN-p4D4qz7WSsKCRX-u0yWiuWda&wd=&eqid=e1e90abc00064dc400000006567b5327

《学习OpenCV》一书中对摄像头标定有详尽说明:第11章——“摄像机标定”一节  P422

VC下实现相机标定,主要分两步:matlab中计算标定参数、利用opencv的接口对输入图像进行标定

主要看以下内容:

这一步关键是采集一系列不同角度拍摄的棋盘格图像

opencv的标定相关函数如下:(基于opencv 3.0)

void initUndistortRectifyMap(InputArray cameraMatrix, InputArray distCoeffs, InputArray R, InputArray newCameraMatrix, Size size, int m1type, OutputArray map1, OutputArray map2)用于获得标定时的变换矩阵,参数说明:

cameraMatrix,内参数矩阵,A = [ fx, 0, cx ; 0, fy, cy; 0, 0, 1],大小3*3,其中与matlab工具箱计算结果的对应关系为:fx、fy对应fc的两项,cx、cy对应cc的两项

distCoeffs,外参数(失真参数)矩阵, distortion coefficients,包含4, 5, or 8 元素的一维矩阵,对应matlab计算结果的kc

R,矫正矩阵,用于双目摄像头,这里设为空矩阵即可

newCameraMatrix,同样是双目时用到,这里输入cameraMatrix即可

size,输入图像尺寸

m1type,map1的类型,设为CV_32F

map1、map2,X、Y方向的变换矩阵

void remap(InputArray src, OutputArray dst, InputArray map1, InputArray map2, int interpolation, int borderMode=BORDER_CONSTANT, const Scalar& borderValue=Scalar())按两个变换矩阵对输入图像进行变换

interpolation为插值算法,设为cv::INTER_NEAREST即可

void undistort(InputArray src, OutputArray dst, InputArray cameraMatrix, InputArray distCoeffs, InputArray newCameraMatrix=noArray() )

一个整合版函数,包括以上两个函数

效果:

原始

校正后

matlab相机标定教学视频,相机标定入门教程【 OpenCV + Matlab】相关推荐

  1. 雷神:音视频零基础入门教程

    雷神:音视频零基础入门教程 总结:视音频编解码技术零基础学习方法 CSDN里能找见的最好的音视频教程了,没有之一. 雷神一路走好.

  2. matlab中if语句多个_MATLAB入门教程 | 003基础知识

    一.认识MATLAB 1. MATLAB概述 (1)在欧美各高等学校, Matlab成为线性代数.自动控制理论.数字信号处理.时间序列分析.动态系统仿真.图像处理等诸多课程的基本教学工具,成为本科生. ...

  3. 系统视频教学视频教程_自由泳教学视频,全套系统教程【收藏版】

    下面是两套系统学习自由泳的视频教程,需要学习自由泳的朋友,赶紧点赞+收藏吧. 中文版 [自由泳慢动作分解教学视频]自由泳基本动作介绍 [自由泳划水慢动作教学视频]自由泳的划水技术动作 [自由泳打腿入门 ...

  4. matlab电路分析教学视频,Matlab在《电路分析》课程教学中的应用

    长江大学学报 自然科学版 理工 年 月 第 卷 第川 即 峭 , , 期 一 在 <电路分析 >课程教学中的应用 曹 路 五邑大学信息工程学院, 广东江门 摘要 」 语句简练 , 功能强大 ...

  5. Matlab 2018a的安装包及matlab 零基础教学视频

    将path文件夹下的对应文件copy到相应的目录下后,从桌面图标或任务启动栏打开显示error-8错误的处理方式:到安装目录下bin文件中双击matlab.exe应用程序,并将其设置为桌面快捷方式. ...

  6. 入门单片机选择51还是stm32?入门单片机有哪些好的教学视频?

    不知道大家还记不记得自己小学时候自己的梦想? 有人想成为医生.有人想成为医生,有人想成为飞行员,而我想成为发明家. 可能真是我这种想法,也导致我的性格从小就比较内向,毕业出来以后也从事技术. 人生的上 ...

  7. java入门到秃路线导航,元芳你怎么看?【教学视频+博客+书籍整理】

    目录 一.Java基础 二.关于JavaWeb基础 三.关于数据库 四.关于ssm框架 五.关于数据结构与算法 六.关于开发工具idea 七.关于项目管理工具Mawen.Git.SVN.Gradle. ...

  8. walking与Matlab入门教程-ros2命令

    系列文章目录 walking与Matlab入门教程-安装matlab 2022a软件 walking与Matlab入门教程-安装visual studio 2019软件 walking与Matlab入 ...

  9. oracle sql 调用自定义函数_PSCAD入门教程(第7节):怎样调用fortran编写的自定义函数?(附模型)...

    PSCAD入门教程(第7节):怎样调用fortran编写的自定义函数?(附模型)​mp.weixin.qq.com https://www.zhihu.com/video/12422083467175 ...

最新文章

  1. 一个苏州IT人的5年挨踢经历-------面试篇(之三)
  2. 栖息在生态办公室,裸心社与USGBC达成战略合作
  3. can a select block a truncate (ZT)
  4. nodejs--http模块
  5. 移植PPP2.4.5到ARM上实现拨号
  6. (笔记)网络技术学习交流会
  7. (18)ISE14.7调试核名称与顶层名称不一致导致生成bit报error(FPGA不积跬步101)
  8. Java 8 Lambda表达式10个示例【存】
  9. 网站繁简体切换(二)
  10. POJ 1002 UVA 755 487--3279 电话排序 简单但不容易的水题
  11. HDU4635 Strongly connected
  12. android horizontalscrollview 动画,Android 用HorizontalScrollView实现滑动标签tabView
  13. 电路里的希腊字母读音
  14. 试论有关收买被拐卖妇女行为的刑法规制
  15. 如何在面试中介绍自己的项目经验
  16. 读书有感:《失业的程序员》
  17. dell服务器型号t310,Dell T110/R210/T310/R310服务器 For Windows驱动程序
  18. java 人脸检测 人脸抓拍
  19. visionpro求旋转中心,拟合圆心操作
  20. Shopee开店前必看:精品店铺运营五步法则

热门文章

  1. 手机如何剪辑音频,极简操作制作专属BGM和铃声
  2. 【鹏哥C语言网课笔记】初识C语言
  3. Apache Skywalking 视频教程
  4. c语言程序设计教程高佳琴主编答案,数据结构与算法应用教程.ppt
  5. 中兴u31网关服务器位置,中兴LTE-U31网管简易操作指南
  6. 阿里聚安全Android应用漏洞扫描器解析:本地拒绝服务检测详解
  7. android 中文开发文档
  8. mysql扩展之mysqli
  9. Linux知识分享|Linux目录结构(最全最详细)
  10. iOS开发中自带的图标库