(matlab)数字图像处理实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
重庆交通大学
学生实验报告
实验课程名称《数字图像处理》课程上机实验
开课实验室河海学院仿真实验室
学院河海学院
年级专业08级地理信息系统
学生姓名
学号********
时间2011 至2012 学年第 1 学期
实验一图像显示
【实验内容】
1)使用 MATLAB图像读取函数imread读取图像。
2)使用 MATLAB图像显示函数imshow显示图像。
3)使用 MATLAB添加色带函数colorbar为图像添加色带。
【实验目的】
1)掌握MATLAB图像读取和显示函数的应用方法。
2)了解如何为图像添加色带。
【实验结果】
(放置处理前图像)
(放置处理后图像)
2-1 2-5-3 2-10 【程序说明】
a=imread('yq.jpg');
a=double(a);
%a=uint8(a);
imshow(a);
%save saturn.dat a
-ascii;
save yu.text a -ascii; %结果图2-1 e=imread('yq.jpg');
imshow(e);
iptsetpref('ImshowTrues
ize','manual');
figure,imshow(e);
iptsetpref('ImshowTrues
ize','auto');
bw1=zeros(20,20);
bw1(2:2:18,2:2:18)=1;
figure,imshow(bw1,'n
otruesize');
bw1
whos
%结果图2-5-3
%使用一个调色板来显示一
副二进制图像
figure,imshow(bw,[1 0
0;0 0 1]);
%结果图2-10
本次实验得分
实验二图像运算
【实验内容】
1)使用 MATLAB滑动邻域操作函数nlfilter对图像进行处理。
2)使用 MATLAB分离邻域操作函数blkproc对图像进行处理。
【实验目的】
1)掌握滑动邻域操作函数的应用方法。
2)掌握分离邻域操作函数的应用方法。
【实验结果】
(放置处理前图像)(放置处理后图像)
2-14.Jpg
【程序说明】
(放置程序段)
%%f3.23(滑动邻域操作)
i=imread('2-14.jpg');
f=inline('max(x(:))');
i2=nlfilter(i,[3 3],f); subplot(1,2,1),imshow(i); subplot(1,2,2),imshow(i2); %结果图:3-23.jpg %%f3.25(分离邻域操作1)
i=imread('2-14.jpg');
f=inline('uint8(round(mean2(x)*ones(siz e(x))))');
i2=blkproc(i,[8 8],f);
i3=blkproc(i,[1 8],f);
subplot(1,3,1),imshow(i);
subplot(1,3,2),imshow(i2);
subplot(1,3,3),imshow(i3);
%结果图:3-25.jpg
本次实验得分
实验三图像变换
【实验内容】
1)构造一矩形或正方形或菱形或其他形状的二进制图像。
2)使用 MATLAB二维傅里叶变换函数fft2对图像进行处理。
【实验目的】
1)掌握二进制图像的构造方法。
2)掌握二维傅里叶变换函数的应用方法。
【实验结果】
(放置处理前图像)无
(放置处理后图像)
4-2.jpg 4-4.jpg 4-5.jpg 4-6.jpg 【二维傅里叶变换数学计算】
(放置数学公式)
C=ifft2(fft2(A).*fft2(B));
【程序说明】
(放置程序段)
%%fig_4.6
f=zeros(40,40);
f(6:24,13:17)=1; imshow(f,'notruesize ');
%结果图:4-2.jpg
%%fig_4.7
F=fft2(f);
F2=log(abs(F)); imshow(F2,[-1
5],'notruesize');
colormap(jet);
%结果图:4-4.jpg
%%fig_4.8
F=fft2(f,256,256);
imshow(log(abs(F)),[
-1 5]);
colormap(jet);
%结果图:4-5.jpg
%%fig_4.3
F=fft2(f,256,256);
F2=fftshift(F);
imshow(log(abs(F2)),
[-1 5]);
colormap(jet);
%结果图:4-6.jpg
本次实验得分
实验四滤波和滤波器设计
本次实验得分
【实验内容】
1)应用 MATLAB二维窗口设计函数fwind2创建一个近似圆对称的带通滤波器,通频带为0.1~0.5,输出滤波器的频率响应曲线。
【实验目的】
1)了解MATLAB滤波器设计方法。
2)掌握用二维窗口设计函数fwind2创建带通滤波器的方法。
【实验结果】
(放置处理后图像)
【程序说明】
(放置程序段)
[f1,f2]=freqspace(34,'meshgrid');
Hd1=ones(34);
r=sqrt(f1.^2+f2.^2);
Hd1((r<0.1)|(r>0.5))=0;
win=fspecial('gaussian',34,2);
win=win./max(win(:));
h3=fwind2(Hd1,win);
figure,freqz2(h3);
%结果图:5-9.jpg