Несоответствие повторной выборки Либроса - PullRequest
1 голос
/ 21 октября 2019

Я использую библиотеку Librosa для загрузки и повторной выборки списка аудиофайлов. Мой код -

for folder in os.listdir(dir):
    print(os.path.join(dir, folder))
    for file in os.listdir(os.path.join(dir, folder)):
        if file.endswith("wav"):
            labels.append(str(folder))
            data, sampling_rate = librosa.load(os.path.join(dir, folder, file))
            samples = librosa.core.resample(data, sampling_rate, 15000)
            audio.append(samples)

    else:
        continue

Значение sampling_rate при загрузке аудио по умолчанию = 22050.

При подаче всех этих аудио в машинное обучение выдается «ValueError: установка элемента массива споследовательность". Затем я обнаружил, что некоторые аудиофайлы имеют разный размер. Большинство аудиофайлов имеют размер = 450200. Но остальные из них имеют 455565.

Все аудиофайлы имеют одинаковую длительность.

Но, повторная выборка всех аудиозаписей не даетимеют одинаковый размер данных. Почему это происходит ...

Любое предложение сделать все аудиофайлы с одинаковым размером данных, эта модель машинного обучения успешно работает ...

РЕДАКТИРОВАТЬ:

Использованиеэта функция -

librosa.util.fix_length(y, 450200, mode='edge')

Заставляет звук удалять последние 5365 значений, только из аудио, имеющего размер 455565. Но я думаю, что значения 5365 используются полностью для машинного обучения. Я уже уменьшил частоту дискретизации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...