《zw版·Halcon-delphi系列原创教程》 zw版-Halcon常用函数Top100中文速查手册

《zw版·Halcon-delphi系列原创教程》 zw版-Halcon常用函数Top100中文速查手册

Halcon函数库非常庞大,v11版有1900多个算子(函数)。

  这个Top版,对最常用的函数,做了中文说明,目前约250条,以后会逐步优化、增减。

  目标是,类似常用英文单词500一样,做成《Halcon常用函数300条》、《halcon常用函数500条》等版本,方便大 家学习。

  考虑到通用性,函数采用的是Halcon手册格式,没有转成delphi版,请大家注意。

【《zw版·Halcon-delphi系列原创教程》,网址,cnblogs.com/ziwang/】

------------------

  1 abs_image,计算图像的绝对值模型
  2 add_image,两图像相叠加 g' :=, * Mult + Add
  3 affine_trans_contour_xld, 对线条LogoContoursTemp进行HomMat2DComplete对应的变换(平移和缩放)。
  4 affine_trans_point_3d, 对点进行3D变换。
  5 anisotropic_diffusion, 对图像执行各向异性扩散,平滑图像且又保存边缘。
  6 area_center_gray, 计算Image图像中Region区域的面积Area和中心
  7 area_center_points_xld, 轮廓线所有点计算的中心
  8 area_center_xld, 轮廓线所有的区域的中心
  9 auto_threshold, 自动阈值分割,根据灰度直方图中两波峰中的波谷取出阈值。
 10 background_seg, 将找出的区域根据背景分割成各个连通的区域。
 11 bin_threshold,自动阈值分割, Region:黑暗的区域的图像;与auto_threshold, 类似,但只有一个最小值取得仅有一个阈值。
 12 binomial_filter,使用binomial滤波器平滑图像。
 13 boundary, 获得区域的边界
 14 change_domain, 改变Image图像的定义域
 15 change_format, 改变Image图像大小,而且ImagePart图像为灰度值图像。
 16 char_threshold, 自动阈值分割,阈值根据直方图的波峰取得
 17 check_difference, 根据两幅图的不同进行图像分割。
 18 clip_contours_xld, 选择一定区域内的线条
 19 clip_end_points_contours_xld, 去除线条两端的部分像素。
 20 clip_region, 选择一定范围内的区域。
 21 clip_region_rel, 选择四边都减去一定像素的区域
 22 close_contours_xld, 让不封闭的线条封闭
 23 close_edges,关闭边缘
 24 close_edges_length, 使用边缘高度图像关闭边缘间隙。输出的区域包含杯关闭的区域。(感觉是对边缘的扩充)
 25 closing, 用一个设计好的区域来封闭其它区域。
 26 complement, 找到输入区域的补区域。
 27 compose3, 将三幅图像合并成一幅图像
 28 concat_obj, 将对象合并,可以分类时将属性相同的人为合并成一类。
 29 connection,合并所有选定像素触摸相互连通区 
 30 convert_image_type, 转换图像的格式
 31 cooc_feature_image, 计算共生矩阵和推导出灰度特征值
 32 cooc_feature_matrix,根据共生矩阵计算灰度特征值
 33 copy_image,复制image图像
 34 corner_response, 提取图像中的角
 35 count_obj,计算 objects 的个数。
 36 create_funct_1d_array, 根据数组生成一个函数序列
 37 critical_points_sub_pix, 取出图像中的关键点。
 38 crop_contours_xld, 提取出一定范围内的线条。
 39 crop_domain, 从Image图像中裁剪一个矩形区域。这个矩形的周长最小。
 40 crop_domain_rel, 删除相关区域,Top为顶端裁剪的行数,Left,Bottom,Right类似。
 41 crop_part, 删除一个矩形图像区域。Row为右上角的列标索引。Width, Height为新图像ImagePart的宽度和高度。
 42 crop_rectangle1, 删除一个矩形图像区域。
 43 decompose3, 将一幅图像根据RGB值转换成三幅图像。
 44 dev_clear_window, 清除视图窗体
 45 dev_close_inspect_ctrl, 关闭检测窗口
 46 dev_close_window, 关闭活跃的图形窗口。
 47 dev_display, 显示图片 
 48 dev_inspect_ctrl, 打开检测窗口
 49 dev_open_window, 打开一个图形的窗口。
 50 dev_set_color, 设置显示的颜色
 51 dev_set_colored,用交替的颜色显示对象
 52 dev_set_draw, 设置显示的区域是填充还是空心的
 53 dev_set_line_width, 指定线宽
 54 dev_set_part, 设置显示的区域
 55 dev_set_shape, 设置显示的区域的形状
 56 difference, 取出两个区域中不重叠的部分。
 57 dilation_circle, 扩张圆形结构元素的地区
 58 dilation_rectangle1, 扩张矩形元素地区
 59 disp_3d_coord_system, 根据内参和外参显示3D坐标系
 60 disp_circle,显示圆形
 61 disp_rectangle1, 显示矩形
 62 div_image,两幅图像相除 g' := g1 / g2 * Mult + Add
 63 dots_image, 取出图像中圆点
 64 dump_window_image, 将窗口的内容截图成图像
 65 dyn_threshold, 动态阈值分割。
 66 edges_color, 根据颜色进行边缘提取
 67 edges_color_sub_pix, 精确的亚像素边缘提取(彩色图像)
 68 edges_image, 边缘提取
 69 edges_sub_pix, 精确边缘提取的亚像素(灰度图像)
 70 egion_to_label,将区域Region转换为一幅Lable图像ImageLabel。
 71 elliptic_axis_gray,计算Image图像的Region区域的Ra,Rb和Phi。
 72 entropy_gray,Image图像中Region区域的计算熵Entropy和各向异性Anisotropy。
 73 estimate_noise,从单一图像 Image中估计图像的噪声。
 74 expand_gray_ref, 根据灰度和颜色将分离的区域连通。
 75 expand_line, 将轮廓拓展成一个跟其灰度相近的区域。
 76 expand_region, 根据设定的特征将分离的区域连通。
 77 fast_threshold, 根据最大和最小灰度以及面积选出区域
 78 fill_interlace, 修改在采集图像过程中造成的两个半幅图像拼接的问题。
 79 fill_up, 填补选择区域中空洞的部分
 80 fill_up_shape,填充满足给定的图形特征的区域。
 81 find_text, 根据设定的模板寻找字符
 82 fit_circle_contour_xld, 将线条拟合成圆,得到位置和半径。
 83 fit_surface_first_order,计算一阶灰度平面的灰度矩阵和灰度值的逼近参数。
 84 fit_surface_second_order,计算二阶灰度平面的灰度矩阵和灰度值的逼近参数。
 85 frei_amp, Frei-chen 模板进行边缘检测(振幅)
 86 frei_dir, Frei-chen 模板进行边缘检测(振幅和方向)
 87 full_domain, 扩张Image图像的定义域到最大。
 88 funct_1d_to_pairs, 将数据分别对应赋予一个横坐标。
 89 fuzzy_entropy,确定区域Regions的模糊熵 将图像视为模糊集合
 90 fuzzy_perimeter,计算Region区域的模糊周长
 91 gen_circle_contour_xld, 生成一个圆
 92 gen_contour_nurbs_xld, 根据拟合的坐标生成轮廓线
 93 gen_contour_polygon_xld, 生成任意多边曲线
 94 gen_contour_region_xld, 根据区域和指定的特征生成轮廓线。
 95 gen_contours_skeleton_xld, 将系统框架转换成 XLD 轮廓
 96 gen_cooc_matrix,生成Image图像Region区域的共生矩阵
 97 gen_grid_region, 生成网格区域
 98 gen_nurbs_interp, 根据提供的点拟合成曲线的坐标
 99 gen_parallel_contour_xld, 根据指定的特征生成相应的平行线。
