数字图像处理实验报告图像复原实验.docx
《数字图像处理实验报告图像复原实验.docx》由会员分享,可在线阅读,更多相关《数字图像处理实验报告图像复原实验.docx(12页珍藏版)》请在冰豆网上搜索。
数字图像处理实验报告图像复原实验
实验报告
课程名称数字图像处理导论
专业班级_______________
姓名_______________
学号_______________
电气与信息学院
和谐勤奋求是创新
实验题目
图像复原实验-空域滤波复原
实验室
DSP室&信号室
实验时间
2015年10月13日
实验类别
设计
同组人数
2
成绩
指导教师签字:
一.实验目的
1.掌握图像滤波的基本定义及目的。
2.理解空间域滤波的基本原理及方法。
3.掌握进行图像的空域滤波的方法。
二.实验内容
1.读出这幅图像,给这幅图像分别加入椒盐噪声和高斯噪声后并与前一张图显示在同一图像窗口中。
2.对加入噪声图像选用不同的平滑(低通)模板做运算,对比不同模板所形成的效果,要求在同一窗口中显示。
3.使用函数imfilter时,分别采用不同的填充方法(或边界选项,如零填充、’replicate’、’symmetric’、’circular’)进行低通滤波,显示处理后的图像。
4.运用for循环,将加有椒盐噪声的图像进行10次,20次均值滤波,查看其特点,显示均值处理后的图像(提示:
利用fspecial函数的’average’类型生成均值滤波器)。
5.对加入椒盐噪声的图像分别采用均值滤波法,和中值滤波法对有噪声的图像做处理,要求在同一窗口中显示结果。
6.自己设计平滑空间滤波器,并将其对噪声图像进行处理,显示处理后的图像。
三.实验具体实现
1.读出(自己选定.tif)这幅图像,给这幅图像分别加入椒盐噪声和高斯噪声后并与前一张图显示在同一图像窗口中。
I=imread('');
subplot(1,3,1)
imshow(I);
title('OriginalImage');
J=imnoise(I,'salt&pepper',;%noisedensity=
subplot(1,3,2)
imshow(J);
title('salt&pepper');
K=imnoise(I,'gaussian',,;
subplot(1,3,3)
imshow(K);
title('gaussian')
2.对加入噪声图像选用不同的平滑(低通)模板做运算,对比不同模板所形成的效果,要求在同一窗口中显示。
I=imread('');
H=fspecial('sobel');
subplot(2,2,1)
imshow(I);
title('QriginalImage');
Sobel=imfilter(I,H,'replicate');
subplot(2,2,2)
imshow(Sobel);
title('SobelImage')
H=fspecial('laplacian',;
lap=imfilter(I,H,'replicate');
subplot(2,2,3)
imshow(lap);
title('LaplacianImage')
H=fspecial('gaussian',[33],;
gaussian=imfilter(I,H,'replicate');
subplot(2,2,4)
imshow(gaussian);
title('GaussianImage')
3.使用函数imfilter时,分别采用不同的填充方法(或边界选项,如零填充、’replicate’、’symmetric’、’circular’)进行低通滤波,显示处理后的图像。
originalRGB=imread('');
subplot(3,2,1)
imshow(originalRGB);
title('QriginalImage');
h=fspecial('motion',50,45);%motionblurred
filteredRGB=imfilter(originalRGB,h);
subplot(3,2,2)
imshow(filteredRGB);
title('MotionBlurredImage');
boundaryReplicateRGB=imfilter(originalRGB,h,'replicate');
subplot(3,2,3)
imshow(boundaryReplicateRGB);
title('0-Padding');
boundary0RGB=imfilter(originalRGB,h,0);
subplot(3,2,4)
imshow(boundary0RGB);
title('Replicate');
boundarysymmetricRGB=imfilter(originalRGB,h,'symmetric');
subplot(3,2,5)
imshow(boundarysymmetricRGB);
title('Symmetric');
boundarycircularRGB=imfilter(originalRGB,h,'circular');
subplot(3,2,6)
imshow(boundarycircularRGB);
title('Circular');
4.运用for循环,将加有椒盐噪声的图像进行10次,20次均值滤波,查看其特点,显示均值处理后的图像(提示:
利用fspecial函数的’average’类型生成均值滤波器)。
I=imread('');
J=imnoise(I,'salt&pepper',;
subplot(1,3,1)
imshow(J);
title('salt&pepperNoise');
h=fspecial('average');%AveragingFiltering
J1=imfilter(J,h);
fori=1:
10
J1=imfilter(J,h);
subplot(1,3,2)
imshow(J1);
title('10AveragingFiltering');
end
J2=imfilter(J,h);
fori=1:
20
J2=imfilter(J,h);
subplot(1,3,3)
imshow(J2);
title('20AveragingFiltering');
end
5.对加入椒盐噪声的图像分别采用均值滤波法,和中值滤波法对有噪声的图像做处理,要求在同一窗口中显示结果。
I=imread('');
J=imnoise(I,'salt&pepper',;
subplot(1,3,1)
imshow(J);
title('OriginalImage');
h=fspecial('average');%AveragingFiltering
J1=imfilter(J,h);
subplot(1,3,2)
imshow(J1);
title('AveragingFiltering');
J2=medfilt2(J);%MedianFiltering
subplot(1,3,3)
imshow(J2);
title('MedianFiltering');
6.自己设计平滑空间滤波器,并将其对噪声图像进行处理,显示处理后的图像。
domain=[00800;
00800;
88888;
00800;
00800];
I=imread('');
J=imnoise(I,'salt&pepper',;
subplot(1,2,1)
imshow(J);
title('OriginalImage');
K1=ordfilt2(J,5,domain);
subplot(1,2,2)
imshow(K1);
title('5*5SmoothingFiteredImage');
附录:
可能用到的函数和参考结果**************报告里不能用参考结果中的图像
1)读出这幅图像,给这幅图像分别加入椒盐噪声和高斯噪声后并与前一张图显示在同一图像窗口中。
I=imread('');
subplot(1,3,1)
imshow(I);
title('QriginalImage');
J=imnoise(I,'salt&pepper',;%noisedensity=
subplot(1,3,2)
imshow(J);
title('salt&pepper');
K=imnoise(I,'gaussian',,;
subplot(1,3,3)
imshow(K);
title('gaussian');
图初始图像及椒盐噪声图像、高斯噪声污染图
2)对加入噪声图像选用不同的平滑(低通)模板做运算,对比不同模板所形成的效果,要求在同一窗口中显示。
I=imread('');
H=fspecial('sobel');
subplot(2,2,1)
imshow(I);
title('QriginalImage');
Sobel=imfilter(I,H,'replicate');
subplot(2,2,2)
imshow(Sobel);
title('SobelImage')
H=fspecial('laplacian',;
lap=imfilter(I,H,'replicate');
subplot(2,2,3)
imshow(lap);
title('LaplacianImage')
H=fspecial('gaussian',[33],;
gaussian=imfilter(I,H,'replicate');
subplot(2,2,4)
imshow(gaussian);
title('GaussianImage')
图原图像及各类低通滤波处理图像
3)使用函数imfilter时,分别采用不同的填充方法(或边界选项,如零填充、’replicate’、’symmetric’、’circular’)进行低通滤波,显示处理后的图像。
originalRGB=imread('');
subplot(3,2,1)
imshow(originalRGB);
title('OriginalImage');
h=fspecial('motion',50,45);%motionblurred
filteredRGB=imfilter(originalRGB,h);
subplot(3,2,2)
imshow(filteredRGB);
title('MotionBlurredImage');
boundaryReplicateRGB=imfilter(originalRGB,h,'replicate');
subplot(3,2,3)
imshow(boundaryReplicateRGB);
title('0-Padding');
boundary0RGB=imfilter(originalRGB,h,0);
subplot(3,2,4)
imshow(boundary0RGB);
title('Replicate');
boundarysymmetricRGB=imfilter(originalRGB,h,'symmetric');
subplot(3,2,5)
imshow(boundarysymmetricRGB);
title('Symmetric');
boundarycircularRGB=imfilter(originalRGB,h,'circular');
subplot(3,2,6)
imshow(boundarycircularRGB);
title('Circular');
图原图像及运动模糊图像
图函数imfilter各填充方式处理图像
4)运用for循环,将加有椒盐噪声的图像进行10次,20次均值滤波,查看其特点,显示均值处理后的图像。
I=imread('');
J=imnoise(I,'salt&pepper',;
subplot(1,3,1)
imshow(J);
title('salt&pepperNoise');
h=fspecial('average');%AveragingFiltering
J1=imfilter(J,h);
fori=1:
10
J1=imfilter(J,h);
subplot(1,3,2)
imshow(J1);
title('10AveragingFiltering');
end
J2=imfilter(J,h);
fori=1:
20
J2=imfilter(J,h);
subplot(1,3,3)
imshow(J2);
title('20AveragingFiltering');
end
图椒盐噪声污染图像经10次、20次均值滤波图像
由图可得,20次滤波后的效果明显好于10次滤波,但模糊程度也更强。
5)对加入椒盐噪声的图像分别采用均值滤波法,和中值滤波法对有噪声的图像做处理,要求在同一窗口中显示结果
I=imread('');
J=imnoise(I,'salt&pepper',;
subplot(1,3,1)
imshow(J);
title('OriginalImage');
h=fspecial('average');%AveragingFiltering
J1=imfilter(J,h);
subplot(1,3,2)
imshow(J1);
title('AveragingFiltering');
J2=medfilt2(J);%MedianFiltering
subplot(1,3,3)
imshow(J2);
title('MedianFiltering');
图椒盐噪声污染图像及均值、中值滤波图像
从图中可以看出,对于椒盐噪声污染的图像处理,中值滤波效果要明显好于均值滤波。
经均值滤波器处理后的图像比均值滤波器中结果图像更加模糊。
6)设计平滑空间滤波器,并将其对噪声图像进行处理,显示处理后的图像。
domain=[00800;
00800;
88888;
00800;
00800];
I=imread('');
J=imnoise(I,'salt&pepper',;
subplot(1,2,1)
imshow(J);
title('OriginalImage');
K1=ordfilt2(J,5,domain);
subplot(1,2,2)
imshow(K1);
title('5*5SmoothingFiteredImage');
图椒盐噪声污染图像及5*5平滑滤波器掩模
掩模值为w=1/25*[11111;11111;11111;11111;11111]
图椒盐噪声污染图像及5*5平滑滤波器掩模
掩模值为w=[00800;00800;88888;00800;00800]