Halcon 从基础到精通-01- 基本概念

news2024/11/27 7:41:36

1 HALCON Architecture

                                                                      【图一】

HALCON的架构如上,其主要的部分,就是图像处理库。

2 HALCON的基本架构

2.1 Operators 

HALCON库功能的使用都是通过【operators】操作符来实现的。绝大多数的操作符由多种方法构成,具体可以参考给出的下面这个链接:

【参考】

  • HALCON Operator Reference
  • Extension Package Programmer’s Manual
  • Parallel Programming
  • Programmer’s Guide

Table of Contents [HALCON Operator Reference / Version 13.0.4] (mvtec.com)

 2.1.1 操作符的主要的特性:

  • 没用层级继承的扁平逻辑结构
  • 具备逻辑分组,可以作为C++/.Net类的成员函数
  • 具备开源架构特性,可以进行自己拓展的定制化开发。(参考:Extension Package Programmer’s Manual )
  • 大多数操作符支持自动的并行处理(参考:Parallel Programming,Programmer’s
    Guide.)
  • 操作符具备标准的输入输出参数:(input iconic, output iconic, input
    control, and output control)

 2.1.1 参数和数据结构:

HALCON具备两个主要的参数类型:iconic data 和 Control data。 具体分类如下:

                                                        【图2】 

2.1.1.1 iconic数据

包括,image,regions,XLDs。

  • image 比较好理解,就是像素图形、图像相关的数据:【图2】
  • regions 理解一组意义的像素组合,【franklin案,理解为我们要研究的一个分割、或者连通的区域】
  • XLDS 【Franklin案,理解为等值线或者多边形 数据的组合】

2.1.1.2 Control数据 

就是为基本数据、参考句柄数据,这些数据的定义用于规范HALCON的图形图像数据的操作。【案,软件上很好理解】

2.2 Extension Packages

 理解为 (HALCON provides the Extension Package Interface)HALCON提供拓展包的接口。这样开发者可以针对特殊的硬件或者一个不同的逻辑,通过给出的接口,构建基于C语言的新Operators。

【参考】

Extension Package Programmer’s Manual

2.3 语言接口

HALCON的编程语言接口,其实,如【图一】一样,就是构建了一个语言的接口层。

【参考】 

  • HALCON Operator Reference​​​​​​​
  • Programmer’s Guide

2.4 图像获得接口

HALCON的这个接口,提供了图像抓取供应商和HALCON之间 接口联系。当然,大多数的工业通用的接口已经集成在HALCON的库里面了。

【参考】

  • Solution Guide II-A

2.4 I/O接口

就是输入输出设备。


参考:

1 Quick Guide to HALCON (mvtec.com)

注意,以下资料是限制访问:

2 HALCON documentation: 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【开发篇】十、Spring缓存:手机验证码的生成与校验

文章目录 1、缓存2、用HashMap模拟自定义缓存3、SpringBoot提供缓存的使用4、手机验证码案例完善 1、缓存 缓存是一种介于数据永久存储介质与数据应用之间的数据临时存储介质使用缓存可以有效的减少低速数据读取过程的次数(例如磁盘IO),提高…

驱动插入中断门示例代码

驱动插入中断描述符示例代码 最近做实验,每次在应用层代码写测试代码的时候都要手动挂一个中断描述符,很不方便所以就想着写个驱动挂一个中断门比较省事 驱动测试效果如下: 下面的代码是个架子,用的时候找个驱动历程传递你要插…

wvp-GB28181-pro windows系统编译安装的坑:录像功能不能正常使用

说明 wvp-GB28181-pro 只是包含了实时视频的接入功能; GitHub - 648540858/wvp-GB28181-pro: WEB VIDEO PLATFORM是一个基于GB28181-2016标准实现的网络视频平台,支持NAT穿透,支持海康、大华、宇视等品牌的IPC、NVR、DVR接入。支持国标级联…

“构建高效的前端表单验证与增删改功能实现“

目录 引言1. 基础增删改功能代码展示后端代码 2. 表单验证基本表单验证自定义验证规则 总结 引言 在现代Web开发中,前端表单验证和增删改功能是不可或缺的核心要素。本文将介绍如何使用ElementUI库来实现高效的前端表单验证和增删改功能。我们将从基础开始&#xf…

LFS在VMware Fusion 中启动时两种报错的解决办法

### 环境: LFS版本:LFS12.0 systemd VMware Fusion版本:Player Version 12.0.0 (16880131) PE版本:alpine-standard-3.18.3-x86_64 ### 部署过程: 1. 在云服务器编译LFS并将LFS目录打包; 2.在本地虚拟…

