首先對於fft來說,輸入的訊號是乙個按一定取樣頻率獲得的訊號序列,而輸出是每個取樣點對應的頻率的幅度(能量)。
下面詳細分析:
在fft的輸出資料中,第乙個值是直流分量的振幅(這樣對應週期有無窮的可能性),而第2個對應第乙個取樣點,第3個對應第二個...第n個對應第n-1個取樣點。而且這些取樣點是有對稱的關係的,即:x(i) = x(n-i)。所以只需要關注前n/2個取樣點就可以了,而每個取樣點與頻率的關係有下面公式給出:fn = (n-1)*fs/n, fs取樣頻率;fn頻率;n取樣點;n取樣總數
同時得到訊號週期:tn = n/((n-1)*fs)
我們借助這個公式我們來分析一下取樣頻率與取樣點對輸出頻率解析度的影響,很明顯fs(頻率取樣率)越低,n(取樣點)越多輸出頻率解析度越高,這樣我們考慮到時域,頻率解析度越高,時間解析度反而越低。。。
下面看兩個例子:
例一:>> a = [1,2,1,2,1,2];
>> fft(a)
ans =
9 0 0 -3 0 0
這裡第乙個點的頻率為0,對應的數字是9,序列a很可能沒有週期,還有乙個可能是-3對應的週期,-3對應取樣點為n=4,預設fs=1,所以週期為t = 6/(3*1) = 2;
例二:fn = 5;
n = 300;
fs = 40;
t = [0:1/fs:n/fs];
s = cos(2*pi*fn*t);
abs(fft(s));
plot(abs(fft(s)));
這裡訊號頻率為:fn = 5。我們通過計算當n=37.5是對應的頻率為5。
但是執行上面的程式,在n=39對應的取樣點處得到峰值(峰值對應原訊號的頻率),這裡不準確是由於頻率解析度的精度的問題,可以通過改變fs或者n來解決這個問題。
頻域補零上取樣 時域 頻域和時頻分析的區別
是新朋友嗎?記得先點藍字關注我哦 首先,eeg訊號的資料是什麼樣的?原始的eeg資料是由很多個樣本點數所構成的乙個有限的離散的時間序列資料。至於樣本點數的多少,則由取樣率所決定,比如取樣率為1000hz,那麼每秒就有1000個資料樣本點。其中,每個樣本點資料代表的是腦電波幅的大小,物理學上稱為電壓值...
DSP 時域補零與頻率解析度的關係
4.小結 頻率解析度是指對兩個最近的頻譜峰值能夠分辨的能力。一般來說,視窗長度n nn越大,則物理上的頻率解析度越高,其中n nn指的是真實的訊號取樣點個數,而不是補零之後的長度。頻率解析度可以表示為 f 1nts fsn delta f frac frac f nts 1 nfs 值得注意的是,補...
office SD與SE的關係,以及異常值
很多剛進入實驗室的同學對實驗資料的標準差 sd 與標準誤 se 的含義搞不清,不知道自己的資料報告到底該用sd還是se。這裡對這兩個概念進行一些介紹。標準差 sd 強調raw data的variation,而標準誤 se 強調平均數的可信程度。例如在毒理學實驗中,可能少數個體出現不良反應也很重要,需...