halcon学习笔记(5)——QT和Halcon配置c++混合编程

          QT和halcon的配置实验了一阵,总是不太成功;后来用qt+vs版本的,并且用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)下载安装个msvc2010,这个自己在网上找资源吧;

         (4)下载安装halcon11,这个也自己找一下资源吧;

         (5)我的系统是win7+64位,安装时候先安装msvc2010,再安装qt-opensource,再安装qt-vs就可以,按着操作走就可以;

         (6)以上都安装完成后,打开msvc2010会看到多QT选项,如下:


          (7)点击QT5>>QT Options,弹出对话框里点击添加“add”,将qt目录里msvc2010添加进去,点击ok如下图:

halcon学习笔记(5)——QT和Halcon配置c++混合编程_第1张图片

            (8)以上是配置qt+vs;现在配置halcon,在vs添加halcon的头文件目录和lib目录;新建一个qt项目,然后选择qt项目的属性,在属性里面选择:配置属性>>vc++目录>>包含目录,选择编辑添加halcon的include目录如下图:

halcon学习笔记(5)——QT和Halcon配置c++混合编程_第2张图片

       (9)继续选择:配置属性>>vc++目录>>引用目录,选择halcon的lib目录如下图:

halcon学习笔记(5)——QT和Halcon配置c++混合编程_第3张图片


          (10)继续选择:配置属性>>vc++目录>>库目录,同样选择halcon的lib目录;

          (11)选择:配置属性>>连接器>>附加库目录,同样选择halcon的lib目录;

          (12)以上基本配置完成;可以在main.cpp代码中添加如下,看看是否成功;这个实例是halcon手册中,Solution Guide I Basics中,4.1.4 A First Example的一个例子。


#include 
#include"Halcon.h"
#include"cpp/HalconCpp.h"
#include"halconcpp\HalconCpp.h"
#include 
#include 
#include 
# include 

	 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的里面第一个联通区域里的面积,如下图弹出“1847”:

halcon学习笔记(5)——QT和Halcon配置c++混合编程_第4张图片


       这个“1847”就是Area的第一个至,如halcon中运行下图所示:

halcon学习笔记(5)——QT和Halcon配置c++混合编程_第5张图片






你可能感兴趣的:(halcon,qt)