Открыт код Spleeter, системы для разделения музыки и голоса

Провайдер потокового вещания Deezer открыл исходные тексты экспериментального проекта Spleeter, развивающего систему машинного обучения для разделения источников звука из сложных звуковых композиций. Программа позволяет удалить из композиции вокал и оставить только музыкальное сопровождение, манипулировать звучанием отдельных инструментов или отбросить музыку и оставить голос для наложения на другой звуковой ряд, создания миксов, караоке или транскрипции. Код проекта написан на языке Python с использованием движка Tensorflown и распространяется под лицензией MIT.

Для загрузки предлагаются уже натренированные модели для отделения вокала (одного голоса) от аккомпанемента, а также для разделения на 4 и 5 потоков, включающих вокал, барабаны, басы, пианино и остальной звук. Spleeter может применяться как в виде Python-библиотеки, так и в форме обособленной утилиты командной строки. В простейшем случае на основе исходного файла создаётся два, четыре или пять файлов с голосом и составляющими из аккомпанемента (vocals.wav, drums.wav, bass.wav, piano.wav, other.wav).

При разделении на 2 и 4 потока Spleeter обеспечивает очень высокую производительность, например, при задействовании GPU разделение звукового файла на 4 потока занимает в 100 раз меньше времени, чем продолжительность исходной композиции. На системе с GPU NVIDIA GeForce GTX 1080 и 32-ядерном CPU Intel Xeon Gold 6134 обработка тестовой коллекции musDB, продолжительностью три часа 27 минут, была выполнена за 90 секунд.

Из достоинств Spleeter, по сравнению с другими разработками в области разделения звука, такими как открытый проект Open-Unmix, упоминается применение более качественных моделей, построенных на основе обширной коллекции звуковых файлов. Из-за ограничений авторских прав исследователи в области машинного обучения ограничены доступом к достаточно скудным общедоступным коллекциям музыкальных файлов, в то время как для Spleeter модели были построены с привлечением данных из обширного музыкального каталога Deezer.

По сравнению с Open-Unmix инструментарий Spleeter выполняет разделение примерно на 35% быстрее при тестировании на CPU, поддерживает MP3-файлы и генерирует заметно более качественный результат (при выделении голоса в Open-Unmix остаются следы некоторых инструментов, что, вероятно, объясняется тем, что модели Open-Unmix натренированы на коллекции из всего 150 композиций).

Источник: http://www.opennet.ru/opennews/art.shtml?num=51838