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

上传人:b****6 文档编号:12828890 上传时间:2023-06-08 格式:DOCX 页数:46 大小:3.78MB
下载 相关 举报
多媒体与数字图像处理第三次实验.docx_第1页
第1页 / 共46页
多媒体与数字图像处理第三次实验.docx_第2页
第2页 / 共46页
多媒体与数字图像处理第三次实验.docx_第3页
第3页 / 共46页
多媒体与数字图像处理第三次实验.docx_第4页
第4页 / 共46页
多媒体与数字图像处理第三次实验.docx_第5页
第5页 / 共46页
多媒体与数字图像处理第三次实验.docx_第6页
第6页 / 共46页
多媒体与数字图像处理第三次实验.docx_第7页
第7页 / 共46页
多媒体与数字图像处理第三次实验.docx_第8页
第8页 / 共46页
多媒体与数字图像处理第三次实验.docx_第9页
第9页 / 共46页
多媒体与数字图像处理第三次实验.docx_第10页
第10页 / 共46页
多媒体与数字图像处理第三次实验.docx_第11页
第11页 / 共46页
多媒体与数字图像处理第三次实验.docx_第12页
第12页 / 共46页
多媒体与数字图像处理第三次实验.docx_第13页
第13页 / 共46页
多媒体与数字图像处理第三次实验.docx_第14页
第14页 / 共46页
多媒体与数字图像处理第三次实验.docx_第15页
第15页 / 共46页
多媒体与数字图像处理第三次实验.docx_第16页
第16页 / 共46页
多媒体与数字图像处理第三次实验.docx_第17页
第17页 / 共46页
多媒体与数字图像处理第三次实验.docx_第18页
第18页 / 共46页
多媒体与数字图像处理第三次实验.docx_第19页
第19页 / 共46页
多媒体与数字图像处理第三次实验.docx_第20页
第20页 / 共46页
亲,该文档总共46页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

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

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

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

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

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

注意提交实验报告的文件名格式(姓名+学号+实验报告三.doc)

图像变换与滤波器设计

一、实验目的

1.了解傅立叶变换、离散余弦变换及Radon变换在图像处理中的应用

2.了解Matlab线性滤波器的设计方法

二、实验内容

1.傅立叶变换

A)傅里叶变换基本操作

I=imread('at3_1m4_04.tif');

imshow(I);

title('源图像');

J=fft2(I);

figure,imshow(J);

title('傅立叶变换');

%频移

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软件实现数字图像傅立叶变换的程序

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)绘制一个二值图像矩阵,并将其傅立叶函数可视化。

f=zeros(30,30);

f(5:

24,13:

17)=1;

imshow(f,'notruesize')

F=fft2(f);

F2=log(abs(F));

figure,imshow(F2,[-15],'notruesize');colormap(jet);

F=fft2(f,256,256);%零填充为256×256矩阵

figure,imshow(log(abs(F)),[-15],'notruesize');colormap(jet);

F2=fftshift(log(1+abs(F)));%将图像频谱中心由矩阵原点移至矩阵中心

