实验五 图像频域变换

更新时间:2023-12-26 22:28:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

实验五 图像频域变换

一、 实验目的

1. 了解傅里叶变换在图像处理中的应用

2. 利用Matlab语言编程实现图像的频域变换。

二、 实验内容

1. 打开并显示一幅图像,对其进行Fourier变换,观察其频谱图像。 2. 用两种方法将图像的频域中心移动到图像中心,然后观察其Fourier变换后的频谱图像。

(见Fourier变换的性质:f(x,y) (-1)x+y ? F(u-N/2,v-N/2))对图像的Fourier变换频谱进行滤波,如:将频谱超过某个给定的值(均值或2/3均值)的变换值变为0,然后再求其Fourier逆变换,比较所得图像与原图像的差别。

3. 对图像进行离散余弦变换,并观察其变换域图像。

要求:用Matlab语言进行编程实现上述功能,同时也应该熟悉用Matlab中现有的函数来实现。

傅里叶变换

A) 傅里叶变换基本操作 I = imread(你的图像); 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(‘原图像名.gif’); %读入原图像文件 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, 'InitialMagnification','fit') F=fft2(f);

F2=log(abs(F));

figure,imshow(F2,[-1 5], 'InitialMagnification','fit');colormap(jet); F=fft2(f,256,256); %零填充为256×256矩阵 Figure;

imshow(log(abs(F)),[-1 5], 'InitialMagnification','fit'); colormap(jet);

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

imshow(log(abs(F2)),[-1 5], 'InitialMagnification','fit'); colormap(jet);

D) 利用傅里叶变换分析两幅图像的相关性,定位图像特征。读入图像‘text.tif’,抽取

其中的字母‘a’。 bw=imread('text.png'); a=bw(59:71,81:91); imshow(bw);

figure,imshow(a);

C=real(ifft2(fft2(bw).*fft2(rot90(a,2),256,256)));%求相关性 figure,imshow(C,[]); thresh=max(C(:));

figure,imshow(C>thresh-10) figure,imshow(C>thresh-15)

*离散余弦变换(DCT)

使用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;

三、 思考题

1. 傅里叶变换有哪些重要的性质? 2. 简述傅里叶频谱搬移的原理

3. Fourier系数幅度、相位的物理意义是什么?

四、 实验报告要求

1、 描述实验的基本步骤,用数据和图片给出各个步骤中取得的实验结果和源代码,并

进行必要的讨论,必须包括原始图像及其计算/处理后的图像。 2、 按上机报告的撰写规范完成实验报告。报告不得相互抄袭或拷贝,否则一律不及格。 3、 实验报告至少包括以下内容:

① 实验目的;②实验内容和步骤;③实验结果 注:实验时间为上机时间 4、 实验报告由每班学习委员统一收齐,并于下一次实验上课的时候上交。 5、 每次实验必须自己保存好实验结果,以备下次实验时使用。

本文来源:https://www.bwwdw.com/article/ss0x.html

Top