Skip to content

ZirumAndBigBro/MelGan-WavGan

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MelGAN

Неофициальная реализация MelGAN Иллюстрация к проекту

Пример использования на Сolab. Предобученные веса многоголосой модели

Использование

Настройки

Отредактируйте hparams.py

Поместите аудиофайлы для тренировки в data_dir

Поместите аудиофайлы для тестирования в test_dir

Поместите аудиофайлы для использования в generate_dir

Предобработка

Запустите python melgan.py -r p -f mel

Обучение

Запустите python melgan.py -r t -f mel

Использование

Запустите python melgan.py -r g -f wav для файлов в wav из которого будет считаться мелспектр

Или запустите python melgan.py -r g -f mel для файлов в mel, в нужном формате

WavGAN

Моя сеть. На вход принимает сгенерированный Гриффин лим звук и пытается его подправить. Архитектура генератора похожа на U-net, а дискриминатор взят из MelGAN

Пример использования на Сolab. Предобученные веса многоголосой модели

Использование

Настройки

Отредактируйте hparams.py

Поместите аудиофайлы для тренировки в data_dir

Поместите аудиофайлы для тестирования в test_dir

Поместите аудиофайлы для использования в generate_dir

Предобработка

запустите python wavgan.py -r p -f mel, или используйте мелспектрограммы из melgan.

Или запустите python wavgan.py -r p -f wav, если хотите сразу сгенерировать сигнал Гриффин Лима для ускорения обучения

Обучение

Запустите python wavgan.py -r t -f mel для обучения на mel. Звук будет долго синтезироваться Гриффин Лимом на лету

Или запустите python wavgan.py -r t -f wav для обучения на заранее сгенерированных wav.

Использование

Запустите python wavgan.py -r g -f wav для файлов в wav

Или запустите python melgan.py -r g -f mel для файлов в mel, в нужном формате. Звук будет сначала синтезироваться Гриффин Лимом

Мои дополнения

При тренировке WavGAN пытается реализовать две вещи: реконструировать амплитуду, которая уже содержится в входном сигнале (например из Такотрона), а также создаёт подходящую фазу, которая отсутствует в входном сигнале и которая делает звучание звука более реалистичным. Практика показала, что фаза в приемленном качестве созревает раньше чем амплитуда. И если использовать только фазу, то можно значительно ускорить процесс тренировки, а точнее не дожидаться полной реконструкции амплитуды, которая уже есть в исходном файле. Для более подробного понимания предлагаю посмотреть Colab, созданный автором.

Файл wavgan_phase_changer.py представляет собой модификацию wavgan.py. Звуковой файл на выходе состоит из амплитуды исходного файла и фазы из тренированной модели.

Предобработка

Запустите python wavgan.py -r p -f wav, если хотите сразу сгенерировать сигнал Гриффин Лима для ускорения обучения

Обучение

Запустите python wavgan_phase_changer.py -r t -f wav для обучения на заранее сгенерированных wav.

Использование

Запустите python wavgan_phase_changer.py -r g -f wav для файлов в wav

Модели wavgan и wavgan_phase_changer полностью совместимы.

Мои предобученные веса многоголосой модели (30 голосов, Ж+М, русские)

About

MelGAN and WavGAN Vocoder

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 64.0%
  • Jupyter Notebook 36.0%