語音識別MFCC系列(一)——連續信號、傅里葉變換

看了很多傅里葉變換(連續信號和離散信號)的博客,都寫的不是很清楚,有些地方可能有誤,我在查閱了書籍和大量資料以後,爭取能用前後標註一致的公式把相關內容(帕斯瓦爾公式,能量信號,功率信號,能量密度譜,功率頻譜等)講清楚,說正確。最好先看連續信號再看離散信號哦

連續信號的請看語音識別MFCC系列(一)——連續信號、傅里葉變換

離散信號的請看語音識別MFCC系列(二)——離散信號、離散傅里葉變換

本文分別按順序介紹,如果想弄懂,還是按順序耐心看下去比較好,不過還是得有點數學功底的啦。

  • 連續        週期   信號的傅里葉  級數
  • 連續     非週期  信號的傅里葉  變換
  • 連續        週期   信號的傅里葉  變換

一、什麼是傅里葉變換?

傅里葉變換就是將一個信號波形分爲多個不同頻率的餘弦波形,成爲頻率分量。每個頻率的餘弦波形都有其對應的頻率、幅值、相位。如下圖所示,黑色的是原信號波形,其他顏色的均爲頻率分量,直線代表該頻率分量幅值爲0。

二、連續週期信號的傅里葉級數

1. 傅里葉級數用下式表示,x\left ( t \right )爲連續週期信號,週期爲T_0,可以表示爲多個頻率分量之和,注意頻率分辨度\omega _0= \frac{2 \pi}{T_0}

                                                  x( t ) = \frac{a _ { 0 }}{2} + \sum _ { n = 1 } ^ { \infty } \left[ a _ { n } \cos ( n \omega_0 t ) + b _ { n } \sin \left( n \omega _ { 0 } t \right) \right]

其中

 

                                                                \begin{align*} &a _ { 0 } = \frac { 2 } { T _ { 0 } } \int _ { - T _ { 0 } /2 } ^ {T _ { 0 } /2 }x ( t ) d t \\ &a _ { n } = \frac { 2 } { T _ { 0 } } \int _ { - T _ { 0 } /2 } ^ {T _ { 0 } /2 }x ( t ) \cos n \omega_0 t d t \\ &b _ { n } = \frac { 2 } { T _ { 0 } } \int _ { - T _ { 0 } /2 } ^ {T _ { 0 } /2 }x ( t ) \sin n \omega_0 t d t \end{align*}

2. 將傅里葉級數換一種表達方式如下:

                                                         x ( t ) = \frac{A_0}{2} + \sum _ { n = 1 } ^ { \infty } A _ { n } \cos \left( n \omega _ { 0 } t + \varphi _ { n } \right)

其中

                                                                      \begin{align*} &A_0=a_0 \\ &A_n=\sqrt{a_n^2+b_n^2} \\ &\varphi _n=-arctan \frac{b_n}{a_n} \end{align*}

先引入歐拉公式:

                                                                      e ^ { - i \theta } = \cos \theta - i \sin \theta

那麼

                                                                      \cos \theta = \frac{e ^ { i \theta } + e ^ { - i \theta }}{2}

3. 那麼引入傅里葉級數的復指數形式:

                                                  \begin{align*}x ( t ) &= \frac{A_0}{2} + \sum _ { n = 1 } ^ { \infty } \frac{A _ { n } }{2}\left [ e ^ { j \left ( n \omega _ { 0 } t +\varphi _ { n } \right ) } + e ^ {- j \left ( n \omega _ { 0 } t +\varphi _ { n } \right ) } \right ]\\ &= \frac{1 }{2}\sum _ { n = -\infty } ^ { \infty } A _ { n } e ^ { j \varphi _ { n }} e ^ { j n \omega _ { 0 } t } =\sum _ { n = -\infty } ^ { \infty } X\left ( n \omega _ { 0 } \right )e ^ { j n \omega _ { 0 } t } \end{align*}

