halcon 3.2标定相机

参考《solution_guide_iii_c_3d_vision.pdf》

3.2.2.2 Which Distortion Model to Use 选用何种畸变模型

对于面阵相机,halcon中两种畸变模型:The division model and the polynomial model(差分模型和多项式模型),前者用1个参数去描述径向畸变,后者5个参数去描述径向和切向畸变。

  • division model 优势:畸变矫正时更快,例如将世界坐标投影到图像平面中。如果标定图片较少,或者事业覆盖不全,该模型标定结果更稳定。
  • polynomial model 优势:更精确的建模两种畸变,因为对径向畸变有更高的阶。缺点:不能反向分析,矫正图片必须迭代计算,比division model更慢。
  • 通常使用division模型,但如果觉得精度不够,推荐用polynomial模型。

3.2.3.1 How to Obtain a Suitable Calibration Plate 如何获取一个合适的标定板

必须高精度,对高精度应用,必须降到1um以下!推荐通过购买halcon的分销商处购买标定板。
新的六边形标定板从halcon12开始支持,推荐给大部分的应用使用。比矩形标定板有如下优点:

  • 矩形标定板必须在视野内,六边形标定板可伸出图像边缘之外。校准图像又快又方便,同时不失鲁棒性。
  • 由于拥有较多的特征标记点,可以伸出图像边界之外,因此用较少的图像数量即可完成校准。
    注意事项:
  • 六边形标定板必须至少有一个finder图案完全可见,矩形标定板必须看到完整的校准板才能找到校准板并进行估计它的姿势。
  • 六边形排列标记的校准板的坐标系位于第一个图案中心标记的中心,而带有矩形排列标记的板位于所有标记的重心。
  • 六边形标定板的描述文件是".cpd"结尾的,矩形标定板是".descr"结尾的。
  • 两个接口create_caltab(六边形)和gen_caltab (矩形)仅仅用于测试,无法精确的打印16cm以内的六边形标定板、3cm以内的矩形标定板。

3.2.3.2 Using Your Own Calibration Object 用自定义的标定物

使用HALCON,您不局限于使用平面校准对象,如HALCON校准板。你可以使用3D校准对象,甚至可以使用任意特征点(自然地标)。唯一的要求是模型点的3D世界位置具有高精度。然后,只需将校准对象所有点(标记)的三维坐标作为参数中的元组传递set_calib_data_calib_object对象的CalibObjDescr。所有点的所有x、y和z坐标都必须以[X,Y,Z]的形式打包在元组中按顺序排列。但是,请注意,如果使用自己的校准对象,则不能使用运算符find_calib_object接口。必须自己确定模型点的二维位置以及与三维点的对应关系!如果用自己的标定物,必须通过 set_calib_data_observ_points接口,将提取的mark信息以及对应关系存储到校准模型中。
注意,halcon11以前版本用find_caltab and find_marks_and_pose这两个接口查找mark点,它们仅适用于矩形标定板,然后通过set_calib_data_observ_points设置到模型中。现在推荐用find_calib_object,更精确。

3.2.4.1 Recommendations for Acquiring Calibration Images 相机标定选择图像的建议

参考帮助文档中《Calibration》章节。

  • 标定板表面必须清洁
  • 六边形标定板至少需覆盖视野1/3,矩形标定板至少需覆盖视野1/4,当前实际占了最短边的1/2左右。
  • 六边形标定板需要至少一个特征标记在视野内,如果至少有2个特征标记可见,则可检查标定板是否镜像。矩形标定板必须全部位与视野内。
  • 标定板mark点直径,至少为20个像素。
  • 标定板亮暗像素灰度差值至少100。
  • 标定板亮部分像素灰度值要大于100.
  • 标定板不能过曝,所有像素值应该小于255。
  • 对于矩形标定板,背景比标定板还黑的话,需要进行照明。
  • 标定板图像必须有较少的噪声,必须清晰对焦。
  • 标定板必须放到视野的每一处;标定板必须绕x轴和y轴进行旋转,来保证perspective distortions清晰可见;
  • 必须tilted倾斜标定板,才能计算正确的焦距(推荐倾斜30-45°朝不同方向倾斜,如果景深有限,请尽可能陡峭的倾斜)。
  • 六边形标定板至少需要6张图,矩形标定板至少需要10-15张图。

