halcon顶针实践

一、读取图片read_image (Image1, 'Image13.bmp')注意路径要和halcon在一个文件目录下,或者填写绝对路径。

read_image (Image2, 'Image14.bmp')


在我们编写halcon程序中可能常会用到图像相减算子sub_image,例如在做高斯高通滤波的时候,最后的结果是要用原图像减去滤波后的图像才能得到锐化图像。该算子的参数形式如下:

二、sub_image (Image2, Image1, ImageSub, 1,0)图形相减算子

第一个参数是被减图像,第二个参数是减数图像,第三个参数是结果图像,第四个参数是乘数因子,第五个参数是灰度补充值.

三、threshold(Image : Region : MinGray, MaxGray : )二值化阈值处理(层层筛选,精准定位)
threshold (ImageSub, Region, 120, 255)

- Image是输入图像
- Region是分割后的结果
- MinGray 和MaxGray是输入的控制参数,分割的最小灰度值与最大灰度值

四、connection(Region, ConnectedRegions)打散区域(二值化处理后必须打散)

connection算子一般就两个参数,参数Region表示需要计算的输入图像区域,参数ConnectedRegions表示输出图像区域。

五、intensity (ConnectedRegions, ImageSub, Mean, Deviation)
计算灰度值的平均值和偏差。

六、数组里元素的个数 tuple_length (Mean, Length)
七、dev_display — 在当前图形窗口中显示图像对象。
dev_display(ImageSub)

八、select_obj (ConnectedRegions, ObjectSelected, idx+1)


九、area_center (ObjectSelected, Area, Row, Column)  求区域中心
十、dev_display(Image2)  展示图像
dev_display 在活动图形窗口中显示图标对象(图像、区域或 XLD)。 这相当于双击变量窗口内的图标变量。
十一、gen_cross_contour_xld (Cross, Row, Column, 32, 0)  为每个输入点生成一个十字形状的XLD轮廓


参数:
Cross (output_object):生成XLD轮廓。

Row (input_control):输入点的行坐标。

Col (input_control):输入点的列坐标。
Size (input_control):十字的长度。
Angle(input_control):十字的方向。

总结:
read_image (Image1, 'Image94.bmp')
read_image (Image2, 'Image95.bmp')

sub_image (Image2, Image1, ImageSub, 1,0)
threshold (ImageSub, Region, 120, 255)
connection (Region, ConnectedRegions)
intensity (ConnectedRegions, ImageSub, Mean, Deviation)
idx := 1
maxValue := -1
tuple_length (Mean, Length)
for i := 0 to Length-1 by 1
    if (Mean[i] > maxValue)
        maxValue := Mean[i]
        idx := i
    endif
endfor
dev_display(ImageSub)
select_obj (ConnectedRegions, ObjectSelected, idx+1)
area_center (ObjectSelected, Area, Row, Column)
dev_display(Image2)
gen_cross_contour_xld (Cross, Row, Column, 32, 0)
 

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值