Jak podzielić dźwięk rozmowy telefonicznej na ciszę / brak ciszy?

9

Mój problem polega na tym, że nie znam energii szumu tła, więc nie mogę po prostu przekroczyć energii. Przetwarzanie odbywa się w czasie rzeczywistym, a ja mam około 500 ms do podjęcia decyzji. Idealnie chciałbym, aby ciche spółgłoski uważane były za brak ciszy.

Michael Litvin
źródło
6
Nie mam wystarczających informacji, aby udzielić pełnej odpowiedzi, ale twój problem nazywa się wykrywaniem aktywności głosowej . Nie ma jednego uzgodnionego najlepszego sposobu, aby to zrobić, a jeśli spojrzysz, prawdopodobnie natkniesz się na wiele różnych podejść. Być może niektórzy inni mogą to trochę ulepszyć.
Jason R
@Michael Litvin, istnieje klasa filtrów nieliniowych (używanych w „wykrywaniu energii” pod nazwą „Teager-Kaiser”. Myślę, że jest to podzbiór tego, co jest znane jako „jądra voltera”. Przepraszam, nie mogę podać żadnych więcej informacji, ale jeśli poszukasz tych słów, możesz znaleźć to, czego szukasz. Wiem, że metoda Teager-Kaiser jest używana do „kiedy” zaczynają się dźwięki wielorybów VS po prostu hałas w tle.
Spacey

Odpowiedzi:

4

Istnieje kilka parametrów, na które możesz spojrzeć:

  1. Ogólna energia
  2. Spektrum krótkoterminowe: mowa ma dość charakterystyczne „różowe” spektrum, a hałas (który zachodzi podczas części niemówionych) ma tendencję do bycia białym, jeśli jest zdominowany elektrycznie, lub „czerwonego” (tj. Ciężkiego niskiej częstotliwości), jeśli jest tłem akustycznym hałas lub szum mikrofonu
  3. Statystyka amplitudy. Większość sygnałów szumowych ma rozkład Gaussa, mowa jest bliższa rozkładowi Laplace'a

Myślę, że połączenie tych trzech powinno dać dość solidny schemat wykrywania.

Hilmar
źródło