C#调用halcon.dll过程事例

一.C#调用halcon.dll过程

1.找到桌面hclcon,点击hclcon右击属性-->打开文件位置,找到halcon.dll复制粘贴到桌面新建一个文件夹

2.从打开文件位置页面中,返回上一级bin中点击dotnet35

3.复制里面的.dll文件到桌面位置

4.打开Visual Studio 2022新建窗体

5.将桌面中的halcondotnet.dll拖进引用

6.运行一下代码,右击项目名,点击在文件资源管理器中打开文件夹,找到bin-->Debug文件

然后将桌面上的.dll文件复制粘贴到里面

看到引用里面有halcondonet表示添加成功

右击项目点击属性,点击生成,取消首选32位

二、如何写一个测试程序证明C#halcon联合开发成功

打开工具箱,将halcondonet.dll拖进BindingSource

拖HWindowControl,Button,lable如图

可以用一下代码验证是否成功

using HalconDotNet;
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 第一个联合项目
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        /// <summary>
        /// 图片的成员变量  
        /// </summary>
        private HObject ho_image;
        private void button_readImage_Click(object sender, EventArgs e)
        {
            HOperatorSet.ReadImage(out ho_image, "C:\Users\LENOVO\Pictures\1.png");
            HTuple width, height;   
            //获得图片的宽高
            HOperatorSet.GetImageSize(ho_image,out width, out height);

            //设置显示范围
            //HWindowControl.HalconWindow -->控件的句柄  设置显示范围
            HOperatorSet.SetPart(hWindowControl_yuanshi.HalconWindow,0,0,  (height - 1),(width -1));

            //显示
            HOperatorSet.DispObj(ho_image, hWindowControl_yuanshi.HalconWindow);
        }

        HTuple MinGray;
        HTuple MaxGray;
        private void button_thresholdImage_Click(object sender, EventArgs e)
        {

            hWindowControls_threshold.HalconWindow.ClearWindow();

            if (ho_image == null)
            {
                button_readImage_Click(null, null);
            }
            //设置颜色
            HOperatorSet.SetColor(hWindowControls_threshold.HalconWindow,"red");

            HObject Region;

            //int.Parse(string) 字符串类型转换成int类型
            MaxGray =int.Parse(textBox_MaxGray.Text);
            MinGray = int.Parse(textBox_MinGray.Text);

            //阈值分割
            HOperatorSet.Threshold(ho_image, out Region, MinGray, MaxGray);

            HTuple width, height;
            HOperatorSet.GetImageSize(ho_image, out width, out height);
            HWindowControl.HalconWindow -->窗体句柄  设置显示范围
            HOperatorSet.SetPart(hWindowControls_threshold.HalconWindow, 0, 0, height - 1, width - 1);
            显示
            HOperatorSet.DispObj(Region, hWindowControls_threshold.HalconWindow);
        }
    }
}
 

### 回答1: Halcon .dll是用于Halcon图像处理库的动态链接库,用于在Windows操作系统上调用Halcon函数和实现相关功能。在使用Halcon .dll之前,需要了解一些相关的说明和文档。 Halcon .dll的说明文档通常包括以下几个方面的内容: 1. 引用和安装:说明如何在开发环境中引用和安装Halcon .dll,包括将库文件放置在正确的路径并设置相关的环境变量。 2. 函数和功能:列举了Halcon .dll所包含的函数和对应的功能说明,以及参数的详细说明。这帮助开发者理解如何正确调用函数以实现需要的图像处理功能。 3. 数据类型和结构:介绍了Halcon .dll中使用的数据类型和结构,包括图像、坐标系、点和区域等。这有助于开发者在使用函数时正确传递和操作数据。 4. 错误处理:说明了Halcon .dll中的错误代码和异常处理机制,包括如何检测和处理错误,以及如何获取详细的错误信息和调试信息。 5. 示例代码和应用案例:提供了一些示例代码和应用案例,展示了如何使用Halcon .dll来完成一些常见的图像处理任务,如图像检测、测量和识别等。 总结来说,Halcon .dll的说明文档是帮助开发者正确使用该库的重要指南,包含了库的安装和引用、函数和功能的说明、数据类型和结构的介绍、错误处理机制以及示例代码和应用案例等内容。开发者可以根据文档中提供的信息和示例来快速上手并实现自己的图像处理需求。 ### 回答2: Halcon .dll是一种动态链接库(Dynamic Link Library),它包含了Halcon图像处理的相关函数和工具。使用Halcon .dll可以实现对图像的处理、分析和识别等功能。 Halcon是一种计算机视觉库,具有广泛的应用领域,如工业自动化、医疗影像、安防监控等。通过使用Halcon .dll,我们可以将Halcon的功能嵌入到我们自己的程序中,以便更方便地调用和使用。 Halcon .dll说明文档提供了关于如何使用Halcon .dll的详细信息和指南。它通常会包含以下内容: 1. 函数列表:说明了Halcon .dll中包含的各种函数及其功能。我们可以根据这些函数的说明来选择合适的函数来处理我们的图像。 2. 参数说明:对于每个函数,说明文档会列出需要传递的参数及其含义。这些参数可能包括图像的路径、图像的尺寸、需要进行的处理操作等。 3. 示例代码:说明文档中通常会提供一些示例代码,以帮助我们快速上手并理解如何使用Halcon .dll来实现图像处理。这些示例代码可以作为我们开发自己程序的参考。 4. 返回值说明:说明文档也会列出每个函数的返回值及其含义。这些返回值可以帮助我们判断函数是否执行成功,并根据返回值来处理后续的逻辑。 通过仔细阅读和理解Halcon .dll说明文档,我们可以掌握Halcon .dll的使用方法,从而在我们自己的项目中实现各种图像处理功能。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值