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

文章目录

  • 前言
  • Halcon+C#教学
  • 简单说明如何二开机器视觉
    • 如何二次开发Halcon
      • 导出Halcon脚本
      • 新建WPF项目,导入Halcon脚本和Halcon命名空间

前言

我目前搜了一下我了解的机器视觉软件,有如下特点

优点缺点兼容性教学视频(B站前三播放量)
OpenCV开源,免费,因为有源码所以适合二次开发学习成本极高,卡学历。研究生博士起步底层使用C++,可以使用Python或者C#调DLL300w/95w/60w
Halcon商用,功能全面,已经训练好了算子(就是第三方接口)认证成本高,正版需要1.1W美元支持C,C++,C#。30w/25w/20w
VisionPro商用,比Halcon便宜一些,简单点性能差点,功能差点C++,C#25w/25w/20w
VisonMaster海康威视开发,加密狗最便宜,低代码开发不了解C++,C#7w/5w/2w

VisionPro和Halcon 的详细对比

简单来说,OpenCV开发用,商用就Halcon/VisionPro/VisionMaster。由于教学视频的原因,我们排除教学视频和外企不用的VisionMaster。然后就是Halcon和VisionPro的选择了。

两个的区别就是Halcon功能全,VisionPro便宜简单。我这里选择Halcon,还有一点就是Halcon继承C#的比较多。

Halcon+C#教学

架构师带你C#联合halcon编程系列

WPF/HALCON机器视觉合集

C#与 Halcon 联合编程

简单说明如何二开机器视觉

我听说目前有两种方法

优点缺点
先开发好脚本,直接调用算法和业务完全分离灵活性不足
直接调用算法库十分灵活没有算法官方平台开发方便

如果是二次开发,那么直接用C/C++是最好的,因为底层代码都是C/C++写的,理论上最优解为QT。但是由于C/C++ 极高的学习成本和开发成本。C#/Python去调用DLL也是个不错的方式。Python(我个人不喜欢他的语法)主要用于研究,C# 有Winfrom/WPF 界面,自身的生态,是最适合用来做快速二次开发的载体

如何二次开发Halcon

首先,现在Halcon开发平台上将代码调试成功,简单来说就是得到一个图像识别的Halcon脚本。什么脚本都可以

我们这里使用的是我们上期视频添加的脚本

Halcon WPF 开发学习笔记(1):Hello World小程序

我们得到一个可以标记特殊点位的Halcon脚本

在这里插入图片描述

导出Halcon脚本

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

新建WPF项目,导入Halcon脚本和Halcon命名空间

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

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

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

相关文章

TCSVT(IEEE Transactions on Circuits and Systems for Video Technology)期刊投稿指南

目录 TCSVT 期刊简介 TCSVT 期刊影响因子和分区​ 期刊官方网站 期刊投稿网址 投稿指南网址 稿件格式要求 稿件提交指南 A. 提交稿件 B. 手稿格式 C. 摘要指南 D. 提交图形的指南 E. 页面和彩色图形费用 TCSVT 期刊简介 IEEE Transactions on Circuits and Systems…

产品化的GPT,能否为“百模大战”照亮未来?

这两天,AI圈都处在一种莫名的震撼感当中。 北京时间 11月7日,OpenAI 举办了首次DevDay开发者日活动。活动现场发布了非常多内容,其中有一些按部就班的,比如技术上更新了最新版本的GPT-4 Turbo。也有一些让从业者目瞪口呆&#xff…

C语言数据结构-----双向链表增删查改的代码实现

