以下部分文字资料整合于网络,本文仅供自己学习用!
这是一幅很绝的一维傅里叶变换动态图
一个信号能表示成傅里叶级数的形式是有条件的,首先它必须是周期信号,第二必须是满足狄里赫利条件的周期信号。
分析其和频率有关部份,而不是和时间有关的部份,和时域一词相对。
(2),时域是描述数学函数或物理信号对时间的关系。
例如一个信号的时域波形可以表达信号随着时间的变化。
若考虑离散时间,时域中的函数或信号,在各个离散时间点的数值均为已知。
若考虑连续时间,则函数或信号在任意时间的数值均为已知。在研究时域的信号时,常会用示波器将信号转换为其时域的波形。
(3),两者相互间的变换
时域(信号对时间的函数)和频域(信号对频率的函数)的变换在数学上是通过积分变换实现。
对周期信号可以直接使用傅立叶变换,对非周期信号则要进行周期扩展,使用拉普拉斯变换。
(2),快速傅里叶变换有什么用?
函数或信号可以透过一对数学的运算子在时域及频域之间转换。和傅里叶变换作用一样!
(3),为什么要提出快速傅里叶变换?
人们想让计算机能处理信号 但由于信号都是连续的、无限的,计算机不能处理,于是就有了傅里叶级数、傅里叶变换,将信号由时域变到频域,把一个信号变为有很多个不同频率不同幅度的正弦信号组成,这样计算机就能处理了,但又由于傅里叶变换中要用到卷积计算,计算量很大,计算机也算不过来,于是就有了快速傅里叶变换,大大降低了运算量,使得让计算机处理信号成为可能。快速傅里叶变换是傅里叶变换的快速算法而已,主要是能减少运算量和存储开销,对于硬件实现特别有利。
(2),傅立叶变换以前,图像(未压缩的位图)是由对在连续空间(现实空间)上的采样得到一系列点的集合,我们习惯用一个二维矩阵表示空间上各点,则图像可由z=f(x,y)来表示。由于空间是三维的,图像是二维的,因此空间中物体在另一个维度上的关系就由梯度来表示,这样我们可以通过观察图像得知物体在三维空间中的对应关系。为什么要提梯度?因为实际上对图像进行二维傅立叶变换得到频谱图,就是图像梯度的分布图,当然频谱图上的各点与图像上各点并不存在一一对应的关系,即使在不移频的情况下也是没有。傅立叶频谱图上我们看到的明暗不一的亮点,实际上图像上某一点与邻域点差异的强弱,即梯度的大小,也即该点的频率的大小(可以这么理解,图像中的低频部分指低梯度的点,高频部分相反)。一般来讲,梯度大则该点的亮度强,否则该点亮度弱。这样通过观察傅立叶变换后的频谱图,也叫功率图,我们首先就可以看出,图像的能量分布,如果频谱图中暗的点数更多,那么实际图像是比较柔和的(因为各点与邻域差异都不大,梯度相对较小),反之,如果频谱图中亮的点数多,那么实际图像一定是尖锐的,边界分明且边界两边像素差异较大的。对频谱移频到原点以后,可以看出图像的频率分布是以原点为圆心,对称分布的。将频谱移频到圆心除了可以清晰地看出图像频率分布以外,还有一个好处,它可以分离出有周期性规律的干扰信号,比如正弦干扰,一副带有正弦干扰,移频到原点的频谱图上可以看出除了中心以外还存在以某一点为中心,对称分布的亮点集合,这个集合就是干扰噪音产生的,这时可以很直观的通过在该位置放置带阻滤波器消除干扰
(可以把s想象成一幅图像,傅里叶变换过程如下)
s=magic(2);%magic矩阵有一个神奇的特点:每行或者每列加起来都相等
f=fft2(s);
a=abs(f)
a =
10 0
2 4
>> f
f =
10 0
-2 -4
>> s
s =
1 3
4 2
%3*3的矩阵的操作结果
s=magic(3);
f=fft2(s);
a=abs(f)
a =
45.0000 0 0
0.0000 15.5885 5.1962
0.0000 5.1962 15.5885
>> f
f =
45.0000 0 0
0 + 0.0000i 13.5000 + 7.7942i 0.0000 - 5.1962i
0 - 0.0000i 0.0000 + 5.1962i 13.5000 - 7.7942i
>> s
s =
8 1 6
3 5 7
4 9 2
%4*4的矩阵操作结果
s=magic(4);%magic矩阵有一个神奇的特点:每行或者每列加起来都相等
f=fft2(s);
a=abs(f)
a =
136.0000 0 0 0
0 20.0000 11.3137 12.0000
0 45.2548 0 45.2548
0 12.0000 11.3137 20.0000
>> f
f =
1.0e+02 *
1.3600 0 0 0
0 0.2000 0.0800 + 0.0800i 0 - 0.1200i
0 0.3200 + 0.3200i 0 0.3200 - 0.3200i
0 0 + 0.1200i 0.0800 - 0.0800i 0.2000
>> s
s =
16 2 3 13
5 11 10 8
9 7 6 12
4 14 15 1
<span style="font-size:12px;">clear all;
close all;
I=imread('peppers.png');%读入图像
J=rgb2gray(I);%将图像转换为灰度图
K=fft2(J);%对图像进行二维快速傅里叶变换
K=fftshift(K);%将频谱转移到中心,其实就是在傅里叶变换时乘以了某个因子
L=abs(K/256);%取模
%显示图片
figure;
subplot(131);
imshow(I);title('原图像')
subplot(132);
imshow(J);title('被转换为灰度图后')
subplot(133);
imshow(uint8(L));title('二维傅里叶变换后的频谱图')</span>
因篇幅问题不能全部显示,请点此查看更多更全内容