时间:2022-10-16 01:06:10
摘 要:消除在图像中产生的噪声,为了使图像清晰,污染度小,成了数字图像处理信息传播的重要部分。本文分析了中值滤波法、维纳滤波法、邻域平均法等几种传统的方法,着重研究自适应模糊小波阈值算法在图像去噪中的应用。运用Matlab软件对一张含噪图片(含高斯噪声)进行仿真去噪,仿真结果分析比较,得出了自适应模糊小波阈值去噪算法比传统方法去噪效果更好,更明显。
关键词:小波变换;中值滤波法;维纳滤波法;邻域平均法;MATLAB
【分类号】:TP391.41
1自适应模糊小波阈值去噪
(1)对含噪图像用中值滤波法预处理
基于中值滤波算法能够很好地消除脉冲噪声,保证图像细节及其边缘的特性,因此我们先对含噪图 进行中值滤波处理得到平滑效果不佳的图像。
首先对图像中的噪声进行检测。信号经过中值滤波后,信号的幅度将会有较高的保真度,避免了引入量化噪声,有效地滤出了脉冲噪声,还可以抑制一部分高斯噪声。
(2)对预处理后的图像进行小波变换,滤除图像中的高斯噪声。
软阈值函数:
并且 将随着 的增大而减小, 属于隶属度函数。其中 1―6
这样就保证了 接近 时, 趋近于 , 的整体连续性得到了保证,从而避免了信号产生振荡;且当 时, 与 的偏差越来越小,,这样重构信号与真实信号将会更加逼近。在软阈值算法中, 减小了 ,因此要设法减小此偏差,当 的取值介于 与 之间,估计出来的小波系数 更接近于 。这样在阈值估计当中加入一个隶属函数 , 的取值就介于 与 之间了,从而获得了更好的去噪效果。其中 为噪声的方差, 为离散采样信号的长度, 为分解尺度。
在 尺度下的小波分解,得出含噪函数
1―7
对于自适应模糊小波阈值去噪法具体步骤:
1)输入噪声图像,将该图像采用中值滤波法进行预处理。
2)对预处理后的图像进行小波变换,将小波系数 采取自适应的处理方式,边缘细节的小波系数将保持不变,其它小波系数用模糊阈值函数处理。
3)经过步骤2后对小波系数进行增强处理。
4)对处理后的小波系数进行小波逆变换,重构图像。
2仿真
2.1中值滤波法对含高斯噪声的图像去噪仿真
用Matlab软件仿真
I=imread('C:\Users\river\Desktop\tang.gif');
j=imnoise(I,'gaussian',0,0.1);colormap(map);
x=j(:,:,1);
subplot(221);
imshow(x);
title('高斯噪声图片');
k1=medfilt2(x,[3 3]);
subplot(222);imshow(I)
title('3x3模板中值滤波');
k2=medfilt2(x,[5 5]);
subplot(223);imshow(I);
title('5x5模板中值滤波');
k3=medfilt2(x,[7 7]);
subplot(224);imshow(I);
title('7x7模板中值滤波');
2.2维纳滤波法对含高斯噪声的图像去噪仿真
用Matlab软件仿真
I=imread('C:\Users\river\Desktop\tang.gif');
j=imnoise(I,'gaussian',0,0.1);colormap(map);
x=j(:,:,1);
subplot(221);
k=wiener2(x);imshow(x);
title('高斯噪声图片');
k1=wiener2(x,[3 3]);
subplot(222);imshow(I);
title('3x3模板维纳滤波');
k2=wiener2(x,[5 5]);
subplot(223);imshow(I);
title('5x5模板维纳滤波');
k3=wiener2(x,[7 7]);
subplot(224);imshow(I);
title('7x7模板维纳滤波');
2.3邻域平均法对含高斯噪声图像去噪仿真
用Matlab软件仿真
I=imread('C:\Users\river\Desktop\tang.gif');
j=imnoise(I,'gaussian',0,0.1);
x=j(:,:,1);
subplot(221);
imshow(x);title('高斯噪声图片');
h=h/9;
k=conv2(x,h);
k1=conv2(x,[3 3]);
subplot(222);imshow(I)
title('3x3模板邻域平均法');
k2=conv2(x,[5 5]);
subplot(223);imshow(I);
title('5x5模板邻域平均法');
k3=conv2(x,[7 7]);subplot(224);imshow(I);
title('7x7模板邻域平均法');
2.4自适应模糊小波阈值去噪仿真
用Matlab软件仿真
I=imread('C:\Users\river\Desktop\tang.gif');
j=imnoise(I,'gaussian',0,0.1);colormap(map);
x=j(:,:,1);
subplot(221);
imshow(x);
title('高斯噪声图片');
k1=medfilt2(x,[3 3]);
subplot(222);imshow(I);title('中值滤波预处理图像');
[c,s]=wavedec2(x,2,'sym5');%分解
n=[1,2];%设置尺度向量n
p=[10.12,23.28];%设置阈值向量p
%对三个方向高频系数进行阈值处理
nc=wthcoef2('h',c,s,n,p,'s');
nc=wthcoef2('v',c,s,n,p,'s');
nc=wthcoef2('d',c,s,n,p,'s');
%对图像信号进行阈值选取
[thr,sorh,keepapp]=ddencmp('den','wv',x); [x,cxc,lxc,perf0,perfl2]=wdencmp('gbl',c,s,'sym5',2,thr,sorh,keepapp);
3结果分析
本文在分析几种传统图像去噪方法的基础上,结合中值滤波和模糊小波阈值理论提出了一种自适应模糊小波阈值去噪算法。该算法与中值滤波法、维纳滤波法、邻域平均法这些传统方法仿真比较,具有更好的去噪效果和更强的边缘保持能力,且特别适合于图像中高斯噪声和脉冲噪声的混合消除。
4参考文献
[1] 谭艳丽,张丕状.基于自适应阈值的小波图像去噪法研究[J].电脑知识与技术,2007,33(6):906-909.
[2] 许立腾.小波阈值法在图像去噪领域的应用研究[J] 科学技术与工程,2009,9(22):6748-6753.
[3] 赵瑞珍.小波理论及其图像、信号处理中的算法研究[D].西安:西安电子科技大学,2002.