热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

[置顶]【计算机视觉】多幅相机标定,多相机标定(matlab/opencv)

多幅相机标定1opencv多幅相机标定原文来源opencvhttp:docs.opencv.orgmasterd2d1ctutorial_multi_camera_main.html多
多幅相机标定 1 opencv多幅相机标定

原文来源 opencv

http://docs.opencv.org/master/d2/d1c/tutorial_multi_camera_main.html

多幅相机校准

本教程将展示如何使用多个相机标定工具箱。 这个工具箱是基于“随机”的用法模式标定对象,那么本教程主要是两部分:介绍“随机”模式和多个相机校正。

随机模式标定对象

随机模式是随机生成的图像。 这是“随机”,这样就有许多特征点。 生成后,打印出来,把它作为一个校准对象。 以下两张图片是随机模式和拍照。

图像图像

生成一个随机模式,使用的类 CV:randpattern::RandomPatternGenerator在 ccalib模块。 运行它

cv::randpattern::RandomPatternGenerator generator(width, height);generator.generatePattern();pattern = generator.getPattern();

在这里 宽度和 高度是模式图像的宽度和高度。 获取模式后,打印出来,拍一些照片。

现在我们可以使用这些图像校准相机。 首先, objectPoints和 imagePoints需要检测。 使用类CV:randpattern::RandomPatternCornerFinder检测它们。 一个示例代码

cv::randpattern::RandomPatternCornerFinder finder(patternWidth, patternHeight, nMiniMatches);finder.loadPattern(pattern);finder.computeObjectImagePoints(vecImg);vector objectPoints = finder.getObjectPoints();vector imagePoints = finder.getImagePoints();

这里的变量 patternWidth和 patternHeight物理模式与用户定义的单位宽度和高度。 vecImg是一个向量的图像存储校准图片。

第二,使用校准功能 CV:calibrateCamera或 CV:omnidir::校准校准相机。

多个摄像头校准

现在我们搬到多个相机标定,到目前为止,这个工具箱必须使用随机模式对象。

校准多个摄像头,我们首先需要随机模式的一些照片。 校准的原因,外在的参数,一个模式需要被多个摄像头(至少两个)在同一时间。 另一件事是帮助程序知道哪个相机和拍照模式,图像文件应该命名为“cameraIdx-timestamp。*”。 照片与同一时间戳意味着他们是相同的对象由几个摄像头。 此外,cameraIdx应该从0开始。 一些例子的文件名称是“0 - 129。 png”、“0 - 187。 png”、“1 - 187”、“2 - 129”。

然后,我们可以运行多个摄像机标定

cv::multicalib::MultiCameraCalibration multiCalib(cameraType, nCamera, inputFilename,patternWidth, patternHeight, showFeatureExtraction, nMiniMatches);multiCalib.run();multiCalib.writeParameters(outputFilename);

在这里 cameraType显示摄像机类型, multicalib:MultiCameraCalibration::针孔和 multicalib::MultiCameraCalibration::无方向性都受支持。 全向相机,你可以参考 CV:omnidir模块的细节。 nCamera是camers的数量。 inputFilename生成的一个文件的名称吗 imagelist_creator从 opencv /样本。 它存储随机模式和校准图片的名字,第一个文件的名字是随机模式的名称。 patternWidth和 patternHeight是物理模式的宽度和高度。 showFeatureExtraction是一个标志指示是否显示特征提取的过程。 nMiniMatches是最小的点,应该在每一帧中发现,否则这个框架将被放弃。 outputFilename是一个xml文件名字存储参数。




2 matlab 多幅相机标定
  • —Multiple-Camera系统标定工具箱使用功能Descriptor-Based校准模式。 作者:薄熙来,莱昂内尔·亨,凯文Koeser和Marc Pollefeys计算机视觉和几何集团苏黎世联邦理工学院。 
多摄像机标定工具箱使用基于特征描述符的校准模式的多摄像机系统校准工具箱Bo Li,Lionel Heng,Kevin Koeser,Marc Pollefeys苏黎世联邦理工大学计算机视觉与几何组IEEE / RSJ智能机器人与系统国际会议(去),2013摘要本文提出了一种基于特征描述子的校准模式和MATLAB工具箱的使用特别设计的图案很容易完成内联函数和多摄像机系统的非本征。在现有的校准模式,特别是,无处不在的棋盘,所提出的模式包含了许多不同尺度的功能,这样的功能可以很容易地自动检测。该工具箱支持一个摄像系统可以包括正常的针孔摄像机或折反射摄像机标定。校准只要求相邻摄像机同时观察校准模式的部分,所观察到的部分可能不会重叠在所有。没有重叠的视野被假定为相机系统。我们表明,工具箱可以很容易地用于自动校准相机系统。

多幅相机自校准

Matlab软件包为 完整的 并充分 自动 校准的多幅相机设置(3凸轮最小)。 一个标准的激光 指针是唯一你需要的硬件。 没有校准的对象和用户 交互要求。 

关键词: 多个摄像机标定,摄像机标定, selfcalibration多幅相机标定,标定的相机 网络。


作者的代码

  • 托马斯 Svoboda 。 相应的作者。 的设计方案, 欧几里得分层,找到点,I / O操作,接口, 强劲的重建calib验证……
  • 丹尼尔Martinec 和 托马斯Pajdla 。 填充 通过第4级分解点射影重建。
  • 让 Bouguet 。 径向畸变的规律。
  • 托马斯沃纳 。 射影 束调整。
  • Ondrej密友 。 RANSAC实现

历史

  • 2011年2月 。 稍微修改代码 并使 倍频程 兼容的 安德鲁稻草 和他的合作者。 看到 自述 为更多的细节。 谢谢安德鲁!
  • 2005年5月24日 。 版本1.0 释放。
  • 2004年10月29日 。 样本数据 可供下载。
  • 2004年7月15日 。 接受我们的期刊论文。
  • 2003年8月20日, 。 文档升级。
  • 2003年7月30日 。 发布候选版本2。
  • 2003年7月18日 。 首次公开发行候选版。
  • 早期的2002年春天。 第一次真正的工作版本的线性模型 估计。 然后测试、升级、测试、升级、测试、…

下载

发送一个邮件给托马斯Svoboda svoboda_at_cmp.felk.cvut。 cz如果你 想收到公告升级。 请写 SelfCal主题领域。 任何建议,缺陷报告 受欢迎的。

  • 版本1.0 版本1,gzip tar文件的来源。 更改日志 因为RC2。
  • 样本数据 。 检查时可能有用instalation和解释一些配置参数的意义。
  • RC2的1.0版 gzip tar文件 来源(2003年7月30日)。 变化 对RC1。
  • RC1版本1.0 gzip tar文件 来源(2003年7月18日)。

被测试的代码在几个Linux机器和不同 版本的 Matlab 包中。

使用的保证、支持条件

提供的软件。 使用是免费的。 至关重要的 修改的代码(而不是配置变化)和他们的 再分配必须批准我。 请使用artictle 在杂志上的参考。

出版物和文档

  • 托马斯Svoboda。 完整的摄像机标定系统的一个软件。 麻省理工学院的讲座 CSAIL的 。 2005年1月25日。 (幻灯片 PDF |打印输出PDF ]
  • 托马斯Svoboda,丹尼尔Martinec,托马斯Pajdla。 一个方便的多幅相机自校准的虚拟环境。 存在:遥控机器人和虚拟环境 ,407 - 422页,14(4),8月 2005年。 麻省理工学院出版社 
    手稿的杂志文章 (PDF,1.7 mb) 。 它的 bib-entry 
  • 早期版本的TR-users指南。 ( PDF ],[版本从8月20日,2003]。 下载和反馈 困难我将在升级和工作文档:-)我可以提供一些测试数据请求。
  • 图形化的 素描的自校准问题。
  • 短 描述 的输出参数。
  • 短 视频 (avi,DivX) 显示校准我们的移动 我 房间 在一家工厂设置。

