librosa MFCC 函数中使用了多少个 Mel Filters?

What is the number of Mel Filters used in librosa MFCC function?

librosa.feature.mfcc(y=None, sr=22050, S=None, n_mfcc=20, dct_type=2, 范数='ortho', 升降机=0, **kwargs)

librosa MFCC 函数不包含要为要使用的梅尔过滤器数量传递的参数。有没有办法定义它或它是否使用 librosa.filters.mel.

中使用的默认值 '''n_mels=128'''

mfcc 函数会将额外的关键字参数传递给 librosa.feature.melspectrogram,如 kwargs 下的文档中所指定。

kwargs: additional keyword arguments Arguments to melspectrogram, if operating on time series input

如果您转到 melspectrogram,您会看到它再次链接到 kwargs 下的 librosa.filters.mel

kwargs: additional keyword arguments Mel filter bank parameters. See librosa.filters.mel for details.

因此,librosa.filters.mel 是您应该检查这些参数的地方。这个函数有你需要的所有参数。

librosa.filters.mel(sr, n_fft, n_mels=128, fmin=0.0, fmax=None, htk=False, norm='slaney', dtype=<class 'numpy.float32'>)


总而言之,您可以传递 n_melsfminfmax 等参数或 n_fft(在 librosa.filters.mel 中定义)或hop_length(如 librosa.features.melspectrogram 中所定义)。