halcon初始
窗体介绍
图形窗口(左上角)
显示结果,显示图像,区域和 XLD 等标志性数据
程序窗口(右下角)
输入和编辑代码
变量窗口(左下角)
显示图标变量和控制变量,图标变量含图表数据,控制变量含控制数据
算子窗口(右上角)
编辑语言中函数,方法
打开算子
在程序窗口 * 是注释,写在每行最前面(就像C#中 // 一样)
需手搓代码加载图片
red_image 算子是加载图片的,参数1是输出参数代表图片,参数2是图片路径(可使用绝对路径和相对路径)
若打开算子窗口双击'read_image'则会展示算子编辑,可在算子窗口直接更改数据点击替换
可简写已经加载过相对路径的图片
read_image (aaa, 'clip.png')
定义变量
‘:=’ 赋值
a:=10
灰度直方图
原图:
threshold直方图工具,按照指定的范围进行提取图像 类似于blob工具
参数1 输入图像名 参数2 输出图像名
参数3 分割的灰度值最小范围 参数4 分割灰度值的最大范围
threshold (aaa, bbb,7, 128)
效果:
connection 分割斑点
参数1 想要分割的图片名 参数2 分割斑点之后的图片名
connection (bbb, ccc)
效果
选择合适的形状
参数1 要筛选的集合 参数2 过滤之后的集合
参数3 过滤的特征 参数4 and 并且 参数5,6 特征范围
select_shape (ccc, SelectedRegions, 'area', 'and', 7000, 99999)
效果
halcon语法
赋值
x:=10
字符串赋值
s:='abc'
①条件判断使用’=‘ ②使用#代表是否不相等 ③逻辑and并且 ④逻辑或运算 使用or ⑤取反not
for循环结构
①Index := 1 初始值 index=1②to 5 循环条件③by 1 每次递增1
sum1:=0
for Index := 1 to 5 by 1
sum1 := sum1 + Index
endfor
while 循环
while (sum1<15)
x:=222
endwhile
switch...case 条件判断
a:=1
switch (a)
case 1:
a:=777
break
case 2:
a:=666
break
default:
break
endswitch