Halcon (0):C# 联合Halcon方式简介和就业市场说明

文章目录

  • 文章专栏
  • 视频资源
  • 前言
  • 相关视频
  • 联合C#开发
    • 直接导出C#代码
    • Halcon引擎调用开发
      • 函数封装
      • 库工程导出
  • 总结
  • 就业市场

文章专栏

Halcon开发

视频资源

机器视觉之C#联合Halcon

前言

根据我的测试,我发现Halcon和WPF中的halcon插件,代码具有对应性。就是你会了Halcon,WPF也差不多久会了

对应关系
在这里插入图片描述
在这里插入图片描述

相关视频

机器视觉之C#联合Halcon

这个视频有两个优点,第一比较新,是2022年底的。还有是偏案例的形式,学起来比较快。对于我这种编程基础比较扎实了,直接上代码就行了,语法这些东西都是一通百通的。

联合C#开发

联合C#开发一般就如下两种
在这里插入图片描述

  • 导出C#代码
    • 先在halcon平台上面进行调试,然后再导出C#代码。将Action进行改造导入。
    • 简单,好操作。将Halcon脚本代码和C#逻辑进行拆分。缺点是缺乏灵活性。
  • Halcon引擎直接开发
    • 直接在C#中调用Halcon代码
    • 是最灵活的方式。由于C# 本身的.net 生态和C#的内存管理。是halcon简单项目开发最好的方式。除非是解决复杂问题,例如3D画面的机器视觉问题解决。则需要使用QT+ [C++]或者OpenCV开发。

直接导出C#代码

选好写好的Halcon脚本
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
具体开发方式不在讲述,可以看看我之前做的博客

Halcon WPF 开发学习笔记(2):Halcon导出c#脚本和WPF初步开发

Halcon WPF 开发学习笔记(3):WPF+Halcon初步开发

Halcon WPF 开发学习笔记(4):Halcon 锚点坐标打印

Halcon引擎调用开发

作为更高级别的方法方式。难而灵活是他的特点。需要对halcon的算子有着十分熟练的使用。

函数封装

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

库工程导出

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

总结

我个人更加推荐第二个导出,库函数封装。使用了库函数封装之后,我们只需要导出C#代码即可。导出的C#的代码是static静态方法,不可以实例化。我们可以将多个halcon过程函数进行封装,进而得到更加模块化的编程体验。

由于我之前说过,halcon的算子和C# HSmartWindowControlWPF控件方面基本一致,只是命名方法有点区别。所以我们根本不需要详细了解控件的使用方式,直接上手使用halcon平台即可。

halcon是目前最全面,性能最好的机器视觉商用软件。是我目前了解到的C# 上位机最好的工作方向,比起只是单纯的udp/tcp/串口通讯解析,是更有前景的工作方向。

就业市场

在这里插入图片描述
C#联合Halcon可以拥有15k到25k的工资水平。而且工业开发一般不加班,因为互联网开发996是因为要去把握风口,要快干快上。而工业开发需要整个硬件和软件的协调开发,更具有规律性。

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

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

相关文章

Unity - 实现模型动态伸长缩短,贴图不变形(材质球参数篇)

思路为修改模型材质球的Tiling参数&#xff0c;根据与自身localScale的值得到合适的比例&#xff0c;再修改Tiling值 var mat target.transform.GetComponent<Renderer>().material; var oriValue mat.mainTextureScale;//沿着Y轴伸缩 oriValue.y 1 * target.transfo…

HCIP-二、MSTP+Eth-trunk

二、MSTPEth-trunk 实验拓扑实验需求及解法 实验拓扑 实验需求及解法 //1.如图所示&#xff0c;配置设备名称和 IP 地址。 //2.在 SW1 与 SW2 之间配置链路聚合协议 LACP&#xff0c;完成以下需求&#xff1a; //2.1 SW1 作为主动端&#xff0c;设置系统优先级为最高。 [SW1]l…

报错!Jupyter notebook 500 : Internal Server Error

Jupyter notebook 报错 500 : Internal Server Error 问题背景 tensorflow-gpu环境&#xff0c;为跑特定代码专门开了一个环境&#xff0c;使用conda安装了Jupyter notebook&#xff0c;能够在浏览器打开Jupyter notebook&#xff0c;但是notebook打开ipynb会报错。 问题分析…

Android——Gradle插件项目根目录settings.gradle和build.gradle

一、settings.gradle结构分析 项目根目录下的settings.gradle配置文件示例&#xff1a; pluginManagement {/*** The pluginManagement.repositories block configures the* repositories Gradle uses to search or download the Gradle plugins and* their transitive depen…

【excel技巧】单元格内的公式如何隐藏?

Excel文件中最重要的除了数据还有就是一些公式了&#xff0c;但是只要点击单元格&#xff0c;公式就能显示出来&#xff0c;如果不想别人看到公式应该如何设置呢&#xff1f;今天分享隐藏excel单元格数据的方法。 选中单元格&#xff0c;点击右键打开【设置单元格格式】&#x…

电脑显示找不到mfc140.dll怎么办?哪个修复方法值得推荐

在电脑使用过程中&#xff0c;我们经常会遇到一些错误提示&#xff0c;例如"mfc140.dll文件缺失"这个问题可能会导致某些应用程序无法正常运行&#xff0c;可能给您带来困扰。本篇文章为您提供了六种有效解决此类问题的策略&#xff0c;使您能够迅速修复并恢复应用程…

