【Rust】引用模式
1.傅立葉級數的定義:
數學上對任意函式進行分解,必須保證有一個可以表示該函式的正交,歸一函式族。
若將此用於訊號的分解上,則一個正交,歸一的函式族構成了訊號空間,在這個空間中任何訊號可以用這樣一族函式表示。
在常用函式中正交,歸一的函式族有很多種,如三角函式族、正負負指數族、沃爾什函式族等,用這些基本的函式完成任意訊號的分解,從而建立譜的概念,同時解決連續訊號時-頻之間的變換。
下面簡單討論三角函式族,我們知道對於一個向量正交來說,兩個向量相乘為0,則稱這兩個向量為正交向量,任意向量可以用這兩個向量乘以不同係數來表示。
同樣的,對於任意兩個函式相乘積分為0,則稱這兩個函式是正交的。
其中,將這些所有互相正交的函式稱為正交函式集。其中任意函式都可由其正交函式集乘以不同係數來表示。
正交函式集定義
X(t)表示任意訊號,用正交函式集可以合成任意訊號
三角函式正交函式集
傅立葉級數定義:
任何一個週期為T的週期訊號f(t),滿足狄裡克雷條件,都可展開為如下三角級數
其中1為基波角頻率,它與訊號週期T關係為2/T
看概念可能不好理解,下面是我找的例子
2.離散傅立葉變換DFT(Discrete Fourier Transform)
由來:為適應計算機作傅立葉變換運算而引出的一個專有名詞
X(t)---------------------------->(t)
截斷、週期延拓
週期訊號(t)的傅立葉級數分解:
ω = 2 *π*f0
離散化處理:連續域轉變為離散域,積分變為和
3.快速傅立葉變換FFT(Fast Fourier Transform)
定義:快速傅立葉變換是離散傅立葉變換的一種有效演算法,通過選擇和排列中間結果,可有效減小運算量,計算結果是相同的。
不同頻率點對應DFT計算公式中的冗餘:
由此,可以看出離散傅立葉變換中存在著許多計算的冗餘,FFT就是為了解決這個防止重複性計算
FFT裡面比較常用的就是採用了蝶形運算的方法,來減少運算量,不過其要求就是點數必須是2的冪次方。所以在呼叫FFT時候其資料長度必須為2的冪次方。
4.FFT譜的柵欄效應
為提高效率,一般都採用FFT演算法來計算訊號頻譜,設取樣頻率為Fs,
T=N/Fs; f0=Fs/N
FFT計算的各傅立葉級數的頻率位置為:
fn = i*Fs/N; i=0,1,2,3……
一般來說柵欄效應帶來的誤差使得真實頻率的幅度值變小,最大可達到36%
能量洩露是由截斷帶來的,而柵欄效應是FFT帶來的,嚴格上來說,若週期截斷的話頻譜就像上面這樣,就不會有能量洩露,那一旦FFT的取樣點偏移的話可能什麼都讀不到。但實際上這類情況並不會發生,也就是說一定會有能量洩露發生,那樣的話,即使讀不到真正的譜峰也能讀到其旁瓣訊號。這也是FFT之所以適用的原因。
所以能量洩露原本是不希望有的,但對FFT變換來講確是有利的。接下來就是如何改進能量洩露了,使得其對FFT變換更有利一些,也就是增加其主瓣寬度。一般通過加窗來實現,簡單講就是用其他函式與原函式相乘截斷。
一般通過加窗以後其幅度值最後需要乘以其修正係數
2.離散傅立葉變換DFT(Discrete Fourier Transform)
由來:為適應計算機作傅立葉變換運算而引出的一個專有名詞
X(t) (t)
截斷、週期延拓
週期訊號(t)的傅立葉級數分解:
=2f0
離散化處理:連續域轉變為離散域,積分變為和