时频谱

**时频谱**（）又稱**声譜图**（**voicegram**），是一种描述波动的各频率成分如何随时间变化的热图。利用傅里叶变换得到的传统的2维频谱可展示复杂的波动是如何按比例分解为简单波的叠加（分解为频谱），但是无法同时体现它们随时间的变化。能对波动的时间变量与频率分布同时进行分析的常用数学方法是短时距傅里叶变换，但是直接绘成3维图像的话又不便于在纸面上观察和分析。时频谱在借助时频分析方法的基础上，以热图的形式将第3维的数值用颜色的深浅加以呈现。

## 定義與格式
时频谱通常以热图形式呈現,即以顏色或亮度的變化來表示強度的圖像。

### 常見格式
標準的时频谱是一個具有兩個幾何維度的圖形:一個軸表示時間,另一個軸表示頻率;第三個維度(特定頻率在特定時間的振幅)由圖像中每個點的強度或顏色表示。

格式有許多變化:
* 有時垂直軸和水平軸會互換,使時間由上而下排列
* 有時作為瀑布圖,其中振幅由3D表面的高度而非顏色或強度表示
* 頻率軸和振幅軸可以是線性或對數刻度,取決於圖形的用途

對於音頻,通常使用對數振幅軸(可能以分貝或dB表示)。頻率可以是線性以強調諧波關係,或對數以強調音樂、音調關係。

## 时频分析

时频分析是频谱分析的推广，比频谱分析更加直观。在分析一段隨時間而變化的信號時，若單純以離散（或離散-時間）傅立葉轉換（Discrete (Time) Fourier Transform），我們能得到信號的所有頻率資訊，但是卻缺乏時間的資訊。以語音信號為例，若以離散傅立葉轉換分析（DFT/FFT），可以得知該段聲音中有哪些頻率出現，卻無法得知該頻率出現的時間點。但若以時頻分析（利用短時距傅立葉變換，STFT）來分析語音信號，我們會在每個取樣時間點上乘上一個窗函數，再做離散傅立葉轉換，因此在這段短時間中，我們就具有該信號的頻率成分，即可得知在該段時間中，語音信號的頻率為何，最後將整段信號做時頻分析，就可以得到該信號的時頻分布圖

{X}\left( {t,f} \right) = \int_{ - \infty }^\infty {w\left( {t - \tau } \right)  } {x}\left( {\tau} \right)\,{e^{ - j2\pi \,f\tau }}  d\tau

时頻譜即是描繪信號的時間和頻率分布的热图，顯示時頻分析的結果

SP(t,f)=\left|X(t,f)\right|^2 =X(t,f)X^*(t,f)
## 窗函數
在计算时频谱时,窗函数的选择对结果有重要影响。窗函數用於減少頻譜洩漏,但也會影響時間和頻率分辨率之間的權衡。

### 常用窗函數類型

**矩形窗**(Rectangular window):
* 最簡單的窗函數,在所需區段內為1,區段外為0
* 會在區段邊界產生不連續,導致頻域出現振鈴效應
* 主瓣最窄但旁瓣電平高

**漢寧窗**(Hann window):
* 也稱為Hanning窗,以氣象學家Julius von Hann命名
* 為升餘弦窗,在邊界平滑降至零
* 減少了振鈴偽影,但代價是一定程度的頻率模糊
* 旁瓣以約18 dB/倍頻程的速率衰減

**漢明窗**(Hamming window):
* 由Richard W. Hamming提出
* 與漢寧窗類似但在端點不完全降至零(約0.08)
* 最高旁瓣約-43 dB,比漢寧窗低10 dB
* 由於端點不連續,旁瓣衰減較慢(6 dB/倍頻程)

**布萊克曼窗**(Blackman window):
* 使用更多余弦項的廣義窗函數
* 提供更好的旁瓣抑制(約-74 dB)
* 主瓣比漢寧窗和漢明窗寬約50%

### 時頻分辨率權衡
窗的大小和形狀可以改變。較小(較短)的窗將在時間上產生更準確的結果,但會犧牲頻率表示的精確度。較大(較長)的窗將提供更精確的頻率表示,但會犧牲時間表示的精確度。

這是海森堡不確定性原理的一個實例:兩個共軛變量的精度乘積大於或等於一個常數(通常記為B×T≥1)。

## 進階時頻分析方法
除了基於短時距傅立葉變換的时频谱外,還有其他時頻分析方法可以提供不同的時頻表示。

### 小波變換

