个人自学,网上搜了很多资料,也没有一个非常完整集成并且截图很清楚的博文,所以写此博文,供初学者借鉴参考,肯定有不足之处,可以多交流。
博文最下方链接中有本博文halcon和QT安装文件以及完整测试项目代码,如需,自行下载
1、halcon安装
halcon安装简单,网上一搜一大把,都是下一步下一步,安装完后,打开下载包中的文档,按照文档安装license,就可以使用了。
2、QT安装
下载后,开始安装
Qt 下的Mingw是指用mingw编译的Qt库,
Tools下的是用来编译Qt库的Mingw编译器。
剩下的都就是下一步,直到安装完成
QT安装完后,配置环境变量,在path中添加QT的bin目录。这个目录是我安装的目录,对应自己安装目录进行修改
D:\Qt\Qt5.14.2\Tools\mingw730_64\bin;
3、开始集成工作
首先把需要的halcon的库全部单独文件出来,为什么要单独出来呢,因为halcon安装的时候,目录中有空格和一些符号,这个地址放在QT中的时候,QT找不到对应的库(我的halcon目录是D:\Program Files\MVTec\HALCON-19.11-Progress),然后报错。所以单独出来,也方便项目在没有安装halcon的环境下运行
我的目录截图如下
下面说下lib和include文件的组成。导入的库不一定要全部用,只是方便简洁一点,第一次集成,还不清楚各个lib包的用处的情况下,全部导入,避免出现错误耽误时间
首先新建这2个名字的文件夹,
1、lib文件的组成
把D:\Program Files\MVTec\HALCON-19.11-Progress\lib\x64-win64目录下的lib全部复制出来,然后
进入halcon的下面目录,拿出对应上面lib文件名的DLL文件
D:\Program Files\MVTec\HALCON-19.11-Progress\bin\x64-win64
2、include文件的组成
进入D:\Program Files\MVTec\HALCON-19.11-Progress\include,直接把这个目录下的全部拷贝出来
下图是我导出后2个文件夹的内容截图
打开QT,新建项目
集成halcon编译需要用msvc,如果用minGW,会出错,等有空再仔细找答案
下一步一直完成,打开项目,开始配置
首先将之前的include和lib包放在这个项目下面
在QT中画界面 白框是Graphics View
进入函数后,内容是放halcon导出的C++代码,后面导出halcon处理代码后,然后复制到这个地方
然后在pro文件中引入库
执行一下构建和qmake
然后输入红框中的代码,再编译,如果不报错,说明库已经集成进来
编写简单hacon例子,就是读图,显示,然后导出代码,集成到qt
编写例子,并导出
导出后,在QT中打开1.cpp,然后复制红框中的内容,放到上面截图的on_pushButton_clicked()方法中
绑定QT和halcon窗口,加入代码后的截图如下,整个代码如下
代码中图片的链接,根据个人情况修改
集成代码已经全部弄完,运行测试
点击pushButton按钮,QT窗口中出现图片就说明集成成功,其他不足,可以逐个调整
至此,QT5集成Halcon已经完成,如果你集成后有什么问题,都可以留言,欢迎讨论