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. WebAssembly学习(一):认识WebAssembly

    WebAssembly作为一门新兴起的技术,在 JavaScript 圈非常的火!人们都在谈论它多么多么快,怎样怎样改变 Web 开发领域,被各大巨头所推广,这篇文章对其做一个简单的了解认识,本文非原 ...

  2. 分享到twitter,facebook,google,yahoo,linkedined,msn

    编辑器加载中... 1. 分享到twitter的代码” title=”分享到 Twitter” target=”_blank” rel=”nofollow”>Twitter 2. 分享到Face ...

  3. CSUOJ 1555 Inversion Sequence

    1555: Inversion Sequence Time Limit: 2 Sec  Memory Limit: 256 MBSubmit: 107  Solved: 34 Description ...

  4. 洛谷——P2446 [SDOI2010]大陆争霸

    https://www.luogu.org/problem/show?pid=2446#sub 题目背景 在一个遥远的世界里有两个国家:位于大陆西端的杰森国和位于大陆东端的克里斯国.两个国家的人民分别 ...

  5. openssl之EVP系列之5---EVP_Encrypt系列函数具体解释(二)

    openssl之EVP系列之5---EVP_Encrypt系列函数详细解释(二)    ---依据openssl doc/crypto/EVP_EncryptInit.pod和doc/ssleay.t ...

  6. RvmTranslator6.1 - Attribute List

    RvmTranslator6.1 - Attribute List eryar@163.com 1. Introduction RvmTranslator can translate the RVM ...

  7. 动态规划 LCS,LIS

    1.最大连续子序列 dp[i]=max(dp[i-1]+a[i],a[i]) 以i为结尾 2.最大不连续子序列 dp[i]=max(dp[j]+a[i],dp[j]) 3.最大连续递增子序列 if a ...

  8. Android图像处理之熔铸特效

    代码: package com.color; import android.content.Context; import android.graphics.Bitmap; import androi ...

  9. 智课雅思词汇---三、aud和auto和bene是什么意思

    智课雅思词汇---三.aud和auto和bene是什么意思 一.总结 一句话总结:aud:听 auto:自己,self bene:good,well 1.anthropo是什么意思? anthropo ...

  10. 如何使用jquery判断一个元素是否含有一个指定的类(class)

    如何使用jquery判断一个元素是否含有一个指定的类(class) 一.总结 一句话总结:可以用hasClass方法(专用)和is方法 1.is(expr|obj|ele|fn)的方法几个参数表示什么 ...