-
Hintergrund
-
Sprachverbesserungssysteme in einem Kraftfahrzeug müssen selbstverständlich mit Bedingungen eines niedrigen Signal-Geräusch-Verhältnisses (signal-to-noise ratio - SNR) kämpfen, aber sie müssen auch mit verschiedenen Arten von Geräuschen kämpfen, von denen einige als transient oder „nicht stationär“ betrachtet werden. Wie hierin verwendet, beinhalten nicht stationäre Fahrzeuggeräusche transiente Geräusche aufgrund von Fahrzeugbeschleunigung, Verkehrsgeräuschen, Straßenunebenheiten und Windgeräuschen, sind jedoch nicht darauf beschränkt.
-
Gewöhnliche Fachleute wissen, dass Sprachverbesserungsverfahren nach herkömmlichem Stand der Technik „retrospektiv“ sind, sie verlassen sich auf die Erkennung und Analyse von Geräuschsignalen, die bereits aufgetreten sind, um Geräusche, die vorhanden sind oder von denen erwartet wird, dass sie in der Zukunft auftreten, das heißt Geräusche, die noch nicht geschehen sind, zu unterdrücken. Geräuschunterdrückungsverfahren nach Stand der Technik nehmen somit an, dass Geräusche stabil oder „stationär“ oder mindestens pseudo-stationär sind, das heißt, die Geräusch-Leistungsspektrumsdichte (power spectrum density - PSD) ist stabil und wird deshalb über eine langsame zeitliche Glättung der erkannten Geräusche nahe approximiert oder geschätzt.
-
Wenn Hintergrundgeräusche plötzlich und unerwartet auftreten, wie dies geschieht, wenn ein Fahrzeug zum Beispiel auf eine Straßenoberflächenunvollkommenheit auftrifft, können herkömmliche Geräuscherkennungs-/-Schätzverfahren nach Stand der Technik die Geräusche nicht schnell von Sprache unterscheiden, sondern erfordern stattdessen signifikante Mengen zukünftiger Abtastwerte, die noch nicht geschehen sind. Traditionelle Sprachverbesserungstechniken sind deshalb naturgemäß unzureichend, um sogenannte nicht stationäre Geräusche zu unterdrücken. Ein Verfahren und eine Vorrichtung für das Erkennen und Unterdrücken solcher Geräusche wäre eine Verbesserung gegenüber dem Stand der Technik.
-
Kurzfassung
-
Kurz gesagt, Elemente eines Verfahrens und einer Vorrichtung, um transiente, nicht stationäre Geräusche in einem Audiosignal schnell zu erkennen und zu unterdrücken, werden hierin dargelegt. Die Verfahrensschritte werden auf der Frequenzebene ausgeführt.
-
Als ein erster Schritt wird ein Geräuschmodell erzeugt, das auf einer Analyse der linearen Vorhersagekodierung (linear predictive coding - LPC) eines geräuschvollen Audiosignals basiert.
-
Ein Sprachaktivitätserkenner (voice activity detector - VAD) wird für jede analysierte Frequenz von einer Wahrscheinlichkeit der Anwesenheit von Sprache (speech presence probability - SPP) abgeleitet. Als ein zweiter Schritt wird das in dem ersten Schritt erzeugte Geräuschmodell bei der Frame-Rate des Audiosignals aktualisiert, falls die Sprachaktivitätserkennung (Voice Activity Detection - VAD) dies ermöglicht.
-
Es sei darauf hingewiesen, dass die „Reihenfolge“ der LPC-Analyse vorzugsweise eine große Anzahl (zum Beispiel 10 oder höher) ist, was hierin als „erforderlich“ für Sprache angesehen wird. Geräuschkomponenten werden andererseits mit einem viel niedrigeren LPC-Modell (zum Beispiel 4 oder niedriger) ebenso gut dargestellt. Mit anderen Worten, der Unterschied zwischen LPC höherer Ordnung und LPC niedrigerer Ordnung ist für Sprache signifikant, aber für Geräusche ist das nicht der Fall. Diese Unterscheidung stellt einen Mechanismus für die verzögerungsfreie Trennung von Geräuschen von Sprache bereit, unabhängig von dem in dem Signal dargestellten Energielevel.
-
Als ein dritter Schritt wird eine Ähnlichkeitsmetrik (oder Di-Ähnlichkeit) zwischen LPC-Koeffizienten höherer und niedrigerer Ordnung bei jedem Frame berechnet. Nachdem die Metrik berechnet wurde, wird eine zweite Metrik der „Anpassungsgüte“ der Parameter höherer Ordnung zwischen dem Online-Geräuschmodell und den LPC-Koeffizienten bei jedem Frame berechnet.
-
Ein „Frame“ eines geräuschvollen Audiofrequenzsignals wird als Geräusche klassifiziert, wenn die zwei oben beschriebenen Metriken beide geringer als ihre einzelnen vorberechneten Schwellenwerte sind. Diese in der Entscheidungslogik verwendeten Schwellenwerte werden als Teil des Geräuschmodells berechnet.
-
Wenn ein Geräuschklassifizierer den aktuellen Frame des Signals als Geräusche identifiziert, wird die Geräusch-PSD (power spectral density), das heißt, die Geräuschschätzung, berechnet oder verfeinert, falls auch eine separate Geräuschschätzung basierend auf anderen Sprach-/Geräuschklassifizierungsverfahren (zum Beispiel Sprachaktivitätserkennung (VAD) oder Wahrscheinlichkeit der Anwesenheit von Sprache) existiert.
-
Der Geräuschklassifizierer und das Geräuschmodell werden „on-the-fly“ erzeugt und benötigen kein „Offline“-Training.
-
Die Berechnung der verfeinerten Geräusch-PSD basiert auf der Wahrscheinlichkeit der Anwesenheit von Sprache. Ein Mechanismus ist so eingebaut, dass die Geräusch-PSD nicht überschätzt wird, falls das herkömmliche Verfahren dies bereits getan hat (zum Beispiel in stationärer Geräuschbedingung) . Die Wahrscheinlichkeit von Sprache bestimmt, um wieviel die Geräusch-PSD bei jedem Frame verfeinert werden soll.
-
Die verfeinerte Geräusch-PSD wird für die SNR-Neuberechnung verwendet (SNR der 2. Stufe).
-
Die Geräuschunterdrückungsverstärkungsfunktion wird ebenfalls neu berechnet (Verstärkung der 2. Stufe), basierend auf der verfeinerten Geräusch-PSD und dem SNR.
-
Schließlich wird die verfeinerte Verstärkungsfunktion (NS der 2. Stufe) auf die Geräuschunterdrückungsoperation angewendet.
-
Figurenliste
-
- 1 ist ein Blockdiagramm eines Geräuschschätzers und -Unterdrückers nach dem Stand der Technik.
- 2 ist ein Blockdiagramm eines verbesserten Geräuschschätzers, der dazu ausgebildet ist, nicht stationäre Geräusche, wie zum Beispiel durch plötzliche Beschleunigung, Fahrzeugverkehr oder Straßenunebenheiten verursachte transiente Geräusche, zu erkennen und zu unterdrücken.
- 3 ist ein Flussdiagramm, das Schritte eines Verfahrens für das Verbessern von Sprache durch Schätzen nicht stationärer Geräusche in variablen Geräuschbedingungen darstellt.
- 4 ist ein Blockdiagramm einer Vorrichtung für das schnelle Schätzen nicht stationärer Geräusche in variablen Geräuschbedingungen.
- 5 stellt Spektren dar, die von einem höheren und niedrigeren LPC-Modellen, zusammen mit dem detaillierten Signalspektrum selbst, für eine weibliche Stimme umgewandelt wurden.
- 6 stellt Spektren dar, die von einem höheren und niedrigeren LPC-Modellen, zusammen mit dem detaillierten Signalspektrum selbst, für eine männliche Stimme umgewandelt wurden.
- 7 stellt Spektren dar, die von einem höheren und niedrigeren LPC-Modellen, zusammen mit dem detaillierten Signalspektrum selbst, für Fahrzeuggeräusche (zum Beispiel Motorgeräusche, Straßengeräusche von Reifen und dergleichen) umgewandelt wurden.
- 8 stellt Spektren dar, die von einem höheren und niedrigeren LPC-Modellen, zusammen mit dem detaillierten Signalspektrum selbst, für Windgeräusche umgewandelt wurden.
- 9 stellt Ergebnisse dar, die von einem energieunabhängigen Sprachaktivitätserkenner erzeugt wurden, gemäß Ausführungsformen der Erfindung.
- 10 ist ein schematisches Diagramm eines Geräuschunterdrückungssystems, das einen Sprachaktivitätserkenner mit linearer Vorhersagekodierung beinhaltet, gemäß Ausführungsformen der Erfindung.
-
Detaillierte Beschreibung
-
Wie hierin verwendet, bezieht sich der Begriff „Geräusche“ auf Signale, einschließlich elektrischer und akustischer Signale, die mehrere Frequenzen umfassen und die zufällige Änderungen in den Frequenzen oder Amplituden dieser Frequenzen beinhalten. Gemäß dem I.E.E.E. Standards Dictionary, Copyright 2009 von I.E.E.E., ist eine der Definitionen von „Geräuschen“, dass sie „unerwünschte elektrische Signale, die unerwünschte Wirkungen in den Schaltkreisen eines Steuersystems erzeugen, in dem sie auftreten“ aufweisen. Für ein Freisprech-Sprachkommunikationssystem in dem Fahrzeug werden akustische Geräusche durch Motor, Reifen, Straßen, Wind und Verkehr in der Nähe erzeugt.
-
1 stellt ein Blockdiagramm von Geräuschschätzer 100 nach dem Stand der Technik dar. Geräuschvolles Signal 102, das Sprache und Geräusche umfasst, wird schnellem Fourier-Transformationsprozessor 104 (FFT 104) bereitgestellt. Ausgang 106 des FFT-Prozessors 104 wird herkömmlichem Signal-Geräusch-Verhältnis (SNR) -Schätzer 108 und Geräuschschätzer 110 bereitgestellt. Der Ausgang 106 wird in Dämpfungsfaktor (Unterdrückungsverstärkung) 118 umgewandelt.
-
Der Signal-Geräusch-Verhältnis (SNR) -Schätzer 108 wird Schätzung des Geräuschinhalts 112 des geräuschvollen Signals 102 bereitgestellt. Der Schätzer 108 stellt auch Signal-Geräusch-Verhältnisschätzwert 114 an Geräuschverstärker/-Dämpfer 116 bereit.
-
Der SNR-Schätzer 108, der Geräuschschätzer 110 und der Dämpfer 116 stellen Dämpfungsfaktor 118 für Multiplikator 113 bereit, der Kopien der FFT des geräuschvollen Audiosignals 102 empfängt. Produkt 120 des Dämpfungsfaktors 118 und der FFT 106 sind im Wesentlichen eine Kopie des geräuschunterdrückten Frequenzbereichs des geräuschvollen Signals 102.
-
Inverse Fourier-Transformation (IFFT) 122 wird an Ausgang 124, der eine geräuschunterdrückte „Translation“ in der Zeitebene des in den Geräuschschätzer 100 eingegebenen geräuschvollen Signals 102 ist, ausgeführt. „Geräuschfreies“ Signal 126 wird in Bezug auf Geräuschpegel und Sprachklarheit verbessert. In das Signal 126 können immer noch nicht stationäre Geräuschkomponenten eingebettet sein, da der Geräuschschätzer 100 nicht in der Lage ist, schnell auf transiente oder schnell auftretende Geräuschsignale zu reagieren.
-
2 ist ein Blockdiagramm von verbessertem Geräuschschätzer 200. Der in 2 gezeigte Geräuschschätzer 200 ist im Wesentlichen der gleiche wie der in 1 gezeigte Geräuschschätzer, außer der Hinzufügung von linearem Vorhersagekodierungs (LPC) -Musterabgleichsgeräuschschätzers 202, der dazu ausgebildet ist, schnelle oder schnell auftretende Geräuschübergänge durch Verwenden eines Musterabgleichs von Geräuschdarstellungen mit einer Frequenzbereichskopie der Eingabe des geräuschvollen Signals 102 in das System zu erkennen und darauf zu reagieren, sowie einer Analyse der Ähnlichkeitsmetrik zwischen einer LPC höherer Ordnung und einer LPC niedrigerer Ordnung in dem gleichen Signalstück (Frame) . Das in 2 gezeigte System 200 unterscheidet sich durch die Ähnlichkeitsmetrik und Musterabgleichsgeräuschschätzer 202, der Informationen von den in 1 gezeigten Komponenten nach Stand der Technik empfängt und eine verbesserte oder überarbeitete Schätzung der transienten Geräusche erzeugt.
-
3 stellt Schritte eines Verfahrens für das Verbesserns von Sprache durch Schätzen transienter Geräusche in variablen Geräuschbedingungen dar. Das Verfahren beginnt bei Schritt 302, wo ein geräuschvolles Mikrofonsignal X, das aus Sprache und Geräuschen besteht, von einem Mikrofon erkannt wird. Anders ausgedrückt, das geräuschvolle Signal von dem Mikrofon, X = S + N, wobei „S“ Sprache ist und „N“ ein Geräuschsignal ist.
-
Das geräuschvolle Signal X wird durch Verwenden herkömmlicher Geräuscherkennungsschritte 304 nach Stand der Technik verarbeitet, aber das geräuschvolle Signal X wird auch durch neue Schritte 305 verarbeitet, die im Wesentlichen bestimmen, ob Geräusche auch unterdrückt werden sollten, indem die Ähnlichkeitsmetrik oder ein „Abstand“ zwischen einer LPC höherer Ordnung und einer LPC niedrigerer Ordnung analysiert wird, sowie durch Vergleichen des LPC-Inhalts des geräuschvollen Signals X mit den linearen Vorhersagekoeffizienten (LPC) des Geräuschmodells, die im laufenden Betrieb erzeugt und aktualisiert werden. Das Signal X wird bei Schritt 320 entweder als Geräusche oder Sprache klassifiziert. Nun Bezug nehmend auf die vorherigen Schritte, werden in dem durch das Bezugszeichen 306 identifizierten Schritt die Geräuschcharakteristiken durch Verwenden einer statistischen Analyse bestimmt. Bei Schritt 308 wird eine Wahrscheinlichkeit der Anwesenheit von Sprache berechnet. Bei Schritt 310 wird eine Geräuschschätzung in Form von Leistungsspektraldichte oder PSD berechnet.
-
Eine Geräuschkompensation wird bei Schritt 312 durch Verwenden der Leistungsspektraldichte berechnet oder bestimmt.
-
In den Schritten 314 und 316 wird ein Signal-Geräusch-Verhältnis (SNR) bestimmt und ein Dämpfungsfaktor bestimmt.
-
Nun Bezug nehmend auf die in der mit dem Bezugszeichen 305 bezeichneten Klammer eingeschlossenen neuen Schritte, wird bei Schritt 318 eine Analyse der linearen Vorhersagekoeffizienten an dem Geräuschsignal X ausgeführt. Unter der Bedingung, dass X durch Schritt 308 als Geräusche interpretiert wird, wird das Ergebnis der LPC-Analyse bei Schritt 318 dem LPC-Geräuschmodellerzeugungs- und -Anpassungsschritt 317 bereitgestellt, dessen Ergebnis die Erzeugung eines Satzes von LPC-Koeffizienten ist, die Umgebungsgeräusche über die Zeit modellieren oder darstellen. Der LPC-Geräuschmodellerzeugungs- und -Anpassungsschritt erzeugt somit eine Tabelle oder Liste von LPC-Koeffizientensätzen, von denen jeder Satz entsprechende Geräusche darstellt, wobei die durch jeden Satz von LPC-Koeffizienten dargestellten Geräusche sich von Geräuschen unterscheiden, die durch andere LPC-Koeffizientensätze dargestellt werden.
-
Der LPC-Analyseschritt 318 erzeugt einen Satz von LPC-Koeffizienten, die das geräuschvolle Signal darstellen. Diese Koeffizienten werden mit den Sätzen von Koeffizienten oder Online-Geräuschmodelle verglichen, die über die Zeit in Geräuschklassifizierungsschritt 320 erzeugt werden. (Wie hierin verwendet, bezieht sich der Begriff „Online-Geräuschmodell“ auf ein in „Echtzeit“ erstelltes Geräuschmodell. Und „Echtzeit“ bezieht sich auf eine tatsächliche Zeit, während der ein Ereignis oder ein Prozess stattfindet.) Der Geräuschklassifizierungsschritt 320 kann somit als ein Schritt betrachtet werden, wobei die LPC-Koeffizienten die Sprach- und Geräuschabtastwerte von dem Mikrofon darstellen. Der erste aus der LPC-Analyse empfangene Satz von Abtastwerten stellt somit somit eine Audiokomponente und eine Geräuschsignalkomponente dar.
-
Neben einer LPC-Analyse höherer (zum Beispiel 10.) Ordnung wird bei Schritt 318 auch eine LPC niedrigerer (zum Beispiel 4.) Ordnung für die Eingabe X berechnet. Ein logarithmisches Spektralabstandsmaß zwischen zwei Spektren, das den zwei LPC entspricht, dient als die Ähnlichkeitsmetrik zwischen den zwei LPC. Aufgrund des Fehlens einer inhärenten Spektralstruktur oder einer Unvorhersagbarkeit in dem Fall von Geräuschen wird erwartet, dass die Abstandsmetrik klein ist. Auf der anderen Seite ist die Abstandsmetrik relativ groß, wenn das Signal unter Analyse Sprache ist.
-
Der Abstand des logarithmischen Spektrums wird mit dem euklidischen Abstand zweier Sätze von Cepstral-Vektoren approximiert. Jeder Cepstral-Vektor wird von seinen entsprechenden (höheren oder niedrigeren) LPC-Koeffizienten umgewandelt. Somit kann der Abstand in dem Frequenzbereich berechnet werden, ohne tatsächlich eine rechenintensive Operation auf dem Signal X einzubeziehen.
-
Der logarithmische Spektralabstand oder der Cepstral-Abstand zwischen der LPC höherer und niedrigerer Ordnung wird mit der Frame-Rate berechnet, der Abstand und seine Variation über die Zeit werden bei Schritt 320 mit einem Satz von Schwellenwerten verglichen. Signal X wird als Sprache klassifiziert, wenn der Abstand und sein Bewegungsablauf über bestimmten Schwellenwerten liegen. Ansonsten wird es als Geräusche eingestuft.
-
Das Ergebnis der Geräuschklassifizierung wird einer zweiten Geräuschberechnung in der Form einer Leistungsspektraldichte oder PSD bereitgestellt. Um den Grad der Geräusch-PSD-Verfeinerung zu steuern, empfängt die zweite PSD-Geräuschberechnung bei Schritt 322 die erste Sprachanwesenheitswahrscheinlichkeitsberechnung von Schritt 308 und eine Geräuschkompensationsbestimmung von Schritt 312 als Eingaben.
-
Die zweite Geräuschberechnung durch Verwenden von Leistungsspektraldichte oder PSD wird bei Schritt 324 einer zweiten Berechnung des Signal-Geräusch-Verhältnisses, die auch die bei Schritt 316 erhaltene erste Geräuschunterdrückungsverstärkungsberechnung verwendet, bereitgestellt. Bei 326 wird eine zweite Geräuschunterdrückungsverstärkungsberechnung durchgeführt, die Multiplikator 328 bereitgestellt wird, dessen Ausgangssignal 330 ein geräuschgedämpftes Signal ist, wobei die gedämpften Geräusche transiente oder sogenannte nicht stationäres Geräusche beinhaltet.
-
Nun Bezug nehmend auf 4, umfasst eine Vorrichtung für das Verbessern von Sprache durch Schätzen von transienten oder nicht stationären Geräuschen einen Satz von Komponenten oder einen Prozessor, der mit einem nichtflüchtigen Speichergerät gekoppelt ist, das Programmanweisungen enthält, die die in 3 dargestellten Schritte ausführen. Vorrichtung 400 weist einen LPC-Analysierer 402 auf.
-
Die Ausgabe des LPC-Analysierers 402 wird Geräuschklassifizierer 404 und LPC-Geräuschmodellerzeuger und -Anpasser 406 bereitgestellt. Ihre Ausgaben werden zweitem PSD-Berechner 408 bereitgestellt.
-
Der zweite PSD-Geräuschberechner 408 aktualisiert eine Berechnung der Geräusch-Leistungsspektraldichte (PSD) als Reaktion auf die Bestimmung, dass die Geräusche in dem Signal X nicht stationär sind, und die von dem Geräuschklassifizierer 404 vorgenommen wird. Die Ausgabe des zweiten PSD-Geräuschberechners wird zweitem Signal-Geräusch-Verhältnisberechner 410 bereitgestellt. Zweiter Geräuschunterdrückungsberechner 412 empfängt geräuschvolles Mikrofonausgangssignal 401 und die Ausgabe des zweiten SNR-Berechners 410 und erzeugt geräuschgedämpfte Ausgangsaudiosignale 414.
-
Immer noch Bezug nehmend auf 4, beinhaltet der Geräuschunterdrücker Geräuschverfolger nach dem Stand der Technik 416 und SPP (Sprachwahrscheinlichkeitsbestimmer) nach dem Stand der Technik 418. Geräuschschätzer 420 wird Geräuschkompensator 422 bereitgestellt.
-
Erster Geräuschbestimmer 424 wird mit seinem Ausgang erstem Geräuschkompensations- oder Geräuschunterdrückungsberechner 426 bereitgestellt, dessen Ausgang dem zweiten SNR-Berechner 410 bereitgestellt wird.
-
Ein Verfahren für das Entfernen eingebetteter akustischer Geräusche und für das Verbessern von Sprache durch Identifizieren und Schätzen von Geräuschen in variablen Geräuschbedingungen wird hierin offenbart. Das Verfahren weist auf: Einen Sprach-/Geräuschklassifizierer, der mehrere lineare Vorhersagekodierungs-Koeffizientensätze erzeugt, die einen ankommenden Signal-Frame mit einer LPC höherer Ordnung und einer LPC niedrigerer Ordnung modellieren; einen Sprach-/Geräuschklassifizierer, der den logarithmischen Spektralabstand zwischen der LPC höherer und niedrigerer Ordnung, die aus dem selben Signal-Frame resultieren, berechnet. Der logarithmische Spektralabstand wird durch zwei Sätze von Cepstral-Koeffizientensätzen, die aus den LPC-Koeffizientensätzen höherer und niedrigerer Ordnung abgeleitet werden, berechnet; einen Sprach-/Geräuschklassifizierer, der den Abstand und seinen Kurzzeit-Bewegungsablauf gegen einen Satz von Schwellenwerten vergleicht, um zu bestimmen, ob der Signal-Frame Sprache oder Geräusche ist; die für den Sprach-/Geräuschklassifizierer verwendeten Schwellenwerte werden basierend auf den Klassifizierungsstatistiken und/oder in Abstimmung mit anderen Sprachaktivitätserkennungsverfahren aktualisiert; das Erzeugen mehrerer linearer Vorhersagekodierungs (LPC) -Koeffizientensätze als online erzeugte Geräuschmodelle während der Laufzeit, wobei jeder Satz von LPC-Koeffizienten entsprechende Geräusche darstellt; das Geräuschmodell wird unter Bedingungen erzeugt und aktualisiert, unter denen der aktuelle Signal-Frame durch herkömmliche Verfahren (zum Beispiel Wahrscheinlichkeit der Anwesenheit von Sprache) oder durch den LPC-Sprach-/Geräuschklassifizierer als Geräusche klassifiziert wird; eine separate, aber parallele Geräusch-/Sprachklassifizierung wird auch basierend auf der Beurteilung des Abstands der LPC-Koeffizienten des Eingangssignals gegen die durch LPC-Koeffizientensätze dargestellten Geräuschmodelle eingerichtet. Wenn der Abstand unter einem bestimmten Schwellenwert liegt, wird das Signal als Geräusche, andernfalls als Sprache klassifiziert; ein herkömmliches Geräuschunterdrückungsverfahren, wie zum Beispiel MMSE, das die Wahrscheinlichkeit der Anwesenheit von Sprache verwendet, führt die Geräuschbeseitigung aus, wenn Umgebungsgeräusche stationär sind; ein zweiter Geräuschunterdrücker, der eine LPC-basierte Geräusch-/Sprachklassifizierung aufweist, verfeinert (oder erweitert) die Geräuschschätzung und Geräuschdämpfung, wenn die Umgebungsgeräusche transient oder nicht stationär sind; die Geräuschschätzung der zweiten Stufe berücksichtigt die Wahrscheinlichkeit der Anwesenheit von Sprache und passt die Geräusch-PSD in dem Frequenzbereich entsprechend an, wo immer die herkömmliche Geräuschschätzung fehlschlägt oder ungeeignet ist; die Geräuschschätzung der zweiten Stufe, die die Wahrscheinlichkeit der Anwesenheit von Sprache verwendet, verhindert auch eine Überschätzung der Geräusch-PSD, wenn das herkömmliche Verfahren bereits in stationären Geräuschbedingungen arbeitet; unter der Bedingung, dass das Signal durch den LPC-basierten Klassifizierer als Geräusche klassifiziert wird, ist die Menge an Geräuschaktualisierung (Verfeinerung) in der zweiten Stufe proportional zu der Wahrscheinlichkeit der Anwesenheit von Sprache, das heißt, je größer die Wahrscheinlichkeit von Sprache ist, desto mehr Geräuschaktualisierung erfolgt; SNR- und Verstärkungsfunktionen werden sowohl neu berechnet, als auch auf das geräuschvolle Signal in der Geräuschunterdrückung der zweiten Stufe angewendet; wenn das herkömmliche Verfahren die Eingabe mit einem hohen Vertrauensgrad als Geräusche erkennt, wird die zweite Stufe der Geräuschunterdrückung nichts tun, ungeachtet der Ergebnisse der neuen Sprach-/Geräuschklassifizierung und der Neuschätzung der Geräusche. Andererseits kann zusätzliche Geräuschdämpfung schnell anlaufen, selbst wenn die herkömmliche (erste Stufe der) Geräuschunterdrückung bei plötzlich erhöhten Geräuschen unwirksam ist; die neu berechnete Geräusch-PSD von der „erweiterten“ Geräuschklassifizierung/-Schätzung wird dann verwendet, um einen verfeinerten Satz von Geräuschunterdrückungsverstärkungen in dem Frequenzbereich zu erzeugen.
-
Durchschnittsfachleute sollten anerkennen, dass das Erkennen von Geräuschen und eines geräuschvollen Signals durch Verwenden eines Musterabgleichs rechnerisch schneller ist als Verfahren nach dem Stand der Technik für das Berechnen linearer Vorhersagekoeffizienten, für das Analysieren der Wahrscheinlichkeit der Anwesenheit von Sprache, für das Schätzen von Geräuschen und für das Ausführen einer SNR-Berechnung. Die Verfahren nach dem Stand der Technik zur Geräuschunterdrückung, die naturgemäß retrospektiv sind, werden durch Verwenden von aktuellen oder nahezu Echtzeit-Geräuschbestimmungen vermieden. Transiente oder sogenannte nicht stationäre Geräuschsignale können in viel kürzerer Zeit, als die Verfahren nach dem Stand der Technik erforderten, unterdrückt werden.
-
Um Geräusche effektiv zu entfernen, sollte ein Geräuschunterdrückungsalgorithmus ein Eingangssignal korrekt als Geräusche oder Sprache klassifizieren. Die meisten herkömmlichen Sprachaktivitätserkennungs (VAD) -Algorithmen schätzen den Pegel und/oder die Variation der Energie von einem Audioeingang in Echtzeit und vergleichen die gegenwärtig gemessene Energie mit der Energie von in der Vergangenheit geschätzten Geräuschen. Die Messung des Signal-Geräusch-Verhältnisses (SNR) und die Überprüfung der Werte sind die Säule für zahlreiche VAD-Verfahren, und sie funktioniert relativ gut, wenn Umgebungsgeräusche stationär sind; schließlich ist der Energiepegel während der Anwesenheit von Sprache tatsächlich größer, verglichen mit dem Energiepegel, wenn Sprache nicht anwesend ist, wenn der Geräuschhintergrund stationär (das heißt relativ konstant) bleibt.
-
Diese Annahme und dieser Mechanismus sind jedoch nicht länger gültig, wenn der Geräuschpegel in nicht stationären oder transienten Geräuschbedingungen, wie zum Beispiel während der Fahrzeugbeschleunigung, Windgeräuschen, vorbeifahrendem Verkehr usw., plötzlich ansteigt. Wenn die Geräusche plötzlich ansteigen, ist die gemessene Energie signifikant größer als die in der Vergangenheit geschätzte Geräuschenergie. Ein auf SNR basierendes VAD-Verfahren kann deshalb leicht versagen oder eine signifikante Menge an Zeit erfordern, um eine Entscheidung zu treffen. Das Dilemma ist, dass eine verspätete Erkennung, obwohl sie korrekt ist, im Wesentlichen für die Unterdrückung von transienten Geräuschen in einem Kraftfahrzeug ungeeignet ist.
-
Ein parametrisches Modell gemäß Ausführungsformen der Erfindung wird vorgeschlagen und implementiert, um die Schwäche der herkömmlichen energie-/SNR-basierten VAD zu verbessern.
-
Geräusche sind im Allgemeinen in der Zeit nicht vorhersagbar, und ihre spektrale Darstellung ist monoton und hat keine Struktur. Andererseits sind menschliche Stimmen durch Verwenden einer linearen Kombination vorheriger Abtastwerte etwas vorhersagbar, und die spektrale Darstellung einer menschlichen Stimme ist aufgrund von Auswirkungen von Stimmtrakt (Formanten, usw.) und Stimmbandvibration (Tonhöhe oder Oberschwingungen) sehr viel strukturierter.
-
Diese Unterschiede zwischen Geräuschen und Sprache sind durch lineare Vorhersagekodierung (LPC) gut charakterisiert. Tatsächlich kann das Geräuschsignal durch eine LPC höherer Ordnung (zum Beispiel 10. Ordnung) oder eine LPC niedrigerer Ordnung (4. Ordnung) fast gleich gut modelliert werden. Andererseits sollte eine LPC höherer Ordnung (10. oder höher) verwendet werden, um ein stimmhaftes Signal zu charakterisieren. Einer LPC niedrigerer Ordnung (zum Beispiel 4.) fehlt die Komplexität und Modellierungsleistung und ist daher für die Sprachsignalcharakterisierung nicht ausreichend.
-
5 stellt Spektren dar, die aus einem höheren und niedrigeren LPC-Modellen, zusammen mit dem detaillierten Signalspektrum selbst, für eine weibliche Stimme umgewandelt wurden.
-
6 stellt Spektren dar, die aus einem höheren und niedrigeren LPC-Modellen, zusammen mit dem detaillierten Signalspektrum selbst, für eine männliche Stimme umgewandelt wurden.
-
7 stellt Spektren dar, die aus einem höheren und niedrigeren LPC-Modellen, zusammen mit dem detaillierten Signalspektrum selbst, für Fahrzeuggeräusche (zum Beispiel Motorgeräusche, Straßengeräusche von Reifen und dergleichen) umgewandelt wurden.
-
8 stellt Spektren dar, die aus einem höheren und niedrigeren LPC-Modellen, zusammen mit dem detaillierten Signalspektrum selbst, für Windgeräusche umgewandelt wurden.
-
Wie in den 5-8 gezeigt, ist aufgrund der Formantstruktur und der Frequenzcharakteristiken eines stimmhaften Signals die spektrale Differenz zwischen der LPC höherer und niedrigerer Ordnung signifikant. Andererseits ist der Unterschied für Geräusche gering, manchmal sehr gering.
-
Dieser Typ von Analyse stellt eine robuste Art bereit, um Geräusche von Sprache zu unterscheiden, ungeachtet des Energiepegels, den ein Signal in sich trägt.
-
9 stellt Ergebnisse, die von einem energieunabhängigen Sprachaktivitätserkenner erzeugt wurden, gemäß Ausführungsformen der Erfindung, und Ergebnisse, die von einem anspruchsvollen herkömmlichen energieabhängigen Sprachaktivitätsdetektor erzeugt wurden, dar. In 9 ist eine geräuschvolle Eingabe sowohl in dem Zeit- als auch in dem Frequenzbereich dargestellt. Der Zweck eines VAD-Algorithmus ist es, eine Eingabe in Echtzeit (zum Beispiel während jedes 10-Millisekunden-Intervalls) korrekt als Geräusche oder Sprache zu identifizieren. In 9 zeigt ein VAD-Pegel von 1 eine Bestimmung an, dass Sprache anwesend ist, während ein VAD-Pegel von Null eine Bestimmung anzeigt, dass Sprache nicht anwesend ist.
-
Ein LPC-VAD (hierin auch bezeichnet als ein auf parametrischem Modell basierender Ansatz) gemäß Ausführungsformen der Erfindung übertrifft den herkömmlichen VAD, wenn Geräusche, nicht aber Sprache, anwesend sind. Dies trifft insbesondere zu, wenn die Hintergrundgeräusche während des mittleren Abschnitts des in 9 gezeigten Audiosignalabtastwerts erhöht werden. In dieser Situation kann der herkömmliche VAD keine Geräusche identifizieren, während der LPC_VAD Sprach- und Geräuschabschnitte des geräuschvollen Eingangssignals korrekt klassifiziert.
-
10 ist ein schematisches Diagramm eines Geräuschunterdrückungssystems, das einen Sprachaktivitätserkenner mit linearer Vorhersagekodierung (hierin auch bezeichnet als ein parametrisches Modell) beinhaltet, gemäß Ausführungsformen der Erfindung. In 10 sind geräuschvoller Audioeingang 1002, Tiefpassfilter 1004, Vorverstärkung 1006, Autokorrelation 1008, LPC1 1010, CEP1 1012 und CEP-Abstandsbestimmer 1014, LPC2 1016, CEP2 1018, LPC-VAD-Geräusch-/Sprachklassifizierer 1020, Geräuschunterdrücker 1022 und geräuschunterdrücktes Audiosignal 1024 gezeigt.
-
Ein optionaler Tiefpassfilter mit einer Grenzfrequenz von 3kHz wird auf den Eingang angewendet.
-
Auf das Eingangssignal wird eine Vorverstärkung angewendet.
die Vorverstärkung soll den Hochfrequenzinhalt anheben, sodass die Hochfrequenzspektralstruktur verstärkt wird, das heißt,
-
Berechnen einer Sequenz von Autokorrelationen des vorverstärkten Eingangs.
-
Anwenden der ersten LPC-Analyse höherer Ordnung und Berechnen eines längeren Satzes von LPC-Koeffizienten (zum Beispiel Ordnung
10)
-
Anwenden der zweiten LPC-Analyse höherer Ordnung und Berechnen eines kürzeren Satzes von LPC-Koeffizienten (zum Beispiel Ordnung
4) (LPC2)
-
Umwandeln der zwei Sätze von LPC-Koeffizienten
und
in den Spektralbereich (Übertragungsfunktion), das heißt,
-
Verwerfen des Energieterms in den obigen Übertragungsfunktionen, deshalb sind die Spektraldarstellungen von zwei LPC-Modellen energetisch normalisiert oder unabhängig.
-
Wählen des logarithmischen Spektralabstands als aussagekräftige Metrik, um die Ähnlichkeit von zwei Spektralkurven zu messen.
-
Berechnen des logarithmischen Spektralabstands zwischen zwei Spektren entsprechend den zwei Übertragungsfunktionen, das heißt,
-
Approximieren des logarithmischen Spektralabstands mit dem euklidischen Cepstrum-Abstand, um die erforderliche beträchtliche Berechnungslast stark zu reduzieren, das heißt,
um das Wählen des logarithmischen Spektralabstands als eine aussagekräftige Metrik, um die Ähnlichkeit von zwei Spektralkurven zu messen, zu erfüllen, zwei Sätze von Cepstrum-Koeffizienten,
C und
C', entsprechend
AP und
AQ (CEP1 und CEP2)
-
Die VAD-Entscheidungsfindungslogik bestimmt jeden Frame des Eingangssignals als Sprache oder Geräusche wie folgt: wenn D[HP,HQ) < THRESHOLD_NOISE, dann wird das Signal als Geräusche klassifiziert (das heißt VAD = 0) ; ansonsten, wenn D(HP, HQ) > THRESHOLD_SPEECH, dann wird das Signal als Sprache klassifiziert; ansonsten wird das Signal gleich wie der vorherige Frame klassifiziert, oder durch einen unterschiedlichen Ansatz bestimmt.
-
Die vorstehende Beschreibung ist nur für Zwecke der Veranschaulichung. Der wahre Geltungsbereich der Erfindung wird in den folgenden Ansprüchen dargelegt.