matlab图像边缘检测算法研究(3)
时间:2022-03-05 11:20 来源:毕业论文 作者:毕业论文 点击:次
由于Sobel算子是一种滤波算子的子类,用于提取边缘,可以利用快速卷积函数, 方便快捷,因而得到广泛应用。唯一的缺憾在于Sobel算子并没有严格地区分图像的主体与背景,另一句话来说就是Sobel算子没有基于图像灰度进行处理,由于Sobel算子没有严格地模拟人的视觉生理特征,因此有些时候提取的图像轮廓并不能取悦于人。 两个卷积形成Sobel边缘检测算子(如图2-3所示),图像中每个像素都用这两个核作卷积,一个核对垂直边缘影响最为突出,另一个对水平边缘影响最为突出。该点的输出值就是两个卷积的输出值。 图2-3 Sobel 边缘检测算子 2。1。3 Prewitt算子文献综述 Prewitt是使用两个有向算子(一个垂直的,一个水平的),每一个逼近一个偏导数。Prewitt边缘检测算子检测图像M的边缘,可以先对图像分别用水平算子和垂直算子进行卷积,得到了两个不同的矩阵,大小与原始图像相同的M1,M2,分别代表图像M中同样位置处的2个偏导数。再把M1,M2对应位置的两个数二次方后取和得到一个新的矩阵G,G表示M中各个像素的灰度的梯度值。下一步就可以通过处理阈值得到边缘图像。 该算子与上一个算子的不同就在于所使用的有向算子不一样而已。Sobel算子根据边缘点处达到极值这一现象进行边缘检测,利用的是像素上下,左右邻点的灰度加权算法。对于噪声,Sobel算子具有平滑作用,并给予较为准确的边缘方向信息,然而,同时Sobel算子也会检测出许多的伪边缘,边缘定位不够准确。 图2-4所示是Prewitt算子的两个卷积计算核,图像中的每个点都用这两个核作卷积,然后输出他们中的最大值。处理灰度渐变和噪声较多的图像是Prewitt算子擅长的。 图2-4 Prewitt算子 2。1。4 Laplace算子 对于阶跃状边缘,其二阶导数在边缘点出现零交叉,并且边缘点两旁像素的二阶导数符号相反。据此,对每一个像素计算关于横轴和纵轴的二阶偏导数之和▽2f(x,y)。 ▽2f(x,y)= f(x+1,y)+ f(x-1,y)+ f(x,y+1)+ f(x,y-1)- 4f(x,y) (2-3)来`自+优-尔^论:文,网www.youerw.com +QQ752018766- 这个算子是旋转不变算子,对边缘敏感。对变化迅速和变化平缓的边缘,一般的增强技术很难确定边缘线的位置,此算子却可以通过二次微分正峰和负峰之间的过零点来确定。 (1)Laplace算子1 Laplace算子1为四邻域算子,针对突出孤立点、线段及边界,它的效果较为明确,可以检测出灰度变化更为缓和的边缘,但是它表示的边缘持续性不够强,从算子本身可以看出,由于Laplace算子中心点的权重非常大,因此它对于各点间的干扰特敏感,使得边缘与噪声的分辨十分困难,总体质量也差强人意。 ( 2 ) Laplace算子 2 Laplace算子2相当于在上一个算子进行滤波结果的基础上,对原始的图像进行了叠加,所以细节部分得以保留,增强了原始图像的边缘。该部分即上一个算子滤波所产生的边缘。 (责任编辑:qin) |