频谱扩展 matlab,使用MATLAB进行频谱分析 | 学步园
考研復試數字信號處理,今天遇到個問題,想用MATLAB驗證一下自己的想法,剛一用發現手生了不少,以前這東西我用的可是非常熟練,哎!編程這東西要經常玩才行喲!今天把筆記給記下來,不然以后用時有得半天找資料的!
一、用fft進行頻譜分析,探討頻率分辨率與頻譜分析的關系:
是FFT分析代碼
clear all ;%清空內存變量
clc ;%清屏
%確定傅里葉分析常數
Fs=256;%采樣頻率
Tp=0.25 ;%采樣持續時間,這里可以使用不同的采樣時間,觀察采樣分辨率對頻譜分析的影響,
%如果Tp=0.2,下面信號頻率為10就看不到,如果是0.25頻率分辨率剛好為2,可以看到頻率為8和10的分量,
%原始信號
f1=10 ;%頻率一
f2=8 ;%頻率二
t=0:1/Fs:Tp ;
figure(1) ;
y=cos(2*pi*f1*t)+cos(2*pi*f2*t) ; %原始信號
stem(t,y) ;%畫出原始信號
%傅里葉變換
N=2^(ceil(log2(length(y)))) %確定信號FFT長度
F=Fs/N %頻率分辨率
y_fft=fft((y),N) ;%快速傅里葉變換
f=0:Fs/(N-1):Fs ;
figure(2) ;
stem(f,abs(y_fft)) ;
axis([0,20,0,100]) ;
二、觀察一個信號后面補零,對其DFT的影響,通過實驗發現沒有什么影響!信號補零方法我找了老半天,忘記序列組合方式和產生零序列的方法,這里給記住了:y=[y,zeros(1,100)] ;
三、對原始信號進行零插值,觀察信號頻譜,發現信號頻譜收縮了
四、對原始信號進行抽取,發現原始信號頻譜擴展了
總結
以上是生活随笔為你收集整理的频谱扩展 matlab,使用MATLAB进行频谱分析 | 学步园的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: PHP条件语句总结,PHP 条件语句基本
- 下一篇: matlab语法手册下载,MATLAB及