工控编程吧
标题:
工业视觉halcon bottom_hat函数介绍
[打印本页]
作者:
qq263946146
时间:
2019-6-1 15:38
标题:
工业视觉halcon bottom_hat函数介绍
bottom_hat(Region, StructElement : RegionBottomHat : : )
bottom_hat使用StructElement计算区域
Region
的闭合。
闭合结果与原始区域之间的差异称为底帽-->
bottom hat
。
与
closing函数相反,
bottom_hat
在特定情况下合并区域
bottom_hat计算由这种合并生成的区域。
StructElement的位置是没有意义的,因为关闭操作对于参考点的选择是不变的。
可以使用
gen_circle、
gen_rectangle1、
gen_rectangle2、
gen_ellipse、
draw_region、
gen_region_polygon、
gen_region_points
等操作符生成结构化元素(StructElement)。
可执行下面例程,查看效果
read_image (Image, 'brake_disk/brake_disk_bike_01')
threshold (Image, Regions, 128, 255)
gen_circle (Circle, 40, 40, 20)
bottom_hat (Regions, Circle, RegionBottomHat)
1.top_hat(Region, StructElement : RegionTopHat : : )
top_hat使用StructElement计算区域的开运算。
原来的区域和开运算的结果之间的差异称为顶帽。
与在特定情况下分割区域的opening不同,
top_hat计算通过这种分割删除的区域。
StructElement的位置是没有意义的,
因为开运算对于参考点的选择是不变的。
也可以运行halcon自带例程,查看具体应用:
gen_rectangle1 (Rect, 0, 0, 5, 5)
dev_update_var ('off')
dev_update_window ('off')
dev_close_window ()
read_image (Image, 'stamps/swiss1')
get_image_size (Image, Width, Height)
dev_open_window (0, 0, round(Width / 1.5), round(Height / 1.5), 'black', WindowID)
set_display_font (WindowID, 14, 'mono', 'true', 'false')
for i := 1 to 9 by 1
read_image (Image, 'stamps/swiss' + i)
get_image_size (Image, Width, Height)
dev_set_part (0, 0, Height - 1, Width - 1)
dev_display (Image)
dev_set_draw ('fill')
threshold (Image, Dark, 0, 110)
fill_up (Dark, DarkFilled)
connection (DarkFilled, ConnectedRegions)
select_shape (ConnectedRegions, PotStamps, 'area', 'and', 10000, 100000000)
opening_rectangle1 (PotStamps, Stamps, 10, 10)
select_shape (ConnectedRegions, Lines, 'convexity', 'and', 0, 0.3)
select_shape (ConnectedRegions, Character, 'area', 'and', 10, 500)
top_hat (Lines, Rect, RegionTopHat)
connection (RegionTopHat, ConnTopHat)
select_shape (ConnTopHat, AllLines, 'area', 'and', 150, 1000000)
union1 (Character, CharacterUnion)
dilation_rectangle1 (CharacterUnion, Words, 8, 2)
connection (Words, SingleWords)
shape_trans (SingleWords, RectWords, 'rectangle1')
dev_set_draw ('margin')
dev_display (Image)
dev_set_color ('red')
dev_display (AllLines)
dev_set_color ('green')
dev_display (Stamps)
dev_set_color ('yellow')
dev_display (Character)
dev_set_color ('blue')
dev_display (RectWords)
if (i < 9)
disp_continue_message (WindowID, 'black', 'true')
endif
stop ()
endfor
dev_display (Image)
[halcon]1[/halcon]
欢迎光临 工控编程吧 (https://www.gkbc8.com/)
Powered by Discuz! X3.4