其中X\left ( n \omega _ { 0 } \right )爲復傅里葉係數

                                        \begin{align*}X\left ( n \omega _ { 0 } \right ) &=\frac{1 }{2} A _ { n } e ^ { j \varphi _ { n }}= \frac{1 }{2}\left [ A_n \cos \varphi _n + j A_n \sin \varphi _n \right ]= \frac{1 }{2}(a_n-jb_n)\\ &= \frac { 1 } { T _ { 0 } } \int _ { - T _ { 0 } /2 } ^ {T _ { 0 } /2 }x ( t ) \cos n \omega_0 t d t -j\frac { 1 } { T _ { 0 } } \int _ { - T _ { 0 } /2 } ^ {T _ { 0 } /2 }x ( t ) \sin n \omega_0 t d t \\ &= \frac { 1 } { T _ { 0 } } \int _ { - T _ { 0 } /2 } ^ {T _ { 0 } /2 }x ( t ) e ^ {- j n \omega _ { 0 } t } d t\end{align*}

注意,因爲\cos n \omega_0 tn的偶函數,X\left ( n \omega _ { 0 } \right )的實軸\frac{1 }{2} a _ { n }=\frac {1 } { T _ { 0 } } \int _ { - T _ { 0 } /2 } ^ {T _ { 0 } /2 }x ( t ) \cos n \omega_0 t d t也爲n的偶函數,同理\sin n \omega_0 tn的奇函數,X\left ( n \omega _ { 0 } \right )的虛軸- \frac{1 }{2} b _ { n }=- \frac {1 } { T _ { 0 } } \int _ { - T _ { 0 } /2 } ^ {T _ { 0 } /2 }x ( t ) \sin n \omega_0 t d t也爲n的奇函數,那麼正頻率X\left ( n \omega _ { 0 } \right )爲負頻率X\left ( -n \omega _ { 0 } \right )共軛,即X\left ( n \omega _ { 0 } \right )=X^*\left ( -n \omega _ { 0 } \right ),這個概念很重要,引申到離散傅里葉變換也很重要。

4. 連續週期信號的頻譜

\left | X\left ( n \omega _ { 0 } \right ) \right | =\frac{1 }{2}A _ { n }隨着頻率變化的分佈稱爲幅值頻譜,爲軸對稱哦。注意傅里葉係數不等同於頻率分量的波形峯值哦,直流分量的傅里葉係數等於該分量的波形峯值,其餘頻率分量的傅里葉係數等於該分量的波形峯值的一半,這裏的負頻率只是數學上的一種形式。

5. 連續週期信號的帕斯瓦爾公式

首先,如果把信號x\left ( t \right )視爲加在1\Omega電阻兩端的電壓或通過的電流,那麼電阻上消耗的平均功率爲

                                                      \begin{align*}p &=\frac { 1 } { T _ { 0 } } \int _ { - \frac { T _ { 0 } } { 2 } } ^ { \frac { T _ { 0 } } { 2 } }\left | x ( t ) \right | ^ { 2 }d t \\ &= \frac { 1 } { T _ { 0 } } \int _ { - \frac { T _ { 0 } } { 2 } } ^ { \frac { T _ { 0 } } { 2 } } \left [ \frac{A_0}{2} + \sum _ { n = 1 } ^ { \infty } A _ { n } \cos \left( n \omega _ { 0 } t + \varphi _ { n } \right)\right ] ^ { 2 }d t \\ &= \left( \frac { A _ { 0 } } { 2 } \right) ^ { 2 } + \sum _ { n = 1 } ^ { \infty } \frac { 1 } { 2 } A _ { n } ^ { 2 } \\ &= \sum _ { n = - \infty } ^ { \infty } \left | X\left ( n \omega _ { 0 } \right ) \right | ^ { 2 } \end{align*}

平均功率p爲有限值就是功率信號,很明顯連續週期信號爲功率信號(能量信號一會兒會介紹)。

連續週期信號的帕斯瓦爾公式就是上式的第一行和第四行,是針對功率的,代表一個週期信號的平均總功率等於它的全部諧波分量的平均功率之和。

