Matlab图像锐化处理及边缘检测.docVIP

  • 32
  • 0
  • 约2.57万字
  • 约 31页
  • 2018-03-24 发布于浙江
  • 举报
Matlab图像锐化处理及边缘检测

Matlab图像锐化处理及边缘检测 本章要点: 图像边缘锐化的基本方法 微分运算 梯度锐化 边缘检测 6.1 图像边缘锐化的基本方法 物体的边缘是以图像局部特性不连续性的形式出现。本质上边缘常意味着一个区域的终结和另一个区域的开始。图像边缘信息在图像分析和人的视觉中都是十分重要的,是图像识别中提取图像特征的一个重要特性。图像的边缘有方向和幅度两个特性。通常,延边缘走向的像素变化平缓,而垂直于边缘走向的像素变化剧烈。边缘的描述包含以下几个方面:——它两边像素的灰度值有显著的不同。边缘点也存在于这样一对邻点之间即一个在较亮的区域内部,另一个在外部。 (2)边缘法线方向——在某点灰度变化最剧烈的方向,与边缘方向垂直。 边缘方向——与边缘法线方向垂直,是目标边界的切线方向。 边缘位置——边缘所在的坐标位置。 边缘强度——沿边缘法线方向图像局部的变化强度的量度。 图像灰度值的显著变化可以用梯度来表示图像分割、目标区域识别、区域形状提取等图像理解和分析目前它成为机器视觉研究领域最活跃的课题之一,在工程应用中占有十分重要的地位边缘是由相邻域灰度级不同像素点构成的若想增强边缘,就应该突出相邻点间灰度级的变化。 0 0 1 255 255 255 255 1 1 1 254 253 254 254 0 0 0 255 255 253 253 1 1 0 254 254 254 254 注意:由于计算机显示屏幕的坐标原点在视窗的左上角,显示屏幕的坐标系如图6-1所示。 0,0 x f x,y y 图6-1 显示屏幕的坐标系 为了与f x,y 表示法相一致,图像f i,j 中的i代表列,j代表行。如果用右列减去左列,即每一个像素的值为: G i, j f i , j - f i-1, j 结果如下: 0 1 254 0 0 0 0 0 253 -1 1 0 0 0 255 0 -2 0 0 - 1 254 0 0 0 可以看出,第3列比其他列的灰度值高很多,在边界附近,灰度值有明显的跳变,人眼观察时,就能发现一条很明显的亮边;在灰度相近的区域内,这么做的结果使得该点的灰度值接近于0,区域都很暗。 这样,G i, j f i , j - f i-1, j 就起到了垂直边沿检测的作用。 如对于上面那幅图像转置,得到如下图像数据: 0 1 0 1 0 1 0 1 1 1 0 0 255 254 255 254 255 253 255 254 255 254 253 254 255 254 253 254 该边缘是水平方向的,这时如果还用左列减去右列就得不到边界数据,必须是下一行减去上一行,即每一个像素的值为: G i, j - f i, j-1 + f i , j ,图像上得到一条很明显的亮边。 这就是一种边沿检测器,它在数学上的涵义是一种基于梯度的滤波器,又称边沿算子,梯度是有方向的,和边沿的方向总是正交 垂直 的。 图像灰度的变化情况可以用灰度分布的梯度来反映。图像处理中最常用的微分方法是求梯度。对于图像f i,j , 它在点 i,j 处的梯度是一个矢量 (6-1) 其方向导数在边缘法线方向上取得局部最大值。f i,j 梯度的局部最大值和方向f i,j 沿方向r的梯度 (6-2) 的最大值条件是 0 即: 0 (6-3) 梯度是向量,各向同性。梯度方向对应于f i,j 最大变化率方向上,即 梯度最大值 G (6-4) 为了减少计算量而用G (6-5) 梯度幅度比例于邻像素的灰度级,在灰度陡变区域,梯度值大,在灰度相似区,梯度值小,在灰度级为常数区,梯度为零。因此,微分运算应用在图像上,可使图像的轮廓清晰。微分运算.1 纵向微分运算 1.理论基础 对灰度图像在纵方向进行微分实现了将图像向左平移一个像素,再用原图像减去平移后图像。相减的结果反映了原图像亮度变化率的大小。原图像中像素值保持不变的区域,相减的结果为零,即像素为黑;原图像中像素灰度值变化剧烈的区域,相减后得到较大的变化率,对应的像素很亮,而且像素灰度值差别越大,则得到的像素就越亮,所以图像的垂直边缘得到增强。 本程序对灰度图像f在纵方向或横方向进行微分,在数字处理中,微分用差分表近似,并按下式求得: G i, j f i , j - f i-1, j-1 (6-6) 该算法用如下卷积核: 2.实现步骤 (1)取得原图的数据区指针。 2 开辟一块内存缓冲区,并初始化为255。 (3)每个像素依次循环,新图像缓冲区中的当前像素的灰度值等于原图中当前像素的灰度值与其左方的像素的灰度值之差的绝对值。 (4)

文档评论(0)

1亿VIP精品文档

相关文档