figure,imshow(log(abs(F2)),[-15],'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(C>thresh-10)

figure,imshow(C>thresh-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的系数舍弃,使用idct2重构图像并与原图像比较。

RGB=imread('autumn.tif');

I=rgb2gray(RGB);%转换为灰度图像

J=dct2(I);

figure,imshow(I)

K=idct2(J);

figure,imshow(K,[0255])

J(abs(J)<10)=0;%舍弃系数

K2=idct2(J);

figure,imshow(K2,[0255])

C)利用DCT变换进行图像压缩。

I=imread('cameraman.tif');

I=im2double(I);

T=dctmtx(8);

B=blkproc(I,[8,8],'P1*x*P2',T,T');

mask=[11110000

11100000

11000000

10000000

00000000

00000000

00000000

00000000];

B2=blkproc(B,[88],'P1.*x',mask);

I2=blkproc(B2,[88],'P1*x*P2',T',T);

imshow(I)

figure,imshow(I2)

3.*Matlab线形滤波器设计

采用频率变换方式,通过一维最优波纹FIR滤波器创建二维FIR滤波器)。

b=remez(10,[00.40.61],[1100]);

%阶次,频率向量,对应的理想幅频响应

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,[3232])

三、思考题

1.傅里叶变换有哪些重要的性质?

线性性质、尺度变换性质、对偶性、平移性质

2.简述傅立叶频谱搬移的原理

将信号乘以所谓的载频信号

3.简述Fourier系数幅度、相位的物理意义。

 对幅度谱,是对信号轮廓和形状的描述;对相位谱,是对信号位置的描述

4.图像的二维频谱在显示和处理时应注意什么?

运用对数形式能增加显示细节,为了便于分析,使用fftshift函数将频谱的零频分量移至频谱的中心。

进行傅里叶变换的图像应该是灰度图形,原rgb彩色图像无法进行相应变换。

5.简述离散余弦变换(DCT)的原理。

DCT变换利用傅立叶变换的性质。

采用图像边界褶翻将像变换为偶函数形式,然后对图像进行二维傅立叶变换,变换后仅包含余弦项,所以称之为离散余弦变换。

形态学操作

一、实验目的

1.了解膨胀和腐蚀的Matlab实现方法

2.掌握图像膨胀、腐蚀、开启、闭合等形态学操作函数的使用方法

3.了解二进制图像的形态学应用

二、实验内容

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);%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.tif');

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’中删除电流线,仅保留芯片对象。

方法一:

先腐蚀(imerode),再膨胀(imdilate);

BW1=imread('circbw.tif');

imshow(BW1)

se=strel('rectangle',[4030]);%选择适当大小的矩形结构元素

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',[4030]);

BW2=imopen(BW1,se);%开启操作

figure,imshow(BW2)

B)改变结构元素的大小,重新进行开启操作,观察处理结果。

se=strel(‘rectangle’,[2010]);

se=strel(‘rectangle’,[5040]);

C)置结构元素大小为[43],同时观察形态开启(imopen)与闭合(imclose)的效果,总结形态开启与闭合在图像处理中的作用。

I=imread('circbw.tif');

imshow(I)

se=strel('rectangle',[43]);

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);%膨胀

SE1=strel('arbitrary',eye(5));%设置腐蚀结构元素

BW2=imerode(bw,SE1);%腐蚀

BW3=bwmorph(bw,'open');%开运算

BW4=bwmorph(bw,'close');%闭运算

imshow(I);

figure,imshow(bw);

figure,imshow(BW1);

figure,imshow(BW2);

figure,imshow(BW3);

figure,imshow(BW4);

三、思考题

1.结合实验内容,评价腐蚀运算与膨胀运算的效果。

腐蚀:

是一种消除边界点,使边界向内部收缩的过程。

可以用来消除小且无意义的物体。

膨胀:

是将与物体接触的所有背景点合并到该物体中,使边界向外部扩张的过程。

可以用来填补物体中的空洞。

2.结合实验内容,评价开运算与闭运算的效果。

开运算:

先腐蚀后膨胀的过程开运算。

用来消除小物体、在纤细点处分离物体、平滑较大物体的边界的同时并不明显改变其面积。

开运算通常是在需要去除小颗粒噪声,以及断开目标物之间粘连时使用。

其主要作用与腐蚀相似,与腐蚀操作相比,具有可以基本保持目标原有大小不变的优点。

闭运算:

先膨胀后腐蚀的过程称为闭运算。

用来填充物体内细小空洞、连接邻近物体、平滑其边界的同时并不明显改变其面积。

3.腐蚀、膨胀、开、闭运算的适用条件是什么?

腐蚀:

可以用来消除小且无意义的物体。

膨胀:

可以用来填补物体中的空洞。

开运算:

用来消除小物体、在纤细点处分离物体、平滑较大物体的边界的同时并不明显改变其面积。

闭运算:

用来填充物体内细小空洞、连接邻近物体、平滑其边界的同时并不明显改变其面积

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2