C#与Halcon联合编程(1)显示图像

C#Halcon联合编程第一步就是调用Halcon图像处理数据库,是否调用成功,通常是利用Halcon的图像显示控件能否正确显示图像进行判断。下面就简单介绍一下如何利用C#调用Halcon图像显示控件来显示图像。

1.创建C#项目,创建一个Windows窗体应用程序。

 C#与Halcon联合编程(1)显示图像

 

 

 

 

2.在项目中引用HalconDLL文件。鼠标右键单击“引用”–“添加引用”,如下图:

 C#与Halcon联合编程(1)显示图像

 

 

 

在弹出的引用管理器中点击下方的“浏览”按钮。选择Halcon安装目录下的halcondotnet.dll文件,点击添加–确定。本文以halcon12为例子,如下图:

 C#与Halcon联合编程(1)显示图像

 

 

 

引用成功后halcondotnet会出现在引用项目里。

 C#与Halcon联合编程(1)显示图像

 

 

 

3.添加halcon图像显示控件。在Visual Studio左侧点击“工具箱”,在空白区域点击鼠标右键,选择“选择项”。在".NET Framework组件“这一页中点击”浏览“按钮,同样添加刚刚引用的那个halcondotnet.dll文件。

 C#与Halcon联合编程(1)显示图像

 

 

 

添加成功后,在常规一类中会出现HWindowControl这个控件。如下图。

 C#与Halcon联合编程(1)显示图像

 

 

 

将该控件添加到界面上。如下图:

 C#与Halcon联合编程(1)显示图像

 

 

 

查看添加的这个HWindowControl控件的属性可以看到控件的名称为hWindowControl1,这个名称在程序中会用到。如下图:

 C#与Halcon联合编程(1)显示图像

 

 

 

4.在程序中进行图像的显示。添加的语句都有注释。

 

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

using HalconDotNet;//添加这一句

 

namespace HalconWindows

{

    public partial class Form1 : Form

    {

        HWindow win = null;//定义一个Halcon窗口对象

        HImage image = null;//定义一个Halcon图像变量

        public Form1()

        {

            //win = hWindowControl1.HalconWindow;这句放在InitializeComponent()函数前执行会报错

            InitializeComponent();

            

            win = hWindowControl1.HalconWindow;//Halcon窗口对象与控件进行关联

            image = new HImage();//实例化图像变量

            image.ReadImage(@"e:\rmb.png");//读取图像

            int width = 0, height = 0;//创建变量用于接收图像尺寸

            image.GetImageSize(out width, out height);//获取图像尺寸

            win.SetPart(0, 0, height - 1, width - 1);//设置Halcon控件中图像的显示尺寸

            win.DispObj(image);//显示图像

        }

    }

}

 

此外,在引用dll文件后,可能在运行的时候会报错,可以尝试修改一下项目的框架版本。具体位置:鼠标右键单击项目文件—属性—应用程序----目标框架

————————————————

版权声明:本文为CSDN博主「大__桃」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/biggestcherry/article/details/89547047

C#与Halcon联合编程(1)显示图像

上一篇:windows 2012 r2如何开启远程桌面


下一篇:使用WebAPI时重新验证模型(TryValidateModel等效)