当前位置:文档之家› 空间域滤波器(实验报告)

空间域滤波器(实验报告)

数字图像处理作业——空间域滤波器摘要在图像处理的过程中,消除图像的噪声干扰是一个非常重要的问题。

本文利用matlab软件,采用空域滤波的方式,对图像进行平滑和锐化处理。

平滑空间滤波器用于模糊处理和减小噪声,经常在图像的预处理中使用;锐化空间滤波器主要用于突出图像中的细节或者增强被模糊了的细节。

本文使用的平滑滤波器有中值滤波器和高斯低通滤波器,其中,中值滤波器对去除椒盐噪声特别有效,高斯低通滤波器对去除高斯噪声效果比较好。

使用的锐化滤波器有反锐化掩膜滤波、Sobel边缘检测、Laplacian边缘检测以及Canny算子边缘检测滤波器。

不同的滤波方式,在特定的图像处理应用中有着不同的效果和各自的优势。

1、分别用高斯滤波器和中值滤波器去平滑测试图像test1和2,模板大小分别是3x3 , 5x5 ,7x7;利用固定方差 sigma=1.5产生高斯滤波器. 附件有产生高斯滤波器的方法。

实验原理分析:空域滤波是直接对图像的数据做空间变换达到滤波的目的。

它是一种邻域运算,其机理就是在待处理的图像中逐点地移动模板,滤波器在该点地响应通过事先定义的滤波器系数与滤波模板扫过区域的相应像素值的关系来计算。

如果输出像素是输入像素邻域像素的线性组合则称为线性滤波(例如最常见的均值滤波和高斯滤波),否则为非线性滤波(中值滤波、边缘保持滤波等)。

空域滤波器从处理效果上可以平滑空间滤波器和锐化空间滤波器:平滑空间滤波器用于模糊处理和减小噪声,经常在图像的预处理中使用;锐化空间滤波器主要用于突出图像中的细节或者增强被模糊了的细节。

模板在源图像中移动的过程中,当模板的一条边与图像轮廓重合后,模板中心继续向图像边缘靠近,那么模板的某一行或列就会处于图像平面之外,此时最简单的方法就是将模板中心点的移动范围限制在距离图像边缘不小于(n-1)/2个像素处,单处理后的图像比原始图像稍小。

如果要处理整幅图像,可以在图像轮廓边缘时用全部包含于图像中的模板部分来滤波所有图像,或者在图像边缘以外再补上一行和一列灰度为零的像素点(或者将边缘复制补在图像之外)。

①中值滤波器的设计:中值滤波器是一种非线性统计滤波器,它的响应基于图像滤波器包围的图像区域中像素的排序,然后由统计排序的中间值代替中心像素的值。

它比小尺寸的线性平滑滤波器的模糊程度明显要低,对处理脉冲噪声(椒盐噪声)非常有效。

中值滤波器的主要功能是使拥有不同灰度的点看起来更接近于它的邻近值,去除那些相对于其邻域像素更亮或更暗,并且其区域小于滤波器区域一半的孤立像素集。

在一维的情况下,中值滤波器是一个含有奇数个像素的窗口。

在处理之后,位于窗口正中的像素的灰度值,用窗口内各像素灰度值的中值代替。

例如若窗口长度为5,窗口中像素的灰度值为80、90、200、110、120,则中值为110,因为按小到大(或大到小)排序后,第三位的值是110。

于是原理的窗口正中的灰度值200就由110取代。

如果200是一个噪声的尖峰,则将被滤除。

然而,如果它是一个信号,则滤波后就被消除,降低了分辨率。

因此中值滤波在某些情况下抑制噪声,而在另一些情况下却会抑制信号。

将中值滤波推广到二维的情况。

二维窗口的形式可以是正方形、近似圆形的或十字形等。

本次作业使用正方形模板进行滤波,它的中心一般位于被处理点上。

窗口的大小对滤波效果影响较大。

