matlab数字图像处理实验报告.docx
- 文档编号:25009363
- 上传时间:2023-06-03
- 格式:DOCX
- 页数:20
- 大小:1.48MB
matlab数字图像处理实验报告.docx
《matlab数字图像处理实验报告.docx》由会员分享,可在线阅读,更多相关《matlab数字图像处理实验报告.docx(20页珍藏版)》请在冰豆网上搜索。
matlab数字图像处理实验报告
学通大重庆交
告生实验报学
实验课程名称《数字图像处理》课程上机实验
河海学院仿真实验室开课实验室
河海学院学院
级地理信息系统08年级专业
姓学生名
学号08260129
时间2011至2012学年第1学期
实验一图像显示
本次实验得分
【实验内容】)1imread读取图像。
使用MATLAB图像读取函数)2显示图像。
MATLAB图像显示函数imshow使用)3为图像添加色带。
MATLAB添加色带函数colorbar使用【实验目的】)1图像读取和显示函数的应用方法。
掌握MATLAB)2了解如何为图像添加色带。
【实验结果】(放置处理前图像)
(放置处理后图像)
2-12-5-32-10
【程序说明】bw1a=imread('yq.jpg');e=imread('yq.jpg');
whos
a=double(a);imshow(e);
2-5-3iptsetpref('ImshowTrues%a=uint8(a);结果图%ize','manual');imshow(a);
figure,imshow(e);
%savesaturn.data使用一个调色板来显示一%iptsetpref('ImshowTrues-ascii;
副二进制图像ize','auto');saveyu.texta-ascii;figure,imshow(bw,[10bw1=zeros(20,20);结果图%2-10;001]);bw1(2:
2:
18,2:
2:
18)=1;2-10
%结果图figure,imshow(bw1,'n
otruesize');
实验二图像运算
本次实验得分
【实验内容】)1MATLAB使用滑动邻域操作函数nlfilter对图像进行处理。
)2使用MATLAB分离邻域操作函数blkproc对图像进行处理。
【实验目的】)1掌握滑动邻域操作函数的应用方法。
)2掌握分离邻域操作函数的应用方法。
【实验结果】(放置处理后图像)(放置处理前图像)
Jpg2-14.
【程序说明】(放置程序段)滑动邻域操作)%ó.23(分离邻域操作1)%ó.25(i=imread('2-14.jpg');i=imread('2-14.jpg');
f=inline('max(x(:
))');f=inline('uint8(round(mean2(x)*ones(sizi2=nlfilter(i,[33],f);e(x))))');
i2=blkproc(i,[88],f);subplot(1,2,1),imshow(i);
i3=blkproc(i,[18],f);subplot(1,2,2),imshow(i2);subplot(1,3,1),imshow(i);3-23.jpg%结果图:
subplot(1,3,2),imshow(i2);
subplot(1,3,3),imshow(i3);
3-25.jpg结果图:
%
实验三图像变换
本次实验得分
【实验内容】)1构造一矩形或正方形或菱形或其他形状的二进制图像。
)2对图像进行处理。
使用MATLAB二维傅里叶变换函数fft2【实验目的】)1掌握二进制图像的构造方法。
2)掌握二维傅里叶变换函数的应用方法。
【实验结果】(放置处理前图像)无(放置处理后图像)
4-2.jpg4-4.jpg4-5.jpg4-6.jpg【二维傅里叶变换数学计算】(放置数学公式)C=ifft2(fft2(A).*fft2(B));
【程序说明】(放置程序段):
4-5.jpg%结果图imshow(F2,[-1
%%fig_4.6
5],'notruesize');f=zeros(40,40);
%%fig_4.3
f(6:
24,13:
17)=1;colormap(jet);
F=fft2(f,256,256);imshow(f,'notruesize4-4.jpg%结果图:
F2=fftshift(F);');
imshow(log(abs(F2)),%%fig_4.8
结果图:
%4-2.jpg
[-15]);
F=fft2(f,256,256);
colormap(jet);imshow(log(abs(F)),[%%fig_4.7
:
4-6.jpg
F=fft2(f);
结果图-15]);
%colormap(jet);
F2=log(abs(F));
实验四滤波和滤波器设计
本次实验得分
【实验内容】)1创建一个近似圆对称的带通滤波器,通频fwind2二维窗口设计函数应用MATLAB,输出滤波器的频率响应曲线。
0.1~0.5带为
【实验目的】)1滤波器设计方法。
了解MATLAB2)创建带通滤波器的方法。
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
结果图:
%
实验五二值形态学操作
本次实验得分
实验内容】【)1对图像进行膨胀操作。
图像膨胀函数imdilate应用MATLAB)2对图像进行腐蚀操作。
imreodeMATLAB应用图像腐蚀函数【实验目的】)1MATLAB图像膨胀和图像腐蚀基本算法。
了解2)的使用方法。
imdilate和图像腐蚀函数imreodeMATLAB掌握图像膨胀【实验结果】(放置处理后图像)
6-1.jpg6-3.jpg
【图像膨胀和图像腐蚀数学计算】(放置数学公式)
【程序说明】(放置程序段)
se=strel('rectangle',[4030]);BW=zeros(9,10);
bw1=imread('6-2.bmp');BW(5:
6,5:
7)=1;
bw2=imerode(bw1,se);SE=strel('square',3);
imshow(bw2);BW2=imdilate(BW,SE);
%结果图:
subplot(1,2,1),imshow(BW);6-3.jpg
subplot(1,2,2),imshow(BW2);
6-1.jpg结果图:
%
实验六图像的空间变换
本次实验得分
【实验内容】)1读取两幅图像。
)2对两幅图像进行匹配。
【实验目的】)1图像匹配方法。
掌握MATLAB【实验结果】(放置处理前图像)
(放置处理后图像)
7-10.jpg
7-9.jpg
【程序说明】(放置程序段)
input_points=[120.708693.9772orthophoto=imread('23_s.jpg');
319.222278.9202subplot(1,2,1),imshow(orthophoto)
127.9838291.6312unregistered=imread('23_s.jpg');
352.0729281.1445];subplot(1,2,2),imshow(unregistered)
input_points_corr=cpcorr(input_points,bcpselect(unregistered(:
:
1),orthophoto)
ers);ase_points,...
%%
[max_c,imax]=max(abs(c(:
)));
unregistered(:
:
1),orthophoto)
[ypeak,xpeak]=ind2sub(size(c),imax
(1))input_points_corr=[120.708693.9772
;
319.2222
corr_offset=[(xpeak-size(sub_lily,2))78.9202
(ypeak-size(sub_lily,1))];
127.1064
rect_offset=[(rect_flowers
(1)-rect_lily(1289.8935
))
352.0729
281.1445];
(rect_flowers
(2)-rect_lily
(2))];mytform=cp2tform(input_points,base_poffset=corr_offset+rect_offset;oints,'projective');
xoffset=offset
(1);registered=imtransform(unregistered,myyoffset=offset
(2);tform)
%%
7-9.jpg%结果图:
xbegin=xoffset+1;
xend=xoffset+size(lily,2);
ybegin=yoffset+1;
%%ch7_8_11
yend=yoffset+size(lily,1);
lily=imread('7-8.jpg');
extracted_lily=flowers(ybegin:
yend,xbeflowers=imread('7-8.jpg');
gin:
xend,:
);
subplot(1,2,1),imshow(lily);
ifisequal(lily,extracted_lily)
subplot(1,2,2),imshow(flowers);
%%
disp('lily.tifwasextractedfrom
flowers.tif')rect_lily=[93138169];
endrect_flowers=[19068235210];
%%
sub_lily=imcrop(lily,rect_lily);
recovered_lily=uint8(zeros(size(flowers)sub_flowers=imcrop(flowers,rect_flowe));
rs);
recovered_lily(ybegin:
yend,xbegin:
xend[sub_lily1,rect_lily]=imcrop(lily);
:
)=lily;
[sub_flowers1,rect_flowers]=imcrop(flo[m,n,p]=size(flowers)wers);
mask=ones(m,n);
subplot(1,2,1),imshow(sub_lily1)
i=find(recovered_lily(:
:
1)==0);subplot(1,2,2),imshow(sub_flowers1)
mask(i)=.2;
%%
figure,imshow(flowers(:
:
1))c=normxcorr2(sub_lily(:
:
1),sub_flowerholdon
s(:
:
1));
h=imshow(recovered_lily);figure,surf(c),shadingflat
set(h,'AlphaData',mask)
7-10.jpg
%%
结果图:
%[sub_lily,rect_lily]=imcrop(lily);
[sub_flowers,rect_flowers]=imcrop(flow
实验七图像增强
本次实验得分
【实验内容】)1读取一副图像。
2)对图像进行均衡化操作。
histeq应用MATLAB直方图均衡化函数【实验目的】)1MATLAB直方图均衡化方法。
掌握【实验结果】(放置处理后图像)
8-11.jpg
8-4-2.jpg
【程序说明】(放置程序段)(放置处理前后图像的数据矩阵)
i=imread('84.gif');i=imread('84.jpg');
[j,t]=histeq(i);
imshow(i)
figure,plot((0:
255)/255,t)figure,imcontour(i)
8-11.jpg
8-4-2.jpg%结果图:
%结果图:
A=
%结果:
A=[172411815
15182412357141617
1416231320225746
22132041012192136
12103211911182529]
181129
25
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- matlab 数字图像 处理 实验 报告