- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
mattlab《数字图像处理》实验报告02
广东海洋大学学生实验报告书(学生用表)
实验名称 图像的空域与频域增强 课程名称 数字图像处理 课程号 学院(系) 专业 班级 学生姓名 学号 实验地点 实验日期 12.10.19
一、实验目的
1.熟练运用Matlab中的函数进行图像的空域增强和频域增强
2.能自己编程实现Matlab中的二维滤波函数filter2和中值滤波函数medfilt2的部分功能
二、实验内容
必做:
1. 对图像’eight.tif’分别添加椒盐噪声和高斯噪声,分别用中值滤波和空域低通滤波对噪声图像进行去噪。
2. 对图像’saturn.tif’分别添加椒盐噪声和高斯噪声,分别用理想低通滤波和巴特沃斯低通滤波对噪声图像进行去噪。
3. 使用梯度算子和空域高通滤波对图像moon.tif进行锐化。
选做:
4. 自己编写一个中值滤波函数mymedfilt2,实现Matlab中的medfilt2函数的功能(边缘采用复制的方式);对图像‘eight.tif’加上椒盐噪声,用自编的函数对其进行中值滤波。
三、程序清单与运行结果
1. 添加椒盐噪声和高斯噪声
I=imread(eight.tif);
J=imnoise(I,salt pepper,0.02);
K=imnoise(I,gaussian);
subplot(231),imshow(I);title(原图像);
subplot(232),imshow(J);title(椒盐噪声图像);
subplot(233),imshow(K);title(高斯噪声图像);
k1=medfilt2(J,[5 5]);
k2=medfilt2(K,[5 5]);
subplot(234),imshow(k1);title(椒盐中值滤波);
subplot(235),imshow(k2);title(高斯中值滤波);
k1=filter2(fspecial(gaussian,3),K);
k2=filter2(fspecial(gaussian,5),K);
k3=filter2(fspecial(gaussian,7),K);
subplot(336);imshow(uint8(k1));title(3*3模板空域低通滤波);
subplot(337);imshow(uint8(k2));title(5*5模板空域低通滤波);
subplot(338);imshow(uint8(k3));title(7*7模板空域低通滤波);
2. I=imread(pout.tif);
J=imnoise(I,salt pepper,0.02);
K=imnoise(I,gaussian,0.02);
subplot(231),imshow(I);title(原图像);
subplot(232),imshow(J);title(椒盐噪声图像);
subplot(233),imshow(K);title(高斯噪声图像);
A=double(J);
f1=fft2(J);
g1=fftshift(f1);
[M,N]=size(f1);
n=3;
d0=20;
n1=floor(M/2);
n2=floor(N/2);
for i=1:M
for j=1:N
d=sqrt((i-n1)^2+(j-n2)^2);
h=1/(1+(d/d0)^(2*n));
g1(i,j)=h*g1(i,j);
end
end
g1=ifftshift(g1);
g1=uint8(real(ifft2(g1)));
subplot(234);
imshow(g1);title(巴特沃斯低通滤波去椒盐);
B=double(J);
f2=fft2(J);
g2=fftshift(f1);
[M,N]=size(f2);
d0=40;
n1=floor(M/2);
n2=floor(N/2);
for i=1:M
for j=1:N
d=sqrt((i-n1)^2+(j-n2)^2);
if d=d0
h=1;
else
h=0;
end
g2(i,j)=h*g2(i,j);
end
end
g2=ifftshift(g2);
g2=uint8(real(ifft2(g2)));
subplot(235);
imshow(g2);title(理想低通滤波去椒盐);
(没有图像’saturn.tif’,用这个代替)
3. 梯度算子进行锐化。
I=imread(moon.tif);
H=fspecial(sobel);
TH=filter2(H
文档评论(0)