链接

  • 摄像机标定 工具箱 Matlab。 这个包的径向畸变的例程 在我们self-calib包。
  • 演示页面 关于 投影透视图像的三维重建,遮挡 和离群值。
  • 麦迪克 项目。
  • Blue-C 我 房间 )项目。

最后修改:02/22/2011 16:10:58 

维护人员: 托马斯Svoboda 
[CNW:Counter]自2003年8月5日到达。 CNW:Tracker

3 matlab 强大的标定能力
相机标定为Matlab工具箱
一些相关链接摄像机标定
  • 相机标定和OpenCV——校准工具箱一样,OpenCV。

  • 一个通用的摄像机模型和传统的标定方法,广角,鱼眼镜头的镜片——“无证”鱼眼模型标定工具箱中包含遵循等距离投影模型描述方程(3)在这个非常好的纸。 畸变模型遵循方程(6)的异常k1 = 1(否则区别f)。

  • 摄像机标定工具箱机器人技术和机电一体化研究所的德国——DLR CalDe和DLR CalLab相机标定是一个非常完整的工具(包括角落提取)。 工具就成为免费下载(用于非商业目的)。 作者:克劳斯Strobl,主席沃尔夫冈斯蒂芬·福克斯,克里斯蒂安·裴瑞兹和克劳斯Arbter机器人及机电一体化研究所。

  • 全自动相机和手眼标定由基督教Wengert从瑞士联邦理工学院(ETHZ)。 这是两个附件这款相机标定为Matlab工具箱。 第一部分介绍了全自动校准程序和第二覆盖相机的标定机器手或外部标记(称为手眼claibration)。 作者提供了一个完整的文档。

  • 一个独立的相机标定的应用程序开发的Danail Stoyanov从英国皇家学会/沃尔夫森基金会医学影像计算实验室,英国伦敦帝国理工学院。 这个应用程序的灵感来源于这个相机标定为Matlab工具箱。 它有一个很好的用户界面,是独立的! 一个伟大的工具! 谢谢丹尼尔这使这个应用程序可用普通社区。

  • 全向相机校正为Matlab工具箱——一个完整的工具箱校准全向相机。 作者大卫。Scaramuzza在瑞士洛桑联邦理工学院(EPFL),瑞士。

  • 多个摄像机标定工具箱——Multiple-Camera系统标定工具箱使用功能Descriptor-Based校准模式。 作者:薄熙来,莱昂内尔·亨,凯文Koeser和Marc Pollefeys计算机视觉和几何集团苏黎世联邦理工学院。

  • 全向标定工具箱扩展——一个伟大的扩展工具箱校准全向相机。 作者克里斯托弗·梅写了一个非常完整的文档,例子。 它还包含C程序undistorting图片,和阅读校准的结果。 这是一个美妙的这款相机标定工具箱。 点击这里查看详情!

  • OpenCV和MatLab相机标定工具箱的提高——一组matlab和C代码,增加了一个自动角检测matlab标定工具箱。 作者弗拉基米尔•Vezhnevets也提供了新的OpenCV的增强版本的校准工具(一种更健壮的角点检测)。 一个完整的C + +独立应用程序也可以发现这一点位置。 这是一个了不起的工具。

  • 大学的相机标定工具箱在matlab奥卢,芬兰(珍妮Heikkilufffd和奥利Silven)-相机校正的参考。 不幸的是,代码不包括角落提取。 我们使用其内在的相机模型的实现。

  • 灵活的摄像机标定的新技术——张正友——微软研究院——伟大的校准工作。 必须看到的。 从这个工作我们的工具箱都得到很大的启发。 软件是在线的,但是,它不包括角落提取。

  • 蔡相机校准软件——经典! 每个人都感兴趣的相机校准应该知道这个链接。 不包括提取图像角落。

  • Reg威尔逊主页卡内基梅隆大学——参考页面变焦镜头建模、校准…… 也链接他是维护的代码。 一个非常有用的链接。

  • 摄像机标定的matlab工具箱Hynek Bakstein和Radim Halir——一个不错的相机标定为matlab工具箱。 不幸的是,代码不包括提取图像角落。 这个页面还包含的论文Hynek Bakstein相机校正。

