1.在halcon中写入算子,实现函数过程

比如:

read_image(Image,’D:/MyFile/halcon/数字识别/1.jpg’)

decompose3(Image, ImageR, ImageG, ImageB)

threshold (ImageG, Regions, 0, 183)

connection (Regions, Connection)

select_shape (Connection, SelectedRegions, ‘area’, ‘and’, 1987.72, 7500)

read_ocr_class_mlp(‘Document_0-9.omc’,OCRHandle)

do_ocr_multi_class_mlp(SelectedRegions,ImageG,OCRHandle, Class, Confidence)

2.通过halcon的IDE开发环境,导出C#代码

3.利用vs2013创建一个C#窗体程序,加一个button。

4.将HDevelop安装目录下的目录复制到刚创建的C#窗体程序目录下

比方:我的C#project名字叫Hello,我的HDevelop安装在C:\Program Files\MVTec中。

我就把C:\Program Files\MVTec\Halcon\bin目录复制到Hello.sln所在位置的同一目录下。

5.在C#project中,对“解决方式资源管理器” 的 “引用” 右击,选择 “增加引用” 。点击“浏览”,选择刚才加进C#project的 “bin” 目录,接着选择“dotnet35”目录。最后选择“halcondotnet.dll”文件。点击”增加“。

6.在C#project中,选择“视图”。选择“工具箱”,在“工具箱“中右击,选择”选择项“,点击”浏览“。选择刚才加进C#project的 “bin” 目录,接着选择“dotnet35”目录。最后选择“halcondotnet.dll”文件。

点击”打开“。

7.将第二步导出的c#代码中生成的类,增加”Program.cs“文件里,例如以下

using System;

using System.Collections.Generic;

using System.Linq;

using System.Threading.Tasks;

using System.Windows.Forms;

using HalconDotNet;

namespace Hello

{

public partial class HDevelopExport

{

    public HDevelopExport()
{
// Default settings used in HDevelop
HOperatorSet.SetSystem("do_low_error", "false");
action();
} // Main procedure
public void action()
{ // Local iconic variables HObject ho_Image; // Local control variables HTuple hv_Width, hv_Height, hv_WindowHandle; // Initialize local and output iconic variables
HOperatorSet.GenEmptyObj(out ho_Image); if (HDevWindowStack.IsOpen())
{
HOperatorSet.CloseWindow(HDevWindowStack.Pop());
} HOperatorSet.ReadImage(out ho_Image, "1.jpg");
HOperatorSet.GetImageSize(ho_Image, out hv_Width, out hv_Height);
HOperatorSet.SetWindowAttr("background_color", "black");
HOperatorSet.OpenWindow(0, 0, hv_Width, hv_Height, 0, "", "", out hv_WindowHandle);
HDevWindowStack.Push(hv_WindowHandle);
if (HDevWindowStack.IsOpen())
{
HOperatorSet.DispObj(ho_Image, HDevWindowStack.GetActive());
}
ho_Image.Dispose(); }
}
static class Program
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}

}

8.在C#project的”Form1.cs“文件,button响应事件中增加代码。例如以下:

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;

namespace Hello

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

    private void button1_Click(object sender, EventArgs e)
{
HDevelopExport HD = new HDevelopExport();
HD.action(); }
}

}

9.在C#project”Debug“目录中增加”halcon.dll“、”halcondotnet.dll“、”license.dat“文件。

10.移植到还有一台机器中的时候,要在还有一台机器路径C:\Program Files\MVTec\Halcon\下增加本台机器安装的HDevelop的help目录。

比如:我的机器C:\Program Files\MVTec\HALCON-10.0\help

我在还有一台机器下也按着这个路径建立同样目录的名字,把我的机器C:\Program Files\MVTec\HALCON-10.0\help下的所以文件复制到还有一台机器中。

11.配置完毕。执行。。。。

