问题描述
我见过this question关于librosa
,python_speech_features
和tensorflow.signal
之间的同一类型的问题。
我试图让torchaudio
和librosa
用相同的参数和基础方法来计算MFCC功能。这是从librosa
到torchaudio
过渡的一部分。
给出:
import numpy as np
import torch
from librosa.feature import mfcc
from torchaudio.transforms import MFCC
sample_rate = 22050
audio = np.ones((sample_rate,),dtype=np.float32)
librosa_mfcc = mfcc(audio,sr=sr,n_mfcc=20,n_fft=2048,hop_length=512,power=2)
mfcc_module = MFCC(sample_rate=sr,melkwargs={"n_fft": 2048,"hop_length": 512,"power": 2})
torch_mfcc = mfcc_module(torch.tensor(audio))
shape
和librosa_mfcc
的{{1}}都是torch_mfcc
,但是数组本身是不同的。例如,(20,44)
是librosa_mfcc[0][0]
,而-487.6101
是torch_mfcc[0][0]
。
我承认我在这里缺乏大量的领域知识,但是正在研究librosa
和torchaudio
文档和参数,以了解它们在MFCC计算中采用的不同途径以及含义每个参数后面。如何使-302.7711
与torch_mfcc
具有相同的值?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)