ParameterError: данные должны иметь тип numpy.ndarray (при использовании Librosa)
Я пытаюсь использовать библиотеку Librosa (Python 3.x) впервые для извлечения функций из нескольких аудиофайлов в формате WAV. Я сталкиваюсь с проблемой, в которой говорится, что данные должны иметь тип numpy.ndarray, даже если они этого типа. Вот мой код:
mylist - это список всех аудиофайлов wav в моем каталоге.
import os
import librosa
mylist= os.listdir('RawData/')
for y in mylist:
X, sample_rate = librosa.load('RawData/'+y, res_type='kaiser_fast')
print(type(sample_rate))
sample_rate = np.array(sample_rate)
print(type(X))
print(type(sample_rate))
mfccs = np.mean(librosa.feature.mfcc(x=X, sr=sample_rate, n_mfcc=40),axis=0)
И это вывод и ошибка, которая выскакивает:
class 'int'
class 'numpy.ndarray'
class 'numpy.ndarray'
ParameterError Traceback (most recent call last)
ipython-input-23-817ec793d6c4 in module()
7 mfccs = np.mean(librosa.feature.mfcc(x=X,
8 sr=sample_rate,
----> 9 n_mfcc=40),
10 axis=0)
.
.
.
ParameterError: data must be of type numpy.ndarray
Любая помощь приветствуется
1 ответ
Решение
Вы, возможно, хотели сказать librosa.feature.mfcc (y = X,
https://librosa.github.io/librosa/generated/librosa.feature.mfcc.html