前言
我们有时候需要提取图像的边缘进行后续的处理,在提取边缘之前,我们可以对图像的边缘进行增强处理。
1、图像边缘增强原理
它的核心原理是通过放大局部区域的灰度差异来增强对比度,让图像看起来更清晰,尤其适用于需要突出物体轮廓或纹理细节的机器视觉应用。emphasize 的工作原理主要包含以下几个步骤:
第一步、局部均值计算:首先使用一个指定尺寸(MaskWidth x MaskHeight)的滤波器(实质上是 mean_image 算子)对原图进行低通滤波,得到每个像素点邻域内的平均灰度值 mean。
第二步、差值增强:然后,根据公式计算输出图像每个像素点的新灰度值 new:new = round( (orig - mean) * Factor ) + orig
orig:原始灰度值。
mean:局部平均灰度值。
Factor:对比度增强系数。
(orig - mean) 代表局部灰度变化。如果某像素点与周围差异大(如边缘点),这个差值也会较大。公式将差值乘以 Factor 再加回原值,从而放大边缘和细节处的灰度差异,使这些特征更突出。
2、halcon算子应用
csharp
dev_open_file_dialog ('read_image', 'default', 'default', Selection)
read_image (Image, Selection)
emphasize (Image, ImageEmphasize, 7, 7, 1)
图像边缘增强就是使用emphasize算子,该算子只有5个参数
第1个参数是输入图像
第2个参数是处理后的图像
第3个参数是均值滤波器的宽度MaskWidth
第4个参数是均值滤波器的高度MaskHeight
第5个参数是对比度增强系数Factor
3、图像边缘增强效果
1)处理前

1)处理后

可以看出图像处理后的图像边缘处对比度明显增强