c#下halcon配置的更多相关文章

  1. ASP.NET Aries 入门开发教程4:查询区的下拉配置

    背景: 今天去深圳溜达了一天,刚回来,看到首页都是微软大法好,看来离.NET的春天就差3个月了~~ 回到正题,这篇的教程讲解下拉配置. 查询区的下拉配置: 1:查询框怎么配置成下拉? 在配置表头:格式 ...

  2. Windows下Nginx配置SSL实现Https访问(包含证书生成)

    Vincent.李   Windows下Nginx配置SSL实现Https访问(包含证书生成) Windows下Nginx配置SSL实现Https访问(包含证书生成) 首先要说明为什么要实现https ...

  3. window下xampp配置多端口、多站点步骤

    好些日子没整理知识了,许多新东西不整理出来时间一长就淡忘了.看来以后得继续坚持整理. 配置XAMPP多端口.多站点如下步骤: 多端口: (一个域名下同时配置多个端口,从而达到访问不同程序) 效果例如: ...

  4. Xamarin Studio在Mac环境下的配置和Xamarin.iOS常用控件的示例

    看过好多帖子都是Win环境装XS,Mac只是个模拟器,讲解在Mac环境下如何配置Xamarin Studio很少,也是一点点找资料,东拼西凑才把Xamarin Studio装在Mac上跑起来,如下: ...

  5. CxImage在VS2010下的配置

    http://blog.csdn.net/youzhuo/article/details/24601621 一.编译Cximage 1.在SourceForge上下载cximage702_full.7 ...

  6. CentOS下Apache配置多域名或者多端口映射

    CentOS下Apache默认网站根目录为/var/www/html,假如我默认存了一个CI项目在html文件夹里,同时服务器的外网IP为ExampleIp,因为使用的是MVC框架,Apache需开启 ...

  7. 【转载】CentOS6.5_X64下安装配置MongoDB数据库

    [转载]CentOS6.5_X64下安装配置MongoDB数据库 2014-05-16 10:07:09|  分类: 默认分类|举报|字号 订阅      下载LOFTER客户端 本文转载自zhm&l ...

  8. 百度在线编辑器UEditor(v1.3.6) .net环境下详细配置教程之更改图片和附件上传路径

    本文是接上一篇博客,如果有疑问请先阅读上一篇:百度在线编辑器UEditor(v1.3.6) .net环境下详细配置教程 默认UEditor上传图片的路径是,编辑器包目录里面的net目录下 下面就演示如 ...

  9. 在windows下安装配置Ulipad

    在windows下安装配置Ulipad 今天推荐一款轻便的文本编辑器Ulipad,用来写一些小的Python脚本非常方便. Ulipad下载地址: https://github.com/limodou ...

随机推荐

  1. jQuery中四种事件监听的区别

    原文链接:点我 我们知道jquery提供了四种事件监听方式,分别是bind.live.delegate.on,下面就分别对这四种事件监听方式分析. 已知有4个列表元素: 列表元素1 列表元素2 列表元 ...

  2. Swift学习笔记(6)--字典

    1.定义 //1.基本定义 [key 1: value 1, key 2: value 2, key 3: value 3] var dict = ["name":"Xi ...

  3. 彻底解决Linux索引节点(inode)占用率高的告警

    今天邮箱里发现有一封某服务器inode使用率发生告警的邮件 登录到服务器上df -i查看,发现/路径下91%,磁盘使用率却不高,猜测可能是某个目录下的小文件过多,进而造成inode占用率过高,但不清楚 ...

  4. Java并发包之CountDownLatch用法

    CountDownLatch计数器闭锁是一个能阻塞主线程,让其他线程满足特定条件下主线程再继续执行的线程同步工具. Latch闭锁的意思,是一种同步的工具类.类似于一扇门:在闭锁到达结束状态之前,这扇 ...

  5. 转载——利用C#自带组件强壮程序日志

    利用C#自带组件强壮程序日志   在项目正式上线后,如果出现错误,异常,崩溃等情况 我们往往第一想到的事就是查看日志 所以日志对于一个系统的维护是非常重要的 声明 正文中的代码只是一个栗子,一个非常简 ...

  6. hdoj 1159 Common Subsequence【LCS】【DP】

    Common Subsequence Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Other ...

  7. 算法题:给你一个自然数N,求[6, N]之内的全部素数中, 两两之和为偶数的那些偶数。

    /* 算法题:给你一个自然数N,求[6, N]之内的全部素数中. 两两之和为偶数的那些偶数. */ #include <iostream> using namespace std; voi ...

  8. hdu1078 FatMouse and Cheese(记忆化搜索)

    转载请注明出处:http://blog.csdn.net/u012860063 题目链接:pid=1078" target="_blank">http://acm. ...

  9. js call 和 apply

    前言 call 和 apply 都是为了改变某个函数运行时的 context 即上下文而存在的,换句话说,就是为了改变函数体内部 this 的指向. call 和 apply二者的作用完全一样,只是接 ...

  10. C#开发 —— 高级应用

    迭代器 可以返回相同类型的值的有序序列的一段代码,可用作方法,运算符或get访问器的代码体 使用 yield return 语句依次返回每个元素,yield break 语句可将终止迭代 迭代器的返回 ...