倒頻譜

维基百科,自由的百科全书
跳转至: 导航搜索

倒頻譜cepstrum),顧名思義,就是將頻譜(spectrum)的英文前四個字母反過來寫。倒頻譜是為了某些時候,為了計算方便,將原來信號的頻譜先轉成類似分貝的單位,再作逆傅立叶变换,把它視為一種新的訊號做處理。倒頻譜有複數倒頻譜,及實數倒頻譜。

倒頻譜被定義在1963的論文(Bogert等)。定義如下:

  • 字義:倒頻譜(信號)是信號頻譜取對數的傅立葉變換後的新頻譜(信號),有時候會稱頻譜的倒頻譜。
  • 數學上:信號的倒頻譜 = IFT ( log ( | FT (信号) | ) + j2πm )(m為實數)
  • 演算法:信号 -> 傅立叶变换 -> 取绝对值 -> 取对数 -> 相位展开 -> 逆傅立叶变换 -> 倒频谱

複數倒頻譜擁有頻譜大小跟相位的資訊,實數倒頻譜只有頻譜大小的資訊,各有各的不同應用。

複數倒頻譜與實數倒頻譜[编辑]

複數倒頻譜[编辑]

\widehat {x}\left[ n\right] =\int _{-\dfrac {1} {2}}^{\dfrac {1} {2}}\widehat {X}\left( F\right) e^{j {2 \pi }F}dF
其中\widehat {X}\left[ F\right] = \log |X(F)| + j arg[X(F)]
可能遭遇的問題
一. \log 0 = - \infty
二. arg[X[n]]有無限多的解
事實上,當輸入是實數時,複數倒頻譜會變成實數倒頻譜

實數倒頻譜[编辑]

C \left[ n\right] =\int _{-\dfrac {1} {2}}^{\dfrac {1} {2}} \log |X(F)| e^{j {2 \pi }Fn}dF
可能遭遇的問題
一. \log 0 = - \infty

應用[编辑]

  • 倒頻譜可以被視為在不同頻帶上變化速率的資訊,倒頻譜一開始被發明在地震炸彈產生的地震回音,現今也被使用在分析雷達訊號,以及訊號處理等問題。
  • 自相關倒頻譜(autocepstrum)被定義為倒頻譜的自相關性,自相關倒頻譜有時在分析處理回傳訊號時比倒頻譜還準確。
  • 倒頻譜在處理人聲訊號以及音樂訊號有非常好的效果,例如梅爾頻率倒頻譜(Mel-Frequency Cepstrum),用來做聲音的辨認,偵測音高等。近年來梅耳倒頻譜也被應用在音樂資訊的回覆。
  • 倒頻譜在聲學中可以將聲帶震動的影響去除。
  • 倒頻譜用在處理多路徑問題時(如聲波迴音電磁波的折、反射等),如果將其他路徑干擾視為雜訊,為了消除雜訊,利用倒頻譜,不需測量每條多路徑的延遲時間,可以利用傳送多次信號,觀察其他路徑在倒頻譜上的效果,並且加以濾除。
  • 語音大致上是由音高、聲帶脈衝、聲門波形所組成,我們可以利用倒頻譜將這三種元素在倒頻域上分開,以利於做語音訊號的分析。
  • 倒頻譜的微分適用於影像處理上的圖形辨認(pattern recognition)。
  • 倒頻譜與同型聲音理論(hormomorphic sound theory)有關。

倒頻譜觀念[编辑]

頻譜圖上的獨立變數是頻率,而倒頻譜圖上的獨立變數為倒頻率(quefrency),倒頻率是一種時間的度量單位。舉個例子,聲音訊號取樣速率等於44100赫茲,在倒頻譜上有個很大的值在倒頻率等於100,代表實際上在44100/100=441赫茲有很大的值,這值出現在倒頻譜上因為頻譜上週期性出現,而頻譜上出現的週期與倒頻譜很大的值出現的位置有關。

倒濾波器[编辑]

濾波器(filter)常使用在頻譜上,用來保存或刪除我們所要或不要的資訊,經過上面的許多討論,不難猜到,倒濾波器(lifter)就是在倒頻譜上所使用的濾波器。低通的倒濾波器跟低通濾波器有點類似,它可以藉由在倒頻譜上乘以一個window係數,使倒頻譜上的高倒頻率被壓抑,如此依來,當信號轉回時域空間時會變成一個較平滑的信號。

計算倒頻譜的方法[编辑]

