yeyupiaoling / MASR

Pytorch实现的流式与非流式的自动语音识别框架,同时兼容在线和离线识别,目前支持Conformer、Squeezeformer、DeepSpeech2模型,支持多种数据增强方法。
Apache License 2.0
563 stars 100 forks source link

是spectrogram还是mfcc特征呢? #40

Closed lywhz closed 2 years ago

lywhz commented 2 years ago

你好,我看了代码,有个地方一直没有明白:语音数据预处理的后,输入到神经网络的是声谱图(spectrogram)还是梅尔声谱图(mel-spectrogram)还是mfcc特征呢?麻烦您解答一下,谢谢!!

yeyupiaoling commented 2 years ago

可以选择的:https://github.com/yeyupiaoling/MASR/blob/bc4418fc739845d970e734e368dc1415b9fef475/train.py#L30

lywhz commented 2 years ago

您好,我是去年下载的您代码,和这个版本不一样,请问您之前的这个函数的返回值spec是声谱图(spectrogram)还是梅尔声谱图(mel-spectrogram)还是mfcc特征呢?

def spectrogram(wav, normalize=True): # D = librosa.stft(wav, n_fft=n_fft, hop_length=hop_length, win_length=win_length, window=window) spec, phase = librosa.magphase(D) spec = np.log1p(spec) spec = torch.FloatTensor(spec) # 转化为Tensor

if normalize:
    spec = (spec - spec.mean()) / spec.std()

return spec
lywhz commented 2 years ago

` def spectrogram(wav, normalize=True): # D = librosa.stft(wav, n_fft=n_fft, hop_length=hop_length, win_length=win_length, window=window) spec, phase = librosa.magphase(D) spec = np.log1p(spec) spec = torch.FloatTensor(spec) # 转化为Tensor

if normalize:
    spec = (spec - spec.mean()) / spec.std()

return spec

`

yeyupiaoling commented 2 years ago

你用的是这个分支吧:https://github.com/yeyupiaoling/MASR/tree/release/1.0

yeyupiaoling commented 2 years ago

这个是一个声谱图

lywhz commented 2 years ago

是的,我用的是您这个分支。在您这个版本中,您输入到神经网络中的数据是这个函数返回的声谱图是吧

yeyupiaoling commented 2 years ago

是的、