[0001] Die Erfindung betrifft ein Mobilfunkendgerät mit einer Sprachverarbeitungsvorrichtung
zur Verarbeitung von aus Rausch- und Sprachsignalanteilen bestehenden Sprachsignalen.
[0002] Auf dem Gebiet der Sprachverarbeitung sind häufig in zu verarbeitenden Sprachsignalen
Rauschsignalanteile enthalten, was zur Verringerung der Sprachqualität und damit insbesondere
zu einer verschlechterten Sprachverständlichkeit, führt. Dieses Problem tritt insbesondere
bei Mobilfunkendgeräten auf, die in Kraftfahrzeugen verwendet werden und eine Freisprecheinrichtung
aufweisen. Von im Kraftfahrzeug angeordneten Mikrophonen der Freisprecheinrichtung
empfangene Sprachsignale enthalten einerseits Sprachsignalanteile, die vom jeweiligen
Benutzer (Sprachquelle) des Mobilfunkendgerätes innerhalb des Kraftfahrzeuges erzeugt
werden, und andererseits Rauschsignalanteile, die sich aus sonstigen Umgebungsgeräuschen
des Mobilfunkgeräts ergeben. Während einer Fahrt bestehen die Umgebungsgeräusche im
wesentlichen aus Motor- und Fahrgeräuschen.
[0003] Aus "Proceedings of the IEEE, VOL.75, No. 2, February 1987" ist eine Vorrichtung
mit mehreren Mikrophonen bekannt, bei der mit Ausnahme eines Mikrophonsignals alle
anderen Mikrophonsignale einstellbaren Verzögerungsgliedern zugeführt werden. Die
mit Hilfe der Verzögerungsglieder gegeneinander zeitversetzten Mikrophonsignale werden
aufaddiert und anschließend einer Nachverarbeitung unterzogen. Die Nutzsignalanteile
der Mikrophonsignale stammen im wesentlichen von einer einzigen akustischen Quelle,
die unterschiedliche Abstände zu den Mikrophonen aufweist.
[0004] Somit ergeben sich für ein von der akustischen Quelle erzeugtes akustisches Signal
unterschiedliche Laufzeiten zu den räumlich getrennten Mikrophonen. Das akustische
Signal bewirkt zeitversetzte und sonst annähernd gleiche Nutzsignalanteile der Mikrophonsignale.
Die Nutzsignalanteile sind somit stark korreliert. Rauschsignalanteile der Mikrophonsignale
sind bei geeigneter Anordnung der Mikrophone höchstens schwach korreliert. Durch geeignete
Einstellung der Verzögerungsglieder in Abhängigkeit von der Position der akustischen
Quelle wird das Ausgangssignal der Vorrichtung bzw. dessen Signal-/ Rauschleistungsverhältnis
verbessert.
[0005] Eine solche Vorrichtung liefert nur dann befriedigende Ergebnisse, wenn das Signal-/
Rauschleistungsverhältnis der zu verarbeitenden Mikrophonsignale über einer Schwelle
liegt, d.h. die Nutzsignalanteile müssen gegenüber den Rauschsignalanteilen genügend
groß sein. Insbesondere dürfen die Rauschsignalanteile nicht größer als die Nutzsignalanteile
sein. Aus diesem Grund muß von mindestens einem Mikrophonsignal bei jeder Neueinstellung
der Verzögerungsglieder ein Schätzwert für das jeweilige Signal-/ Rauschleistungsverhältnis
vorliegen, um Fehlfunktionen der Sprachverarbeitungsvorrichtung bei einem unzureichenden
Signal-/ Rauschleistungsverhältnis vermeiden zu können.
[0006] Bisherige Vorrichtungen zur Ermittlung des Signal-/ Rauschleistungsverhältnisses
eines aus Rausch- und Sprachsignalanteilen bestehenden Sprachsignals ermitteln einen
Wert für die Rauschsignalleistung jeweils in einer Sprachpause, wo nur Rauschsignalanteile
vorhanden sind. Das Detektieren einer Sprachpause beruht beispielsweise auf einer
statistischen Bewertung des Sprachsignals mit Hilfe von Histogrammen oder der Auswertung
der Kurzzeitleistung des verrauschten Sprachsignals.
[0007] Eine solche von Sprachpausen abhängige Ermittlung des Signal-/ Rauschleistungsverhältnisses
ist einerseits störanfällig aufgrund der notwendigen Sprachpausendetektion und andererseits
langsam, da eine Aktualisierung des Signal-/ Rauschleistungsverhältnisses nur beim
Auftreten einer Sprachpause erfolgen kann, wobei sich zwischen den Sprachpausen die
Leistung des Rauschsignalanteils geändert haben kann.
[0008] Der Erfindung liegt daher die Aufgabe zugrunde, ein Mobilfunkendgerät mit einer Sprachverarbeitungsvorrichtung
der eingangs genannten Art anzugeben, bei der eine Schätzung des Signal-/ Rauschleistungsverhältnisses
der Sprachsignale verbessert ist.
[0009] Die Aufgabe wird dadurch gelöst, daß die Sprachverarbeitungsvorrichtung zur Verarbeitung
von aus Rausch- und Sprachsignalanteilen bestehenden Sprachsignalen eine Schätzvorrichtung
zum fortlaufenden Bilden von Schätzwerten des Signal-/ Rauschleistungsverhältnisses
der Sprachsignale durch Mittel zur
- Ermittlung der Leistungswerte von Abtastwerten der Sprachsignale,
- Glättung der Leistungswerte,
- Ermittlung jeweils des Minimums einer Gruppe von L aufeinanderfolgenden geglätteten
Leistungswerten, wobei die Gruppen lückenlos aufeinanderfolgen und mindestens so viele
geglättete Leistungswerte enthalten, daß jeweils alle einem beliebigen Phonem des
Sprachsignals zugehörigen geglätteten Leistungswerte von einer einzigen Gruppe erfaßbar
sind,
- Bildung eines aktuellen Schätzwertes des Signal-/ Rauschleistungsverhältnisses aus
dem aktuellen geglätteten Leistungswert und dem zuletzt ermittelten Minimum enthält.
[0010] Der Verlauf der geglätteten Leistungswerte von aus Rausch- und Sprachsignalanteilen
bestehenden Sprachsignalen weist zwischen zwei Sprachpausen (beispielsweise den Pausen
zwischen zwei Wörtern) Spitzen auf, d.h. Bereiche kurzzeitig hoher Leistung, zwischen
denen Bereiche niedrigerer Leistung liegen. Die geglätteten Leistungswerte zwischen
den Spitzen dienen zur Abschätzung der Rauschsignalleistung. Einem Phonem eines Sprachsignals
ist mindestens eine Spitze des Verlaufs der geglätteten Leistungswerte zugeordnet.
Ein Phonem ist die kleinste bedeutungsunterscheidende Einheit der Sprache und ein
Laut, der einerseits durch Vokale oder andererseits durch einzelne oder mehrere Konsonanten
gebildet wird. Sind die Gruppen mit L aufeinanderfolgenden geglätteten Leistungswerten
so groß, daß ein beliebiges Phonem und damit auch eine beliebige Spitze des Verlaufs
der geglätteten Leistungswerte vollständig erfaßbar ist, ist sichergestellt, daß mindestens
ein Wert eines neben einer Spitze liegenden Bereichs niedrigerer Leitung von jeder
Gruppe erfaßbar ist. Es wird somit der Fall vermieden, daß eine Gruppe nur zu einer
Spitze gehörende geglättete Leistungswerte enthält. Das Minimum einer Gruppe läßt
sich damit zur Abschätzung der Rauschsignalleistung verwenden. Der Skalierungsfaktor
dient zur Verbesserung der Abschätzung. Die Gruppen können aneinander grenzen oder
sich auch teilweise überlappen. Für den Fall, daß die Gruppen aneinander grenzen,
beträgt der Mindestabstand zwischen zwei Aktualisierungen des zur Abschätzung der
Rauschsignalleistung verwendeten gewichteten Minimums L Abtastintervalle der Sprachsignale.
Überlappen sich die Gruppen, so daß mindestens ein geglätteter Leistungswert zu mehreren
Gruppen gehört, kann der minimale Zeitraum zwischen zwei Aktualisierungen des gewichteten
Minimums verringert werden. Durch das fortlaufende von Sprachpausen unabhängige Bilden
von Schätzwerten des Signal-/ Rauschleistungsverhältnisses kann die Sprachverarbeitungsvorrichtung
sich auch an Änderungen der Rauschsignalleistung zwischen zwei Sprachpausen anpassen.
Es ist keine Sprachpause für eine Aktualisierung der Abschätzung der Rauschsignalleistung
erforderlich.
[0011] In einer Ausgestaltung der Erfindung sind Mittel zur Bildung von aneinandergrenzenden
Untergruppen mit jeweils

