边缘提取.docx

上传人:b****5 文档编号:3350517 上传时间:2022-11-22 格式:DOCX 页数:12 大小:1.65MB
下载 相关 举报
边缘提取.docx_第1页
第1页 / 共12页
边缘提取.docx_第2页
第2页 / 共12页
边缘提取.docx_第3页
第3页 / 共12页
边缘提取.docx_第4页
第4页 / 共12页
边缘提取.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

边缘提取.docx

《边缘提取.docx》由会员分享,可在线阅读,更多相关《边缘提取.docx(12页珍藏版)》请在冰豆网上搜索。

边缘提取.docx

边缘提取

第二章边缘提取特征提取技术

2.1经典边缘检测算法

图像的边缘分为两种,一种为阶跃性边缘,即边缘两侧的灰度值明显不同;另一种为屋顶状边缘,边缘的灰度值与两侧的灰度值明显有差异。

如图2-1所示为边缘的剖面曲线及其导数的示意图,由于实际数字图像存在噪声和量化误差,使得边缘具有平滑特性。

图1.图像边缘抛面图及其导数

根据边缘的定义,目前边缘检测方法主要有两种方法:

(1)检测梯度的最大值。

根据边缘附件像素灰度值存在明显差异这一特性可知,边缘存在于函数梯度极大的地方,这一检测方法称为一阶微分边缘检测算法。

(2)检测二阶导数的过零点。

一阶导数极大值也就意味着二阶导数为0,根据这一特征检测的边缘算法称为二阶微分边缘检测算子。

2.1常用边缘检测算子

2.1.1一阶微分边缘检测算子

首先引入图像微分的概念,对于一个二维连续函数f(x,y),其在某一点的梯度可以

表示为:

在离散图像中,通常使用图像的一阶差分代替梯度,梯度方向定义为:

图像的梯度定义为:

计算出图像的梯度后,根据给定的阈值Th,当G(x,y)>Th时,认为该点为边缘点。

在实际求图像梯度时,通常使用区域模板对图像卷积来近似计算。

根据模板的大小和元素的不同,常用的一阶微分算法有以下几种。

(1)Sobel

假设图像数据如下所示:

图像的梯度幅值按下式计算:

其中,

表示水平方向的偏导数即水平梯度值,

表示垂直方向的偏导数。

Sobel算子利用垂直和水平两个3*3模板矩阵和图像卷积计算,分别得到水平和垂直方向的梯度值,然后利用公式(2-4)即可求得像素点的梯度值。

Sobel算子结合了高斯平滑和微分,对图像噪声有一定抑制作用。

同时由于其算法简单,计算量少而被广泛应用。

垂直:

水平:

(2)Prewitt

Prewitt算子和Sobel算子在形式上完全相同,只是元素的权值不同,与Sobel算子相比,Prewitt结合了低通滤波和微分,对图像有一定平滑与去噪的特性。

垂直:

水平:

(3)Kirsh

Kirsh算子考虑到像素相邻8个方向均存在灰度变化,设计了8个方向的梯度模板,如下所示为其中一个模板,通过围绕中心点旋转即可得到其余7个模板。

通过计算8个模板与图像的卷积运算,取其中输出最大值作为Kirsh的梯度输出。

2.1.2二阶微分边缘检测算子

二维连续函数f(x,y)的二阶方向导数为:

Laplace算子的定义为

显然,Laplace是对图像水平和垂直两个方向进行二阶求导。

实际应用中,以二阶差分计算二阶求导,即

将Laplace算子表示为Sobel算子相同的形式如下:

利用拉普拉斯算子对图像进行边缘提取时,根据符号变化的点来确定边缘像素。

由于拉普拉斯算子具有高通特性,因此对噪声比较敏感,为了提高算子的去噪性能,将具有低通特性的高斯滤波与拉普拉斯滤波结合起来实现更加鲁棒的边缘提取,即Log算子。

Log算子为:

其中g(x,y)为高斯函数。

利用Log算子进行边缘提取有两种思路,一是直接使用Log算子模板与图像进行卷积,二是先将图像与高斯函数进行滤波,再利用Laplace算子滤波,从速度上考虑,优先选择后一种方法。

2.1.3Canny算子

Canny算子被认为是最优的边缘检测算子,应用场合越来越广泛。

Canny算子检测流程实现步骤如下

(1)图像滤波。

高斯滤波被证明为是最好的线性滤波器,因此Canny使用高斯滤

波器作为边缘检测第一道屏障,以消除噪声。

(2)计算梯度值与梯度方向。

利用Sobel或Robert等简单边缘检测算子计算各点梯度,使用公式(2-2)计算各点的梯度方向。

实际操作时,以45度为间隔将边缘方向分为8个子方向。

(3)非极大抑制。

