常见的相机标定方式是张正友的棋盘格标定法,即用相机拍摄打印好的棋盘格图图像,将图像传入函数计算出相机的内参数据。

本文讲解的是将相机直接连接电脑,用matlab的相机标定工具箱通过相机实时采集一定数量的棋盘格图像,然后计算获取相机内参。

实现:

Win10,64系统

matlab R2016a

后续用途:

(一)solvepnp 单目三维位姿估计--------理论

(二)solvepnp 单目三维位姿估计--------利用二维码求解相机世界坐标


Step1 打开相机标定工具箱

在《图像处理和计算机视觉》栏 找到相机标定工具:

在弹出的上图中点击红色下拉三角,选择 “From camera” 即工具箱会读取外接相机然后实时画面获取图像。

如果此期间弹出错误,提示未安装web camera的相应的包,那么需要你额外安装下对应的包;

安装方式为:

在主页中选择 “附加功能” 选择 “Get Hardware support packages”

在网络条件好的情况选择网络安装,下一步;

查看支持安装的所有包,找到USB Webcams 这个USB相机包 文件,点击Next安装。

如此,安装了能够读取外部USB相机的包后,用matlab打开相机就不再出错了。


Step 2 读取相机开始采集图像做标定

在上一步中 From camera后,正确连接相机的情况下,会出现下图:

选择待会用相机采集图像后保存图像的路径;选择每次采集图像的间隔时间(默认5秒),选择共采集多少张图(默认20张);

选择完毕后点击Capture 进行采集;

使用方式是你可以将棋盘格打印出来后贴在墙上,拿着摄像头从各个角度拍摄采集棋盘格图像;或者你固定相机不动,将棋盘格固定在平坦物上,让棋盘格动;我选择前者。

选择Capture后会弹出下图,让你填写棋盘格网格实际物理尺寸(默认25mm),实际常用的网格图大小也差不多,我的是26mm

开始采集图像:

实际采集20张图像后即停止采集,我 在选项中选择了 3阶径向畸变系数,计算切向畸变系数。

只要你的重投影整体平均误差小于0.5像素即可:

下图是标定过程中以相机为中心视角的外参情况:

下图是以棋盘格为中心视角的外参 情况:


Step 3 导出标定数据

我们可以导出得到相机的内参信息:

上图划红线解释依次为:

径向畸变系数(3阶),切向畸变系数(2阶),世界坐标单位是mm,内参矩阵,焦距(分fx,fy),成像平面原点(理想情况是图像宽高中心位置),成像平面原点坐标(单位是像素);

获取如上信息后则可以对相机做矫正,做PnP相机位姿估计啦~

用matlab对相机进行标定获取相机内参相关推荐

  1. realsense相机两种获取相机内外参的方式

    https://www.it610.com/article/1296417297711308800.htm 命令:~$ rs-sensor-control 这个命令是一个exe文件,可以去·C:\Pr ...

  2. 传感器标定(1.单目相机的标定)

    多传感器中,我们在使用前需要给出设备的标定,首先我们先对单个设备进行标定(后面使用需要进行联合标定) 联合标定工具诸如Apollo.Autoware等自动标注工具,以及一些开源的方法等,可以参考一些经 ...

  3. 双目相机的标定 python_六个步骤完成双目相机的标定,这么看来也不是很难嘛...

    机器视觉之halcon入门(40)-双目相机的标定 一个相机看到的是一张图像,只有二维信息,要想获取空间物体的三维信息,有一种常用的一种方法是:模拟人眼,用两个相机,就是所谓的双目相机.用相机总是少不 ...

  4. Baumer工业相机堡盟工业相机如何通过BGAPI SDK获取相机设备的各种固件信息如DeviceID或者SerialNumber等(C++)

    项目场景 Baumer工业相机堡盟相机是一种高性能.高质量的工业相机,可用于各种应用场景,如物体检测.计数和识别.运动分析和图像处理. Baumer的万兆网相机拥有出色的图像处理性能,可以实时传输高分 ...

  5. 全空间视频融合---学习之路(一)--直线提取检测--投影纹理--相机姿态标定

    在增强现实的实际应用环境中,人们会为全空间大规模场景构造三维模型.为了增强虚拟环境的逼真性和动态性,可以向环境中融合真实世界的视频.透过视频可以获知模型该区域发生的事件.这就有了 摄像机的视频信息和三 ...

  6. 计算机视觉——棋盘格标定法获取相机内参外参

    计算机视觉--棋盘格标定法获取相机内参外参 一.原理 相机标定目的 相机标定的输入 相机标定的输出 相机标定策略 相机拍摄图像变换过程 相机内参 相机外参 二.环境 三.数据集 四.运行结果与分析 角 ...

  7. matlab双目相机标定校正_双目相机的标定过程详解!-----MATLAB

    基于双目视觉的测距.三维重建等过程中的第一步就是要进行标定.双目相机的标定过程在网上有很多资料,但是基本都没有matlab官方网址讲的好.所以请参考MATLAB官方文档:https://ww2.mat ...

  8. python利用opencv进行相机标定获取参数,并根据畸变参数修正图像附有全部代码(流畅无痛版)

    python利用opencv进行相机标定获取参数,并根据畸变参数修正图像附有全部代码 一.前言 今天的低价单孔摄像机(照相机)会给图像带来很多畸变.畸变主要有两 种:径向畸变和切想畸变.如下图所示,用 ...

  9. matlab Lidar Camara Calibrator使用方法及雷达点云对相机的标定

    标定过程 标定数据导入matlab lidar camara calibrator 插件,点击图示中的Import后选择Import Data如图所示: 依次选择导入图像和点云数据如下后点击" ...

最新文章

  1. Linux下环境变量设置
  2. python散点图拟合曲线-使用python通过点拟合曲线
  3. mysql8只从配置_mysql8的配置优化
  4. MySQL数据库InnoDB存储引擎中的锁机制--转载
  5. 信步漫谈之Git—环境搭建及入门
  6. Android18isalone,全新JAVA开发Android程序员需要掌握的英语单词(很全).doc
  7. 如何调整Loadrunner中Vuser的数量限制
  8. 这相册一出手,哪个长辈搞不定?
  9. array_keys_PHP array_keys()函数与示例
  10. u-boot移植随笔:终于解决Nor Flash的问题了
  11. java list 命名空间,Spring JAVA 不同类加载器命名空间的理解
  12. 平时有没有使用xml和json
  13. 当面试官问你有什么想问的应该问些什么(技术开发类)
  14. 如何快速切换各种pip源
  15. C语言例题:温度转换
  16. 【Strategy模式】C++设计模式——策略模式
  17. 了解java集合框架
  18. OpenCV局部阙值分割的自适应阙值算法
  19. 线代【二次型】--猴博士爱讲课
  20. dotnetbar-SuperTabControl禁止调整顺序

热门文章

  1. 简单爬虫——京东网图书爬取
  2. 树莓派各版本引脚及参数
  3. 做程序界中的死神,提升斩魂刀
  4. Failure to find xxx:jar:0.0.1 in https://repo.maven.apache.org/maven2 was cached in the local re
  5. 【SSL_1715】计算面积
  6. 博弈论的一些基础知识(参考网络资料,学习总结,很好,分享并保存)
  7. 鲲鹏与江西才俊的七夕之约
  8. OpenMV学习(0):环境搭配
  9. 复合型人才八种能力_我国一流大学人才培养目标的特点与问题
  10. 在线教育项目用户登录和注册