将Hobject或HImage图像转为Bitmap格式(C#)

本文介绍如何在C#中将Halcon的HObject或HImage图像转换为Bitmap格式,以供显示和保存。核心方法是利用GetImagePointer1算子获取图像数据指针,然后进行转换。转换过程中需要在项目设置中开启允许不安全代码。
摘要由CSDN通过智能技术生成

将Hobject或HImage图像转为Bitmap格式(C#)

工作上的需求,需要将Halcon处理过的图像转换为Bitmap格式的图像进行显示保存。在网上查阅了一些例程,多数都未能实现。在和同事的探讨摸索下,结合网上查阅到的类似程序,最终实现了Hobject或Himage转Bitmap的功能。
贴代码之前首先介绍一下转换的核心算子:GetImagePointer1。
IntPtr HImage.GetImagePointer1(out string type,out int width,out int height),这是halcon图像库中获取黑白图像数据指针的算子,再次强调,是获取黑白图像数据指针的算子。该算子返回一个指向图像数据的IntPtr型指针,输出的type参数为数据格式,例如图像为8位黑白格式的时候type为“byte”,width和height是图像的尺寸。
下面是转换的代码

	Himage image = new HImage();
    image.ReadImage(@"d:\image.bmp");//读取图像
    HImage grayImage = new HImage();
    grayImage = image.Rgb1ToGray();//将彩色图像转为黑白
    string type;//接收图像类型
    int width,height;//接收图像尺寸
    IntPtr pointer=grayImage.GetImagePointer1(out type, out width, out height);
    System.Drawing.Imaging.ColorPalette palette = null
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值