3.2.5 Restricting the Calibration to Specific Parameters 标定参数设置

如果已知标定板内参数据,可以通过接口set_calib_data设置进去。

3.2.6 Performing the Calibration 执行相机标定

执行标定过程,使用接口calibrate_cameras (CalibDataID, Errors)。误差高达0.1像素表示校准成功(?)。

3.2.7.1 Determining the External Camera Parameters 计算相机外参

有下面三种方式来获取外参数据:
a. 从标定相机时某一张图片中获取,通过接口get_calib_data来获得;
b. 将内部摄像头参数的确定与外部摄像头的确定分开通过使用附加图像(其中校准板直接放置在测量装置上)获得的参数,应用find_calib_object提取校准标记和姿势。
c. 自行确认3D世界点与图像点之间的关系,然后调用vector_to_pose接口。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/546853.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

使用 Scrapy 爬取豆瓣电影 Top250

一、Scrapy框架 1. 介绍 在当今数字化的时代,数据是一种宝贵的资源,而网络爬虫(Web Scraping)则是获取网络数据的重要工具之一。而在 Python 生态系统中,Scrapy 框架作为一种高效、灵活的网络爬虫框架,为…

MLOps

参考: 什么是MLOps?与DevOps有何异同?有什么价值?https://baijiahao.baidu.com/s?id1765071998288593530&wfrspider&forpcMLOps简介_AI开发平台ModelArts_WorkflowMLOps(Machine Learning Operation)是机器学习&#xf…

更优性能与性价比,从自建 ELK 迁移到 SLS 开始

作者:荆磊 背景 ELK (Elasticsearch、Logstash、Kibana) 是当下开源领域主流的日志解决方案,在可观测场景下有比较广泛的应用。 随着数字化进程加速,机器数据日志增加,自建 ELK 在面临大规模数据、查询性能等方面有较多问题和挑…

【自动驾驶】贝叶斯算法在机器学习中的应用研究

目录 第一章:引言 1.1 贝叶斯算法在机器学习中的重要性 1.2 研究背景 1.3 研究目的 1.4 论文结构 第二章:贝叶斯算法概述 2.1 贝叶斯定理 2.2 贝叶斯算法分类 第三章:贝叶斯算法在机器学习中的应用 3.1 贝叶斯分类器 3.2 贝叶斯回…

【软考】UML中的图之用例图

目录 1. 说明2. 建模2.1 说明2.2 语境建模2.3 需求建模 3. 图示4. 组成部分 1. 说明 1.用例图(Use Case Diagram)。2.展现了一组用例、参与者(Actor)以及它们之间的关系。3.用例图通常包括以下的内容:用例、参与者、用…

