微信卖吃的怎么宣传:sobel算子(数字图像)原理是怎样的?有推导过程最好

来源:百度文库 编辑:偶看新闻 时间:2024/05/05 03:29:03
图像最基本的特征是边缘,边缘是图像分割所依赖的最重要特征。经典的边缘检测方法,是对原始图像按像素的某领域构造边缘检测算子。本文就这些算子进行理论分析、实际验证并对各自性能特点作出比较和评价,以便实际应用中更好地发挥其长处,为新方法的研究提供衡量尺度和改进依据。

1 经典的边缘检测方法

  经典的边缘检测是以原始图像为基础,对图像的各个像素考察它的某个领域内灰度阶跃变化,利用边缘邻近一阶或二阶方向导数变化规律检测边缘。常用的边缘检测方法有:差分边缘检测、梯度边缘检测、Roberts边缘检测算子、Sobel边缘检测算子、Prewitt边缘检测算子、Laplace边缘检测算子等。
1.1 差分边缘检测方法
  利用像素灰度的一阶导数算子在灰度迅速变化处得到高值。它在某一点的值就代表该点的‘边缘强度’,可以对这些值设置门限明确地从图像中检测到边缘元。用差分检测边缘必须使差分的方向与边缘方向垂直,这就需要对图像的不同方向都进行差分运算,增加了实际运算的繁琐性。
1.2 梯度边缘检测方法
  梯度运算是一种不受施加运算方向限制的算子,既能检测出边缘的存在(幅度突变),又与施加运算的方向无关。
1.3 Roberts边缘检测算子
  Roberts边缘检测算子根据任意一对互相垂直方向上的差分可用来计算梯度的原理,采用对角线方向相邻两像素之差,即

  (1)

它们的卷积算子为



有了Δxf,Δyf之后,很容易计算出Roberts的梯度幅值R(i,j),适当取门限TH,作如下判断:R(i,j)>TH,(i,j)为阶跃状边缘点.{R(i,j)}为边缘图像。
1.4 Sobel边缘检测算子
  对数字图像{f(i,j)}的每个像素,考察它上、下、左、右邻点灰度的加权差,与之接近的邻点的权大。据此,定义Sobel算子如下:

  (2)

卷积算子为



适当取门限TH,作如下判断:S(i,j)>TH,(i,j)为阶跃状边缘点.{S(i,j)}为边缘图像。
1.5 Prewitt边缘检测算子
  对数字图像{f(i,j)}的每个像素,考察它上、下、左、右邻点灰度之差。据此,定义Prewitt算子如下:

  (3)

卷积算子为


Δxf       Δyf

适当取门限TH,作如下判断:P(i,j)>TH,(i,j)为阶跃状边缘点.{P(i,j)}为边缘图像。
1.6 Laplace边缘检测算子
  Laplace算子是二阶微分算子,它是一个标量,不是向量,也进行各向同性的运算。它对灰度突变敏感。在数字图像中,可用差分来近似,f(i,j)的Laplace运算为

2f(i,j)=f(i+1,j)+f(i-1,j)+f(i,j+1)+f(i,j-1)-4f(i,j)  (4)

  由于Laplace是二阶差分运算,因此,在灰度阶跃边缘的两侧均有响应。其值一边为正,一边为负,而对斜坡形边缘响应为零,即值为零,并且在此零值点的两侧也有一正一负两个峰值。不论是阶跃边缘还是斜坡边缘,这一正一负两峰值的大小及走向,反映了边缘的强弱及走向。

