多媒体与数字图像处理第三次实验

上传人:n**** 文档编号:37460236 上传时间:2018-04-16 格式:DOC 页数:45 大小:3.97MB
返回 下载 相关 举报
多媒体与数字图像处理第三次实验_第1页
第1页 / 共45页
多媒体与数字图像处理第三次实验_第2页
第2页 / 共45页
多媒体与数字图像处理第三次实验_第3页
第3页 / 共45页
多媒体与数字图像处理第三次实验_第4页
第4页 / 共45页
多媒体与数字图像处理第三次实验_第5页
第5页 / 共45页
点击查看更多>>
资源描述

《多媒体与数字图像处理第三次实验》由会员分享,可在线阅读,更多相关《多媒体与数字图像处理第三次实验(45页珍藏版)》请在金锄头文库上搜索。

1、多媒体与数字图像处理第三次实验多媒体与数字图像处理第三次实验注意提交实验报告的文件名格式(姓名注意提交实验报告的文件名格式(姓名+学号学号+实验报告三实验报告三.doc)图像变换与滤波器设计图像变换与滤波器设计一、实验目的一、实验目的1. 了解傅立叶变换、离散余弦变换及 Radon 变换在图像处理中的应用 2. 了解 Matlab 线性滤波器的设计方法二、实验内容二、实验内容1.傅立叶变换傅立叶变换A)傅里叶变换基本操作I = imread(at3_1m4_04.tif); imshow(I); title(源图像);J = fft2(I); figure, imshow(J); title(

2、傅立叶变换);%频移JSh = fftshift(J); figure, imshow(JSh); title(傅立叶变换频移);%直接傅立叶反变换Ji = ifft2(J); figure, imshow(Ji/256); title(直接傅立叶变换);%幅度JA = abs(J); iJA = ifft2(JA); figure, imshow(iJA/256); title(幅度傅立叶反变换);%相位JP = angle(J); iJP = ifft2(JP); figure, imshow(abs(iJP)*100); title(相位傅立叶反变换); B)利用 MATLAB 软件实现