aufeinanderfolgenden geglätteten Leistungswerten und zur Ermittlung des Minimums
der Minima von jeweils W aufeinanderfolgenden Untergruppen zur Ermittlung des Minimums
der zugehörigen Gruppe vorgesehen, wobei W eine natürliche Zahl darstellt und W Untergruppen
eine Gruppe bilden.
[0012] Mit geringem Aufwand können so sowohl aneinandergrenzende als auch sich überlappende
Gruppen realisiert werden. Bei aneinandergrenzenden Gruppen wird nach jeweils L Abtastintervallen
aus dem Minimum der Minima von jeweils W aufeinanderfolgenden Untergruppen ein neuer
Schätzwert für die Rauschsignalleistung bestimmt. Bei sich überlappenden Gruppen erfolgt
eine neue Abschätzung der Rauschsignalleistung durch das Minimum der Minima von jeweils
W aufeinanderfolgenden Untergruppen nach jeweils M Abtastintervallen.
[0013] Bei dieser Ausgestaltung können weiterhin Mittel zur Verwendung jeweils des zuletzt
ermittelten Minimums einer Untergruppe anstelle des zuletzt ermittelten Minimums einer
Gruppe bei einer vorgebbaren Anzahl an monoton ansteigenden Minima von Untergruppen
vorgesehen werden, um einen aktuellen Wert des Signal-/ Rauschleistungsverhältnisses
zu schätzen.
[0014] Damit wird ein Schätzungwert der Rauschsignalleistung nach M Abtastintervallen aktualisiert,
wobei nur jeweils M zurückliegende geglättete Leistungswerte in die Abschätzung eingehen.
Mit Hilfe der somit schnelleren und besser an den Verlauf der geglätteten Leistungswerte
angepaßten Aktualisierungen der Schätzwerte der Rauschsignalleistung ergeben sich
verbesserte Schätzwerte des Signal-/ Rauschleistungsverhältnisses der Sprachsignale.
[0015] Die Erfindung kann weiterhin dadurch ausgestaltet werden, daß Mittel zur Verwendung
des aktuellen geglätteten Leistungswerts anstelle eines zuletzt ermittelten Minimums
einer Gruppe oder Untergruppe zur Schätzung eines aktuellen Wertes des Signal-/ Rauschleistungsverhältnisses
für den Fall vorgesehen sind, daß der aktuelle geglättete Leistungswert kleiner als
das zuletzt ermittelte Minimum ist.
[0016] Unabhängig von der Größe und der Anordnung von Gruppen oder Untergruppen wird bei
entsprechend kleinen geglätteten Leistungswerten das zuletzt ermittelte Minimum sofort
durch den aktuellen geglätteten Leistungswert ersetzt. In diesem Fall ergibt sich
eine unverzögerte Aktualisierung einer Abschätzung der Rauschsignalleistung durch
den akutellen geglätteten Leistungswert.
[0017] In einer anderen Ausgestaltung sind Sprachverarbeitungsmittel zur Verarbeitung der
Sprachsignale in Abhängigkeit von Schätzwerten des Signal-/ Rauschleistungsverhältnisses
vorgesehen.
[0018] Es wird verhindert, daß die Sprachverarbeitungsmittel bei unzureichendem Signal-/
Rauschleistungsverhältnis der zu verarbeitenden Sprachsignale fehlerhaft arbeiten
und insbesondere Ausgangssignale liefern, deren Sprachqualität sehr gering ist. So
können beispielsweise bei einem zu geringen Signal-/ Rauschleistungsverhältnis vorher,
d.h. bei einem ausreichend hohen Signal-/ Rauschleistungsverhältnis, ermittelte Einstellungen
der Sprachverarbeitungsmittel konstant gehalten werden, bis wieder ein ausreichend
hohes Signal-/ Rauschleistungsverhältnis vorliegt.
[0019] Ausführungsbeispiele der Erfindung werden nachstehend anhand der Zeichnungen näher
erläutert. Es zeigen:
- Fig. 1
- eine Sprachverarbeitungsvorrichtung für zwei Sprachsignale,
- Fig. 2
- eine Steuervorrichtung zur Einstellung eines Zeitversatzes zwischen den beiden Sprachsignalen
nach Fig. 1,
- Fig. 3
- eine Sprachverarbeitungsvorrichtung für drei Sprachsignale,
- Fig. 4 und 5
- Blockschaltbilder mit Steuervorrichtungen zur Einstellung von Zeitversätzen zwischen
den drei Sprachsignalen nach Fig. 3,
- Fig. 6 und 7
- ein Blockschaltbild und ein Flußdiagramm zur Bestimmung des Signal-/ Rauschleistungsverhältnisses
eines Sprachsignals,
- Fig. 8
- eine Einteilung von geglätteten Leistungswerten eines Sprachsignals in Gruppen und
Untergruppen und
- Fig. 9
- ein Mobilfunkendgerät mit einer Sprachverarbeitungsvorrichtung nach Fig. 1 bis 8.
[0020] Die in Fig. 1 dargestellte Sprachverarbeitungsvorrichtung enthält zwei Mikrophone
M1 und M2. Diese dienen zur Umwandlung von akustischen in elektrischen Sprachsignale,
die sich aus Sprach- und Rauschsignalanteilen zusammensetzen. Die Sprachsignalanteile
stammen von einer einzelnen Sprachquelle (Sprecher), die im Regelfall unterschiedliche
Abstände zu den beiden Mikrophonen M1 und M2 aufweist. Die Sprachsignalanteile sind
somit in hohem Maße korreliert. Die Rauschsignalanteile der beiden von den Mikrophonen
M1 und M2 empfangenen Sprachsignale sind nicht von der einzelnen Sprachquelle erzeugte
Umgebungsgeräusche, die bei geeigneten Mikrophonabständen im Bereich von 10 bis 60
cm als unkorreliert oder nur wenig korreliert vorausgesetzt werden können, wenn sich
die Mikrophone in einer sogenannten verhallten Umgebung wie beispielsweise im Auto
oder in einem Büro befinden. Befinden sich Sprachquelle und Sprachverarbeitungsvorrichtung
beispielsweise in einem Kraftfahrzeug, werden die Rauschsignalanteile insbesondere
durch Motor- und Fahrgeräusche verursacht.
[0021] Die von den Mikrophonen M1 und M2 erzeugten Mikrophonsignale werden von Analog-Digitalumsetzern
1 und 2 digitalisiert. Die sich ergebenden digitalisierten und damit als Abtastwerte
x1(i) und x2(i) vorliegenden Mikrophonsignale werden von einer Steuervorrichtung 3
ausgewertet, die zur Steuerung und Einstellung eines Verzögerungsgliedes 4 dient.
Die abgetasteten Mikrophonsignale x1(i) und x2(i) werden im folgenden abgekürzt als
Mikrophon- oder Sprachsignale bezeichnet. Das Verzögerungsglied 4 verzögert das Mikrophonsignal
x1 mit durch die Steuervorrichtung 3 einstellbaren Verzögerungswerten T1. Eine Addiervorrichtung
5 addiert das vom Verzögerungsglied 4 verzögerte Mikrophonsignal x1(i) und das von
einem Verzögerungsglied 16 mit einer konstanten Zeitverzögerung T
max verzögerte Mikrophonsignal x2(i). Das Verzögerungsglied 16 ist vorgesehen, um sowohl
ein Vorlaufen als auch ein Nacheilen des Mikrophonsignals x1(i) gegenüber dem Mikrophonsignal
x2(i) einstellen zu können. Ein am Ausgang der Addiervorrichtung 5 anliegendes Summensignal
X(i) ist ein abgetastes Sprachsignal, dessen Signal-/ Rauschleistungsverhältnis gegenüber
den Signal-/ Rauschleistungsverhältnissen der Sprachsignale x1(i) und x2(i) erhöht
ist. Durch eine geeignete Einstellung der Verzögerungszeit T1 des Verzögerungsglieds
4 wird bei der Addition durch die Addiervorrichtung 5 eine Verstärkung der Leistung
der Sprachsignalanteile der beiden Sprachsignale x1(i) und x2(i) ungefähr um den Faktor
4 und eine Verstärkung der Leistung der Rauschsignalanteile nur ungefähr um den Faktor
2 bewirkt. Damit ergibt sich eine Verbesserung des leistungsbezogenen Signal-/ Rauschleistungsverhältnisses
von ungefähr 3 dB.
[0022] In Fig. 2 wird die Funktionsweise der Steuerungvorrichtung 3 anhand eines Blockschaltbildes
näher erläutert. Aus dem Sprachsignal x2(i) und Sprachsignalschätzwerten x1
int(i) ergeben sich Fehlerwerte e₁₂(i) durch Differenzbildung nach
Die Sprachsignalschätzwerte x1
int(i) sind Werte, die sich aus einer Interpolation von Abtastwerten des Sprachsignals
x1(i) ergeben. Die Bestimmung der Sprachsignalschätzwerte x1
int(i) wird später erläutert. i ist eine Variable, die ganzzahlige Werte annehmen kann
und mit der einerseits Abtastzeitpunkte der Sprachsignale x1(i) und x2(i) und andererseits
auch Programmzyklen der programmierbaren und Steuermittel aufweisenden Steuervorrichtung
3 indiziert werden, wobei in einem Programmzyklus jeweils ein neuer Abtastwert per
Sprachsignal verarbeitet wird.
[0023] Ein digitales Filter 6 führt eine Hilbert-Transformation der Abtastwerte x2(i) durch:

Das die Werte x2
H(i) von x2(i) liefernde Digitalfilter 6 ist ein FIR-Filter der Ordnung K, das Koeffizienten
h(0), h(1), ..., h(K) aufweist. Im vorliegenden Ausführungsbeispiel ist K gleich sechzehn,
so daß das Digitalfilter 6 siebzehn Koeffizienten aufweist. Das Digitalfilter 6 besitzt
dem Betrage nach die Übertragungsfunktion eine Tiefpasses. Es erzeugt weiterhin eine
Phasenverschiebung von 90 Grad. Die feste Phasenverschiebung von 90 Grad ist die entscheidende
Eigenschaft des Digitalfilters 6, der Verlauf des Betrages der Übertragungsfunktion
ist für das Funktionieren der Sprachverarbeitungsvorrichtung nicht entscheidend. So
kann das Digitalfilter 6 auch mit Hilfe eines Differenzierers realisiert werden, was
allerdings zu einer Unterdrückung von niederfrequenten Anteilen von x2(i) und damit
zu einer verringerten Leistungfähigkeit der Sprachverarbeitungsvorrichtung führen
würde.
[0024] Die Ausgangswerte x2
H(i) werden mit den Fehlerwerten e₁₂(i) und dem Kehrwert 1/P
x2(i) einer Kurzzeitleistung P
x2(i) multipliziert, wobei die Kurzzeitleistung P
x2(i) nach
gebildet wird. N gibt die Anzahl der in die Berechnung eingehenden Abtastwerte von
x1 an. N ist beispielsweise gleich 65. Die Multiplikation mit 1/P
x2(i) dient zur Vermeidung von Instabilitäten in der Steuervorrichtung 3 beim Steuern
des Verzögerungsgliedes 4. Damit ergibt sich durch

ein auf die Kurzzeitleistung P
x2(i) normierter geschätzter Gradient grad(i) der Quadrate bzw. der Leistung der Fehlerwerte
e₁₂(i) im Programmzyklus i.
[0025] Ein Funktionsblock 7 bildet fortlaufend aus den Abtastwerten des Sprachsignals x2(i)
Schätzwerte SNR(i) des zugehörigen Signal-/ Rauschleistungsverhältnisses, die von
einem Funktionsblock 8 ausgewertet werden. Auch eine Auswertung des Sprachsignals
x1(i) anstelle des Sprachsignals x2(i) ist möglich, ohne daß die Funktionsfähigkeit
der Sprachverarbeitungsvorrichtung eingeschränkt wird. Die Funktionsweise des Funktionsblockes
7 wird später anhand der Figuren 6 bis 8 näher erläutert. Der Funktionsblock 8 führt
eine Schwellwertentscheidung bezüglich der Schätzwerte SNR(i) durch. Nur wenn die
Schätzwerte SNR(i) über einer vorgebbaren Schwelle liegen, wird ein Zwischenspeicher
9 mit dem neu bestimmten Gradientenschätzwert grad(i) überschrieben. Dieser Fall wird
durch die geschlossene Stellung eines Schalters 11 symbolisiert, der von dem Funktionsblock
8 gesteuert wird. Der Speicherinhalt (grad(i)) des Zwischenspeichers 9 wird von einer
Funktionseinheit 10 weiterverarbeitet. Für den Fall, daß ein Schätzwert SNR(i) unterhalb
des vorgebbaren Schwellwerts liegt, wird der Zwischenspeicher 9 nicht mit dem neu
ermittelten Gradientenschätzwert grad(i) überschrieben und er behält seinen alten
Speicherinhalt bei, was durch die geöffnete Stellung des Schalters 11 symbolisiert
wird. Die vorgebbare Schwelle, von der das Öffnen und Schließen des Schalters 11 durch
den Funktionsblock 8 abhängt, liegt vorzugsweise zwischen 0 und 10 dB.
[0026] Der Zwischenspeicher 9 liefert die in ihm gespeicherten Gradientenschätzwerte grad(i)
an die Funktionseinheit 10, der auch Abtastwerte des Sprachsignals x1(i) zugeführt
werden und die sowohl zur Lieferung der Sprachsignalschätzwerte x1
int(i) als auch zur Einstellung des Verzögerungsgliedes 4 dient.
[0027] Die Gradientenschätzwerte grad(i) werden von einem Funktionsblock 12 nach
zu geglätteten ("smoothed") Gradientenschätzwerten sgrad(i) weiterverarbeitet. α ist
eine Konstante, die im Ausführungsbeispiel den Wert 0,95 besitzt. Die Werte sgrad(i)
werden von einem Funktionsblock 13 zur Adaption von Verzögerungsschätzwerten T1'(i)
nach
verwendet. Die Bestimmung von Verzögerungsschätzwerten T1'(i) erfolgt damit rekursiv.
µ ist ein konstanter Faktor bzw. Konvergenzparameter und liegt im Bereich

R
x2x2 bezeichnet eine Autokorrelationsfunktion des Sprachsignals x2(i) an der Stelle Null.
Ein besonders vorteilhafter Wertebereich von µ ist im vorliegenden Ausführungsbeispiel
1,5 < µ < 3.
[0028] Die Verzögerungsschätzwerte T1'(i) können auch nicht ganzzahlige Werte d.h nicht
ganzzahlige Vielfache eines Abtastintervalls sein. Ein Funktionsblock 14 rundet die
Verzögerungsschätzwerte T1'(i) auf ganzzahlige Verzögerungswerte T1(i), mit denen
die Verzögerungsvorrichtung 4 eingestellt wird. Die Rundungsoperation durch Funktionsblock
14 ist notwendig, da Werte des durch das Verzögerungsglied 4 zu verzögernden Sprachsignals
x1(i) nur zu den entsprechenden Abtastzeitpunkten vorliegen.
[0029] Die Funktionseinheit 10 weist weiterhin einen Funktionblock 15 auf, der die Sprachsignalschätzwerte
x1
int(i) nach
durch Interpolation dreier benachbarter Abtastwerte x1(i+T1(i)-1), x1(i+T1(i)) und
x1(i+T1(i)+1) des Sprachsignals x1 bildet. Der Funktionsblock 15 ist somit in der
Lage, durch den Sprachsignalschätzwert x1
int(i) im Programmzyklus i einen Wert des Sprachsignals x1 zum Zeitpunkt i+T1(i), d.h.
zu einem Zeitpunkt zwischen zwei Abtastzeitpunkten, zu bilden bzw. zu interpolieren.
Die beschriebene Interpolation durch Funktionsblock 15 kann dadurch ersetzt werden,
daß Funktionsblock 15 eine Tiefpaßfilterung der Abtastwerte x1(i) zur Interpolation
von Werten zwischen den Abtastzeitpunkten durchführt.
[0030] Würden zur Bestimmung der Fehlerwerte e₁₂(i) anstelle der Sprachsignalschätzwerte
x1
int(i) die am Ausgang des Verzögerungsgliedes 4 anliegenden verzögerten Abtastwerte des
Sprachsignals x1(i) verwendet, wie dies aus "IEEE Transactions on Acoustics, Speech,
and Signal Processing, VOL. ASSP-29, Nr.3, Juni 1981, S. 582-587" bekannt ist, würde
beim Erreichen von Fehlerwerten