**連續小波變換**(Continuous Wavelet Transform, CWT)是一種時頻變換,特別適合分析非平穩信號。

CWT通過將信號與一組小波進行卷積來實現,這些小波由母小波(mother wavelet)經過平移和膨脹生成。數學上,CWT定義為:

:W(a,b) = \frac{1}{\sqrt} \int_{-\infty}^{\infty} x(t) \psi^* \left( \frac{t-b}{a} \right) dt

其中:
* W(a,b) 是小波係數
* a 是尺度參數(與頻率成反比)
* b 是時間平移參數  
* \psi(t) 是母小波
* \psi^* 表示複共軛

**尺度圖**(Scalogram)是CWT的絕對值平方作為時間和頻率函數的圖形表示,類似於STFT的时频谱。

CWT相對於STFT的優勢:
* 可變時頻分辨率:對低頻使用較長的小波以改善頻率定位,對高頻使用較短的小波以改善時間定位
* 克服了STFT的固定窗口大小限制
* 更適合分析包含多尺度特徵的信號

常用的母小波包括:
* Morlet小波:常用於時頻分析
* Haar小波:最簡單的小波
* Daubechies小波系列
* 墨西哥帽小波

### 維格納分布
**維格納-維爾分布**(Wigner-Ville distribution, WVD)是另一種時頻表示方法,定義為:

:W(t, \omega) = \int_{-\infty}^{\infty} x\left(t + \frac{\tau}{2}\right) x^*\left(t - \frac{\tau}{2}\right) e^{-j\omega\tau} d\tau

WVD的特點:
* 實值函數
* 提供高時頻分辨率
* 存在交叉項干擾,對多分量信號會產生虛假的時頻成分

為減少交叉項,發展了多種平滑WVD的變體,如偽維格納分布(Pseudo Wigner-Ville Distribution)和Choi-Williams分布。

## 應用領域

### 語音與音頻處理
时频谱廣泛應用於語音識別、音樂分析和聲學研究中。在早期,模擬时频谱被應用於研究鳥類叫聲等動物聲音。当代數字时频谱的使用對於研究動物叫聲中的頻率調制(FM)特別有用,FM啁啾、寬帶點擊音和社交諧波的區別特徵最容易通過时频谱可視化。

时频谱對於協助克服言語缺陷和對嚴重耳聾人群進行言語訓練也很有用。

### 梅爾時頻譜與深度學習
在基於深度學習的語音合成中,首先由序列到序列模型預測时频谱(或梅爾尺度的时频谱),然後將时频谱饋送到神經聲碼器以生成合成的原始波形。

**梅爾時頻譜**(Mel spectrogram)是一種特殊的时频谱,使用梅爾刻度代替線性頻率刻度,並使用分貝刻度代替線性振幅來表示顏色。

梅爾尺度基於人類感知語音的研究發現,使其適合表示語音期間產生的聲音的聲學信息。

梅爾時頻譜在深度學習中的應用:
* **語音情感識別**:將音頻樣本轉換為梅爾時頻譜圖像,然後用於訓練卷積神經網絡(CNN)模型
* **自動語音識別**:梅爾時頻譜提供比原始音頻或MFCC更豐富的特徵表示
* **音頻分類**:深度學習模型利用梅爾時頻譜作為輸入來識別和分類各種聲音

### 其他應用
时频谱在多個領域都有應用:
* **生物醫學信號處理**:分析心電圖、腦電圖等生理信號
* **地震學**:分析地震波和地震活動
* **射頻系統開發**:使用高清晰度时频谱
* **振動分析**:振動測試工程師使用时频谱分析連續波形的頻率內容

## 限制與信號重建
從时频谱的公式可以看出,时频谱不包含關於其所表示信號的精確甚至近似相位的信息。因此,無法反轉該過程並從时频谱生成原始信號的副本。

然而,在精確初始相位不重要的情況下,可能可以生成原始信號的有用近似值。例如:
* **分析與重合成聲音時頻譜儀**(Analysis & Resynthesis Sound Spectrograph)是一個嘗試執行此操作的電腦程序
* **Pattern Playback**是20世紀40年代末在哈斯金斯實驗室設計的早期語音合成器,將語音聲學模式圖片(时频谱)轉換回聲音

實際上,时频谱中確實存在一些相位信息,但它以另一種形式出現,即時間延遲(或群延遲),這是瞬時頻率的對偶。

## 参见
* 廣義頻譜圖
* 重新分布法
* 短時距傅立葉變換
* 光谱仪
* 光學頻譜

## 参考资料