本来是学习打卡的,一时兴起想听听处理的数据到底是个啥动静。。。遂一顿百度,最终锁定playsound,适用于.wav和.mp3格式,且算上头部声明就两行代码,完美!代码如下

from playsound import playsound
 
playsound(‘test.mp3’)

结果就报了如下的错误
在这里插入图片描述
一顿搜都没找到是为啥,其实只是需要把音频文件和代码放到同个文件夹下,害。真就人工6分钟的事人工智能6小时呗。。。

接下来进入正题。

MFCC特征提取

MFCC即Mel Frequency Cepstral Coefficents,梅尔倒谱系数,在语音识别领域中MFCC特征提取是最常用的方法。

具体步骤如下:
对语音信号进行分帧处理
用周期图(periodogram)法来进行功率谱(power spectrum)估计
对功率谱用Mel滤波器组进行滤波,计算每个滤波器里的能量
对每个滤波器的能量取log
进行离散余弦变换(DCT)变换
保留DCT的第2-13个系数,去掉其它

前两步为短时傅里叶分析,作用是得到声谱图,即频率随时间变化的表示。后几步则和梅尔倒谱有关。

第一步分帧是假设在一个很短的时间内,如20-40ms内为一个稳定系统,即一帧。注意不能简单平均分割语音,相邻的帧之间也要重合。通常以25ms为1帧,帧移为10ms,一秒信号有10帧。

傅里叶分析的东西就不多说了,主要看一下梅尔频谱和梅尔倒谱。

这里忽略不了的一个概念便是梅尔滤波器。梅尔滤波器的目标是模拟人耳对声音的感知,因为人耳对低频感知灵敏一点,高频弱一些,且并不会明显感知到声音频率的成倍或者减倍变化。一组梅尔滤波器通常26个三角滤波器,对上述得到的功率谱估计进行滤波。频率越高,滤波器就越宽。
在这里插入图片描述
最终保留这26个滤波器的能量。再对这26个点的信号进行DCT,就可以得到26个倒谱系数啦!

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