功率頻譜(週期信號的,別的功率信號我不知道)就指的是各頻率分量的平均功率,即\left | X\left ( n \omega _ { 0 } \right ) \right | ^ { 2 }

三、連續非週期信號的傅里葉變換

1.連續週期矩陣脈衝信號的傅里葉級數

                                             X\left ( n \omega _ { 0 } \right ) = \frac { E _ { \tau } } { T _ { 0 } } \frac { \sin \frac { 1 } { 2 } n \omega _ { 0 } \tau } { \frac { 1 } { 2 } n \omega _ { 0 } \tau }=\frac { E \tau } { T _ { 0 } } S a \left( \frac { n \omega _ { 0 } \tau } { 2 } \right) \quad n = 0 , \pm 1 , \pm 2 , \cdots

如上圖所知,頻譜間隔爲\omega _0=\frac{2\pi}{T_0},與T_0成反比,第一個過零點爲n\omega _0 = \frac { 2 \pi } { \tau },與\tau成反比,傅里葉係數的幅值最大值爲\frac { E \tau } { T _ { 0 } },與T_0成反比。那麼當T_0變得很大,\tau不變時,x\left ( t \right )就變成連續非週期信號,頻譜間隔會很小,第一個過零點位置不變,那麼頻譜會變得很密集,直到變成連續的,但這時傅里葉係數的幅值最大值會非常小。

2. 連續非週期信號的傅里葉變換

爲了克服T_0X\left ( n \omega _ { 0 } \right )的影響,引入T_0X\left ( n \omega _ { 0 } \right )=\frac{2\pi X\left ( n \omega _ { 0 } \right )}{\omega _ { 0 }},因其含有單位角頻率所具有的意義,成爲頻譜密度函數,簡稱頻譜。注意非週期信號的頻譜是乘過T_0的。

x\left ( t \right )按週期T_0進行週期性延拓\hat { x } ( t ),得到\hat { x } ( t )的傅里葉級數:

                                                                      \hat { x } ( t ) = \sum _ { n = - \infty } ^ { \infty } \hat { X } \left( n \omega _ { 0 } \right) e ^ { j n \omega _ { 0 } t }

                                                                 \hat { X } \left( n \omega _ { 0 } \right) = \frac { 1 } { T _ { 0 } } \int _ { - \frac { T_0 } { 2 } } ^ { \frac { T _ { 0 } } { 2 } } \hat { x } ( t ) \mathrm { e } ^ { - \mathrm { j } n \omega _ { 0 } t } \mathrm { d } t

我們需要:

                                                                  T_0 \hat { X } \left( n \omega _ { 0 } \right) = \int _ { - \frac { T_0 } { 2 } } ^ { \frac { T _ { 0 } } { 2 } } \hat { x } ( t ) \mathrm { e } ^ { - \mathrm { j } n \omega _ { 0 } t } \mathrm { d } t

T _ { 0 } \rightarrow \infty時,\hat { x } ( t ) \rightarrow x ( t )\hat { X } \left( n \omega _ { 0 } \right) \rightarrow X \left( n \omega _ { 0 } \right)\omega _ { 0 } \rightarrow d \omegan w _ { 0 } \rightarrow \omegaT_0 \hat { X } \left( n \omega _ { 0 } \right)成爲連續的頻譜密度函數,記爲X ( \omega )

                                                                       X ( \omega ) = \int _ { - \infty } ^ { \infty } x ( t ) e ^ { - j \omega t } d t

                                    x ( t ) = \lim _ { T _ { 0 } \rightarrow \infty } \sum _ { n = - \infty } ^ { \infty } \hat { X } \left( n \omega _ { 0 } \right) e ^ { \mathrm { j } n \omega _ { 0 } t }= \lim _ { T _ { 0 } \rightarrow \infty } \sum _ { n = - \infty } ^ { \infty } \frac { 1 } { 2 \pi } T _ { 0 } \hat { X } \left( n \omega _ { 0 } \right) e ^ { \mathrm { j } n w _ { 0 } t } \omega _ { 0 }

