Георгий Маслов georgiymaslov
Визитки, сайты на WordPress, боты, 1С, SEO, серверы, Python+AI
Рейтинг
21 229
№ 43 в каталоге
Отзывы
Профессионализм
10/10
Коммуникация
10 /10
Город
Москва
На сайте с
2017 года
Юридический статус
Самозанятый
Эксперт
Национальной Гильдии Фрилансеров
Безопасная сделка
Деньги списываются после приёмки

Речь из записи диктофона, забитой шумом: вытащен разговор мужчины и женщины

Используемые навыки Automatic Speech Recognition FFmpeg Python Искусственный интеллект

Описание

Часовая запись с диктофона, лежавшего в кармане: сплошной шорох ткани и шум, речь на слух не слышна вообще. Заказчик знал, что разговор там есть, и просил вытащить голоса из-под шума. До этого запись гоняли через обычные шумодавы и редакторы, чище она не становилась.

Решение

Сначала измерение, а не обработка. Спектрограмма всей записи показала, что энергия шума лежит в тех же полосах, что и речь, а сама речь держится на уровне около минус 51 дБ. Отсюда первая поправка: громкость выравнивается не по пикам, пики здесь удары и шорох, а по уровню голоса, speechnorm плюс loudnorm, это дало плюс 36 дБ именно речи.

Разделение источников вместо шумоподавления. Обычные шумодавы обучены на разговорной громкости и тихую речь принимают за шум: спектральный шумодав ffmpeg и DeepFilterNet выдавали бульканье и съедали голос целиком. Сработало разделение источников Demucs, htdemucs с двумя стемами, прогнанное по всей записи: голосовая дорожка отделяется от шороха, и на ней слышно, что говорят мужчина и женщина.

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

Замедленные петли для прослушивания. Кусок в четыре секунды повторяется десять раз подряд с паузами и темпом 0.7: разборчивость растёт от повторов, ухо достраивает недостающее с каждым разом. Темп 0.5 уже даёт треск. Именно петли дали разобранные слова там, где не помогла ни одна модель.

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

Результат

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

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

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

Метод переносится на похожие задачи целиком: сначала измерение уровня речи, потом разделение источников, потом вычитание по внешнему эталону, шумодавы в конце очереди, а не в начале.

Оценили проект:

Другие проекты

Все проекты →
Веб-разработка и IT Скрининг арбитража на торгах по банкротству: автоматическое сопоставление лотов с рыночными ценами
Скрининг арбитража на торгах по банкротству: автоматическое сопоставление лотов с рыночными ценами
46
Веб-разработка и IT Аппаратное GPU-кодирование видео (NVENC) для видеохостинга: до 9× быстрее реального времени
Аппаратное GPU-кодирование видео (NVENC) для видеохостинга: до 9× быстрее реального времени
37
Веб-разработка и IT Алготрейдинговый бот для официального брокерского API: риск-менеджмент, бэктестинг, live-запуск с автовосстановлением
Алготрейдинговый бот для официального брокерского API: риск-менеджмент, бэктестинг, live-запуск с автовосстановлением
37
Веб-разработка и IT SEO видеохостинга: диагностика Google Search Console и возврат видео в индекс Google
SEO видеохостинга: диагностика Google Search Console и возврат видео в индекс Google
29