halcon -> expand_gray_ref(灰度填充)(by shany shang)

 一、应用场景:

*加载一幅图像

 

halcon -> expand_gray_ref(灰度填充)(by shany shang)_第1张图片

read_image (Image, 'fabrik')

*区域增长

regiongrowing (Image, Regions, 1, 1, 1, 100)

halcon -> expand_gray_ref(灰度填充)(by shany shang)_第2张图片

*生成空区域

gen_empty_region (EmptyRegion)

*计算灰度平均值 方差
intensity (Regions, Image, Mean, Deviation)

*区域灰度填充
expand_gray_ref (Regions, Image, EmptyRegion, RegionExpand, 'maximal', 'image', Mean, 11)

halcon -> expand_gray_ref(灰度填充)(by shany shang)_第3张图片

二、主要算子简介:

(1)regiongrowing (Image, Regions, 1, 1, 1, 100)

        原型:regiongrowing(Image : Regions : RowColumnToleranceMinSize : )

        功能:会计算相邻的两个(Row*Column)大小的核的中间像素的灰度值的差值,若差值 的绝对值小于Tolerance,则认为他们属于同一个区域。

标记后继续用上述方式遍历相邻的核。连续多个(大于MinSize)核区域符合上述要求则被输出一个连通区域。

(2)intensity (Regions, Image, Mean, Deviation)

         功能:计算图像Image在每个区域Region中的所有像素灰度值的均值 和 方差。

         halcon -> expand_gray_ref(灰度填充)(by shany shang)_第4张图片

(3)expand_gray_ref (Regions, Image, EmptyRegion, RegionExpand, 'maximal', 'image', Mean, 11)

        原型:expand_gray_ref(RegionsImageForbiddenArea : RegionExpand : IterationsModeRefGray,Threshold : )

        功能:填充每个区域之间的间隙,或者分割重叠的区域

       实现办法:将每个区域同时向外扩充1个像素带,这一个像素带的灰度值和参考值(RefGray)相差最多为(Threshold),Iterations为迭代次数,若为'maximal' 则一直跌代到差异值大于((Threshold));若Mode 为  'image',则会填充沟壑并分割重叠区域,若为‘region’则只分割重叠区域。

 

你可能感兴趣的:(图像处理,机器视觉)