Halcon
Zach_ZhouY
展翅高飞
展开
-
Halcon 基础知识(一)
项目流程总结:采集-预处理-定位-特征提取-识别-显示1.图像预处理按作用域划分 空间域包括有中值(median_image)、均值(mean_image)、高斯滤波; 频域:模板滑动;按功能划分 增强对比度:线性变换(scale_image )、直方图均衡化(equ_histo_image)、灰度形态学(gray_)、emphasize...转载 2018-05-09 09:51:15 · 2060 阅读 · 0 评论 -
HALCON算子函数——Chapter 16 : System
Chapter_16:System16.1 Database1. count_relation 功能:在HALCON数据库中实体的数目。2. get_modules 功能:查询已使用模块和模块关键码。3. reset_obj_db 功能:HALCON系统的初始化。 16.2 Error-Handling1. get_check 功能:HALCON控制模式的说明。2. get_error...转载 2018-05-09 08:49:23 · 769 阅读 · 0 评论 -
HALCON算子函数——Chapter 17 : Tools
Chapter_17:Tools17.1 2D-Transformations1. affine_trans_pixel 功能:对像素坐标轴进行任意的仿射二维变换。2. affine_trans_point_2d 功能:对点进行任意的最简二维变换3. bundle_adjust_mosaic 功能:对一幅图像的嵌合体采取一系列调整。4. hom_mat2d_compose 功能:将两种相...转载 2018-05-09 08:49:08 · 1120 阅读 · 0 评论 -
HALCON算子函数——Chapter 18 : Tuple
Chapter_18:Tuple18.1 Arithmetic1. tuple_abs 功能:计算一个元组的绝对值。2. tuple_acos 功能:计算一个元组的反余弦。3. tuple_add 功能:两个元组相加。4. tuple_asin 功能:计算一个元组的反余弦。5. tuple_atan 功能:计算一个元组的反正切。6. tuple_atan2 功能:计算一个元组四个象限...转载 2018-05-09 08:48:53 · 2106 阅读 · 0 评论 -
Halcon基础知识(五)数组操作
assign : 对数据赋值,对数组的初始化。但不能对数组中的某一个值进行赋值。 举例:Tuple1 := [1,0,3,4,5,6,7,8,9] // 对数组进行初始化 Val := sin(1.2) + cos(1.2) // 对某一个值进行赋值 Tuple2 := [] //...原创 2018-05-15 16:14:32 · 39040 阅读 · 0 评论 -
Halcon之计算距离算子
*读取一张图像read_image(Image,'Circle.jpg')*画生成区域draw_region(Region, 3600)*区域->图像reduce_domain(Image, Region, ImageReduced)*阈值分割threshold(ImageReduced, Region1, 0, 35)*区域连通->将区域分开connection(R...转载 2018-05-16 17:06:01 · 16876 阅读 · 0 评论 -
halcon学习笔记——机器视觉工程应用的开发思路
机器视觉工程应用主要可划分为硬件和软件两大部分。硬件:工程应用的第一步就是硬件选型。硬件选型很关键,因为它是你后面工作的基础。主要是光源、工业相机和镜头选择。软件:目前业内商业库主要有Halcon,康耐视,DALSA,evision,NI等,开源库有OpenCV.其中NI的labview+vision模块。机器视觉工程应用的基本开发思路是:一、图像采集,二、图像分割,三、形态学处理,四、特征提取,...转载 2018-06-21 13:00:09 · 313 阅读 · 0 评论 -
Halcon功能算子
Chapter 1 :Classification1.1 Gaussian-Mixture-Models1.add_sample_class_gmm功能:把一个训练样本添加到一个高斯混合模型的训练数据上。2.classify_class_gmm功能:通过一个高斯混合模型来计算一个特征向量的类。3. clear_all_class_gmm功能:清除所有高斯混合模型。4. clear...转载 2018-08-18 13:51:44 · 1094 阅读 · 0 评论 -
halcon学习笔记——机器视觉工程应用的开发思路
机器视觉工程应用主要可划分为硬件和软件两大部分。硬件:工程应用的第一步就是硬件选型。硬件选型很关键,因为它是你后面工作的基础。主要是光源、工业相机和镜头选择。软件:目前业内商业库主要有Halcon,康耐视,DALSA,evision,NI等,开源库有OpenCV.其中NI的labview+vision模块。机器视觉工程应用的基本开发思路是:一、图像采集,二、图像分割,三、形态学处...转载 2018-08-20 10:55:39 · 574 阅读 · 0 评论 -
关于Halcon的复杂图形中心点查找
上面是一张比较复杂的图形,我们希望通过Halcon一系列的算子进行处理,查找到星点交叉处的中心点。mean_image (Image, ImageMean, 41, 41)1将图片进行均值处理,让分离的星点模糊化,从而达到融合成一个区域的目的。 处理结果如下:binary_threshold (ImageMean, Region, 'max_separability',...转载 2018-08-20 10:59:55 · 4221 阅读 · 0 评论 -
Halcon 特征直方图的特征参数
select_shapebasic'area' 面积'row' 行'column' 列'width' 宽'height' 高'row1' 左上角的行坐标'column1' 左上角的列坐标'row2' 右下角的行坐标'column2' 右下角的列坐标'circularity' 圆度 (C' = F / (max^2 * pi) C = min(1,C') F为区域面积,...转载 2018-10-02 19:42:12 · 7700 阅读 · 0 评论 -
Halcon阈值化算子dual_threshold和var_threshold的理解
Halcon中阈值二值化的算子众多,通常用得最多的有threshold、binary_threshold、dyn_threshold等。 threshold是最简单的阈值分割算子,理解最为简单;binary_threshold是自动阈值算子,它可以自动选出暗(dark)的区域,或者自动选出亮(light)的区域,理解起来也没有难度。 动态阈值算子dyn_threshold理解起来稍微复杂一点,使...转载 2018-10-18 08:49:09 · 1683 阅读 · 0 评论 -
纹理特征分析的灰度共生矩阵(GLCM)
纹理分析是对图像灰度(浓淡)空间分布模式的提取和分析。纹理分析在遥感图像、X射线照片、细胞图像判读和处理方面有广泛的应用。关于纹理,还没有一个统一的数学模型。它起源于表征纺织品表面性质的纹理概念,可以用来描述任何物质组成成分的排列情况,例如医学上X 射线照片中的肺纹理、血管纹理、航天(或航空)地形照片中的岩性纹理等。图像处理中的视觉纹理通常理解为某种基本模式(色调基元)的重复排列。因此描述一种纹理...转载 2018-11-02 13:35:36 · 3380 阅读 · 0 评论 -
halcon之最小二乘拟合直线
如果不了解最小二乘算法 请先阅读: Least squares的算法细节原理https://en.wikipedia.org/wiki/Least_squares通常在halcon中拟合直线会用houghline或者 fitline。本文提供一种新的选择,用halcon的矩阵操作实现最小二乘拟合直线 1 2 3 4 5 6 7...转载 2018-11-14 15:52:52 · 3555 阅读 · 1 评论 -
Halcon学习之六:获取Image图像中Region区域的特征参数
area_center_gray ( Regions, Image : : : Area, Row, Column ) 计算Image图像中Region区域的面积Area和重心(Row,Column)。cooc_feature_image ( Regions, Image : : LdGray, Direction : Energy,Correlation, Homogeneity...转载 2018-11-21 09:28:27 · 3835 阅读 · 0 评论 -
HALCON形状匹配讲解
很早就想总结一下前段时间学习HALCON的心得,但由于其他的事情总是抽不出时间。去年有过一段时间的集中学习,做了许多的练习和实验,并对基于HDevelop的形状匹配算法的参数优化进行了研究,写了一篇《基于HDevelop的形状匹配算法参数的优化研究》文章,总结了在形状匹配过程中哪些参数影响到模板的搜索和匹配,又如何来协调这些参数来加快匹配过程,提高匹配的精度,这篇paper放到了中国论文在线了,需...转载 2019-02-27 10:56:30 · 1004 阅读 · 0 评论 -
HALCON算子函数——Chapter 15 : Segmentation
Chapter_15:Segmentation15.1 Classification1. add_samples_image_class_gmm 功能:将从图像中获取的测试样本添加到高斯混合模型的测试数据库中。2.add samples_image_class_mlp 功能:将从图像中获取的测试样本添加到多层视感控器的测试数据库中。3. add_samples_image_class_sv...转载 2018-05-09 08:49:51 · 418 阅读 · 0 评论 -
HALCON算子函数——Chapter 13 : Object
Chapter_13:Object13.1 Information1. count_obj 功能:统计一个元组中的对象。2. get_channel_info 功能:一幅目标图像组成部分的信息。3. get_obj_class 功能:一副目标图像类的名称。4.test_equal_obj 功能:比较目标图像的平等性。5. test_obj_def 功能:测试目标是否被删除。 13.2...转载 2018-05-09 08:50:01 · 745 阅读 · 0 评论 -
HALCON算子函数——Chapter 8 : Lines
Chapter_8_:Lines8.1 Access1. approx_chain 功能:通过弧和线近似一个轮廓。2. approx_chain_simple 功能:通过弧和线近似一个轮廓。 8.2 Features1. line_orientation 功能:计算线的方位。2. line_position 功能:计算一条线的重心、长度和方位。3. partition_lines 功...转载 2018-05-09 08:50:09 · 372 阅读 · 0 评论 -
Halcon基础知识(二)
一、程序中的颜色: 绿色:注释 褐色:控制开发 浅蓝色:外部函数——HDevelop函数文件,可在所有Halcon程序中使用 深蓝色:图像获取和处理 紫色:内部函数——本地程序函数,只在当前程序使用二、VC++、Halcon类型的转换:1、在C++环境下,取HTuple值方法:HTuple str = "halcon";HTuple num = 100;HTuple real = 1.2345...转载 2018-05-10 09:23:54 · 1031 阅读 · 0 评论 -
Halcon基础知识(三)tuple转化操作
对tuple数组执行相关的转化操作//通过截断一个浮点型的数据,转化为整形数据,tuple内容不允许是string类型 HTuple tuple1 = 12.124431432; HTuple result = tuple1.TupleInt(); cout << (Hlong)result<<endl;123//检测一个tuple是否代表是数字,输入...转载 2018-05-10 17:45:17 · 9433 阅读 · 0 评论 -
Halcon基础知识(四)循环读取文件的实现以及数字与字符的转换
在循环读取文件的位置时,常用到数字与字符的转换。数字与字符的转换将字符转换为数字tuple_number(StringImageIndex,IntImageIndex)`12将数字转换为字符tuple_string (IntImageIndex, '0', StringImageIndex)12循环读取图片 这其中就利用了tuple_string将数字转化为字符,从而实现读取地址的改变。C...转载 2018-05-10 17:45:55 · 2089 阅读 · 0 评论 -
Halcon基础知识(五)基于形状的模版匹配
create_shape_model(Template : : //reduce_domain后的模板图像 NumLevels,//金字塔的层数,可设为“auto”或0—10的整数 AngleStart,//模板旋转的起始角度 AngleExtent,//模板旋转角度范围,...转载 2018-05-12 10:49:24 · 2924 阅读 · 0 评论 -
halcon基础知识
一、程序中的颜色: 绿色:注释 褐色:控制开发 浅蓝色:外部函数——HDevelop函数文件,可在所有Halcon程序中使用 深蓝色:图像获取和处理 紫色:内部函数——本地程序函数,只在当前程序使用二、VC++、Halcon类型的转换:1、在C++环境下,取HTuple值方法:HTuple str = "halcon";HTuple num = 100;HTuple real = 1.2345...转载 2018-05-09 08:50:40 · 465 阅读 · 0 评论 -
HALCON算子函数——Chapter 19 : XLD
19.1 Access1. get_contour_xld 功能:返回XLD轮廓(contour)的坐标。2. get_lines_xld 功能:返回一个XLD多边形(polygon)数据。3. get_parallels_xld 功能:返回一个XLD并行数据。4. get_polygon_xld 功能:返回一个XLD多边形(polygon)数据。 19.2 Creation1. ge...转载 2018-05-09 08:51:32 · 614 阅读 · 0 评论 -
VC++联合HALCON多线程处理图像
本文,通过实际代码演示图像的多线程处理,以下为具体的流程。[plain] view plain copy#define THREAD_CNT 60//定义一个常量,它要比线程的个数还要大 CEvent eFaceProcThread[THREAD_CNT]; static UINT FaceProcThread(LPVOID lParam) { POUTPUTDATA pParam...转载 2018-05-09 08:51:58 · 1177 阅读 · 0 评论 -
HALCON算子函数——Chapter 14 : Regions
Chapter_14:Regions14.1 Access1. get_region_chain 功能:一个对象的轮廓(contour)作为链式码。2. get_region_contour 功能:查询一个目标的轮廓(contour)。3. get_region_convex 功能:查询突起的外表作为轮廓(contour)。4. get_region_points 功能:查询一个区域的像...原创 2018-05-09 08:51:01 · 1255 阅读 · 0 评论 -
HALCON算子函数——Chapter 7 : Image
Chapter_7_:Image7.1 Access1. get_grayval 功能:获取一个图像目标的灰度值。2. get_image_pointer1 功能:获取一个通道的指针。3. get_image_pointer1_rect 功能:获取图像数据指针和输入图像区域内最小矩形内部的图像数据。4. get_image_pointer3 功能:获取一个彩色图像的指针。5. get_i...转载 2018-05-09 08:51:41 · 423 阅读 · 0 评论 -
HALCON算子函数——Chapter 9 : Matching
Chapter_9_:Matching9.1 Component-Based1. clear_all_component_models 功能:释放所有组件模型的内存。2. clear_all_training_components 功能:释放所有组件训练结果的内存。3. clear_component_model 功能:释放一个组件模型的内存。4. clear_training_compo...转载 2018-05-09 08:51:22 · 289 阅读 · 0 评论 -
HALCON算子函数——Chapter 3 : Develop
Chapter_3 :Develop1. dev_clear_obj功能:从HALCON数据库中删除一个图标。2. dev_clear_window 功能:清除活动图形窗口。3. dev_close_inspect_ctrl 功能:关闭一个控制变量的监视窗口。4. dev_close_window 功能:关闭活动图形窗口。5. dev_display 功能:在现有图形窗口中显示图像目标。...转载 2018-05-09 08:49:40 · 165 阅读 · 0 评论 -
HALCON算子函数——Chapter 4 : File
Chapter_4_:File4.1 Images1. read_image 功能:读取有不同文件格式的图像。2. read_sequence 功能:读取图像。3. write_image 功能:用图形格式写图像。 4.2 Misc1. delete_file 功能:删除一个文件。2. file_exists 功能:检查文件是否存在。3. list_files 功能:列出目录中的所...转载 2018-05-09 08:51:11 · 274 阅读 · 0 评论 -
HALCON算子函数——Chapter 2 : Control
Chapter_2 Control1.assign功能:为一个控制变量分配一个新值。2.break 功能:终止循环执行。3. comment 功能:向程序添加一行注释。4. continue 功能:跳过现在的循环执行。5. else 功能:条件语句的替换。6. elseif 功能:可选择的条件语句。7. endfor 功能:for循环的终止。8. endif 功能:if命令的终止。...转载 2018-05-09 08:50:51 · 157 阅读 · 0 评论 -
HALCON算子函数——Chapter 6 : Graphics
Chapter_6 :Graphics6.1 Drawing1. drag_region1 功能:一个区域的交互运动。2. drag_region2 功能:一个带有定点规格区域的交互运动。3. drag_region3 功能:一个带有限制位置区域的交互运动。4. draw_circle 功能:一个圆的交互绘图。5. draw_circle_mod 功能:一个圆的交互绘图。6. dra...转载 2018-05-09 08:50:26 · 407 阅读 · 0 评论 -
HALCON算子函数——Chapter 5 : Filter
Chapter_5:Filter5.1 Arithmetic1. abs_image 功能:计算一个图像的绝对值(模数)。2. add_image 功能:使两个图像相加。3. div_image 功能:使两个图像相除。4. invert_image 功能:使一个图像反像。5. max_image 功能:按像素计算两个图像的最大值。6. min_image 功能:按像素计算两个图像的最...转载 2018-05-09 08:50:17 · 747 阅读 · 0 评论 -
find_shape_mode参数详解及时长优化
注:本文内容大量引用了王成群所著《Halcon工业使用教程》第二册中9.1.3 find_shape_mode的内容。 HALCON中最实用的算子find_shape_model,该算子通过模板在图像中寻找没有几何缩放的目标。本文重点对其主要参数进行了归纳整理。通过对该参数的分析,得出通过优化匹配角度、金字塔层数以及贪婪度可减少模板寻找的时长。 find_shape_mode...转载 2019-02-27 10:57:23 · 1617 阅读 · 0 评论