linux 自定义快捷指令(docker

vi /root/.bashrc alias disdocker images alias dpsdocker ps --format "table {{.ID}}\t{{.Image}}\t{{.Ports}}\t{{.Status}}\t{{.Names}}" 保存退出后使用sourece /root/.bashrc 让其立即生效 sourece /root/.bashrc

python 判断变量是数字型还是字符型

python如何判断数据类型?方法如下: 使用type()函数: import types type(x) is types.IntType # 判断是否int 类型 type(x) is types.StringType #是否string类型可以不用记住types.StringType,即: import types type(…

Adobe Premiere 2015 下载地址及安装教程

Premiere是一款专业的视频编辑软件,由Adobe Systems开发。它为用户提供了丰富的视频编辑工具和创意效果,可用于电影、电视节目、广告和其他多媒体项目的制作。 Premiere具有直观的用户界面和强大的功能,使得编辑和处理视频变得简单而高效。它…

【leetcode面试经典150题】51. 用最少数量的箭引爆气球(C++)

【leetcode面试经典150题】专栏系列将为准备暑期实习生以及秋招的同学们提高在面试时的经典面试算法题的思路和想法。本专栏将以一题多解和精简算法思路为主,题解使用C语言。(若有使用其他语言的同学也可了解题解思路,本质上语法内容一致&…

2024蓝桥A组E题

成绩统计 问题描述格式输入格式输出样例输入样例输出评测用例规模与约定解析参考程序难度等级 问题描述 题目有问题方差定义那加平方(vi-v) 格式输入 输入的第一行包含三个正整数n,k,T ,相邻整数之间使用一个空格分隔。 第二行包含n个正整数…

FPGA - 仲裁器的设计实现

一,为什么做仲裁 在多主单从的设计中,当多个源端同时发起传输请求时,这个时候就需要仲裁器来根据优先级来判断响应哪一个源端,向其传输数据。比如:以太网仲裁,DDR仲裁,光纤传图仲裁..... 二&a…

线程安全---synchronized

直接上代码 private static int a 0;public static void main(String[] args) throws InterruptedException {Thread t1 new Thread(() -> {for(int i 0; i < 50000; i){a;}});Thread t2 new Thread(() -> {for(int i 0; i < 50000; i){a;}});t1.start();t2.s…

Module Federation微前端应用拆分后 - request请求优化、私有化request|分发拦截器

1. 背景及目的 1.1 需求背景 随着应用的拆分&#xff0c;目前子应用有12个&#xff0c;这些子应用都使用的是同一个request实例。 前端支持后端切流&#xff0c;增加多个拦截器用于灰度 经手动梳理&#xff1a; 目前所有应用中有26个在使用的拦截器&#xff0c; 其中用于灰…

hive了解系列一

“ 随着智能手机的普及&#xff0c;互联网时代红利的爆发&#xff0c;用户数量和产生的数据也越发庞大。为了解决这个问题&#xff0c;提高数据的使用价值。 Hadoop生态系统就被广泛得到应用。 在早期&#xff0c;Hadoop生态系统就是为处理如此大数据集而产生的一个合乎成本效益…

【JAVA基础篇教学】第十四篇:Java中设计模式

博主打算从0-1讲解下java基础教学&#xff0c;今天教学第十四篇&#xff1a;Java中设计模式。 设计模式是解决软件设计中常见问题的可重复利用的解决方案。在 Java 中&#xff0c;常见的设计模式包括单例模式、工厂模式、观察者模式等。目前在基础教学篇中只展示常见的几种模…

nvm node.js的安装

说明&#xff1a;部分但不全面的记录 因为过程中没有截图&#xff0c;仅用于自己的学习与总结 过程中借鉴的优秀博客 可以参考 1,npm install 或者npm init vuelatest报错 2&#xff0c;了解后 发现是nvm使用的版本较低&#xff0c;于是涉及nvm卸载 重新下载最新版本的nvm 2…

【RabbitMQ】RabbitMQ基础认识

文章目录 前言初识MQSpringAMQP如何首发消息&#xff1f;消费者交换机Fanout&#xff1a;广播Direct交换机Topic交换机声明队列和交换机 总结 前言 微服务一旦拆分&#xff0c;必然涉及到服务之间的相互调用&#xff0c;目前我们服务之间调用采用的都是基于OpenFeign的调用。这…

四川古力未来科技抖音小店安全:保障您的购物体验,让每一笔交易都安心

在数字化浪潮席卷全球的今天&#xff0c;电子商务已经成为人们生活中不可或缺的一部分。四川古力未来科技抖音小店&#xff0c;作为新兴的电商力量&#xff0c;始终将顾客的安全放在首位&#xff0c;倾力打造安全、便捷、高效的购物平台&#xff0c;让每一位顾客在享受购物乐趣…

计算机网络(五)传输层

传输层 从通信和信息处理的角度看&#xff0c;传输层向它上面的应用层提供通信服务&#xff0c;属于面向通信部分的最高层&#xff0c;同时也是用户功能中的最低层 传输层功能&#xff1a; 传输层提供应用进程之间的逻辑通信(即端到端的通信)。与网络层的区别区别是&#xf…

Python进阶编程 --- 2.MySQL、pymysql、PySpark

文章目录 第一章&#xff1a;SQL基础入门1.1 数据库数据库如何存储数据 1.2 数据库和SQL的关系1.3 MySQL版本1.4 命令提示符内使用MySQL1.5 SQL概述1.5.1 SQL语言分类1.5.2 SQL语言特性 1.6 DDL库管理表管理 1.7 DML - 数据操作1.8 DQL - 查询和计算数据1.8.1 基础数据查询1.8.…