QQ登录

只需一步,快速开始

工业视觉halcon dots_image函数介绍

[ 复制链接 ]
dots_image(Image : DotImage : Diameter, FilterType, PixelShift : )
dots_image增强输入图像Image中直径为Diameter的圆点。
因此,dots_image特别适合于点打印的分割,例如在OCR应用程序中。
增强是通过使用匹配的过滤器和过滤器掩码来执行的,这些过滤器掩码是针对特定的点大小进行调优的。
例如,对于直径= 5,滤波器掩模由下面给出:

工业视觉halcon dots_image函数介绍

工业视觉halcon dots_image函数介绍



参数FilterType选择应该增强图像中的 'dark', 'light', 或 'all' 。
PixelShift既可以用来增加输出图像的对比度(PixelShift >0),
也可以用来减弱非常亮的区域的值,如果(PixelShift = -1)。


例程:
*使用dots_image分割点打印的图像
read_image (Image, 'needle1')
get_image_size (Image, Width, Height)
dev_close_window ()
dev_open_window (0, 0, Width, Height, 'black', WindowHandle)
dots_image (Image, DotImage, 5, 'dark', 2)
threshold (DotImage, Region, 80, 255)
* 将独立的点连接成字符
closing_rectangle1 (Region, RegionClosing1, 1, 5)
closing_rectangle1 (RegionClosing1, RegionClosing2, 5, 1)
gen_rectangle2 (Rectangle, 10, 10, rad(45), 3, 0)
closing (RegionClosing2, Rectangle, RegionClosing3)
gen_rectangle2 (Rectangle, 10, 10, rad(135), 3, 0)
closing (RegionClosing3, Rectangle, RegionClosing4)
connection (RegionClosing4, ConnectedRegions)
select_shape (ConnectedRegions, SelectedRegions, ['area','height'], 'and', [100,20], [700,40])
* 由于闭合操作可能导致合并字符,我们需要再次分离它们。
partition_dynamic (SelectedRegions, Partitioned, 25, 20)
intersection (Partitioned, Region, Characters)
dev_display (Characters)

例程执行后,将图上的点阵文字分割提取出来,
执行结果如图

工业视觉halcon dots_image函数介绍

工业视觉halcon dots_image函数介绍

  

halcon从自学到接项目视频教程,另外再赠送全网最全资源  

  

欢迎围观我录制的一套halcon自学视频教程(进入)



回复

使用道具 举报

快速回复 返回列表 客服中心 搜索