基于Matlab的图像去噪算法的研究(3)

2019-01-18 18:46

大学本科毕业设计

忽略不计,此时可近似地将乘性噪声看作是加性噪声。综上所述,对于均值为零且方差不同的高斯白噪声,可将其作为大多数图像噪声的模型,图像灰度变化幅度较小且噪声也很小的情况下,乘性噪声可近似看成为加性噪声。

3.2均值滤波算法

均值滤波是一种典型的线性滤波算法,这种滤波方法是对信号进行局部领域平均,是用图像像素的均值替代原图像中所有的像素值[17]。为了实现这种算法,可以选择一个模板,把邻域的像素置于此模板中。去掉目标像素本身,以目标象素为中心的周围8个像素建立为一个滤波模板,再把原来像素值用所求的平均值来代替。幅值近似相等且随机分布在不同位置上,这样可以平滑图像,速度较快,算法简单。如表3-1所示:

表3-1 模版示意图

1 2 3 8 0 4 7 6 5 在上示意图中,模板中有9个像素,0是当前目标像素,剩下的1-8是其临近像素。进行均值滤波先求模板中的所有像素的均值,再用求得的均值代替当前像素点

(x,y)的值,滤波后,该点上的灰度为g(x,y),即:

g(x,y)=

1N?f(x,y) (3-5)

f?S式中所用的模板为S,像素总个数为N,即N=9。通常模板选择为3?3,5?5,这是考虑到数据的分布具有平衡特性,然后将待处理的像素置于中心。

为了更好地理解此算法,以一个实例来演示滤波过程。包含噪声干扰的图像数据为:

?12143??110234???f??52688? (3-6)

??55708????56789?? 由于图像数据被大括号包围,滤波时无法覆盖边框上的像素,使部分像素不能被识别,因此对边框上的像素不做处理,只能使用3?3的模板对其进行均值滤波。选取非边框区域的像素进行处理,取其3?3的邻域,计算其中9个像素的灰度值平均值,然后进行均值操作。

在原图中,f(2,2)值为10,在所有像素中该点的灰度值最大,可以初步判断其为噪声点,f(2,2)的模板为:

第7页 共28页

大学本科毕业设计

?121?? (3-7) 1102fm(2,2)=?????526??则其滤波后的均值为:

?1?g(2,2)=int??(1?2?1?1?10?2?5?2?6)?=3 (3-8)

?9?其中,int()表示整数函数。通过滤波后对像素值大于周围的噪声进行抑制。同理对于像素f(4,4),其值为0,最小。其模板中的像素为:

?688?? fm(4,4)??708????789??

(3-2-5)

滤波后的均值为:

?1?g(4,4)=int?(6?8?8?7?0?8?7?8?9)??7 (3-9)

?9?通过这种方法将像素值小于周围的噪声进行了削弱。对原图像处理的最后结果为:

?1?1?g??5??5??52355614557445783?4??8? (3-10) ?8?9??由此可见均值滤波算法简单方便,通俗易懂,对噪声点的削弱比较明显,但显而易见的是,图像的边缘处理方面却不令人满意,几乎没有对边缘进行改善,不能很好地保护图像细节。

3.3中值滤波算法

随着中值滤波的不断发展,功能不断完善,在一定的条件下,能有效的滤除脉冲干扰以及图像扫描产生的噪声,可以解决一些滤波器在图像处理中导致的图像细节损坏等问题。但是中值滤波也是有局限性的,太对一些含棱角细线的细节图像处理效果一般,不能很好地保护图像细节,对这些图像的去噪处理不提倡使用中值滤波的方法。

中值滤波的基本原理是用噪声点周围各像素点的灰度值的中值来取代该点,通过计算并替换灰度值达到滤除噪声的目的。设有一个一维序列f1,f2,…,fn,现在利用中值算法对这个序列进行滤波,首先从序列中陆续取出m个数,fi?v,…,fi?1,…,

f1,…,fi?1,…,fi?v,通常m的值为奇数,若为偶数则不便取中间值。其中i为中

第8页 共28页

大学本科毕业设计

心位置,v=m-1/2,把这些数取出后进行排列,把m个数按大小排列完整,输出队列中正中间的那个值就是中值[18]。用公式表示为:

m?1 (3-11) Yi?Med?fi?v,?,fi,?,fi?v? i?Z,v?2例如我们对这样一个序列{0,3,5,1,7}进行滤波,首先是把队列里的数字按从小到大的方式进行排序,排序后序列变为{0,1,3,5,7},序列的中间的值也就是其中值为3。平均滤波的一般输出则为:

Zi??fi?v?fi?v?1???fi???fi?v?mi?Z (3-12)

使用中值滤波对一般的一维和二维序列进行滤波时,其滤波窗口是限定的。对于二维序列?Xij?进行中值滤波时,滤波窗口也是二维的,对于不同的噪声分布,可以使用不同形状和大小的滤波窗口。针对不同的滤波环境,一些方形、圆形、十字形、线状等各种不同的形状二维窗口也在不断被使用。二维数据的中值滤波可以表示为:

Yi,j?Med{Xij},A为滤波窗口 (3-13)

A在实际使用时,对滤波窗口的选择要实际情况来决定,不同形状和大小的滤波窗口会有不同的滤波效果。为使滤波效果更好,可以对滤波窗口的尺寸不断调整,一般先用3?3再取5?5逐渐增大。在使用二维中值滤波时,由于算法对图像的一些细节处理不完善,要对图像中有效的细线状物体的保护特别留意。从总体上来说,与均值滤波相比,中值滤波对一些含有突变的图像信息能够很好地处理,能够将原图像较突出的信息妥善地保留。

3.4维纳滤波算法

维纳滤波是指在含噪声图像中提取出一些正常的图像信号的方法,通过对特征信号的提取来恢复图像的原始特点。对于这种滤波算法,其滤波效果由均方误差体现,均方误差为理论期待输出效果与事实上输出之间的差值的均方。在研发工作中为取得较好的图像噪声滤除效果,从各方面加强图像处理和运算使均方误差最小,这其中最重要的部分就是对冲激响应的的求解。国外研究者也提出了一些标准作为解决问题程度的参考,就如维纳-霍夫方程,只有满足此方程才能使维纳滤波器达到最佳。根据此方程,滤波效果是由输入和输出的相关函数共同决定[19]。

对于一个线性系统,设它的单位样本响应为h(n) ,当输入一个随机信号x(n),且

x(n)?s(n)?v(n) (3-14) 其中x(n)表示信号,v(n)表示噪声,则输出y(n)为:

第9页 共28页

大学本科毕业设计

y(n)??h(m)x(n?m) (3-15)

m我们希望x(n)通过线性系统h(n)后,得到y(n)尽可能接近s(n),因此称y(n)为s(n)的估计值,用s(n)表示,即

y(n)?s(n) (3-16)

^^

则此滤波器的输入与输出关系可用下图3-2表示。

h(n) ?(n) y(n)?sx(n)?s(n)??(n)

图3-2

实际上,式(3-4-2)所示的卷积形式可视为从当前和过去的观察值x(n),x(n?1),

x(n?2)…x(n?m),…来估计信号的当前值s(n)。因此可以看出,h(n)过滤问题的

^

过程其实也是对问题的统计和估算过程。

从当前的和过去的观察值x(n),x(n?1),x(n?2)…对当前的信号值y(n)?s(n)进行统计和估算的过程称之为过滤或滤波[21]。维纳滤波器可以从过去的观察值估计当前或将来以及过去的信号值。

我们用一个表达式来说明信号真实值与估计值的误差,即

e(n)?s(n)?s(n) (3-17)

s(n)表示信号的真实值,s(n)表示信号的估计值,用e(n)表示他们之间的误差。

^

^^e(n)的值是不固定的,所以表达误差用它的均方误差是合理可行的,要求均方误差最

小也就是它的平方的统计期望最小:

?(n)?E[e(n)]?min2

(3-18)

对于平稳随机过程无论是连续或离散的,是标量的还是向量的,维纳滤波都可以应用,其优点就是适应面较广。 维纳滤波要求输入是平稳的且已知无干扰的信号。这些要求也是为了实现最佳滤波效果,然而,这些要求由于外界未知环境对信号极易产生干扰,而难以满足。

3.5本章小结

本章首先对图像噪声进行概述,对噪声产生的原因进行分析,并通过不同角度对图像噪声进行分类。重点介绍了高斯噪声和椒盐噪声,有助于后面对噪声的检测,可以对降噪算法起到原理上的帮助。

然后对三种常用的去噪方法进行详细的剖析。

第10页 共28页

大学本科毕业设计

第4章 基于Matlab的图像去噪算法仿真

本文选用一张彩色图片,将其转换为灰度图片后进行加噪处理,分别添加高斯噪声和椒盐噪声,并对加噪后的图像进行Matlab软件仿真去噪。matlab读入的原始图像如图4-1所示:

图4-1 原始图像”tupian”

给图像加入高斯噪声,噪声均值为0,方差为0.02。加入椒盐噪声,噪声密度定为0.02。灰度转换和加噪处理主要程序: b = imread('D:\\tupian.png');

l=b(:,:,1)*0.299 + b(:,:,2)*0.587 + b(:,:,3)*0.114; imshow(b)

J = imnoise(l,'salt & pepper',0.02); % 加入椒盐噪声干扰 k = imnoise(l,'gaussian',0,0.005); % 加入高斯噪声干扰 噪声效果图如图4-2所示

图4-2 分别加入椒盐和高斯噪声的效果图

4.1 均值滤波的仿真

主要matla程序:

K1= filter2(fspecial('average',3),J)/255; subplot(234),imshow(K1) title('3*3的椒盐噪声均值滤波') K2= filter2(fspecial('average',7),k)/255; subplot(235),imshow(K2) title('3*3高斯噪声均值滤波') 仿真结果如图4-3所示。

第11页 共28页


基于Matlab的图像去噪算法的研究(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:学七年级语文下册第一单元3回忆鲁迅先生节选习题新人教版[含答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: