淺談傅里葉變換
最近兩周的信號(hào)與系統(tǒng)課程,我們?cè)谧看蟠蟮膸ьI(lǐng)下學(xué)習(xí)了傅里葉變換的定義和相關(guān)內(nèi)容。由于我對(duì)有關(guān)內(nèi)容所代表的數(shù)學(xué)含義很感興趣,最近在上課的時(shí)候便想了一些與傅里葉變換相關(guān)的內(nèi)容,包括一些有關(guān)性質(zhì)從數(shù)學(xué)或者物理角度進(jìn)行理解的思路。這里我把我自己最近的一些想法做一個(gè)簡(jiǎn)單的整理,方便日后重新理解,如有可能也希望能幫助一些同學(xué)對(duì)傅里葉變換這一神奇的知識(shí)點(diǎn)有一些別樣的理解方式。先行指出:由于我只是將我自己真實(shí)的思路寫下,但有時(shí)會(huì)缺乏嚴(yán)格的數(shù)學(xué)證明,有時(shí)甚至是一些“感性”的認(rèn)識(shí),所以難免會(huì)有不嚴(yán)謹(jǐn)、不合理之處。希望老師和同學(xué)們能夠批評(píng)指正。
引入:從線性空間的基底講起
相信線性空間大家都不會(huì)陌生,大一年級(jí)我們用了一年的時(shí)間與之做艱苦的斗爭(zhēng)。距離我們最近的一次提到線性空間,我的記憶是在微積分(2)的最后,也就是傅里葉級(jí)數(shù)分解。還記得當(dāng)時(shí)微積分老師的說(shuō)法是:和泰勒級(jí)數(shù)不同,傅里葉級(jí)數(shù)是從另外一個(gè)截然不同的角度對(duì)函數(shù)這個(gè)概念進(jìn)行審視,也就是從函數(shù)所在的線性空間當(dāng)中來(lái)看。老師證明了 , 的函數(shù)族是一組正交函數(shù)系,也就是在某種內(nèi)積的定義之下,兩個(gè)函數(shù)的內(nèi)積為0。之后的一個(gè)定理(具體叫什么我忘記了。。)證明了滿足一定連續(xù)性條件的周期函數(shù)都能分解成正余弦函數(shù)之和的形式。
這里的正交,我簡(jiǎn)易地理解為垂直,也就是和空間向量正交的概念類比。我們是否可以這樣想象:如果我們定義一個(gè)函數(shù)的線性空間,空間中的每一個(gè)點(diǎn),或者說(shuō)每一個(gè)向量都對(duì)應(yīng)一個(gè)「函數(shù)」,而比如在傅里葉級(jí)數(shù)分解的條件下, , 等函數(shù)是這個(gè)線性空間的一組「基底」,那么能夠進(jìn)行傅里葉級(jí)數(shù)分解的函數(shù)就都能夠和這個(gè)函數(shù)空間中的點(diǎn)進(jìn)行對(duì)應(yīng),也就是說(shuō)表示成我們熟知的傅里葉級(jí)數(shù)分解的形式:
這里我們所選擇的一組基底顯然是一組正交基,其個(gè)數(shù)是無(wú)窮多維,也就是說(shuō)這個(gè)函數(shù)空間和我們所處的空間很不一樣,有無(wú)窮維!但是,這個(gè)空間其實(shí)不難理解,說(shuō)到底還是一個(gè)線性、平整的空間而已。我們將這組正交基進(jìn)行歸一化,我們很容易構(gòu)造出一組「標(biāo)準(zhǔn)正交基」,也就是原來(lái)的正余弦函數(shù)除以本身的“模長(zhǎng)”(注意,這里的模長(zhǎng)是在我們所考慮的函數(shù)空間中的向量的模長(zhǎng),而不是其作為一個(gè)數(shù)字的絕對(duì)值。在后面考慮到復(fù)數(shù)域的時(shí)候尤其要注意這一點(diǎn))。
這里先提一句標(biāo)準(zhǔn)正交基。 ,這里X是在這組標(biāo)準(zhǔn)正交基下的坐標(biāo), 。這是我們線性代數(shù)里學(xué)過(guò)的內(nèi)容。如果我們?cè)谶@里利用函數(shù)空間的標(biāo)準(zhǔn)正交基分解,我們會(huì)得到:
這里,c和d是在標(biāo)準(zhǔn)正交基下的向量系數(shù),而前面的矩陣則是一組標(biāo)準(zhǔn)正交基。另外再?gòu)?fù)習(xí)一個(gè)概念,就是兩組基底之間的「基變換矩陣」(具體的名字我也忘記了。。。在家沒(méi)帶線代書(shū),先用這個(gè)名字替代一下吧),也就是一組基底乘上一個(gè)矩陣能夠得到另一組基底,這個(gè)矩陣可稱之為基變換矩陣。特別的,如果兩組基底都是標(biāo)準(zhǔn)正交基,那么這兩組基底之間的基變換矩陣是一個(gè)「正交矩陣」。
從時(shí)域到頻域
接下來(lái)就要進(jìn)入“美妙”的信號(hào)領(lǐng)域了。。。首先,借用之前在知乎看到的一種說(shuō)法,我用我自己的語(yǔ)言復(fù)述一遍:「信號(hào)的時(shí)域和頻域下的表示可以看做同一個(gè)向量在兩組不同的基底之下的坐標(biāo)?!?/strong>
下面進(jìn)行簡(jiǎn)單的討論,首先對(duì)時(shí)域?qū)?yīng)的一組基底進(jìn)行說(shuō)明。在時(shí)域離散條件下,這個(gè)命題相對(duì)來(lái)說(shuō)很好理解。如函數(shù) ,可以看成基底為 ,坐標(biāo)為 的向量。也就是說(shuō),時(shí)域離散條件下,只需將不同位置的脈沖信號(hào)拆成單位脈沖信號(hào)與幅值的疊加就行了。
如果推廣到連續(xù)情況下,我們很自然的會(huì)想到連續(xù)信號(hào)的單位沖激函數(shù)。也就是說(shuō),我們把 作為一組基底,這里 取所有實(shí)數(shù)。而對(duì)應(yīng)的系數(shù),很自然的就是 的數(shù)值。但這里要注意一點(diǎn):在基底是連續(xù)的條件下,內(nèi)積的定義不應(yīng)是對(duì)應(yīng)項(xiàng)簡(jiǎn)單的直接相乘再相加,而應(yīng)該是在積分的意義下取得的。
下圖對(duì)這種時(shí)域上的基底進(jìn)行了簡(jiǎn)單說(shuō)明。
之后我們進(jìn)入重頭戲——頻域。首先還是要強(qiáng)調(diào)時(shí)域中基底分解的一點(diǎn):在時(shí)域上進(jìn)行基底分解,基底中的每一個(gè)基向量都是一個(gè)函數(shù)。同樣,在頻域中,我們的基底也是一組正交函數(shù),也就是我們熟悉的 函數(shù)。注意,這里的函數(shù)也是一個(gè)關(guān)于t的函數(shù),而ω的作用是確定函數(shù)本身的一個(gè)量,作用類似于時(shí)域中 的作用。在離散條件下,就是我們所討論過(guò)的傅里葉級(jí)數(shù)分解,坐標(biāo)對(duì)應(yīng)的數(shù)值應(yīng)當(dāng)為對(duì)應(yīng)項(xiàng)的系數(shù);而在連續(xù)條件下,這組基底對(duì)應(yīng)的坐標(biāo)即為傅里葉變換之后得到的對(duì)應(yīng)頻率下函數(shù)的取值。這里的連續(xù)條件下,也要在積分的意義下求基底與坐標(biāo)的內(nèi)積。
我們?cè)谀撤N意義上也可以這樣想:傅里葉變換使得一個(gè)信號(hào)在時(shí)域這組基底表示下的坐標(biāo)變成了在頻域這組基底表示下的坐標(biāo),如果在幾何空間中就是乘上一個(gè)兩組基底之間的一個(gè)基變換矩陣。那么傅里葉變換就是時(shí)域坐標(biāo)和頻域坐標(biāo)兩組基底之間的基變換矩陣,如果加上歸一化條件,傅里葉變換則可以看做是一個(gè)正交陣。為了便于溝通時(shí)域和頻域,我們可以構(gòu)建一根假想的軸。
首先來(lái)看復(fù)平面。根據(jù)歐拉公式,我們知道 是一個(gè)模長(zhǎng)為1的向量,端點(diǎn)落在單位圓上,這個(gè)向量會(huì)隨著時(shí)間的增加而以勻速旋轉(zhuǎn),ω越大旋轉(zhuǎn)速度越快。我們假設(shè)有好多好多這樣的復(fù)平面,每個(gè)平面內(nèi)都有一個(gè)這樣的向量,其角速度各不相同。我們按照順序?qū)⑦@些復(fù)平面疊起來(lái),用一根角速度軸數(shù)值串起來(lái),那么我們會(huì)得到一個(gè)在三維空間中不斷轉(zhuǎn)動(dòng)的軸。在0時(shí)刻,所有復(fù)平面內(nèi)的每個(gè)向量都等于1,而當(dāng)時(shí)間開(kāi)始運(yùn)轉(zhuǎn),除了角速度等于0的那張平面里的向量始終等于1,不發(fā)生轉(zhuǎn)動(dòng),其他每個(gè)向量都會(huì)按照各自的角速度發(fā)生旋轉(zhuǎn),離角速度原點(diǎn)越遠(yuǎn),旋轉(zhuǎn)越快。另外我們還能看出, 、 對(duì)應(yīng)的兩個(gè)向量旋轉(zhuǎn)速度相同,但方向相反。
這根軸具體應(yīng)該怎么用呢?可以想到,「我們將每一個(gè)旋轉(zhuǎn)的向量與信號(hào)頻譜中對(duì)應(yīng)頻率的系數(shù)相乘,然后對(duì)全頻譜這樣的向量相加(連續(xù)情況便是積分),即可得到復(fù)平面內(nèi)原來(lái)信號(hào)隨時(shí)間的變化情況。這種相乘的實(shí)際效果體現(xiàn)在:對(duì)單位向量的長(zhǎng)度進(jìn)行倍乘,倍乘的系數(shù)為 幅度譜的對(duì)應(yīng)值,之后再進(jìn)行一個(gè)旋轉(zhuǎn),旋轉(zhuǎn)角度為相位譜的對(duì)應(yīng)角度,可以正向也可以反向。而所有向量相加(積分)的實(shí)質(zhì)便是傅里葉級(jí)數(shù)求和(傅里葉逆變換)」。
我們用這根旋轉(zhuǎn)的軸會(huì)很容易地理解負(fù)頻率的實(shí)際物理意義。同時(shí),也會(huì)方便后面傅里葉變換一些性質(zhì)的直觀理解。
傅里葉變換及其性質(zhì)
下面,我們用之前討論過(guò)的一些東西來(lái)解釋傅里葉變換的一些性質(zhì)。
奇偶虛實(shí)特性
課堂上老師講過(guò),實(shí)信號(hào)的頻譜幅度譜是一個(gè)偶函數(shù),而相位譜是一個(gè)奇函數(shù)。這是為什么呢?
因?yàn)樵夹盘?hào)為實(shí)信號(hào),也就是 乘上旋轉(zhuǎn)軸對(duì)應(yīng)的向量始終在實(shí)數(shù)范圍內(nèi)。我們知道,旋轉(zhuǎn)軸上掛著的單位向量旋轉(zhuǎn)速度除了彼此相對(duì)于角速度原點(diǎn)對(duì)稱的兩個(gè)向量之外,各不相同。所以我們直覺(jué)上可以猜想(實(shí)際上也很容易證明):如果要求信號(hào)為實(shí)信號(hào),那么必須要求每一組的 、 對(duì)應(yīng)的兩個(gè)向量乘上對(duì)應(yīng)的系數(shù)再加和必須為實(shí)數(shù),或者說(shuō),如果1Hz的信號(hào)出現(xiàn)了虛數(shù),那么無(wú)論其他頻率的信號(hào)怎么努力也都無(wú)法消除1Hz的信號(hào)在虛數(shù)上的頻率。也就是說(shuō): 為實(shí)數(shù)。因此,我們可以得到 和 互為共軛,也就是實(shí)信號(hào)的頻譜共軛對(duì)稱。
那么,如果信號(hào)為奇函數(shù)或者偶函數(shù),頻譜所表現(xiàn)出的虛奇函數(shù)以及偶實(shí)函數(shù)的特性又該如何解釋呢?
先從偶函數(shù)開(kāi)始。信號(hào)為偶函數(shù),也就是指在時(shí)間原點(diǎn)前后 位置,對(duì)應(yīng)信號(hào)的值相同,且為實(shí)數(shù)。由于時(shí)間原點(diǎn)的時(shí)候,所有單位向量都指向1,也就是每個(gè)單位向量都處在相位為0的位置。如果傅里葉頻譜上有一處含有虛信號(hào),那么必定會(huì)給對(duì)應(yīng)的頻率添加附加相位,情況類似于由 變成了 ,這樣便會(huì)使得信號(hào)不再滿足時(shí)間上的偶對(duì)稱性。所以,頻譜應(yīng)當(dāng)為實(shí)函數(shù)。再加上共軛對(duì)稱的條件,便會(huì)推導(dǎo)出偶實(shí)函數(shù)的結(jié)論。
之后我們來(lái)討論奇函數(shù)。奇函數(shù)信號(hào)的原點(diǎn)處為0,且原點(diǎn)前后的數(shù)值相反。和剛才的分析類似,如果頻譜有實(shí)數(shù)分量的話,便有某個(gè)頻率的向量初始相位不為90度,也就是不能滿足信號(hào)的奇對(duì)稱性。
時(shí)域微分與積分特性
其實(shí)這兩個(gè)特性從數(shù)學(xué)式子上觀察更為直觀,但是用旋轉(zhuǎn)軸的方法也可以給出解釋。由于信號(hào)是所有頻率信號(hào)分量的加和,因此對(duì)信號(hào)求微分或者積分,可以轉(zhuǎn)換成對(duì)每一個(gè)頻率的信號(hào)進(jìn)行微分和積分。以微分為例,由于每個(gè)信號(hào)的解析式為 ,因此信號(hào)對(duì)時(shí)間的微分就是 ,然后將多出來(lái)的系數(shù)與原來(lái)的頻域結(jié)合即可得到新的信號(hào)的頻域,即原頻域前面加上一個(gè) 。而積分相對(duì)于微分的區(qū)別在于, 的信號(hào)為恒定的F(0),對(duì)全時(shí)域積分會(huì)產(chǎn)生一個(gè)沖激信號(hào),因此信號(hào)積分的頻譜會(huì)多出一個(gè)沖激信號(hào)項(xiàng)。
時(shí)移特性和頻移特性
時(shí)移特性指將信號(hào)向左或者向右移動(dòng),頻域的變化。這一點(diǎn)當(dāng)然可以通過(guò)公式運(yùn)算得到。我們也試著用上面的旋轉(zhuǎn)軸來(lái)嘗試一下直觀理解。
假設(shè)一個(gè)信號(hào)在時(shí)間上延遲 ,我們以時(shí)間原點(diǎn)作為觀察點(diǎn)。原本情況下,在 時(shí)所有單位向量都等于1,而在延遲(即時(shí)移)的情況下, 的時(shí)候才有所有向量都等于1。那么從0到 這段時(shí)間,難道說(shuō)這些單位向量就不轉(zhuǎn)動(dòng)了嗎?肯定不是,這些向量無(wú)論在何時(shí)何地都會(huì)按照自己的固有速度進(jìn)行轉(zhuǎn)動(dòng)。所以,為了讓 的時(shí)候所有向量都等于1,我們必須給一個(gè)轉(zhuǎn)動(dòng)的提前量,即改變 時(shí)的信號(hào)的相位。這個(gè)信號(hào)相位的改變量是讓所有向量經(jīng)過(guò) 時(shí)間之后全部走完,也就是這個(gè)附加的相位應(yīng)該與頻率呈負(fù)線性關(guān)系。而最終這種相位的附加值會(huì)反應(yīng)到頻譜上,即讓頻譜乘上 。同樣的,信號(hào)向左時(shí)移也可以用同樣的方式得到。這就解釋了時(shí)移特性。
至于頻移特性,我們一方面可以通過(guò)傅里葉變換和逆變換形式大體相同這一點(diǎn)來(lái)得到對(duì)應(yīng)結(jié)論,但這就又用到了數(shù)學(xué)。我們盡量不用公式,這樣有助于理解實(shí)際的物理含義。假設(shè)頻譜向右移動(dòng)m,那么相當(dāng)于原本應(yīng)當(dāng)作用在頻率為 的向量上的頻域系數(shù) 最終作用到了頻率為 的向量上,可以認(rèn)為整體信號(hào)的旋轉(zhuǎn)速度“加快”了(這里實(shí)際上不準(zhǔn)確,因?yàn)檎l率部分加快了,但是負(fù)頻率部分減慢了。這里只是為了方便大家直觀上理解),相對(duì)于原有的信號(hào),原本的本來(lái)應(yīng)當(dāng)作用在一個(gè)轉(zhuǎn)的慢的向量上的系數(shù)換乘到了轉(zhuǎn)的快的向量上,這種快慢之間的差距會(huì)造成相同系數(shù)對(duì)應(yīng)的向量之間會(huì)產(chǎn)生一個(gè)隨著時(shí)間流逝而線性增大的相位差,這個(gè)相位差可以知道,就是 。這對(duì)于每一個(gè)向量都成立,那么作用到整體信號(hào)上,便是整體信號(hào)添加一個(gè)相位差,即新信號(hào)的時(shí)域會(huì)在原來(lái)基礎(chǔ)上乘一個(gè) 。這就解釋了頻移特性。
卷積定理
傅里葉變換中一個(gè)非常重要的知識(shí)便是卷積定理。然而用上面的模型很難直觀地解釋卷積定理,我們不得不另辟蹊徑,用另外的方式來(lái)理解時(shí)域的卷積等于頻域的乘積。
首先需要理解卷積本身干了一件什么事情。我們了解的最多的卷積的作用,也是目前我們唯一學(xué)過(guò)的卷積的作用,就是已知單位沖激響應(yīng)和LTI系統(tǒng)的輸入信號(hào),求解輸出信號(hào)的運(yùn)算。其本質(zhì)即是將輸入信號(hào)按照之前時(shí)域基底分解的方法進(jìn)行分解,然后對(duì)每一個(gè)沖激信號(hào)分別求其響應(yīng),最后在時(shí)域上疊加。我們要牢牢把握住這個(gè)定義來(lái)理解后面的變換。
之前說(shuō)過(guò),時(shí)域和頻域只是同一個(gè)信號(hào)在不同正交基底下的兩個(gè)不同坐標(biāo)。既然上面卷積的第一步是將信號(hào)按照時(shí)域分解,那么我們現(xiàn)在嘗試對(duì)信號(hào)從頻域這組基底上進(jìn)行描述。
首先考慮單位沖擊響應(yīng)這一物理概念。這個(gè)概念描述了系統(tǒng)輸入是單位沖激信號(hào)的輸出。我們知道,單位沖激信號(hào)的頻譜實(shí)際上是覆蓋全頻域的恒為1。這里我們假設(shè)單位沖擊響應(yīng)的頻譜為 。這里我們注意到,這個(gè)系統(tǒng)實(shí)際上是一個(gè)線性時(shí)不變系統(tǒng),也就是說(shuō),這個(gè)系統(tǒng)的輸出信號(hào)的頻率只可能取輸入信號(hào)所有可能的頻率,并且不同頻率的信號(hào)之間不會(huì)互相影響。所以重新審視單位沖擊響應(yīng)的頻譜,實(shí)際上是對(duì)不同頻率輸入信號(hào)的頻率響應(yīng),甚至可以說(shuō)是這個(gè)LTI系統(tǒng)的“波特圖”,只不過(guò)坐標(biāo)軸是線性的而非對(duì)數(shù)而已。
這樣我們會(huì)發(fā)現(xiàn),卷積在傅里葉變換的作用下成為乘積便是很顯然的:將輸入信號(hào)按照頻域展開(kāi)(運(yùn)算上便是進(jìn)行傅里葉變換),然后對(duì)于每一個(gè)頻率的輸入信號(hào),都直接乘上H(ω)中對(duì)應(yīng)的系數(shù)(也就是這個(gè)頻率對(duì)應(yīng)的放大倍數(shù)),便可得到輸出信號(hào)對(duì)應(yīng)頻率的系數(shù),從全頻率考慮便是相當(dāng)于單位沖擊響應(yīng)的頻譜與輸入信號(hào)的頻譜相乘,即可得到輸出信號(hào)的頻譜。這里如果從代數(shù)的角度考慮,如果把LTI系統(tǒng)看做對(duì)輸入信號(hào)進(jìn)行一個(gè)線性變換(也就是乘一個(gè)變換矩陣),那么這個(gè)矩陣是可“對(duì)角化”的,并且將其對(duì)角化所需要乘的可逆矩陣即是傅里葉變換,空間基底由時(shí)域的“單位沖激信號(hào)正交函數(shù)族”變成了頻域的“旋轉(zhuǎn)向量正交函數(shù)族”,而這個(gè)矩陣的特征值便是這個(gè)系統(tǒng)在各個(gè)輸入信號(hào)頻率的放大倍數(shù),也是單位沖激響應(yīng)的頻域上的函數(shù)值。(剛剛又稍微想了一下,如果把傅里葉變換對(duì)信號(hào)做的變化看做矩陣A的話,那么 ,I為單位陣,這個(gè)可以通過(guò)傅里葉變換的對(duì)稱性推出。算是一種更為特殊的性質(zhì)吧)
最后
本來(lái)這一部分我最初想放一些自己最初沒(méi)有想清楚的問(wèn)題,希望和大家一起討論,但是在總結(jié)上面東西的同時(shí),我發(fā)現(xiàn)自己原來(lái)那些問(wèn)題竟然都想通了??磥?lái)盡管整理這一篇亂七八糟的東西花了好多時(shí)間,但是也是一個(gè)沉淀知識(shí),使思維系統(tǒng)化的一個(gè)過(guò)程。由于自己水平有限,寫的東西肯定有不合理之處,但是希望自己總結(jié)的東西能夠?qū)Υ蠹矣兴鶐椭?。。盡管做題用上面的想法來(lái)做會(huì)很慢,但是我認(rèn)為加深對(duì)知識(shí)本身的理解是比熟練度更為重要的(嘗試為自己菜找借口)
最后最后,因?yàn)樽约涸谡淼臅r(shí)候是以第一人稱視角,是在已知自己結(jié)論的基礎(chǔ)上進(jìn)行整理,可能有些推導(dǎo)結(jié)論的地方,大家以第三視角來(lái)看會(huì)有些迷惑。。。如果大家有疑問(wèn)或者改正意見(jiàn),歡迎大家批評(píng)指正!
免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。文章僅代表作者個(gè)人觀點(diǎn),不代表本平臺(tái)立場(chǎng),如有問(wèn)題,請(qǐng)聯(lián)系我們,謝謝!