Halcon 常 用 算 子 合 集
一、窗体操作
001开启一个窗口:dev_open_windows
002开启一个适应图像的窗口:dev_open_window_fit_image
003获取图像窗口句柄:dev_get_window
004清除图像窗口的内容:dev_clear_window
005关闭活动窗口:dev_close_window
006显示图像:dev_display
007在当前窗口显示文字:dev_disp_text
008在指定窗口显示文字:disp_message
009设置显示字体类型:set_display_font
010设置显示颜色:dev_set_color
011设置轮廓线的线宽:dev_set_line_width
012定义区域填充模式:dev_set_draw
二、图像创建
013读取图像:read_image
014获取图像尺寸:get_image_size
015获取图像采集时间:get_image_time
016获取图像类型:get_image_type
017获取图像得单通道指针:get_image_pointer1
018获取图像得三通道指针:get_image_pointer3
019 RGB图像转换为三分量:decompos3
020三分量合并为RGB图像:compose3
021 RGB转换HSV模型:trans_from_rgb
022单个彩图转灰度图:rgb1_to_gray
023三个分量图转灰度图:rgb3_to_gray
三、B00L分析
1、阈值分割
024全局阈值分割:threshold(光照良好时使用)
025自动全局阈值分割:binary_threshold(黑白分明时使用)
026局部动态阈值分割:mean_image+
027 dyn_threshold(光照不均匀使用)
2、区域集合运算及变换
028合并多个区域:union1(输入为一个变量多个区域)
029合并两个区域:union2(输入仅限两个图形变量,即两个区域)
030区域求差集:difference
031区域求交集:intersection
032区域打散:connection
033区域填充:fill_up
034按型形状区域填充:fill_up_shape
035区域形状变换:shape_trans
036抠图:reduce_domain
3、形态学处理
037开运算:opening(去除小点杂质)
038闭运算:closing(连接区域)
039膨胀:dilation
040腐蚀:erosion
041边界:boundary
4、特征提取
042求面积及中心坐标:area_center
043提取目标区域:select_shape
044提取内接___特征:inner_
045提取外接___特征:smallest
046读取区域所有特征参数:region_features
5、ROI区域
047窗口画圆:draw_circle
048生成圆区域:gen_circle
049窗口画矩形1:draw_rectangle1(不带角度)
050窗口生成矩形区域1:gen_rectangle1(不带角度)
051窗口画矩形2:draw_rectangle2(带角度)
052窗口生成矩形区域2:gen_renctangle2(带角度)
053窗口画椭圆:draw_ellipse
054窗口生成矩形区域:gen_ellipse
055窗口画多边形区域:draw_region
056窗口画直线:draw_line
057窗口生成直线:gen_region_line
058窗口生成一个点:gen_region_points
6、保存区域和读取区域
059保存区域:write_region
060读取区域:read_region
7、空对象处理
061生成一个空得区域对象:gen_empty_rengion(只能填入一个对象)
062生成一个空得对象:gen_empty_obj(可以填入多个对象)
063连接两个区域:concat_obj
8、区域间得距离
064点到点:distance_pp
065点到线:distance_pl
066点到区域得最长/最短距离:distance_pr
067直线到区域得最长/最短距离:distance_pr
068区域到区域得最短距离:distance_rr
9、几何变换
069平移:move_region(区域平移后相减可得边界)
070缩放:zoom_region
071镜像:mirror_region
072倒置:transpose_region
073极坐标与笛卡尔坐标得转换:polar_trans_region
074 polar_trans_region_inv
10、仿射变换
075创建二维变换矩阵:hom_mat2d_identity
076创建平移变换矩阵:hom_mat2d_translate
077创建缩放变换矩阵:hom_mat2d_scal
078区域任意仿射变换:affine_trans_region(根据仿射变换矩阵进行)
079刚性仿射变换:vector_angle_to_rgid(根据点坐标进行变换)
080扩展图像变换:affine_trans_image(根据放射变换矩阵)
四、图像一维码识别
081创建条形码模型:creat_bar_code_model
082设置条形码搜索参数:set_bar_code_param
083搜索条形码:find_bar_code
084清楚条形码模型:clear_bar_code_model
五、图像二维码识别
085创建二维码模型:creat_data_code_2d_model
086设置参数:set_bar_code_param
087搜索二维码:find_data_code_2d
六、OCR识别
1、神经网络多层感知识别
088生成识别分类器句柄:read_ocr_class_mlp
089识别单个字符:do_ocr_single_class_mlp
090识别多个字符:do_ocr_multi_class_mlp
091关闭分类句柄:clear_ocr_class_mlp
2、TEXT分割识别
092创建text识别模型:creat_text_model_reader
093设置字符参数:set_text_model_param
094查找字符识别:find_text
095获取结果:get_text_object
096 get_text_result
097释放内存:clear_text_result
098 clear_text_model
3、使用神经网络多层感知训练字符(例程:bottlet.hdev)
099生成训练用得文件:append_ocr_trainf将区域,图像及对应得字符装载到该文件
100创建训练模型并进行训练:creat_ocr_class_mlp
101 trainf_ocr_class_mlp
102保存训练结果到训练文件中:write_ocr_class_mlp
103清空缓存:clear_ocr_class_mlp
七、图像滤波及预处理
1、图像滤波
104均值滤波:mean_image
105中值滤波:median_image,median_rect
106秩序值滤波:rank_image,rank_rect
107高斯滤波:gauss_filter(局部,小点)
108图像平滑:smooth_image(使用各种滤波器平缓图像)
2、图像增强
109均值增强:emphasize(亮更亮,暗更暗)
110一致性增强:coherence_enhancing_diff
111比例增强:scale_image_max
112冲击滤波:shock_filter
3、图像得算术运算
113图像加法:add_image
114图像剑法:sub_image
115图像乘法:mult_image
116图像除法:div_image
117图像翻转:invert_image
118图像灰度取大:max_image
119图像灰度取小:min_image
120图像灰度比例拉伸:scal_image
4、图像得几何变换
121仿射变换:affine_trans_image
122镜像变换:mirror_image
123投影变换:projective_trans_image
124 projective_trans_image_size
125极坐标变换:polar_trans_image_ext
126图像旋转:rotate_image
127缩小图像:zoom_image_size
八、XLD边缘轮廓处理
1、XLD的创建
128生成圆轮廓:gen_circle_contour_xld
129生成椭圆轮廓:gen_ellipse_contour_xld
130生成矩形轮廓:gen_rectangle2_contour_xld
131生成箭头轮廓:gen_arrow_contour_xld
132生成十字叉轮廓:gen_cross_contour_xld
133生成多边形轮廓:gen_contour_polygon_xld
134 gen_contour_polygon_rounded_xld
2、使用其他形式转换为轮廓
135将区域边缘生成轮廓:gen_contour_region_xld
136将骨骼生成轮廓:gen_parallels_xld
3、使用边缘提取生成轮廓
137阈值分割提取边缘:threshole_sub_pix
138基于像素精度的边缘提取:带通滤波:bandpass_image
139索贝尔放大器:sobel_amp
140多种可选择的滤波器:edges_image
141基于亚像素边缘提取:edges_sub_pix
142 lines_guss
143 edges_color_sub_pix
144 lines_color
145 lins_facet
4、轮廓特征值提取及筛选
146根据特征选在轮廓:select_contour_xld
147 select_shape_xld(两者可选择的特征不同)
5、轮廓变换
148对轮廓排序:sort_contours_xld
149平滑轮廓:smooth_contours_xld
150形状变换:shape_trans_xld
151封闭轮廓:close_contours_xld
152修剪出矩形区域的轮廓:clip_contours_xld
153修剪并封闭矩形区域轮廓:crop_contours_xld
6、轮廓分割
154按直线和圆弧的特性分割轮廓:segment_contours_xld
7、轮廓合并
155合并端点临近的轮廓:union_adjacent_contours_xld
156合并位于同一条直线的轮廓:union_collinear_contours_xld
157合并属于同一个圆上的轮廓:union_cocircular_contours_xld
158合并具有切线关系的轮廓:union_cotangential_contours_xld
159合并具有相似方向的轮廓:union_straight_contour_xld
8、拟合
160拟合为圆:fit_circle_contour_xld
161拟合为直线:fit_line_contour_xld
162拟合为矩形:fit_rectangle2_contour_xld
163拟合为椭圆:fit_ellipse_contours_xld
9、获取轨迹的图像数据
164获取轮廓坐标:get_contour_xld
165获取轮廓点的特性:get_contour_attrib_xld
10、轮廓的保存和读取
166保存轮廓:write_contour_xld_dxf
167读取轮廓:read_contour_xld_dxf
11、对轮廓进行仿射变换
168 affine_trans_contour_xld
12、轮廓的几何变换
169生成对应的平行轮廓:gen_parallel_contour_xld
170极坐标转换:polar_trans_contour_xld_inv
171投影变换:projective_trans_contours_xld
13、轮廓集合运算
172闭合轮廓的交集:intersection_closed_cointours_xld
173闭合轮廓的差:difference_closed_contours_xld
174合并闭合轮廓:union2_closed_contours_xld
九、图像测量技术
1、测量算子
175创建测量对象:gen_measure_rectangle2
176 gen_measure_arc
177提取直线边缘对:measure_pairs(结果成对出现)
178提取边缘位置:measure_pos(结果顺序出现)
2、轮廓的直接测量
179 distance_cc
180 distance_sc
181 distance_lc
182 distance_pc
3、测量角度
183两个直线的角度:angle_ll
184计算直线与其中一坐标轴的角度:angle_lx
十、模板匹配
1、基于形状的模板匹配
185创建边缘模板:creat_shape_model
186创建边缘轮廓模板:creat_shape_model_xld
187查找边缘模板:find_shape_model
188创建具有缩放比的模板:creat_scaled_shape_model
189查找具有缩放比的模板:find_scaled_shape_model
190查看模板图像的模板区域:inspect_shape_model
191获取模板轮廓get_shape_model_contours(得到轮廓进行仿射变换作为显示和对比)
192获取模板位置:get_shape_model_origin(用来进行仿射变换的起始点)
193保存模板:write_shape_model
194读取模板:read_shape_model
195清楚模板:clear_shape_model
2、基于相关性的模板匹配
196创建模板:creat_ncc_model
197查找模板:find_ncc_model
3、基于灰度的模板匹配
198把灰度值添加到区域中:add_channels
199寻找一个模板和一个图像的最佳匹配:best_match
十一、相机标定及畸变矫正
200生成标定板描述文件:gen_caltab
201通过有畸变的内参求出无畸变的内参:
change_radial_distortion_cam_par
202求出有畸变的内参和无畸变的内参之间的映射关系:
gen_radial_distortion_map
203映射图像:map_image
204将像素坐标转为世界坐标:image_points_to_world_plane
十二、其他
弧度转角度:tuple_deg
粉丝最爱前十文章(以下文章点击即可进去)
国内外机器视觉硬件仿制最多的企业,机器视觉行业最奇葩龙头企业:基恩士,基恩士这个名称意味着全球视觉检测创新与卓越
明明用的不是自己机器视觉软件,甚至是盗版,机器视觉公司为什么还要申请那么多专利?
机器视觉行业最大的污点是什么?99%机器视觉公司存在测量项目数据造假,很遗憾,本人没有恪守技术的本分
海康Visionmaster加密狗淘宝闲鱼为何如此便宜?是二手海康加密狗吗?是盗版加密狗吗?海康管理如此混乱不堪吗?卖家犯法?
下一批就是外包机器视觉公司兄弟们,机器视觉兄弟们可能还不知道,日结,灵活就业的兄弟们正在连夜找工作!
机器视觉公司为什么公布自己的破解软件或Lincense?为什么机器视觉破解软件越来越少,版本越来越旧?多数是国外企业机器视觉软件
机器视觉--康耐视技术文章(以下文章点击即可进去):
机器视觉--Halcon技术文章(以下文章点击即可进去):