请选择 进入手机版 | 继续访问电脑版

Hello Mat

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 2952|回复: 5

C#调用C++版halcon生成的dll

[复制链接]

786

主题

928

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
30078
发表于 2017-2-9 22:33:27 | 显示全部楼层 |阅读模式
halcon生成C++版代码,封装为dll,供C#调用:
具体链接:

C#窗体程序--调用代码:
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using System.Windows.Forms;

  10. using HalconDotNet;
  11. using System.Runtime.InteropServices;

  12. namespace CED_CSharp
  13. {
  14.     public partial class Form1 : Form
  15.     {
  16.         public Form1()
  17.         {
  18.             InitializeComponent();
  19.         }

  20.         private void button1_Click(object sender, EventArgs e)
  21.         {
  22.             HObject ho_Image,ho_GrayImage, ho_ImageCED, ho_DiffOfGauss;
  23.             HTuple ImagePath = @"C:/Users/ysw/Desktop/视频讲解/图像处理视频Halcon/Halcon图像处理-edit/logo3.jpg";
  24.             HTuple hv_Width = null, hv_Height = null, hv_Sigma1 = null, hv_Sigma2 = null;

  25.             HOperatorSet.ReadImage(out ho_Image, ImagePath);
  26.             HOperatorSet.Rgb1ToGray(ho_Image, out ho_GrayImage);
  27.             HOperatorSet.GetImageSize(ho_GrayImage, out hv_Width, out hv_Height);
  28.             hv_Sigma1 = 0.5;
  29.             hv_Sigma2 = 3;
  30.             HOperatorSet.GenEmptyObj(out ho_ImageCED);
  31.             HOperatorSet.GenEmptyObj(out ho_DiffOfGauss);
  32.             if (CED_CSharp.LoadDLL.CED_LoG(ho_Image, out ho_ImageCED, out ho_DiffOfGauss, hv_Sigma1, hv_Sigma2))
  33.             {
  34.                 HOperatorSet.SetPart(hWindowControl1.HalconWindow, 0, 0, hv_Height - 1, hv_Width - 1);
  35.                 HOperatorSet.DispObj(ho_Image, hWindowControl1.HalconWindow);

  36.                 HOperatorSet.SetPart(hWindowControl2.HalconWindow, 0, 0, hv_Height - 1, hv_Width - 1);
  37.                 HOperatorSet.DispObj(ho_ImageCED, hWindowControl2.HalconWindow);

  38.                 HOperatorSet.SetPart(hWindowControl3.HalconWindow, 0, 0, hv_Height - 1, hv_Width - 1);
  39.                 HOperatorSet.DispObj(ho_DiffOfGauss, hWindowControl3.HalconWindow);
  40.             }
  41.             else
  42.             {
  43.                 MessageBox.Show("CED_LoG算法调用有误!!!");
  44.             }

  45.             //HOperatorSet.CoherenceEnhancingDiff(ho_Image, out ho_ImageCED, hv_Sigma1, 4, 0.5, 50);
  46.             //HOperatorSet.DiffOfGauss(ho_ImageCED, out ho_DiffOfGauss, hv_Sigma2, 1.6);

  47.             //HOperatorSet.SetPart(hWindowControl2.HalconWindow, 0, 0, hv_Height - 1, hv_Width - 1);
  48.             //HOperatorSet.DispObj(ho_ImageCED, hWindowControl2.HalconWindow);

  49.             //HOperatorSet.SetPart(hWindowControl3.HalconWindow, 0, 0, hv_Height - 1, hv_Width - 1);
  50.             //HOperatorSet.DispObj(ho_DiffOfGauss, hWindowControl3.HalconWindow);


  51.         }
  52.     }
  53. }
复制代码

算法QQ  3283892722
群智能算法链接http://halcom.cn/forum.php?mod=forumdisplay&fid=73
回复

使用道具 举报

0

主题

1

帖子

6

积分

新手上路

Rank: 1

积分
6
发表于 2017-10-21 13:53:58 | 显示全部楼层
看看,最近正好用到!
回复 支持 反对

使用道具 举报

0

主题

4

帖子

14

积分

新手上路

Rank: 1

积分
14
发表于 2018-12-13 14:24:21 | 显示全部楼层
看看,现在一直在研究,还没有搞明白,谢谢分享
回复 支持 反对

使用道具 举报

0

主题

4

帖子

14

积分

新手上路

Rank: 1

积分
14
发表于 2018-12-13 14:25:38 | 显示全部楼层
谢谢大师傅的分享,我现在封装了一个DLL,DLL里面的参数有HObject,程序运行总是报错误,不知道怎么办,能不能指导下我,我这边付费的,谢谢
回复 支持 反对

使用道具 举报

786

主题

928

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
30078
 楼主| 发表于 2019-1-20 22:55:28 | 显示全部楼层
xiechao 发表于 2018-12-13 14:25
谢谢大师傅的分享,我现在封装了一个DLL,DLL里面的参数有HObject,程序运行总是报错误,不知道怎么办,能 ...

你看一下我对应的链接,谢谢
算法QQ  3283892722
群智能算法链接http://halcom.cn/forum.php?mod=forumdisplay&fid=73
回复 支持 反对

使用道具 举报

0

主题

1

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2020-1-12 15:03:29 | 显示全部楼层
谢谢,学习一下。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Python|Opencv|MATLAB|Halcom.cn  

GMT+8, 2020-1-25 09:50 , Processed in 0.091030 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表