halcon wpf编程_采用HALCON机器视觉软件及C#语言检测工件位置的方法 (之二)

二.HALCON与C#混合编程的方法

1. HALCON软件的特点

HALCON是德国MVtec公司开发的一套完善的机器视觉算法包,拥有灵活的机器视觉集成开发环境,用户可快速完成图像处理与分析的开发工作。在欧洲以及日本工业界公认HALCON软件是最佳机器视觉软件。

HALCON软件有一千多个独立的函数,其中包含了各类滤波、几何转换、形态学计算分析、校正、分类辨识、形状搜寻等功能,应用范围涵盖工业监控、自动化检测、医学检测、遥感探测等领域。

HALCON软件支持Windows、Linux和Mac OS X操作环境。整个函数库可以用C、C++、C#、Visual basic和Delphi等多种编程语言调用。HALCON软件为百余种工业相机和图像采集卡提供了接口。

HALCON软件提供了一套交互式程序开发工具HDevelop,可在其中以HALCON程序代码直接编写、修改、执行程序,并且可以查看计算过程中的所有变量。设计、调试完成后,可以直接输出C、C++、VB、C#等程序代码,嵌入用户的程序中。

HDevelop提供了数百个例程。可以根据应用范围、应用领域、函数类型3个途径检索到合适的例程。此外,HDevelop还配有以问题为导向的手册和在线帮忙功能。

2. 一个完整的HALCON程序

HALCON程序和BASIC语言类似,函数名直接反映函数功能,容易理解。下面的程序是用大恒相机循环抓取图像并显示。星号后的文字是注释。

* 关闭所有图像抓取设备:

close_all_framegrabbers()

* 以默认设置参数打开相机:

open_framegrabber

('DahengCAM', 1, 1, 0, 0, 0, 0, 'default', -1, 'default', -1, 'default', 'default', 'default', -1, -1, AcqHandle)

* 关闭窗体:

dev_close_window ()

* 新建一个窗体:

dev_open_window (0, 0,427, 341, 'black', WindowID)

*循环体开始:

while(1)

* 由相机抓取一幅图像

grab_image (Image, AcqHandle)

* 获取图像尺寸

get_image_size(Image,Width, Height)

* 调整图像大小以适应窗体

dev_set_part(0,0, Height-1,Width-1)

* 在窗体中显示图像

dev_display(Image)

* 循环体结束

Endwhile

* 关闭指定相机:

close_framegrabber (AcqHandle)

图9 HDevelop界面、HALCON程序和图像显示窗体

3. 导出C#代码

在HDevelop界面中点击“文件”->“导出”。 参数配置最好如图10所示。

图10 “导出”界面

导出的C#程序代码如下:

//

// File generated by HDevelop for HALCON/DOTNET (C#) Version 10.0

//

// This file is intended to be used with the HDevelopTemplate or

// HDevelopTemplateWPF projects located under %HALCONEXAMPLES%\c#

using System;

using HalconDotNet;

public partial

class HDevelopExport

{

public

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值