推荐阅读
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • 如何自行分析定位SAP BSP错误
    The“BSPtag”Imentionedintheblogtitlemeansforexamplethetagchtmlb:configCelleratorbelowwhichi ... [详细]
  • 如何实现织梦DedeCms全站伪静态
    本文介绍了如何通过修改织梦DedeCms源代码来实现全站伪静态,以提高管理和SEO效果。全站伪静态可以避免重复URL的问题,同时通过使用mod_rewrite伪静态模块和.htaccess正则表达式,可以更好地适应搜索引擎的需求。文章还提到了一些相关的技术和工具,如Ubuntu、qt编程、tomcat端口、爬虫、php request根目录等。 ... [详细]
  • PHP图片截取方法及应用实例
    本文介绍了使用PHP动态切割JPEG图片的方法,并提供了应用实例,包括截取视频图、提取文章内容中的图片地址、裁切图片等问题。详细介绍了相关的PHP函数和参数的使用,以及图片切割的具体步骤。同时,还提供了一些注意事项和优化建议。通过本文的学习,读者可以掌握PHP图片截取的技巧,实现自己的需求。 ... [详细]
  • 电销机器人作为一种人工智能技术载体,可以帮助企业提升电销效率并节省人工成本。然而,电销机器人市场缺乏统一的市场准入标准,产品品质良莠不齐。创业者在代理或购买电销机器人时应注意谨防用录音冒充真人语音通话以及宣传技术与实际效果不符的情况。选择电销机器人时需要考察公司资质和产品品质,尤其要关注语音识别率。 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • Mac OS 升级到11.2.2 Eclipse打不开了,报错Failed to create the Java Virtual Machine
    本文介绍了在Mac OS升级到11.2.2版本后,使用Eclipse打开时出现报错Failed to create the Java Virtual Machine的问题,并提供了解决方法。 ... [详细]
  • 本文介绍了在Linux下安装Perl的步骤,并提供了一个简单的Perl程序示例。同时,还展示了运行该程序的结果。 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • 本文介绍了一些好用的搜索引擎的替代品,包括网盘搜索工具、百度网盘搜索引擎等。同时还介绍了一些笑话大全、GIF笑话图片、动态图等资源的搜索引擎。此外,还推荐了一些迅雷快传搜索和360云盘资源搜索的网盘搜索引擎。 ... [详细]
  • 《数据结构》学习笔记3——串匹配算法性能评估
    本文主要讨论串匹配算法的性能评估,包括模式匹配、字符种类数量、算法复杂度等内容。通过借助C++中的头文件和库,可以实现对串的匹配操作。其中蛮力算法的复杂度为O(m*n),通过随机取出长度为m的子串作为模式P,在文本T中进行匹配,统计平均复杂度。对于成功和失败的匹配分别进行测试,分析其平均复杂度。详情请参考相关学习资源。 ... [详细]
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
  • 本文介绍了Linux系统中正则表达式的基础知识,包括正则表达式的简介、字符分类、普通字符和元字符的区别,以及在学习过程中需要注意的事项。同时提醒读者要注意正则表达式与通配符的区别,并给出了使用正则表达式时的一些建议。本文适合初学者了解Linux系统中的正则表达式,并提供了学习的参考资料。 ... [详细]
  • Ubuntu 9.04中安装谷歌Chromium浏览器及使用体验[图文]
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
author-avatar
陈上意535
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有