一篇文章带你了解Python常用自动化测试框架 —— Pytest

在之前的文章里我们已经学习了Python自带测试框架UnitTest&#xff0c;但是UnitTest具有一定的局限性 这篇文章里我们来学习第三方框架Pytest&#xff0c;它在保留了UnitTest框架语法的基础上有着更多的优化处理 下面我们将从以下角度来介绍Pytest&#xff1a; Pytest基本介绍…

mac系统安装docker desktop

Docker的基本概念 Docker 包括三个基本概念: 镜像&#xff08;Image&#xff09;&#xff1a;相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。比如说nginx,mysql,redis等软件可以做成一个镜像。容器&#…

什么是高防CDN?有什么优势?

德迅高防CDN技术概述 随着互联网的快速发展&#xff0c;网络安全问题越来越受到人们的关注。高防CDN(Content Delivery Network)作为一种有效的网络安全防御手段&#xff0c;在企业和个人网站中得到了广泛应用。本文将详细介绍高防CDN的技术原理、防御原理、优点和应用场景&am…

如何验证命令执行漏洞(无回显)

如何验证命令执行漏洞&#xff08;无回显&#xff09; 使用yakit&#xff0c;选择dnslog模块 点击生成一个可用域名 以dvwa为例 命令执行ping一下刚才的域名 随后yakit中会出现回显信息&#xff0c;以此证明拥有命令执行漏洞 信息&#xff0c;以此证明拥有命令执行漏洞

【Java】乡镇卫生院、社区卫生服务中心云HIS源码

云HIS采用云端SaaS服务的方式提供&#xff0c;用户通过浏览器即能访问&#xff0c;无需关注系统的部署、维护、升级等问题&#xff0c;系统充分考虑了模板化、配置化、智能化、扩展化等设计方法&#xff0c;覆盖了基层医院机构的主要工作流程&#xff0c;能够与监管系统有序对接…

TensorFlow实战教程(十八)-Keras搭建卷积神经网络及CNN原理详解

从本专栏开始,作者正式研究Python深度学习、神经网络及人工智能相关知识。前一篇文章详细讲解了Keras实现分类学习,以MNIST数字图片为例进行讲解。本篇文章详细讲解了卷积神经网络CNN原理,并通过Keras编写CNN实现了MNIST分类学习案例。基础性文章,希望对您有所帮助! 一…

vite vue3配置axios

准备 参考 安装axios yarn add axios中文官网 src下新建request文件夹&#xff0c;该文件下新建index.ts import axios from axios; import { ElMessage } from element-plus;// const errorCodeType function (code: number): string { // let errMessage: string 未知…

一阶低通滤波器(一阶巴特沃斯滤波器)

连续传递函数G(s) 离散传递函数G(z) 转换为差分方程形式 一阶巴特沃斯滤波器Filter Designer参数设计&#xff1a;参考之前的博客Matlab的Filter Designer工具设计二阶低通滤波器 设计采样频率100Hz&#xff0c;截止频率20Hz。 注意&#xff1a;设计参数使用在离散系统中&…

【性能测试】稳定性/并发压力测试的TPS计算+5W并发场景设计...

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 1、稳定性测试TPS…

AI生成技术威胁版权保护,水印技术和法律完善是关键/安圭拉小岛以.ai域名注册赚得3000万美元 |魔法半周报

我有魔法✨为你劈开信息大海❗ 高效获取AIGC的热门事件&#x1f525;&#xff0c;更新AIGC的最新动态&#xff0c;生成相应的魔法简报&#xff0c;节省阅读时间&#x1f47b; &#x1f525;资讯预览 AI生成技术威胁版权保护&#xff0c;水印技术和法律完善是关键 Sam Altman对…

软件外包开发的验收流程

软件外包开发的验收流程是确保项目符合预期标准并满足客户需求的关键步骤。以下是一个通用的软件外包开发验收流程&#xff0c;希望对大家有所帮助。北京木奇移动技术有限公司&#xff0c;专业的软件外包开发公司&#xff0c;欢迎交流合作。 1.明确验收标准&#xff1a; 在项目…

jmeter接口自动化部署jenkins教程详解

首先&#xff0c;保证本地安装并部署了jenkins&#xff0c;jmeter&#xff0c;xslproc 我搭建的自动化测试框架是jmeterjenkinsxslproc 注意&#xff1a;原理是&#xff0c;jmeter自生成的报告jtl文件&#xff0c;通过xslproc工具&#xff0c;再结合jmeter自带的模板修改&…

【C语言】条件变量(pthread_cond_t)

一、概述 条件变量(pthread_cond_t)是POSIX线程&#xff08;也称为pthread&#xff09;库中用于线程同步的一种机制。在多线程程序中&#xff0c;条件变量通常与互斥锁(pthread_mutex_t)一起使用&#xff0c;以防止并发问题&#xff0c;如竞态条件和死锁。 二、条件变量(pthre…

渲染器之挂载与更新

讲解渲染器的核心功能&#xff1a;挂载与更新。 1、挂载子节点和元素的属性 当 vnode.children 的值是字符串类型时&#xff0c;会把它设置为元素的文本内容。一个元素除了具有文本子节点外&#xff0c;还可以包含其他元素子节点&#xff0c;并且子节点可以是很多个。为了描述…