Halcon Blob分析(ball.hdev)

* ball.hdev: Inspection of Ball Bonding

dev_update_window ('off')#停止更新窗体
dev_close_window ()#关闭窗体
dev_open_window (0, 0, 728, 512, 'black', WindowID)#创建窗口,并指定句柄
read_image (Bond, 'die/die_03')
dev_display (Bond)
set_display_font (WindowID, 14, 'mono', 'true', 'false')
disp_continue_message (WindowID, 'black', 'true')

stop ()
threshold (Bond, Bright, 100, 255)#二值化,灰度直方图工具
shape_trans (Bright, Die, 'rectangle2')#形状变换,获得二值图连通域的最小外接矩形
dev_set_color ('green')
dev_set_line_width (3)
dev_set_draw ('margin')
#显示边缘
dev_display (Die)
disp_continue_message (WindowID, 'black', 'true')
stop ()
reduce_domain (Bond, Die, DieGrey)#缩减区域(获得ROI),相当于截取需要研究的主要部分。将给定图像的定义域缩小到指定的新区域,并不缩小图像的实际尺寸,新区域必须是原区域的子域
threshold (DieGrey, Wires, 0, 50)
fill_up_shape (Wires, WiresFilled, 'area', 1, 100)
dev_display (Bond)
dev_set_draw ('fill')
#显示fill
dev_set_color ('red')
dev_display (WiresFilled)

disp_continue_message (WindowID, 'black', 'true')
stop ()
opening_circle (WiresFilled, Balls, 15.5)#减少像素,去除孤立的小点、毛刺和小桥;Circle对圆形的作用最大。
dev_set_color ('green')
dev_display (Balls)

disp_continue_message (WindowID, 'black', 'true')
stop ()
connection (Balls, SingleBalls)#断开连通域
select_shape (SingleBalls, IntermediateBalls, 'circularity', 'and', 0.85, 1.0)#通过圆度选取目标圆

//可以省略排序步骤,除非需要显示部分目标的参数(如只显示第2-3的外接圆直径)

sort_region (IntermediateBalls, FinalBalls, 'first_point', 'true', 'column')#排序区域,按列排序,从左边第一个升序
dev_display (Bond)
dev_set_colored (12)
dev_display (FinalBalls)

disp_continue_message (WindowID, 'black', 'true')
stop ()
smallest_circle (FinalBalls, Row, Column, Radius)#获得每个区域最小外接圆参数
NumBalls := |Radius|
Diameter := 2 * Radius
meanDiameter := mean(Diameter)
#可省略(后面没引用)
minDiameter := min(Diameter)#可省略
dev_display (Bond)#显示原图
disp_circle (WindowID, Row, Column, Radius)#显示圆
dev_set_color ('white')
disp_message (WindowID, 'D: ' + Diameter$'.4', 'image', Row - 2 * Radius, Column, 'white', 'false')#使用图像坐标显示“直径”信息
dev_update_window ('on')#更新窗体

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值