图像的傅里叶变换
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
图像的傅里叶变换
成绩
实验论文
题目:图像的傅里叶变换
学生姓名:代朋车
学生学号:1114020207
系别:电气信息工程学院
专业:电子信息工程
年级:2011级
任课教师:沈晓波
电气信息工程学院制
2013年12月
图像的傅里叶变换
学生:代朋车
任课教师:沈晓波
电气信息工程学院 电子信息工程
1实验题目
图像的傅里叶变换
2实验对象
声音信号(自己的声音)/图像信号(自选)/自定义时域信号
3 实验任务
(1) 自行录制一段自己的语音或下载一段音乐,完成FFT 运算,具体参数自行规
定
基本要求:显示原语音信号图像、FFT 频谱,要求以上图像显示在同一个fig ,最终还原语音信号。
(2) 自行下载一幅图,格式不限,完成FFT 运算,具体参数可自行设定。
基本要求:显示原点在中心位置,画出幅度谱、相位谱能量或功率谱、虚部、实部,最终还原图像信号,要求以上图像显示在同一个fig 。
4 实验原理
4.1理论基础
连续傅里叶变换的定义:函数f(x)的一维连续傅里叶变换由下式定义: 2()()j ux F u f x e dx π∞
--∞=⎰
式中, 21J =-。 F(u)的傅里叶反变换定义为:
2()()j ux f x F u e du π∞
-∞==⎰ 这里f(x)是实函数,它的傅里叶变换F(u)通常是复函数。F(u)的实部、虚部、振幅、
能量和相位分别表示如下:
所示。F(u)傅里叶频谱、相位谱和能量谱分别表示如下;
F(u)=R(u)+jI(u)
傅里叶频谱 )()(R |F |22u I u u +=)(
相位谱 )(/)(arctan u R u I u =)(φ
能量谱 )()(|)(|222u I u R u F u +==E )
( 同连续函数的傅里叶变换一样,离散函数的傅里叶变换也可推广到二维的情形,其二维离散傅里叶变换定义为: F(u,v)=∑∑==+1-N 0x 1-N 0y vy )/N (ux j2y)e
F(x ,1πN
式中,u=0,1,2,…,N-1, v=0,1,2,…,N-1。二维离散傅里叶反变换定义为: F(x,y)=∑∑-=-=+101
0/)(2),(1N u N v N vy ux j e v u F N π 式中,x=0,1,2,…,N-1, y=0,1,2,…,N-1,u,v 是频率变量。与一维情况一样,二维函数的离散傅里叶频谱、相位谱和能量谱为:
傅里叶频谱 F(u,v)=),(),(22v u I v u R +
相位谱 ),(/),(arctan ,v u R v u I v u =)(φ
能量谱 ),(),(|),(|,222v u I v u R v u F v u +==E )
( 4.2设计方案
4.2.1对音频进行FFT 运算
clear all;
fs=8000;
x1=wavread('安妮的仙境.wav');
t=(0:length(x1)-1)/8000;
subplot(1,2,1);
plot(t,x1)
grid on;axis tight;
title('原始语音信号');
xlabel('time(s)');
ylabel('幅度');
y1=fft(x1,2048);
f=fs*(0:1023)/2048; %对信号做2048点FFT 变换
subplot(1,2,2);
plot(f,abs(y1(1:1024))) %做原始语音信号的FFT频谱图grid on;axis tight;
title('原始语音信号FFT频谱')
xlabel('Hz');
ylabel('幅度');
fa=41400;
wavplay(x1,fa);
4.2.2对图像进行FFT运算
clear;
J=imread('autumn.tif');
I=rgb2gray(J);
subplot(3,3,1);
imshow(real(I));
%I=(:,:,2);
title('(1)原图');
fftI=fft2(I);
sfftI=fftshift(fftI);
RRFdp1=real(sfftI);
IIFdp1=imag(sfftI);
a=sqrt(RRFdp1.^2+IIFdp1.^2);
a=(a-min(min(a)))/(max(max(a))-min(min(a)))*225;
subplot(3,3,2);
imshow(real(a));
title('(2)幅值谱');
b=angle(fftI);
subplot(3,3,3);
imshow(real(b));
title('(3)相位谱');
theta=30;
RR1=a*cos(theta);
II1=a*sin(theta);
fftI1=RR1+i.*II1;
C=ifft2(fftI1)*255;
subplot(3,3,4);
imshow(real(C));
title('(4)幅值谱重构图像');
MM=150;
RR2=MM*cos(angle(fftI));
II2=MM*sin(angle(fftI));
fftI2=RR2+i.*II2;
D=ifft2(fftI2);
subplot(3,3,5);