基于模糊推理的边缘检测算法
2018-05-14赵新秋秦昆阳冯斌贺海龙
赵新秋 秦昆阳 冯斌 贺海龙
摘要:针对传统模糊推理邊缘检测算法存在抗噪性能差、边缘为非单像素边缘等缺点.提出一种基于模糊推理的边缘检测新方法。首先根据全向小波变换获得4个方向的小波变换幅值,并将该幅值作为模糊推理系统输入;然后通过比较解模糊之后的值和自适应阈值得到二值边缘图像,再细化边缘得到最终边缘图像。实验结果表明:与传统微分算法和模糊推理算法相比,该算法对图像中噪声和伪边缘的抑制以及边缘提取的完整性都具有很好的效果。
关键词:边缘检测;小波变换;模糊推理;自适应阈值;边缘细化
文献标志码:A 文章编号:1674-5124(2018)05-0001-05
0引言
图像的边缘包含着图像的重要信息,主要产生在图像纹理、颜色、阴影变化的区域。目前,边缘检测已经成为了计算机视觉的重要组成部分,主要应用在地理、军事、医学、机器人和模式识别等领域。
边缘检测的主要方法包括:基于数学形态学的边缘检测算法;基于微分算子的边缘检测算法,如Robert、Sobel、LoG、Prewitt等。但是基于形态学的算法由于结构元素存在单一性,具有边缘点丢失的缺点:基于微分算子的边缘检测算法对噪声过于敏感,在含有噪声的情况下边缘检测效果很差。传统模糊推理边缘检测算法具有边缘检测准确及一定的抗噪性能,在不同的领域得到了较好的应用。在传统模糊推理边缘检测算法中,用局部方差、邻域像素差值作为模糊系统输入,受噪声影响较大,阈值需要人为设定,得到的边缘图像为非单像素边缘。本文针对以上所提问题,将全向小波变换和自适应阈值引入到传统模糊推理边缘检测中,最终利用边缘细化算法实现边缘细化操作,该算法较传统算法具有较好的检测效果。
1传统模糊推理边缘检测算法分析
1.1基于模糊推理的边缘检测
模糊推理边缘检测算法主要包括以下3个过程。1)模糊化:提取图像的相关特征(梯度、像素差值等)作为模糊系统的输入,选择合适的输入隶属度函数,将得到的相关特征量的精确值映射为对应输入模糊子集的隶属度。2)模糊推理:根据经验制定相应的模糊规则,采用推理方法将提取图像特征量的隶属度映射到输出量值域上的推理结果集合中。3)解模糊:采用解模糊方法,从模糊推理得到的推理结果集合当中求得输出量的确切值,然后将解模糊之后的值与设定阈值相比较,从而得到边缘图像。本文选择Mamdani推理法作为推理方法,重心法作为解模糊方法。
1.2模糊推理边缘检测算法缺陷分析
传统模糊推理边缘检测算法存在如下缺陷:1)在计算模糊推理系统的输入时,一般选用梯度、邻域灰度值差等作为输入,但是此类输入在进行边缘检测时,受噪声影响较大,容易造成边缘丢失和漏检。2)在解模糊之后进行二值化处理时一般人为设定阈值,但是该阈值具有随机性,使边缘的连续性和完整性受到影响。3)最终得到的边缘图像为非单边缘响应,且图像较为模糊,影响后续图像处理的质量。
2改进传统模糊推理边缘检测算法
2.1模糊推理系统输入改进
传统的模糊推理边缘检测算法使用3x3邻域像素差值作为模糊推理系统的输入,存在受噪声环境影响较大的缺点,不能得到较好的检测结果。由于小波变换具有较好的时频局部化特征,并且可以有效抑制噪声的干扰,得到较高的准确度。所以本文将全向小波变换的方法运用到模糊推理边缘检测当中。
2.1.1构建全向小波模型
2.1.2实例小波化模型
由于图像的边缘方向存在很大的不确定性,所以选择有旋转对称性的二维高斯函数作为滤波函数,保证在滤波过程中各方向是均等的。而且二维高斯函数在对图像进行平滑时,既能抵抗不需要的高频信号干扰又能得到较多的边缘信号。
选择方差为σ2的二维高斯函数作为平滑函数:
本文选择3×3变换窗口作为小波变换窗口,如图1所示。图1(a)中A1-A9表示处于窗口中的图像的灰度值,图1(b)中BlaB4表示经过3x3窗口全向小波变换后得到的0°,45°,90°,135°4个方向上的小波变换后的幅值。
2.2隶属度函数
为了得到抗噪性能更好的模糊推理边缘检测效果,选择合适隶属度函数非常必要。由于高斯函数具有平滑且没有零点的特性,故本文将其作为输入和输出隶属度函数。在图像预处理阶段对输入变量进行了归一化处理,输入变量的范围为[0,1]。图2中定义模糊集对应的语言变量为低、中、高;图3定义模糊集对应的语言变量为边缘、非边缘。输入输出隶属度函数设置为
2.3模糊规则
本文将全向小波变换的4个方向幅值B1-B4作为模糊系统的输入,模糊规则制定为:1)If B1andB2and B3and B4为中,则像素点A5为边缘点;2)IfB2and B3and B4为中and B1为低,则像素点A5为边缘点;3)if B1and B3and B4为中and B2为低,则像素点A,为边缘点;4)If B1and B2and B4为中andB3为低,则像素点A5为边缘点;5)If B1and B2andB3为中and B4为低,则像素点A5为边缘点;6)If B1or B2or B3or B4为高,则像素点A5为边缘点。
上述规则只列出了输出为边缘点的情况,输出为非边缘点的情况未列出。
2.4自适应阈值
为了得到边缘图像,通过自适应阈值,将解模糊之后得到的值与定义的阈值进行比较来确定边缘点和非边缘点。对于边缘点的确定如下式所示:
T——判定边缘点的自适应阈值。
由于固定阈值不能很好地考虑到局部边缘点的判断,所以本文采用自适应阈值方法,既考虑到固定阈值又将局部均值考虑进去,得到自适应阈值T为
(13)式中K为通过最大类间方差法对解模糊后图像像素分类得到的值,将它和解模糊之后的像素最大值z*max组合成固定阈值,并求取解模糊之后图像3x3窗口局部均值z*max。为了更好地抑制噪声,取两项最大值为自适应阈值T。式中系数通过试验得到。
2.5边缘细化
基于模糊推理的边缘检测算法得到的不是单像素边缘,影响着后续图像处理的质量。为了克服该缺陷,对模糊推理得到的边缘图像进行细化处理。由于HSCP算法能够陕速地完成边缘图像细化操作,故选用该算法进行处理,其算法步骤为
1)对于所有的边缘点P0,如果满足下列条件,则可以判断它是可以删除的:
①其8连通域中的边缘点数E(P0)为2≤E(P0)≤6;
②在P0点的8连通域,当只包含一个4连通域边缘点。
2)对于所有的可删除点,如果满足下列条件之一,则保留该点:反之删除该点:
①P2、P6为边缘点,而P4为可删除的:
②P4、P8为边缘点,而P6为可删除的;
③P4、P5、P6均为可删除。
8连通域示意图如图4所示。
3实验分析
为了验证所提算法的性能,本文对图像添加噪声进行边缘检测测试。通过峰值信噪比(PSNR)和均方误差(MSE)计算图像中所含噪声等级,表达式为
本文选取Peppers图像作为测试图像,如图5(a)所示。对其添加高斯噪声得到峰值信噪比为25 dB的图5(b),对图5(b)分别采用Robert算法、LoG算法、Sobel算法、Prewitt算法、模糊推理算法和本文所提算法进行边缘检测,结果如图5(c)~图5(h)所示。从图中可以看出,传统算法检测出的结果含有较多噪声而且得到的边缘不完整。为了客观评价边缘检测的效果,本文通过边缘点个数、4连通域个数、8连通域个数和它们之间的比值进行评价。设边缘点个数为A,4连通域个数为B,8连通域个数为C。当边缘连接性越好时,C/A、C/B的值就会越小。所以,本文把C/A、C/B的值作为评价图像边缘的线型连接性好坏的指标,这两个指标中C/B所占的权重最大,其值越小,说明边缘的线型连接性越好,边缘检测的效果也就越好。边缘图像系统数据如表1所示。
从表中可以看出,本文所提算法检测到的像素总数处于对比算法的中间位置,C/A、C/B的值要明顯小于对比算法,说明所提算法在尽可能多的检测出边缘点的同时,也得到了更好的边缘连接效果,效果要明显优于对比算法。
4结束语
本文在传统模糊推理边缘检测算法的基础上,采用全向小波变换的幅值代替局部方差等作为模糊推理系统的输入,设置自适应阈值,并采用HSCP算法实现边缘细化操作。通过实验表明,改进后的模糊推理边缘检测算法,相对于传统基于微分算子和模糊推理边缘检测算法具有更好的抗噪性,具有一定的应用价值。但同时增加了算法的复杂度致使运算速度较慢,这是以后研究改进的方向。
(编辑:商丹丹)