100 gen_parallels_xld, 找到平行的轮廓线
101 gen_parallels_xld,找到平行的直线
102 gen_polygons_xld, 将线条拟合成多边形。
103 gen_rectangle1, 在区域内部的实心区域得到一个平行于横坐标的最大矩形。
104 gen_region_line, 生成区域线段
105 get_contour_attrib_xld, 得到线上每个点的属性
106 get_contour_global_attrib_xld, 返回线条的全局属性值,当Attrib<0时线条是直线,当Attrib>0时是圆弧。
107 get_contour_xld, 获得线条的各个点的坐标
108 get_domain, 得到图像区域
109 get_grayval, 计算Image图像中坐标为(Row,Column)的点的灰度值Grayval。
110 get_grayval_contour_xld, 提取了轮廓线上所有点的灰度值
111 get_image_pointer1, 计算Image图像的数据指针Pointer,图像类型Type,图像宽度Width和高度Height。Pointer指向了Image data的起点位置。
112 get_image_pointer1_rect, 计算Image图像中定义区域的最小的长方形的区域的指针Pointer,宽度Width,高度Height,VerticalPitch代表Image的Width*,。两个相邻象素的水平距离(以比特计算)HorizontalBitPitch,每像素的比特数BitsPerPixel。
113 get_image_pointer3, 计算彩色图像ImageRGB的参数。
114 get_image_time, 获取图像生成的时间。
115 get_mposition, 获得鼠标坐标
116 get_parallels_xld, 得到平行轮廓线的相关坐标。
117 gray_closing, 灰度值闭操作
118 gray_erosion_rect, 每个点的灰度值用这个点的矩形掩码内最小灰度值代替。
119 gray_histo,获取Image图像Region区域的灰度相对直方图RelativeHisto和绝对直方图AbsoluteHisto。
120 gray_histo_abs,获取Image图像Region区域的灰度绝对直方图AbsoluteHisto。
121 gray_opening, 灰度值开操作
122 gray_projections,计算Region区域在水平方向和垂直方向的灰度值投影。
123 highpass_image, 从高频成分提取的图像。
124 histo_2dim,计算二通道灰度图像的直方图
125 hom_mat2d_identity, 生成一个2D单位矩阵
126 hom_mat2d_scale, 对矩阵进行变换,用于缩放
127 hom_mat2d_translate, 对矩阵进行2D变换,用于平移。
128 hom_mat3d_compose, 将两矩阵相乘
129 hom_mat3d_identity, 生成一个3D单位矩阵
130 hom_mat3d_rotate, 对矩阵进行3D变换,用于旋转。
131 hom_mat3d_to_pose, 将矩阵变换成3D位姿
132 hom_mat3d_translate, 对矩阵进行3D变换,用于平移。
133 hysteresis_threshold, 当大于最大阈值的点取出做为可靠点,最大与最小值之间的点根据与可靠点的关系选出。
134 info_edges, 估计滤波器的宽度
135 intensity,计算region区域的灰度平均值和偏差
136 interjacent, 找到将各个区域分割开的区域
137 intersection, 计算两个区域的交集。
138 intersection_ll, 提取两条交叉直线交叉点的坐标
139 invert_image, 用255减去每个点的灰度值作为这个点新的灰度值。
140 kirsch_amp, 使用 Kirsch 算子计算出边缘(振幅)
141 kirsch_dir, 使用 Kirsch 算子计算出边缘(振幅和方向)
142 laplace, 使用有限差分计算拉普拉斯变换
143 laplace_of_gauss, 拉普拉斯高斯
144 lines_color, 检测图像中颜色线条,并提取出它们的宽度。
145 lines_gauss, 提取图的线条并计算出图的宽度。
146 local_max, 找到比周围灰度值都大的点。
147 local_max_sub_pix, 提取出图像中灰度极大值的坐标
148 local_min, 找到比周围灰度值都小的点
149 local_min_max_funct_1d, 提取出函数序列中的局部最大和最小值。
150 max_image,计算两幅图像每个像素点的最大值
151 mean_image, 对图像应用掩膜进行均值滤波处理,输出为均值滤波后的图像。通过均值平滑图像。
152 measure_circle,提取圆弧线的例子:
153 median_image, 使用不同级别掩码的中值滤波。
154 median_rect, 对图像中值滤波
155 min_image,计算两幅图像每个像素点的最小值
156 min_max_gray, 获得区域内图像的最大和最小灰度值
157 min_max_gray,计算Region区域的最大最小灰度值。
158 mod_parallels_xld, 修补平行的轮廓线
159 moments_gray_plane,计算平面的灰度矩阵和灰度值的逼近参数。
160 mult_image,两幅图像相乘 g' := g1 * g2 * Mult + Add
161 nonmax_suppression_dir, 使用方向图像 抑制所有的超过给定最大值的图像灰度值的点
162 obj_diff, 提取两组对象中不同的对象。
163 opening_circle,打开具有圆形结构元素的地区,平滑图像的边界。 
164 optical_flow_mg, 计算两幅图像中的视觉差异,用于监控。
165 orientation_points_xld, 被看做点云的轮廓,或多边形的方向。
166 orientation_region, 提取区域的方向
167 overpaint_gray, 将灰度值不相同区域用不同颜色绘制到Image中
168 overpaint_region, 将Region以一个恒定的灰度值绘制到Image图像中
169 paint_gray, 以灰度值将图像绘制到目标Image中
170 paint_region, 将Region以一个恒定的灰度值绘制到Image图像中
171 paint_xld, 将XLD以灰度值绘制到Image图像中
172 partition_dynamic, 根据各个区域的特征将各个区域分割开。
173 plane_deviation,逼近的图象平面计算灰度值偏差
174 polar_trans_image, 把图像由笛卡尔坐标转换成极坐标下图像,及把圆环形的图像区域转换成矩形区域。
175 polar_trans_region_inv, 把图像由极坐标坐标转换成笛卡尔下图像,及把矩形的图像区域转换成圆环形区域。
176 pose_to_hom_mat3d, 将3D位姿转换成一个矩阵。
177 prewitt_amp, 使用 Prewitt 算子计算出边缘(振幅)
178 project_3d_point, 将空间的3D坐标变换到图像坐标
179 read_image, 加载图片 
180 rectangle1_domain, 根据矩形得到区域视为Image图像的定义域。
181 reduce_domain,减少定义领域的图像,ImageReduced=Image- Region
182 region_to_bin,将区域Region转换为一幅二进制图像BinImage。
183 region_to_label,将区域Region转换为一幅Lable图像ImageLabel。
184 region_to_mean,绘制ImageMean图像,将其灰度值设置为Regions和Image的平均灰度值。
185 regiongrowing, 区域生长算法,将图象被分割为区域,将图像分割成各个灰度值相近的区域。
186 regress_contours_xld, 计算XLD轮廓,回归线的参数。
187 roberts, 使用 Robert 算子计算边缘
188 robinson_amp, 使用 Robinson 算子计算出边缘(振幅)
189 rotate_image, 将图像按照指定的角度旋转
190 scale_image_max, 增加图像的对比度
191 select_contours_xld, 根据线的特征选择轮廓线。
192 select_gray,根据灰度值选择区域
193 select_obj,选择对象,Index 是指编号,从1开始计数
194 select_region_point, 选择包含指定点的区域
195 select_shape,选择带有某些特征的区域
196 select_shape_proto, 选出具有相似特征的所有区域
197 select_shape_std, 从多个区域选出指定特征相似的区域。如选出面积最大的区域。
198 select_shape_xld, 根据线的形态特征选择轮廓线。
199 select_xld_point, 选择包含指定点的轮廓线。
200 set_grayval, 设置Image图像中坐标为(Row,Column)的灰度值
201 shape_histo_all,用极限值确定特征的直方图。
202 shape_histo_point,获取阈值特征直方图
203 shape_trans, 根据指定的参数对区域的形状进行转换,如转换成正方形等。
204 shape_trans_xld, 将区域的边界根据不同的属性转化成线条
205 skeleton, 计算区域的骨架 Skeleton == Region
206 smallest_circle,最小外接圆。
207 smallest_rectangle1, 最小外接正矩形。
208 smooth_funct_1d_gauss, 对一维数组进行平滑处理。
209 smooth_image, 使用递归滤波器平滑图像。
210 sobel_amp, 使用 Sobel 算子计算出边缘(振幅)
211 sort_index, 找出最大值对应的索引
212 sort_region,根据region位置关系进行排序
213 split_contours_xld, 在主要点分割XLD轮廓。
214 sub_image,对两幅图像做减法 g' :=, * Mult + Add
215 sub_image,对两幅图像做减法 g' :=, * Mult + Add
216 subset, 从数组Rows先出Min对应序列的数组
217 symm_difference_closed_contours_xld, 提取封闭对称轮廓线的不同部分
218 test_self_intersection_xld, 检测轮廓线本身是否存在交叉点
219 test_subset_region, 测试一个区域是不是在另一个区域中。
220 test_xld_point, 测试提供的点是否被轮廓线包含在内
221 text_line_orientation, 检测具有字符的图像的方向
222 texture_laws,使用Laws文本滤波器过滤图像。
223 threshold, 利用全局阀值分割图像
224 tile_images, 将幅图像合并成一幅图像
225 union2_closed_contours_xld, 从多条轮廓线中合并成封闭的轮廓线
226 union2_closed_polygons_xld, 从多个多边形的轮廓线中提取封闭的轮廓线。
227 union_cocircular_contours_xld, 将属于同一个圆的轮廓线连接起来
228 union_collinear_contours_ext_xld, 连接同线的轮廓线,提取的轮廓比union_collinear_contours_xld更精准。
229 union_collinear_contours_xld, 连接共线的线条。
230 union_cotangential_contours_xld, 
231 vector_field_length, 计算向量的长度,得到差异图像。
232 vector_to_proj_hom_mat2d, 根据图像坐标和实际坐标得到坐标的变换关系。
233 watersheds, 从图像中提取风水岭。
234 zero_crossing, 零交点(二次导数)