die Verzögerungswerte T1(i), mit denen das Verzögerungsglied 4 eingestellt wird,
nicht mehr konvergieren. Es ergäben sich starke Oszillationen der gerundeten Verzögerungswerte
T1(i). Diese würden zwischen zwei Verzögerungswerten mit dem Abstand eines Abtastintervalls
schwanken. Die entsprechende wahre Zeitverzögerung zwischen den Sprachsignalanteilen,
die durch die unterschiedlichen Wegstrecken vom Sprecher zu den Mikrophonen M1 und
M2 bestimmt ist, würde dabei zwischen diesen zwei Verzögerungswerten liegen. Im vorliegenden
Ausführungsbeispiel werden solche Oszillationen dadurch vermieden, daß bei der Bildung
der Fehlerwerte Sprachsignalschätzwerte x1
int(i) verwendet werden, durch die Werte des Sprachsignals x1(i) auch für Verzögerungen
um nicht ganzzahlige Vielfache eines Abtastintervalls verfügbar sind, also auch an
Zeitpunkten ungleich der Abtastzeitpunkte i des Sprachsignals x1(i).
[0031] Der zur Glättung der Gradientenschätzwerte grad(i) dienende Funktionsblock 12 bewirkt
eine verbesserte Ermittlung der Verzögerungschätzwerte T1'(i).
[0032] Die Steuervorrichtung 3 adaptiert die Verzögerungsschätzwerte T1'(i) bzw. die Verzögerungswerte
T1(i) so, daß von einem Programmzyklus zum nächsten das Quadrat bzw. die Leistung
der Fehlerwerte e₁₂(i) verringert wird. Die Konvergenz von T1'(i) bzw. T1(i) ist somit
sichergestellt.
[0033] In Fig. 3 ist eine prinzipiell wie die Sprachverarbeitungsvorrichtung aus Fig. 1
arbeitende Sprachverarbeitungsvorrichtung mit nun drei Mikrophonen M1, M2 und M3 zur
Lieferung von Mikrophon- bzw. Sprachsignalen dargestellt. Die Mikrophonsignale werden
Analog-Digital-Umsetzern 20, 21 und 22 zugeführt, die digitalisierte und damit abgetastete
Sprachsignale x1(i), x2(i) und x3(i) liefern, die aus Sprach- und Rauschsignalanteilen
bestehen. Die Sprachsignale x1(i) und x3(i) werden einstellbaren Verzögerungsgliedern
23 und 24 zugeführt. Analog zu Fig. 1 wird das Sprachsignal x2(i) einem Verzögerungsglied
27 mit einer festen Verzögerungszeit T
max zugeführt.Die Ausgangswerte der Verzögerungsglieder 23, 24 und 27 werden von einer
Addiervorrichtung 25 zum Summensignal X(i) aufaddiert. Eine Steuervorrichtung 26 wertet
die Abtastwerte der Sprachsignale x1(i), x2(i) und x3(i) aus und leitet aus diesen
Abtastwerten analog zur Wirkungsweise der Steuervorrichtung 3 aus Fig. 1 und 2 gerundete
ganzzahlige Verzögerungswerte T1(i) und T3(i) ab, die ganzzahligen Vielfachen eines
Abtastintervalles der abgetasteten Sprachsignale x1(i), x2(i) und x3(i) entsprechen
und mit denen die Verzögerungsglieder 23 und 24 eingestellt werden, so daß eine Erweiterung
von zwei auf drei zu verarbeitende Mikrophon- bzw. Sprachsignale ermöglicht wird.
[0034] In Fig. 4 ist eine erste Ausführungsform der Steuervorrichtung 26 aus Fig. 3 dargestellt.
Es sind zwei Funktionseinheiten 10 vorgesehen, deren Aufbau gleich dem Aufbau der
Funktionseinheit 10 aus Fig. 2 ist und die zur Einstellung der Verzögerungsglieder
23 und 24 mit den gerundeten Zeitverzögerungswerten T1(i) und T3(i) dienen.
[0035] Die obere Funktionseinheit 10 liefert Sprachsignalschätzwerte x1
int(i). Die untere Funktionseinheit 10 liefert Sprachsignalschätzwerte x3
int(i). Aus einer Differenz x1
int(i) - x2(i) und aus einer Differenz x3
int(i) - x2(i) werden Fehlerwerte e₁₂(i) und e₃₂(i) gebildet.
[0036] Auch hier ist ein Digitalfilter 6 vorgesehen, das in den Ausführungen zu Fig. 2 bereits
näher beschrieben ist, und das zum Empfang der Abtastwerte x2(i) und zur Lieferung
von Werten x2
H(i) dient, die durch eine Hilbert-Transformation der Abtastwerte x2(i) erzeugt werden.
Die Werte x2
H(i) werden einerseits mit den Fehlerwerten e₁₂(i) und andererseits mit den Fehlerwerten
e₃₂(i) multipliziert. Das erste Produkt x2
H(i)*e₁₂(i) wird der oberen, das zweite Produkt x2
H(i)*e₃₂(i) wird der unteren Funktionseinheit 10 zugeführt. Die Anordnung der Funktionsblöcke
7 und 8, des Zwischenspeichers 9 und des Schalters 11 wird analog zu Fig. 2 durchgeführt
und ist aus Gründen der Übersichtlichkeit nicht in Fig. 4 dargestellt.
[0037] Fig. 5 zeigt eine gegenüber Fig. 4 erweiterte Fassung der Steuervorrichtung 26. Im
Gegensatz zu Fig. 4 sind anstelle nur eines Digitalfilters 6 nun drei Digitalfilter
6 angeordnet. Diese bilden aus den Sprachsignalabtastwerten x1(i), x2(i) und x3(i)
durch Hilbert-Transformation die Werte x1
H(i), x2
H(i) und x3
H(i).
[0038] In der oberen Hälfte des in Fig. 5 dargestellten Blockdiagramms werden Fehlerwerte
e₁₃(i) aus der Differenz x1
int(i)-x2(i) bebildet, die in ein erstes Produkt

eingehen. Ein zweites Produkt ergibt sich aus