2 边缘检测方法性能比较

  差分边缘检测方法是最原始、基本的方法。根据灰度迅速变化处一阶导数达到最大(阶跃边缘情况)原理,利用导数算子检测边缘。这种算子具有方向性,要求差分方向与边缘方向垂直,运算繁琐,目前很少采用。
  梯度边缘检测方法利用梯度幅值在边缘处达到极值检测边缘。该法不受施加运算方向限制,同时能获得边缘方向信息,定位精度高,但对噪声较为敏感。
  Roberts算子采用对角线方向相邻两像素之差近似梯度幅值检测边缘。检测水平和垂直边缘的效果好于斜向边缘,定位精度高,对噪声敏感。
  Sobel算子根据像素点上下、左右邻点灰度加权差,在边缘处达到极值这一现象检测边缘。对噪声具有平滑作用,提供较为精确的边缘方向信息,边缘定位精度不够高。当对精度要求不是很高时,是一种较为常用的边缘检测方法。
  Prewitt算子利用像素点上下、左右邻点灰度差,在边缘处达到极值检测边缘。对噪声具有平滑作用,定位精度不够高。
  Laplace算子是二阶微分算子,利用边缘点处二阶导函数出现零交叉原理检测边缘。不具方向性,对灰度突变敏感,定位精度高,同时对噪声敏感,且不能获得边缘方向等信息。

3 实验结果及分析

  以图1中的几种典型图形为例,分别用Sobel、Prewitt、Roberts和Laplace算子进行处理后结果如图2所示。




图1 原始图像

  可以看出Roberts算子和Laplace算子定位精度较高;Roberts算子检测垂直和水平方向的阶跃边缘、线的效果比检测斜向阶跃边缘、线的效果好,保留住了矩形的角点,而Sobel和Prewitt算子则不及,尤其是Prewitt算子基本丢失了角点信息;Sobel和Prewitt算子检测斜向阶跃边缘、线的效果较好,保留住了三角形的角点;Prewitt算子因其所得幅值相对Sobel算子所得值要小,当选择较大的阈值时(TH=40),丢失了部分边缘信息,如图2(b)下部直角梯形的斜边丢失。




图2 用Sobel、Prewitt、Roberts和Laplace算子处理的结果
对真实图形(加噪声)的处理:

  图3(a)是一幅100×100,256级灰度图像,(b)为加噪声后图像。分别用Sobel、Prewitt、Roberts和Laplace算子对(b)进行处理后的结果如图4所示。




(a)原始图像     (b)加噪声图像
图 3 原始图像和加噪声图像




图4 分别用Sobel、Prewitt、Roberts和Laplace算子处理的结果

  从以上结果可以看出:Roberts算子和Laplace算子定位精度较高,但对噪声较为敏感;Sobel算子和Prewitt算子对噪声具有较好的平滑作用.
  通过以上对经典边缘检测算子的分析和实际结果的验证,得出以下结论:
  1)Roberts算子简单直观,Laplace算子利用二阶导数零交叉特性检测边缘。两种算子定位精度高,但受噪声影响大;Laplace算子只能获得边缘位置信息,不能得到边缘的方向等信息。
  2)Sobel算子和Prewitt算子具有平滑作用,能滤除一些噪声,去掉部分伪边缘,但同时也平滑了真正的边缘;定位精度不高。Sobel算子可提供最精确的边缘方向估计[1]。
  3)Sobel算子、Prewitt算子检测斜向阶跃边缘效果较好,Roberts算子检测水平和垂直边缘效果较好。
  以上验证结果及分析是基于阶跃变化假设进行的。但真实的灰度变化不一定都是阶跃的,有可能发生在很宽的灰度范围上,且存在灰度的起落。解决此类问题,还可以采取其它办法。

4 结束语

  有效图形边缘检测方法的研究具有特别重要的意义。本文的分析将有助于实际图形处理工作,并为新方法的诞生提供理论依据。

(责任编辑:傅鸿吉)■

作者简介:周道炳 1966年生 讲师 硕士研究生 101416 北京
作者单位:周道炳(装备指挥技术学院 士官系)
     朱卫纲(装备指挥技术学院 测量控制系)

参考文献:

[1]王润生.图像理解.长沙: 国防科技大学出版社, 1994
[2]徐建华. 图像处理与分析. 北京: 科学出版社, 1992
[3]郭桂容. 模糊模式识别.长沙: 国防科技大学出版社, 1993