整首歌的mfcc与为同一首歌的片段计算的mfcc不同

时间:2018-03-09 14:43:36

标签: python mfcc librosa

我用30秒的歌曲计算MFCC,帧大小为25ms,跳跃大小为10ms,采样率为22050

spectro=librosa.feature.melspectrogram(track[1], sr=sampleRate, n_fft=int(sampleRate*0.025), hop_length=int(sampleRate*0.01))
frames_mfcc=librosa.feature.mfcc(track[1], S=spectro, sr=sampleRate, n_mfcc=13)

然后,我对同一首歌的1秒段做了同样的事情。 但是当我用长长的歌曲搜索短歌的系数时,用一个滑动窗口,我从未获得完美或完美的匹配。

可能是什么问题?我错过了什么吗?

1 个答案:

答案 0 :(得分:0)

只是这个问题,所以请尝试回答。 首先,您需要转到频域。这是通过快速傅立叶变换完成的。在您的情况下,如果您要根据频率获得22050点,则必须根据时间进行定义。因此,如果您错过一个-由于将整数舍入为二进制表示形式,结果可能会有所不同。