语谱图(五) Mel_语谱图之MFCC系数(上)

2023-10-17 05:30
文章标签 系数 mfcc mel 语谱

本文主要是介绍语谱图(五) Mel_语谱图之MFCC系数(上),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

搞清语音是怎么产生的对于我们理解语音有很大帮助。人通过声道产生声音,声道的shape(形状?)决定了发出怎样的声音。声道的shape包括舌头,牙齿等。如果我们可以准确的知道这个形状,那么我们就可以对产生的音素phoneme进行准确的描述。声道的形状在语音短时功率谱的包络中显示出来。而MFCCs就是一种准确描述这个包络的一种特征。

也就是说MFCC 最初的出现,是为了描述音频信号短时功率谱的包络, 而这个包络中有声道形状的信息在里面;

1.MFCC 定义:

Mel 频率倒谱系数(Mel Frequency Cepstrum Coefficient )
缩写是MFCC,Mel频率是基于人耳听觉特性提出来的,它与Hz频率成非线性对应关系。

Mel频率倒谱系数(MFCC)则是利用它们之间的这种关系,计算得到的Hz频谱特征

Mel Frequency Cepstrum Coefficient

2.MFCC作用:

和线性预测倒谱系数LPCC一起用于描述语音特征的参数:能量,基音频率,共振峰值等

3.MFCC 生成

3.1 Mel 频率:

是模拟人耳对不同频率语音的感知。

人类对不同频率语音有不同的感知能力:对1kHz以下,与频率成线性关系,对1kHz以上,与频率成对数关系。频率越高,感知能力就越差了。因此,在应用中常常只使用低频MFCC,而丢弃中高频MFCC。

在Mel频域内,人对音调的感知能力为线性关系,如果两段语音的Mel频率差两倍,则人在感知上也差两倍。 转换公式:B(f)=1125ln(1+f/700) 其中f为频率,B为Mel-频率。

3.2 倒谱:

同态处理(指将非线性问题转化为线性问题)的结果, 分为复数和实数 倒谱, 常用实数倒谱,为语音识别中的重要参数。

倒谱:
就是将信号 1.FT傅里叶变换后, 2. 再进行取对数
3. 再进行傅里叶FT 反变换;

倒谱系数 提取

具体过程:傅里叶变换----->对数运算----->傅里叶反变换。

语音的产生用源、滤波器模型来表示,即把声带振动看作激励源e(n),把声道看成一个滤波器h(n),两者在时域进行卷积,得到语音信号s(n)。为了更好地处理语音,则需要分析s(n)以分别得到e(n)和h(n),这个过程称为解卷过程。

abs(DFT)、Log、IDFT三步为一个卷积同态信号处理系统,经过这三步之后,倒谱域上

 s\'(n)=e\'(n)+h\'(n)

激励源和信道已经变成了相加的关系,这时候通过一个倒滤波器,即图中的Cepstral Liftering,就可以把激励源和信道分开了。

3.3 MFCC 提取流程

  1. 预滤波:CODEC(所谓Codec,就是编码-解码器“Coder-Decoder”的缩写。说得通俗一点,对于音频就是A/D和D/A转换。)前端带宽为300-3400Hz(语音能量主要集中在250~4500Hz)。的抗混叠滤波器。

工程测量中采样频率不可能无限高也不需要无限高,因为一般只关心一定频率范围内的信号成份。为解决频率混叠,在对模拟信号进行离散化采集前,采用低通滤波器滤除高于1/2采样频率的频率成份。实际仪器设计中,这个低通滤波器的截止频率(fc) 为:

截止频率(fc)= 采样频率(fs) / 2.56

  1. A/D变换:8kHz的采样频率,12bit的线性量化精度。

  2. 预加重:通过一个一阶有限激励响应高通滤波器,使信号的频谱变得平坦,不易受到有限字长效应的影响。

将经采样后的数字语音信号s(n)通过一个高通滤波器(high pass filter): H(z)= 1 – a×z -1 , 0.9 a 1.0 (一般取0.95左右)。经过预加重后的信号为: (n)= s(n)– a×s(n-1)。 因为发声过程中声带和嘴唇的效应,使得高频共振峰的振幅低于低频共振峰的振幅,进行预加重的目的就是为了消除声带和嘴唇的效应,来补偿语音信号的高频部分。

  1. 分帧:根据语音的短时平稳特性,语音可以以帧为单位进行处理,实验中选取的语音帧长为32ms,帧叠为16ms。

