Современные системы пробуждения от голосовых команд (Wakeup Word Detection, WWD), применяемые вместе с алгоритмами автоматического распознавания речи (Automatic Speech Recognition, ASR [2]) достаточно надежно срабатывают, когда соотношение сигнал/шум (Signal-to-Noice Ratio, SNR) на несколько децибел выше 0. Таким образом, при использовании голосового ассистента, когда необходимо прервать его музыку голосовой командой (вклинивание пользователя, "Barge-In"), соотношение уровня голоса пользователя к музыке в анализируемом аудиопотоке (near-end speech to playback echo ratio, NER) должно быть выше 0dB. По той простой причине, что микрофон голосового ассистента находится намного ближе к динамику, чем пользователь, значение NER для голосового ассистента без получится много ниже 0dB, и даже много ниже -10dB. Таким образом, необходимо применение программного обеспечения подавления акустического эха (acoustic echo cancellation, AEC), чтобы умное устройство могло "услышать" голосовую команду пользователя. Как только слово пробуждения было успешно обнаружено, звук воспроизведения музыки может быть приглушен, чтобы можно было успешно распознать дальнейшие голосовые команды.
Рис. 1. Пользователь пытается "вклиниться" (Barge-In) в воспроизведение музыки.
Приложение AEC для вклинивания голоса пользователя отличается от приложений передачи полнодуплексной голосовой информации. WWD не допускает нелинейных искажений в слове пробуждения (wake-up word). Это исключает использование в алгоритме AEC подавителя эха на основе простого вычитателя, заставляя AEC полностью полагаться на линейный адаптивный фильтр, чтобы повысить NER сигнала микрофона. AEC-решение для приложений вклинивания голоса пользователя должно быть надежным для повторов голосовой команды. Адаптивный фильтр не должен ошибаться и удерживать сходимость срабатывания при произнесении пользователем слова пробуждения. Таким образом, пошаговая логика управления (stepsize control logic) и детектирование повторов (double-talk) должны быстро и эффективно реагировать для предотвращения пропуска детектирования слова пробуждения.
Программное обеспечение VOCAL AEC [3] было реализовано как препроцессор для алгоритма WWD. Работа программного обеспечения AEC было проверено на диапазоне значений NER. Таблица 1 показывает значения NER для соответствующих значений коэффициента определения пробуждения от команды пользователя (Wake-up Word Detection Rate, WWDR).
Таблица 1. WWDR с применением AEC.
NER |
WWDR |
0 |
100 |
-3 |
99.7 |
-6 |
99.7 |
-9 |
99.5 |
-12 |
99.2 |
-15 |
96.6 |
Алгоритмы VOCAL AEC доступны с режимом Barge-In, и они оптимизированы для лидеров платформ DSP, таких как микропроцессоры компаний TI, ADI, Intel, ARM и других вендоров.
[Ссылки]
1. Acoustic Echo Cancellation (AEC) Barge-In site:vocal.com. 2. Что такое ASR? 3. Acoustic Echo Cancellation (AEC) Software site:vocal.com. 4. Echo Cancellation Research EC Types & Applications site:vocal.com. 5. Microsoft Cognitive Services Voice Assistant Sample Code site:github.com. |