有什么資料或視頻推薦嗎?
大家好,我是通信M班長,一名通信工程師,熱愛分享通信與互聯網技術,歡迎關注我。
FFT,Fast Fourier Transform 快速傅里葉變換算法,就是可以快速的計算傅里葉變換。談到這個FFT,我們不禁要說到DFT,離散傅里葉變換Discrete Fourier Transform。
FFT的出現,就是為了簡化DFT的計算過程DFT這種算法,在時域和頻域都是有限離散數列,方便計算機處理,所以可以通過集成電路進行大規模應用。但是DFT的算法法復雜度達到了Ο(N^2),N是序列的個數,我們取N=1024,那么計算DFT需要1048576即一百多萬次復數乘法運算。
在實際的信號處理過程中,N會更大,那么計算量會蹭蹭的往上漲。
這個時候,FFT問世了,它通過研究復指數函數的一些性質,發現有些變量不需要算第二遍,有限量是零不需要算,因此可以簡少計算次數。
當然了,從FFT算法出現到現在,出現了大量的FFT算法,包括庫利-圖基FFT算法,桑德-圖基算法等等好多算法。
學習FFT算法其實如果你只是需要工程應用的話,現在Matlab,Python等編程語言,自帶信號處理庫,可以直接調用FFT函數。你只需要了解基本的FFT實現過程。
推薦書籍:
國內幾乎任何一本信號與系統、數字信號處理教材都會對FFT算法有介紹,比如鄭君里《信號與系統》,程佩青《數字信號處理》
在線資料推薦:
班長之前也寫過一個簡單的FFT介紹,可供參考。
其他比較不錯的在線資料有:
http://blog.miskcoo.com/2015/04/polynomial-multiplication-and-fast-fourier-transformhttp://picks.logdown.com/posts/177631-fast-fourier-transformhttps://www.cnblogs.com/fenghaoran/p/7107608.htmlhttps://blog.csdn.net/WADuan2/article/details/79529900如果英語過的去,搜索英文fft algorithm,資料絕對更加豐富多彩。
如果你喜歡班長的回答,歡迎您在評論區留言討論,為文章點贊哦!