bmp类型转成Halcon的Hobject类型
bmp转Hobject基本代码
public void Bitmap2HObjectBpp8(Bitmap SrcImage, out HObject image){try{Point po = new Point(0, 0);Size so = new Size(SrcImage.Width, SrcImage.Height);//template.Width, template.HeightRectangle ro = new Rectangle(po, so);Bitmap DstImg = new Bitmap(SrcImage.Width, SrcImage.Height, PixelFormat.Format8bppIndexed);DstImg = SrcImage.Clone(ro, PixelFormat.Format8bppIndexed);Rectangle rect = new Rectangle(0, 0, DstImg.Width, DstImg.Height);BitmapData srcBmpData = DstImg.LockBits(rect, ImageLockMode.ReadOnly, PixelFormat.Format8bppIndexed);HOperatorSet.GenImage1(out image, "byte", DstImg.Width, DstImg.Height, srcBmpData.Scan0);DstImg.UnlockBits(srcBmpData);}catch (Exception ex){image = null;}}
bmp转Hobject进阶代码
public static HObject BitmapToHImage(Bitmap SrcImage)
{HObject Hobj;HOperatorSet.GenEmptyObj(out Hobj); Point po = new Point(0, 0);Size so = new Size(SrcImage.Width, SrcImage.Height);//template.Width, template.HeightRectangle ro = new Rectangle(po, so);Bitmap DstImage = new Bitmap(SrcImage.Width, SrcImage.Height, PixelFormat.Format8bppIndexed);DstImage = SrcImage.Clone(ro, PixelFormat.Format8bppIndexed);int width = DstImage.Width;int height = DstImage.Height;Rectangle rect = new Rectangle(0, 0, width, height);System.Drawing.Imaging.BitmapData dstBmpData =DstImage.LockBits(rect, System.Drawing.Imaging.ImageLockMode.ReadWrite, PixelFormat.Format8bppIndexed);//pImage.PixelFormatint PixelSize = Bitmap.GetPixelFormatSize(dstBmpData.PixelFormat) / 8;int stride = dstBmpData.Stride;//重点在此unsafe{int count = height * width;byte[] data = new byte[count];byte* bptr = (byte*)dstBmpData.Scan0;fixed (byte* pData = data){for (int i = 0; i < height; i++)for (int j = 0; j < width; j++ ){data[i * width + j ] = bptr[i * stride + j];}HOperatorSet.GenImage1(out Hobj, "byte", width, height, new IntPtr(pData));}}DstImage.UnlockBits(dstBmpData);return Hobj;}
bmp类型转成Halcon的Hobject类型相关推荐
- OpenCV的Mat和Halcon的HObject类型互相转换
项目之前一直使用的OpenCV,最近有个小问题使用Halcon有更好的效果,于是有了cv::Mat和Halcon中HObject互相转换的需求. 参考了博客http://blog.csdn.net/u ...
- 日期类型存储成字符串类型的格式问题
问题 ConversionException: Could not convert '2017-8-28 0:00:00' to java.util.Date at com.vaadin.data.u ...
- 当要将其他类型转成String类型时候 看String的方法
当要将其他类型转成String类型时候 看String的方法进行转换 转载于:https://www.cnblogs.com/classmethond/p/10100877.html
- Halcon —— 图像像素类型与转换
图像类型 就目前工业领域主流的图像处理工具halcon来讲,有以下几种图像类型:'byte', 'complex', 'cyclic', 'direction', 'int1', 'int2', 'i ...
- C#将unix时间戳转换成.net的DateTime类型的代码
下面的内容是关于C#将unix时间戳转换成.net的DateTime类型的内容. DateTime epoch = new DateTime(1970,1,1,0,0,0,0, DateTimeKin ...
- java 类似xamarin_xamarin android如何将Java.Lang.Object类型转成C#类型
问题起源 其实这个标题也可以换一个更准确一点,因为我遇到的问题是: xamarin android中的Class继承了Java.Lang.Object ,将json序列化成c#类型时发现无法赋值,序列 ...
- C++笔记-使用sprintf把各个类型转成char*(long long, doule,int)
目录 背景 演示及代码 背景 在某些时候,不能使用其他的框架,只能使用标准的东西,进行操作,这此记录下,方便以后快速敲代码. 这个sprintf在stdio.h的头文件中. 本次有以下类型转成char ...
- 将COleDateTime类型数据转换成char *数据
用OpenCV做多摄像头校准时间,在图像上显示时间信息,需求要将COleDateTime类型数据转换成char *数据 具体代码如下: 1: COleDateTime m_checkDate; 2: ...
- null可以转换成任意非基本类型(int/short/long/float/boolean/byte/double/char以外)
null可以转换成任意非基本类型(int/short/long/float/boolean/byte/double/char以外) 转载于:https://www.cnblogs.com/zhenmi ...
最新文章
- 这封以数字构写的蓝图,正在实现笔尖所触即世界
- Python学习教程(Python学习路线):Python3之递归函数简单示例
- 6.编译器拓展SEH
- jvm的新生代和老年代简介
- MNTD论文修改20211114(Y Zhou)
- Oracle(二):查询、函数、集合运算
- karaf中利用Bundle引入外部log4j配置文件
- Coinbase发生一笔7500枚BTC巨额转出交易 转移金额近2.5亿美元
- 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_08 转换流_5_InputStreamReader介绍代码实现...
- ISA Server 2006速战速决实验指南(7) 创建元素-网络对象
- 一个素数,如果将其反转后仍然是一个素数,我们称这样的素数为反转素数。 例如13是一个素数,反转之后得到的31也是一个素数,那么13和31都是反转素数。
- RemObjects Elements多用途软件开发
- MATLAB 图像滤波器
- linux局域网互传文件(使用scp)
- html语言中标记h1代表什么意思,html中h1是什么意思
- 阿里服务器稳定性介绍
- 基于C++的P2P穿透文件传输
- 【k8s】蓝绿部署策略
- Pygame 轨道飞船实现飞船绕行星旋转
- 窗帘盒有哪些种类,怎样安装窗帘盒?