语音中常用输入特征的提取过程:MFCC、FBank

介绍

要了解 MFCC 的提取流程,我们先复习一下相关知识。

梅尔(Mel)频率

梅尔频率为人耳所感知到的声音频率。当音频的物理频率 f f f 在1kHz 以下,其梅尔频率 M e l ( f ) Mel(f)M e l (f ) 与 f f f 近似为线性关系,而在1kHz 以上则近似为对数关系。两者的对应关系可用下式来近似:
M e l ( f ) = 1127 l n ( 1 + f / 700 ) Mel(f)=1127{\rm ln} (1+f/700)M e l (f )=1 1 2 7 l n (1 +f /7 0 0 )
在 f > f>f > 1kHz 时,对数曲线如下:

语音中常用输入特征的提取过程:MFCC、FBank

曲线斜率逐渐减小,即改变相同的 f f f,在频率较低处的 M e l ( f ) Mel(f)M e l (f ) 变化更大,而在频率较高处的 M e l ( f ) Mel(f)M e l (f ) 变化更小,因此人耳对较低频率更为敏感,而对较高频率更为不敏感。(注意这里说的较高频率、较低频率都是1kHz 以上的频率)

; 掩蔽效应和临界带宽

当两个声音的频率差小于某个带宽 W W W 时,人耳无法分出而把两个声音听成一个的现象称为掩蔽效应,W W W 则称为临界带宽。当声压恒定时,一段音频的频率在临界带宽内变化,人耳所感知到的只是该带宽中心频率的一个纯音,而无法感知其频率变化。
根据前面的分析,在频率大于1kHz时,人耳对较低频率更为敏感,因此较低频率处的掩蔽效应较弱,临界带宽更小;而频率较高处的掩蔽效应更强,临界带宽更大。(这里说的临界带宽是在物理频率刻度下,梅尔频率刻度下临界带宽是一直不变的,因此梅尔频率更符合人的听觉感知)

Mel滤波器

语音中常用输入特征的提取过程:MFCC、FBank

Mel滤波器是一组三角形滤波器,每个滤波器都是在一个临界带宽内的带通滤波器,由于临界带宽随着频率越来越大,因此滤波器组由密到疏,且带宽内中心频率的响应要大,两边响应要小。
进行滤波时,每个带通滤波器 j j j 和信号幅度的加权和 m j m_j m j ​ 为该滤波器的输出,若有 p p p 个滤波器,则可提取到 p p p 维的特征 [ m 1 , m 2 , . . . , m p ] [m_1, m_2, …, m_p][m 1 ​,m 2 ​,…,m p ​]。
(至于为什么是三角形的,我觉得也可以换成别的,只要是带通即可)

; MFCC提取流程

1.预加重

假设 x ( n ) x(n)x (n ) 为原信号,则按照下式进行加重:
y ( n ) = x ( n ) − 0.97 x ( n − 1 ) y(n)=x(n)-0.97x(n-1)y (n )=x (n )−0 .9 7 x (n −1 )
y ( n ) y(n)y (n ) 为加重后的信号。
从频率上看,相当于将原始信号通过一个高通滤波器:

[En]

From a frequency point of view, it is equivalent to passing the original signal through a high-pass filter:

H ( z ) = 1 − 0.97 z − 1 H(z)=1-0.97z^{-1}H (z )=1 −0 .9 7 z −1
目的是突出高频,减少嘴唇辐射的影响。

[En]

The aim is to highlight the high frequency and reduce the effect of lip radiation.

2.加窗

S w ( n ) = y ( n ) ∗ W ( n ) S_w(n)=y(n)W(n)S w ​(n )=y (n )∗W (n )
一般采用汉明窗。
语音信号本身并不稳定,但在成帧后,每一帧都被视为平滑的,因此会导致帧的开头和结尾不连续,加窗使整体更连续,减少了吉布斯效应。

[En]

The speech signal itself is not stable, but after framing, it is treated as smooth in each frame, so it will lead to discontinuity at the beginning and end of the frame, and windowing makes the whole more continuous and reduces the Gibbs effect.

因为汉明窗口削弱了两侧的数据,所以当移位帧时,它会部分重叠,从而确保削弱的部分出现在下一帧中。

[En]

Because the hamming window weakens the data on both sides, it partially overlaps when the frame is shifted, ensuring that the weakened part appears in the next frame.*

3.DFT

语音中常用输入特征的提取过程:MFCC、FBank

; 4.Mel滤波

为了更贴合人耳感知,把原信号的物理频率刻度换成 Mel 刻度。
设一组有M M M个带通滤波器,其中第 m m m 个滤波器的加权系数为H m H_m H m ​,则滤波得到的特征为 S = [ S 1 , S 2 , . . . , S M ] S=[S_1, S_2, …, S_M]S =[S 1 ​,S 2 ​,…,S M ​], 其中 S i S_i S i ​ 为第 i i i 个滤波器的输出能量:

语音中常用输入特征的提取过程:MFCC、FBank

取对数可实现信号的同态处理,便于去除卷积通道噪声。

[En]

Taking logarithm is to realize homomorphic signal processing, which is convenient to remove convolution channel noise.

5.DCT变换

由于 Mel 滤波器组之间有重叠,因此上一步得到的特征维度之间会有相关性。有些情况下不需要特征的相关特性,因此利用 DCT 去相关:

语音中常用输入特征的提取过程:MFCC、FBank

注意DCT变换后,能量基本集中在低频,因此只需取前面几维即可,相当于对上一步得到的特征进行了降维操作。

; Fbank提取流程

FBank 特征不需要做 DCT 去相关,即在第4步 Mel 滤波后,得到的特征即为 FBank 特征。FBank 各维度之间有相关性,而一般来说 CNN 能够有效地利用这种相关性,因此 CNN 中用 FBank 作为输入性能更好。

总结

语音中常用输入特征的提取过程:MFCC、FBank

Original: https://blog.csdn.net/ly41811/article/details/117025126
Author: ly41811
Title: 语音中常用输入特征的提取过程:MFCC、FBank

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/515141/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球