/// <summary> /// 灰度图像 HObject -> Bitmap /// </summary> public static Bitmap HObject2Bitmap(HObject ho) { try { HTuple type, width, height, pointer; //HOperatorSet.AccessChannel(ho, out ho, 1); HOperatorSet.GetImagePointer1(ho, out pointer,…
声明 HWndCtrl _viewCtrl; ROIController _roiCtrl; 初始化 _viewCtrl = new HWndCtrl(hWindowControl); _roiCtrl = new ROIController(); _viewCtrl.useROIController(_roiCtrl); 显示图像 HImage hImage = new HImage(image); _viewCtrl.addIconicVar(hImage); // 注意不可以是HObjec…
因为之前遇到的那个halcon处理的图片要转换成ImageSource的问题,迟迟没有找到好的解决方案, 于是决定直接在wpf中使用halcon提供的HWindowControlWPF,用于显示图片. 结果发现这个东西好坑啊,这个东西感觉就是个窗口,不能直接绑定图片资源,不能实现像给Image控件添加Source的那样的功能. 只能够使用HOperatorSet.DispObj 来将图片显示到窗口上. 随之而来的几个问题: 窗口拉大缩小过程中,图片会消失掉,尝试了各种事件,例如OnHMouseU…
有幸遇到halcon变量窗口的图像变量不显示,重启软件和电脑都没用这个沙雕问题,也是找了蛮久才发现解决办法特意记录一下. 这是正常情况下的窗口(左边)和图像变量不显示的窗口(右边): 解决方法: 鼠标左键双击图像中红框的位置 2.双击完之后把鼠标移动到如图指定的区域,会显示移动鼠标来调整窗口大小,然后按住鼠标左键向右拖动窗口 3.拖动完之后会如下图显示,双击图像中红框位置即可. 问题挺沙雕,遇到也是真难搞.…
避免重复编辑同一篇随笔,有问题就开一个新的,哪怕会很短. 还是之前那个问题,halcon中的HObject转换为Bitmap的问题,在全网找相关的办法,三通道图像的HObject转换为C#中的Bitmap. 按照网上写的方法试了一下,有两个目前在用的程序中涉及到这个处理,在一个程序中间或会出现尝试读取或写入受保护的内存的问题: 在另一个程序中百分之百会出现这个问题,出错在将单个通道值写入BitmapData的过程. 比较了出错和不出错的情况,发现HOperatorSet.GetImagePoin…
我的最初想法是利用matlab的mex命令调用C++程序生成动态链接库的,但是测试程序(文中另附)通过了,自己的实际应用程序却没有过.还是把方法贴在这儿,以便自己以后进行整理. http://shijuanfeng.blogbus.com/logs/106781870.html 以下内容来自上面博客,自己根据实际情况略作解释改动. MATLAB要调用C++程序步骤: 1. 在MATLAB命令行敲:mex -setup,选择你所使用的C++版本,装上mex(参考下面"2.MATLAB设置"…
shell编程之变量:Linux shell编程基础中的变量. 包括Bash变量的分类和各变量的详细使用,如:用户自定义变量.环境变量.语系变量.位置参数变量和预定义变量. 1:什么是Bash变量? 变量:计算机内存单元,其中存放的值可以更改! #Bash变量就Bash中的变量 2:变量有哪些分类,Bash变量有哪些? 常见的变量数据类型分类: - 字符串型 - 整型 - 浮点型 - 日期型 变量的分类(Linux中变量都是字符串型): - 用户自定义,变量自定的. - 环境变量,保存的是和系统…
1.图像像素: 像素是指由图像的小方格即所谓的像素(pixel)组成的,这些小方块都有一个明确的位置和被分配的色彩数值,而这些一小方格的颜色和位置就决定该图像所呈现出来的样子.像素是构成图像的基本单元,通常以像素/英寸PPI(表示)为单位来表示图像分辨率. 当图像尺寸以像素为单位时,我们需要指定其固定的分辨率,才能将图像尺寸与实际尺寸进行转换. 在Halcon中,快速获得图像大小,像素个数及其它图像信息的算子是:get_image_pointer_rect 例程: read_image(Imag…
转自:http://www.cnblogs.com/xlw1219/archive/2012/12/25/2832222.html 首先必须知道联合编程需要知道的一些命令解释: mcc 的作用是将 .m文件编译为 c/c++动态链接库文件,使你可以在 c/c++程序中使用 matlab的一些函数功能.mcc 也可以将.m文件编译为exe可执行文件. mex 的作用是将 c/cpp文件编译为 .m  文件可以调用的库文件,在Windows操作系统里通常是以mexw32或mexw64为扩展名,让你可…
************************************************************* * Halcon将裁剪后的图像还原为原始大小 * Author: LiGuangyu * Date: -- * 在Halcon的使用中,有时候需要对图像开窗,而测量时又需要还原为原始大小 ************************************************************* *在原始图像上的开窗位置 OrigOffsetX:= OrigO…