傅立葉變換是Jean-Baptiste Joseph Fourier在研究熱傳導微分方程中發明的數學工具,對于一個時域上的函數可以分解為頻域分量的疊加。在處理有限序列過程中我們可以把序列假設為時間序列并利用快速傅立葉變換算法得到頻域分量。
對于一個非病态函數$f(x)$,我們把它表達成這樣的形式
其中:
對于不同的n,
就代表了不同頻率的成分幅度,參照如下示意圖:
離散傅立葉變換對于有限序列,存在快速計算離散傅立葉變換DFT的FFT算法,假設
為原有限序列,那麼可以通過FFT變換獲得
其中每個
為複數,對于每個
,會生成一個關于頻率
的一個序列,因為原序列是實數序列,是以每個頻率序列的複數分量都會比較小,所有頻率疊加後理論上複數分量消失,但是因為數值誤差是以一般會保留一個很小的誤差。将分量系數
按照模大小排序,選取較大的分量合成序列後就可以接近原序列。
如下圖所示為将系數從大到小排列後分别選取前10,30,60,100後疊加結果與原序列的比較效果。而總的序列由800個頻率分量,選取前100個分量結果已經與原序列十分接近。實際分量為複數,因為原序列為實數序列,是以随着疊加頻率的增加,複數部分會逐漸趨近于零。
傅立葉變換描述運動在古代經典宇宙結構學說,托勒密的地心說中,認為月球,太陽和其它行星都繞着地球運動,遵循本輪-均輪系統。比如月球除繞自己本輪運動,同時本輪繞着圍繞地球為中心的均輪大圓運動。對于觀測誤差,則添加更多的本輪,采用這種模型配合觀測資料可以建立非常精确有效的宇宙模型。地心說是關于宇宙結構學說的驚人成就,雖然實際這地心說不利于以太陽為參考系來描述太陽内行星運動,各種本輪過多也非常難以計算,但是其基本原理其實已經是在使用傅利葉變換在進行運動描述。
對于每一個頻率分量,可以認為是圍繞某個圓心以一定角速度的圓周運動,而圓的半徑就是相應系數模。将比較大的頻率分量做為本輪-均輪來描述運動,與實際軌迹就可以做到非常接近。 如下圖對軌迹進行分解分别得到x,y分量(
注:為了繪圖便利将跳躍點直接連接配接,使整個圖像成為一條聯通曲線):
https://www.zhihu.com/video/1232429601248055296
傅立葉變換的應用¶
因為波動模式是現實中經常直接出現或是隐含出現的的模式,是以傅立葉變換對于異常多的模式分析有得要應用。因為傅立葉變換将時域序列的頻率分量全部分解出來,重點對于大分量頻率的分析一般可以抓住序列的主要特征,放棄小分量特征可以極大增加分析的便利性。圖像聲音信号的處理過程中放棄小分量特征可以極大壓縮資料量同時降低分析與解碼的計算量。
參考資料¶
[1] http://en.wikipedia.org/wiki/Fourier_transform
[2] www.youtube.com/watch?v=r6sGWTCMz2k