因此

                                                                      x ( t ) = \frac { 1 } { 2 \pi } \int _ { - \infty } ^ { \infty } X ( \omega ) e ^ { \mathrm { j } \omega t } \mathrm { d } \omega

上述\mathscr { F } [ x ( t ) ] = X ( \omega )即爲傅里葉變換,\mathscr { F } ^ { - 1 } [ X ( \omega ) ] = x ( t )即爲傅里葉逆變換。

                              \begin{align*}x ( t ) &= \frac { 1 } { 2 \pi } \int _ { - \infty } ^ { \infty } X ( \omega ) e ^ { \mathrm { j } \omega t } \mathrm { d } \omega= \frac { 1 } { 2 \pi } \int _ { - \infty } ^ { \infty } | X ( \omega ) | \mathrm { e } ^ { j [ \omega t + \varphi ( \omega ) ] } d \omega\\ &= \frac { 1 } { 2 \pi } \int _ { - \infty } ^ { \infty } | X ( \omega ) | \cos [ \omega t + \varphi ( \omega ) ] d \omega+ \frac { j } { 2 \pi } \int _ { - \infty } ^ { \infty } | X ( \omega ) | \sin [ \omega t + \varphi ( \omega ) ] d \omega \end{align*}

因爲第一部分爲偶函數,第二部分爲奇函數,所以:

                                                         x ( t ) = \frac { 1 } { \pi } \int _ { 0 } ^ { \infty } | X ( \omega ) | \cos [ \omega t + \varphi ( \omega ) ] d \omega

表明一個非週期信號包含了頻率從零到無限大的一切頻率的餘弦分量,而各分量的波形峯值\frac { 1 } { \pi } | X ( \omega ) | d \omega是無窮小量,因此與週期信號不一樣,頻譜不能用幅值表示,而用頻譜密度函數X ( \omega )表示,可看做單位頻率的振幅。

3. 能量信號的帕斯瓦爾公式

                                                         \int _ { - \infty} ^ { \infty } \left |x( t ) \right | ^ { 2 } d t =\frac { 1 } { 2\pi }\int _ { - \infty} ^ { \infty }\left | X\left ( \omega \right ) \right | ^ { 2 } d \omega

證明不寫了,就是時域相乘對應頻域卷積,然後用上面那些公式硬算。很明顯部分連續非週期信號(比如在時域上長度有限的矩陣脈衝信號)爲能量信號,就是上面這個式子能求出具體值,極限存在。那麼連續能量信號的\left | X\left ( \omega \right ) \right | ^ { 2 }或者\left | X\left ( \omega \right ) \right | ^ { 2 }/\left ( 2\pi \right )能量密度譜和之前的連續功率信號對比一下,功率信號的\left | X\left ( n \omega _ { 0 } \right ) \right | ^ { 2 }爲功率頻譜哦!

因爲能量密度譜是偶函數,所以信號的總能量爲

                                                                E=\frac { 1 } { \pi }\int _ {0} ^ { \infty }\left | X\left ( \omega \right ) \right | ^ { 2 } d \omega

四、連續週期信號的傅里葉變換

                     X ( \omega ) =\mathscr { F } [ x ( t ) ] = \mathscr { F } \left[ \sum _ { n = - \infty } ^ { \infty } X \left( n \omega _ { 0 } \right) e ^ { j w _ { 0 } t } \right] = \sum _ { n = - \infty } ^ { \infty } X \left( n \omega _ { 0 } \right) \mathscr { F } \left[ e ^ { j n \omega _ { 0 } t } \right]

                                       X( \omega)= \sum _ { n = - \infty } ^ { \infty } 2 \pi X \left( n \omega _ { 0 } \right) \delta \left( \omega - n \omega _ { 0 } \right)

週期信號的傅里葉變換(頻譜密度函數,不是傅里葉級數哦),由無窮多個衝激函數組成,這些衝激函數位於週期信號的各諧波頻率n\omega _0 \quad n = 0 , \pm 1 , \pm 2 , \cdots處,其強度爲傅里葉級數X \left( n \omega _ { 0 } \right)2 \pi倍。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章