. Die beiden Produkte entsprechen gewichteten Gradientschätzwerten der Quadrate der
Fehlerwerte e₁₃(i) und e₁₂(i). Die Summe aus erstem und zweitem Produkt und damit
eine Linearkombination der gewichteten Gradientschätzwerten wird der oberen Funktionseinheit
10 zugeführt.
[0039] Analog dazu werden in der unteren Hälfte des in Fig. 5 dargestellten Blockdiagramms
Fehlerwerte e₃₁(i) und e₃₂(i) gebildet. Die Fehlerwerte e₃₁(i) ergeben sich aus der
Differenz x3
int(i)-x1(i). Die Fehlerwerte e₃₂(i) werden durch die Differenz x3
int(i)-x2(i) gebildet. Ein drittes Produkt

und ein viertes Produkt

werden aufaddiert und die sich ergebende Summe wird der unteren Funktionseinheit
10 zugeführt.
[0040] Mit Hilfe der Sprachverarbeitungsvorrichtung nach Fig. 3, die eine Steuervorrichtung
nach Fig. 4 oder 5 enthält, läßt sich ein gegenüber der Sprachverarbeitungsvorrichtung
mit zwei Mikrophonen nach Fig. 1 verbessertes Summensignal X(i) erzeugen. Das Signal-/
Rauschleistungsverhältnis und damit die Sprachqualität des Summensignals X(i) der
Sprachverarbeitungsvorrichtung nach Fig. 3 ist gegenüber dem von der Sprachverarbeitungsvorrichtung
nach Fig. 1 erzeugten Summensignal X(i) weiter erhöht. Die Steuervorrichtung nach
Fig. 5 weist gegenüber der Steuervorrichtung nach Fig. 4 beim Einsatz in der Sprachverarbeitungsvorrichtung
nach Fig. 3 eine erhöhte Stabilität auf.
[0041] Sowohl in Fig. 4 als auch in Fig. 5 ist aus Gründen der Übersichtlichkeit auf eine
Darstellung von Mitteln (siehe Funktionsblöcke 7 und 8, Zwischenspeicher 9 und Schalter
11 in Fig. 2) verzichtet worden, die eine Abhängigkeit der Sprachverarbeitung von
Schätzwerten SNR(i) für eines der Mikrophonsignale x1(i), x2(i) oder x3(i) bewirken.
Ebenfalls aus Gründen der Übersichtlichkeit ist die Normierung von Produkten aus Fehlerwerten
und der Ausgangswerte der die Hilbert-Transformation durchführenden Digitalfilter
6 auf die Leistung eines zugehörigen Mikrophonsignals (siehe 1/P
x2(i) in Fig. 2) nicht dargestellt. Die Erweiterung der Steuervorrichtungen 26 nach
Fig. 4 und 5 um diese beiden technischen Merkmale ergibt sich aus ihrer Realisierung
in der Steuervorrichung 3 nach Fig. 2.
[0042] Mit Hilfe der Fig. 6 und 7 wird das Schema erläutert, anhand dessen der Funktionsblock
7 aus einem abgetasteten Sprachsignal x(i), das aus Rausch- und Sprachsignalanteilen
besteht, die zugehörigen Schätzwerte SNR(i) des Signal-/ Rauschleistungsverhältnisses,
d.h. des Verhältnisses der Leistungen der Sprachsignalanteile zur Leistung der Rauschsignalanteile,
ermittelt. Den Abtastwerten x(i) entsprechen in Fig. 2 die Abtastwerte x2(i). In Fig.
6 ist der Funktionsblock 7 anhand eines Blockschaltbildes dargestellt. Ein Funktionsblock
30 dient zur Bildung von Leistungswerten P
x(i) der Abtastwerte x(i) durch Quadrieren der Abtastwerte. Weiterhin führt der Funktionsblock
30 eine Glättung dieser Leistungswerte P
x(i) durch. Die sich so ergebenden geglätteten Leistungswerte P
x,s(i) werden sowohl dem Funktionsblock 31 als auch dem Funktionsblock 32 zugeführt.
Der Funktionsblock 31 ermittelt fortlaufend Schätzwerte P
n(i) zur Abschätzung der Leistung des Raussignalanteils der Abtastwerte x(i), d.h.
es wird die Leistung der Rauschsignalanteile der Abtastwerte x(i) ermittelt. Aus den
geglätteten Leistungswerten P
x,s(i) und den Schätzwerten P
n(i) bestimmt der Funktionsblock 32 fortlaufend Schätzwerte SNR(i) des Signal-/ Rauschleistungsverhältnisses
der Abtastwerte x(i).
[0043] In Fig. 7 ist ein Flußdiagramm dargestellt, das die Funktionsweise des Funktionsblockes
7 näher erläutert. Anhand des Flußdiagramms wird ersichtlich, wie aus den Abtastwerten
x(i) des Sprachsignals x durch ein Computerprogramm Schätzwerte SNR(i) des entsprechenden
Signal-/ Rauschleistungsverhältnisses gebildet werden. In einem Initialisierungsblock
33 wird zu Beginn des durch Fig. 7 beschriebenen Programms eine Zählervariable Z auf
0 und eine Variable P
Mmin auf einen Wert P
max gesetzt. P
max ist so groß gewählt, daß die geglätteten Leistungswerte P
x,s(i) immer kleiner als P
max sind. P
max kann beispielsweise auf den maximal darstellbaren Zahlenwert eines zur Realisierung
des Programms verwendeten Rechners gesetzt werden. In einem Block 34 wird ein neuer
Abtastwert x(i) eingelesen. In Block 35 wird eine Zählervariable Z um den Wert 1 erhöht,
wonach in Block 36 ein neuer geglätteter Leistungswert P
x,s(i) gebildet wird. Er ergibt sich dadurch, daß zunächst durch
ein Kurzzeitleistungswert P
x(i) und dann durch
ein neuer geglätteter Leistungswert gebildet wird. Mit Formel (1) wird ein Kurzzeitleistungswert
P
x(i) einer Gruppe von N aufeinanderfolgenden Abtastwerten x(i) ermittelt. N ist hier
beispielsweise gleich 128. Der Wert α aus Gleichung (2) liegt zwischen 0,95 und 0,98.
Die Ermittlung von geglätteten Leistungswerten P
x,s(i) kann auch nur durch Gleichung (2) durchgeführt werden, wobei dann allerdings der
Wert α ungefähr auf den Wert 0,99 zu erhöhen und P
x(i) durch x²(i) zu ersetzen ist.
[0044] Durch eine Verzweigung 37 wird danach abgefragt, ob der gerade ermittelte geglättete
Leistungswert P
x,s(i) kleiner als P
Mmin ist. Wird diese Frage bejaht, d.h. P
x,s(i) ist kleiner als P
Mmin, wird durch Block 38 P
Mmin auf den Wert von P
x,s(i) gesetzt. Falls die Frage von Verzweigung 37 verneint wird, wird Block 38 übersprungen.
Damit steht in P
Mmin nach M Programmzyklen das Minimum von M geglätteten Leistungswerten P
x,s. Danach erfolgt mit der Verzweigung 39 die Abfrage, ob die Zählervariable Z einen
Wert größer oder gleich einem Wert M hat. Es wird auf diese Weise festgestellt, ob
schon M geglättete Leistungswerte abgearbeitet sind.
[0045] Wird die Frage von Verzweigung 39 verneint, d.h. es sind noch nicht M geglättete
Leistungswerte abgearbeitet, wird das Programm mit Block 40 fortgesetzt. Dort wird
ein vorläufiger Schätzwert P
n(i) der Rauschsignalleistung des Sprachsignals x durch
bestimmt. Diese Operation stellt sicher, daß der vorläufige Schätzwert P
n(i) nicht größer als der aktuelle geglättete Leistungswert P
x,s(i) sein kann. Danach wird mit Block 41 nach der Formel
ein aktueller Schätzwert SNR(i) des Signal-/Rauschleistungsverhältnisses des Sprachsignals
x(i) ermittelt. Im Normalfall dient das Produkt c*P
n(i) zur Abschätzung der aktuellen Leistung des Rauschsignalanteils, und die Differenz

