對于初學(xué)數(shù)字信號(DSP)的人來說,,這幾種變換是最為頭疼的,,它們是數(shù)字信號處理的理論基礎(chǔ),貫穿整個信號的處理,。
學(xué)習(xí)過《高等數(shù)學(xué)》和《信號與系統(tǒng)》這兩門課的朋友,,都知道時域上任意連續(xù)的周期信號可以分解為無限多個正弦信號之和,,在頻域上就表示為離散非周期的信號,即時域連續(xù)周期對應(yīng)頻域離散非周期的特點,,這就是傅立葉級數(shù)展開(FS),,它用于分析連續(xù)周期信號。
FT是傅立葉變換,,它主要用于分析連續(xù)非周期信號,,由于信號是非周期的,它必包含了各種頻率的信號,,所以具有時域連續(xù)非周期對應(yīng)頻域連續(xù)非周期的特點。
FS和FT 都是用于連續(xù)信號頻譜的分析工具,,它們都以傅立葉級數(shù)理論問基礎(chǔ)推導(dǎo)出的,。時域上連續(xù)的信號在頻域上都有非周期的特點,但對于周期信號和非周期信號又有在頻域離散和連續(xù)之分,。
在自然界中除了存在溫度,,壓力等在時間上連續(xù)的信號,還存在一些離散信號,,離散信號可經(jīng)過連續(xù)信號采樣獲得,,也有本身就是離散的。例如,,某地區(qū)的年降水量或平均增長率等信號,,這類信號的時間變量為年,不在整數(shù)時間點的信號是沒有意義的,。用于離散信號頻譜分析的工具包括DFS,,DTFT和DFT。
DTFT是離散時間傅立葉變換 ,,它用于離散非周期序列分析,,根據(jù)連續(xù)傅立葉變換要求連續(xù)信號在時間上必須可積這一充分必要條件,那么對于離散時間傅立葉變換,,用于它之上的離散序列也必須滿足在時間軸上級數(shù)求和收斂的條件,;由于信號是非周期序列,它必包含了各種頻率的信號,,所以DTFT對離散非周期信號變換后的頻譜為連續(xù)的,,即有時域離散非周期對應(yīng)頻域連續(xù)周期的特點。
當(dāng)離散的信號為周期序列時,,嚴格的講,,傅立葉變換是不存在的,因為它不滿足信號序列絕對級數(shù)和收斂(絕對可和)這一傅立葉變換的充要條件,,但是采用DFS(離散傅立葉級數(shù))這一分析工具仍然可以對其進行傅立葉分析,。
我們知道周期離散信號是由無窮多相同的周期序列在時間軸上組成的,,假設(shè)周期為N,即每個周期序列都有N個元素,,而這樣的周期序列有無窮多個,,由于無窮多個周期序列都相同,所以可以只取其中一個周期就足以表示整個序列了,,這個被抽出來表示整個序列特性的周期稱為主值周期,,這個序列稱為主值序列。然后以N對應(yīng)的頻率作為基頻構(gòu)成傅立葉級數(shù)展開所需要的復(fù)指數(shù)序列ek(n)=exp(j*2pi*k*n/N),用主值序列與復(fù)指數(shù)序列取相關(guān)(乘加運算),,得出每個主值在各頻率上的頻譜分量,,這樣就表示出了周期序列的頻譜特性。
根據(jù)DTFT,,對于有限長序列作Z變換或序列傅立葉變換都是可行的,,或者說,有限長序列的頻域和復(fù)頻域分析在理論上都已經(jīng)解決,;但對于數(shù)字系統(tǒng),,無論是Z變換還是序列傅立葉變換的適用方面都存在一些問題,重要是因為頻率變量的連續(xù)性性質(zhì)(DTFT變換出連續(xù)頻譜),,不便于數(shù)字運算和儲存,。
參考DFS,可以采用類似DFS的分析方法對解決以上問題,??梢园延邢揲L非周期序列假設(shè)為一無限長周期序列的一個主直周期,即對有限長非周期序列進行周期延拓,,延拓后的序列完全可以采用DFS進行處理,,即采用復(fù)指數(shù)基頻序列和此有限長時間序列取相關(guān),得出每個主值在各頻率上的頻譜分量以表示出這個“主值周期”的頻譜信息,。
由于DFT借用了DFS,,這樣就假設(shè)了序列的周期無限性,但在處理時又對區(qū)間作出限定(主值區(qū)間),,以符合有限長的特點,,這就使DFT帶有了周期性。另外,,DFT只是對一周期內(nèi)的有限個離散頻率的表示,,所以它在頻率上是離散的,就相當(dāng)于DTFT變換成連續(xù)頻譜后再對其采樣,,此時采樣頻率等于序列延拓后的周期N,,即主值序列的個數(shù)。
轉(zhuǎn)載
論壇模式 推薦 收藏 分享給好友 管理
TAG:
- timthorpe 發(fā)布于2011-05-04 14:02:37
- 理解離散傅立葉變換--轉(zhuǎn)載
------傅立葉變換的由來 關(guān)于傅立葉變換,無論是書本還是在網(wǎng)上可以很容易找到關(guān)于傅立葉變換的描述,,但是大都是些故弄玄虛的 文章,,太過抽象,盡是一些讓人看了就望而生畏的公式的羅列,,讓人很難能夠從感性上得到理解,,最近,我偶爾從網(wǎng)上看到一個關(guān)于數(shù)字信號處理的電子書籍,,是一 個叫Steven W. Smith, Ph.D.外國人寫的,,寫得非常淺顯,里面有七章由淺入深地專門講述關(guān)于離散信號的傅立葉變換,,雖然是英文文檔,,我還是硬著頭皮看完了有關(guān)傅立葉變換的有 關(guān)內(nèi)容,看了有茅塞頓開的感覺,,在此把我從中得到的理解拿出來跟大家分享,,希望很多被傅立葉變換迷惑的朋友能夠得到一點啟發(fā),這電子書籍是免費的,,有興趣 的朋友也可以從網(wǎng)上下載下來看一下,URL地址是: http://www./pdfbook.htm
要理解傅立葉變換,,確實需要一定的耐心,,別一下子想著傅立葉變換是怎么變換的,當(dāng)然,,也需要一定的高等數(shù)學(xué)基礎(chǔ),,最基本的是級數(shù)變換,其中傅立葉級數(shù)變換是傅立葉變換的基礎(chǔ)公式,。
一,、傅立葉變換的提出
讓我們先看看為什么會有傅立葉變換?傅立葉是一位法國數(shù)學(xué)家和物理學(xué)家的名字,,英語原名是Jean Baptiste Joseph Fourier(1768-1830), Fourier對熱傳遞很感興趣,,于1807年在法國科學(xué)學(xué)會上發(fā)表了一篇論文,論文里描述運用正弦曲線來描述溫度分布,,論文里有個在當(dāng)時具有爭議性的決 斷:任何連續(xù)周期信號都可以由一組適當(dāng)?shù)恼仪€組合而成,。當(dāng)時審查這個論文的人,其中有兩位是歷史上著名的數(shù)學(xué)家拉格朗日(Joseph Louis Lagrange, 1736-1813)和拉普拉斯(Pierre Simon de Laplace, 1749-1827),,當(dāng)拉普拉斯和其它審查者投票通過并要發(fā)表這個論文時,,拉格朗日堅決反對,在近50年的時間里,,拉格朗日堅持認為傅立葉的方法無法表 示帶有棱角的信號,,如在方波中出現(xiàn)非連續(xù)變化斜率。法國科學(xué)學(xué)會屈服于拉格朗日的威望,,否定了傅立葉的工作成果,,幸運的是,,傅立葉還有其它事情可忙,他參 加了政治運動,,隨拿破侖遠征埃及,,法國大革命后因怕會被推上斷頭臺而一直在逃避。直到拉格朗日死后15年這個論文才被發(fā)表出來,。
誰是對的呢,?拉格朗日是對的:正弦曲線無法組合成一個帶有棱角的信號。但是,,我們可以用正弦曲線來非常逼近地表示它,,逼近到兩種表示方法不存在能量差別,基于此,,傅立葉是對的,。
為什么我們要用正弦曲線來代替原來的曲線呢?如我們也還可以用方波或三角波來代替呀,,分解信號的方法 是無窮多的,,但分解信號的目的是為了更加簡單地處理原來的信號。用正余弦來表示原信號會更加簡單,,因為正余弦擁有原信號所不具有的性質(zhì):正弦曲線保真度,。 一個正余弦曲線信號輸入后,輸出的仍是正余弦曲線,,只有幅度和相位可能發(fā)生變化,,但是頻率和波的形狀仍是一樣的。且只有正余弦曲線才擁有這樣的性質(zhì),,正因 如此我們才不用方波或三角波來表示,。
二、傅立葉變換分類
根據(jù)原信號的不同類型,,我們可以把傅立葉變換分為四種類別: 1 非周期性連續(xù)信號 傅立葉變換(Fourier Transform) 2 周期性連續(xù)信號 傅立葉級數(shù)(Fourier Series) 3 非周期性離散信號 離散時域傅立葉變換(Discrete Time Fourier Transform) 4 周期性離散信號 離散傅立葉變換(Discrete Fourier Transform) 下圖是四種原信號圖例:
這四種傅立葉變換都是針對正無窮大和負無窮大的信號,,即信號的的長度是無窮大的,我們知道這對于計算機處理來說是不可能的,,那么有沒有針對長度 有限的傅立葉變換呢,?沒有。因為正余弦波被定義成從負無窮小到正無窮大,,我們無法把一個長度無限的信號組合成長度有限的信號,。面對這種困難,方法是把長度 有限的信號表示成長度無限的信號,,可以把信號無限地從左右進行延伸,,延伸的部分用零來表示,這樣,這個信號就可以被看成是非周期性離解信號,,我們就可以用 到離散時域傅立葉變換的方法,。還有,也可以把信號用復(fù)制的方法進行延伸,,這樣信號就變成了周期性離解信號,,這時我們就可以用離散傅立葉變換方法進行變換。 這里我們要學(xué)的是離散信號,,對于連續(xù)信號我們不作討論,,因為計算機只能處理離散的數(shù)值信號,我們的最終目的是運用計算機來處理信號的,。
但是對于非周期性的信號,,我們需要用無窮多不同頻率的正弦曲線來表示,這對于計算機來說是不可能實現(xiàn) 的,。所以對于離散信號的變換只有離散傅立葉變換(DFT)才能被適用,,對于計算機來說只有離散的和有限長度的數(shù)據(jù)才能被處理,對于其它的變換類型只有在數(shù) 學(xué)演算中才能用到,,在計算機面前我們只能用DFT方法,,后面我們要理解的也正是DFT方法。這里要理解的是我們使用周期性的信號目的是為了能夠用數(shù)學(xué)方法 來解決問題,,至于考慮周期性信號是從哪里得到或怎樣得到是無意義的,。
每種傅立葉變換都分成實數(shù)和復(fù)數(shù)兩種方法,對于實數(shù)方法是最好理解的,,但是復(fù)數(shù)方法就相對復(fù)雜許多 了,需要懂得有關(guān)復(fù)數(shù)的理論知識,,不過,,如果理解了實數(shù)離散傅立葉變換(real DFT),再去理解復(fù)數(shù)傅立葉變換就更容易了,,所以我們先把復(fù)數(shù)的傅立葉變換放到一邊去,,先來理解實數(shù)傅立葉變換,在后面我們會先講講關(guān)于復(fù)數(shù)的基本理 論,,然后在理解了實數(shù)傅立葉變換的基礎(chǔ)上再來理解復(fù)數(shù)傅立葉變換,。
還有,這里我們所要說的變換(transform)雖然是數(shù)學(xué)意義上的變換,,但跟函數(shù)變換是不同的,, 函數(shù)變換是符合一一映射準則的,對于離散數(shù)字信號處理(DSP),,有許多的變換:傅立葉變換,、拉普拉斯變換、Z變換、希爾伯特變換,、離散余弦變換等,,這些 都擴展了函數(shù)變換的定義,允許輸入和輸出有多種的值,,簡單地說變換就是把一堆的數(shù)據(jù)變成另一堆的數(shù)據(jù)的方法,。
三、一個關(guān)于實數(shù)離散傅立葉變換(Real DFT)的例子
先來看一個變換實例,,下圖是一個原始信號圖像: 這個信號的長度是16,,于是可以把這個信號分解9個余弦波和9個正弦波(一個長度為N的信號可以分解 成N/2+1個正余弦信號,這是為什么呢,?結(jié)合下面的18個正余弦圖,我想從計算機處理精度上就不難理解,,一個長度為N的信號,最多只能有N/2+1個不 同頻率,,再多的頻率就超過了計算機所能所處理的精度范圍),,如下圖:
9個余弦信號:
9個正弦信號:
把以上所有信號相加即可得到原始信號,至于是怎么分別變換出9種不同頻率信號的,,我們先不急,,先看看對于以上的變換結(jié)果,在程序中又是該怎么表示的,,我們可以看看下面這個示例圖:
上圖中左邊表示時域中的信號,,右邊是頻域信號表示方法,從左向右表示正向轉(zhuǎn)換(Forward DFT),,從右向左表示逆向轉(zhuǎn)換(Inverse DFT),,用小寫x[]表示信號在每個時間點上的幅度值數(shù)組, 用大寫X[]表示每種頻率的副度值數(shù)組, 因為有N/2+1種頻率,所以該數(shù)組長度為N/2+1,,X[]數(shù)組又分兩種,,一種是表示余弦波的不同頻率幅度值:Re X[],另一種是表示正弦波的不同頻率幅度值:Im X[],,Re是實數(shù)(Real)的意思,,Im是虛數(shù)(Imagine)的意思,采用復(fù)數(shù)的表示方法把正余弦波組合起來進行表示,,但這里我們不考慮復(fù)數(shù)的其 它作用,,只記住是一種組合方法而已,目的是為了便于表達(在后面我們會知道,,復(fù)數(shù)形式的傅立葉變換長度是N,,而不是N/2+1)。
|