当前位置:网站首页>halcon的安装以及在vs2017中测试,vs2017中dll的配置
halcon的安装以及在vs2017中测试,vs2017中dll的配置
2022-07-29 07:02:00 【csdndenglu】
一、首先下载halcon,并安装
先下载的22.05版本,下载后的文件名为“halcon-22.05.0.0-x64-win64.zip”,大小为6.34G,解压后:

安装时发现会先打开控制台窗口,再打开网本地网页:

没有注意到设置里安装位置的修改,默认安装到C盘了,而且打开后是繁体中文,很头疼这个样子,所以后来卸载了,重新下载的18.11版本“halcon-18.11.4.0-windows.exe”,大小为1.74G,进行安装,下载方式为,浏览器搜索halcon官网,打开这个英文的网址HALCON – The power of machine vision: MVTec Software:

进入后点击DOWNLOADS,会让登录,没有账号的先注册:


然后点击HALCON DOWNLOADS:
会出现各个版本的下载地址,点击对应版本下载:

下载完成后,安装,可以选择装在D盘,其他没有特别要求,按默认的选项装就行,安装完成后是HALCON HDevelop 18.11 Steady (64-bit) 和 HALCON HDevelop 18.11 Steady XL (64-bit):

两个的区别,网友说:
1.hdevelop 适用于普通分辨率的图像,小于等于 32k x 32k ;
2.hdevelop xl适用于大分辨率的图像,大于 32k x 32k ;
3.运行速度是一样。
4.静态所占的体积差不多。
5.xl资源开销大。
注意:打开会报错,把当月的license文件放到license文件夹下即可打开。

二、在HALCON中生成C++代码
打开halcon后选择左上角图标,浏览HDevelop示例程序。
我这里浏览示例程序时报了个21040的错:

程序打开例程时找的是这个目录“C:\Users\Public\Documents\MVTec\HALCON-18.11-Steady”,而“HALCON-18.11-Steady”文件夹是不存在的,我电脑上有的是这个目录“C:\Users\Public\Documents\MVTec\HALCON-18.11”。这样看网友帖子说“请下载Halcon切换助手进行修复解决,请保持默认的例程目录不要修改!”。但是我把“HALCON-18.11”文件夹复制粘贴一下,改为“HALCON-18.11-Steady”,这时例程可以打开了。也可是试试Halcon切换助手管不管用

打开例程后:

然后导出C++,点击,文件-导出

点击导出后,生成文件:
三、在vs2017中配置测试halcon
找到halcon安装目录

在vs2017中,新建控制台项目(仅又一个包含main函数的文件),并将导出的halcon导出的文件打开,将代码复制粘贴到vs2017项目的文件中:

.h目录的配置:
项目-属性-C/C++-常规-附加包含目录中配置(注意这个包含可能会有顺序的,顺序不对可能会报找不到定义什么的,到时候把找不到的放到前面):

lib配置:
项目-属性-链接器-常规-附加库目录中配置

项目-属性-链接器-输入-附加依赖项中配置

dll配置:
dll可以直接放到生成可执行文件的同级目录下(一般就是debug或release目录下),但是dll太多比较乱,可以配置到vs中。
项目-属性-链接器-常规-附加库目录中配置

注意,下面这样式不对的,千万自作聪明,以为分行清晰就分行(我吃过亏,哭。。。) ,这样不管用的。

然后,这个要选对,不然报错

后面就可以调试了,最主要就是这个action()函数,可以在main函数中加一个Sleep停一下:


.h、lib、dll可以配置成相对路径,可能会更方便一些
边栏推荐
- logback日志级别简介说明
- Leetcode 879. profit plan
- Kubernetes (五) ---------部署 Kubernetes Dashboard
- Gin Middleware
- Docker最新超详细教程——Docker创建运行MySQL并挂载
- Remote invocation of microservices
- 对Vintage分析的一些学习理解
- MySQL 有这一篇就够(呕心狂敲37k字,只为博君一点赞!!!)
- How to use GS_ Expansion expansion node
- Summary of OCR optical character recognition methods
猜你喜欢

Docker最新超详细教程——Docker创建运行MySQL并挂载
Scala higher order (10): exception handling in Scala

Win11vmware turns on the virtual machine and restarts on the blue screen and the solution that cannot be started

论文阅读 (62):Pointer Networks

作业7.28 文件IO与标准IO

Spingboot integrates the quartz framework to realize dynamic scheduled tasks (support real-time addition, deletion, modification and query tasks)

JS break and continue and return keywords

ETL为什么经常变成ELT甚至LET?

3-global exception handling

Ethernet interface introduction
随机推荐
MySQL 高级(进阶) SQL 语句 (一)
Win11vmware turns on the virtual machine and restarts on the blue screen and the solution that cannot be started
对Vintage分析的一些学习理解
gcc/g++的使用
CAN&CANFD综合测试分析软件LKMaster与PCAN-Explorer 6分析软件的优势对比
cdc source能读完MySqlSnapshotSplit 就退出嘛
Scala 高阶(九):Scala中的模式匹配
Why does ETL often become ELT or even let?
Vue router route cache
Zabbix 其他基础监控项
Using C language to skillfully realize the chess game -- Sanzi chess
反射reflect
微服务远程调用
Error 1045 (28000) access denied for user 'root' @ 'localhost' solution
20-40k | mecarmand 3D vision algorithm / software / Product Manager Recruitment
Gin routing, parameters, output
vagrant box 集群 处理
leetcode力扣经典问题——4.寻找两个正序数组的中位数
我想问一下,我flink作业是以upsert-kafka的方式写入数据的,但是我在mysql里面去更
[OpenGL] use of shaders