dient zur Abschätzung der aktuellen Leistung des Sprachsignalanteils des Sprachsignals
x(i). Die aktuelle Leistung des Sprachsignals wird durch den geglätteten Leistungswert
P
x,s(i) geschätzt. Die Gewichtung mit einem Skalierungsfaktor c verhindert, daß durch
P
n(i) die Rauschsignalleistung mit einem zu kleinen Wert abgeschätzt wird. Der Skalierungsfaktor
c liegt typisch im Bereich von 1,3 bis 2. Durch die Minimumbildung in Block 41 bzw.
Gleichung (4) wird sichergestellt, daß das nicht logarithmierte Signal-/ Rauschleistungsverhältnis
SNR(i) auch dann positiv ist, wenn im Ausnahmefall c*P
n(i) größer als P
x,s(i) ist. Dann wird die Leistung des Rauschsignalanteils des Sprachsignals gleich der
durch P
x,s(i) geschätzten Leistung des Sprachsignals gesetzt. Die durch P
x,s(i)-P
x,s(i) geschätzte Leistung des Sprachsignalanteils des Sprachsignals ist dann wie auch
das nicht logarithmische Signal-/ Rauschleistungsverhältnis gleich Null. Das Programm
wird nach der Berechnung des Schätzwertes SNR(i) mit dem Einlesen eines neuen Sprachsignalabtastwertes
x(i) durch Block 34 fortgesetzt.
[0046] Wird die Abfrage von Verzweigung 39 bejaht, d.h. es sind M geglättete Abtastwerte
P
x,s(i) abgearbeitet, werden in Block 42 durch


die Komponenten eines Vektors minvec der Dimension W aktualisiert. Danach wird durch
Verzweigung 43 abgefragt, ob die Komponenten minvec₁ bis minvec
W mit ansteigendem Vektorindex ansteigen, d.h. ob gilt:
Wird die Abfrage von Verzweigung 43 verneint, d.h. die zuletzt ermittelten in den
Komponenten des Vektors minvec stehenden zuletzt ermittelten W Minima steigen nicht
monoton an, wird durch Block 44 nach
der vorläufige Schätzwert P
n(i) der Rauschsignalleistung aus den Minima der Komponenten des Vektors minvec, d.h
aus dem Minimum der letzten

aufeinanderfolgenden geglätteten Leistungswerte P
x,s(i), bestimmt. Bei einer Bejahung der durch Verzweigung 43 gestellten Frage, d.h.
bei einem monotonen Ansteigen der zuletzt ermittelten in den Komponenten des Vektors
minvec stehenden W Minima wird in Block 45 P
n(i) gleich P
Mmin gesetzt, so daß eine Anpassung der Abschätzung des Rauschsignalanteils beschleunigt
erfolgt, da P
n(i) an dem Minimum des letzten (M<L) Werte bestimmt wird. Danach wird in Block 46
die Zählervariable Z wieder auf 0 gesetzt und P
Mmin erhält erneut den Wert P
max.
[0047] Durch das beschriebene Programm werden jeweils M aufeinanderfolgende geglättete P
x,s(i) Abtastwerte x(i) des Sprachsignals x zu einer Untergruppe zusammengefaßt. Innerhalb
einer solchen Untergruppe wird durch die mit Verzweigung 37 und Block 38 durchgeführten
Operationen das Minimum der geglätteten Leistungswerte P
x,s(i) ermittelt. Die zuletzt ermittelten W Minima werden in den Komponenten des Vektors
minvec abgespeichert. Sind die letzten W Minima nicht monoton ansteigend (siehe Verzweigung
43), so wird nach Block 44 ein vorläufiger Schätzwert P
n(i) der Leistung des Rauschsignalanteils aus dem Minimum der Minima der letzten W
Untergruppen, d.h. aus dem Minimum einer Gruppe, bestimmt. Es werden jeweils zur Bildung
einer Gruppe mit

