Halcon的一些算子

1.求区域重心      输入区域 输出面积,重心行列坐标

area_center (ModelRegion, Area, RowRef, ColumnRef)

2.抠图               输入图像 输入区域 输出图像

reduce_domain (Image, ModelRegion, ImageReduced)

3.彩色转灰度  rgb1_to_gray 
4.拆通道         decompose3 

5.RGB转HSV  trans_from_rgb1

6.对象变量操作:

                        gen_empty_obj:产生空对象
                        count_obj:计数
                         select_obj:访问某一个
                        concat_obj:追加
                        remove_obj :移除
                        copy_obj:拷贝
                        insert_obj:插入
                        clear_obj:清除

7. 填充区域中的孔洞  fill_up

8.人机交互

dev_open_window   打开子窗体
create_drawing_object_rectangle1 创建矩形探测器
set_drawing_object_params 设置参数
attach_drawing_object_to_window  绑定探测器在窗口
attach_background_to_window  绑定图像在窗口
get_drawing_object_iconic  获得区域
detach_drawing_object_from_window  取消绑定探测器
detach_background_from_window  取消绑定图像

9.喷涂轮廓
gen_contour_polygon_rounded_xld  生成多边形轮廓
gen_image_const 创建具有恒定灰度值的图像
paint_xld   喷图构造模板图像

10.滤波
mean_image 均值滤波
median_rect 中值滤波
gauss_filter 高斯滤波
gauss_distribution 生成高斯分布

常用的一些算子

dev_update_off ()//取消更新
dev_get_window (WindowHandle)//获得窗口的句柄
set_display_font  //设置字体
threshold //二值化
gen_rectangle1 //手动AOI
shape_trans //区域形状转换
reduce_domain //抠图
add_channels  //抠图(可以输入多区域)
full_domain //恢复抠图
opening_circle //区域开运算
erosion_circle //区域腐蚀
dliation_circle //区域膨胀
connection //连通域断开
select_shape //区域的特征选择
sort_region //排序
smallest_circle //求区域最小外接圆
disp_message //显示文本

scale_image //灰度线性变换-缩放变换
log_image //对数变换
exp_image  //指数变换
binary_threshold  //二值化-大津阈值 平滑直方图 适用于黑白明显
union1 //区域联合
rgb1_to_gray  //彩色转灰度
decompose3 //拆通道
trans_from_rgb1 //RGB转HSV
select_shape_std //特征选择(面积最大)
dev_set_draw //设置边缘
dev_set_line_width  //设置线宽
deg(Phi)//将弧度转度
rad(PhiDeg)//将度转弧度

*对象操作
count_obj //对象计数
concat_obj //对象追加
gen_empty_obj //生成空对象

*仿射变换
area_center求区域重心和面积
orientation_region 求区域角度
vector_angle_to_rigid 求平移和旋转矩阵 刚体变换
hom_mat2d_identity 求单位矩阵
hom_mat2d_translate求平移矩阵
hom_mat2d_rotate  求旋转矩阵
hom_mat2d_scale 求缩放矩阵
affine_trans_image 图像仿射变换
affine_trans_region 区域仿射变换
draw_region 等待画区域右键确认
dev_open_window 打开窗口
dev_close_window 关闭窗口
dev_clear_window 清除窗口
list_files 列举文件夹路径
tuple_regexp_select 过滤路径
region_features 查看特征含义

*模板匹配
create_shape_model 创建模板
inspect_shape_model 检查模板
find_shape_model 查找模板
clear_shape_model 清除模板
affine_trans_contour_xld 轮廓的仿射变换
get_shape_model_contours获得轮廓
get_shape_model_param 获得模型参数
read_shape_model 读入模型
write_shape_model 保存模型
set_shape_model_param 设置边界区域模板也可找到

*飞拍
dyn_threshold 动态阈值
illuminate 光照均衡
equ_histo_image直方图均衡4
emphasize图像增强
open_framegrabber打开相机
set_framegrabber_param设置参数
grab_image_start相机初始化
grab_image_async异步抓图
grab_image同步抓图
draw_circle画圆右键确认
draw_rectangle1画矩形右键确认

*中心移动法
info_framegrabber  枚举设备
edges_sub_pix 提取亚像素精确边缘
fit_circle_contour_xld 拟合圆
set_shape_model_origin 设置原点
gen_cross_contour_xld 生成一个十字叉轮廓

