Halcon!!!最新!! 从零认识标定板——制作描述文件和自己的标定板

2024-09-02 18:36

本文主要是介绍Halcon!!!最新!! 从零认识标定板——制作描述文件和自己的标定板,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一.标定板简介

标定板是一种带有固定间距图案阵列的几何模型,主要用于机器视觉、图像测量、摄影测量、三维重建等领域。‌它的主要功能包括校正镜头畸变、确定物理尺寸和像素间的转换关系,以及确定空间物体表面某点的三维几何位置与其在图像中对应点之间的相互关系。通过相机拍摄标定板并计算校准算法,可以获得高精度的测量和重建结果。标定板的这个过程涉及误差测量与评估以及误差图像的矫正与补偿,通过这些步骤,可以更精确地反映被测物品的实际情况,达到精密测量和检测的目的‌。此外,标定板应用体现了其在提高机器视觉系统精度方面的重要性。通过标定板的使用,能够有效地校正镜头畸变,大大提高了机器视觉应用中图像测量、摄影测量的精度。这一过程不仅涉及专业标定算法的应用,还包括对图像进行校正与补偿,以确保测量的准确性‌。

二.网购标定板制作描述文件创作

1.认识网上描述参数

如果网络上购买的标定板没有提供Halcon的描述文件(.descr文件),首先你要明确,你需要什么参数

2.认识描述文件制作算子(以GB050-1.875为例子)
gen_caltab(7, 7, 0.00375, 0.5, 'C:/path/to/your/folder/caltab.descr', 'C:/path/to/your/folder/caltab.ps')
  • 7, 7表示标定板上有7行7列的圆点
  • 0.00375是圆点中心之间的间距(单位:米)。
  • 0.5是圆点直径与间距的比值。(为上述图片直径除中心距的值)
  • 描述文件即使.descr
  • .ps为印刷文件

三.根据描述文件制作CAD或CorelDraw印刷图片(240*240文件放置到资料中,包含dwg和描述文件 pdf)

1.标定板描述文件内部参数

用文本框打开文件——.descr

 

2.根据描述文件制作
  •  长宽参数棋盘格单位m:# Width, height of calibration plate [meter]: 0.24, 0.24
  • 圆的圆心和圆心之间的距离和半径 有上述描述文件制作可得

                            总的原心起始位位于240*240的中间点

  • 标定板倒角位置(上述原心起始位位与0.0点)单位m
  • #   triangular corner mark given by two corner points (x,y, x,y) [meter]#   (optional):
  • t -0.12 -0.09 -0.09 -0.12

  • 标定板线宽   #   width of the black frame [meter]:w 0.0075

3.高精度无毛边软件CorelDraw

CorelDraw(通常简称为CDR)作为一款由加拿大Corel公司开发的矢量图形设计软件,具有诸多显著的优点,这些优点使得CorelDraw在平面设计、插图绘制、排版设计等多个领域得到广泛应用。以下是对CorelDraw优点的详细归纳:

1. 强大的矢量绘图功能

丰富的绘图工具:CorelDraw提供了包括圆形、矩形、多边形、方格、螺旋线等在内的多种基本绘图工具,并配合塑形工具,可以创作出各种复杂的图形,如圆角矩形、弧、扇形、星形等。

特殊笔刷效果:软件内置了压力笔、书写笔、喷洒器等特殊笔刷,使得绘图过程更加灵活多变,能够充分利用电脑处理信息量大、随机控制能力高的特点。

2. 精准的图形控制和定位

图形精确定位:CorelDraw提供了一整套的图形精确定位和变形控制方案,这对于需要准确尺寸的设计(如商标、标志等)来说极为便利。

节点编辑工具:节点编辑工具易于激活和控制,任何时候双击物件即可进行节点编辑,使得图形修改更加精确和高效。

这篇关于Halcon!!!最新!! 从零认识标定板——制作描述文件和自己的标定板的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1130742

相关文章

Java对异常的认识与异常的处理小结