aufeinanderfolgenden geglätteten Leistungswerten P
x,s(i) W aufeinanderfolgende Untergruppen zusammengefaßt. Die Gruppen mit jeweils L Werten
folgen lückenlos aufeinander und überlappen sich jeweils mit L-M gelätteten Leistungen
P
x,s(i).
[0048] Für den Fall, daß die Minima von W aufeinanderfolgenden Untergruppen monoton ansteigen
(siehe Verzweigung 43), wird durch Block 45 zur Abschätzung des aktuellen Schätzwertes
P
n(i) der Leistung des Rauschsignalanteils jeweils das Minimum der letzten Untergruppe
mit M geglätteten Leistungswerten P
x,s(i) verwendet. Die Zeitspanne, mit der monoton ansteigende geglättete Leistungswerten
P
x,s(i) auch eine Änderung der Schätzwerte SNR(i) bewirken, wird damit verkürzt.
[0049] Fig. 8 verdeutlicht, wie die geglätteten Leistungswerte P
x,s in Gruppen und Untergruppen zusammengefaßt werden. Es werden jeweils M geglättete
Leistungswerte P
x,s(i), die jeweils zu Abtastzeitpunkten i vorliegen, zu einer Untergruppe zusammengefaßt.
Die Untergruppen grenzen aneinander. Für jede Untergruppe wird das Minimum der geglätteten
Leistungswerte P
x,s(i) bestimmt. Jeweils W Untergruppenminima werden in dem Vektor minvec abgespeichert.
In der Regel, d.h. bei nicht monoton ansteigenden W Untergruppen Minima, werden W
Untergruppen zu einer Gruppe mit

geglätteten Leistungswerten P
x,s(i) zusammengefaßt. Nach jeweils M geglätteten Leistungen P
x,s(i) wird aus dem Minimum der letzten W Untergruppenminima bzw. der letzten L geglätteten
Leistungswerte P
x,s(i) der Wert P
n(i) bestimmt, der zur Abschätzung der Rauschsignalleistung dient. In Fig. 8 sind acht
Gruppen mit jeweils L Abtastwerten x(i) dargestellt, die jeweils W = 4 Untergruppen
mit M geglätteten Leistungswerten P
x,s(i) enthalten. Die acht Gruppen überlappen sich teilweise. So enthalten zwei aufeinanderfolgende
Gruppen jeweils L-M gleiche geglättete Leistungswerte P
x,s(i). Auf diese Weise wird ein guter Kompromiß zwischen dem erforderlichen Rechenaufwand
und der jeweiligen Verzögerungszeit erreicht, mit der eine Aktualisierung eines Schätzwertes
P
n(i) der Rauschsignalleistung zur Aktualisierung eines Schätzwertes SNR(i) des Signal/
Rauschleistungsverhältnisses erfolgt. Eine Realisierung mit aneinandergrenzenden,
d.h. sich nicht überlappenden Gruppen ist auch denkbar. Allerdings ist dann bei verringertem
Rechenaufwand die Zeitspanne zwischen zwei Schätzwerten SNR(i) vergrößert, so daß
die Reaktionszeit auf sich ändernde SNR des Sprachsignals x(i) vergrößert ist.
[0050] Die beschriebene Sprachverarbeitungsvorrichtung weist damit eine Schätzvorrichtung
auf, die zum fortlaufenden Bilden von Schätzwerten SNR(i) des Signal-/ Rauschleistungsverhältnisses
von verrauschten Sprachsignalen x(i) geeignet ist. Insbesondere sind keine Sprachpausen
zur Abschätzung der Rauschsignalleistung erforderlich. Die beschriebene Schätzvorrichtung
nutzt den besonderen Zeitverlauf von geglätteten Leistungswerten des Sprachsignals
x(i) aus, der durch Spitzen und dazwischenliegende Bereiche mit kleineren geglätteten
Leistungswerten P
x,s(i) gekennzeichnet ist, deren zeitliche Ausdehnung von der jeweiligen Sprachquelle,
d.h. dem jeweiligen Sprecher, abhängt. Dabei werden die Bereiche zwischen den Spitzen
zur Abschätzung der Leistung des Rauschsignalanteils verwendet. Die Gruppen mit jeweils
L geglätteten Leistungswerten P
x,s(i) müssen lückenlos aufeinanderfolgen, d.h. sie müssen entweder aneinandergrenzen
oder sich überlappen. Weiterhin muß sichergestellt sein, daß mindestens ein Wert eines
zwischen zwei Spitzen liegenden Bereichs mit kleineren geglätteten Leistungswerten
P
x,s(i) von jeder Gruppe erfaßbar ist, d.h. jede Gruppe muß soviele geglättete Leistungswerte
P
x,s(i) enthalten, daß mindestens alle zu einer beliebigen Spitze gehörenden Werte erfaßbar
sind. Da die zeitlich ausgedehntesten Spitzen jeweils durch die zeitlich ausgedehntesten
Phoneme eines Sprachsignals, d.h. die Vokale, abschätzbar sind, kann daraus die die
Gruppengröße beschreibende Zahl L abgeleitet werden. Für eine Abtastrate des Sprachsignals
von 8 kHz liegt ein sinnvoller Wert von L im Bereich zwischen 3000 und 8000. Ein vorteilhafter
Wert für W ist 4. Bei einer solchen Dimensionierung ergibt sich ein guter Kompromiß
zwischen Rechenaufwand und Reaktionsschnelligkeit des Funktionsblockes 7.
[0051] In Fig. 9 ist eine Verwendung der Sprachverarbeitungsvorrichtung aus Fig. 3 in einem
Mobilfunkendgerät 50 dargestellt. Die Sprachverarbeitungsmittel 20 bis 26 sind in
einem Funktionsblock 51 zusammengefaßt, der aus den von den Mikrophonen M1, M2 und
M3 erzeugten Mikrophon- bzw. Sprachsignalen die Summensignalwerte X(i) bildet. Ein
die Summensignalwerte X(i) verarbeitender Funktionsblock 52 faßt alle übrigen Mittel
des Mobilfunkendgerätes 52 zum Empfang, Verarbeiten und Senden von Signalen zusammen,
welche zur Kommunikation mit einer nicht dargestellten Basisstation dienen, wobei
das Senden und Empfangen von Signalen über eine an den Funktionsblock 52 gekoppelte
Antenne 54 erfolgt. Weiterhin ist ein mit dem Funktionsblock 52 gekoppelter Lautsprecher
53 vorgesehen. Die akustische Kommunikation eines Benutzers (Sprecher, Hörer) mit
dem Mobilfunkendgerät 50 erfolgt über die Mikrophone M1 bis M3 und den Lautsprecher
53, die Teile eines in das Mobilfunkendgerät 50 integrierte Freisprecheinrichtung
sind. Die Anwendung eines solchen Mobilfunkendgerätes 50 ist insbesondere in Kraftfahrzeugen
von Vorteil, da dort das Freisprechen über das Mobilfunkendgerät insbesondere durch
Motor- oder Fahrgeräusche (Rauschen) gestört ist.