1. 程式人生 > >為什麼要進行傅立葉變換,究竟有何意義?如何用MATLAB實現快速傅立葉變換

為什麼要進行傅立葉變換,究竟有何意義?如何用MATLAB實現快速傅立葉變換


      這四種傅立葉變換都是針對正無窮大和負無窮大的訊號,即訊號的的長度是無窮大的,我們知道這對於計算機處理來說是不可能的,那麼有沒有針對長度有限的傅立葉變換呢?沒有。因為正餘弦波被定義成從負無窮小到正無窮大,我們無法把一個長度無限的訊號組合成長度有限的訊號。面對這種困難,方法是把長度有限的訊號表示成長度無限的訊號,可以把訊號無限地從左右進行延伸,延伸的部分用零來表示,這樣,這個訊號就可以被看成是非週期性離解訊號,我們就可以用到離散時域傅立葉變換的方法。還有,也可以把訊號用複製的方法進行延伸,這樣訊號就變成了週期性離解訊號,這時我們就可以用離散傅立葉變換方法進行變換。這裡我們要學的是離散訊號,對於連續訊號我們不作討論,因為計算機只能處理離散的數值訊號,我們的最終目的是運用計算機來處理訊號的。

       但是對於非週期性的訊號,我們需要用無窮多不同頻率的正弦曲線來表示,這對於計算機來說是不可能實現的。所以對於離散訊號的變換隻有離散傅立葉變換(DFT)才能被適用,對於計算機來說只有離散的和有限長度的資料才能被處理,對於其它的變換型別只有在數學演算中才能用到,在計算機面前我們只能用DFT方法,後面我們要理解的也正是DFT方法。這裡要理解的是我們使用週期性的訊號目的是為了能夠用數學方法來解決問題,至於考慮週期性訊號是從哪裡得到或怎樣得到是無意義的。

       每種傅立葉變換都分成實數和複數兩種方法,對於實數方法是最好理解的,但是複數方法就相對複雜許多了,需要懂得有關複數的理論知識,不過,如果理解了實數離散傅立葉變換(real DFT),再去理解複數傅立葉就更容易了,所以我們先把複數的傅立葉放到一邊去,先來理解實數傅立葉變換,在後面我們會先講講關於複數的基本理論,然後在理解了實數傅立葉變換的基礎上再來理解複數傅立葉變換。

       還有,這裡我們所要說的變換(transform)雖然是數學意義上的變換,但跟函式變換是不同的,函式變換是符合一一映射準則的,對於離散數字訊號處理(DSP),有許多的變換:傅立葉變換、拉普拉斯變換、Z變換、希爾伯特變換、離散餘弦變換等,這些都擴充套件了函式變換的定義,允許輸入和輸出有多種的值,簡單地說變換就是把一堆的資料變成另一堆的資料的方法。這四種傅立葉變換都是針對正無窮大和負無窮大的訊號,即訊號的的長度是無窮大的,我們知道這對於計算機處理來說是不可能的,那麼有沒有針對長度有限的傅立葉變換呢?沒有。因為正餘弦波被定義成從負無窮小到正無窮大,我們無法把一個長度無限的訊號組合成長度有限的訊號。面對這種困難,方法是把長度有限的訊號表示成長度無限的訊號,可以把訊號無限地從左右進行延伸,延伸的部分用零來表示,這樣,這個訊號就可以被看成是非週期性離解訊號,我們就可以用到離散時域傅立葉變換的方法。還有,也可以把訊號用複製的方法進行延伸,這樣訊號就變成了週期性離解訊號,這時我們就可以用離散傅立葉變換方法進行變換。這裡我們要學的是離散訊號,對於連續訊號我們不作討論,因為計算機只能處理離散的數值訊號,我們的最終目的是運用計算機來處理訊號的。