3、数字图像傅立叶变换的程序 I=imread(at3_1m4_04.tif); %读入原图像文件 imshow(I); %显示原图像fftI=fft2(I); %二维离散傅立叶变换 sfftI=fftshift(fftI); %直流分量移到频谱中心 RR= real(sfftI); %取傅立叶变换的实部 II= imag(sfftI); %取傅立叶变换的虚部 A=sqrt(RR.2+II.2);%计算频谱幅值 A=(A-min(min(A))/(max(max(A)-min(min(A)*225;%归一化 figure; %设定窗口 imshow(A); %显示原图像的频谱C)绘制一个二值图像矩

4、阵,并将其傅立叶函数可视化。f=zeros(30,30); f(5:24,13:17)=1; imshow(f,notruesize)F=fft2(f); F2=log(abs(F); figure,imshow(F2,-1 5,notruesize);colormap(jet); F=fft2(f,256,256); %零填充为 256256 矩阵figure,imshow(log(abs(F),-1 5,notruesize);colormap(jet); F2= fftshift(log(1+abs(F); %将图像频谱中心由矩阵原点移至矩阵中心figure,imshow(log(abs

5、(F2),-1 5,notruesize);colormap(jet);D)利用傅立叶变换分析两幅图像的相关性,定位图像特征。读入图像eurotext.tif, 抽取其中的字母a。bw=imread(eurotext.tif); a=bw(177:203, 424:444); imshow(bw);figure,imshow(a);C=real(ifft2(fft2(bw).*fft2(rot90(a,2), 800,1024);%求相关性figure,imshow(C,);thresh=max(C(:); figure,imshow(Cthresh-10)figure,imshow(Cthr

6、esh-15)请分析改程序显示图的含义。 先读取图片,然后取出 x=177:203, y=424:444 之间的图片,在求原图和 a 的相关性,然后檫黑2.离散余弦变换离散余弦变换(DCT)A)使用 dct2 对图像autumn.tif进行 DCT 变换。RGB=imread(autumn.tif); imshow(RGB)I=rgb2gray(RGB); %转换为灰度图像figure,imshow(I)J=dct2(I); figure,imshow(log(abs(J),),colormap(jet(64);colorbar;B)将上述 DCT 变换结果中绝对值小于 10 的系数舍弃,使用

7、 idct2 重构图像并与原 图像比较。RGB=imread(autumn.tif); I=rgb2gray(RGB); %转换为灰度图像J=dct2(I); figure,imshow(I)K=idct2(J); figure,imshow(K,0 255)J(abs(J)10)=0; %舍弃系数K2=idct2(J); figure,imshow(K2,0 255)C)利用 DCT 变换进行图像压缩。I=imread(cameraman.tif); I=im2double(I); T=dctmtx(8); B=blkproc(I,8,8,P1*x*P2,T,T); mask=1 1 1 1

8、 0 0 0 01 1 1 0 0 0 0 01 1 0 0 0 0 0 01 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 0; B2=blkproc(B,8 8,P1.*x,mask); I2=blkproc(B2,8 8,P1*x*P2,T,T); imshow(I)figure,imshow(I2)3.*Matlab 线形滤波器设计线形滤波器设计采用频率变换方式,通过一维最优波纹 FIR 滤波器创建二维 FIR 滤波器)。b=remez(10,0 0.4 0.6 1,1 1 0 0); %

9、阶次,频率向量,对应的理想幅频响应h=ftrans2(b); H,w=freqz(b,1,64,whole); colormap(jet(64) plot(w/pi-1,fftshift(abs(H);%使 x 轴取值 0 处对应曲线中心figure,freqz2(h,32 32)三、思考题三、思考题1. 傅里叶变换有哪些重要的性质? 线性性质、尺度变换性质、对偶性、平移性质 2. 简述傅立叶频谱搬移的原理将信号乘以所谓的载频信号或t0costsin03. 简述 Fourier 系数幅度、相位的物理意义。对幅度谱,是对信号轮廓和形状的描述;对相位谱,是对信号位置的描述4. 图像的二维频谱在显示

10、和处理时应注意什么?运用对数形式能增加显示细节,为了便于分析,使用 fftshift 函数将频谱的零频分 量移至频谱的中心。进行傅里叶变换的图像应该是灰度图形,原 rgb 彩色图像无法 进行相应变换。 5. 简述离散余弦变换(DCT)的原理。 DCT 变换利用傅立叶变换的性质。采用图像边界褶翻将像变换为偶函数形式,然后 对图像进行二维傅立叶变换,变换后仅包含余弦项,所以称之为离散余弦变换。形态学操作形态学操作一、实验目的一、实验目的1. 了解膨胀和腐蚀的 Matlab 实现方法 2. 掌握图像膨胀、腐蚀、开启、闭合等形态学操作函数的使用方法 3. 了解二进制图像的形态学应用二、实验内容二、实验

11、内容1.图像膨胀图像膨胀A)对包含矩形对象的二进制图像进行膨胀操作。BW=zeros(9,10); BW(4:6,4:7)=1; imshow(BW,notruesize)se=strel(square,3); % 3x3 正方形结构元素BW2=imdilate(BW,se); % 膨胀操作figure,imshow(BW2,notruesize)B)改变上述结构元素类型(如:line, diamond, disk 等),重新进行膨胀操作。Disk,3: BW=zeros(9,10);BW(4:6,4:7)=1;imshow(BW,notruesize)%se=strel(square,3);

12、 % 3x3 正方形结构元素 se=strel(disk,3);BW2=imdilate(BW,se); % 膨胀操作 figure,imshow(BW2,notruesize)C)对图像eurotext.tif进行上述操作,观察不同结构元素膨胀的效果。BW3=imread(eurotext.tif); imshow(BW3)se2=strel(line,11,90);% 11x90 线型结构元素 BW4=imdilate(BW3,se2); % 膨胀操作figure,imshow(BW4)2.图像腐蚀图像腐蚀A)对图像circbw.tif进行腐蚀操作。BW1=imread(circbw.ti

13、f); se=strel(arbitrary,eye(5);BW2=imerode(BW1,se,same); % 腐蚀操作imshow(BW1)figure,imshow(BW2)B)对图像eurotext.tif进行腐蚀操作。BW=imread(eurotext.tif); se=strel(line,8,80); % 8x80 线型结构元素 BW2=imerode(BW,se,same); % 腐蚀操作imshow(BW)figure,imshow(BW2)3.膨胀与腐蚀的综合使用膨胀与腐蚀的综合使用A)从原始图像circbw.tif中删除电流线,仅保留芯片对象。 方法一:先腐蚀(ime

14、rode),再膨胀(imdilate);BW1=imread(circbw.tif); imshow(BW1)se=strel(rectangle,40 30); %选择适当大小的矩形结构元素 BW2=imerode(BW1,se,same);%先腐蚀,删除较细的直线figure,imshow(BW2)BW3=imdilate(BW2,se); %再膨胀,恢复矩形的大小figure,imshow(BW3)方法二:使用形态开启函数(imopen)。BW1=imread(circbw.tif); imshow(BW1)se=strel(rectangle,40 30); BW2=imopen(BW

15、1,se);%开启操作figure,imshow(BW2)B)改变结构元素的大小,重新进行开启操作,观察处理结果。se=strel(rectangle,20 10); se=strel(rectangle,50 40);C)置结构元素大小为4 3,同时观察形态开启(imopen)与闭合(imclose)的效果,总结 形态开启与闭合在图像处理中的作用。I=imread(circbw.tif); imshow(I) se=strel(rectangle,4 3); I1=imopen(I,se);%开启操作 I2=imclose(I,se);%闭合操作figure,imshow(I1)figure,imshow(I2)D)综合实例I=imread(aeroplane2.jpg);level = graythresh(I); %得到合适的阈值 bw = im2bw(I,level); %二值化 SE = strel(square,3); %设置膨胀结构元素 BW1 = imdilate(bw,SE);

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 电子/通信 > 综合/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号