直接計算IDTFT(反離散時間傅立葉變換)[编辑]

\widehat {x}\left[ n\right] =\int _{-\dfrac {1} {2}}^{\dfrac {1} {2}}\widehat {X}\left( F\right) e^{j {2 \pi }F}dF
問題: \widehat {X}\left( F\right) 可能會無限大, 且對於arg(x[n])有無限多個解

利用Z轉換的零點與極點[编辑]

先對信號做Z轉換, 並整理一下係數, 讓他變成下面的形式
X\left( Z \right)=\cfrac{A{Z^r}\prod_{k=1}^{m_i}(1-{a_k}{Z^{-1}})\prod_{k=1}^{m_0}(1-{b_k}Z)} {\prod_{k=1}^{P_i}(1-{c_k}{Z^{-1}})\prod_{k=1}^{P_0}(1-{d_k}Z)}
其中\left| a_{k}\right| , \left| b_{k}\right| , \left| c_{k}\right| , \left| d_{k}\right| \leq 1

分子:
第一項A是係數
第二項Z^r是延遲
第三項是位於單位圓內的零點
第四項是位於單位圓外的零點

分母:
第一項是位於單位圓內的極點
第二項是位於單位圓外的極點

X\left( Z \right)取log變成\widehat {X}\left( Z\right)
\widehat {X}\left( Z\right)=log X\left( Z \right)=\log A + r \log Z + \sum_{k=1}^{m_i} \log (1-{a_k}{Z^{-1}}) + \sum_{k=1}^{m_0} \log (1-{b_k}Z) 
- \sum_{k=1}^{P_i} \log (1-{c_k}{Z^{-1}}) - \sum_{k=1}^{P_0} \log (1-{d_k}Z)
假設r=0, 因為這只是延遲, 並不會破壞波形
根據Z轉換所得到的系數, 我們可以利用泰勒展開得到Z的反轉換
\widehat {x}\left[n\right]=\begin{cases} \log A  & \mbox{if }n=0 \\
- \sum_{k=1}^{m_i} \cfrac{{a_k}^n}{n} + \sum_{k=1}^{P_i} \cfrac{{c_k}^n}{n} & \mbox{if }n>0 \\
\sum_{k=1}^{m_0} \cfrac{{b_k}^{-n}}{n} - \sum_{k=1}^{P_0} \cfrac{{d_k}^{-n}}{n} & \mbox{if }n<0 \end{cases}

注意事項
1.\widehat {x}\left[ n\right]總是IIR(無限脈衝響應)
2.對於FIR(有限脈衝響應)的情況, c_k=0, d_k=0

利用Z轉換與微分[编辑]

Z \cdot \widehat {X}'\left( Z\right)=Z \cdot \cfrac{\widehat {X}'\left( Z\right)}{{X}\left( Z\right)}
Z {X}'\left( Z\right) = Z \widehat {X}'\left( Z\right) \cdot {X}\left( Z\right)
對其做Z的反轉換
nx[n]= \sum_{k=- \infty }^{\infty } k \widehat {x}\left[ k\right] x[n-k]

x[n]= \sum_{k=- \infty }^{\infty } \frac{k}{n} \widehat {x}\left[ k\right] x[n-k] \quad for \ n \neq 0

分別對於x[n]的四種不同的狀況做延伸
1.對於x[n]是因果(causal)和最小相位(minimum phase) i.e. x[n]=\widehat {x}\left[ n\right]=0, n<0
對於x[n]= \sum_{k=- \infty }^{\infty } \frac{k}{n} \widehat {x}\left[ k\right] x[n-k] \quad for \ n \neq 0
可得出
x[n]= \sum_{k=0}^{\infty } \frac{k}{n} \widehat {x}\left[ k\right] x[n-k] \quad for \ n>0

x[n]= \widehat {x}\left[ n\right]x[0] + \sum_{k=0}^{n-1} \frac{k}{n} \widehat {x}\left[ k\right] x[n-k]
2.對於x[n]是最小相位(minimum phase)
\widehat {x}\left[ n\right]=\begin{cases} 0 & \mbox{if }n0 \\
\log A & \mbox{if }n=0 \end{cases}
3.對於x[n]是反因果(anti-causal)且最大相位(maximum phase) i.e. x[n]=\widehat {x}\left[ n\right]=0, n>0
\begin{align} 
x[n] & = \sum_{k=n}^{0} \cfrac{k}{n}\widehat {x}\left[ k\right] x[n-k] \quad for \ n<0 \\
& = \widehat {x}\left[ n\right] x[0] + \sum_{k=n+1}^{0} \cfrac{k}{n} \widehat {x}\left[ k\right] x[n-k] \\
\end{align}
4.對於x[n]是最大相位(maximum phase)
\widehat {x}\left[ n\right]= \begin{cases} 0  & \mbox{if }n>0 \\ 
\cfrac{x[n]}{x[0]} - \sum_{k=n+1}^{0} \cfrac{k}{n} \widehat {x}\left[ k\right] \cfrac{x[n-k]}{x[0]} & \mbox{if }n<0 \\
\log A & \mbox{if }n=0 \end{cases}

