作者:abcvincent 地址: https://blog.csdn.net/abcvincent/article/details/52561608
用Qt+VS2017版本和Halcon17.12的配置的,并且用vs编译器才配合成功,步骤如下。
(1)首先下载qt-opensource-windows-x86-msvc2010-5.5.1.exe,这个官网上就有;
(2)下载qt-vs-addin-1.2.4-opensource.exe,这个官网也有,没有可以去这个网站(很全):http://www.qtcn.org/bbs/read-htm-tid-1075.html;
(3)下载安装个VS2017,这个自己在网上找资源吧;
(4)下载安装halcon17,这个也自己找一下资源吧;
(5)我的系统是win7+64位,安装时候先安装VS2017,再安装qt-opensource,再安装qt-vs就可以,按着操作走就可以;
(6)以上都安装完成后,打开VS2017会看到多QT选项,如图1:
图1
(7)点击QT5>>QT Options,弹出对话框里点击添加“add”,将Qt目录里VS2017添加进去,点击ok如图2:
图2
(8)以上是配置qt+vs;现在配置halcon,在vs添加halcon的头文件目录和lib目录;新建一个qt项目,然后选择qt项目的属性,在属性里面选择:配置属性>>vc++目录>>包含目录,选择编辑添加halcon的include目录如图3:
图3
(9)继续选择:配置属性>>vc++目录>>引用目录,选择halcon的lib目录如图4:
图4
(10)继续选择:配置属性>>vc++目录>>库目录,同样选择halcon的lib目录;
(11)选择:配置属性>>连接器>>附加库目录,同样选择halcon的lib目录;
(12)以上基本配置完成;可以在main.cpp代码中添加如下,看看是否成功;
测试配置程序。
下面这个实例是halcon手册中,Solution Guide I Basics中,4.1.4 A First Example的一个例子。
-
#include <QtWidgets/QApplication> -
#include"Halcon.h" -
#include"cpp/HalconCpp.h" -
#include"halconcpp\HalconCpp.h" -
#include <QPalette> -
#include <QWidget> -
#include <QMessageBox> -
# include <stdio.h> -
using namespace Halcon; -
using namespace HalconCpp; -
int main(int argc, char *argv[]) -
{ -
QApplication a(argc, argv); -
testq w; -
HalconCpp:: HObject ho_Image, ho_BrightPixels, ho_Particles; -
HalconCpp:: HTuple hv_Area, hv_Row, hv_Column,area; -
ReadImage(&ho_Image, "particle"); -
Threshold(ho_Image, &ho_BrightPixels, 120, 255); -
Connection(ho_BrightPixels, &ho_Particles); -
AreaCenter(ho_Particles, &hv_Area, &hv_Row, &hv_Column); -
int s0,s1; -
s0=hv_Area[0]; -
s1=hv_Area[1]; -
QMessageBox msgBox; -
msgBox.setText(QString::number(s0)); -
msgBox.exec(); -
QMessageBox msgBox2; -
msgBox2.setText(QString::number(s1)); -
msgBox2.exec(); -
w.show(); -
return a.exec(); -
}
运行时候会弹出AreaCenter的里面第一个联通区域里的面积,如图5弹出“1847”:
图5
这个“1847”就是Area的第一个至,如halcon中运行图6所示:
图6