改进的经验模式分解方法及其在图像边缘检测中的应用.pdf
第32卷 第12期 2010-12(上)【19】改进的经验模式分解方法及其在图像边缘检测中的应用Improvement empirical mode decomposition method and its application in image edge detection郭艳光,程显生GUO Yan-guang,CHENG Xian-sheng(内蒙古农业大学 职业技术学院,包头 014109)摘 要:边缘检测是图像处理与识别中最基础的内容之一,二维经验模式分解方法(BEMD)在非平稳信号的处理应用中具有很多独特的优点,但一般的算法速度较慢,本文提出了一种基于经验模式分解的改进算法,实验表明,改进后的算法能快速得到较为理想的边缘信息。关键词:边缘检测;经验模式分解(EMD);模态函数(IMF)中图分类号:TP273 文献标识码:A 文章编号:1009-0134(2010)12(上)-0019-04Doi:10.3969/j.issn.1009-0134.2010.12(上).070 引言图像特征提取是图像处理的关键技术之一,图像边缘检测涉及图像中研究对象的特征提取,在实际的数字图像处理中,图像的边缘包含了图像的位置、轮廓等特征,是图像的基本特征之一,好的边缘检测算法对进行更高层次的图像分析、理解等有不可忽视的实用价值和影响。传统的边缘检测算子中Roberts算子、Priwitt算子、Sobel算子、Canny算子等,将边缘点理解为灰度突变点,通过不同的算子提取。但是,噪声也是图像灰度变化中的高频成份,检测结果噪声较多;Gauss-Laplace和Canny算子较好的实现了图像边缘提取,但不能满足实际中对图像边缘提取的要求;还有小波方法、基于热传递方法、广义模糊算子方法等同样存在漏检边缘、模糊等缺陷。二维经验模式分解方法在非平稳信号的处理应用中具有很多独特的优点。因此,把经验模式分解方法应用到边缘提取中,能提取出具有良好性质和结果的边缘。但经验模式分解最大的缺点是算法的时间复杂度大。本文将详细阐述EMD的原理及其实现方法,介绍一种快速经验模式分解方法并将其应用于图像边缘提取,将图像中的边缘快速有效的提取出来。1 EMD原理一维EMD的基本思想是:选取区域范围,从图像中找出信号中每个区域的局部极大值和局部极小值点,对极大值点和极小值点分别进行曲线插值,获得信号的上、下包络线,计算平均包络线,计算原信号与平均包络线的差值,然后利用筛选算法把符合模态函数(IMF)的信号分解出来。循环获得频率逐渐降低的多个模态函数。模态函数必须满足:1)数据序列x(t)的极值点数目与零点数目之差少于2个,2)上、下包络的均值为零。第二个条件较为苛刻,将其用另外的标准代替:式中hk(t)是IMF分量提取模块中本次循环过程中求得的平均包络,hk-1(t)是上次循环过程中求得的平均包络,0T是平均包络线所包含的时刻。SD值一般在0.2-0.3。二维EMD分解实现过程:1)对所给图像求取曲面局部极值点,包括所有局部极大值和极小值。2)求取均值包络曲面。极值点选取之后,对各极大值点和各极小值点分别进行曲面拟合,经插值后得到极大值点曲面包络和极小值点曲面包收稿日期:2010-07-22作者简介:郭艳光(1974-),女,内蒙古赤峰人,讲师,硕士,主要从事图形图像研究和职业技术教育工作。【20】第32卷 第12期 2010-12(上)络,将两曲面数据求平均得到均值包络曲面。3)计算原始曲面与均值包络曲面。4)与一维相似需计算终止条件。重复步骤13,直到满足给定的终止条件得到第一个模态函数IMF1,用原图像减去第一个模态函数得到第一个残余(residue),对残余重复步骤1步骤4,依次得到图像的N个固有模态函数和第N个残余。根据此方法对图像进行分解,结果为下图所示:2 改进的BEMD改进的BEMD原理:目前,二维EMD已广泛应用在图像处理领域的诸多研究方向,也取得了一些可喜成果,但是二维EMD算法的时间复杂度一直是一个难以解决的问题,直接影响了它的应用范围。本文针对二维EMD算法中运行时间最长的求取上下包络进行改进,具体算法如下:1)初始化r0(x,y)=f(x,y),N=1;f(x,y)是原图像,x,y是图像的大小,i是分解的IMF数目;2)对所给图像求取曲面局部极值点,包括所有局部极大值max(x,y)和极小值min(x,y);3)求第N个模态函数(1)初始化:i=1,j=1,i,j为图像的大小,win=3,5,3+2N(N为分解的特征函数的个数);(2)以点(i,j)为中心,覆盖到与它间距为(win-1)/2)的行和列中所有的点,构成win行win列矩阵(如果超出边界,则取边界值),计算矩阵中最大值和最小值的数目;(3)如果局部最大值和最小值的数目相等,则计算该win行win列矩阵平均值avg。如果最大值和最小值的数目不相等,则win=win+2,跳转到2步,当win=3+2N时最大值和最小值的数目还不相等,则计算win行win列矩阵平均值avg(i,j);(4)循环得到图像中每一点的平均值avg(i,j);(5)IMF=r(i,j)-avg(i,j),求出第一个模式函数IMF;4)循环得到i个IMF。改进的BEMD部分程序:function imf=ixagewemd1(x,n)hg,wd=size(x);%hg高、行数,wd宽、列数imf=;img_lin=x;thd=2;for cishu=1:n%提取图中的最大值和最小值,win_max=5+2.*(cishu-1);img_avg=0;max_img=0;min_img=0;for i=2:hg-1for j=2:wd-1 if(img_lin(i,j)=img_lin(i-1,j-1)&(img_lin(i,j)=img_lin(i-1,j)&(img_lin(i,j)=img_lin(i-1,j+1)&(img_lin(i,j)=img_lin(i,j-1)&(img_lin(i,j)=img_lin(i,j+1)&(img_lin(i,j)=img_lin(i+1,j-1)&(img_lin(i,j)=img_lin(i+1,j)&(img_lin(i,j)=img_lin(i+1,j+1)max_img(i,j)=1;end if(img_lin(i,j)=img_lin(i-1,j-1)&(img_lin(i,j)=img_lin(i-1,j)&(img_lin(i,j)=img_lin(i-1,j+1)&(img_lin(i,j)=img_lin(i,j-1)&(img_lin(i,j)=img_lin(i,j+1)&(img_lin(i,j)=img_lin(i+1,j-1)&(img_lin(i,j)=img_lin(i+1,j)&(img_lin(i,j)=img_lin(i+1,j+1)min_img(i,j)=1;endendendfor i=1:hgfor j=1:wd flag00=0;for win=3:2:win_maxnum_max=0;%最大值数目num_min=0;%最小值数目for ii=i-(win-1)/2):i+(win-1)/2)for jj=j-(win-1)/2):j+(win-1)/2)第32卷 第12期 2010-12(上)【21】hii=max(1,min(ii,hg);wjj=max(1,min(jj,wd);if(max_img(hii,wjj)=1)num_max=num_max+1;endif(min_img(hii,wjj)=1)num_min=num_min+1;endendend i f(n u m _ m i n=n u m _ m a x)&(n u m _min=0)&(num_min=0)%极大极小值的个数相等 flag00=1;avgavg=0;for ii=i-(win-1)/2):i+(win-1)/2)%给定一个范围宽度观察该点左右范围的情况 for jj=j-(win-1)/2):j+(win-1)/2)%给定一个范围高度观察该点上下范围情况hii=max(1,min(ii,hg);wjj=max(1,min(jj,wd);avgavg=avgavg+img_lin(hii,wjj);endendavgavg=avgavg/(win*win);break;endendif(flag00=0)%极大极小值的个数不相等avgavg=0;for ii=i-(win_max-1)/2):i+(win_max-1)/2)for jj=j-(win_max-1)/2):j+(win_max-1)/2)hii=max(1,min(ii,hg);wjj=max(1,min(jj,wd);avgavg=avgavg+img_lin(hii,wjj);endendavgavg=avgavg/(win_max*win_max);elseavgavg=avgavg;endimg_avg(i,j)=avgavg;endend imf=imf;img_lin-img_avg;img_lin=double(img_lin);figure,imshow(img_avg),title(rsdue);img_avg=double(img_avg);img_lin=img_avg;end return;根据上述算法将图像进行二维EMD分解,得到N个IMF,结果如下图所示:Image(128*128)mode1 mode2 mode3 mode4Image(512*512)mode1 mode2 mode3 mode4改进的BEMD算法避免了用插值方法求包络面,减少了时间复杂度,有效的增强了算法的可用性。3 用改进的BEMD算法提取图像边缘通过对图像进行分解得到多个模态函数,第一个模式中包含大多边缘信息,采用图像二值化方法或结合其他边缘检测算法提取边缘。本文采用改进的BEMD分解图像、二值化方法提取边缘(阈值为0)。与传统边缘检测算法的比较结果如下图所示:图(1)采用Sobel算法,图(2)采用Canny算法,图(3)采用传统的BEMD算法,图(4)、(5)采用改进的BEMD算法。实验结果表明,采用改进的BEMD算法能更加清楚的提取边缘、算法效率较高。4 结论本文给出了经验模态分解(EMD)的实现方法,针对实现BEMD求取包络面时间复杂度大现【22】第32卷 第12期 2010-12(上)象,提出了一种改进的BEMD算法,该方法避免了求解大型线性方程组以及大矩阵,降低了时间和空间复杂度,提高效率。实验结果证明了该方法的可行性和优越性。参考文献:1 Huang N E,Shen Z,Long S R,et al.The empirical mode decom position and the Hilbert spectrum for nonlinear and non-stationary times series analysisJ.Proc R Soc Lond A,1998,454:903-995.2 NORDEN E.HUANG,SHEN Z,Long S R.The EmpiricalMode Decomposition Method and the Hilbert Spectrum for Non-Stationary Time Series AnalysisJ.Proc.Royal.Soc.London A,1998,454(A):903-995.3 米兰,许海波.基于边缘提取的图像拼接J.计算机应用研究,2007,25(5):318-320.4 沈滨,崔峰,彭思龙.二维EMD的纹理分析及图像瞬时频率估计J.计算机辅助设计与图形学学报,2005,17(10):2345-2352.5 张小蓟,张歆,孙进才.基于经验模态分解的目标特征提取与选择J.西北工业大学学报,2006,24(4):453-456.6 万 建,任龙涛,赵春晖.二维EMD应用在图像边缘特征提取中的仿真研究J.系统仿真学报,2009,21(3):799-801.7 宋立新,高凤娇,郗朝晖.二维EMD分解方法的比较与改进J.电子与信息学报,2008,30(12):2890-2893.8 刘忠轩,彭思龙.方向EMD分解与其在纹理分割中的应用J.中国科学(E辑)信息科学,2005,35(2):113-123.成糊状,再按规定加入规定量的水剂,这样配置的磁悬液浓度比较均匀,悬液中磁粉不结团,检测灵敏度较高。在对盛装油性介质的容器磁粉检测,如果被检内表面焊缝的油膜难以处理干净、或者作水断试验不合格时,则必须选用油基磁悬液,即使用高闪点、低浓度的无臭味煤油载液配制的油基磁悬液,亦可选用50%煤油+50%变压器油配制。用磁膏配制油基磁悬液时也同样注意先把磁膏与少量的油混合研磨成糊状,再按规定加入规定量的油剂。对比较光滑的被检表面或是位于仰立部位焊缝的检测,宜用粘性较大的油载液(比如用30%煤油+70%机油)来配制磁悬液,以防止磁化检测时,磁悬液流淌速度太快造成磁粉无法在缺陷表面聚积而发生漏检。同时,我们知道,压力容器出现问题的地方通常是在人孔、支柱、接管角的焊缝区,在这些关键地方我们要进行着色探伤。重点是我们第一步通过肉眼观察确定可能出现裂纹的地方。3)对压力容器对接焊缝进行百分之百的超声探伤或者百分之百渗透探伤等方法。4)对前面利用百分之百磁粉探伤、着色探伤、百分之百的超声探伤或者百分之百渗透探伤等方法发现出现问题的地方(压力容器焊缝及其附近微裂纹区域内),再次利用射线探伤复查,以保证检测结果的准确性。我们在检测中要树立一个思想,就是对于任何一种检测方法所发现的可疑裂纹,要持慎重的态度,不要急于下结论,而是采用会诊的方式,利用各种检测方法再进行重点复查,我们还可以为了保证更加准确,可以让检测人员畅所欲言、对检测结果发表意见。通过这些工作,我们就可以确定压力容器微裂纹的位置、走向、埋藏深度,从而确定修复方案,确保压力容器安全运行。3 结束语总之,在前面的探讨中,我们可以发现,只采用一种无损检测方法来检测压力容器焊缝及其附近微裂纹,无论那种检测方法如何的先进,如何的高效,进检测结果必然会存在很多局限和疏漏,容易造成漏检。我们认为:压力容器焊缝及其附近微裂纹的检测应该综合运用各种无损检测方法,相互取长补短,做到合理科学地结合检测的压力容器实际情况来运用各种检测手段,确保压力容器安全运行。参考文献:1 程树翔,马晓梅.压力容器焊缝及其附近微裂纹的检测J.信息技术,2001,(11):104-106.2 韩蕴绮.压力容器无损检测的探析J.电站系统工程,2009,(03):117-119.3 姜菊生,姚鸿生.一种研究单晶硅加工表面微裂纹的新方法J.半导体技术,2008,(04):108-112.4 李华清,成丽娟,李旭东.平面微裂纹扩展过程的计算机模拟J.兰州理工大学学报,2004,(03):152-155.5 姜寿林.压力容器质量保证体系在产品制造过程中的体验J.甘肃科技纵横,2004,(06):107-109.6 崇沅.压力容器缺陷评规范的运用J.化工装备技术,2008,(01):147-149.7 杨文伟.压力容器焊接的质量控制J.焊接,2005,(04):105-107.8 焊接近缝区微裂纹对压力容器安全与寿命的影响(一)J.流体机械,2006,(06):130-135.【上接第18页】