*多模板匹配_等比例
create_scaled_shape_model -等比例创建
find_scaled_shape_model -等比例查找
fill_up --填充区域中的孔洞

*不等比例缩放查找
create_aniso_shape_model 不等比例模板创建
find_aniso_shape_model 不等比例查找

*人机交互
dev_open_window   打开子窗体
create_drawing_object_rectangle1 创建矩形探测器
set_drawing_object_params 设置参数
attach_drawing_object_to_window  绑定探测器在窗口
attach_background_to_window  绑定图像在窗口
get_drawing_object_iconic  获得区域
detach_drawing_object_from_window  取消绑定探测器
detach_background_from_window  取消绑定图像
difference   --差集(俩个区域的差集,模板区域在前(大的)) 
union2   -指定两个区域看成一个区域  
intersection    --区域的交集 
symm_difference  --对称差

*喷涂轮廓
gen_contour_polygon_rounded_xld  生成多边形轮廓
gen_image_const 创建具有恒定灰度值的图像
paint_xld   喷图构造模板图像

*滤波
mean_image 均值滤波
median_rect 中值滤波
gauss_filter 高斯滤波
gauss_distribution生成高斯分布
write_contour_xld_dxf 保存轮廓
read_contour_xld_dxf 读入轮廓

*创建xld轮廓
create_shape_model_xld 直接xld创建   
create_scaled_shape_xld  直接xld创建   等比例缩放
create_aniso_shape_model_xld直接xld创建   不等比例缩放
set_shape_model_metric 设置极性
intensity  求区域在图中的平均灰度值和标准差
boundary 区域缩小到边界

*相关性匹配
create_ncc_model 相关性匹配创建
find_ncc_model 相关性匹配查找
clear_ncc_model 清除模型相关性
write_ncc_model 保存模型
read_ncc_model 读入模型
find_ncc_models 多模板查找

局部变形--形状---扩展
create_local_deformable_model 创建模板
find_local_deformable_model   查找
clear_deformable_model   清除

*一维测量
gen_measure_rectangle2 生成测量矩形
get_image_size 获得图像宽高
measure_pos    边缘测量
measure_pairs  边缘对测量
gen_contour_polygon_xld  生成多边形xld轮廓
disp_line    显示线
disp_rectangle2  显示带方向的矩形
disp_arrow   显示带箭头
close_measure  关闭测量矩形

dev_set_part  局部放大显示
dev_open_window  打开小窗
gen_measure_arc   生成测量弧形                        
gen_circle_contour_xld  生成圆弧xld轮廓
distance_pp   求两个点距离
angle_lx    求直线与水平轴角度
get_points_ellipse   获得椭圆点
disp_arc   显示圆弧

affine_trans_point_2d  点的仿射变换
affine_trans_pixel 像素点的仿射变换
line_orientation   求直线与水平轴角度

*摄像机标定
gen_caltab          生成描述文件
create_calib_data   创建标定模型
set_calib_data_cam_param      设置初始内参
set_calib_data_calib_object   设置标定板描述文件
find_calib_object             查找标定板
get_calib_data_observ_contours   获得标定板轮廓
get_calib_data_observ_points     获得标定板点坐标(单独获得外参)
disp_3d_coord_system   显示坐标系
calibrate_cameras      摄像机标定
get_calib_data   获得内外参
write_cam_par    保存内参
write_pose       保存外参
pose_to_hom_mat3d   姿态转矩阵
set_origin_pose     移动坐标系
image_points_to_world_plane   像素到世界转换

vector_to_pose 求外参
get_calib_data_observ_pose 单独获得外参
caltab_points  获得点世界坐标
create_caltab  生成蜂窝板描述文件

*畸变校正
change_radial_distortion_cam_par求理想内参
gen_radial_distortion_map 求map映射
map_image  map映射矫正
change_radial_distortion_image 图像矫正
tile_images 多张图一起显示

*双目标定
pose_invert    姿态翻转
pose_compose   姿态乘法
disp_caltab    显示标定板
 