一般取10-20ms为一帧,为了避免窗边界对信号的遗漏,因此对帧做偏移时候,要有帧迭(帧与帧之间需要重叠一部分)。一般取帧长的一半作为帧移,也就是每次位移一帧的二分之一后再取下一帧,这样可以避免帧与帧之间的特性变化太大。

  1. 加窗:采用哈明窗对一帧语音加窗,以减小吉布斯效应的影响。

语音在长范围内是不停变动的,没有固定的特性无法做处理,所以将每一帧代入窗函数,窗外的值设定为0,其目的是消除各个帧两端可能会造成的信号不连续性。常用的窗函数有方窗、汉明窗和汉宁窗等,根据窗函数的频域特性,常采用汉明窗。公式是在加窗范围内,w(n)=0.54-0.46cos(2pi*n/(n-1))。

吉布斯现象Gibbs phenomenon(又叫吉布斯效应): 将具有不连续点的周期函数(如矩形脉冲)进行傅立叶级数展开后,选取有限项进行合成。当选取的项数越多,在所合成的波形中出现的峰起越靠近原信号的不连续点。当选取的项数很大时,该峰起值趋于一个常数,大约等于总跳变值的9%。这种现象称为吉布斯现象。

  1. 快速傅立叶变换(Fast Fourier Transformation, FFT):将时域信号变换成为信号的功率谱。