文章目录 1.初始化双链表2.创建链表节点3.打印链表4.尾插5.尾删6.头插7.头删8.在pos之前插入8.1 在pos之前插入(改造头插)8.2 在pos之前插入(改造尾插) 9.删除pos位置9.1 删除pos位置(改造尾删)9.1 删除pos位置(改造头删) 10.查找11.毁灭 链接: 顺序表(动态顺序表增删查改的代码…

openGauss学习笔记-121 openGauss 数据库管理-设置密态等值查询-使用JDBC操作密态数据库

文章目录 openGauss学习笔记-121 openGauss 数据库管理-设置密态等值查询-使用JDBC操作密态数据库121.1 连接密态数据库121.2 调用isValid方法刷新缓存示例121.3 执行密态等值查询相关的创建密钥语句121.4 执行密态等值查询相关的创建加密表的语句121.5 执行加密表的预编译SQL语…

系列八、Mybatis一对多查询,只查询出了一条记录

一、Mybatis一对多查询,只查询出了一条记录 1.1、问题说明 典型的权限管理框架的数据库表中,一般会存在这样3种角色的表,即用户表、角色表、用户角色关联表,表设计好之后,往这三张表中初始化了一些测试数据&#xff0…

stm32超声波测距不准的解决方法(STM32 delay_us()产生1us)及stm32智能小车超声波测距代码(C语言版本)

首先要说明一下原理:使用stm32无法准确产生1us的时间,但是超声波测距一定要依赖时间,时间不准,距离一定不准,这是要肯定的,但是在不准确的情况下,要测量一个比较准确的时间,那么只能…

混沌系统在图像加密中的应用(基于哈密顿能量函数的混沌系统构造1.3)

混沌系统在图像加密中的应用(基于哈密顿能量函数的混沌系统构造1.3) 前言一类三维非哈密顿系统的构造与动态特性分析1.相关理论基础2.类Nos-Hoove系统构造的思路及实现3.基于哈密顿能量理论的Nos-Hoove系统的分析与仿真3.1 平衡点分析3.2 不同强度激励下…

C语言从入门到精通之【数据类型和关键字】

数据类型在程序使用之前已经预先设定好了,在整个程序的运行过程中没有变化,这些称为常量(constant)。其他数据类型在程序运行期间可能会改变或被赋值,这些称为变量(variable)。 变量类型有几种…

(二十七)ATP应用测试平台——基于mybatisplus和aop切面实现数据权限隔离的案例实战

前言 在实际项目开发中,我们经常会用到俩种权限,一种是功能权限,一种是数据权限。功能权限主要是用来限制用户的操作,而数据权限是限制用户能查看到哪些数据。功能权限我们可以使用流行的框架shiro或者spring-security实现&#…

C语言--求一个 3 X 3 的整型矩阵对角线元素之和

一.题目描述 求一个 3 X 3 的整型矩阵对角线元素之和 二.代码实现 #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> int main() {int arr[3][3] { 0 };for (int i 0;i < 3;i){for (int j 0;j < 3;j){ printf("请输入数字&#xff1a;");scanf(&…

暴力递归转动态规划(十五)

题目 给定一个正数n&#xff0c;求n的裂开方法数&#xff0c; 规定&#xff1a;后面的数不能比前面的数小 比如4的裂开方法有&#xff1a; 1111、112、13、22、04 。 5种&#xff0c;所以返回5 暴力递归 用暴力递归方法进行尝试&#xff0c;整体思路是这样&#xff1a; 暴力递…

RcppRcppEigen学习材料推荐

目录 一Rcpp和RcppEigen包 二Rcpp学习材料来源 三Rcpp&RcppEigen学习材料汇总 一Rcpp和RcppEigen包 目前已有RcppEigen包&#xff0c;因此直接下载安装RcppEigen包即可&#xff0c;不需要在Eigen官网下载安装。即不需要安装任何关于C的软件&#xff0c;直接基于R进行C相…

Java入门篇 之 补 类与对象

本篇碎碎念&#xff1a;每个人的想法都不一样&#xff0c;不要强求&#xff0c;顺其自然&#xff0c;要相信&#xff0c;一切都在向好的方面前进&#xff01;&#xff01;&#xff01;&#xff01; 今日份励志文案:山海的浩瀚&#xff0c;宇宙的浪漫&#xff0c;都在我内心翻腾…

【编程语言发展史】Python的起源和发展历史

目录 Python的起源 Python的发展历史 Python的生态系统和应用领域 Python的社区和发展模式 Python的未来趋势和挑战 Python是一门广受欢迎的高级编程语言&#xff0c;其起源和发展历史自20世纪末至今&#xff0c;经历了多个版本的迭代和社区的广泛参与。以下是关于Python的…

电子工程师的焊接技法总结

基础学习视频如下&#xff1a; 1 老司机焊接纯干货分享&#xff0c;让你焊接不迷路&#xff0c;很适合零基础小白_哔哩哔哩_bilibili 焊接常用工具 1 焊锡丝 按照粗细来分的话&#xff0c;有粗焊锡&#xff0c;有细焊锡&#xff0c;细焊锡一般适合比较精细的焊接。 按照是否含铅…

在使用Vuex时,5个方法让你保证数据的更新及时性

&#x1f90d; 前端开发工程师&#xff08;主业&#xff09;、技术博主&#xff08;副业&#xff09;、已过CET6 &#x1f368; 阿珊和她的猫_CSDN个人主页 &#x1f560; 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 &#x1f35a; 蓝桥云课签约作者、已在蓝桥云…

Langchain-Chatchat环境安装

目录 一、简介 二、环境安装 三、使用Langchain-Chatchat 3.1、下载模型 3.2、设置配置文件 3.3、执行 一、简介 基于 ChatGLM 等大语言模型与 Langchain 等应用框架实现&#xff0c;开源、可离线部署的检索增强生成(RAG)大模型知识库项目。 &#x1f916;️ 一种利用 l…

数据结构:AVLTree的插入和删除的实现

个人主页 &#xff1a; 个人主页 个人专栏 &#xff1a; 《数据结构》 《C语言》《C》 文章目录 前言一、AVLTree二、AVLTree的插入插入新增节点调整平衡因子旋转左单旋(新增节点位于较高右子树的右侧)右单旋(新增节点位于较高左子树的左侧)右左双旋(新增节点在较高右子树的左子…

【2011年数据结构真题】

41题 41题解答&#xff1a; &#xff08;1&#xff09;图 G 的邻接矩阵 A 如下所示&#xff1a; 由题意得&#xff0c;A为上三角矩阵&#xff0c;在上三角矩阵A[6][6]中&#xff0c;第1行至第5行主对角线上方的元素个数分别为5, 4, 3, 2, 1 用 “ 平移” 的思想&#xff0c;…

ENVI IDL:如何将txt文本文件转化为GeoTIFF文件?

01 前言 此处的文本文件形式如下&#xff1a; 里面包含了众多点位信息&#xff08;不是站点数据&#xff09;&#xff0c;我们需要依据上述点的经纬度信息放到对应位置的像素点位置&#xff0c;放置完后如下&#xff1a; 可以发现&#xff0c;还存在部分缺失值&#xff0c;我们…