根据上述算法利用MATLAB软件编程,对源图像test1和test2进行滤波处理,结果如下图:中值滤波后的test1.pgm (3x3)中值滤波后的test1.pgm (5x5)中值滤波后的test1.pgm (7x7)中值滤波后的test2.tif(5x5)可见,窗口的大小对滤波效果影响较大。

窗口越大,平滑效果越明显,图像细节越模糊。

②高斯滤波器的设计:高斯滤波是一种根据高斯函数的形状来选择模板权值的线性平滑滤波方法。

高斯平滑滤波器对去除服从正态分布的噪声是很有效果的。

一维零均值高斯函数为。

其中,高斯分布参数决定了高斯滤波器的宽度。

对图像来说,常用二维零均值离散高斯函数作平滑滤波器,函数表达式如下:(1)高斯函数具有5个重要性质:(1)二维高斯函数具有旋转对称性,即滤波器在各个方向上的平滑程度是相同的。

一般来说一幅图像的边缘方向是不知道的。

因此,在滤波之前是无法确定一个方向比另一个方向上要更多的平滑的。

旋转对称性意味着高斯滤波器在后续的图像处理中不会偏向任一方向。

(2)高斯函数是单值函数。

高斯滤波器用像素邻域的加权均值来代替该点的像素值,而每一邻域像素点的权值是随着该点与中心点距离单调递减的。

这一性质是很重要的,因为边缘是一种图像局部特征。

如果平滑运算对离算子中心很远的像素点仍然有很大的作用,则平滑运算会使图像失真。

(3)高斯函数的傅立叶变换频谱是单瓣的。

这一性质是高斯函数傅立叶变换等于高斯函数本身这一事实的直接推论。

图像常被不希望的高频信号所污染,而所希望的图像特征,既含有低频分量,又含有高频分量。

高斯函数傅立叶变换的单瓣意味着平滑图像不会被不需要的高频信号所污染,同时保留了大部分所需要的信号。

(4)高斯滤波器的宽度(决定着平滑程度)是由参数σ表征的,而且σ和平滑程度的关系是非常简单的。

σ越大,高斯滤波器的频带就越宽,平滑程度就越好。

通过调节平滑程度参数σ,可在图像特征分量模糊(过平滑)与平滑图像中由于噪声和细纹理所引起的过多的不希望突变量(欠平滑)之间取得折衷。

(5)由于高斯函数的可分离性,大高斯滤波器可以有效实现。

通过二维高斯函数的卷积可以分两步来进行,首先将图像与一维高斯函数进行卷积,然后将卷积的结果与方向垂直的相同一维高斯函数进行卷积。

因此,二维高斯滤波的计算量随滤波模板宽度成线性增长而不是成平方增长。

这些性质使得它在早期的图像处理中特别有用,表明高斯平滑滤波器无论在空间域还是在频率域都是十分有效的低通滤波器。

根据上述分析,利用MATLAB软件设计高斯滤波器,对源图像test1和test2进行滤波处理,结果如下图:5010015020025050100150200250高斯滤波平滑后的test1.pgm (5x5)50100150200250501001502002505010015020025050100150200250高斯滤波平滑后的test2.tif (3x3)5010015020025030035040045050050100150200250300350400450500可见,对于高斯滤波器,模板的大小对滤波效果影响不大。

高斯滤波虽然能够在一定程度上去掉噪声,但也使得图象变得模糊不清,效果并不能令人满意。

5010015020025030035040045050050100150200250300350400450500高斯滤波平滑后的test2.tif (7x7)50100150200250300350400450500501001502002503003504004505002、利用高通滤波器滤波测试图像test3,4:包括unsharp masking, Sobel edgedetector, and Laplace edge detection;Canny algorithm.实验原理分析:锐化滤波能减弱或消除图像中的低频率分量,但不影响高频率分量。

