搜档网
当前位置:搜档网 › Halcon学习之一:查询图像参数

Halcon学习之一:查询图像参数

Halcon学习之一:查询图像参数
Halcon学习之一:查询图像参数

Halcon学习之一:查询图像参数

1、get_grayval ( Image : : Row, Column : Grayval )

计算Image图像中坐标为(Row,Column)的点的灰度值Grayval。

2、get_image_pointer1 ( Image : : : Pointer, Type, Width, Height )

计算Image图像的数据指针Pointer,图像类型Type,图像宽度Width和高度Height。Pointer指向了Image data的起点位置。

3、get_image_pointer3 ( ImageRGB : : : PointerRed, PointerGreen, PointerBlue, Type, Width, Height )

计算彩色图像ImageRGB的参数。

4、get_image_pointer1_rect ( Image : : : PixelPointer, Width, Height, VerticalPitch, HorizontalBitPitch, BitsPerPixel )

计算Image图像中定义区域的最小的长方形的区域的指针Pointer,宽度Width,高度Height,VerticalPitch代表Image的Width*(HorizontalBitPitch/8)。两个相邻象素的水平距离(以比特计算)HorizontalBitPitch,每像素的比特数BitsPerPixel。

5、get_image_time ( Image : : : MSecond, Second, Minute, Hour, Day, YDay, Month, Year )

获取图像生成的时间。

程序::

可以通过上述查看参数深入了解各个函数的具体意义。

1.dev_open_window (0, 0, 512, 512, 'black', Handle1)

2.

