我使用 Kaldi 的“egs/tidigits”代码生成了“七”话语的声谱图,使用 23 个 bin、20kHz 采样率、25ms 窗口和 10ms 偏移。通过 MATLAB imagesc 函数可视化的频谱图如下所示:
我正在尝试使用 Librosa 作为 Kaldi 的替代品。我使用与上面相同的箱数、采样率和窗口长度/偏移设置了我的代码,如下所示。
time_series, sample_rate = librosa.core.load("7a.wav",sr=20000)
spectrogram = librosa.feature.melspectrogram(time_series, sr=20000, n_mels=23, n_fft=500, hop_length=200)
log_S = librosa.core.logamplitude(spectrogram)
np.savetxt("7a.txt", log_S.T)
然而,当我可视化同一 WAV 文件的 Librosa 频谱图时,它看起来有所不同:
有人可以帮我理解为什么这些看起来如此不同吗?在我尝试过的其他 WAV 文件中,我注意到使用上面的 Librosa 脚本,我的摩擦音(如上例中“七”中的 /s/)被截断,这极大地影响了我的数字分类准确性。谢谢你!
Kaldi 默认在 DCT 输出上应用 lifter,这就是上部系数衰减的原因。查看具体信息here https://dsp.stackexchange.com/questions/26019/sinusoidal-liftering-in-implementations-of-mfcc.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)