比较梯度方向上最相近的两个点,若为极大值点,则点标记为边缘候选点。

(4)Canny设计了双阈值法来提取边缘:

一个高阈值和一个低阈值(低阈值一般为高阈值的1/2)。

边缘候选点梯度大于高阈值的点为强边缘,介于高阈值和低阈值的梯度点为弱边缘,小于低阈值的梯度点为非边缘点。

如果弱边缘点小区域内存在强边缘点,则此点被重新标记为强边缘点,如此反复,直到所有弱边缘点检测完毕。

图2-2边缘检测效果比较

(a)原始图像(b)Sobel检测结果(c)Log检测结果(d)Canny检测结果

如图2-2所示为各边缘检测算子检测效果图,从图中可以看出,Canny算子能够提取图像中的细节部分,定位精度较高,并且提取能够得到连续的边缘,在定位精度较高的应用场合,Canny常常是边缘检测的第一选择。

2.2基于梯度的边缘检测算法对比分析

尽管当前边缘检测算法百花齐放,种类繁多,但是由于数字图像的多样复杂性和各类噪声的影响直接导致了边缘检测算子的使用有着这样那样的局限性。

根据承前启后、循序渐进的研究思路,本文对IL种主要的基于梯度的边缘检测算法做了细致的对比分析,并期望通过相互借鉴好的算法设计思想和引入其他理论来积极寻找改进边缘检测算法的突破点。

本节将选择这一类算法中最著名的四种算子(Robert、prewitt、Sobel、Canny)加以比较分析,Log算法由于采用了寻找二阶导数的零交叉点的方法,不属于本文重点研究的子范围(本文侧重研究基于梯度即一阶导数的算子),故在对比分析中没有包含。

图2-4是分别使用Robert、prewitt、sobel、Canny四种算子对一幅无任何噪声的256位灰色标准Lena图像的边缘检测结果,其中Robert算子的检测出的边缘线条较弱并且漏检了很多原图边缘;Prewitt算子尽管检测出了绝大部分边缘,但是检测效果不理想,边缘非常模糊;Sobel算子的检测结果较好,重要部位的边缘都能较准确地刻画,但是检测结果发“虚”,出现了很多零碎的类似于纹理

的东西;Canny算法检测效果最好,但是存在一些边缘断裂的现象。

从算子的本身结构来分析,由于Prewitt算子和Sobel算子均使用了在水平和垂直2个方向逼近梯度,故更符合图像本身的特点,相比于Robert算子采用的单方向逼近,边缘检测的结果较完整,没有明细的边缘漏检。

其中Sobel算子考虑了离中心越近的像素对差分估计越准确的原则,通过距离反比对象素值进行了加权,故获得了更好的检测效果。

Canny算法检测总体效果上佳,检测出的边缘趋近于理想的单像素边缘,但是由于算法内进行的高斯平滑一定程度上导致了原图像边缘的模糊和弱化,尽管在算子最后的步骤中采用搜索算法拼接并补强路径,但仍然出现了一些边缘断裂现象,而且Carmy算法对原图像中的弱边缘检测效果一般。

然而图像在实际传播过程中,不可能总保持其原有状态,各类噪声干扰和编解码错误会带给图像大量干扰因素,所有检测算子想要在实际应用中发挥好的作用,就必须尽可能的克服这些干扰,否则将只是纸上谈兵,毫无实际意义。

图2一4四种基于一维梯度求解边缘的算子对无损Lena图像的检测结果

从图2-5可以看出在引入高斯噪声后,所有算子的检测效果都不同程度地出现了降低,除了Canny算子,其它3个算子都对含有高斯噪声的图像表现出了很差的抵抗力,检测效果极具下降。

而Canny算子由于在算法中包含了高斯平滑的步骤,故对噪声有着一定的适应性,但也出现了很多由噪声引起的小纹理。

事实上,图像不会仅单纯地含有高斯噪声,实验证明以上算子(算法)在椒盐噪声和更复杂的混合噪声下效果更差(在第四章中将会给出具体的对比实验),根据Canny准则,如何在各种条件下最可能好的检测出边缘是衡量算法最关键的

标准,所以改善算法在噪声环境下的性能是我们函需改进算法性能的重要方面之本节对上述四种经典算子的性能作了详细总结和对比,如表2-1所示。

从对比实验和对算法内容及优缺点的综合分析不难发现对边缘检测算法进行改进的大体方向。

首先显而易见的是在算法中引入滤波机制对减小噪声的干扰非常有效,但是必须指出高斯模糊滤波方法常常会弱化甚至破坏图像的边缘。

由此可见如何引入效果更佳的滤波机制(需要减少对滤波对边缘的破坏)并且在滤波后计算梯度前重新加强图像边缘将是提高算法整体性能的关键改进方向之一;其次噪声干扰种类繁多,特点不一,主要包括三大类:

