1。2 图像边缘检测技术的研究现状
第二章 传统的线性图像边缘检测算法
图像的边缘是指图像中灰度的不连续的、变化较大的地方,也可以理解为图像中灰度强度变化显著的部分,大多都是由图像中物体的特性发生了变化而导致的。
图像边缘可以划分为两种:屋顶边缘(roof edge)和阶跃边缘(step edge),其中屋顶边缘在灰度减小或增加的交界处,而阶跃边缘的两端的灰度会有着较大的变化。可以用数学方法通过计算灰度变化曲线的一阶和二阶导数来得到这两种边缘。
图像边缘检测方法一般包括四个步骤,步骤如下:
(1)图像滤波:传统的线性边缘检测方法都是基于计算图像灰度曲线的一阶和二阶导数来得到效果,但是计算导数的方法的抗噪性很差,这时往往需要滤波器来改善边缘检测在受噪声影响的情况下的性能。不过,大多数的滤波器虽然能够降低图像中的噪声,但是也会损失图像的部分边缘强度(会降低边缘细节精度)。因此,在使用滤波器的边缘检测中需要在降低噪声和增强边缘之间做一个平衡。
(2)图像增强:边缘增强的算法是通过计算灰度梯度的幅值来完成的,以此达到突出局部或者领域灰度值有显著变化的点的目的。
(3)图像检测:虽然在图像中有很多点的灰度变化范围很大,但是并不是所有的点都是边缘,因此要利用某种方法来判断到底那些点才是真正的边缘点。
(4)图像定位:在有些时候提出了需要确定边缘的位置的要求,就需要对图像做定位处理。
在大部分的场合中,一般只需要利用到上述的前三个步骤,并不一定非要检测边缘是否出现在某一个像素的旁边。
2。1 基于一阶导数的边缘检测算子
基于一阶导数的边缘检测算子是边缘检测中最常用的算法,在灰度图像曲线突变处求一阶导数能够得到极大值,也就是说用数学的方法求得灰度图像的一阶导数的值来分析图像灰度的变化情况。
梯度等同于在图像灰度曲线上求出的一阶导数,它的大小代表着那个边缘的强度,并且它的方向垂直于在它那个位置的边缘的走向。一般点在图像的梯度定义如下列所示的变量:
(2-1)
其中梯度的幅值为:
(2-2)
不过在应用当中,一般会用绝对值的方法来近似的代替梯度的幅值,即下面的公式所示:
(2-3)
或者用:
(2-4)
不过对于数字图像,最简单的办法就是用一阶差分的方法代替一阶导数算法去进行计算,表达式如下:
(2-5)
(2-6)
上述的两个计算可以通过下面的两个卷积模板来完成:
如果想要提取出图像中的边缘,就需要选择一个适于这个图像的阈值T来对图像进行二值化,就能得到关于图像的边缘:
(2-7)
不过如果采用上述的模板去计算,它所计算到的梯度近似值与并不是一个相同的位置,一个是的近似值,另一个是的近似值。因此,一般不用的卷积模板而是使用的卷积模板去计算:
这样求出来的运算点的位置是相同的,都是点处,就是领域的中心。
2。1。1 Roberts算子
由Roberts提出的通过差分局部图像的方法来检测边缘的算子,是在领域上计算对角导数来实现自身的方法。而在实际的计算中,会用任意一对相互垂直的差分计算梯度来简化算法,将对角线方向上相邻的两个元素做差来近似得到梯度值,即[[[] 郭隐。 基于DSP图像处理的微型零件外形尺寸检测技术研究。 厦门大学硕士学位论文。 2009:14-25]]: