理解离散傅立叶变换(三.复数)
生活随笔
收集整理的這篇文章主要介紹了
理解离散傅立叶变换(三.复数)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
理解離散傅立葉變換(三) ------復(fù)數(shù)形式離散傅立葉變換 復(fù)數(shù)形式的離散傅立葉變換非常巧妙地運(yùn)用了復(fù)數(shù)的方法,使得傅立葉變換變換更加自然和簡潔,它并不是只是簡單地運(yùn)用替換的方法來運(yùn)用復(fù)數(shù),而是完全從復(fù)數(shù)的角度來分析問題,這一點(diǎn)跟實(shí)數(shù)DFT是完全不一樣的。 一、??????????把正余弦函數(shù)表示成復(fù)數(shù)的形式 通過歐拉等式可以把正余弦函數(shù)表示成復(fù)數(shù)的形式: cos( x ) = 1/2 e?j(-x)?+ 1/2 ejx sin( x ) = j (1/2 e?j(-x)?- 1/2 ejx) 從這個等式可以看出,如果把正余弦函數(shù)表示成復(fù)數(shù)后,它們變成了由正負(fù)頻率組成的正余弦波,相反地,一個由正負(fù)頻率組成的正余弦波,可以通過復(fù)數(shù)的形式來表示。 我們知道,在實(shí)數(shù)傅立葉變換中,它的頻譜是0 ~?π(0 ~ N/2),但無法表示-π~ 0的頻譜,可以預(yù)見,如果把正余弦表示成復(fù)數(shù)形式,則能夠把負(fù)頻率包含進(jìn)來。 二、??????????把變換前后的變量都看成復(fù)數(shù)的形式 復(fù)數(shù)形式傅立葉變換把原始信號x[n]當(dāng)成是一個用復(fù)數(shù)來表示的信號,其中實(shí)數(shù)部分表示原始信號值,虛數(shù)部分為0,變換結(jié)果X[k]也是個復(fù)數(shù)的形式,但這里的虛數(shù)部分是有值的。在這里要用復(fù)數(shù)的觀點(diǎn)來看原始信號,是理解復(fù)數(shù)形式傅立葉變換的關(guān)鍵(如果有學(xué)過復(fù)變函數(shù)則可能更好理解,即把x[n]看成是一個復(fù)數(shù)變量,然后象對待實(shí)數(shù)那樣對這個復(fù)數(shù)變量進(jìn)行相同的變換)。 三、??????????對復(fù)數(shù)進(jìn)行相關(guān)性算法(正向傅立葉變換) 從實(shí)數(shù)傅立葉變換中可以知道,我們可以通過原始信號乘以一個正交函數(shù)形式的信號,然后進(jìn)行求總和,最后就能得到這個原始信號所包含的正交函數(shù)信號的分量?,F(xiàn)在我們的原始信號變成了復(fù)數(shù),我們要得到的當(dāng)然是復(fù)數(shù)的信號分量,我們是不是可以把它乘以一個復(fù)數(shù)形式的正交函數(shù)呢?答案是肯定的,正余弦函數(shù)都是正交函數(shù),變成如下形式的復(fù)數(shù)后,仍舊還是正交函數(shù)(這個從正交函數(shù)的定義可以很容易得到證明): cos x + j sin x, cos x – j sin x,…… 這里我們采用上面的第二個式子進(jìn)行相關(guān)性求和,為什么用第二個式子呢?,我們在后面會知道,正弦函數(shù)在虛數(shù)中變換后得到的是負(fù)的正弦函數(shù),這里我們再加上一個負(fù)號,使得最后的得到的是正的正弦波,根據(jù)這個于是我們很容易就可以得到了復(fù)數(shù)形式的DFT正向變換等式: 這個式子很容易可以得到歐拉變換式子: 其實(shí)我們是為了表達(dá)上的方便才用到歐拉變換式,在解決問題時我們還是較多地用到正余弦表達(dá)式。 對于上面的等式,我們要清楚如下幾個方面(也是區(qū)別于實(shí)數(shù)DFT的地方): 1、X[k]、x[n]都是復(fù)數(shù),但x[n]的虛數(shù)部分都是由0組成的,實(shí)數(shù)部分表示原始信號; 2、k的取值范圍是0 ~ N-1 (也可以表達(dá)成0 ~ 2π),其中0 ~ N/2(或0 ~?π)是正頻部分,N/2 ~ N-1(π~ 2π)是負(fù)頻部分,由于正余弦函數(shù)的對稱性,所以我們把?–π~ 0表示成π~ 2π,這是出于計算上方便的考慮。 3、其中的j是一個不可分離的組成部分,就象一個等式中的變量一樣,不能隨便去掉,去掉之后意義就完全不一樣了,但我們知道在實(shí)數(shù)DFT中,j只是個符號而已,把j去掉,整個等式的意義不變; 4、下圖是個連續(xù)信號的頻譜,但離散頻譜也是與此類似的,所以不影響我們對問題的分析: 上面的頻譜圖把負(fù)頻率放到了左邊,是為了迎合我們的思維習(xí)慣,但在實(shí)際實(shí)現(xiàn)中我們一般是把它移到正的頻譜后面的。 從上圖可以看出,時域中的正余弦波(用來組成原始信號的正余弦波)在復(fù)數(shù)DFT的頻譜中被分成了正、負(fù)頻率的兩個組成部分,基于此等式中前面的比例系數(shù)是1/N(或1/2π),而不是2/N,這是因為現(xiàn)在把頻譜延伸到了2π,但把正負(fù)兩個頻率相加即又得到了2/N,又還原到了實(shí)數(shù)DFT的形式,這個在后面的描述中可以更清楚地看到。由于復(fù)數(shù)DFT生成的是一個完整的頻譜,原始信號中的每一個點(diǎn)都是由正、負(fù)兩個頻率組合而成的,所以頻譜中每一個點(diǎn)的帶寬是一樣的,都是1/N,相對實(shí)數(shù)DFT,兩端帶寬比其它點(diǎn)的帶寬少了一半; 復(fù)數(shù)DFT的頻譜特征具有周期性:-N/2?~ 0與N/2 ~ N-1是一樣的,實(shí)域頻譜呈偶對稱性(表示余弦波頻譜),虛域頻譜呈奇對稱性(表示正弦波頻譜)。 四、??????????逆向傅立葉變換 假設(shè)我們已經(jīng)得到了復(fù)數(shù)形式的頻譜X[k],現(xiàn)在要把它還原到復(fù)數(shù)形式的原始信號x[n],當(dāng)然應(yīng)該是把X[k]乘以一個復(fù)數(shù),然后再進(jìn)行求和,最后得到原始信號x[n],這個跟X[k]相乘的復(fù)數(shù)首先讓我們想到的應(yīng)該是上面進(jìn)行相關(guān)性計算的復(fù)數(shù):cos(2πkn/N) – j sin(2πkn/N),但其中的負(fù)號其實(shí)是為了使得進(jìn)行逆向傅立葉變換時把正弦函數(shù)變?yōu)檎姆?#xff0c;因為虛數(shù)j的運(yùn)算特殊性,使得原來應(yīng)該是正的正弦函數(shù)變?yōu)榱素?fù)的正弦函數(shù)(我們從后面的推導(dǎo)會看到這一點(diǎn)),所以這里的負(fù)號只是為了糾正符號的作用,在進(jìn)行逆向DFT時,我們可以把負(fù)號去掉,于是我們便得到了這樣的逆向DFT變換等式:
x[n] =?X[k] (cos(2πkn/N) + j sin(2πkn/N))
?
?
我們現(xiàn)在來分析這個式子,會發(fā)現(xiàn)這個式其實(shí)跟實(shí)數(shù)傅立葉變換是可以得到一樣結(jié)果的。我們先把X[k]變換一下:
?
?
X[k] = Re X[k] + j Im X[k]
?
?
這樣我們就可以對x[n]再次進(jìn)行變換,如:
?
x[n] =?(Re X[k] + j Im X[k]) (cos(2πkn/N) + j sin(2πkn/N))
????=?(?Re X[k] cos(2πkn/N) +?j Im X[k]?cos(2πkn/N) +
???????????j?Re X[k]?sin(2πkn/N) -??Im X[k]?sin(2πkn/N)?)
???????=?(?Re X[k]?(cos(2πkn/N) + j sin(2πkn/N))?+????---------------------(1)
Im X[k]?(?-?sin(2πkn/N) +?j?cos(2πkn/N)))??---------------(2) 這時我們就把原來的等式分成了兩個部分,第一個部分是跟實(shí)域中的頻譜相乘,第二個部分是跟虛域中的頻譜相乘,根據(jù)頻譜圖我們可以知道,Re X[k]是個偶對稱的變量,Im X[k]是個奇對稱的變量,即 Re X[k] = Re X[- k] Im X[k] = - Im X[-k] 但k的范圍是0 ~ N-1,0~N/2表示正頻率,N/2~N-1表示負(fù)頻率,為了表達(dá)方便我們把N/2~N-1用-k來表示,這樣在從0到N-1的求和過程中對于(1)和(2)式分別有N/2對的k和-k的和,對于(1)式有: Re X[k]?(cos(2πkn/N) + j sin(2πkn/N)) +?Re X[- k]?(cos( -?2πkn/N) + j sin( -2πkn/N)) 根據(jù)偶對稱性和三角函數(shù)的性質(zhì),把上式化簡得到: Re X[k]?(cos(2πkn/N) + j sin(2πkn/N)) +?Re X[ k]?(cos(?2πkn/N) - j sin(?2πkn/N)) 這個式子最后的結(jié)果是: 2?Re X[ k] cos(2πkn/N) 再考慮到求Re X[ k]等式中有個比例系數(shù)1/N,把1/N乘以2,這樣的結(jié)果不就是跟實(shí)數(shù)DFT中的式子一樣了嗎? 對于(2)式,用同樣的方法,我們也可以得到這樣的結(jié)果: -2 Im X[k]?sin(2πkn/N 注意上式前面多了個負(fù)符號,這是由于虛數(shù)變換的特殊性造成的,當(dāng)然我們肯定不能把負(fù)符號的正弦函數(shù)跟余弦來相加,還好,我們前面是用cos(2πkn/N) – j sin(2πkn/N)進(jìn)行相關(guān)性計算,得到的Im X[k]中有個負(fù)的符號,這樣最后的結(jié)果中正弦函數(shù)就沒有負(fù)的符號了,這就是為什么在進(jìn)行相關(guān)性計算時虛數(shù)部分要用到負(fù)符號的原因(我覺得這也許是復(fù)數(shù)形式DFT美中不足的地方,讓人有一種拼湊的感覺)。 從上面的分析中可以看出,實(shí)數(shù)傅立葉變換跟復(fù)數(shù)傅立葉變換,在進(jìn)行逆變換時得到的結(jié)果是一樣的,只不過是殊途同歸吧。 附: WORD文檔下載地址:http://download.csdn.net/source/444234轉(zhuǎn)載于:https://www.cnblogs.com/phoenixzq/archive/2011/12/17/2290947.html
總結(jié)
以上是生活随笔為你收集整理的理解离散傅立叶变换(三.复数)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 游戏开发流程图。
- 下一篇: css3学习 理论之渐变