-
Die
Erfindung betrifft ein Verfahren zur Spracherkennung im Kraftfahrzeug,
wobei zur Spracherkennung ein vorgegebener Gesamtwortschatz zur Verfügung steht,
innerhalb dem die Spracherkennung durchgeführt wird, nach dem Oberbegriff
des Anspruchs 1. Ferner betrifft die Erfindung die Verwendung des
Verfahrens und eine entsprechende Vorrichtung gemäß dem Oberbegriff
der Ansprüche
8 und 9.
-
Spracherkennungssysteme
dienen beispielsweise zur vereinfachten Eingabe von Informationen
und/oder Befehlen bzw. Anweisungen für geeignete Steuerungssysteme.
So finden sich beispielsweise Spracherkennungssysteme im Mobilfunkbereich
zur Abfrage der Mailbox oder bei elektronischen Anrufweiterleitungssystemen.
-
Eine
weitere Anwendung der Spracherkennung betrifft die Eingabe von Daten,
beispielsweise des Zielortes, in ein Navigationssystem eines Kraftfahrzeuges.
Hier liegt die Schwierigkeit darin, dass aufgrund der großen Möglichkeiten
und Vielfalt von Städte-
und Straßennamen
eine Erkennung des vom Fahrer eingegebenen Gesamtwortes aufgrund
der beschränkten
Ressourcen für
eine Spracherkennung hinsichtlich der Erkennungsrate und der Performance
schwierig ist. Daher existieren neben der manuellen Eingabe von
Straßen- und Städtenamen
in eine Navigationssystem bei der sprachlichen Eingabe verschiedene
Lösungsansätze.
-
So
offenbart die
DE
10 2004 012 148 A1 eine Spracheingabe für eine Navigationssystem eines Kraftfahrzeugs,
bei der die Spracherkennung unter Berücksichtigung der aktuellen
geographischen Position durchgeführt
wird, die von geeigneten Positionssensormitteln zum automatischen
Feststellen der geographischen Position ermittelt wird.
-
Ferner
zeigt die
DE 198 35
556 A1 ein Navigationssystem für ein Fortbewegungsmittel,
beispielsweise ein Kraftfahrzeug, ein Schiff oder ein Flugzeug,
zur Navigation von einem Standort zu einem Zielort, wobei eine Eingabevorrichtung
zur Eingabe von Befehlen und/oder des Zielortes und ggf. des Standortes
vorgegeben ist. Hierbei umfasst die Eingabevorrichtung ein Spracheingabemodul,
welches Sprache erkennt und entsprechende Eingaben an das Navigationssystem
umwandelt.
-
Nachteilig
bei dem bekannten Systemen ist die nicht zufriedenstellende Erkennungswahrscheinlichkeit
der Spracherkennung aufgrund des umfangreichen Gesamtwortschatzes
an Orts- und Straßennamen.
-
Der
Erfindung liegt daher die Aufgabe zugrunde, ein Verfahren zur Spracherkennung
in einem Kraftfahrzeug, eine geeignete Verwendung des Verfahrens
sowie ein Spracherkennungssystem mit verbesserter Spracherkennungsfähigkeit
zu schaffen.
-
Diese
Aufgabe wird gelöst
durch ein Verfahren zur Spracherkennung mit den Merkmalen des Anspruchs
1, eine Verwendung des besagten Verfahrens mit den Merkmalen des
Anspruchs 8 sowie durch ein Spracherkennungssystem mit den Merkmalen
des Anspruchs 9. Bevorzugte Ausgestaltung des Verfahrens sind Gegenstand
der Unteransprüche.
-
Das
erfindungsgemäße Verfahren
zur Spracherkennung im Kraftfahrzeug, wobei für die Spracherkennung ein vorgegebener
Gesamtwortschatz zur Verfügung
steht, welcher zur Spracherkennung verwendet wird, umfasst die folgenden
Schritte:
- – Durchführen einer
ersten Spracherkennung mittels einer Ganzworterkennung einer ersten
Spracheingabe, wobei die Spracheingabe durch eine Ganzworteingabe
durch einen Benutzer erfolgt, und wobei als Ergebnis der ersten
Spracherkennung mittels der Ganzworterkennung ein erstes Erkennergebnis
vorliegt,
- – Präsentation
des ersten Erkennergebnisses an den Benutzer,
- – Durchführen einer
zweiten Spracherkennung aufgrund einer zweiten Spracheingabe durch
den Benutzer, falls das erste Erkennergebnis vom Benutzer als nicht übereinstimmend
mit der Ganzworteingabe klassifiziert wird, wobei die zweite Erkennung
ein zweites Erkennergebnis liefert, welches eine Funktion des ersten
Erkennergebnisses und der zweiten Spracheingabe ist oder eine Funktion
der Ganzworteingabe und der zweiten Spracheingabe ist, und
- – Präsentation
des zweiten Erkennergebnisses an den Benutzer.
-
Im
Falle, dass der Benutzer mit dem ersten Erkennergebnis zufrieden
ist, d.h. der Benutzer das erste Erkennergebnis als mit seinem eingegebenen Ganzwort
als übereinstimmend
klassifiziert hat, wird das erste Erkennergebnis als gültig eingestuft
und im Anwendungsfall beispielsweise an ein Navigationssystem weitergegeben.
Der Benutzer muss ebenfalls das zweite Erkennergebnis als gültig oder
nicht gültig klassifizieren.
Im Falle einer gültigen
Klassifikation wird das zweite Erkennergebnis weiter verwendet, während im
Falle der Klassifikation als nicht gültig beispielsweise das Verfahren
ganz oder teilweise wiederholt wird oder auf eine andere Form der
Eingabe zurückgegriffen
wird.
-
Vorzugsweise
berechnet die zweite Spracherkennung zuerst ein Teilerkennergebnis
aufgrund der zweiten Spracheingabe. Nachfolgend wird aus dem Teilerkennergebnis
und dem ersten Erkennergebnis oder aus dem Teilerkennergebnis und
der Ganzworteingabe das zweite Erkennergebnis berechnet. Durch diese
Verknüpfung
der zweiten Spracherkennung mit dem Ergebnis der ersten Spracherkennung
bzw. mit der Ganzworteingabe wird insgesamt das Ergebnis einer Spracherkennung
verbessert.
-
Vorzugsweise
wird zur Durchführung
der ersten Spracherkennung ein erster Wortschatz einer vorgegebenen
Größe bzw.
eines vorgegebenen Umfangs verwendet, wobei das Eingabewort der
ersten Spracheingabe innerhalb dieses ersten Wortschatzes gesucht
wird. Dabei ist der erste Wortschatz eine Teilmenge des Gesamtwortschatzes.
So kann derzeit eine Spracherkennung nur einen Wortschatz von ca. 30.000
Wörtern
bearbeiten, d.h. gleichzeitig erkennen. Allerdings gibt es allein
in Deutschland bereits ca. 70.000 Städte- bzw. Ortsnamen. So können daher
in dem ersten Schritt ein erster Wortschatz von 30.000, beispielsweise
für Deutschland
fest definierte Städte
geladen werden und die Spracherkennung sucht ähnlich klingende Städte aus
diesem ersten Wortschatz aufgrund der Gesamtworteingabe der ersten
Spracherkennung aus und bietet sie dem Benutzer zur Auswahl an.
-
Vorzugsweise
wird zur Durchführung
der zweiten Spracherkennung ein zweiter Wortschatz einer vorgegebenen
Größe bzw.
eines vorgegebenen Umfangs verwendet, wobei das Eingabewort der zweiten
Spracherkennung innerhalb des zweiten Wortschatzes gesucht wird
und wobei die Anzahl der Elemente des zweiten Wortschatzes kleiner
ist als die des ersten Wortschatzes. Selbstverständlich ist der zweite Wortschatz
ebenfalls eine Teilmenge des Gesamtwortschatzes. In einem Beispiel
verdeutlicht heißt
dies, dass in dem zweiten Schritt der zweiten Spracherkennung das
Verfahren beispielsweise einen Wortschatz umfassend die 100 größten Städten aus
Deutschland lädt
und den Benutzer nach einer großen
Stadt in der Nähe
des Zielortes fragt. Das System erkennt aufgrund des geringen zweiten
Wortschatzes die große
Stadt mit hoher Genauigkeit und lässt sich diese in dem Präsentationsschritt
bestätigen.
Anschließend
wird in einem weiteren dritten Schritt eine Auswahl von Städten bzw.
Orten in der Umgebung der gefundenen großen Stadt in den Speicher geladen
und es wird der erste Schritt der Gesamtworteingabe in diesem Umkreis
der gefundenen großen
Stadt wiederholt.
-
In
einer weiteren bevorzugten Ausführungsform
erfolgt die zweite Spracheingabe der zweiten Spracherkennung durch
Buchstabieren des Eingabewortes. Insbesondere kann in diesem Fall
für die zweite
Spracherkennung der Gesamtwortschatz verwendet werden, da die Erkennungswahrscheinlichkeit
bei der Buchstabierung eines Ortes hoch ist. Vorzugsweise, wie bereits
in den Beispielen angedeutet, umfasst der Gesamtwortschatz der Spracherkennung
die Orts- und Städtenamen
eines vorgegebenen geographischen Bereichs, beispielsweise die Orts-
und Städtenamen
von Deutschland. Durch eine Abgrenzung des geographischen Bereichs
können selbstverständlich auch
Straßennamen
im System abgelegt sein.
-
Vorzugsweise
wird das im Vorangegangenen erläuterte
Verfahren in einem Navigationssystem eines Kraftfahrzeuges verwendet,
um beispielsweise den Zielort in das System einzugeben.
-
Ein
erfindungsgemäßes Spracherkennungssystem
in einem Kraftfahrzeug zur Durchführung des oben genannten Verfahrens
umfasst eine Spracheingabeeinrichtung, eine Anzeigeeinrichtung zur
Anzeige von Ergebnissen einer Spracherkennungseinrichtung, wobei
die Spracherkennungseinrichtung einen Wortschatzspeicher, eine Berechnungseinheit
zum Berechnen von Teilerkennergebnissen aufgrund der Spracheingabe,
und einen Zwischenspeicher zum Speichern von Erkennergebnissen Teilerkennergebnisse
aufweist.
-
Vorzugsweise
weist das Spracherkennungssystem eine Sprachausgabeeinrichtung sowie
ggf. eine manuelle Eingabeeinrichtung zur Eingabe von Daten auf.
-
Insbesondere
kann das Spracherkennungssystem Bestandteil eines Navigationssystems
eines Kraftfahrzeugs sein. Dabei werden vorzugsweise im Wortschatzspeicher
des Spracherkennungssystems die Orts- und Städtenamen einer geographischen Region
und/oder die Straßennamen
der Orte einer vorgegebenen geographischen Region gespeichert.
-
Eine
bevorzugte Ausführungsform
der Erfindung wird nachfolgend anhand der Zeichnungen beschrieben.
Dabei zeigt
-
1 den
Ablauf des Verfahrens in Form eines Blockdiagramms und
-
2 eine
Detailskizze zur Berechnung des zweiten Erkennergebnisses.
-
1 zeigt
den Verfahrensablauf anhand eines Beispiels in Form eines Blockdiagramms.
Der Benutzer wird zunächst
in einem ersten Schritt 1 zu einer Ganzworteingabe aufgefordert,
beispielsweise zur Eingabe eines Städtenamens. Wahlweise kann diese
Ganzworteingabe aber auch ein Land, eine Strasse, eine Kreuzung
oder ähnliche
Eingaben betreffen. Dabei wird in diesem ersten Schritt 1 das
notwendige Vokabular in den Spracherkenner geladen, welches für eine Ganzworterkennung
von Nöten
ist. Dies ist der sogenannte erste Wortschatz, welcher eine Teilmenge
des Gesamtwortschatzes ist. Beispielsweise können dies bei einem Navigationssystem
mit Spracherkennung eine Liste von 30.000 deutschen Ortschaften
und Städten
sein, wobei die Gesamtanzahl deutscher Städte und Ortschaften ca. 70.000
beträgt.
Im Falle eines Navigationssystems kann der Benutzer durch eine Sprachausgabe
des Systems oder durch eine Ausgabe auf einer Anzeige beispielsweise
durch die Aufforderung "Bitte
nennen Sie eine Stadt",
zur Ganzworteingabe aufgefordert werden.
-
Aufgrund
der Aufforderung wird der Nutzer im nächsten Schritt 2 dann
solch eine erste Spracheingabe in Form einer Gesamtworteingabe,
beispielsweise durch die Eingabe "Berlin", tätigen.
-
Diese
wird nun im Schritt 3 den spezifischen Auswertungsalgorithmen
eines Spracherkenners unterworfen. Der Spracherkenner berechnet
hierdurch das am wahrscheinlichsten genannte Ergebnis, das sogenannte
best-Command, beziehungsweise die am wahrscheinlichsten genannten
Ergebnisse, die auch als n-best-Liste bezeichnet wird.
-
Bei
der anschließenden
Präsentation
im Schritt 4 auf einer Anzeige und/oder einer Sprachausgabe
dieses Erkennergebnisses oder der Erkennergebnisse entscheidet der
Nutzer, ob das Ergebnis (best-Command) der von ihm genannten Eingabe entspricht,
beziehungsweise, ob die Ergebnisse (n-best-Liste) der vom ihm genannten
Eingabe entsprechen. Für
den Fall, dass eine Übereinstimmung zwischen
Eingabe und Spracherkennergebnis auftritt, wie dies durch die Verzweigung "Y" dargestellt ist, kann dieser Teil des
Sprachdialoges beendet und das Erkennergebnis der Ganzworteingabe
im Schritt 5 übernommen
werden. Eine weitere Verwendung der Ganzworteingabe des Nutzers
ist damit hinfällig geworden
und somit kann dieses Ergebnis verworfen werden. Für den Fall
aber, dass keine Übereinstimmung
zwischen der vom Nutzer gemachten Eingabe und des vom Erkenner präsentierten
Ergebnisses (best-Command) beziehungsweise, der vom Spracherkenner
präsentierten
Ergebnisse (n-best-Liste) auftritt, wird der zweite Teil des Sprachdialoges
im mit "N" gekennzeichneten
Zweig angestoßen.
Die Nutzereingabe der Ganzworteingabe wird in diesem Fall nicht
verworfen, sondern für
eine nachfolgende Auswertung bereitgehalten.
-
Um
den Sprachdialog fortführen
zu können, muss
der Nutzer darauf hingewiesen werden, was er als nächstes zu
tun hat. In diesem Fall wird der Nutzer im Schritt 9 aufgefordert,
seine Eingabe zu buchstabieren. Auch hier wird das für den Spracherkenner notwendige
Vokabular zum Buchstabieren geladen. Ob der Nutzer zwischen der
Präsentation
des ersten Erkennergebnisses im Schritt 4 und der Aufforderung zum
Buchstabieren im Schritt 9 direkt über den Zweig 7 hingeführt oder
durch einen Schritt 6 abgefragt wird, ob er sein Ergebnis
verfeinern möchte,
ist dabei abhängig
von der Implementierung des Dialoges.
-
Nach
der Aufforderung zum Buchstabieren der Eingabe und dem Laden des
dafür notwendigen Vokabulars
im Schritt 9, wird der Nutzer im Schritt 10 seine
Eingabe buchstabieren. Am Ende der Eingabe der Buchstabenfolge wird
nun nicht mehr nur die Buchstabenfolge an sich, sondern zusätzlich auch noch
die vorgehaltene Ganzworteingabe des Schritts 2 über den
Pfad 14 des Nutzers den spezifischen Auswertungsalgorithmen
eines Spracherkenners im Schritt 11 unterworfen. Es ist
auch möglich,
das erste Erkennergebnis des Schritts 3 dem Auswertealgorithmus
des Schritts 11 zu unterziehen. Die Berechnung des am wahrscheinlichsten
genannten Ergebnisses (best-Command), beziehungsweise der am wahrscheinlichsten
genannten Ergebnisse (n-best-Liste), also des zweiten Erkennergebnisses, basiert
demzufolge nun nicht mehr nur auf der Buchstabenfolge des Schritts 10 allein,
sondern auch noch auf der bereitgestellten Ganzworteingabe des Schritts 2.
Diese werden dem Nutzer im Schritt 12 präsentiert
und der Dialog wird wie im Schritt 4 fortgeführt. Das
heißt,
im Fall einer Übereinstimmung
Y wird das zweite Erkennergebnis vom System übernommen und anschließend verworfen
(Schritt 13). Im Fall keiner Übereinstimmung N kann beispielsweise eine
manuelle Eingabe erfolgen oder der Schritt 9, d.h. die
Buchstabeneingabe, wird wiederholt.
-
Die
Verifizierung des präsentierten
ersten Erkennergebnisses (best-command/n-best-Liste) der Ganzworteingabe
im weiteren Dialogablauf kann ebenso eine Gewichtung dieses Erkennergebnisses beinhalten.
Dadurch, dass das präsentierte
erste Ergebnis 1 (best-command/n-best-Liste)
schon einmal vom Nutzer abgewiesen wurde, ist es für eine weitere Auswertung
irrelevant. Da es, vom Erkennsystem als wahrscheinlichstes genanntes
Ergebnis (best-command), bzw. als die wahrscheinlichsten Ergebnisse (n-best-Liste)
präsentiert,
vom Nutzer aber verworfen wurde, ist es sogar das am wahrscheinlichsten
falsche Ergebnis (best-command) bzw. die am wahrscheinlichsten falschen
Ergebnisse (n-best-Liste) und
kann in der folgenden Verifizierung mit einer anderen Wichtung (0
= gar nicht; 1 = zu 100%) behandelt werden.
-
2 zeigt
in einer genaueren Darstellung den Schritt 11 der 1.
Dabei wird zunächst
aus der Buchstabenfolge des Schritts 10 das am wahrscheinlichsten
genannte Ergebnis (best-Command) beziehungsweise,
die am wahrscheinlichsten genannten Ergebnisse (n-best-Liste) im Schritt 11a berechnet.
Diese Ergebnisse werden in dem Teilergebnis 2.1 festgehalten
(Schritt 11b). Dieses Teilergebnis 2.1 des Schritts 11b wird
nun abermals den spezifischen Auswertungsalgorithmen eines Spracherkenners
in einem Schritt 11c unterworfen. Als Eingabe wird hierbei
jedoch die vorgehaltene Ganzworteingabe des Schritts 2 der 1 herangezogen,
d.h. das erste Erkennergebnis. Die spezifischen Auswertungsalgorithmen
des Spracherkenners liefern hierbei das Erkennergebnis 2 im
Schritt 11d, welches wiederum aus dem am wahrscheinlichsten
genanntem Ergebnis (best-Command),
beziehungsweise der am wahrscheinlichsten genannten Ergebnisse (n-best-Liste) bestehen kann.
Durch die Einbeziehung der vorgehaltenen Ganzworteingabe, wird nicht nur
das Teilergebnis 2.1 des Schritts 11b um eine Vielzahl
unwahrscheinlicherer Ergebnisse (bei einer n-best-Liste) reduziert,
es wird auch die Wahrscheinlichkeit der ursprünglich genannten Eingabe erhöht werden.
Also der Eingabe, die der Nutzer letztendlich gemeint hat.
-
Eine
weitere Ausführungsform
besteht darin, dass anstelle der Ausforderung zur Eingabe von Buchstaben
im Schritt 10 die Eingabe einer größeren Stadt in der Umgebung
des Zielortes abgefragt wird, was beinhaltet, dass ein zweiter Wortschatz
bestehend aus den größeren Städten geladen
wird, der die Basis der Spracherkennung diese zweiten Spracherkennungsschrittes
bildet. Nach der Erkennung der größeren Stadt werden die Orte
und Städte
in der Umgebung der Zielstadt geladen und eine erneute Spracherkennung basierend
auf der Ganzworteingabe des Schritts 2 durchgeführt, um
jetzt den Zielort festzustellen.
-
- 1
- Aufforderung
zur Ganzworteingabe, Laden des ersten Wortschatzes
- 2
- Ganzworteingabe
- 3
- Berechnung
des ersten Erkennergebnisses
- 4
- Präsentation
des ersten Erkennergebnisses
- 5
- Übernahme
und anschließende
Verwertung des ersten Erkennergebnisses
- 6
- Verfeinerung
des ersten Erkennergebnisses gewünscht?
- 7
- direkter
Zugriff
- 8
- Wiederholung
der Ganzworteingabe, Verweis auf manuelle Eingabe
- 9
- Aufforderung
zur Eingabe einer Buchstabenfolge, Laden des Gesamtwortschatzes
- 10
- Eingabe
Buchstabenfolge
- 11
- Berechnung
des zweiten Erkennergebnisses
- 11a
- Berechnung
des Teilerkennergebnisses aus der Buchstabenfolge
- 11b
- Teilerkennergebnis
- 11c
- Berechnung
des zweiten Erkennergebnis aus ersten Erkennergebnis und Teilerkennergebnis
- 11d
- zweites
Erkennergebnis
- 12
- Präsentation
des zweiten Erkennergebnisses
- 13
- Übernahme
und anschließende
Verwerfung des zweiten Erkennergebnisses
- 14
- Übernahme
Ganzworteingabe
- Y
- Übereinstimmung
- N
- keine Übereinstimmung