图像平滑滤波器

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

图像平滑滤波器

1.课程设计目的

(1)加深对图像噪声抑制基本理论知识的理解。

(2)学习MATLAB软件的使用能力和编程能力。

(3)通过对MATLAB仿真的编程学会对图像进行噪声抑制。

2.课程设计要求

(1)掌握课程设计的相关知识、概念清晰。

(2)程序设计合理、能够正确运行。

3.相关知识

3.1滤波的目的和要求

滤波的目的有两个:一是抽出对象的特征作为图像识别的特征模式;另一个是为适应图像处理的要求,消除图像数字化时所混入的噪声。

对滤波处理的要求有两条:一是不能损坏图像的轮廓及边缘等重要信息;二是使图像清晰视觉效果好。

3.2滤波的方法和归类

图像的噪声滤波器有很多种,常用的有线性滤波器,非线性滤波器。采用线性滤波如邻域平滑滤波,对受到噪声污染而退化的图像复原,在很多情况下是有效的。但大多数线性滤波器具有低通特性,去除噪声的同时也使图像的边缘变模糊了。而另一种非线性滤波器如中值滤波,在一定程度上可以克服线性滤波器所带来的图像模糊问题,在滤除噪声的同时,较好地保留了图像的边缘信息。

3.3平滑滤波

空域滤波技术根据其功能主要分成平滑滤波和锐化滤波两类。

平滑滤波能减弱或消除图像中的高频率分量,但不影响低频率分量。因为高频分量对应图像中的区域边缘等灰度值具有较大较快变化的部分,平滑滤波将这些分量滤去可减少局部灰度起伏,使图像变得比较平滑。实际中,它还可用于消除噪声或在撮较大的目标前去除太小的细节或将目标内的小间断连接起来。

4.课程设计分析

4.1均值滤波

把每个像素都用周围的8个像素来做均值操作。可以平滑图像,速度快,算法简单。但是无法去掉噪声,这能微弱的减弱它。

采用MATLAB中的函数filter2对受噪声干扰的图像进行均值滤波,代码如下:

[I,map]=imread('eight.tif'); %导入原始图像

figure,imshow(I);title('original') %绘制原始图像

J1=imnoise(I,'gaussian',0,0.02); %受高斯噪声干扰

J2=imnoise(I,'salt & pepper',0.04); % 叠加密度为0.04的椒盐噪声figure,imshow(J1); %绘制加入高斯噪声前的图像

figure,imshow(J2); %绘制加入椒盐噪声前的图像

M=[1 1 1; 1 1 1; 1 1 1];

M=M/9; %产生3×3滤波模板

N=[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1;1 1 1 1 1;1 1 1 1 1];

N=N/25; %产生5×5滤波模板

I_filter1=filter2(M,J1); %对高斯噪声均值滤波

figure,imshow(I_filter1,map); %绘制高斯滤波后的图像

I_filter2=filter2(M,J2); %对椒盐噪声均值滤波

figure,imshow(I_filter2,map); %绘制椒盐滤波后的图像

I_filter3=filter2(N,J1);

figure,imshow(I_filter3,map);

I_filter4=filter2(N,J2);

figure,imshow(I_filter4,map);

4.2 中值滤波

中值滤波是常用的非线性滤波方法 ,也是图像处理技术中最常用的预处理技术。它在平滑脉冲噪声方面非常有效,同时它可以保护图像尖锐的边缘。加权中值滤波能够改进中值滤波的边缘信号保持效果。但对方向性很强的指纹图像进行滤波处理时 ,有必要引入方向信息,即利用指纹方向图来指导中值滤波的进行。

采用二维中值滤波函数medfilt2对受椒盐噪声干扰的图像进行中值滤波,代码如下:

I=imread('eight.tif');

imshow(I) ;

J1=imnoise(I,'gaussian',0,0.02); %受高斯噪声干扰

J2=imnoise(I,'salt & pepper',0.04); % 叠加密度为0.04的椒盐噪声figure,imshow(J1);

figure,imshow(J2);

I_Filter1=medfilt2(J1,[3 3]); %对高斯噪声中值滤波

figure,imshow(I_Filter1);

I_Filter2=medfilt2(J1,[5 5]);

figure,imshow(I_Filter2);

I_Filter3=medfilt2(J2,[3 3]); %对椒盐噪声中值滤波

figure,imshow(I_Filter3);

I_Filter4=medfilt2(J2,[5 5]);

figure,imshow(I_Filter4);

4.3最小均方差滤波(自适应滤波)

最小均方差滤波亦称维纳滤波,其设计思想是使输入信号乘响应后的输出,与期望输出的均方误差为最小。代码如下:

[I,map]=imread('eight.tif');

figure,imshow(I);title('original')

J1=imnoise(I,'gaussian',0,0.02); % 受高斯噪声干扰

J2=imnoise(I,'salt & pepper',0.04); % 叠加密度为0.04的椒盐噪声figure,imshow(J1);

figure,imshow(J2);

[K noise]=wiener2(J1, [5 5]); %对高斯噪声最小均方差滤波

figure,imshow(K);

[N noise]=wiener2(J2, [5 5]); %对椒盐噪声最小均方差滤波

figure,imshow(N);

相关文档
最新文档