Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Алгоритмы > Удаление шумов из голосового сигнала.


Автор: XpyDi 26.1.2006, 11:37
Если есть какой-либо материал, или ссылки на него обьясните каким образом можно удалять шумы типа: голосовой коктейль?

Автор: podval 26.1.2006, 22:12
Я бы в такой задаче поступил от обратного: из аццкой смеси выделил полезный сигнал по треку частоты основного тона.

Автор: XpyDi 27.1.2006, 02:01
А насколько реально разделить эти голоса?
т.е. например, выделить самый тихий голос, а остальные в этом случае рассматривать, как шумы.

Автор: val 27.1.2006, 10:12
Цитата

А насколько реально разделить эти голоса?
т.е. например, выделить самый тихий голос, а остальные в этом случае рассматривать, как шумы.


Реально, если на старте посчитать параметры самого тихого голоса (его спектр, основной тон). А потом просто вытаскивать из коктейля сигнал извесной характеристики... Это в теории, на практике не пробовал... smile

Автор: XpyDi 27.1.2006, 15:05
Это все понятно, что если в начале извлечь диктороспецифические характеристики, то потом уже из коктейля можно выделить сигнал, который будет подходить под эти характеристики. Т.е. наша задача состоит в том, чтобы найти моменты, когда говорит только один диктор, выделить его характеристики(возможно занести в список нового диктора, чтобы потом разделять их голоса).
Проблема заключается в том, что неизвестно, как определить те моменты, когда говорит только один человек и что делать, если в исследуемом материале таких моментов нет. smile

Автор: podval 27.1.2006, 17:08
Цитата(XpyDi @ 27.1.2006, 15:05 Найти цитируемый пост)

Проблема заключается в том, что неизвестно, как определить те моменты, когда говорит только один человек и что делать, если в исследуемом материале таких моментов нет


А зачем это надо?

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

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

Автор: DRUID3 27.1.2006, 18:38
Цитата(podval @ 27.1.2006, 17:08 Найти цитируемый пост)

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

Хорошо, что радиоинженера 30-х годов прошлого столетия были с Вами не согласны, не видать бы нам тогда мобил... smile Это я к тому, что, смотря какой шум, smile всегда можно найти параметр, отличающий его от сигнала, по определению.

Цитата(XpyDi @ 27.1.2006, 02:01 Найти цитируемый пост)

А насколько реально разделить эти голоса?
т.е. например, выделить самый тихий голос, а остальные в этом случае рассматривать, как шумы.

Реально, но О-О-О-Очень сложно. Задача очень близка некоторым радиотехническим. ИМХО может стоит копнуть в сторону нейронных, сетей обучив систему различать голоса?

Автор: podval 28.1.2006, 18:03
DRUID3
Условия задачи были определены выше, применительно к ним мы и ведем вполне конкретный разговор, а не растекаемся мыслью о некоторых радиотехнических задачах.
Голосовой сигнал мне доводилось выделять на фоне разных шумов - от шума в кабине реактивного истребителя до шума в кафе "Макдональдс". Так что прошу - говорим по теме.
Строить из себя умника я тоже умею.

Автор: XpyDi 28.1.2006, 21:42
В общем-то ясно, хочешь выделить голос, цепляйся к нему, а все остальной рассматривай как шумы и старайся наиболее эффективно их удалить.
Всем спасибо. smile

Автор: podval 30.1.2006, 11:58
Глянь вот эту статью http://eprints.ecs.soton.ac.uk/328/02/paper.pdf. Это основная идея, как выделить один голос из смеси.

На основе этой методики мне удалось разделить треки отдельных музыкальных инструментов.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)