使用Librosa生成的光谱图看起来与Kaldi不一致?

时间:2017-04-05 21:05:48

标签: speech-recognition spectrogram mfcc librosa kaldi

我生成了一个"七"使用" egs / tidigits"来自Kaldi的代码,使用23个箱,20kHz采样率,25ms窗口和10ms移位。频谱图如下所示通过MATLAB imagesc函数可视化:

kaldi "seven" spectrogram

我正在尝试使用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谱图时,它看起来不同:

librosa "seven" spectrogram

有人可以帮我理解为什么这些看起来如此不同?在其他WAV文件中我尝试过,我注意到上面有我的Librosa脚本,我的摩擦音(如上面例子中的/ s / in" seven")正在被截断,这对我的影响很大数字分类准确性。谢谢!

1 个答案:

答案 0 :(得分:2)

Kaldi默认在dct输出上应用lifer,这就是为什么上部系数被衰减的原因。详情请见here