matlab时域数据转频域,从时域和频域来解析傅⾥叶变换(含
代码和性质)
冒泡~⼗⼆⽉啦!艰难的⼗⼀⽉总算是熬过去,⼗⼆⽉希望少熬⼀点吧(不可能)。
【题外话:傅⾥叶变换讲道理应该是⼤⼀⾼数就学习,然⽽当时的⽼师因为考试不考就放弃了教学,于是乎现在的我学起来真是恶补的痛苦】
傅⾥叶变换
傅⾥叶变换实质涉及的是频域函数和时域函数的转换。
概念解释
a.先引⼊时域和频域这两个概念的解释。
时域
时域是真实世界,是惟⼀实际存在的域。可以这样理解,从我们出⽣开始,所接触的这个世界就是随着时间在变化的,是在运动的。
频域
频域它不是真实的,⽽是⼀个数学构造。如果说时域是惟⼀客观存在的域,那么频域是⼀个遵循特定规则的数学范畴,频域也被⼀些学者称为上帝视⾓。结合上⾯对时域的理解,如果时域是运动永不停⽌的,那么频域就是静⽌的。
正弦波是频域中唯⼀存在的波形,这是频域中最重要的规则,即正弦波是对频域的描述,因为频域中的任何波形都可⽤正弦波合成。
通过图⽚来直观解释:
在时域⾥⾯,⼀段⾳乐是什么?是⼀个随着时间变化的震动(我们可以观察到钢琴的琴弦⼀会上⼀会下的摆动)。
相⽐较,在频域⾥⾯,⼀段⾳乐⼜是什么?是⼀个个⾳符,是乐谱。⾳符的个数是有限且固定的,但可以组合出⽆限多的乐曲。
b.接下来再讲解两个概念 :频谱和相位谱
频谱
在这⾥先引⼊⼀个通俗的解释:
如上图所⽰:
第⼀幅图是⼀个余弦波 cos(x)
第⼆幅图是 2 个余弦波的叠加 cos (x) +a.cos (3x)
第三幅图是 4 个余弦波的叠加
第四幅图是 10 个余弦波的叠加
那么问题来了:
随着正弦波数量逐渐的增长,他们最终会叠加成⼀个标准的矩形,那么可以推出什么?
不仅仅是矩形,你能想到的任何波形都是可以如此⽅法⽤正弦波叠加起来的。
接下来我们换⼀个⾓度来看看:
从侧⾯看就是矩形波在频域的样⼦,是不是完全认不出来了?教科书⼀般就给到这⾥然后留给了读者⽆穷的遐想,以及⽆穷的吐槽,其实教科书只要补⼀张图就⾜够了:频域图像,也就是俗称的频谱。
对⽐展⽰:
image.png
可以看出,从时域来看,我们会看到⼀个近似为矩形的波,⽽我们知道这个矩形的波可以被差分为⼀些正弦波的叠加。⽽从频域⽅向来看,我们就看到了每⼀个正弦波的幅值,可以发现,在频谱中,偶数项的振幅都是0,也就对应了图中的彩⾊直线。振幅为 0 的正弦波。
正⾯--时域图像 侧⾯--频域图像
动图展⽰:
相位谱
频谱只代表了⼀个正弦函数的幅值,⽽要准确描述⼀个正弦函数,我们不仅需要幅值,还需要相位,不同相位决定了波的位置,所以对于频域分析,仅仅有频谱(振幅谱)是不够的,我们还需要⼀个相位谱。
频谱的重点是侧⾯看,相位谱的重点则是从下⾯看。
如上图所⽰:投影点我们⽤粉⾊点来表⽰,红⾊的点表⽰离正弦函数频率轴最近的⼀个峰值,⽽相位差就是粉⾊点和红⾊点⽔平距离除以周期。将相位差画到⼀个坐标轴上就形成了相位谱。
【这⾥需要纠正⼀个概念:时间差并不是相位差。如果将全部周期看作2Pi或者360度的话,相位差则是时间差在⼀个周期中所占的⽐例。我们将时间差除周期再乘2Pi,就得到了相位差。】
傅⾥叶变换
为什么需要傅⾥叶变换?
如下图所⽰:上⾯我们能看到的仅仅是⼀个类似正弦波的波形,其幅值在按照⼀定的规律变化。如何记载这个波形的信息呢?尤其是量化的记载!是很困难的。那么这个时候引⼊傅⾥叶变换就可以得到⼀个频谱(幅值谱),主要包括3、5、7、9次谐波,⼀⽬了然!
傅⾥叶变换是⼀种信号分析⽅法,让我们对信号的构成和特点进⾏深⼊的、定量的研究。
把信号通过频谱的⽅式(包括幅值谱、相位谱和功率谱)进⾏准确的、定量的描述。
这就是傅⾥叶变换的主要⽬的。
公式定义:
可以这样理解,
①为频率域的函数F(ω)表⽰为时间域的函数f(t)的积分形式
②为时间域的函数f(t)表⽰为频率域的函数F(ω)的积分matlab傅里叶变换的幅度谱和相位谱
傅⾥叶变换过程图解:
其他性质
参考:百度百科
Matlab实现(频谱和相位谱)
%% ⼆维傅⽴叶变换
%读取图⽚
I=imread('Naruto.jpg');
img=rgb2gray(I);
%幅值图和相位谱
%进⾏傅⽴叶变换
f=fft2(img); %傅⾥叶变换
f=fftshift(f); %使图像对称,中⼼化
r=real(f); %图像频域实部
i=imag(f); %图像频域虚部
margin=log(sqrt(r.^2+i.^2)); %图像幅度谱,加log便于显⽰phase=real(angle(f)*180/pi); %图像相位谱
figure
subplot(1,3,1),imshow(img),title('源图像');
subplot(1,3,2),imshow(margin,[]),title('图像幅度谱');
subplot(1,3,3),imshow(phase,[]),title('图像相位谱');
Ending~在⾃我理解的基础上完成了资料的搬运是很不容容易了!⼗⼆⽉加油鸭!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论