加性高斯噪声、椒盐噪声(脉冲噪声)和混合型噪声,如果我们无论对何种类型的噪声都采用一尘不变的去噪方式,那么算法的适应性就将大打折扣,所以如果能找到一种具有自适应噪声类型的滤波机制,将对提高算法效果有极大帮助;再次,理论上最优的边缘应是精确到单像素的,但是现在的检测算法往往无法做到,检测出的边缘往往比较“宽厚”,如何提供最优的检测结果,也将是一种改进的趋势。

2.3边缘检测算法改进研究

根据上一节的分析,我们已经初步总结出了对算法改进的大致方向,鉴于Canny算法在无噪声和高信噪比条件下表现出来的良好性能,本文重点研究了何改进基于Canny的边缘检测算法,在具体介绍新提出一组改进的保留图像细节的滤波算法,是改进的边缘检测算法中的重要方面。

一组改进的保留图像细节的滤波算法

易知,不同的滤波方法对不同的噪声种类有着不同的去噪特性,目前在噪声的预处理过程中,均值滤波和中值滤波是最常用的两大类方法。

均值滤波类算法对高斯噪声有较好的去噪效果,而对脉冲噪声的去除效果较差;恰恰相反,中值滤波类算法对脉冲噪声的去噪能力较好,却对高斯噪声的去噪能力较差。

遗憾的是,均值滤波类算法和中值滤波类算法均会在平滑图像的过程中破坏图像细节,使得图像模糊化,而模糊的图像对于图像特征提取是及其不利的,往往会使检测算法产生很多虚假的特征,影响到更深层次的图像处理需求。

本节特针对三类典型噪声(椒盐噪声、高斯噪声、混合噪声),提出了一组共三种改进的滤波算法,分别为基于保守平滑的有限自适应中值滤波算法(用于去除椒盐噪声)、基于数学形态学的自适应平滑滤波算法(用于去除高斯噪声)、基于保守平滑的高斯滤波算法(用于去除混合噪声),这一组改进滤波算法的共同特点是在力争达到更佳滤波效果的同时,最大限度地保留图像细节,避免图像模糊化。

下面将根据三个算法的改进程度依次介绍算法内容,其中基于保守平滑的有限自适应中值滤波算法改进效果最佳,基于数学形态学的自适应平滑滤波算法次之,相对于单一噪声,混合噪声的情况比较复杂,故基于保守平滑的高斯滤波算法的效果改进最为有限。

2.3.2.1基于保守平滑的有限自适应中值滤波算法(CS.LAMF)

对于椒盐类噪声,中值滤波类算法有着极佳的滤波效果,但是椒盐类噪声只对图像中有限个像素点的灰度产生了影响,而中值滤波算法往往会用过滤窗去遍历所有的像素点,从而多平滑一些本无噪声污染的像素点并带来图像模糊现象。

此外,一些新提出的改进型中值滤波算法为了提高去噪能力,采用了加权或扩大平滑窗的半径,这些措施固然仍使高度污染的图像得以平滑,但却使得滤波后的图像越来越模糊。

为了减少中值滤波对于图像细节不必要的模糊干扰,经过大量实验,本文提出了一种基于保守平滑的有限自适应中值滤波算法(LimitedAdaptiveMedianFilterbasedonConservativeSmoothing,简称CS一LAMF)。

新算法先利用保守平滑降低椒盐噪声的密度,并使得其在局部“块状”化并和周边其他像素的灰度形成较大反差,然后再利用闭值判断来对这些“粗”化过的椒盐噪声进行中值滤波,算法的具体步骤如下所示:

1)初始化窗口大小,为了进行避免图像模糊,令半径w=3;

2)使用过滤窗遍历图像,设max为过滤窗中除中心点外灰度最大值,min为过滤窗中除中心点外灰度最小值,如果过滤窗的中心灰度值

>max,则令

=max,如果过滤窗的中心灰度值

=min,否则

的值保持不变;

3)初始化参数从,,=o,使用过滤窗再次遍历图像,如果|

-

|>T1,

,其中

为过滤窗中心灰度值,

为过滤窗中其它各点灰度值;

4)遍历每一个像素的

值,如果

,则对像素点(i,j)进行中值滤波,即

算法中T1和T2两个阈值可以根据图像被污染的程度具体从上述几幅实验效果可见,普通中值滤波对椒盐噪声的过滤不够彻底,而加权中值算法和自适应加权中值算法在平滑噪声的同时也使图像变得很模糊,而本文提出的算法则较好地调和了平滑噪声并保存细节这两个对立面,取得了更优的效果。

2.3.2.2基于数学形态学的自适应平滑滤波算法(ASF-MT)

