图像平滑实验报告

  • 格式:doc
  • 大小:987.04 KB
  • 文档页数:7

下载文档原格式

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

实验2 图像平滑实验

一、实验目的

1.通过实验掌握图像去噪的基本方法;

2.学会根据情况选用不同方法。

二、实验的硬件、软件平台

硬件:计算机

软件:操作系统:WINDOWS 2000

应用软件:MATLAB

三、实验内容及要求

1.实验内容

请在如下面方法中选择多个,完成图像去噪操作,并进行分析、比较。

(1)对静态场景的多幅图片取平均;

(2)空间域模板卷积(不同模板、不同尺寸);

(3)频域低通滤波器(不同滤波器模型、不同截止频率);

(4)中值滤波方法。

2.实验要求

(1)图片可根据需要选取;

(2)对不同方法和同一方法的不同参数的实验结果进行分析和比较,如空间域卷积模板可有高斯型模板、矩形模板、三角形模板和自己根据需求设计的模板等;模板大小可以是3×3,5×5,7×7或更大。频域滤波可采用矩形或巴特沃斯等低通滤波器模型,截止频率也是可选的。

(3)分析比较不同方法的结果。

四.实验内容

1.图片的均值化处理

程序:A1=imread('lenna_noise1.bmp');

A2=imread('lenna_noise2.bmp');

A3=imread('lenna_noise3.bmp');

A4=imread('lenna_noise4.bmp');

A5=imread('lenna_noise5.bmp');

A6=imread('lenna_noise6.bmp');

A7=imread('lenna_noise7.bmp');

A8=imread('lenna_noise8.bmp'); b1=double(A1/255);

b2=double(A2/255);

b3=double(A3/255);

b4=double(A4/255);

b5=double(A5/255);

b6=double(A6/255);

b7=double(A7/255);

b8=double(A8/255);

c=(b1+b2+b3+b4+b5+b6+b7+b8)/8; subplot(3,3,1);

imshow(A1);

title('1');

subplot(3,3,2);

imshow(A2);

title('2');

subplot(3,3,3);

imshow(A3);

title('3');

subplot(3,3,4);

imshow(A4);

title('14');

subplot(3,3,5);

imshow(A5);

title('5');

subplot(3,3,1);

imshow(A1);

title('1');

subplot(3,3,6);

imshow(A6);

title('6');

subplot(3,3,7);

imshow(A7);

title('7');

subplot(3,3,8);

imshow(A8);

title('8');

subplot(3,3,9);

title('9');

分析:

由于每张图片的噪点的分布是不一样的,所以将每张图片的值相加,再求平均值,这样噪点就会相互抵消,使得最后的图片稍微清晰。

图片的平滑处理

A=imread('noise1.bmp');%读取图片

A1=medfilt2(A,[3,3]);¨%中值滤波模板大小[3.3]

A2=ordfilt2(A,8,ones(4,4));%顺序滤波模板大小【4.4】

h=fspecial('average');%均值滤波

A3=filter2(h,A); %卷积

A3=uint8(A3);

j=fspecial('gaussian');%高斯滤波

A4=filter2(j,A);

A4=uint8(A4);

subplot(2,3,1);

imshow(A);

title('原图');

subplot(2,3,2);

title('中值滤波');

subplot(2,3,3);

imshow(A2);

title('顺序滤波');

subplot(2,3,4);

imshow(A3);

title('均值滤波');

subplot(2,3,5);

imshow(A4);

title('高斯滤波');

程序分析:

1从原图的图片中可以看到,原图噪点很多,第二幅图片是利用了中值滤波处理A1=medfilt2(A,[3,3]);¨含义是将图片划分成多个[3,3]的矩阵,取其中的中间值代替里面的所有元素。由于噪点的值与图片的值差距很大,所以划分[3.3]矩阵取中值处理后,大部分的噪点值将被中值取缔。所以可以达到平滑图像和去除噪点的功能。

2.顺序滤波处理:A2=ordfilt2(A,8,ones(4,4));将图片划分成很多个[4,4]的矩阵,让后讲里面的值进行排序,一共有十六个值,取排第8位值,然后用那个值代替矩阵里面所有的值,其实等同于A1=medfilt2(A,[4,4]);的中值排序,因为

A1=medfilt2(A,[3,3]);比A2=ordfilt2(A,8,ones(4,4));分的更细,所以滤波的效果图2比图3更好。