1.生成标定板的描述文件 gen_caltab
2.创建标定模型  create_calib_data
3.设置相机的初始内参和标定板的描述文件
相机初始内参  set_calib_data_cam_param
标定板描述文件 set_calib_data_calib_object
4.采集图像循环提取标定板的mark点坐标
查找标定板 find_calib_object
可视化 获得标定轮廓 get_calib_data_observ_contours
获得点的轮廓  get_calib_data_observ_points
生成十字叉轮廓 gen_cross_contour_xld
显示坐标系---世界坐标系 disp_3d_coord_system
5.摄像机标定  calibrate_cameras
6.获得内外参 get_calib_data  姿态矩阵变换 pose_to_hom_mat3d
7.保存 write_cam_par保存内参   write_pose保存外参

*二维测量
boundary        求区域边界
edges_sub_pix   边缘亚像素提取
threshold_sub_pix  边缘亚像素提取
disp_arrow         显示箭头
contour_to_world_plane_xld  像素轮廓转世界轮廓
length_xld                  求轮廓周长
contour_point_num_xld       求轮廓点数
affine_trans_point_3d  点的仿射变换(世界坐标转换成相机坐标)
project_3d_point       点的投影获得像素坐标(相机坐标转换成像素坐标)

*拟合的一些算子
fit_circle_contour_xld       拟合圆
gen_circle_contour_xld       生成圆xld轮廓
fit_rectangle2_contour_xld   拟合矩形
gen_rectangle2_contour_xld   生成矩形
fit_line_contour_xld         拟合直线
gen_contour_polygon_xld      生成多边形xld轮廓线(直线)
fit_ellipse_contour_xld      拟合椭圆
gen_ellipse_contour_xld      生成椭圆

*获得轮廓的属性
get_contour_global_attrib_xld   获得轮廓全局属性
regress_contours_xld            求具有回归属性的轮廓
get_regress_params_xld          求回归属性轮廓的属性值
select_contours_xld             轮廓特征筛选

*分割手法
threshold               二值化
watersheds_threshold    分水领域二值化
regiongrowing           种子生长法
edges_image             提取边缘

segment_contours_xld           轮廓分割
smooth_contours_xld            平滑轮廓
get_points_ellipse             活动椭圆点
disp_arc                       显示弧形

*联合
union_collinear_contours_xld   共线联合
union_cocircular_contours_xld  共圆联合
union_adjacent_contours_xld    近邻联合
union2_closed_contours_xld     闭合联合

*卡尺
get_region_points           获得区域上的点
create_metrology_model      创建卡尺模型
set_metrology_model_image_size    设置宽高
add_metrology_object_line_measure 添加直线卡尺
set_metrology_model_param         设置模型参数
align_metrology_model     定位跟随
apply_metrology_model     卡尺测量
get_metrology_object_result_contour  获得拟合后轮廓
get_metrology_object_result   获得拟合后参数结果
get_metrology_object_measures 获得测量矩形
angle_ll             求两条线角度
intersection_lines   求直线交点
line_orientation     求直线角度
clear_metrology_object   清除卡尺 
clear_metrology_model    清除卡尺 模型
hom_mat2d_to_affine_par  根据矩阵求平移旋转量
vector_to_rigid          求刚体平移旋转矩阵
set_metrology_object_param     设置卡尺参数拟合实例
get_contour_angle_xld          获得角度轮廓
add_metrology_object_generic   添加卡尺模型通用

*重心问题
area_center_gray   灰度重心
area_center_xld    求轮廓包围重心
area_center_points_xld    求xld轮廓重心

*缺陷--blob
min_max_gray  求区域在图像中对应的最大灰度值_最小灰度值
orientation_region  求区域与水平轴夹角
region_features     求区域特征

*缺陷---差分思想
sub_image            差分图像减法
mult_image           图像乘法
var_threshold        局部均值方差二值化
gray_opening_shape   灰度开运算
gray_closing_shape   灰度闭运算
create_variation_model  创建差分模型
train_variation_model   训练
get_variation_model   (获得标准图)
prepare_variation_model   设置参数
compare_variation_model   差分
clear_variation_model     清除差分
sobel_amp                 边缘检测幅度(一阶求导)
point_line_to_hom_mat2d    点到线的矩阵
hom_mat2d_invert           矩阵翻转
gen_tuple_const            生成一个空数组

*缺陷---测量拟合思想
texture_laws       纹理滤波
translate_measure  移动测量矩形
dist_rectangle2_contour_points_xld    求对点距离
get_region_contour       获得边界轮廓坐标
gen_region_points        根据点的坐标形成区域
gen_region_line          生成直线区域
get_region_points        获得区域点坐标
get_contour_xld          获得xld轮廓点的坐标

*缺陷---频域
fft_image        快速傅里叶变换            
fft_image_inv    快速傅里叶逆变换      
fft_generic      傅里叶正逆变换          
rft_generic      傅里叶变换   
convol_fft       频域乘法         
gen_lowpass      低通(直通)滤波器 
gen_highpass     高通(直通)滤波器 
gen_gauss_filter 高斯滤波器
paint_region     喷涂区域
gray_range_rect  确定矩形内的灰度值范围

gen_sin_bandpass     生成正弦带通滤波器
invert_image         灰度翻转
watersheds_threshold 分水领域阈值
watersheds           分水领域
select_gray          灰度特征选择
zoom_image_factor    改变分辨率
hom_mat2d_scale_local  求缩放矩阵
get_contour_attrib_xld 求轮廓属性
lines_gauss            检测线条极其宽度
calculate_lines_gauss_parameters  搭配使用

*频域扩展
crop_domain       裁剪图像
scale_image_max   灰度值变换到0--255
gen_mean_filter   生成均值滤波器 
correlation_fft   相关性(频谱)
gen_derivative_filter(生成衍生高斯滤波器)   
gen_bandpass     带通滤波器   
gen_bandfilter   带阻滤波器
gen_gabor        加窗傅里叶变换滤波器 
convol_gabor     滤波
power_real       转成功率谱
local_max        求局部极大值的区域点    
diff_of_gauss    差分高斯  
zero_crossing    边缘提取区域 二阶
laplace_of_gauss 拉普拉斯高斯
derivate_gauss   衍生高斯
zero_crossing_sub_pix   边缘提取区域 二阶亚像素
gen_region_contour_xld  XLD轮廓转区域
gen_contour_region_xld  区域转xld轮廓
skeleton                计算区域的骨架
gen_contours_skeleton_xld 骨架转xld
cooc_feature_image         共生矩阵
sobel_amp                  sobel检测边缘幅度
gray_histo_abs             求灰度值分布

光度立体重建
photometric_stereo     光度立体重建
derivate_vector_field  梯度场转曲率图
mirror_image           镜像图像
mirror_region          镜像区域
abs_image              求绝对值图像     
region_to_bin          生成二值图像      
rank_region            区域秩序滤波(增加  减少)

*机器学习--第一套算子
create_ocr_class_mlp     创建分类器 
append_ocr_trainf        添加样本
trainf_ocr_class_mlp     训练
do_ocr_single_class_mlp  分类识别
clear_ocr_class_mlp      清除
write_ocr_class_mlp      读分类器
read_ocr_class_mlp       写

*了解算子
get_params_ocr_class_mlp     获取OCR分类器的参数
get_features_ocr_class_mlp   计算分类器特征
concat_ocr_trainf            追加样本数据
read_ocr_trainf_select       从文件中读取特征转换成图像
read_ocr_trainf_names        读分类器中名称和个数
dev_inspect_ctrl

*第二套算子
create_class_mlp     创建分类器
add_sample_class_mlp   mlp添加样本
train_class_mlp      训练
classify_class_mlp   识别
clear_class_mlp      清除模型
write_class_mlp      读分类器
read_class_mlp       写

*第三套算子
create_class_mlp              创建分类器
add_samples_image_class_mlp   添加样本
train_class_mlp               训练(针对的是像素)
classify_image_class_mlp      识别
clear_class_mlp      清除模型
write_class_mlp      读分类器
read_class_mlp       写
hysteresis_threshold 滞后阈值
gen_empty_region     生成空区域

*二维码
create_data_code_2d_model         创建模型     
set_data_code_2d_param            设置参数                      
find_data_code_2d                 解码
clear_data_code_2d_model          清除模型 
get_data_code_2d_results          获得数据结果
get_data_code_2d_objects          获得对象结果
get_data_code_2d_param            获得模型参数值
projective_trans_image            点的其次变换
projective_trans_image            图像投影变换

*一维码
create_bar_code_model     创建模型
set_bar_code_param        设置参数
find_bar_code             解码
clear_bar_code_model      清除模型
中间结果获取:
get_bar_code_object       获得对象结果
get_bar_code_param        获得模型参数值
get_bar_code_result       获得数据结果


 

你可能感兴趣的:(视觉检测,计算机视觉,1024程序员节)