均值滤波类算法一直以来对于高斯噪声有着极佳的平滑效果,但是其依靠算术平均这样的方式来平滑噪声点的设计思想必然是会导致图像变得模糊,而图像的模糊程度越高对特征提取算法的准确度影响越大。

基于上述原因,本文在参考了其他相关文献后,经过大量实验,提出了一种基于数学形态学的自适应平滑滤波算法(AdaptiveSmoothingFilterbasedonMorphologicalTheory,简称ASF-MT).

这是一种建立在数学形态学理论之上并拥有自适应灰度变化情况的滤波算法。

新算法首先采用数学形态学中的腐蚀运算对图像进行处理,腐蚀运算不但有一定的去噪声功能还能使不易分辨的图像目标依灰度收缩,使目标分离,便于轮廓的提取,然后通过自适应平滑〔40]的方式依据图像目标灰度的变化趋势平滑噪声点。

2.3.2.3基于保守平滑的高斯滤波算法(CS一GF)

在实际图像处理过程中,由于图像往往会受到两种噪声的叠加干扰,故单独采用任何一种滤波算法的去噪效果都不能达到最好,所以在学术界已有很多学者在探索效果较好的混合滤波算法。

本节也提出了一种改进的基于保守平滑的高斯滤波算法(GaussianFilteringbasedonConservativeSmoothing,简称CS-GF)用于在尽量保留图像细节的前提下最大可能地去除混合噪声。

新算法根据被椒盐噪声污染的像素点的灰度值明显高于周边像素这一特点,首先采用2.3.2.1节提出的基于保守平滑的有限自适应中值滤波算法对污染图像进行处理并去除椒盐噪声,然后G=1的高斯滤波进行去除高斯加性噪声。

2.3.3基于canny的噪声类型自适应的边缘检测算法

经过2.2节的分析对比和初步总结,我们不难得出针对边缘检测的三大改进方向:

l)引入噪声类型的自适应的滤波机制;

2)强化滤波后的图像边缘;

3)提高边缘检测结果的精度。

在明确方向后,经过大量文献阅读和实际实验测试,同时结合2.3.1节介绍的数学形态学理论和2.3.2节提出的一组新滤波算法,最终得以提出一种基于Canny的噪声类型自适应的边缘检测算法,新算法针对上文提出的三大改进方向分别给出了新的解决方案,具体详见下表:

表2一5针对已总结的边缘检测算法的改进方向给出的解决方案

以下给出新算法的具体步骤,图2一12给出了算法的详细流程图:

l)首先根据图像受噪声干扰的具体情况,进行有针对性的进行滤波,滤波算法采用本文2.3.2节已提出的一组改进算法,分别来处理高斯噪声、椒盐噪声和混合噪声;

2)在滤波后的图像进行数学形态学的闭运算,目的为加强平滑滤波后边缘模糊现象;

3)利用Sobel算子找到图像灰度的沿着两个方向的偏导数(Gx,Gy),并求出梯度的大小;

4)利用上一步的结果计算出各像素梯度的方向;

5)将边缘的梯度方向大致地分为四类(水平,竖直,45度方向,135度方向),并通过梯度的方向,我们就可以找到这个像素梯度方向的邻接像素;

6)再次遍历图像,若某个像素的灰度值与其梯度方向上前后两个像素的灰度值相比不是最大的,那么就将这个像素点的灰度值置为0,即不是边缘;

7)运用类似Canny算法的方式通过滤波后的图像的统计累积直方图获得高低两个阈值。

凡是大于高阈值的像素点一定是边缘,凡是小于低阀值的像素点一定不是边缘。

如果检测结果大于低阈值但又小于高阈值,那就要看这个像素的邻接像素中有没有超过高阀值的边缘像素,如果有的话那么它就是边缘了,否则它就不是边缘;

8)最后使用形态学中的细化运算,对检测结果进行细化。

图2一12基于Canny的噪声类型自适应的边缘检测算法流程图

2.4小结

本章首先详细描述了五种基于梯度的经典边缘检测算法并通过比较经典算法之间的优缺点,阐述了三大改进边缘检测算法的方向,接着提出了一组共三个改进的保留图像细节的滤波算法(改进的滤波算法分别针对椒盐噪声、高斯噪声和混合噪声)并验证了它们的有效性,最后结合数学形态学的相关知识提出基于Canny的噪声类型自适应的边缘检测算法并给出了算法具体步骤及流程图。

改进算法在canny算法良好的检测效果的基础上,通过新提出的滤波机制提高了对椒盐噪声和混合噪声的适应性,改善了对高斯噪声的滤波效果,在算法过程中还辅以数学形态学的相关运算用于强化滤波后的图像边缘并最终改善边缘检测的结果。

第四章的对比实验证明了改进算法拥有优异的检测效果。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 学科竞赛

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1