pyhton中用librosa.feature.mfcc提取mfcc的一个坑
我们在提取一个wav的mfcc特征的时候,如果直接这样写:
from librosa import feature
sample = wav.read('./audio_data/male_audio/M_1298636292/1298636292_1.wav')
rate, sig = sample
mfcc_feats = feature.mfcc(y = sig, sr = rate)
这样的话会报错:
librosa.util.exceptions.ParameterError: data must be floating-point
提示输入的y必须是浮点型,如果直接强制转换整形的y为浮点型效果不好,实际上我也没有成功,于是我们可以将y=sig直接归一化
sig = sig/max(abs(sig))
归一化之后提取mfcc就没有报错了:
from librosa import feature
sample = wav.read('./audio_data/male_audio/M_1298636292/1298636292_1.wav')
rate, sig = sample
sig = sig/max(abs(sig))
mfcc_feats = feature.mfcc(y = sig, sr = rate)

在使用Python的librosa库提取音频MFCC特征时,若直接读取wav文件并提取特征,会遇到ParameterError异常,提示输入数据类型错误。解决办法是先将信号数据归一化,即除以其绝对值的最大值。
4万+

被折叠的 条评论
为什么被折叠?



