声音数据处理技术

声音特征提取

语音信号的特征提取,最基本的是短时快速傅立叶变换,在傅立叶变换的基础上再进一步提取语谱图、FBANK和MFCC等特征,通常的流程如下图所示:
在这里插入图片描述

  • 对语音序列做STFT,包括分帧、加窗、预加重等前处理步骤,以及对每一帧的DFT变换,输出的结果是复数(DFT的原因)。(如果是语音识别,则还会在加窗之后加一步预加重。)
    (1)预加重:预加重的目的在于加强高频。需要预加重的原因主要是因为人类的发音器官在向外辐射声波的时候,空气作为语音信号的载体(或者说负载)一方面传播者能量,另一方面则损耗着能量。而介质作为声能量的载体,在声源尺寸一定的情况下,频率越高,介质对声能量的损耗越严重。
    (2)分帧、帧长、帧移:我们需要将不定长的音频切分成固定长度的小段,这一步称为分帧。一般取10-30ms为一帧,为了避免窗边界对信号的遗漏,因此对帧做偏移时候,要有帧叠(帧与帧之间需要重叠一部分)。这样可以避免帧与帧之间的特性变化太大。通常的选择是25ms每帧,帧移为10ms(在语音识别中,一般把帧长取为10~30ms,这样一帧内既有足够多的周期,又不会变化太剧烈。)。接下来的STFT操作是对单帧进行的。
    (3)加窗:每帧信号通常要与一个平滑的窗函数相乘,让帧两端平滑地衰减到零,这样可以降低傅里叶变换后旁瓣的强度,取得更高质量的频谱。常用的窗函数有矩形窗、汉明窗等。

  • STFT的结果取模(即只保留幅度谱,丢弃相位谱)称为线性谱,再加log称为log谱,此处对应语谱图的概念。

  • 对线性谱做mel滤波,即乘上一组mel滤波系数(就是一组三角滤波器,放大了低频的成分),结果称为filter bank(fbank)特征,一般这一步单独拿来用的话也会加上log,称为log fbank特征。(所以fbank也可称之为梅尔谱mel_spec)。(人耳的听觉特性与Mel频率的增长一致。与实际频率在1000Hz以下呈现线性分布,1000Hz以上呈现对数增长。)

  • MFCC特征就是对log fbank特征做DCT变换进行去相关之后的结果,实际操作也就是成一个DCT变换矩阵。DCT的实质是去除各维信号之间的相关性,将信号映射到低维空间

  • 从log谱是可以转到MFCC特征的(求一个exp,再做两个线性变换就行)。此外,DCT变换是可逆的,所以MFCC和fbank特征也可以进行相互转换,但是从谱特征到fbank的过程不行的(滤波组矩阵不可逆)。

原文链接:https://blog.csdn.net/zongza/article/details/88973176
音频先是经过傅里叶变换得到spec,然后经过三角滤波得到mel_spec,最后通过倒谱得到mfcc,这个过程中feature的维度在不断降低,这就意味着可能会存在信息上的损失。
----那么在DNN中到底该选哪个作为输入呢?

  • DNN做声学模型时,一般用fbank,不用mfcc,因为fbank信息更多 (mfcc是由mel fbank有损变换得到的)。
  • mfcc一般是GMM做声学模型时用的,因为通常GMM假设是diagonal协方差矩阵,而cepstral coefficient更符合这种假设。
  • linear spectrogram里面冗余信息太多了,维度也高,所以一般都不用。
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值