前言
在图像处理中我们有时候会需要将多个区域合并为同一个区域,本文就来介绍如何在Halcon中实现。
1、区域合并原理
在halcon中可以通过connection算子获取多个独立的连通域,这样区域的数量就是多个,同样我们也可以将这多个区域合并为1个区域,当我们使用Halcon的count_obj对区域进行数量统计时,得到的数量将会是1
2、halcon算子应用
csharp
dev_open_file_dialog ('read_image', 'default', 'default', Selection)
read_image (Image, Selection)
mean_image (Image, ImageMean, 15, 15)
threshold (Image, Region, 128, 255)
count_obj (Region, Number1)
connection (Region, ConnectedRegions)
count_obj (ConnectedRegions, Number2)
union1 (ConnectedRegions, RegionUnion)
count_obj (RegionUnion, Number3)
合并区域就是使用union1 算子,该算子只有两个参数
第1个参数是输入的多个独立区域
第2个参数是合并后的1个区域
从下图也可以看出在使用connection后区域变为7个,在使用union1后区域变为1个。

3、合并区域效果
1)处理前

1)处理后

可以看出合并后形成了1个区域,同一种颜色就代表一个区域。