特性[编辑]

1. 複數倒頻譜至少以\frac{1}{n}的速度衰退
|\widehat {x}\left[ n\right]|=c |\frac{{\alpha}^n}{n}| \quad - \infty<n<\infty
其中 \alpha =max(a_k,b_k,c_k,d_k)
2. 如果X(Z)沒有在單位圓以外的零點和極點, 則
\widehat {x}\left[ n\right]=0 \quad for \ all \ n<0
因為b_k,d_k=0
3. 如果X(Z)沒有在單位圓以內的零點和極點, 則
\widehat {x}\left[ n\right]=0 \quad for \ all \ n>0
因為a_k,c_k=0
4. 如果x[n]是有限長度, 則\widehat {x}\left[ n\right]是無限長度

梅爾頻率倒頻譜[编辑]

梅爾頻率倒頻譜是倒頻譜的一種應用,梅爾頻率倒頻譜常應用在聲音訊號處理,對於聲音訊號處理比倒頻譜更接近人耳對聲音的分析特性,而梅爾頻率倒頻譜與倒頻譜的差別在於:

  1. 梅爾頻率倒頻譜的頻帶分析是根據人耳聽覺特性所設計,人耳對於頻率的分辨能力,是由頻率的"比值"決定,也就是說,人耳對200赫茲和300赫茲之間的差別與2000赫茲和3000赫茲之間的差別是相同的。
  2. 梅爾頻率倒頻譜是針對訊號的能量對數,而倒頻譜是針對訊號原始在頻譜上的值取對數
  3. 梅爾頻率倒頻譜是使用離散餘弦轉換,倒頻譜是用離散傅立葉變換
  4. 梅爾頻率倒頻譜係數足夠描述語音的特徵。


梅爾頻率倒頻譜係數(MFCCs)的推導步驟:

  1. 將信號做傅立葉變換
  2. 頻譜上的值取絕對值在平方成為能量,在乘上頻譜上對應的梅爾頻率倒頻譜三角重疊窗(window)的係數。
  3. 對每個梅爾頻率取對數
  4. 離散餘弦轉換
  5. 求得梅爾頻率倒頻譜係數。

梅爾頻率倒頻譜應用[编辑]

  • 梅爾頻率倒頻譜係數常利用在辨認語音技術上,例如辨認電話中說話的人的身份。
  • 利用每種樂風、或樂器在梅爾頻域上有不同特性來分析音樂的種類與類型,並且可以加以分類。

雜訊敏感性[编辑]

梅爾頻率倒頻譜係數很容易被外來的雜訊所破壞,因此有些研究結果指出,在求梅爾頻率倒頻譜係數時,在作離散餘弦轉換前,提升適當的能量(大約2或3倍),以減少雜訊在低能量成份的影響。

卷積[编辑]

倒頻譜領域上的一項重要的特性為二信號卷積之產生,其產生之程序為二倒頻譜值(cepstra)之相加:

x_1 * x_2 \rightarrow x'_1 + x'_2

參考文獻[编辑]

  1. B. P. Bogert, M. J. R. Healy, and J. W. Tukey: "The quefrency alanysis of time series for echoes: cepstrum, pseudo-autocovariance, cross-cepstrum, and saphe cracking". Proceedings of the Symposium on Time Series Analysis (M. Rosenblatt, Ed) Chapter 15, 209-243. New York: Wiley, 1963.
  2. D. G. Childers, D. P. Skinner, R. C. Kemerait, "The Cepstrum: A Guide to Processing," Proceedings of the IEEE, Vol. 65, No. 10, October 1977, pp. 1428-1443.
  3. Jian-Jiun Ding, Advanced Digital Signal Processing class note,the Department of Electrical Engineering, National Taiwan University (NTU), Taipei, Taiwan, 2008