空间域锐化SharpeningintheSpatialDomain111191111图像空间域锐化引言(Introduction)在图像的识别中常需要突出边缘和轮廓信息。图像锐化就是增强图像的边缘或轮廓。边缘和轮廓常常位于图像中灰度突变的地方,图像平滑通过平均(类似积分)过程使得图像边缘模糊,图像锐化则通过微分而使图像边缘突出、清晰。基础(Foundation)一阶微分(差分表示))()1(xfxfxf二阶微分)]1()([)()1(1)()1(22xfxfxfxfxxxfxfxf)(2)1()1(xfxfxf11xf11yf选自冈萨雷斯•一阶微分会产生较宽的边缘•二阶微分对细节有较强的响应,比如细线和孤立点•一阶微分对灰度阶梯有较强的响应•二阶微分对灰度阶梯变化产生双响应原图像罗伯茨梯度锐化(一阶微分处理)拉普拉斯算子锐化(二阶微分处理)罗伯茨梯度锐化拉普拉斯算子锐化原图像基于一阶微分的图像增强——梯度锐化法图像锐化法最常用的是梯度法(GradientMethod)。对于图像f(x,y),在(x,y)处的梯度定义为这个向量的模值由下式给出:的最快增加方向。方向:的最大变化率。大小:fffyfxfyxf,2122|,|yfxfyxf为了降低计算量,在实际操作中常用绝对值代替平方与平方根运算近似求梯度的模值:yxGGf),(jif),1(jif)1,(jif|1,,||,1,||,|1,,,1,|,|2122jifjifjifjifjifjifjifjifjifjif近似:形式一除此之外,也可以用交叉的差分表示,交叉的梯度称为罗伯茨(Roberts)梯度,其表达式:),(jif),1(jif)1,(jif)1,1(jif1001xG0110yG|1,,1||1,1,||,|1,,11,1,|,|2122jifjifjifjifjifjifjifjifjifjif近似:形式二原图像罗伯茨梯度锐化原图像罗伯茨梯度锐化Sobel算子2/122yxsddS101202101xd121000121yd|1,11,21,11,11,21,1||1,1,121,11,1,121,1||,|1,11,21,11,11,21,11,1,121,11,1,121,1|,|2122jifjifjifjifjifjifjifjifjifjifjifjifjifjifjifjifjifjifjifjifjifjifjifjifjifjif近似:形式三Prewitt算子2/122yxPddS101101101xd111000111ydIsotropic算子2/122yxIddS101202101xd121000121yd%该程序利用梯度算子对图像进行边缘提取I=imread('D:\chenpc\data\thry\chpt3\rice.tif');subplot(131);imshow(I,[]);title('originalimage');BW1=edge(I,'Roberts');subplot(132);imshow(BW1,[])title('Robertsgradientimage');BW2=edge(I,'sobel');subplot(133);imshow(BW2,[])title('Sobelgradientimage');SobelPrewittKirsch%梯度提取算法的另外实现方式f=imread('Fig46a1.bmp');f=im2double(f);subplot(131);imshow(f,[])title('原图');wx=[10;0-1]wy=[0-1;10]fx=imfilter(f,wx);fy=imfilter(f,wy);gradient=abs(fx)+abs(fy);subplot(132);gradient=histeq(gradient);imshow(gradient,[])title('Roberts梯度图');第一种输出形式此法的缺点是增强的图像仅显示灰度变化比较徒的边缘轮廓,而灰度变化比较平缓或均匀的区域则呈黑色。梯度增强的方法),(),(jifjig第二种输出形式式中T是一个非负的阈值。适当选取T,可使明显的边缘轮廓得到突出,又不会破坏原来灰度变化比较平缓的背景其它),,(),(),,(),(yxfTyxgradyxgradyxg其他,,),(),(),(yxfTyxgradLyxgG第三种输出形式它将明显边缘用一固定的灰度级LG来表现。第四种输出形式此方法将背景用一个固定的灰度级LB来表现,便于研究边缘灰度的变化。其他,),(,),(),(BLTyxgradyxgradyxg第五种输出形式这种方法将明显边缘和背景分别用灰度级LG和LB表示,生成二值图像,便于研究边缘所在位置。其他,),(,),(BGLTyxgradLyxg基于二阶微分的图像增强——拉普拉斯算子22222),(yfxfyxf拉普拉斯(Laplacian)运算定义为:1,,21,]1,,[,1,,1,.,1,2,1],1,[,,1,,1.1,,.,1,.2222jifjifjifjifjifjifjifyjifyjifyjifjifjifjifjifjifjifjifxjifxjifxjifjifjifyjifjifjifxjif对数字图像:由这两个分量相加得到,拉普拉斯算子可定义为:),(4)1,()1,(),1(),1(),(jifjifjifjifjifjig)],(4)1,()1,(),1(),1([2yxfyxfyxfyxfyxff拉普拉斯掩模:0101-410101111-811110-10-14-10-10-1-1-1-18-1-1-1-1原图像拉普拉斯算子锐化0101-410100-10-14-10-10把原图像和拉普拉斯图像叠加在一起的简单方法可以保护拉普拉斯锐化处理的效果,同时又能复原背景信息。如果拉普拉斯掩模中心系数为负如果拉普拉斯掩模中心系数为正如果所使用的定义具有负的中心系数,那么就必须将原始图像减去经拉普拉斯变换后的图像而不是加上它,从而得到锐化的结果。去模糊掩模:0-10-15-10-10-1-1-1-19-1-1-1-1yxfyxfyxfyxfyxg,,,,,22例:用拉普拉斯算子对下列图像进行增强运算,并把增强后的图像画出来:0000000000000000003333000033330000333300003333000000000000000000解:%本程序对数字图像进行拉普拉斯滤波%和去模糊处理f=[00000000;...00000000;...00333300;...00333300;...00333300;00333300;00000000;...00000000]w=[010;1-41;010]laplacian=imfilter(f,w,'symmetric')subplot(131);imshow(f,[])title('原图');subplot(132);imshow(laplacian,[])title('拉普拉斯算子滤波图');g=f-laplaciansubplot(133);imshow(g,[])title('拉普拉斯算子去模糊滤波图');原图拉普拉斯算子滤波图拉普拉斯算子去模糊滤波图二阶微分对灰度阶梯变化产生双响应,在一幅图像中,该现象表现为双线。例:用拉普拉斯算子对月亮表面图像进行去模糊滤波。%imagelaplacian2.m%该程序使用fspecial和imfilter,利用Laplacian滤波器%进行加强滤波f=imread('D:\chenpc\data\mtlb\chpt03\Fig0316(a).tif');subplot(221);imshow(f,[])title('originalimage');w=fspecial('laplacian',0)g1=imfilter(f,w,'replicate');subplot(222);imshow(g1,[])title('Laplacianfilteredusinguint8formats');f2=im2double(f);g2=imfilter(f2,w,'replicate');subplot(223);imshow(g2,[])title('Laplacianfilteredusingdoubleformats');g=f2-g2;subplot(224);imshow(g)title('Enhancedresult');最终结果是使图像中小的细节部分得到增强并良好保留了图像的背景色调。基于拉普拉斯变换的图像增强已成为图像锐化处理的一个基本工具。originalimageLaplacianfilteredusinguint8formatsLaplacianfilteredusingdoubleformatsEnhancedresult原图像拉普拉斯算子锐化拉普拉斯算子锐化+原图像0-10-15-10-10通常都是几种互补的图像增强方法。右图是一幅人体骨骼的扫描图,常被用来检查人体疾病,如感染肿瘤等。目标:通过图像锐化突出骨骼的更多细节来增强图像。特点:•动态范围窄•伴随着很高的噪声