webrtc vad для поиска начала (возможно короткого) высказывания - PullRequest
0 голосов
/ 25 апреля 2019

Нам хотелось бы знать, когда в аудиофайле начинается высказывание. Выражение может быть целым предложением или очень коротким, например одно слово. Может быть некоторый фоновый шум (дыхание, скрип, вентиляторы и т. Д.). В настоящее время мы используем простой пороговый метод (если звук довольно громкий, пользователь начинает говорить), но иногда он не срабатывает, если слышен достаточно громкий шум.

Мы экспериментировали с webrtc-vad ( hs , js ), но похоже, что ответы 1 / True ("is voice") так же часто звучат как шум что касается голоса.

В примере кода, использующем webrtc-vad, я вижу, что они часто ищут последовательности из 1-ответов в строке / в течение промежутка времени, как в примере кода mozilla webrtcvad_js , но это не кажется чтобы помочь нам много. Постоянно писать ответ, когда тестирование освещает, например, первая серия 1 от меня говорит «я», а вторая от меня осторожно ставит чашку с кофе на стол:

00000000000000000001111111000000000000000000001111111100000000000000

Последовательности имеют примерно одинаковую длину :( Игра с агрессивностью только делает ее немного хуже.

Разве webrtc-vad просто не подходит для этой задачи? Или это все еще может быть полезным в качестве первого фильтра? Может быть, второй фильтр должен проверить, что большая часть звука находится в диапазоне 50–300 Hz? (Я знаю, что мог бы отправить его через полный конвейер преобразования текста в речь и посмотреть, удастся ли ему превратить это в нечто разборчивое, но это кажется излишним, если просто узнать , когда кто-то начинает говорить…)

1 Ответ

1 голос
/ 26 апреля 2019

Существуют более продвинутые VAD, которые используют машинное обучение, они будут работать лучше:

https://github.com/jtkim-kaist/VAD

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

Нет, это не перебор, на самом деле это правильно, это также помогает распознавателю правильно оценивать шум, таким образом, дает большую точность.

...