3.read_image (Image, 'G:/Halcon/机器视觉

/images/autobahn.png')

4.

5.get_grayval (Image, 12, 66, Grayval)

6.

7.get_image_pointer1 (Image, Pointer, Type, Width, Height) 8.

9.draw_region (Region1, Handle1)

10.

11.r educe_domain (Image, Region1, ImageReduced)

12.

13.g et_image_pointer1_rect (ImageReduced, PixelPointer,

Width1, Height1, VerticalPitch, HorizontalBitPitch,

BitsPerPixel)

14.

15.r ead_image (Image1, 'G:/Halcon/机器视觉

/images/claudia.png')

16.

17.g et_image_pointer3 (Image1, PointerRed, PointerGreen,

PointerBlue, Type1, Width2, Height2)

18.

19.g et_image_time (Image, MSecond, Second, Minute, Hour,

Day, YDay, Month, Year)

halcon知识点

1. 无论读入什么图像,读入图像显示效果明显和原始图像不一致,哪怕是从相机读入的图像,也是明显颜色差异。什么原因引起? 初步诊断是,显示的时候调用的颜色查找表存在异常不是 default ,而是其它选项。此时可以通过查阅相关参数,调用set_system解决,也可以在编辑-》参数选择-》颜色查找表进行更改。 2. 裁剪图像;从图像上截取某段图像进行保存。如何实现该操作? 首先应该知道,region不具有单独构成图像的要素,他没有灰度值。有用过opencv的应该知道 ROI(感兴趣区域),设置好它后,对图像的大部分操作就转为图像的一个矩形区域内进行。类似的,halcon有domain 概念。首先设置好一个矩形区,然后使用 reduce_domain(是一个矩形区域)后,再使用crop_domain 就裁剪出图像。 3. 读入bmp,或tiff 图像显示该图不是bmp文件或不能读。原因是什么? 这个常有新手询问,画图,图像管理器都能打开,又或者是相机采集完直接存到硬盘。Halcon 读取图像在windows下面到最后是调用windows库函数实现读图功能。咱不清楚到底是怎么调用的。对于图像格式,在读图函数F1说明很细。基本 bmp 如果文件头不是bw还是bm(百度百科bmp格式查找,编写此处时无网络,后续可能忘记),就读不进来。其他规格欢迎补充。解决办法,如果是相机采集,就在内存直接转换(参见 halcon到VC.pdf 里面的halcon和bitmap互转);如果是采完的图片,大部分通过画图工具转换为 24位bmp格式,即可解决。 4.读入avi文件报错。

Halcon 通过 directshow或另一个格式解析视频,正常来说应该可以读入市面大部分视频,实际测试发现只能读入最标准的avi文件格式。如果需要临时处理,需要下格式工厂等工具转化为最标准的avi文件格式(论坛叶诺有发帖说明)。 5. Region 或 xld 筛选。 Halcon提供了丰富的region 和xld筛选方法。Region可以使用select_shape_xld,选择出符合要求的区域,如果不能满足还可以通过类似 region feature 这样关键字组合成的算子获取区域特征,然后通过 tuple 排序或相加减,再通过 tuple_find 确定是对应哪个区域的特征。同样的halcon也提供了 select_contours_xld 进行轮廓筛选。 6. Halcon分几类对象,每个类的功用是? Halcon总分俩大类,tuple和图标对象obj 。Tuple涵盖了对所有基础数据类型的封装,可以理解为她是halcon定义的数组类。Obj 是alcon定义图标类基类。衍生出了许多类型,其中 Region ,Xld,Image 其中最主要的类型。 7. F1说明,参数部分 -array 是什么意思? 该符号说明,该参数接受一组输入,对tuple就是一组tuple,对obj 就是通过concat_obj 或其它操作产生的一组obj元组。 8. 俩个相对方形物体的距离计算。 如果这俩个物体和背景对比清晰,最近的距离在俩条边下则可以再预处理之后进行如下操作:

HALCON形状匹配总结

HALCON形状匹配总结 Halcon有三种模板匹配方法:即Component-Based、Gray-Value-Based、Shaped_based,分别是基于组件(或成分、元素)的匹配,基于灰度值的匹配和基于形状的匹配,此外还有变形匹配和三维模型匹配也是分属于前面的大类 本文只对形状匹配做简要说明和补充: Shape_Based匹配方法: 上图介绍的是形状匹配做法的一般流程及模板制作的两种 方法。 先要补充点知识:形状匹配常见的有四种情况一般形状匹配模板shape_model、线性变形匹配模板 planar_deformable_model、局部可变形模板 local_deformable_model、和比例缩放模板Scale_model 第一种是不支持投影变形的模板匹配,但是速度是最高的,第二种和第四种是支持投影变形的匹配,第三种则是支持局部变形的匹配。 一般形状匹配模板是最常用的,模板的形状和大小一经制作完毕便不再改变,在查找模板的过程中,只会改变模板的方向和位置等来匹配目标图像中的图像。这个方法查找速度很快,但是当目标图像中与模板对应的图像存在比例放大缩小

或是投影变形如倾斜等,均会影响查找结果。涉及到的算子通常为create_shape_model 和find_shape_model 线性变形匹配模板planar_deformable_model是指模板在行列方向上可以进行适当的缩放。行列方向上可以分别独立的进行一个适当的缩放变形来匹配。主要参数有行列方向查找缩放比例、图像金字塔、行列方向匹配分数(指可接受的匹配分数,大于这个值就接受,小于它就舍弃)、设置超找的角度、已经超找结果后得到的位置和匹配分数 线性变形匹配又分为两种:带标定的可变形模板匹配和不带标定的可变形模板匹配。涉及到的算子有: 不带标定的模板:创建和查找模板算子 create_planar_uncalib_deformable_model和 find_planar_uncalib_deformable_model 带标定模板的匹配:先读入摄像机内参和外参 read_cam_par 和read_pose 创建和查找模板算子create_planar_calib_deformable_model和 find_planar_calib_deformable_model 局部变形模板是指在一张图上查找模板的时候,可以改变模板的尺寸,来查找图像上具有局部变形的模板。例如包装纸袋上图案查找。参数和线性变形额差不多 算子如下:create_local_deformable_model和 find_local_deformable_model

HALCON算子函数整理10 Matching-3D

HALCON算子函数——Chapter 10 : Matching-3D 1. affine_trans_object_model_3d 功能:把一个任意有限3D变换用于一个3D目标模型。 2. clear_all_object_model_3d 功能:释放所有3D目标模型的内存。 3. clear_all_shape_model_3d 功能:释放所有3D轮廓模型的内存。 4. clear_object_model_3d 功能:释放一个3D目标模型的内存。 5. clear_shape_model_3d_ 功能:释放一个3D轮廓模型的内存。 6. convert_point_3d_cart_to_spher 功能:把直角坐标系中的一个3D点转变为极坐标。 7. convert_point_3d_spher_to_cart 功能:把极坐标中的一个3D点转变为直角坐标。 8. create_cam_pose_look_at_point 功能:从摄像机中心和观察方向创建一个3D摄像机位置。 9. create_shape_model_3d 功能:为匹配准备一个3D目标模型。 10. find_shape_model_3d 功能:在一个图像中找出一个3D模型的最佳匹配。 11. get_object_model_3d_params

功能:返回一个3D目标模型的参数。 12. get_shape_model_3d_contours 功能:返回一个3D轮廓模型视图的轮廓表示。 13. get_shape_model_3d_params 功能:返回一个3D轮廓模型的参数。 14. project_object_model_3d 功能:把一个3D目标模型的边缘投影到图像坐标中。 15. project_shape_model_3d 功能:把一个3D轮廓模型的边缘投影到图像坐标中。 16. read_object_model_3d_dxf 功能:从一个DXF文件中读取一个3D目标模型。 17. read_shape_model_3d 功能:从一个文件中读取一个3D轮廓模型。 18. trans_pose_shape_model_3d 功能:把一个3D目标模型的坐标系中的位置转变为一个3D轮廓模型的参考坐标系中的位 置,反之亦然。 19. write_shape_model_3d 功能:向一个文件写入一个3D轮廓模型。

Halcon学习(24)总结(一)

Halcon学习(二十四)总结(一) 好久没有写篇文章了。写一篇总结吧。 1、Halcon的自我描述 Program Logic ? Each program consists of a sequence of HALCON operators ? The program can be structured into procedures ? The sequence can be extended by using control operators like if, for, repeat, or while ? The results of the operators are passed via variables ? No implicit data passing is applied ? Input parameters of operators can be variables or expressions ? Output parameters are always variables ? HDevelop has no features to design a graphical user interface ? An HDevelop program is considered as a prototypic solution of the vision part of an application ? HDevelop is typically not used for the final application 由此可以看出,Halcon的定位是一个类库,有着完整、快速实现函数,同时提供了HDevelop 作为快速开发的图形化(IDE)界面;但是,Halcon程序并不是一个完整的最终应用软件,它没有用户界面,也不提供显示的数据(公用的数据格式)。 Halcon的初学者也应当从参考Halcon的程序入手,熟悉Halcon类库,也即HDevelop-Based Programming;在此基础上,进入ORClass-Oriented Programming。这也是Halcon推荐的开发方式: The vision part is solved with HDevelop, and the application is developed with C++ or Visual Basic。 2、HDevelop界面的学习 通过阅读Halcon的PPT,学到了下面一些有用的信息: ? 文件——浏览示例,可以看到很多有用的例子; ? 程序窗体中,可以浏览与编辑Procedues(过程),这个其实就是自定义函数咯~还可以自己修改这些过程,并添加说明文档; ? F4——将函数语句注释掉;F3——激活; ? 本地过程(Local Procedue)与外部过程(Externel Procedue) 3、基本语法结构 Halcon的语法结构 类似于Pascal 与 Visual Basic,大部分的语句是Halcon提供的算子,此外也包含了少部分的控制语句; 不允许单独声明变量; 提供自动的内存管理(初始化、析构及OverWrite),但句柄则需要显示释放; C++(算子模式) 通过代码导出,以C++为例,默认导出为算子型的语法结构,而非面向对象的;在此模式下,全部函数声明为全局类型,数据类型只需要用Hobject、HTuple两类类型进行声明; C++(面向对象) 可以以面向对象的方式重写代码,也即利用类及类的成员函数;

HALCON算子函数Chapter 15: Segmentation

HALCON算子函數——Chapter 15 : Segmentation 15.1 Classi?cation 1. add_samples_image_class_gmm 功能:將從圖像中獲取的測試樣本添加到高斯混合模型的測試數據庫中。2.add samples_image_class_mlp 功能:將從圖像中獲取的測試樣本添加到多層視感控器的測試數據庫中。 3. add_samples_image_class_svm 功能:將從圖像中獲取的測試樣本添加到一個支持向量機的測試數據庫中。 4. class_2dim_sup 功能:采用二維空間像素分類分割圖像。 5. class 2dim unsup 功能:將兩幅圖像以聚類分割。 6.class ndim_box 功能:利用立方體將像素分類。 7. class_ndim_norm 功能:利用球體或立方體將像素分類。 8. classify_image_class_gmm 功能:根據高斯混合模式分類圖像。 9. classify_image_class_mlp 功能:根據多層視感控器分類圖像_。 10. classify_image_class_svm 功能:根據支持向量機分類圖像。 11. learn_ndim_box

功能:利用多通道圖像測試一個分級器。 12. learn_ndim_norm 功能:為class_ndim_norm構建類。 15.2 Edges 1. detect_edge_segments 功能:檢測直線邊緣分割。 2. hysteresis_threshold 功能:對一副圖像采取磁滯門限操作。 3. nonmax_suppression_amp 功能:抑制一幅圖像上的非最大值點。 4. nonmax_suppression_dir 功能:利用指定圖像抑制一幅圖像上的非最大值點。 15.3 Regiongrowing 1. expand_gray 功能:依據灰度值或顏色填充兩個區域的間隙或分割重疊區域。 2. expand_gray_ref 功能:依據灰度值或顏色填充兩個區域的間隙或分割重疊區域。 3. expand_line 功能:從給定線開始擴充區域。 4. regiongrowing 功能:利用區域增長分割圖像。

Halcon学习之四:有关图像生成的函数

Halcon学习之四:有关图像生成的函数 1、copy_image ( Image : DupImage : : ) 复制image图像 2、region_to_bin ( Region : BinImage : ForegroundGray, BackgroundGray,Width, Height : ) 将区域Region转换为一幅二进制图像BinImage。 ForegroundGray, BackgroundGray分别为前景色灰度值和背景色灰度值。Width, Height为Region的宽度和高度。 3、region_to_label ( Region : ImageLabel : Type, Width, Height : ) 将区域Region转换为一幅Lable图像ImageLabel。 Type为imagelabel的类型。 Width, Height为Region的宽度和高度。 4、region_to_mean ( Regions, Image : ImageMean : : ) 绘制ImageMean图像,将其灰度值设置为Regions和Image的平均灰度值。相关例子: [c-sharp]view plaincopyprint? 1.* 读取图像 2.read_image (Image, 'G:/Halcon/机器视觉 /images/bin_switch/bin_switch_2.png') 3.* 复制图像 4.copy_image (Image, DupImage) 5.* 区域生长算法

6.regiongrowing (Image, Regions, 3, 3, 1, 100) 7.* 生成ImageMean 8.region_to_mean (Regions, Image, ImageMean) 9.* 将Region转换为二进制图像 10.r egion_to_bin (Regions, BinImage, 255, 0, 512, 512) 11.*将Region转换为Label图像 12.r egion_to_label (Regions, ImageLabel, 'int4', 512, 512)

HALCON算子函数Chapter 16:System

HALCON算子函數——Chapter 16 : System 16.1 Database 1. count_relation 功能:在HALCON數據庫中實體的數目。 2. get_modules 功能:查詢已使用模塊和模塊關鍵碼。 3. reset_obj_db 功能:HALCON系統的初始化。 16.2 Error-Handling 1. get_check 功能:HALCON控制模式的說明。 2. get_error_text 功能:查詢HALCON錯誤測試後錯誤數目。3. get_spy 功能:HALCON調試工具當前配置。 4. query_spy 功能:查詢HALCON調試工具可能的設置。5. set_check 功能:激活和鈍化HALCON控制模式。

6. set_spy 功能:HALCON調試工具的控制。 16.3 Information 1. get_chapter_info 功能:獲取程序有關章節的信息。 2. get_keywords 功能:獲取指定給程序的關鍵字。 3. get_operator_info 功能:獲取關於HALCON程序的信息。 4. get_operator_name 功能:獲取由給定字符串作為它們的名字的程序。 5. get_param_info 功能:獲取關於程序參數的信息。 6. get_param_names 功能:獲取一個HALCON程序參數的名字。 7. get_param_num 功能:獲取一個HALCON程序不同參數類的數目。 8. get_param_types 功能:獲取一個HALCON程序控制參數的缺省數據類型。

Halcon学习之边缘检测函数

Halcon学习之边缘检测函数 sobel_amp ( Image : EdgeAmplitude : FilterType, Size : )根据图像的一次导数计算图像的边缘 close_edges ( Edges, EdgeImage : RegionResult : MinAmplitude : ) close_edges_length( Edges, Gradient : ClosedEdges : MinAmplitude, MaxGapLength : ) 使用边缘高度图像关闭边缘间隙。输出的区域包含杯关闭的区域。(感觉是对边缘的扩充) derivate_gauss( Image : DerivGauss : Sigma, Component : ) watersheds( Image : Basins, Watersheds : : )从图像中提取风水岭。 zero_crossing( Image : RegionCrossing : : )零交点(二次导数) diff_of_gauss( Image : DiffOfGauss : Sigma, SigFactor : )近似日志算子(拉普拉斯高斯)。 laplace_of_gauss ( Image : ImageLaplace : Sigma : ) 拉普拉斯高斯edges_color_sub_pix ( Image : Edges : Filter, Alpha, Low, High : )精确的亚像素边缘提取(彩色图像) edges_sub_pix ( Image : Edges : Filter, Alpha, Low, High : ) 精确边缘提取的亚像素(灰度图像) edges_color ( Image : ImaAmp, ImaDir : Filter, Alpha, NMS, Low, High : )根据颜色进行边缘提取 edges_image ( Image : ImaAmp, ImaDir : Filter, Alpha, NMS, Low, High : )边缘提取 skeleton ( Region : Skeleton : : )计算区域的框架Skeleton == Region

Halcon

Halcon 目录 1、相机接入且拍摄 (2) 1.1 步骤 (2) 1.2 后续处理函数 (5) 2、相机标定 (7) 2.1标定步骤 (7) 3、手眼系统标定 (11) 3.1 标定步骤 (11) 4、图像坐标和机器臂坐标转换 (13) 4.1 转换步骤 (14) 5、模版匹配(基于形状) (19) 5.1 步骤 (19) 6、常见函数 (25) 6.1 图像分割 (25) 6.2 轮廓提取、处理 (31)

1、相机接入且拍摄 1.1 步骤 (1)连接相机 open_framegrabbe(Name, HorizontalResolution, VerticalResolution, ImageWidth, ImageHeight, StartRow, StartColumn, Field, BitsPerChannel, ColorSpace, Generic, ExternalTrigger, CameraType, Device, Port, LineIn, AcqHandle) 在算子窗口内输入函数名,填入参数后点击“确定”按钮即可将函数加入程序中。 注: Name: 图像采集设备的名称 可通过以下步骤确定: 1、在Halcon菜单栏里点击“窗口”,选择“打开算子窗口”。 (若算子窗口已打开则直接进入第二步) 2、在“输入算子或函数”栏内输入“open_framegrabbe” 回车后出现下图

3、在“参数”栏中的Name后点击即可自动检测连接的设 备(笔记本电脑摄像头检测后为’DirectShow’) 此参数若随意填写,可能导致程序报错 HorizontaResolution、VerticalResolution:预期的图像采集接口的水平分辨率和垂直分辨率 ImageWidth、ImageHeight:预期图像的宽度和高度部分StartRow、StartColumn:显示预期图像的开始坐标 Field:预期图像是一半的图像或者是完整图像 BitsPerChannel:每像素比特数和图像通道 ColorSpace:获取图像的输出形式(gray、raw、rgb、yuv、default)说明:此参数设置不同的值可以得到不同的图像效果,如设置

HALCON中filter函数

HALCON算子函数——Chapter 5 : Filter 5.1 Arithmetic 1. abs_image 功能:计算一个图像的绝对值(模数)。 2. add_image 功能:使两个图像相加。 3. div_image 功能:使两个图像相除。 4. invert_image 功能:使一个图像反像。 5. max_image 功能:按像素计算两个图像的最大值。 6. min_image 功能:按像素计算两个图像的最大小值。 7. mult_image 功能:使两个图像相乘。 8. scale_image 功能:为一个图像的灰度值分级。 9. sqrt_image 功能:计算一个图像的平方根。 10. sub_image 功能:使两个图像相减。 5.2 Bit 1. bit_and 功能:输入图像的所有像素的逐位与。 2. bit_lshift 功能:图像的所有像素的左移。3 . bit_mask 功能:使用位掩码的每个像素的逻辑与。 4. bit_not 功能:对像素的所有位求补。 5. bit_or 功能:输入图像的所有像素的逐位或。 6. bit_rshift 功能:图像的所有像素的右移。 7. bit_slice 功能:从像素中提取一位。 8. bit_xor 功能:输入图像的所有像素的逐位异或。5.3 Color

1. cfa_to_rgb 功能:把一个单通道颜色滤波阵列图像变成RGB图像。 2. gen_principal_comp_trans 功能:计算多通道图像的主要部分分析的转换矩阵。 3. linear_trans_color 功能:计算多通道图像的颜色值的一个仿射转换。 4. principal_comp 功能:计算多通道图像的主要部分。 5. rgb1_to_gray 功能:把一个RGB图像转变成一个灰度图像。 6. rgb3_to_gray 功能:把一个RGB图像转变成一个灰度图像。 7. trans_from_rgb 功能:把一个图像从RGB颜色空间转变成任意颜色空间。 8. trans_to_rgb 功能:把一个图像从任意颜色空间转变成RGB颜色空间。 5.4 Edges 1.close_edges 功能:使用边缘幅值图像消除边缘缺陷。 2. close_edges_length 功能:使用边缘幅值图像消除边缘缺陷。 3. derivate_gauss 功能:用高斯派生物对一个图像卷积。 4. diff_of_gauss 功能:近似高斯的拉普拉斯算子。 5. edges_color 功能:使用Canny、Deriche或者_Shen_滤波器提取颜色边缘。 6. edges_color_sub_pix 功能:使用Canny、Deriche或者_Shen_滤波器提取子像素精确颜色边缘。 7. edges_image 功能:使用Deriche、_Lanser、Shen或者_Canny滤

HALCON形状匹配总结.doc

HALCON 形状匹配总结 Halcon 有三种模板匹配方法:即Component-Based、Gray-Value-Based 、Shaped_based, 分别是基于组件(或成分、元素)的匹配,基于灰度值的匹配和基于形状的匹配,此外 还有变形匹配和三维模型匹配也是分属于前面的大类 本文只对形状匹配做简要说明和补充: Shape_Based 匹配方法: 上图介绍的是形状匹配做法的一般流程及模板制作的两种 方法。 先要补充点知识:形状匹配常见的有四种情况一般形状匹配模板 shape_model 、线性变形匹配模板 planar_deformable_model、局部可变形模板 local_deformable_model、和比例缩放模板Scale_model 第一种是不支持投影变形的模板匹配,但是速度是最高的, 第二种和第四种是支持投影变形的匹配,第三种则是支持局 部变形的匹配。 一般形状匹配模板是最常用的,模板的形状和大小一经制作 完毕便不再改变,在查找模板的过程中,只会改变模板的方 向和位置等来匹配目标图像中的图像。这个方法查找速度很 快,但是当目标图像中与模板对应的图像存在比例放大缩小

或是投影变形如倾斜等,均会影响查找结果。涉及到的算子 通常为 create_shape_model和find_shape_model 线性变形匹配模板planar_deformable_model是指模板在行列方向上可以进行适当的缩放。行列方向上可以分别独立的 进行一个适当的缩放变形来匹配。主要参数有行列方向查找 缩放比例、图像金字塔、行列方向匹配分数(指可接受的匹 配分数,大于这个值就接受,小于它就舍弃)、设置超找的角度、已经超找结果后得到的位置和匹配分数 线性变形匹配又分为两种:带标定的可变形模板匹配和不带 标定的可变形模板匹配。涉及到的算子有: 不带标定的模板:创建和查找模板算子 create_planar_uncalib_deformable_model和 find_planar_uncalib_deformable_model 带标定模板的匹配:先读入摄像机内参和外参 read_cam_par和read_pose创建和查找模板算子create_planar_calib_deformable_model和 find_planar_calib_deformable_model 局部变形模板是指在一张图上查找模板的时候,可以改变 模板的尺寸,来查找图像上具有局部变形的模板。例如包装 纸袋上图案查找。参数和线性变形额差不多 算子如下: create_local_deformable_model和 find_local_deformable_model

HALCON函数

HALCON函数 dev_close_window ( : : : ) 关闭活跃的图形窗口。 read_image ( : Image : FileName : ) ;加载图片 get_image_pointer1 ( Image : : : Pointer, Type, Width, Height ) ;获得图像的数据。如:类型(= ' 字节',' ' ',uint2 int2 等等) 和图像的尺寸( 的宽度和高度) dev_open_window( : :Row,Column,WidthHeight,Background :WindowHandle )打开一个图形的窗口。 dev_set_part ( : : Row1, Column1, Row2, Column2 : ) 修改图像显示的位置 dev_set_draw (’fill’)填满选择的区域 dev_set_draw (’margin’)显示的对象只有边缘线, dev_set_line_width (3) 线宽用Line Width 指定 threshold ( Image : Region : MinGray, MaxGray : ) 选取从输入图像灰度值的g 满足下列条件:MinGray < = g < = MaxGray 的像素。 dev_set_colored (number) 显示region 是用到的颜色数目 dev_set_color ( : : ColorName : ) 指定颜色 connection ( Region : ConnectedRegions : : ) 合并所有选定像素触摸相互连通区 fill_up ( Region : RegionFillUp : : ) 填补选择区域中空洞的部分 fill_up_shape ( Region : RegionFillUp : Feature, Min, Max : ) select_shape ( Regions : SelectedRegions : Features, Operation, Min, Max : ) 选择带有某些特征的区域,Operation 是运算,如“与”“或” smallest_rectangle1 ( Regions : : : Row1, Column1, Row2, Column2 ) 以矩形像素坐标的角落,Column1,Row2(Row1,Column2) 计算矩形区域( 平行输入坐标轴) 。 dev_display ( Object : : : ) 显示图片 disp_rectangle1 ( : : WindowHandle, Row1, Column1, Row2, Column2 : ) 显示的矩形排列成的。disp_rectangle1 显示一个或多个矩形窗口的产量。描述一

HALCON 算子函数 整理 1-19章

halcon算子中文解释 comment ( : : Comment : ) 注释语句 exit ( : : : ) 退出函数 open_file ( : : FileName, FileType : FileHandle ) 创建('output' or 'append' )或者打开(output )文本文件 fwrite_string ( : : FileHandle, String : ) 写入string dev_close_window ( : : : ) 关闭活跃的图形窗口。 read_image ( : Image : FileName : ) ;加载图片 get_image_pointer1 ( Image : : : Pointer, Type, Width, Height ) 获得图像的数据。如:类型(= ' 字节',' ' ',uint2 int2 等等) 和图像的尺寸( 的宽度和高度) dev_open_window( : :Row,Column,WidthHeight,Background :WindowHandle ) 打开一个图形的窗口。 dev_set_part ( : : Row1, Column1, Row2, Column2 : ) 修改图像显示的位置 dev_set_draw (’fill’)填满选择的区域 dev_set_draw (’margin’)显示的对象只有边缘线, dev_set_line_width (3) 线宽用Line Width 指定 threshold ( Image : Region : MinGray, MaxGray : ) 选取从输入图像灰度值的g 满足下列条件:MinGray < = g < = MaxGray 的像素。 dev_set_colored (number) 显示region 是用到的颜色数目 dev_set_color ( : : ColorName : ) 指定颜色 connection ( Region : ConnectedRegions : : ) 合并所有选定像素触摸相互连通区 fill_up ( Region : RegionFillUp : : ) 填补选择区域中空洞的部分 fill_up_shape ( Region : RegionFillUp : Feature, Min, Max : ) select_shape ( Regions : SelectedRegions : Features, Operation, Min, Max : ) 选择带有某些特征的区域,Operation 是运算,如“与”“或” smallest_rectangle1 ( Regions : : : Row1, Column1, Row2, Column2 ) 以矩形像素坐标的角落,Column1,Row2(Row1,Column2) 计算矩形区域( 平行输入坐标轴) 。 dev_display ( Object : : : ) 显示图片 disp_rectangle1 ( : : WindowHandle, Row1, Column1, Row2, Column2 : ) 显示的矩形排列成的。disp_rectangle1 显示一个或多个矩形窗口的产量。描述一个矩形左上角(Row1,Column1) 和右下角(Row2,Column2) 。显示效果如图1. texture_laws ( Image : ImageT exture : FilterTypes, Shift, FilterSize : ) texture_laws 实行纹理变换图像FilterTypes: 预置的过滤器Shift :减少灰度变化FilterSize :过滤的尺寸 mean_image ( Image : ImageMean : MaskWidth, MaskHeight : ) 平滑图像, 原始灰度值的平均数MaskWidth: 过滤器的宽度面具 bin_threshold ( Image : Region : : ) 自动确定阈值 Region: 黑暗的区域的图像 dyn_threshold ( OrigImage, ThresholdImage : RegionDynThresh : Offset, LightDark : ) 比较两个像素的图像像素RegionDynThresh(Out) 分割区域Offset: 减少噪音引起的问题LightDark 提取光明、黑暗或类似的地方? dilation_circle ( Region : RegionDilation : Radius : ) 扩张有一个圆形结构元素的地区Radius 圆半径 complement ( Region : RegionComplement : : ) 返还补充的区域 reduce_domain ( Image, Region : ImageReduced : : ) 减少定义领域的图像

HALCON算子函数整理7 Image

HALCON算子函数——Chapter 7 : Image 7.1 Access 1. get_grayval 功能:获取一个图像目标的灰度值。 2. get_image_pointer1 功能:获取一个通道的指针。 3. get_image_pointer1_rect 功能:获取图像数据指针和输入图像区域内最小矩形内部的图像数据。 4. get_image_pointer3 功能:获取一个彩色图像的指针。 5. get_image_time 功能:查找图像被创建的时间。 7.2 Acquisition 1. close_all_framegrabbers 功能:关闭所有图像获取设备。 2. close_framegrabber 功能:关闭指定的图像获取设备。 3. get_framegrabber_lut 功能:查找图像获取设备的查询表。 4. get_framegrabber_param 功能:查找一个图像获取设备的指定参数。 5. grab_data

功能:从指定的图像获取设备获取图像和预处理图像数据。 6. grab_data_async 功能:从指定的图像获取设备获取图像和预处理图像数据并且开始下一个异步获取。 7. grab_image 功能:从指定的图像获取设备获取一个图像。 8. grab_image_async 功能:从指定的图像获取设备获取一个图像并且开始下一个异步获取。 9. grab_image_start 功能:从指定的图像获取设备开始下一个异步获取。 10. info_framegrabber 功能:从指定的图像获取设备查找信息。 11. open_framegrabber 功能:打开并配置一个图像获取设备。 12. set_framegrabber_lut 功能:设置图像获取设备查询表。 13. set_framegrabber_param 功能:设置一个图像获取设备的指定参数。 7.3 Channel 1. access_channel 功能:获取一个多通道图像的一个通道。 2. append_channel

halcon知识点

1.无论读入什么图像,读入图像显示效果明显和原始图像不一致,哪怕是从相机读入的图像,也是明显颜色差异。什么原因引起? 初步诊断是,显示的时候调用的颜色查找表存在异常不是default,而是其它选项。此时可以通过查阅相关参数,调用set_system解决,也可以在编辑-》参数选择-》颜色查找表进行更改。 2.裁剪图像;从图像上截取某段图像进行保存。如何实现该操作? 首先应该知道,region不具有单独构成图像的要素,他没有灰度值。有用过opencv的应该知道ROI(感兴趣区域),设置好它后,对图像的大部分操作就转为图像的一个矩形区域内进行。类似的,halcon有domain概念。首先设置好一个矩形区,然后使用reduce_domain(是一个矩形区域)后,再使用 crop_domain就裁剪出图像。 3.读入bmp,或tiff图像显示该图不是bmp文件或不能读。原因是什么? 这个常有新手询问,画图,图像管理器都能打开,又或者是相机采集完直接存到硬盘。Halcon读取图像在windows下面到最后是调用windows库函数实现读图功能。咱不清楚到底是怎么调用的。对于图像格式,在读图函数F1说明很细。基本bmp如果文件头不是bw还是bm(百度百科bmp格式查找,编写此处时无网络,后续可能忘记),就读不进来。其他规格欢迎补充。解决办法,如果是相机采集,就在内存直接转换(参见halcon到里面的halcon和bitmap互转);如果是采完的图片,大部分通过画图工具转换为24位bmp格式,即可解决。 4.读入avi文件报错。Halcon通过directshow或另一个格式解析视频,正常来说应该可以读入市面大部分视频,实际测试发现只能读入最标准的avi文件格式。如果需要临时处理,需要下格式工厂等工具转化为最标准的avi文件格式(论坛叶诺有发帖说明)。 5. Region或xld筛选。 Halcon提供了丰富的region和xld筛选方法。Region可以使用 select_shape_xld,选择出符合要求的区域,如果不能满足还可以通过类似

HALCON 算子函数

HALCON 算子函数(十二) HALCON 算子函数——Chapter 12 : OCR 12.1 Hyperboxes 1. close all ocrs功能:删除所有光字符,释放存储空间,但会丢失所有的测试数据。 2. close ocr_功能:重新分配拥有OcrHandle数目的分级器的存储,但所有相应的数据会丢失,不过这些数据可由write ocr事先保存。 3. create ocr class box功能:创建新的OCR分级器。 4. do ocr multi功能:给每一个Character(字符)分配一个类。 5. do ocr single功能:给一些Character(字符)分配一些类。 6. info ocr class box功能:反馈ocr的有关信息。 7. ocr change char功能:为字符建立新的查阅表。 8. ocr get features功能:计算给定Character(字符)的特征参数。 9. read ocr功能:从文件的FileName(文件名)读取OCR分级器。 10. testd ocr class box功能:测试给定类中字符的置信度。 11. traind ocr class box功能:通过一幅图像的特定区域直接测试分级器。 12. trainf ocr class box功能:根据指定测试文件测试分级器的OCRHandle。 13. write ocr功能:将OCR分级器的OCRHandle写入文件的FileName(文件名)。 12.2 Lexica 1.clear_all_lexica功能:清除所有的词汇(词典),释放它们的资源。 2. clear lexicon功能:清除一个词汇(词典),释放相应的资源。 3. create lexicon功能:根据一些Words(单词)的元组创建一个新的词汇(词典)。4.Import lexicon功能:通过FileName(文件名)选定的文件中的一系列单词创建一个新

Halcon算子汇总

HALCON算子函数完整汇总 Chapter_19:XLD 19、1 Access 1、get_contour_xld 功能:返回XLD轮廓(contour)得坐标。 2、get_lines_xld 功能:返回一个XLD多边形(polygon)数据。 3、get_parallels_xld 功能:返回一个XLD并行数据。 4、get_polygon_xld 功能:返回一个XLD多边形(polygon)数据。 19、2 Creation 1、gen_contour_nurbs_xld 功能:将一个NURBS曲线转换为一个XLD(密度?)轮廓(contour)。 2、gen_contour_polygon_rounded_xld 功能:根据一个多边形(polygon)(以元组形式给出)得圆形角点创建一个XLD轮廓(contour)。 3、gen_contour_polygon_xld 功能:根据一个多边形(polygon)(以元组形式给出)创建一个XLD轮廓(contour)。 4、gen_contour_region_xld 功能:根据区域创建XLD轮廓(contour)。 5、gen_contours_skeleton_xld

功能:将框架转换为XLD轮廓(contour)。 6、gen_cross_contour_xld 功能:根据每个输入点交叉得形状创键一个XLD轮廓(contour)。 7、gen_ellipse_contour_xld 功能:根据相应得椭圆弧创建一个XLD轮廓(contour)。 8、gen_parallels_xld 功能:提取并行XLD多边形(polygon)。 9、gen_polygons_xld 功能:根据多边形近似创建XLD轮廓(contour)。 10、gen_rectangle2_contour_xld 功能:创建一个矩形XLD轮廓(contour)。 11、mod_parallels_xld 功能:提取一个包括同质区域得并行XLD多边形(polygon)。 19、3 Features 1、area_center_points_xld 功能:被瞧做点云得轮廓(contour)与多边形(polygon)得面积与重心。 2、area_center_xld 功能:轮廓(contour)与多边形(polygon)得面积与重心。 3、circularity_xld 功能:影响轮廓(contour)或多边形(polygon)圆度(与圆相近得程度)得形状系数。 4、pactness_xld

相关主题