AI项目十三:PaddleOCR训练自定义数据集

若该文为原创文章,转载请注明原文出处。 续上一篇,PaddleOCR环境搭建好了,并测试通过,接下来训练自己的检测模型和识别模型。 paddleocr检测模型训练 1、准备数据集 在PaddleOCR目录下新建文件夹:train_data, 这个…

ChatGPT终于可以进行网络搜索 内容不再限于2021年9月前

微软和谷歌已经让旗下聊天机器人进行网上搜索,并提供原始材料的链接,以提高信息共享的可信度和范围。但是,ChatGPT迄今为止只接受了有时间限制的训练数据,这些数据仅限于从互联网上收集的2021年9月之前的信息。在周三的一系列推文…

一文读懂梯度下降

PPT版本有多个动图,更容易理解

数据结构--栈的实现

数据结构–栈的实现 1.栈的概念和结构: 栈的概念:栈是一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端 称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Las…

【面试经典150 | 数组】除自身以外数组的乘积

文章目录 写在前面Tag题目来源题目解读解题思路方法一:记录左右乘积空间优化 写在最后 写在前面 本专栏专注于分析与讲解【面试经典150】算法,两到三天更新一篇文章,欢迎催更…… 专栏内容以分析题目为主,并附带一些对于本题涉及到…

给牛奶做直播之二

一、前言 给奶牛做直播之一 主要讲了视频的编解码,我们今天接着往下聊,主要介绍一下视频流的网络应用层协议,先简单讲一下视频文件格式与编码,视频文件格式有很多比如以前的AVI、RMVB、MP4等等无数种,视频文件格式和前…

QCefView 简介

什么是QCefView QCefView 是为 Qt 开发的一个封装集成了CEF(Chromium Embedded Framework)库的Wdiget UI组件。使用QCefView可以充分发挥CEF丰富强大的Web能力,快速开发混合架构的应用程序。它不需要开发者理解CEF的细节,能够在Qt中更容易的使用CEF&…

Flutter开发之Package与Plugin

前言 在flutter中有包和插件两个概念,插件 (plugin) 是 package 的一种,全称是 plugin package,我们简称为 plugin,中文叫插件。包(Package)主要指对flutter相关功能的封装,类似于Android中的插件和iOS中的三方库。而插…

Spring5应用之AOP切入点详解

作者简介:☕️大家好,我是Aomsir,一个爱折腾的开发者! 个人主页:Aomsir_Spring5应用专栏,Netty应用专栏,RPC应用专栏-CSDN博客 当前专栏:Spring5应用专栏_Aomsir的博客-CSDN博客 文章目录 前言切入点详解切…

Source Insight 工具栏图标功能介绍

这篇文章并不介绍 Source Insight 的具体使用方法,这类教程网上有很多,这里只分析 Souce Insight 工具栏图标的功能。 文章目录 Source Insight 简介Souce Insight 工具栏文件操作新建(CtrlN)打开(CtrlO)保…

C语言文件操作与管理

一、为什么使用文件 在我们前面练习使用结构体时,写通讯录的程序,当通讯录运行起来的时候,可以给通讯录中增加、删除数据,此时数据是存放在内存中,当程序退出的时候,通讯录中的数据自然就不存在了&#xff…

wxWidgets(1):在Ubuntu 环境中搭建wxWidgets 库环境,安装库和CodeBlocks的IDE,可以运行demo界面了,继续学习中

1,选择使用 wxWidgets 框架 选择这个主要是因为完全的开源,不想折腾 Qt的库,而且打包的文件比较大。 网络上面有很多的对比,而且使用QT的人比较多。 但是我觉得wxwidgets 更加偏向 c 语法本身,也有助学习C。 没有太多…

PHP 二手物品交易网站系统mysql数据库web结构apache计算机软件工程网页wamp

一、源码特点 PHP 二手物品交易网站系统是一套完善的web设计系统,对理解php编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。 代码下载 https://download.csdn.net/download/qq_41221322/88385559 二、功能介…

容器网络之Flannel

​ 第一个问题位置变化,往往是通过一个称为注册中心的地方统一管理的,这个是应用自己做的。当一个应用启动的时候,将自己所在环境的 IP 地址和端口,注册到注册中心指挥部,这样其他的应用请求它的时候,到指挥…

数据结构与算法基础-(4)

🌈write in front🌈 🧸大家好,我是Aileen🧸.希望你看完之后,能对你有所帮助,不足请指正!共同学习交流. 🆔本文由Aileen_0v0🧸 原创 CSDN首发🐒 如…