但是對於非週期性的訊號,我們需要用無窮多不同頻率的正弦曲線來表示,這對於計算機來說是不可能實現的。所以對於離散訊號的變換隻有離散傅立葉變換(DFT)才能被適用,對於計算機來說只有離散的和有限長度的資料才能被處理,對於其它的變換型別只有在數學演算中才能用到,在計算機面前我們只能用DFT方法,後面我們要理解的也正是DFT方法。這裡要理解的是我們使用週期性的訊號目的是為了能夠用數學方法來解決問題,至於考慮週期性訊號是從哪裡得到或怎樣得到是無意義的。

每種傅立葉變換都分成實數和複數兩種方法,對於實數方法是最好理解的,但是複數方法就相對複雜許多了,需要懂得有關複數的理論知識,不過,如果理解了實數離散傅立葉變換(real DFT),再去理解複數傅立葉就更容易了,所以我們先把複數的傅立葉放到一邊去,先來理解實數傅立葉變換,在後面我們會先講講關於複數的基本理論,然後在理解了實數傅立葉變換的基礎上再來理解複數傅立葉變換。

        還有,這裡我們所要說的變換(transform)雖然是數學意義上的變換,但跟函式變換是不同的,函式變換是符合一一映射準則的,對於離散數字訊號處理(DSP),有許多的變換:傅立葉變換、拉普拉斯變換、Z變換、希爾伯特變換、離散餘弦變換等,這些都擴充套件了函式變換的定義,允許輸入和輸出有多種的值,簡單地說變換就是把一堆的資料變成另一堆的資料的方法。這四種傅立葉變換都是針對正無窮大和負無窮大的訊號,即訊號的的長度是無窮大的,我們知道這對於計算機處理來說是不可能的,那麼有沒有針對長度有限的傅立葉變換呢?沒有。因為正餘弦波被定義成從負無窮小到正無窮大,我們無法把一個長度無限的訊號組合成長度有限的訊號。面對這種困難,方法是把長度有限的訊號表示成長度無限的訊號,可以把訊號無限地從左右進行延伸,延伸的部分用零來表示,這樣,這個訊號就可以被看成是非週期性離解訊號,我們就可以用到離散時域傅立葉變換的方法。還有,也可以把訊號用複製的方法進行延伸,這樣訊號就變成了週期性離解訊號,這時我們就可以用離散傅立葉變換方法進行變換。這裡我們要學的是離散訊號,對於連續訊號我們不作討論,因為計算機只能處理離散的數值訊號,我們的最終目的是運用計算機來處理訊號的。

但是對於非週期性的訊號,我們需要用無窮多不同頻率的正弦曲線來表示,這對於計算機來說是不可能實現的。所以對於離散訊號的變換隻有離散傅立葉變換(DFT)才能被適用,對於計算機來說只有離散的和有限長度的資料才能被處理,對於其它的變換型別只有在數學演算中才能用到,在計算機面前我們只能用DFT方法,後面我們要理解的也正是DFT方法。這裡要理解的是我們使用週期性的訊號目的是為了能夠用數學方法來解決問題,至於考慮週期性訊號是從哪裡得到或怎樣得到是無意義的。

每種傅立葉變換都分成實數和複數兩種方法,對於實數方法是最好理解的,但是複數方法就相對複雜許多了,需要懂得有關複數的理論知識,不過,如果理解了實數離散傅立葉變換(real DFT),再去理解複數傅立葉就更容易了,所以我們先把複數的傅立葉放到一邊去,先來理解實數傅立葉變換,在後面我們會先講講關於複數的基本理論,然後在理解了實數傅立葉變換的基礎上再來理解複數傅立葉變換。

還有,這裡我們所要說的變換(transform)雖然是數學意義上的變換,但跟函式變換是不同的,函式變換是符合一一映射準則的,對於離散數字訊號處理(DSP),有許多的變換:傅立葉變換、拉普拉斯變換、Z變換、希爾伯特變換、離散餘弦變換等,這些都擴充套件了函式變換的定義,允許輸入和輸出有多種的值,簡單地說變換就是把一堆的資料變成另一堆的資料的方法。