Halcon常用的集合运算与区域变换算子

本文详细介绍了Halcon中的集合运算,包括差集、交集、合集和并集的操作,并提供了算子参数解释及实例。同时,文章还讲解了区域变换功能,如连接、填充、形状变换和骨架提取,每个操作都配有实例展示,帮助理解其功能和应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.集合运算

1.difference(Region, Sub : RegionDifference : : ) (差集)

算子说明:

计算两个区域的差集,第1区域剩下部分形成新的区域

算子参数:

1.Region(输入要处理的区域)
2.Sub(输入从 Region 中减去这些区域的并集)
3.RegionDifference(输出结果区域)

实例:
使用difference算子得到目标区域

dev_update_off ()
dev_close_window ()
read_image (Coins001, 'coins_001.jpg')
get_image_size (Coins001, Width, Height)
dev_open_window (0, 0, Width, Height, 'black', WindowHandle)
*先转换成灰度图片
rgb1_to_gray (Coins001, GrayImage)
dev_display (GrayImage)
*首先获取图片的所有区域
threshold (GrayImage, Region, 0, 255)
threshold (GrayImage, Region1,0, 75)
dilation_circle (Region1, RegionDilation, 0.5)
connection (RegionDilation, ConnectedRegions)
select_shape (ConnectedRegions, SelectedRegions, 'area', 'and', 20000, 999999)
*用整个区域减去筛选出来的区域,得到目标区域
difference (Region, SelectedRegions, RegionDifference)
dev_display (RegionDifference)

2.intersection(Region1, Region2 : RegionIntersection : : ) 交集

算子说明:

计算两个区域的交集。

算子参数:

1.Region1(输入要与 Region2 中的所有区域相交的区域)
2.Region2(输入与 Region1 相交的区域)
3.RegionIntersection(输出交集的结果)

实例:

dev_update_off ()
dev_close_window ()
read_image (Coins001, 'coins_001.jpg')
get_image_size (Coins001, Width, Height)
dev_open_window (0, 0, Width, Height, 'black', WindowHandle)
*先转换成灰度图片
rgb1_to_gray (Coins001, GrayImage)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值