资源简介
C#代码 NIVision Image To HalconImaget图像格式转换,直接输入NI vision图像转换为Hobject类型
代码片段和文件信息
//NationalInstruments.Vision.dll
//NationalInstruments.Vision.Common.dll
//NationalInstruments.Vision.Acquisition.Imaqdx.dll
using NationalInstruments.Vision;
using NationalInstruments.Vision.Analysis;
using NationalInstruments;
using System;
using HalconDotNet;
using Microsoft;
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;
using System.Management;
namespace NIVIOSN
{
public class NI_VISION
{
public void VisionImage2Hobject(VisionImage Image)
{
//VisionImage Image = new VisionImage();
PixelValue2D p2D;
p2D = Image.ImageToArray();
Byte[] imagedata = null;
/// byte二维数组转一维数组
///
imagedata = ByteArrToByte(p2D.U8 Image.Height Image.Width); //p2D.U8按行列排序的
Hobject hImage = new HalconDotNet.Hobject();
IntPtr jj = new IntPtr();
///byte()转IntPrt CSDN关键字“在VB.Net中使用指针”
//以下语句告诉net垃圾回收进程不对tabytTest进行处理,也就是说tabytTest占用的内存区域固定不变。
System.Runtime.InteropServices.GCHandle thobject = System.Runtime.InteropServices.GCHandle.Alloc(imagedata System.Runtime.InteropServices.GCHandleType.Pinned);
IntPtr tpobject = thobject.AddrOfPinnedobject(); //取得指向字节数组的指针
HalconDotNet.HOperatorSet.GenImage1(out hImage “byte“ Image.Width Image.Height tpobject);
//HalconDotNet.HOperatorSet.WriteImage(hImage “bmp“ 0 Application.StartupPath & “\AOI Image\“ & “_H“ & I & “.bmp“);
// //在使用完毕后一定要释放指针指向的内存块,让垃圾回收器可对这个内存块回收处理
//if (thobject.IsAllocated)
// thobject.Free();
Image.Dispose();
}
//Cam(0).TriggerSource = NiCamera.TriggerSourceType.Software;
//Getimage_Busy(0) = False;
// else
// //Threading.Thread.Sleep(10);
//catch (Exception ex)
//{
// MsgBox(ex.ToString);
//Halcon图像Hobject转NIVision图像VisionImage,步骤倒过来就好了:
// public void HImageToNivision(Hobject hImage out HTuple Pointer out HTuple Width out HTuple Height )
// {
// /// byte二维数组转一维数组
// ///
// HTuple Type = “byte“;
//HOperatorSet.GetImagePointer1(hImage out Pointerout Type out Width out Height);
// //将Pointer转byte[]
// //将byte[]转byte[]
// PixelValue2D p2D.U8=ByteArrToByte(Byte[] b Height[0].I() Width[0].I()); //byte一维数组转二维数组
// ArrayToImage(p2D);
//————————————————
//版权声明:本文为CSDN博主「c1learning」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
//原文链接:https://blog.csdn.net/c1learning/article/details/10073666
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 9607 2019-09-16 14:27 class.jpg
文件 87945 2019-09-16 14:28 class2.jpg
文件 8200 2019-09-16 13:58 Nivisiontohob
----------- --------- ---------- ----- ----
105752 3
相关资源
- c#调用matlab画图
- C# winform ListView 中实现可编辑文本或双
- C# 绚丽仪表控件,开关控件,彩色圆
- C# 生等值线 等值面 算法
- wifirobot C#上位机
- usbkey开发代码 c#
- C# 局域网聊天程序 一个服务器多个客
- C#断点续传包含客户端、服务器端代码
- .net(C#)用户登陆自定义控件
- C#循环队列
- asp.net 站内邮件系统c#
- xmodem通讯协议c#源码全网独一份绝对值
- c#实现u盘操作程序,可进行对u盘的感
- Modbus串口通信
- 旅游网站毕业论文
- c#WinForm程序自动升级源码
- 《ArcGIS Engine+C#开发教程》
- c#文件自动备份程序
- 精美时钟()
- NTKO OFFICE 4.0.3.2--完美破解+WinformDemo[
- C#小型窗体项目-BMI计算器
- C#实现本机资源监控
- C#微秒级计时器
- c#+SQL server物资管理系统
- c#gps原代码
- C#绘图工具DrawTools2005
- C#界面分屏展示
- ArcGis Engine + C# + 最短路径算法
- c#实现录wav音频
- C#中主窗体Panel中加载其他多个窗体
评论
共有 条评论