因为低频分量对应图像中灰度值缓慢变化的区域,因而与图像的整体特性,如整体对比度和平均灰度值等有关。

锐化滤波将这些分量滤去可使图像反差增加,边缘明显。

在实际应用中,锐化滤波可用于增强被模糊的细节或者低对比度图像的目标边缘。

图像锐化的主要目的有两个:一是增强图像边缘,使模糊的图像变得更加清晰,颜色变得鲜明突出,图像的质量有所改善,产生更适合人眼观察和识别的图像;二是希望经过锐化处理后,目标物体的边缘鲜明,以便于提取目标的边缘、对图像进行分割、目标区域识别、区域形状提取等,为进一步的图像理解与分析奠定基础。

由于锐化使噪声受到比信号还要强的增强,所以要求锐化处理的图像有较高的信噪比;否则,锐化后图像的信噪比更低。

①反锐化掩膜图像增强(unsharp masking)图像的反锐化掩蔽算法可以表示为:(1)其中fs(x,y)表示经过反锐化掩蔽得到的锐化图像,是f(x,y)的模糊形式。

反锐化掩蔽进一步的普遍形式称为高提升滤波。

在图像中任何一点(x,y)处,高提升滤f可定义如下:波后的图像hb(2)f其中A≥1,与前式一样,是的模糊形式,此式也可以写成:(3)结合式(1),可以得到:(4)这一表达式可计算高提升滤波图像。

如果选择拉普拉斯变换,式(4)变成:(5) 高提升滤波处理可以通过任何一个图1所示的掩模得以实现。

当A=1时,高提升滤波处理就是标准的拉普拉斯变换。

随着A 超过l 不断增大,锐化处理的效果越来越不明显。

最终,当A 足够大时,高提升图像将近似等于经常数调制的图像。

图1 高频提升滤波技术可以用其中一种掩膜来实现(1A ) 本文采用的反锐化掩膜滤波器中A=1。

根据以上分析,利用MATLAB 软件设计反锐化掩膜滤波器对test3和test4进行滤波,结果如下图:原图像——test3corrupt.pgm反锐化掩膜后的test3c orrupt.pgm可见,经过反锐化掩膜滤波后,图像的边缘得到了增强,细节更加明显,但同时也带来了高频噪声的影响。

②索贝尔边缘检测(Sobel edge detector )索贝尔算子(Sobel operater )主要用作边缘检测,在技术上,它是一离散性差分算子,用来运算图像亮度函数的灰度之近似值。

在图像的任何一点使用此算子,将会产生对应的灰度矢量或其法矢量。

该算子包含两组3x3的矩阵,分别为横向及纵向,将之与图像作平面卷积,即可分别得出横向及纵向的亮度差分近似值。

如果以A 代表原始图像,Gx 及Gy 分别代表经横向及纵向边缘检测的图像灰度值,其公式如下:101202*101x G A -+⎛⎫ ⎪=-+ ⎪ ⎪-+⎝⎭ 121000*121y G A+++⎛⎫ ⎪= ⎪ ⎪---⎝⎭图像的每一个像素的横向及纵向梯度近似值可用以下的公式结合,来计算梯度的大小。

G =然后可用以下公式计算梯度方向。

arctan()yx G G Θ=如果角度Θ等于零,即代表图像在该处拥有纵向边缘,左方较右方暗。

根据以上算法分析,利用MATLAB 软件设计Sobel 边缘检测滤波器,对源图像test3和test4进行滤波,结果如下图示:原图像——test4 copy.bmp 反锐化掩膜后的test4 copy.bmp③Laplacian 边缘检测(Laplacian edge detector )拉普拉斯算子是最简单的各向同性微分算子,具有旋转不变性。

一个二维图像函数的拉普拉斯变换是各向同性的二阶导数,定义为:(6)为了更适合于数字图像处理,将该方程表示为离散形式:(7)另外,拉普拉斯算子还可以表示成模板的形式,如图2所示。

相关主题