《Java对异常的认识与异常的处理小结》Java程序在运行时可能出现的错误或非正常情况称为异常,下面给大家介绍Java对异常的认识与异常的处理,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参... 目录一、认识异常与异常类型。二、异常的处理三、总结 一、认识异常与异常类型。(1)简单定义-什么是

MyBatis Plus 中 update_time 字段自动填充失效的原因分析及解决方案(最新整理)

《MyBatisPlus中update_time字段自动填充失效的原因分析及解决方案(最新整理)》在使用MyBatisPlus时,通常我们会在数据库表中设置create_time和update... 目录前言一、问题现象二、原因分析三、总结:常见原因与解决方法对照表四、推荐写法前言在使用 MyBATis

Java SWT库详解与安装指南(最新推荐)

《JavaSWT库详解与安装指南(最新推荐)》:本文主要介绍JavaSWT库详解与安装指南,在本章中,我们介绍了如何下载、安装SWTJAR包,并详述了在Eclipse以及命令行环境中配置Java... 目录1. Java SWT类库概述2. SWT与AWT和Swing的区别2.1 历史背景与设计理念2.1.

Java日期类详解(最新推荐)

《Java日期类详解(最新推荐)》早期版本主要使用java.util.Date、java.util.Calendar等类,Java8及以后引入了新的日期和时间API(JSR310),包含在ja... 目录旧的日期时间API新的日期时间 API(Java 8+)获取时间戳时间计算与其他日期时间类型的转换Dur

MySQL复杂SQL之多表联查/子查询详细介绍(最新整理)

《MySQL复杂SQL之多表联查/子查询详细介绍(最新整理)》掌握多表联查(INNERJOIN,LEFTJOIN,RIGHTJOIN,FULLJOIN)和子查询(标量、列、行、表子查询、相关/非相关、... 目录第一部分:多表联查 (JOIN Operations)1. 连接的类型 (JOIN Types)

MySQL 存储引擎 MyISAM详解(最新推荐)

《MySQL存储引擎MyISAM详解(最新推荐)》使用MyISAM存储引擎的表占用空间很小,但是由于使用表级锁定,所以限制了读/写操作的性能,通常用于中小型的Web应用和数据仓库配置中的只读或主要... 目录mysql 5.5 之前默认的存储引擎️‍一、MyISAM 存储引擎的特性️‍二、MyISAM 的主

Python多进程、多线程、协程典型示例解析(最新推荐)

《Python多进程、多线程、协程典型示例解析(最新推荐)》:本文主要介绍Python多进程、多线程、协程典型示例解析(最新推荐),本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定... 目录一、multiprocessing(多进程)1. 模块简介2. 案例详解:并行计算平方和3. 实现逻

Spring Boot集成SLF4j从基础到高级实践(最新推荐)

《SpringBoot集成SLF4j从基础到高级实践(最新推荐)》SLF4j(SimpleLoggingFacadeforJava)是一个日志门面(Facade),不是具体的日志实现,这篇文章主要介... 目录一、日志框架概述与SLF4j简介1.1 为什么需要日志框架1.2 主流日志框架对比1.3 SLF4

Maven中引入 springboot 相关依赖的方式(最新推荐)

《Maven中引入springboot相关依赖的方式(最新推荐)》:本文主要介绍Maven中引入springboot相关依赖的方式(最新推荐),本文给大家介绍的非常详细,对大家的学习或工作具有... 目录Maven中引入 springboot 相关依赖的方式1. 不使用版本管理(不推荐)2、使用版本管理(推

使用Node.js制作图片上传服务的详细教程

《使用Node.js制作图片上传服务的详细教程》在现代Web应用开发中,图片上传是一项常见且重要的功能,借助Node.js强大的生态系统,我们可以轻松搭建高效的图片上传服务,本文将深入探讨如何使用No... 目录准备工作搭建 Express 服务器配置 multer 进行图片上传处理图片上传请求完整代码示例