1.首先学习下傅里叶变换的东西。学高数的时候老师只是将傅里叶变换简单的说了下,并没有深入的讲解。而现在看来,傅里叶变换似乎是信号处理的方面的重点只是呢,现在就先学习学习傅里叶变换吧。
上面这幅图在知乎一个很著名的关于傅里叶变换的文章中的核心插图,我觉得这幅图很直观的就说明了傅里叶变换的实质。时域上的东西直观的反应到了频域上了,很完美的结合到了一起,233333. 无数正弦波叠加,震荡的叠加的最后结果竟然是方波,同理,任何周期性函数竟然都能拆分为傅里叶级数的形式,这样的简介与优雅,真令人折服。
2.MATLAB对信号做频谱分析
代码:(1)对 f1 = Sa(2t)的频谱分析
1 clear;clc; 2 hold on; 3 R=0.05; 4 t=-1.2:R:1.2; 5 t1 = 2*t; 6 f1=sinc(t1); %Sa函数 7 subplot(1,2,1),plot(t,f1) 8 xlabel('t'),ylabel('f1') 9 axis([-2,2,-0.3,1.2]); %写出Sa函数上下限 10 11 N=1000; 12 k=-N:N; 13 W1=40; 14 W=k*W1/N; 15 F=f1*exp(-j*t'*W)*R; %f1的傅里叶变换 16 F=real(F); %取F的实部 17 subplot(1,2,2),plot(W,F) 18 xlabel('W'),ylabel('F(jw)')
结果如下图:
(2)对 f2 = u(t+2) - u(t-2)的频谱分析
1 R=0.05; 2 t=-3:R:3; 3 f2=(t>=-2)-(t>=2); 4 subplot(1,2,1),plot(t,f2) 5 grid on; 6 xlabel('t'),ylabel('f2') 7 axis([-3,3,-0.5,1.5]); 8 9 N=1000;k=-N:N; 10 W1=40; 11 W=k*W1/N; 12 F=f2*exp(-j*t'*W)*R; 13 F=real(F); 14 subplot(1,2,2),plot(W,F) 15 grid on; 16 xlabel('W'),ylabel('F(jw)')
结果如下图:
(3)对f3 = t[u(t+1) - u(t-1) ]的频谱分析
1 R=0.05