由于语音信号在时域上的变化快速而不稳定,所以通常都将它转换到频域上来观察,此时它的频谱会随着时间作缓慢的变化。所以通常将加窗后的帧经过FFT (Fast Fourier Transform)求出每帧的频谱参数。

  1. 三角窗滤波: 用一组Mel频标上线性分布的三角窗滤波器(共24个三角窗滤波器,对信号的功率谱滤波,每一个三角窗滤波器覆盖的范围都近似于人耳的一个临界带宽,以此来模拟人耳的掩蔽效应。

将每帧的频谱参数通过一组N个三角形带通滤波器(N一般为20~30个)所组成的梅尔刻度滤波器,将每个频带的输出取对数,求出每一个输出的对数能量(log energy),k = 1,2,… N。 再将此N个参数进行余弦变换(cosine transform)求出L阶的Mel-scale cepstrum参数。

  1. 求对数:三角窗滤波器组的输出求取对数,可以得到近似于同态变换的结果。

  2. 离散余弦变换(Discrete Cosine Transformation, DCT):去除各维信号之间的相关性,将信号映射到低维空间。

  3. 谱加权:由于倒谱的低阶参数易受说话人特性、信道特性等的影响,而高阶参数的分辨能力比较低,所以需要进行谱加权,抑制其低阶和高阶参数。

  4. 倒谱均值减(Cepstrum Mean Subtraction, CMS):CMS可以有效地减小语音输入信道对特征参数的影响。

  5. 差分参数:大量实验表明,在语音特征中加入表征语音动态特性的差分参数,能够提高系统的识别性能。在本系统中,我们也用到了MFCC参数的一阶差分参数和二阶差分参数。

  6. 短时能量:语音的短时能量也是重要的特征参数,本系统中我们采用了语音的短时归一化对数能量及其一阶差分、二阶差分参数。

短时能量代表着音量的高低,亦即声音振幅的大小,可以根据此能量的值来过滤掉语音信号中的一些细微噪声。当一帧的能量值低于我们定的门槛值(threshold)时,则将此帧作为静音段(silence)。

这篇关于语谱图(五) Mel_语谱图之MFCC系数(上)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/223239

相关文章

Matlab/Simulink中PMSM模型的反电动势系数和转矩系数

Matlab/Simulink中PMSM模型的反电动势系数和转矩系数_matlab pmsm-CSDN博客

语音特征提取方法 (二)MFCC

下面总结的是第四个知识点:MFCC。因为花的时间不多,所以可能会有不少说的不妥的地方,还望大家指正。谢谢。         在任意一个Automatic speech recognition 系统中,第一步就是提取特征。换句话说,我们需要把音频信号中具有辨识性的成分提取出来,然后把其他的乱七八糟的信息扔掉,例如背景噪声啊,情绪啊等等。       搞清语音是怎么产生的对于我们理解语音有很大

CST软件如何计算天线系数Antenna Factor-达索官方授权

天线系数(Antenna Factor)也称天线因子,是指天线附近接收的电场强度与天线端口生成的电压比值,简单讲就是天线接收电磁波,然后转化成电信号的能力;或者反过来,激励电信号之后,天线转化成电磁波的能力。由于电场单位是V/m,所以天线系数(简称AF)的单位就是每米“/m”,如果用dB表示的话,就是dBm^-1. 首先一个问题就是,天线系数和增益有什么区别呢?直接上公式吧,对于50欧姆的天线:

MFCC C++实现与Python库可视化对比

MFCC C++实现与Python库对比 MFCC理论基础 在音频、语音信号处理领域,我们需要将信号转换成对应的语谱图(spectrogram),将语谱图上的数据作为信号的特征。语谱图的横轴x为时间,纵轴y为频率,(x,y)对应的数值代表在时间x时频率y的幅值。通常的语谱图其频率是线性分布的,但是人耳对频率的感受是对数的(logarithmic),即对低频段的变化敏感,对高频段的变化迟钝,所以

用excel进行高稳系数法分析

参考资料:用高稳系数法估算玉米杂交种高产稳产性的探讨                   基于高稳系数法的玉米新组合高产稳产性分析_安红卫         1994年中国学者温振民等提出高稳系数法,该方法主要是通过HSCi值的大小来衡量参试品种高产稳产性的优劣,不仅易于计算,且实用性较强。         高稳系数的公式为: 其中,、分别为第i个品种的平均产量和标准差,为对照品种的平均

C++调用Python和numpy第三方库计算MFCC音频特征实现封装发布

文章目录 项目简介环境准备执行步骤1.新建python虚拟环境2.虚拟环境运行下python代码3.迁移虚拟环境4.编写Cmakelists.txt5.编写C++代码6.编译项目7.测试 项目简介 深度学习程序的边缘部署以性能绝佳的C++为主(⊙﹏⊙),但遇到项目开发周期短,则以功能优先,一些复杂的算法和处理用C++写怕不是得写到天荒地老,于是C++调用python以及第三方

ASR-MFCC特征的物理意义

文章目录 一.MFCC简介二.MFCC特征提取过程三.MFCC的物理含义 一.MFCC简介 梅尔倒谱系数(Mel-scale Frequency Cepstral Coefficients,简称MFCC)是在Mel标度频率域提取出来的倒谱参数,Mel标度描述了人耳频率的非线性特性,它与频率的关系可用下式近似表示: 式中f为频率,单位为Hz。下图展示了Mel频率与线性频率的关系

《面板变系数模型及 Stata 具体操作步骤》

目录 一、文献综述 二、理论原理 三、实证模型 四、稳健性检验 五、程序代码及解释 六、代码运行结果 一、文献综述 在经济和社会科学研究领域,面板数据模型因其能够同时考虑个体和时间维度的信息而被广泛应用。传统的面板数据模型通常假设系数是固定的,但现实中,系数可能会随着个体或时间的变化而变化。面板变系数模型的出现为更准确地分析数据提供了新的方法。 近年来,众多学

【数据分析】数据的离中趋势之二 - 方差和标准差、离散系数

四、方差和标准差 方差是数据组中各数据值与其算术平均数离差平方的算术平均数。方差的平方根就是标准差标准差的本质与平均差基本相同,平均差取绝对值的方法消除离差正负号后用算数平均的方法求平均离差。标准差用平方的方法消除离差的正负号后用离差平方求平均数再开根号。标准差的性质: 标准差度量了偏离平均数的大小标准差是一类平均偏差数列大多数项距离平均数少于1个标准差范围内,极少数项距离平均数 2个 或者 3

系数矩阵的行压缩存储(CSR/CRS), 列压缩存储CCS

转载地址:http://blog.csdn.net/bigpiglet_zju/article/details/20791881 稀疏矩阵(Sparse Matrix)由于有很多0,为了节省空间,一般压缩存储。通常只需要保存非零元素及其位置即可。         下面介绍Compressed Row Storage(CRS)格式或者称为 Compressed sparse