STFT和声谱图,梅尔频谱(MelBankFeatures)与梅尔倒谱(MFCCs).pdfVIP

STFT和声谱图,梅尔频谱(MelBankFeatures)与梅尔倒谱(MFCCs).pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
STFT和声谱图,梅尔频谱(MelBankFeatures)与梅尔倒谱(MFCCs) 最近⼩编在做ASC(Acoustic Scene Classification)问题,不管是⽤传统的GMM模型,还是⽤机器学习中的SVM或神经⽹络模型,提 取声⾳特征都是第⼀步。梅尔频谱和梅尔倒谱就是使⽤⾮常⼴泛的声⾳特征形式,⼩编与它们⽃争已有⼀段时间了,在此总结⼀下使⽤它们 的经验。 STFT和声谱图(Spectrogram) 声⾳信号本是⼀维的时域信号,直观上很难看出频率变化规律。如果通过傅⾥叶变换把它变到频域上,虽然可以看出信号的频率分布,但是 丢失了时域信息,⽆法看出频率分布随时间的变化。为了解决这个问题,很多时频分析⼿段应运⽽⽣。短时傅⾥叶,⼩波,Wigner分布等 都是常⽤的时频域分析⽅法。 短时傅⾥叶变换(STFT)是最经典的时频域分析⽅法。傅⾥叶变换(FT)想必⼤家都不陌⽣,这⾥不做专门介绍。所谓短时傅⾥叶变换, 顾名思义,是对短时的信号做傅⾥叶变化。那么短时的信号怎么得到的? 是长时的信号分帧得来的。这么⼀想,STFT的原理⾮常简单,把 ⼀段长信号分帧、加窗,再对每⼀帧做傅⾥叶变换(FFT),最后把每⼀帧的结果沿另⼀个维度堆叠起来,得到类似于⼀幅图的⼆维信号形 式。如果我们原始信号是声⾳信号,那么通过STFT展开得到的⼆维信号就是所谓的声谱图。 有很多⼯具⽅便地⽀持STFT展开,如果你是和⼩编⼀样是python爱好者,可以使⽤scipy库中的signal模块。如果你想做STFT分解的⾳频 信号(wav⽂件)的路径存在path变量中,可通过下⾯的代码得到STFT数据。 1 import wavio 2 import numpy as np 3 from scipy import signal 4 5 wav_struct =wavio.read(path) 6 wav=wav_struct.data .astype(float)/np.power(2, wav_struct .sampwidth*8-1) 7 [f,t,X]=signal.spectral.spectrogram(wav,np.hamming( 1024),nperseg= 1024,noverlap=0,detrend=False,return_onesided=True,mode=magnitude) 8 梅尔频谱和梅尔倒谱 声谱图往往是很⼤的⼀张图,为了得到合适⼤⼩的声⾳特征,往往把它通过梅尔标度滤波器组(mel-scale filter banks),变换为梅尔频 谱。什么是梅尔滤波器组呢?这⾥要从梅尔标度(mel scale)说起。 梅尔标度,the mel scale,由Stevens,Volkmann和Newman在1937年命名。我们知道,频率的单位是赫兹(Hz),⼈⽿能听到的频 率范围是20-20000Hz,但⼈⽿对Hz这种标度单位并不是线性感知关系。例如如果我们适应了1000Hz的⾳调,如果把⾳调频率提⾼到 2000Hz,我们的⽿朵只能觉察到频率提⾼了⼀点点,根本察觉不到频率提⾼了⼀倍。如果将普通的频率标度转化为梅尔频率标度,映射关 系如下式所⽰: 则⼈⽿对频率的感知度就成了线性关系。也就是说,在梅尔标度下,如果两段语⾳的梅尔频率相差两倍,则⼈⽿可以感知到的⾳调⼤概也相 差两倍。 让我们观察⼀下从Hz到mel的映射图,由于它们是log的关系,当频率较⼩时,mel随Hz变化较快;当频率很⼤时,mel的上升很缓慢,曲 线的斜率很⼩。这说明了⼈⽿对低频⾳调的感知较灵敏,在⾼频时⼈⽿是很迟钝的,梅尔标度滤波器组启发于此。 如上图所⽰,40个三⾓滤波器组成滤波器组,低频处滤波器密集,门限值⼤,⾼频处滤波器稀疏,门限值低。恰好对应了频率越⾼⼈⽿越 迟钝这⼀客观规律。上图所⽰的滤波器形式叫做等⾯积梅尔滤波器(Mel-filter bank with same bank area),在⼈声领域(语⾳识别, 说话⼈辨认)等领域应⽤⼴泛,但是如果⽤到⾮⼈声领域,就会丢掉很多⾼频信息。这时我们更喜欢的或许是等⾼梅尔滤波器(Mel-filter bank with same bank height): ⾄于梅尔滤波器怎么⽣成的(各个三⾓滤波器起始频率和终⽌频率怎么得到,等⾯积梅尔滤波器最⾼门限值怎么得到)这个问题,我列在后 ⾯的参考⽂献和博客可以回答你。但如果你只是想使⽤梅尔滤波器组得到梅尔频率谱,并不关⼼它怎么得到的,那么你只需要关注下⾯的代 码段: 1 import numpy as np

文档评论(0)

掌心教学资料库 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档