librosa能量_librosa中mfcc函数的一点小问题

本文探讨了librosa库在MFCC(Mel Frequency Cepstral Coefficients)计算过程中与预期不同的降维时机。通常,MFCC的维度与梅尔滤波器组数相同,但在librosa中,降维操作是在DCT之后进行的,导致了计算资源的部分浪费。作者比较了librosa与MATLAB中MFCC函数的差异,并指出13维MFCC实际上是24维滤波器的对数能量经过DCT后的低通滤波结果。
摘要由CSDN通过智能技术生成

(图摄于阿姆斯特丹梵高博物馆)

在重读《解析深度学习:语音识别实践》中,发现有段文字跟我预想的并不太一样:

在我的印象中,mfcc的维度应该和梅尔滤波器组数是一样的:stft->mel

这个图(FBank与MFCC - sun___shy的博客 - CSDN博客)就能够说清楚,然后再过log(||)和DCT就是MFCC了。

def mfcc(y=None, sr=22050, S=None, n_mfcc=20, dct_type=2, norm='ortho', **kwargs):

if S is None:

S = power_to_db(melspectrogram(y=y, sr=sr, **kwargs))

return scipy.fftpack.dct(S, axis=0, type=dct_type, norm=norm)[:n_mfcc]

和它调用的子函数

def melspectrogram(y=None, sr=22050, S=None, n_fft=2048, hop_length=512,

power=2.0, **kwargs):

S, n_fft = _spectrogram(y=y, S=S, n_fft=n_fft, hop_length=hop_length,

power=power)

# Build a Mel filter

mel_basis

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值