DE69420888T2 - Interaktives Rechnersystem, das gesprochene Befehle erkennt - Google Patents

Interaktives Rechnersystem, das gesprochene Befehle erkennt

Info

Publication number
DE69420888T2
DE69420888T2 DE69420888T DE69420888T DE69420888T2 DE 69420888 T2 DE69420888 T2 DE 69420888T2 DE 69420888 T DE69420888 T DE 69420888T DE 69420888 T DE69420888 T DE 69420888T DE 69420888 T2 DE69420888 T2 DE 69420888T2
Authority
DE
Germany
Prior art keywords
active state
vocabulary
computer program
acoustic
command
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE69420888T
Other languages
English (en)
Other versions
DE69420888D1 (de
Inventor
Joseph Charles Andreshak
Gregg H. Daggett
John Karat
Stephen Eric Levy
John Lucassen
Robert Lawrence Mack
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nuance Communications Inc
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Application granted granted Critical
Publication of DE69420888D1 publication Critical patent/DE69420888D1/de
Publication of DE69420888T2 publication Critical patent/DE69420888T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/226Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics
    • G10L2015/228Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics of application context

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Acoustics & Sound (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Digital Computer Display Output (AREA)
  • Selective Calling Equipment (AREA)
  • Debugging And Monitoring (AREA)

Description

    Der Erfindung zugrundeliegender allgemeiner Stand der Technik
  • Die Erfindung betrifft interaktive Rechnersysteme, bei denen ein Benutzer einem Zielrechnerprogramm, das auf dem Rechnersystem ausgeführt wird, über eine Eingabeeinheit Befehle bereitstellt. Die Eingabeeinheit kann beispielsweise eine Tastatur, eine Mauseinheit oder ein Spracherkennungsprogramm sein. Für jede Eingabeeinheit wird ein von der Eingabeeinheit erzeugtes Eingangssignal in eine vom Zielrechnersystem benutzbare Form umgesetzt.
  • Ein interaktives Rechnersystem, bei dem der Benutzer Befehle bereitstellen kann, indem er sie spricht, kann aus einem Prozessor bestehen, der ein Zielrechnerprogramm ausführt, das über Befehle verfügt, die Funktionen kennzeichnen, welche von dem Zielrechnerprogramm ausgeführt werden können. Das Rechnersystem enthält des Weiteren ein Spracherkennungsprogramm zur Erkennung der gesprochenen Befehle und zur Ausgabe von Befehlssignalen, die den erkannten Befehlen entsprechen. Das Spracherkennungsprogramm erkennt einen gesprochenen Befehl, indem es den Wert von mindestens einem Merkmal einer Äußerung während eines jeden einer Reihe von aufeinanderfolgenden Zeitintervallen misst, um eine Reihe von Merkmalssignalen zu erzeugen, die gemessenen Merkmalssignale mit jedem einer Vielzahl von akustischen Befehlsmodellen vergleicht, um ein Übereinstimmungsergebnis für die Äußerung und jedes akustische Befehlsmodell zu erzeugen, und ein Befehlssignal ausgibt, das dem Befehlsmodell entspricht, welches das beste Übereinstimmungsergebnis aufweist.
  • Die Gruppe der Äußerungsmodelle und der Wörter, die von den Äußerungsmodellen dargestellt werden, die das Spracherkennungsprogramm erkennen kann, wird als Systemvokabular bezeichnet. Das Systemvokabular ist endlich und kann beispielsweise von einem Äußerungsmodell bis zu Tausenden von Äußerungsmodellen reichen. Jedes Äußerungsmodell kann ein Wort oder eine Kombination aus zwei oder mehr fortlaufend gesprochenen Wörtern (ohne eine Pause zwischen den Wörtern) darstellen.
  • Das Systemvokabular kann beispielsweise Äußerungsmodelle von allen Befehlen enthalten, auf die das Zielrechnerprogramm antworten kann. Mit der Zunahme der Anzahl der Äußerungsmodelle nimmt jedoch die Zeit zu, die zur Durchführung der Äußerungserkennung unter Verwendung des gesamten Systemvokabulars notwendig ist, und die Erkennungsgenauigkeit nimmt ab.
  • Im Allgemeinen hat ein Zielrechnerprogramm eine Reihe von aktiven Zuständen, die über eine Reihe von Zeiträumen auftreten. Für jeden aktiven Zustand kann es eine Liste von Befehlen des aktiven Zustands geben, die Funktionen kennzeichnen, welche in dem aktiven Zustand ausgeführt werden können. Die Befehle des aktiven Zustands können eine kleine Teilgruppe des Systemvokabulars sein. Die Umsetzung eines geäußerten Befehls in eine vom Zielrechnerprogramm benutzbare Form in einem Zustand des Zielrechnerprogramms kann sich von der Umsetzung desselben Befehls in einem anderen Zustand des Zielrechnerprogramms unterscheiden.
  • Um die Geschwindigkeit und die Genauigkeit des Spracherkennungsprogramms zu verbessern, ist es wünschenswert, das aktive Vokabular der Äußerungsmodelle, die das Spracherkennungsprogramm in einem bestimmten Zeitraum erkennen kann, auf die Befehle des aktiven Zustands zu beschränken, die Funktionen kennzeichnen, welche von dem Zielrechnerprogramm in diesem Zeitraum ausgeführt werden können. Um dieses Ergebnis versuchshalber zu erzielen, kann das Spracherkennungsprogramm mit einer Zustandsmaschine mit endlichem Zustand ausgestattet werden, welche die aktiven Zustände und die Übergänge zwischen aktiven Zuständen des Zielrechnerprogramms verdoppelt.
  • In der Praxis hat es sich als unmöglich herausgestellt, für das Spracherkennungsprogramm eine Zustandsmaschine mit endlichem Zustand zu bauen, welche die aktiven Zustände und die Übergänge zwischen aktiven Zuständen des Zielrechnerprogramms exakt verdoppelt. Das Zielrechnerprogramm kommuniziert nicht nur interaktiv mit dem Benutzer, sondern es kommuniziert auch interaktiv mit Daten und mit anderen Einheiten des Rechnersystems, dessen Zustände im Voraus nicht bekannt sein können.
  • Ein Befehl, eine Datei zu laden, bewirkt zum Beispiel, dass ein Rechnerprogramm in einen Zustand übergeht, wenn die Datei vorhanden ist, und in einen anderen Zustand, wenn die Datei nicht vorhanden ist. Die Zustandsmaschine mit endlichem Zustand des Spracherkennungsprogramms muss jedoch mit einer gewissen Annahme, dass die Datei vorhanden ist oder nicht vorhanden ist, gebaut werden. Wenn dem Rechnerprogramm mit Hilfe des Spracherkennungsprogramms ein Befehl, eine Datei zu laden, in gesprochener Form gegeben wird, kann die Zustandsmaschine mit endlichem Zustand des Spracherkennungsprogramms den Zustand des Rechnerprogramms richtig erfassen oder nicht, je nachdem, ob diese Datei vorhanden ist oder nicht. Wenn die Zustandsmaschine mit endlichem Zustand des Spracherkennungsprogramms annimmt, dass die Datei vorhanden ist, die Datei tatsächlich aber nicht vorhanden ist, tritt die Zustandsmaschine des Spracherkennungsprogramms in einen Zustand ein, der sich vom Zustand des Zielrechnerprogramms unterscheidet. Folglich kann das Zielrechnerprogramm von dem Spracherkennungsprogramm keine gültige Eingabe mehr empfangen.
  • Es wurde auch vorgeschlagen, ganz bestimmte Rechnersysteme zu entwickeln oder Rechnerprogramme anzupassen, um die Komplexität des Spracherkennungssystems zu beschränken. Die Europäische Patentanmeldung EP 414238 beschreibt beispielsweise ein sprachgesteuertes Ablagesystem, bei dem das bisherige Wissen über den Funktionszyklus des Ablage- und Abfrageprogramms angewandt wird, um die Spracherkennung auf den Vergleich eines gesprochenen Befehls mit einem Referenzmodell zu beschränken, das dem entspricht, was das System auf der Grundlage des vorherigen vom Benutzer eingegebenen Befehls als Befehl erwarten kann. Ein weiteres Beispiel ist der im IBM Technical Disclosure Bulletin, Band 33, Nr. 11, April 1991, auf den Seiten 368 bis 371 veröffentlichte Artikel mit dem Titel "Integrated Audio-Graphics User Interface", in dem vorgeschlagen wird, die Komplexität der Spracherkennung zu verringern, indem man die Möglichkeiten, die dem Benutzer eines Programms eröffnet werden, durch die Konzeption von besonderen, sorgfältig ausgewählten Menüs beschränkt. Beide Systeme stützen sich auf besondere Konzeptionen für die Rechnersysteme und/oder Programme, die speziell dafür vorgesehen sind, die Vorhersage der Entwicklung der Programmzustände und der Übergänge zwischen Zuständen zu ermöglichen.
  • Zusammenfassung der Erfindung
  • Es ist eine Aufgabe der Erfindung, ein interaktives Rechnersystem bereitzustellen, das über ein Zielrechnerprogramm verfügt, welches eine Reihe von aktiven Programmzuständen hat, die über eine Reihe von Zeiträumen auftreten, und das über ein Spracherkennungsprogramm verfügt, bei dem das aktive Vokabular der Befehle, die von dem Spracherkennungsprogramm in einem bestimmten Zeitraum erkannt werden, auf eine Liste von aktiven Befehlen beschränkt wird, die Funktionen kennzeichnen, welche von dem Zielrechnerprogramm in diesem bestimmen Zeitraum ausgeführt werden können, ohne die Zustände und die Übergänge zwischen Zuständen des Zielrechnerprogramms, die unter allen möglichen Umständen auftreten, vorhersagen zu müssen.
  • Erfindungsgemäß ist das interaktive Rechnersystem wie in Anspruch 1 dargelegt ausgestaltet.
  • In einer Ausführungsform des erfindungsgemäßen interaktiven Rechnersystems zeigt das Anzeigemittel mindestens ein Bild eines zweiten aktiven Zustands, das sich von dem Bild des ersten aktiven Zustands unterscheidet, für einen zweiten aktiven Zustand an, der während eines zweiten Zeitraums auftritt, welcher sich von dem ersten Zeitraum unterscheidet. Das Objektkennzeichnungsmittel kennzeichnet mindestens ein Objekt, das in dem Bild des zweiten aktiven Zustands angezeigt wird, und erzeugt eine Liste von einem oder mehreren Befehlen des zweiten aktiven Zustands, die Funktionen kennzeichnen, welche in dem zweiten aktiven Zustand des Zielrechnerprogramms ausgeführt werden können.
  • Das Kennzeichnungsmittel für das Vokabular des aktiven Zustands kennzeichnet ein Vokabular von akustischen Befehlsmodellen des zweiten aktiven Zustands für den zweiten aktiven Zustand. Das Vokabular des zweiten aktiven Zustands umfasst die akustischen Befehlsmodelle von dem Systemvokabular, das die Befehle des zweiten aktiven Zustands darstellt. Das Vokabular des zweiten aktiven Zustands unterscheidet sich mindestens teilweise von dem Vokabular des ersten aktiven Zustands.
  • Das Spracherkennungsprogramm misst den Wert von mindestens einem Merkmal einer Äußerung während eines jeden einer Reihe von aufeinanderfolgenden Zeitintervallen innerhalb des zweiten Zeitraums, um eine Reihe von Merkmalssignalen zu erzeugen. Das Spracherkennungsprogramm vergleicht die gemessenen Merkmalssignale für den zweiten Zeitraum mit jedem der akustischen Befehlsmodelle in dem Vokabular des zweiten aktiven Zustands, um ein Übereinstimmungsergebnis für die Äußerung und jedes akustische Befehlsmodell zu erzeugen. Das Spracherkennungsprogramm gibt dann ein Befehlssignal aus, das dem Befehlsmodell von dem Vokabular des zweiten aktiven Zustands entspricht, welches das beste Übereinstimmungsergebnis aufweist.
  • Beispielsweise tritt bei dem Zielrechnerprogramm während eines jeden Zeitraums möglicherweise nur ein aktiver Zustand auf. Das Zielrechnerprogramm kann nur ein Betriebssystemprogramm, ein Anwendungsprogramm und ein Betriebssystemprogramm in Kombination oder zwei oder mehrere Anwendungsprogramme und ein Betriebssystemprogramm umfassen.
  • Mindestens einige der Befehle für einen aktiven Zustand kennzeichnen Funktionen, die an den gekennzeichneten Objekten in dem Bild des aktiven Zustands für den Zustand ausgeführt werden können.
  • Das gekennzeichnete Objekt in einem Bild eines aktiven Zustands kann beispielsweise ein oder mehrere Zeichen, Wörter, Symbole, Schaltflächen, Schiebeleisten, Schiebefelder, Listenfenster, Menüs, Markierungsfelder, Behälter oder Notizbücher umfassen.
  • In einer alternativen Ausführungsform der Erfindung kann das Spracherkennungsprogramm zwei oder mehr Befehlssignale ausgeben, die den Befehlsmodellen von dem Vokabular des aktiven Zustands entsprechen, welche die besten Übereinstimmungsergebnisse für einen bestimmten Zeitraum aufweisen.
  • Das Vokabular der akustischen Befehlsmodelle für jeden aktiven Zustand kann des Weiteren eine Gruppe von globalen akustischen Befehlsmodellen umfassen, die globale Befehle darstellen, welche Funktionen kennzeichnen, die in jedem aktiven Zustand des Zielrechnerprogramms ausgeführt werden können.
  • Das Anzeigemittel kann beispielsweise einen Katodenstrahlröhren-Bildschirm, eine Flüssigkristallanzeige oder einen Drucker umfassen.
  • Das Anzeigemittel kann sowohl ein Bild eines aktiven Zustands für einen aktiven Zustand, der während eines Zeitraums auftritt, als auch mindestens einen Teil von einem oder mehreren Bildern für Programmzustände, die während des Zeitraums nicht auftreten, anzeigen.
  • Das erfindungsgemäße Verfahren zur Interaktion mit einem Rechner ist in Anspruch 14 dargelegt.
  • Indem mindestens ein Objekt gekennzeichnet wird, das in dem Bild des aktiven Zustands des Zielrechnerprogramms angezeigt wird, und indem von dem gekennzeichneten Objekt eine Liste von einem oder mehreren Befehlen eines aktiven Zustands, die Funktionen kennzeichnen, welche in dem aktiven Zustand des Zielrechnerprogramms ausgeführt werden können, erzeugt wird, kann das Vokabular des aktiven Zustands des Spracherkennungsprogramms auf eine kleine Teilgruppe des Systemvokabulars beschränkt werden, die Befehle des aktiven Zustands darstellt, ohne die Zustände und die Übergänge zwischen Zuständen des Zielrechnerprogramms vorhersagen zu müssen, die unter allen möglichen Umständen auftreten.
  • Kurze Beschreibung der Zeichnungen
  • Fig. 1 ist ein Blockschaltbild eines Beispiels eines erfindungsgemäßen interaktiven Rechnersystems.
  • Fig. 2 zeigt ein Beispiel eines Bildes eines ersten aktiven Zustands für einen ersten aktiven Zustand eines Zielrechnerprogramms.
  • Fig. 3 ist ein Blockschaltbild eines Beispiels eines Spracherkennungsprogramms für ein erfindungsgemäßes interaktives Rechnersystem.
  • Fig. 4 zeigt ein Beispiel eines Bildes eines zweiten aktiven Zustands für einen zweiten aktiven Zustand eines Zielrechnerprogramms.
  • Fig. 5 ist ein Blockschaltbild eines Beispiels eines Speichers für akustische Befehlsmodelle für das Systemvokabular eines erfindungsgemäßen interaktiven Rechnersystems.
  • Fig. 6 ist ein Blockschaltbild eines Akustikprozessors für das Spracherkennungsprogramm von Fig. 3.
  • Fig. 7 zeigt schematisch ein Beispiel eines akustischen Befehlsmodells.
  • Fig. 8 zeigt schematisch ein Beispiel eines akustischen Modells eines Phonems zur Erstellung eines akustischen Befehlsmodells.
  • Fig. 9 zeigt schematisch ein Beispiel von Pfaden durch das akustische Modell von Fig. 7.
  • Beschreibung der bevorzugten Ausführungsformen
  • Fig. 1 ist ein Blockdiagramm eines Beispiels eines erfindungsgemäßen interaktiven Rechnersystems. Das interaktive Rechnersystem umfasst einen Prozessor 10, der ein Zielrechnerprogramm ausführt, das eine Reihe von aktiven Programmzuständen hat, die über eine Reihe von Zeiträumen auftreten. Das Zielrechnerprogramm erzeugt Datensignale eines Bildes eines aktiven Zustands, die ein Bild eines aktiven Zustands für den aktiven Zustand des Zielrechnerprogramms darstellen, der während eines jeden Zeitraums auftritt. Jedes Bild des aktiven Zustands enthält ein oder mehrere Objekte.
  • Der Prozessor kann beispielsweise ein Personalcomputer, ein Arbeitsplatzrechner oder ein beliebiger anderer Mikrorechner, Minirechner oder Großrechner sein.
  • Das Zielrechnerprogramm kann ein Betriebssystemprogramm wie zum Beispiel DOS, Microsoft Windows (Warenzeichen), OS/2 (Warenzeichen), AIX (Warenzeichen), UNIX (Warenzeichen), X- Windows oder ein beliebiges anderes Betriebssystem sein. Das Zielrechnerprogramm kann ein oder mehrere Anwendungsprogramme umfassen, die mit einem Betriebssystemprogramm ausgeführt werden. Zu Anwendungsprogrammen gehören Tabellenkalkulationsprogramme, Textverarbeitungsprogramme, Datenbankprogramme, Lernprogramme, Freizeitprogramme, Kommunikationsprogramme und viele andere ein.
  • Objekte in einem Bild eines aktiven Zustands können ein oder mehrere Zeichen, Wörter, Symbole, Schaltflächen, Schiebeleisten, Schiebefelder, Listenfenster, Menüs, Markierungsfelder, Behälter, Notizbücher oder andere Elemente umfassen.
  • Das interaktive Rechnersystem umfasst des Weiteren ein Anzeigemittel 12, um mindestens ein Bild eines ersten aktiven Zustands für einen ersten aktiven Zustand anzuzeigen, der während eines ersten Zeitraums auftritt. Das Anzeigemittel kann beispielsweise ein Katodenstrahlröhren-Bildschirm, eine Flüssigkristallanzeige oder ein Drucker sein.
  • Fig. 2 zeigt ein Beispiel eines hypothetischen Bildes eines ersten aktiven Zustands für einen ersten aktiven Zustand, der während eines ersten Zeitraums auftritt. In diesem Beispiel enthält das Bild des aktiven Zustands ein Rahmenobjekt 14, das ein Titelleistenobjekt 16, ein Menüleistenobjekt 18, ein Li stenfensterobjekt 20 und ein Schaltflächen 22 enthält. Das Menüleistenobjekt 18 enthält ein Objekt "Elemente", ein Objekt "Optionen" und ein Objekt "Beenden". Das Listenfensterobjekt 20 enthält ein vertikales Schiebeleistenobjekt 24 und die Objekte "blau", "grün", "rot", "orange", "schwarz", "weiß" und "purpurrot". In Fig. 2 sind im Listenfenster 20 nur die Objekte "blau", "grün", "rot", "orange" und "schwarz" gezeigt. Die Objekte "weiß" und "purpurrot" sind im Listenfenster enthalten und könnten durch Rollen der vertikalen Schiebeleiste 24 sichtbar gemacht werden.
  • Die Datensignale des Bildes des aktiven Zustands können von dem Zielrechnerprogramm beispielsweise durch Verwendung von Betriebssystemunterbrechungen, Funktionsaufrufen oder Anwendungsprogramm-Schnittstellenaufrufen erzeugt werden.
  • Das nachstehende Beispiel I veranschaulicht einen in der Programmiersprache C geschriebenen Quellcode, der dazu dient, Datensignale eines Bildes eines aktiven Zustands zu erzeugen.
  • Nochmals Bezug nehmend auf Fig. 1, umfasst das interaktive Rechnersystem des Weiteren eine Bildobjekt-Kennzeichnungseinheit 26, um mindestens ein Objekt zu kennzeichnen, das in dem Bild des ersten aktiven Zustands angezeigt wird, und um von dem gekennzeichneten Objekt eine Liste von einem oder mehreren Befehlen des ersten aktiven Zustands zu erzeugen, die Funktionen kennzeichnen, welche in dem ersten aktiven Zustand des Zielrechnerprogramms ausgeführt werden können.
  • Die Bildobjekt-Kennzeichnungseinheit 26 kann Rechnerprogramm- Unterroutinen, die dafür bestimmt sind, Betriebssystem-Funktionsaufrufe und Anwendungsprogramm-Schnittstellenaufrufe, die von einem oder mehreren Zielrechnerprogrammen ausgegeben werden, abzufangen (mit Einfügestellen ("Hooks") zu versehen), und/oder Rechnerprogramm-Unterroutinen zur Verwendung von Betriebssystemunterbrechungen, Funktionsaufrufen oder Anwendungsprogramm-Schnittstellenaufrufen umfassen, um Objekte zu kennzeichnen, die in dem Bild des ersten aktiven Zustands des Zielrechnerprogramms angezeigt werden. Das nachstehende Beispiel 11 veranschaulicht einen in der Programmiersprache C geschriebenen Quellcode, der dazu dient, mindestens ein Objekt zu kennzeichnen, das in einem Bild eines aktiven Zustands angezeigt wird.
  • Die Tabelle 1 zeigt ein hypothetisches Beispiel einer Liste mit Befehlen des ersten aktiven Zustands, die Funktionen kennzeichnen, welche in dem ersten aktiven Zustand des Zielrechnerprogramms für die Objekte ausgeführt werden können, die in dem Bild des ersten aktiven Zustands von Fig. 2 angezeigt werden. TABELLE 1 TABELLE 1 (FORTSETZUNG)
  • Wie in dem Beispiel von Tabelle 1 gezeigt ist, kann jedes Objekt null oder mehr Befehle haben, die Funktionen kennzeichnen, welche in dem ersten aktiven Zustand des Zielrechnerprogramms ausgeführt werden können. Mindestens einige Befehle kennzeichnen Funktionen, die an dem gekennzeichneten Objekt in dem Bild des aktiven Zustands für den Zustand ausgeführt werden können. Beispielsweise ändert der Befehl "RAHMEN" den Eingabebereich auf das ganze Rahmenobjekt 14 von Fig. 2. Mit dem Eingabebereich auf dem ganzen Rahmenobjekt 14 befindlich, nimmt der gesprochene Befehl "LINKS" Operationen an dem Rah menobjekt vor, indem er es auf dem Bildschirm nach links verschiebt.
  • Nochmals Bezug nehmend auf Fig. 1, umfasst das interaktive Rechnersystem einen Speicher 28 für ein Systemvokabular von akustischen Befehlsmodellen, um ein Systemvokabular von akustischen Befehlsmodellen zu speichern. Jedes akustische Befehlsmodell stellt eine oder mehrere Reihen von akustischen Merkmalswerten dar, die eine Äußerung von einem oder mehreren Wörtern darstellen, welche zu dem akustischen Befehlsmodell gehören.
  • Die gespeicherten akustischen Befehlsmodelle können beispielsweise Markowsche Modelle oder andere dynamische Programmiermodelle sein. Die Parameter der akustischen Befehlsmodelle können von einem bekannten gesprochenen Schulungstext (beispielsweise 257 Sätze) geschätzt werden, indem man zum Beispiel vom Vorwärts-Rückwärts-Algorithmus erhaltene Parameter glättet. (Siehe beispielsweise "Continuous Speech Recognition By Statistical Methods" von Jelinek, Proceedings of the IEEE, Band 64, Nr. 4, April 1976, Seiten 532 bis 536)
  • Vorzugsweise stellt jedes akustische Befehlsmodell einen isoliert gesprochenen Befehl dar (das heißt, unabhängig vom Kontext von vorhergehenden und nachfolgenden Äußerungen). Kontextunabhängige akustische Befehlsmodelle können zum Beispiel entweder manuell aus Modellen von Phonemen oder automatisch erzeugt werden, zum Beispiel mit dem von Lalit R. Bahl u. a. in der US-Patentschrift 4 759 068 mit dem Titel "Constructing Markov Models of Words from Multiple Utterances" beschriebenen Verfahren oder mit jedem anderen bekannten Verfahren zur Erzeugung von kontextunabhängigen Modellen.
  • Alternativ dazu können kontextabhängige Modelle aus kontextunabhängigen Modellen erzeugt werden, indem Befehlsäußerungen in kontextabhängige Kategorien gruppiert werden. Ein Kontext kann zum Beispiel manuell oder automatisch ausgewählt werden, indem jedes Merkmalssignal, das einem Befehl entspricht, mit seinem Kontext gekennzeichnet wird und indem die Merkmalssignale ihrem Kontext entsprechend gruppiert werden, um eine ausgewählte Bewertungsfunktion zu optimieren. (Siehe beispielsweise "Apparatus And Method Of Grouping Utterances Of A Phoneme Into Context-Dependent Categories Based On Sound-Similarity For Automatic Speech Recognition" von Lalit R. Bahl u. a., US- Patentschrift 5 195 167).
  • Wie in dem Blockschaltbild von Fig. 1 gezeigt ist, umfasst das interaktive Rechnersystem eine Kennzeichnungseinheit 30 für ein Vokabular von Befehlsmodellen eines aktiven Zustands, um ein Vokabular von akustischen Befehlsmodellen des ersten aktiven Zustands für den ersten aktiven Zustand zu kennzeichnen. Das Vokabular des ersten aktiven Zustands umfasst die akustischen Befehlsmodelle vom Systemvokabular 28, das die Befehle des ersten aktiven Zustands von der Bildobjekt- Kennzeichnungseinheit 26 darstellt. Das nachstehende Beispiel III veranschaulicht einen in der Programmiersprache C geschriebenen Quellcode zur Kennzeichnung eines Vokabulars eines aktiven Zustands. Das nachstehende Beispiel IV veranschaulicht einen in der Programmiersprache C geschriebenen Quellcode, der dazu dient, dem Spracherkennungsprogramm das Vokabular des aktiven Zustands anzugeben.
  • Vorzugsweise umfasst das Vokabular des aktiven Zustands wesentlich weniger als alle der akustischen Befehlsmodelle in dem Systemvokabular. Zum Beispiel kann jedes Vokabular des aktiven Zustands 50 bis 200 Befehle umfassen. Das ganze Befehlsvokabular des Systems kann 500 bis 700 oder mehr Befehle umfassen. Das Spracherkennungsprogramm vergleicht die gemessenen Merkmalssignale für einen Zeitraum nicht mit einem akustischen Befehlsmodell, das sich nicht im Vokabular des aktiven Zustands für diesen Zeitraum befindet.
  • Ein Spracherkennungsprogramm 32 misst den Wert von mindestens einem Merkmal einer Äußerung während eines jeden einer Reihe von aufeinanderfolgenden Zeitintervallen innerhalb des ersten Zeitraums, um eine Reihe von Merkmalssignalen zu erzeugen. Das Spracherkennungsprogramm 32 vergleicht das gemessene Merkmalssignal mit jedem der akustischen Befehlsmodelle in dem Vokabular des ersten aktiven Zustands, um ein Übereinstimmungsergebnis für die Äußerung und jedes akustische Befehlsmodell zu erzeugen. Das Spracherkennungsprogramm 32 gibt ein Befehlssignal aus, das dem Befehlsmodell von dem Vokabular des ersten aktiven Zustands entspricht, welches das beste Übereinstimmungsergebnis aufweist.
  • Das nachstehende Beispiel V veranschaulicht einen in der Programmiersprache C geschriebenen Quellcode zur Ausgabe eines Befehlssignals, das dem Befehlsmodell von einem Vokabular eines aktiven Zustands entspricht, welches das beste Übereinstimmungsergebnis aufweist.
  • Fig. 3 ist ein Blockschaltbild eines Beispiels eines Spracherkennungsprogramms für ein erfindungsgemäßes interaktives Rechnersystem. In diesem Beispiel umfasst das Spracherkennungsprogramm 32 einen Speicher 34 für akustische Befehlsmodelle eines aktiven Zustands, um das Vokabular des aktiven Zu stands zu speichern, das die akustischen Befehlsmodelle aus dem Systemvokabular-Speicher 28 umfasst, welche die Befehle des aktiven Zustands darstellen, die von der Kennzeichnungseinheit 30 für ein Vokabular von Befehlsmodellen eines aktiven Zustands gekennzeichnet wurden.
  • Das Spracherkennungsprogramm 32 umfasst des Weiteren einen Akustikprozessor 36, der dazu dient, den Wert von mindestens einem Merkmal einer Äußerung während eines jeden einer Reihe von aufeinanderfolgenden Zeitintervallen innerhalb eines jeden Zeitraums eines aktiven Zustands zu messen, um eine Reihe von Merkmalssignalen zu erzeugen. Ein Akustikprozessor 38 für Übereinstimmungsergebnisse vergleicht die gemessenen Merkmalssignale vom Akustikprozessor 36 mit jedem der akustischen Befehlsmodelle im Speicher 34 für akustische Befehlsmodelle eines aktiven Zustands, um ein Übereinstimmungsergebnis für die Äußerung und jedes akustische Befehlsmodell zu erzeugen. Ein Ausgang 40 gibt ein oder mehrere Befehlssignale aus, die den Befehlsmodellen von dem Vokabular des aktiven Zustands entsprechen, welche für einen bestimmten Zeitraum die besten Übereinstimmungsergebnisse aufweisen.
  • Vorzugsweise wird nur ein Befehlssignal ausgegeben, das dem Befehlsmodell von dem Vokabular des ersten aktiven Zustands entspricht, welches das beste Übereinstimmungsergebnis aufweist. In diesem Fall kann der eine ausgegebene Befehl sofort ausgeführt werden. Wenn zwei oder mehr Befehlssignale ausgegeben werden, die den Befehlsmodellen von dem Vokabular des aktiven Zustands entsprechen, welche für einen bestimmten Zeitraum die besten Übereinstimmungsergebnisse aufweisen, können die erkannten Befehle angezeigt werden, damit der Benutzer einen zur Ausführung auswählen kann.
  • Das Spracherkennungsprogramm kann ein allgemein erhältliches Produkt sein, wie beispielsweise das IBM Voice Type II (Warenzeichen) oder das IBM Speech Server Series (Warenzeichen). Bei Produkten, die einen schnellen akustischen Vergleich und einen detaillierten akustischen Vergleich enthalten, können beide akustische Vergleiche in der Erfindung verwendet werden. Alternativ dazu kann der schnelle akustische Vergleich weggelassen werden, da die Bildobjekt-Kennzeichnungseinheit 26 und die Kennzeichnungseinheit 30 für ein Vokabular von Befehlsmodellen eines aktiven Zustands nur eine kleine Teilgruppe des Systemvokabulars im Speicher 28 für den akustischen Vergleich auswählen.
  • Bei Spracherkennungsprodukten, die ein Sprachmodell enthalten, kann das Sprachmodell weggelassen werden. Alternativ dazu können allen Wörtern in dem Vokabular des aktiven Zustands gleiche Sprachmodell-Wahrscheinlichkeiten zugeordnet werden.
  • Bei Spracherkennungsprodukten, die über Hypothese-Suchalgorithmen zur Erzeugung von Hypothesen mit mehreren Wörtern verfügen, hängt die Erkennung eines Worts zum Teil von der Erkennung von aufeinanderfolgenden Wörtern ab. Ein solcher Hypothese-Suchalgorithmus braucht mit der vorliegenden Erfindung nicht verwendet zu werden, bei der vorzugsweise jeder Befehl von nachfolgenden Befehlen unabhängig ist.
  • Vorzugsweise werden sowohl das Zielrechnerprogramm als auch das Spracherkennungsprogramm auf derselben Zentraleinheit im Zeitteilungsbetrieb ausgeführt. Alternativ dazu können das Zielrechnerprogramm und das Spracherkennungsprogramm bei spielsweise unter Verwendung einer Client-Server-Architektur auf verschiedenen Zentraleinheiten ausgeführt werden.
  • Bei dem erfindungsgemäßen interaktiven Rechnersystem kann das Anzeigemittel des Weiteren mindestens ein Bild eines zweiten aktiven Zustands, das sich von dem Bild des ersten aktiven Zustands unterscheidet, für einen zweiten aktiven Zustand anzeigen, der während eines zweiten Zeitraums auftritt, welcher sich von dem ersten Zeitraum unterscheidet.
  • Fig. 4 zeigt ein Beispiel eines Bildes eines zweiten aktiven Zustands für einen zweiten aktiven Zustand des Zielrechnerprogramms. Das in Fig. 4 gezeigte Bild des zweiten aktiven Zustands enthält ein Rahmenobjekt 42, ein Titelleistenobjekt 44, ein Systemmenüobjekt 46, ein vertikales Schiebeleistenobjekt 48, ein horizontales Schiebeleistenobjekt 50 und ein Behälterobjekt 52. Das Behälterobjekt 52 enthält ein Objekt "Editor", ein Objekt "Telefonbuch", ein Objekt "Tabellenkalkulation", ein Objekt "Post" und ein Objekt "Solitaire".
  • Das Objektkennzeichnungsmittel kennzeichnet mindestens ein Objekt, das in dem Bild des zweiten aktiven Zustands angezeigt wird, und erzeugt von dem gekennzeichneten Objekt eine Liste von einem oder mehreren Befehlen des zweiten aktiven Zustands, die Funktionen kennzeichnen, welche in dem zweiten aktiven Zustand des Zielrechnerprogramms ausgeführt werden können.
  • Tabelle 2 ist ein Beispiel für eine hypothetische Liste von Befehlen für jedes in Fig. 4 gezeigte Objekt, die Funktionen kennzeichnen, welche in dem zweiten aktiven Zustand des Zielrechnerprogramms ausgeführt werden können. TABELLE 2 TABELLE 2 (FORTSETZUNG)
  • Ein Vergleich der Fig. 2 und 4 zeigt, dass das Bild des ersten aktiven Zustands von dem Bild des zweiten aktiven Zustands insofern abweicht, als in dem Bild des ersten aktiven Zustands, jedoch nicht in dem Bild des zweiten aktiven Zustands, das Menüleistenobjekt 18, das Listenfensterobjekt 20 und das Schaltflächenobjekt 22 bereitgestellt werden. Die horizontale Schiebeleiste 50 und die Objekte Editor, Telefonbuch, Post, Tabellenkalkulation und Solitaire werden in dem Bild des zweiten aktiven Zustands, jedoch nicht in dem Bild des ersten aktiven Zustands bereitgestellt.
  • Das Kennzeichnungsmittel für das Vokabular des aktiven Zustands kennzeichnet des Weiteren ein Vokabular von akustischen Befehlsmodellen des zweiten aktiven Zustands für den zweiten aktiven Zustand. Das Vokabular des zweiten aktiven Zustands umfasst die akustischen Befehlsmodelle von dem Systemvokabular, das die Befehle des zweiten aktiven Zustands darstellt. Das Vokabular des zweiten aktiven Zustands unterscheidet sich mindestens teilweise von dem Vokabular des ersten aktiven Zustands.
  • Ein Vergleich der Tabellen 1 und 2 zeigt, dass das Vokabular des ersten aktiven Zustands die in Tabelle 1 aufgeführten gesprochenen Befehle umfasst. Das Vokabular des zweiten aktiven Zustands umfasst die in Tabelle 2 aufgeführten gesprochenen Befehle. In diesem Beispiel unterscheidet sich das Vokabular des ersten aktiven Zustands mindestens teilweise von dem Vokabular des zweiten aktiven Zustands, wie darin gezeigt ist.
  • Das Spracherkennungsprogramm misst den Wert von mindestens einem Merkmal einer Äußerung während eines jeden einer Reihe von aufeinanderfolgenden Zeitintervallen innerhalb des zweiten Zeitraums, um eine Reihe von Merkmalssignalen zu erzeugen. Das Spracherkennungsprogramm vergleicht die gemessenen Merkmalssignale für den zweiten Zeitraum mit jedem der akustischen Befehlsmodelle in dem Vokabular des zweiten aktiven Zustands, um ein Übereinstimmungsergebnis für die Äußerung und jedes akustische Befehlsmodell zu erzeugen. Das Spracherkennungsprogramm gibt dann ein Befehlssignal aus, das dem Befehlsmodell von dem Vokabular des zweiten aktiven Zustands entspricht, welches das beste Übereinstimmungsergebnis aufweist.
  • Vorzugsweise tritt bei dem Zielrechnerprogramm während eines jeden Zeitraums nur ein aktiver Zustand auf.
  • Fig. 5 ist ein Blockdiagramm eines Beispiels des Speichers 28 für ein Vokabular von akustischen Befehlsmodellen von Fig. 1. Das Systemvokabular kann beispielsweise eine Gruppe von globalen akustischen Befehlsmodellen umfassen, die globale Befehle darstellen, welche Funktionen kennzeichnen, die in jedem aktiven Zustand des Zielrechnerprogramms ausgeführt werden können.
  • Tabelle 3 führt einige Beispiele für globale Befehle auf, die von globalen akustischen Befehlsmodellen dargestellt werden.
  • TABELLE 3 Globale Befehle Gesprochener Befehl Funktion
  • MIKROFON AUS schaltet das Mikrofon aus
  • EINGEBEN sendet den Tastenanschlag "EINGEBEN" an den Tastatur-Eingabepuffer
  • LINKS sendet den Tastenanschlag "LINKER PFEIL" an den Tastatur-Eingabepuffer
  • RECHTS sendet den Tastenanschlag "RECHTER PFEIL" an den Tastatur-Eingabepuffer
  • EINFÜGEN fügt den Inhalt der Zwischenablage in die Anwendung mit dem Eingabebereich ein
  • FENSTERLISTE zeigt eine Liste der laufenden Programme an
  • EDITOR führt das Editorprogramm aus
  • ARBEITSOBERFLÄCHE aktiviert das Arbeitsoberflächenfenster
  • Das Systemvokabular kann des Weiteren akustische Befehlsmodelle eines Objekttyps umfassen, die verschiedenen Arten von Objekten zugeordnet werden. Wie in den Tabellen 1 und 2 gezeigt ist, schließen akustische Befehle vom Objekttyp Rahmen "Rahmen", "oberer Rand", "unterer Rand", "linker Rand" "rechter Rand", "links", "rechts", "aufwärts" und "abwärts" ein. Akustische Befehle vom Objekttyp vertikale Schiebeleiste schließen "Schiebeleiste", "aufwärts", "abwärts", "oben", "unten", "zurückblättern", "vorblättern" ein. Akustische Befehlsmodelle vom Objekttyp Schaltfläche schließen "drücken" und "Schaltfläche" ein.
  • Schließlich enthält das Systemvokabular anwendungsspezifische akustische Befehlsmodelle, die anwendungsspezifische Objekte darstellen. In den Beispielen der Tabellen 1 und 2 schließen anwendungsspezifische Objekte die Wörter "Elemente", "Farben", "Namen", "Adressen", "Telefonbuch", "Tabellenkalkulation", "Post" und "Solitaire" ein.
  • Das Anzeigemittel 12 von Fig. 1 kann sowohl ein Bild eines aktiven Zustands für einen aktiven Zustand, der während eines Zeitraums auftritt, als auch mindestens einen Teil von einem oder mehreren Bildern für Programmzustände, die während dieses Zeitraums nicht auftreten, anzeigen.
  • Ein Beispiel des Akustikprozessors 36 von Fig. 3 ist in Fig. 6 gezeigt. Der Akustikprozessor umfasst ein Mikrofon 54 zur Erzeugung eines analogen elektrischen Signals, das der Äußerung entspricht. Das analoge elektrische Signal vom Mikrofon 54 wird vom Analog-Digital-Wandler 56 in ein digitales elektrisches Signal umgewandelt. Zu diesem Zweck kann das analoge Signal vom Analog-Digital-Wandler 56 beispielsweise mit einer Frequenz von zwanzig Kilohertz abgetastet werden.
  • Ein Fenstergenerator 58 erhält vom Analog-Digital-Wandler 56 alle zehn Millisekunden (jede Hundertstelsekunde) einen Abtastwert des digitalen Signals mit einer Dauer von beispielsweise zwanzig Millisekunden. Jeder Abtastwert des digitalen Signals mit einer Dauer von zwanzig Millisekunden wird vom Spektrumanalysator 60 analysiert, um die Amplitude des Abtastwerts des digitalen Signals in jedem von beispielsweise zwanzig Frequenzbändern zu erhalten. Vorzugsweise erzeugt der Spektrumanalysator 60 auch ein Signal mit einer einundzwanzigsten Dimension, das die Gesamtamplitude oder die Gesamtleistung des Abtastwerts des digitalen Signals mit einer Dauer von zwanzig Millisekunden darstellt. Der Spektrumanalysator 60 kann beispielsweise ein Prozessor für eine schnelle Fouriertransformation sein. Alternativ dazu kann er aus einer Gruppe von zwanzig Bandpassfiltern bestehen.
  • Die vom Spektrumanalysator 60 erzeugten Vektorsignale mit einundzwanzig Dimensionen können von einem adaptiven Rauschunterdrückungsprozessor 62 angepasst werden, um das Hintergrundrauschen zu beseitigen. Der Rauschunterdrückungsprozessor 62 subtrahiert einen Rauschvektor N(t) von dem in den Rauschunterdrückungsprozessor eingegebenen Merkmalsvektor F(t), um einen Ausgabemerkmalsvektor F'(t) zu erzeugen. Der Rauschunterdrückungsprozessor 62 passt sich einem sich ändernden Rauschpegel an, indem er den Rauschvektor N(t) in regelmäßigen Abständen aktualisiert, sobald der vorhergehende Merkmalsvektor F(t-1) als Rauschen oder Stille erkannt worden ist. Der Rauschvektor N(t) wird gemäß der Formel
  • aktualisiert, wobei N(t) der Rauschvektor zum Zeitpunkt t, N(t-1) der Rauschvektor zum Zeitpunkt (t-1), k ein fester Parameter des adaptiven Rauschunterdrückungsmodells, F(t-1) der in den Rauschunterdrückungsprozessor 62 zum Zeitpunkt (t-1) eingegebene Merkmalsvektor, der Rauschen oder Stille darstellt, und Ep(t-1) ein Prototypvektor für Stille oder Rauschen aus dem Speicher 64 ist, der dem Merkmalsvektor F(t-1) am nächsten kommt, sind.
  • Der vorhergehende Merkmalsvektor F(t-1) wird als Rauschen oder Stille erkannt, wenn entweder (a) die gesamte Energie des Vektors einen Schwellenwert unterschreitet oder (b) der dem Merkmalsvektor am nächsten kommende Prototypvektor im Adaptionsprototypvektor-Speicher 66 ein Prototyp ist, der Rauschen oder Stille darstellt. Um die gesamte Energie des Merkmalsvektors zu analysieren, kann der Schwellenwert beispielsweise das fünfte Perzentil von allen Merkmalsvektoren (die sowohl Sprache als auch Stille entsprechen) sein, die in den zwei Sekunden vor der Auswertung des Merkmalsvektors erzeugt wurden.
  • Nach der Rauschunterdrückung wird der Merkmalsvektor F'(t) zum Ausgleich von Schwankungen bei der Lautstärke der eingegebenen Sprache vom Prozessor 68 für eine kurzfristige, mittlere Normalisierung normalisiert. Der Normalisierungsprozessor 68 normalisiert den Merkmalsvektor F'(t) mit einundzwanzig Dimensionen, um einen normalisierten Merkmalsvektor mit zwanzig Dimensionen X(t) zu erzeugen. Die einundzwanzigste Dimension des Merkmalsvektors F'(t), welche die Gesamtamplitude oder die Gesamtleistung darstellt, wird verworfen. Jede Komponente i des normalisierten Merkmalsvektors X(t) zum Zeitpunkt t kann beispielsweise durch die Gleichung
  • Xi(t) = Fi(t) - Z(t) [2]
  • im logarithmischen Bereich gegeben sein, wobei F'i(t) die i-te Komponente des nichtnormalisierten Vektors zum Zeitpunkt t und Z(t) ein gewichteter Mittelwert der Komponenten von F'(t) und Z(t-1) gemäß den Gleichungen 3 und 4 sind:
  • Z(t) = 0,9Z(t-1) + 0,1M(t) [3]
  • und wobei
  • M(t) = 1/20 ΣFt(t) [4]
  • Der normalisierte Merkmalsvektor X(t) mit zwanzig Dimensionen kann von einer adaptiven Markierungseinheit 70 zur Anpassung an Schwankungen bei der Aussprache von Sprachtönen weiterverarbeitet werden. Ein angepasster Merkmalsvektor X'(t) mit zwanzig Dimensionen wird erzeugt, indem ein Adaptionsvektor A(t) mit zwanzig Dimensionen von dem Merkmalsvektor X(t) mit zwanzig Dimensionen subtrahiert wird, der dem Eingang der adaptiven Markierungseinheit 70 zugeführt wird. Der Adaptionsvektor A(t) zum Zeitpunkt t kann beispielsweise durch die Formel
  • gegeben sein, wobei k ein fester Parameter des adaptiven Markierungsmodells, X(t-1) der normalisierte Vektor mit zwanzig Dimensionen, der zum Zeitpunkt (t-1) in die adaptive Markierungseinheit 70 eingegeben wird, Xp(t-1) der Adaptionsprototypvektor (aus dem Adaptionsprototypspeicher 66), der dem Merkmalsvektor X(t-1) zum Zeitpunkt (t-1) am nächsten kommt, und A(t-1) der Adaptionsvektor zum Zeitpunkt (t-1) sind.
  • Das angepasste Merkmalsvektorsignal X'(t) mit zwanzig Dimensionen von der adaptiven Markierungseinheit 70 wird vorzugsweise einem Gehörmodell 72 zugeführt. Das Gehörmodell 72 kann beispielsweise modellhaft darstellen, wie der menschliche Hörapparat Tonsignale wahrnimmt. Ein Beispiel eines Gehörmodells ist in der US-Patentschrift 4 980 918 von Bahl u. a. mit dem Titel "Speech Recognition System with Efficient Storage and Rapid Assembly of Phonological Graphs" beschrieben.
  • Gemäß der vorliegenden Erfindung berechnet das Gehörmodell 72 für jedes Frequenzband i des angepassten Merkmalsvektorsignals X'(t) zum Zeitpunkt t vorzugsweise einen neuen Parameter Ei(t) gemäß den Gleichungen 6 und 7:
  • Ei(t) = k&sub1; + K&sub2; (X'i(t))(Ni(t - 1)) [6],
  • wobei
  • Ni(t) = K&sub3; · Ni(t - 1) - Ei(t - 1) [7]
  • und wobei K1, K2 und K3 feste Parameter des Gehörmodells sind.
  • Für jedes Zeitintervall von einer Hundertstelsekunde ist die Ausgabe des Gehörmodells 72 ein geändertes Merkmalsvektorsignal mit zwanzig Dimensionen. Dieser Merkmalsvektor wird um eine einundzwanzigste Dimension erhöht, deren Wert gleich der Quadratwurzel der Summe der ins Quadrat erhobenen Werte der anderen zwanzig Dimensionen ist.
  • Für jedes Zeitintervall von einer Hundertstelsekunde verknüpft eine Verknüpfungseinheit 74 vorzugsweise neun Merkmalsvektoren mit einundzwanzig Dimensionen, die das eine momentane Zeitintervall von einer Hundertstelsekunde, die vier vorhergehenden Zeitintervalle von einer Hundertstelsekunde und die vier folgenden Zeitintervalle von einer Hundertstelsekunde darstellen, um einen einzigen kombinierten Vektor mit 189 Dimensionen zu bilden. Jeder kombinierte Vektor mit 189 Dimensionen wird vorzugsweise in einem Rotator 76 mit einer Rotationsmatrix multipliziert, um den kombinierten Vektor zu drehen und ihn auf fünfzig Dimensionen zu verringern.
  • Die im Rotator 76 verwendete Rotationsmatrix kann man beispielsweise erhalten, indem man eine Gruppe von kombinierten Vektoren mit 189 Dimensionen, die man während einer Schulungssitzung erhalten hat, in M Klassen klassifiziert. Die Kovarianzmatrix für alle kombinierten Vektoren in der Schulungsgruppe wird mit dem Kehrwert der Kovarianzmatrix innerhalb der Klasse für alle kombinierten Vektoren in allen M Klassen multipliziert. Die ersten fünfzig Eigenvektoren der sich daraus ergebenden Matrix bilden die Rotationsmatrix. (Siehe beispielsweise "Vector Quantization Procedure For Speech Recognition Systems Using Discrete Parameter Phoneme-Based Markov Word Models" von L. R. Bahl u. a., IBM Technical Disclosure Bulletin, Band 32, Nr. 7, Dezember 1989, Seiten 320 und 321.)
  • Der Fenstergenerator 58, der Spektrumanalysator 60, der adaptive Rauschunterdrückungsprozessor 62, der Prozessor 68 für eine kurzfristige, mittlere Normalisierung, die adaptive Markierungseinheit 70, das Gehörmodell 72, die Verknüpfungseinheit 74 und der Rotator 76 können auf geeignete Weise programmierte Spezial- oder Universaldigitalsignalprozessoren sein. Die Prototypspeicher 64 und 66 können elektronische Rechnerspeicher von dem vorstehend erörterten Typ sein.
  • Die Prototypvektoren im Prototypspeicher 54 kann man beispielsweise erhalten, indem man Merkmalsvektorsignale aus einer Schulungsgruppe zu einer Vielzahl von Erfassungsgruppen zusammenfasst und dann die mittlere und die Standardabweichung für jede Erfassungsgruppe berechnet, um die Parameterwerte des Prototypvektors zu bilden. Wenn der Schulungstext eine Reihe von Wortsegmentmodellen (die ein Modell einer Reihe von Wörtern bilden) und jedes Wortsegmentmodell eine Reihe von Elementarmodellen umfasst, die festgelegte Positionen in den Wortsegmentmodellen haben, können die Merkmalsvektorsignale zu Erfassungsgruppen zusammengefasst werden, indem angegeben wird, dass jede Erfassungsgruppe einem einzelnen Elementarmodell an einer einzelnen Position in einem einzelnen Wortsegmentmodell entspricht. Ein solches Verfahren ist in der US- Patentanmeldung mit dem Titel "Fast Algorithm for Deriving Acoustic Prototypes for Automatic Speech Recognition, Seriennummer 730 714, eingereicht am 16. Juli 1991, ausführlicher beschrieben.
  • Alternativ dazu können alle akustischen Merkmalsvektoren, die durch das Vorsprechen eines Schulungstextes erzeugt werden und einem bestimmten Elementarmodell entsprechen, mit Hilfe der euklidischen Erfassungsgruppenbildung mit K-Mittel und der Gaußschen Erfassungsgruppenbildung mit K-Mittel oder beidem zu Erfassungsgruppen zusammengefasst werden. Ein solches Verfahren wurde beispielsweise von Bahl u. a. in der US-Patentschrift 5 182 773 mit dem Titel "Speaker-Independent Label Coding Apparatus" beschrieben.
  • Fig. 7 zeigt schematisch ein hypothetisches Beispiel eines akustischen Befehlsmodells. Das in Fig. 7 gezeigte hypothetische Modell hat einen Anfangszustand S1, einen Endzustand S4 und eine Vielzahl von Pfaden vom Anfangszustand S1 zum Endzustand S4.
  • Fig. 8 zeigt schematisch ein hypothetisches Beispiel eines akustischen Markowschen Modells eines Phonems. In diesem Beispiel umfasst das Modell des akustischen Phonems das dreimalige Auftreten des Übergangs T1, das viermalige Auftreten des Übergangs T2 und das dreimalige Auftreten des Übergangs T3. Die in punktierten Linien gezeigten Übergänge sind Nullübergänge.
  • Jeder als durchgezogene Linie gezeigte Übergang in den Akustikmodellen der Fig. 7 und 8 hat mindestens eine Modellausgabe, die einen akustischen Merkmalswert umfasst. Jede Modellausgabe hat eine Ausgabewahrscheinlichkeit. Jeder Nullübergang hat keine Ausgabe. Jeder Übergang in Form einer durchgezogenen Linie und jeder Übergang in Form einer punktierten Linie von einem Zustand hat eine Auftrittswahrscheinlichkeit, wenn sich das Modell in diesem Zustand befindet.
  • Fig. 9 zeigt ein hypothetisches Beispiel von Pfaden durch das Akustikmodell von Fig. 7. Das Übereinstimmungsergebnis für eine Äußerung und ein akustisches Befehlsmodell ist die Summe der Wahrscheinlichkeiten der gemessenen Merkmale der Äußerung bei allen Pfaden durch das akustische Befehlsmodell. Bei jedem Pfad ist die Wahrscheinlichkeit der gemessenen Merkmale der Äußerung gleich dem Produkt der Wahrscheinlichkeiten der Übergänge entlang des Pfades multipliziert mit den Wahrscheinlichkeiten der gemessenen Merkmale an jedem Übergang entlang des Pfads.
  • Vorzugsweise lässt sich das erfindungsgemäße interaktive Rechnersystem realisieren, indem ein digitales Universalrechnersystem auf geeignete Weise programmiert wird. Genauer gesagt, der Prozessor 10, die Bildobjekt-Kennzeichnungseinheit 26 und die Kennzeichnungseinheit 30 für ein Vokabular von Befehlsmodellen eines aktiven Zustands können durch geeignete Programmierung eines digitalen Universalprozessors realisiert werden. Der Speicher 28 für ein Systemvokabular von akustischen Befehlsmodellen und der Speicher 34 für akustische Befehlsmodelle eines aktiven Zustands können ein elektronischer Rechnerspeicher sein. Das Anzeigemittel 12 kann einen Bildschirm, wie beispielsweise einen Katodenstrahlröhren-Bildschirm, eine Flüssigkristallanzeige oder einen Drucker umfassen.
  • Wie vorstehend erwähnt wurde, kann das Zielrechnerprogramm aus einem oder mehreren Anwendungsprogrammen oder einem Betriebssystemprogramm bestehen. Das Zielrechnerprogramm kann beispielsweise das Betriebssystem IBM OS/2 (Warenzeichen), Version 2.0, und der Presentation Manager (Warenzeichen) sein.
  • Das Betriebssystem OS/2 von IBM, Version 2.0, und der Presentation Manager weisen Anwendungsprogramm-Schnittstellenaufrufe in verschiedenen Sprachen auf, einschließlich der Programmiersprache C, der Programmiersprache Assembler und der Programmiersprache REXX. Die vollständige Sammlung der Anwendungspro gramm-Schnittstellenaufrufe ist Teil der OS/2 2.0 Technical Library. Die Syntax für die Anwendungsprogramm-Schnittstellenaufrufe in einer Sprache ist mit der Art und Weise kompatibel, in der Standardaufrufe in der Sprache funktionieren. Der Name eines bestimmten Anwendungsprogramm-Schnittstellenaufrufs kann bei verschiedenen Sprachen unterschiedlich sein. Auch werden manche Aspekte der Anwendungsprogrammschnittstelle in einer Sprache von einer anderen Sprache gegebenenfalls nicht unterstützt.
  • Bei der Programmiersprache C besteht die Anwendungsprogrammschnittstelle aus vielen Bibliotheksaufrufen. Der in der Programmiersprache C geschriebene Quellcode kann mit dem Compiler IBM C Set/2 kompiliert werden.
  • Die Beispiele I bis V veranschaulichen einen in der Programmiersprache C geschriebenen Quellcode für OS/2 und den Presentation Manager, um (a) ein Bild zu erzeugen und anzuzeigen, (b) das Bild des aktiven Zustands zu lesen, um mindestens ein Objekt, das in dem Bild des aktiven Zustands angezeigt wird, zu kennzeichnen, (c) das Vokabular von dem Bild des aktiven Zustands zu erzeugen, (d) das Vokabular dem Spracherkennungsprogramm anzugeben und (e) ein Befehlssignal auszugeben, das dem Befehlsmodell von einem Vokabular eines aktiven Zustands entspricht, welches das beste Übereinstimmungsergebnis aufweist.
  • Beispiel I
  • Das Beispiel I veranschaulicht einen in der Programmiersprache C geschriebenen Quellcode, der dazu dient, das in Fig. 2 ge zeigte hypothetische Bild des ersten aktiven Zustands zu erzeugen.
  • Bei OS/2 und dem Presentation Manager gibt es den Begriff des "Standardfensters". Ein Standardfenster ist eine Kombination aus mehreren, allgemein verwendeten Fenstern. In Fig. 2 können das Rahmenfenster, die Titelleiste, das Systemmenü und die Menüleiste als Teil eines Standardfensters betrachtet werden. Das Standardfenster wird mit dem folgenden in der Programmiersprache C geschriebenen Quellcode unter Verwendung des OS/2- Anwendungsprogramm-Schnittstellenaufrufs WinCreateStdWindow() erzeugt. Die auf die doppelten Schrägstriche (//) folgenden Begleittexte beschreiben die Operation des Quellcodes.
  • Beispiel II
  • Das Beispiel II veranschaulicht einen in der Programmiersprache C geschriebenen Quellcode zum Lesen eines Bildes eines aktiven Zustands.
  • Der Presentation Manager ermöglicht einen Anwendungsprogramm- Schnittstellenaufruf, damit jede Anwendung eine Einfügestelle ("Hook") in die Nachrichtenwarteschlangen einfügen kann, die zwischen Fenstern hin und her übertragen werden. Eine Einfügestelle wird mit einer Rückruffunktion installiert, die mit jeder Nachricht, die gesendet wird, aufgerufen wird. Rückruffunktionen für Einfügestellen müssen sich in einer Bibliothek für dynamisches Verbinden des Presentation Manager befinden. Dabei muss so vorgegangen werden, dass zuerst die Bibliothek für dynamisches Verbinden, welche die Rückruffunktion enthält, und anschließend die Einfügestelle geladen werden.
  • Beispiel III
  • Das Beispiel III veranschaulicht einen in der Programmiersprache C geschriebenen Quellcode zur Kennzeichnung der Liste der Befehle des aktiven Zustands von dem Bild des aktiven Zustands.
  • Um die Liste der Befehle des aktiven Zustands von dem Bild zu erzeugen, wird wie folgt vorgegangen. (1) Erzeugen einer Liste aller Fenster, die untergeordnete Fenster (direkte oder indirekte) des oben gefundenen aktiven Rahmens sind. (2) Kennzeichnen aller Fenster in der Liste mit ihrer Fensterklasse. (3) Abfragen des gesamten Fenstertextes (des verdeckten und des sichtbaren) bei Fenstern von Fensterklassen, die dem Benutzer Text anzeigen. (4) Verknüpfen einer globalen Liste von Wörtern mit einer Standardliste von Wörtern für jeden Fenstertyp und mit den Wörtern, die von der Anwendung im Schritt (3) abgefragt wurden.
  • Der Schritt (4) schließt lediglich die Zusammenfassung von mehreren Wortgruppen in eine Wortgruppe ein. Deshalb ist der Quellcode für den Schritt (4) nicht veranschaulicht.
  • Beispiel IV
  • Das Beispiel IV veranschaulicht einen in der Programmiersprache C geschriebenen Quellcode, um dem Spracherkennungsprogramm das Vokabular des aktiven Zustands anzugeben.
  • Eine Anwendungsprogrammschnittstelle für das Spracherkennungsprogramm wird verwendet, um es auf die Erkennung vorzubereiten. Eine mögliche Anwendungsprogrammschnittstelle, die verwendet werden kann, ist die Anwendungsprogrammschnittstelle Speech Manager (Warenzeichen), die mit dem Produkt IBM Speech Server Series (Warenzeichen) vertrieben wird. Der Quellcode für eine ähnliche Anwendungsprogrammschnittstelle wird nachstehend gezeigt.
  • Beispiel V
  • Das Beispiel V veranschaulicht einen in der Programmiersprache C geschriebenen Quellcode zur Ausgabe eines Befehlssignals, das dem Befehlsmodell von einem Vokabular eines aktiven Zustands entspricht, welches das beste Übereinstimmungsergebnis aufweist.
  • Anfangs werden eine Liste von Befehlen und Befehl-Objekt- Zuordnungen manuell festgelegt, wie vorstehend beschrieben wurde. Mit Ausnahme der globalen Befehle wird jeder Befehl einem Objekt zugeordnet.
  • Nehmen wir an, das Wort "RECHTS" von Tabelle 1 wird erkannt. Aus der Liste der Befehl-Objekt-Zuordnungen ist das Ziel des Befehls bekannt. Dieses Ziel wird in dem Beispiel mit hwndTarget bezeichnet.
  • HWND hwndTarget;
  • Die mit "RECHTS" angegebene Aktion für dieses Ziel ist die Verschiebung des Ziels nach rechts um eine vorher angegebene Schrittweite, zum Beispiel um 10 Bildelemente (Pixel).
  • #define INCREMENT_RIGHT 10
  • Der Befehl wird an dem Ziel unter Verwendung des Anwendungsprogramm-Schnittstellenaufrufs mit der Bezeichnung WinSetWindowPos() des OS/2 Presentation Manager ausgeführt. Die aktuelle Fensterposition muss zuerst abgefragt werden, damit die neue Position ermittelt werden kann.
  • Nehmen wir stattdessen an, dass das Wort "ORANGE" erkannt wird. Aus der Liste der Befehl-Objekt-Zuordnungen ist das Ziel des Befehls bekannt. In dem Beispiel ist es hwndTarget.
  • HWND hwndTarget;
  • Die mit "ORANGE" angegebene Aktion für dieses Ziel ist die Auswahl des Eintrags in dem Listenfenster. Der Befehl wird an dem Ziel ausgeführt, indem eine Nachricht, LM_SELECTITEM, unter Verwendung des Anwendungsprogramm-Schnittstellenaufrufs mit der Bezeichnung WinSendMsg() des OS/2 Presentation Manager an das Listenfenster gesendet wird. Zuerst muss der Index des Elements gefunden werden.

Claims (25)

1. Interaktives Rechnersystem, das folgendes umfasst:
einen Prozessor (10), der ein Zielrechnerprogramm ausführt, das eine Reihe von aktiven Programmzuständen hat, die über eine Folge von Zeiträumen auftreten, wobei das Zielrechnerprogramm Datensignale eines Bildes eines aktiven Zustands erzeugt, die ein Bild des aktiven Zustands für einen aktiven Zustand des Zielrechnerprogramms darstellen, der während eines jeden Zeitraums auftritt, wobei jedes Bild des aktiven Zustands ein oder mehrere Objekte enthält;
ein Mittel (12), um mindestens ein Bild des ersten aktiven Zustands für einen ersten aktiven Zustand anzuzeigen, der während eines ersten Zeitraums auftritt;
ein Mittel (26), um ein Objekt zu kennzeichnen, das in dem Bild des ersten aktiven Zustands angezeigt wird, und um von einem gekennzeichneten Objekt, das in dem Bild des ersten aktiven Zustands angezeigt wird, eine Liste von einem oder mehreren Befehlen des ersten aktiven Zustands zu erzeugen, die eine Funktion des ersten aktiven Zustands kennzeichnen, welche in dem ersten aktiven Zustand des Zielrechnerprogramms ausgeführt werden kann;
ein Mittel (28), um ein Systemvokabular von akustischen Befehlsmodellen zu speichern, wobei jedes akustische Befehlsmodell eine oder mehrere Reihen von akustischen Merkmalswerten darstellt, die eine Äußerung von einem oder mehreren Wörtern darstellen, welche zu dem akustischen Befehlsmodell gehören;
ein Mittel (30), um ein Vokabular von akustischen Befehlsmodellen eines ersten aktiven Zustands für den ersten aktiven Zustand zu kennzeichnen, wobei das Vokabular des ersten aktiven Zustands die akustischen Befehlsmodelle von dem Systemvokabular umfasst, das die Befehle des ersten aktiven Zustands darstellt, wobei sich das Vokabular des ersten aktiven Zustands in Abhängigkeit von sowohl der Kennung des Zielrechnerprogramms als auch der Datensignale des Bildes des aktiven Zustands dynamisch ändert, die einen aktiven Zustand des Zielrechnerprogramms kennzeichnen; und
eine Spracherkennungseinheit (32), um einen Wert von mindestens einem Merkmal einer Äußerung während eines jeden einer ersten Folge von aufeinanderfolgenden Zeitintervallen innerhalb des ersten Zeitraums zu messen, um eine erste Reihe von Merkmalssignalen zu erzeugen, wobei die Spracherkennungseinheit die erste Reihe der Merkmalssignale mit jedem der akustischen Befehlsmodelle in dem Vokabular des ersten aktiven Zustands vergleicht, um ein Übereinstimmungsergebnis für die Äußerung und jedes akustische Befehlsmodell zu erzeugen, und wobei die Spracherkennungseinheit ein Befehlssignal ausgibt, das dem Befehlsmodell von dem Vokabular des ersten aktiven Zustands entspricht, welches das beste Übereinstimmungsergebnis aufweist.
2. Interaktives Rechnersystem nach Anspruch 1, dadurch gekennzeichnet, dass:
das Vokabular des ersten aktiven Zustands wesentlich weniger als alle der akustischen Befehlsmodelle von dem Systemvokabular umfasst; und
die Spracherkennungseinheit die gemessenen Merkmalssignale für den ersten Zeitraum nicht mit einem akustischen Befehlsmodell vergleicht, das sich nicht im Vokabular des ersten aktiven Zustands befindet.
3. Interaktives Rechnersystem nach Anspruch 2, dadurch gekennzeichnet, dass:
das Anzeigemittel mindestens ein Bild eines zweiten aktiven Zustands, das sich von dem Bild des ersten aktiven Zustands unterscheidet, für einen zweiten aktiven Zustand anzeigt, der während eines zweiten Zeitraums auftritt, welcher sich von dem ersten Zeitraum unterscheidet;
das Mittel zur Kennzeichnung eines Objekts ein Objekt kennzeichnet, das in dem Bild des zweiten aktiven Zustands angezeigt wird, und von einem gekennzeichneten Objekt, das in dem Bild des zweiten aktiven Zustands angezeigt wird, einen Katalog von einem oder mehreren Befehlen des zweiten aktiven Zustands erzeugt, die eine Funktion des zweiten aktiven Zustands kennzeichnen, welche in dem zweiten aktiven Zustand des Zielrechnerprogramms ausgeführt werden kann;
das Mittel zur Kennzeichnung eines Vokabulars eines ersten aktiven Zustands ein Vokabular von akustischen Befehlsmodellen eines zweiten aktiven Zustands für den zweiten aktiven Zustand kennzeichnet, wobei das Vokabular des zwei ten aktiven Zustands die akustischen Befehlsmodelle von dem Systemvokabular umfasst, das die Befehle des zweiten aktiven Zustands darstellt, wobei sich das Vokabular des zweiten aktiven Zustands mindestens teilweise von dem Vokabular des ersten aktiven Zustands unterscheidet; und
die Spracherkennungseinheit den Wert von mindestens einem Merkmal einer Äußerung während eines jeden einer zweiten Folge von Zeitintervallen innerhalb des zweiten Zeitraums misst, um eine zweite Reihe von Merkmalssignalen zu erzeugen, wobei die Spracherkennungseinheit die zweite Reihe der Merkmalssignale für den zweiten Zeitraum mit jedem der akustischen Befehlsmodelle in dem Vokabular des zweiten aktiven Zustands vergleicht, um das Übereinstimmungsergebnis für die Äußerung und jedes akustische Befehlsmodell zu erzeugen, und wobei die Spracherkennungseinheit das Befehlssignal ausgibt, das dem Befehlsmodell von dem Vokabular des zweiten aktiven Zustands entspricht, welches das beste Übereinstimmungsergebnis aufweist.
4. Interaktives Rechnersystem nach Anspruch 3, dadurch gekennzeichnet, dass bei dem Zielrechnerprogramm während eines jeden Zeitraums nur ein aktiver Zustand auftritt.
5. Interaktives Rechnersystem nach Anspruch 4, dadurch gekennzeichnet, dass das Zielrechnerprogramm ein Betriebssystemprogramm umfasst.
6. Interaktives Rechnersystem nach Anspruch 5, dadurch gekennzeichnet, dass das Zielrechnerprogramm ein Anwendungsprogramm und ein Betriebssystemprogramm umfasst.
7. Interaktives Rechnersystem nach Anspruch 6, dadurch gekennzeichnet, dass das Zielrechnerprogramm zwei oder mehr Anwendungsprogramme und ein Betriebssystemprogramm umfasst.
8. Interaktives Rechnersystem nach Anspruch 6, dadurch gekennzeichnet, dass mindestens einige Befehle für den aktiven Zustand Funktionen kennzeichnen, die an dem gekennzeichneten Objekt in dem Bild des aktiven Zustands für den aktiven Zustand ausgeführt werden können.
9. Interaktives Rechnersystem nach Anspruch 8, dadurch gekennzeichnet, dass das gekennzeichnete Objekt in einem Bild eines aktiven Zustands ein oder mehrere Zeichen, Wörter, Symbole, Schaltflächen, Schiebeleisten, Schiebefelder, Listenfenster, Menüs, Markierungsfelder, Behälter oder Notizbücher umfasst.
10. Interaktives Rechnersystem nach Anspruch 9, dadurch gekennzeichnet, dass die Spracherkennungseinheit zwei oder mehr Befehlssignale ausgibt, die den Befehlsmodellen von dem Vokabular des aktiven Zustands entsprechen, welche die besten Übereinstimmungsergebnisse für einen bestimmten Zeitraum aufweisen.
11. Interaktives Rechnersystem nach Anspruch 10, dadurch gekennzeichnet, dass das Vokabular von akustischen Befehlsmodellen des aktiven Zustands für jeden aktiven Zustand des Weiteren eine Gruppe von globalen akustischen Befehlsmodellen umfasst, die globale Befehle darstellen, welche Funktionen kennzeichnen, die in jedem aktiven Zustand des Zielrechnerprogramms ausgeführt werden können.
12. Interaktives Rechnersystem nach Anspruch 11, dadurch gekennzeichnet, dass das Anzeigemittel einen Bildschirm umfasst.
13. Interaktives Rechnersystem nach Anspruch 11, dadurch gekennzeichnet, dass das Anzeigemittel sowohl das Bild des aktiven Zustands für den aktiven Zustand, der während eines Zeitraums auftritt, als auch mindestens einen Teil von einem oder mehreren Bildern für Programmzustände, die während des Zeitraums nicht auftreten, anzeigt.
14. Verfahren zur Interaktion mit einem Rechner, das folgendes umfasst:
Ausführen eines Zielrechnerprogramms auf einem Prozessor, das eine Reihe von aktiven Programmzuständen hat, die über eine Folge von Zeiträumen auftreten, wobei das Zielrechnerprogramm Datensignale eines Bildes eines aktiven Zustands erzeugt, die ein Bild des aktiven Zustands für einen aktiven Zustand des Zielrechnerprogramms darstellen, der während eines jeden Zeitraums auftritt, wobei jedes Bild des aktiven Zustands ein oder mehrere Objekte enthält;
Anzeigen von mindestens einem Bild des ersten aktiven Zustands für einen ersten aktiven Zustand, der während eines ersten Zeitraums auftritt;
Kennzeichnen eines Objekts, das in dem Bild des ersten aktiven Zustands angezeigt wird, und Erzeugen einer Liste von einem oder mehreren Befehlen des ersten aktiven Zu stands von einem gekennzeichneten Objekt, die eine Funktion des ersten aktiven Zustands kennzeichnen, welche in dem ersten aktiven Zustand des Zielrechnerprogramms ausgeführt werden kann;
Speichern eines Systemvokabulars von akustischen Befehlsmodellen, wobei jedes akustische Befehlsmodell eine oder mehrere Reihen von akustischen Merkmalswerten darstellt, die eine Äußerung von einem oder mehreren Wörtern darstellen, welche zu dem akustischen Befehlsmodell gehören;
Kennzeichnen eines Vokabulars von akustischen Befehlsmodellen des ersten aktiven Zustands für den ersten aktiven Zustand, wobei das Vokabular des ersten aktiven Zustands die akustischen Befehlsmodelle von dem Systemvokabular umfasst, das die Befehle des ersten aktiven Zustands darstellt, wobei sich das Vokabular des ersten aktiven Zustands in Abhängigkeit von sowohl der Kennung des Zielrechnerprogramms als auch der Datensignale des Bildes des aktiven Zustands dynamisch ändert, die einen aktiven Zustand des Zielrechnerprogramms kennzeichnen; und
Messen eines Werts von mindestens einem Merkmal einer Äußerung während eines jeden einer ersten Folge von Zeitintervallen innerhalb des ersten Zeitraums, um eine erste Reihe von Merkmalssignalen zu erzeugen;
Vergleichen der ersten Reihe der Merkmalssignale mit jedem der akustischen Befehlsmodelle in dem Vokabular des ersten aktiven Zustands, um ein Übereinstimmungsergebnis für die Äußerung und jedes akustische Befehlsmodell zu erzeugen; und Ausgeben eines Befehlssignals, das dem Befehlsmodell von dem Vokabular des ersten aktiven Zustands entspricht, welches das beste Übereinstimmungsergebnis aufweist.
15. Verfahren zur Interaktion mit einem Rechner nach Anspruch 14, dadurch gekennzeichnet, dass:
das Vokabular des ersten aktiven Zustands wesentlich weniger als alle der akustischen Befehlsmodelle von dem Systemvokabular umfasst; und
der Vergleichsschritt die gemessenen Merkmalssignale für den ersten Zeitraum nicht mit einem akustischen Befehlsmodell vergleicht, das sich nicht im Vokabular des ersten aktiven Zustands befindet.
16. Verfahren zur Interaktion mit einem Rechner nach Anspruch 15, das des Weiteren die folgenden Schritte umfasst:
Anzeigen von mindestens einem Bild eines zweiten aktiven Zustands, das sich von dem Bild des ersten aktiven Zustands unterscheidet, für einen zweiten aktiven Zustand, der während eines zweiten Zeitraums auftritt, welcher sich von dem ersten Zeitraum unterscheidet;
Kennzeichnen eines Objekts, das in dem Bild des zweiten aktiven Zustands angezeigt wird, und Erzeugen eines Katalogs von einem oder mehreren Befehlen des zweiten aktiven Zustands von einem gekennzeichneten Objekt, die eine Funktion des zweiten aktiven Zustands kennzeichnen, welche in dem zweiten aktiven Zustand des Zielrechnerprogramms ausgeführt werden kann;
Kennzeichnen eines Vokabulars von akustischen Befehlsmodellen eines zweiten aktiven Zustands für den zweiten aktiven Zustand, wobei das Vokabular des zweiten aktiven Zustands die akustischen Befehlsmodelle von dem Systemvokabular umfasst, das die Befehle des zweiten aktiven Zustands darstellt, wobei sich das Vokabular des zweiten aktiven Zustands mindestens teilweise von dem Vokabular des ersten aktiven Zustands unterscheidet;
Messen des Werts von mindestens einem Merkmal einer Äußerung während eines jeden einer zweiten Folge von Zeitintervallen innerhalb des zweiten Zeitraums, um eine zweite Reihe von Merkmalssignalen zu erzeugen;
Vergleichen der zweiten Reihe der Merkmalssignale für den zweiten Zeitraum mit jedem der akustischen Befehlsmodelle in dem Vokabular des zweiten aktiven Zustands, um das Übereinstimmungsergebnis für die Äußerung und jedes akustische Befehlsmodell zu erzeugen; und
Ausgeben eines Befehlssignals, das dem Befehlsmodell von dem Vokabular des zweiten aktiven Zustands entspricht, welches das beste Übereinstimmungsergebnis aufweist.
17. Verfahren zur Interaktion mit einem Rechner nach Anspruch 16, dadurch gekennzeichnet, dass bei dem Zielrechnerprogramm während eines jeden Zeitraums nur ein aktiver Zustand auftritt.
18. Verfahren zur Interaktion mit einem Rechner nach Anspruch 17, dadurch gekennzeichnet, dass das Zielrechnerprogramm ein Betriebssystemprogramm umfasst.
19. Verfahren zur Interaktion mit einem Rechner nach Anspruch 18, dadurch gekennzeichnet, dass das Zielrechnerprogramm ein Anwendungsprogramm und ein Betriebssystemprogramm umfasst.
20. Verfahren zur Interaktion mit einem Rechner nach Anspruch 19, dadurch gekennzeichnet, dass das Zielrechnerprogramm zwei oder mehr Anwendungsprogramme und ein Betriebssystemprogramm umfasst.
21. Verfahren zur Interaktion mit einem Rechner nach Anspruch 19, dadurch gekennzeichnet, dass mindestens einige Befehle für den aktiven Zustand Funktionen kennzeichnen, die an den gekennzeichneten Objekten in dem Bild des aktiven Zustands für den aktiven Zustand ausgeführt werden können.
22. Verfahren zur Interaktion mit einem Rechner nach Anspruch 21, dadurch gekennzeichnet, dass das gekennzeichnete Objekt in dem Bild des aktiven Zustands ein oder mehrere Zeichen, Wörter, Symbole, Schaltflächen, Schiebeleisten, Schiebefelder, Listenfenster, Menüs, Markierungsfelder, Behälter oder Notizbücher umfasst.
23. Verfahren zur Interaktion mit einem Rechner nach Anspruch 22, dadurch gekennzeichnet, dass der Schritt der Ausgabe eines Befehlssignals die Ausgabe von zwei oder mehr Befehlssignalen umfasst, die den Befehlsmodellen von dem Vokabular des aktiven Zustands entsprechen, welche die be sten Übereinstimmungsergebnisse für einen bestimmten Zeitraum aufweisen.
24. Verfahren zur Interaktion mit einem Rechner nach Anspruch 23, dadurch gekennzeichnet, dass das Vokabular von akustischen Befehlsmodellen für jeden aktiven Zustand des Weiteren eine Gruppe von globalen akustischen Befehlsmodellen umfasst, die globale Befehle darstellen, welche Funktionen kennzeichnen, die in jedem aktiven Zustand des Zielrechnerprogramms ausgeführt werden können.
25. Verfahren zur Interaktion mit einem Rechner nach Anspruch 24, das des Weiteren den Schritt der Anzeige von sowohl dem Bild des aktiven Zustands für den aktiven Zustand, der während eines Zeitraums auftritt, als auch von mindestens einem Teil von einem oder mehreren Bildern für Programmzustände, die während des Zeitraums nicht auftreten, umfasst.
DE69420888T 1993-04-21 1994-04-06 Interaktives Rechnersystem, das gesprochene Befehle erkennt Expired - Lifetime DE69420888T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US5095093A 1993-04-21 1993-04-21

Publications (2)

Publication Number Publication Date
DE69420888D1 DE69420888D1 (de) 1999-11-04
DE69420888T2 true DE69420888T2 (de) 2000-04-27

Family

ID=21968512

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69420888T Expired - Lifetime DE69420888T2 (de) 1993-04-21 1994-04-06 Interaktives Rechnersystem, das gesprochene Befehle erkennt

Country Status (8)

Country Link
US (1) US5664061A (de)
EP (1) EP0621531B1 (de)
JP (1) JP2856671B2 (de)
KR (1) KR970006403B1 (de)
CN (1) CN1086484C (de)
AT (1) ATE185203T1 (de)
CA (1) CA2115210C (de)
DE (1) DE69420888T2 (de)

Families Citing this family (103)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6073097A (en) * 1992-11-13 2000-06-06 Dragon Systems, Inc. Speech recognition system which selects one of a plurality of vocabulary models
US5764852A (en) * 1994-08-16 1998-06-09 International Business Machines Corporation Method and apparatus for speech recognition for distinguishing non-speech audio input events from speech audio input events
KR970701879A (ko) * 1995-01-18 1997-04-12 요트.게.아. 롤페즈 운영자의 중재에 의한 인간-기계 대화를 지원하는 방법 및 장치(A method and apparatus for providing a human-machine dialog supportable by operator intervention)
JP3750150B2 (ja) * 1995-03-30 2006-03-01 三菱電機株式会社 移動体通信端末
JPH09149157A (ja) * 1995-11-24 1997-06-06 Casio Comput Co Ltd 通信端末装置
US5960395A (en) 1996-02-09 1999-09-28 Canon Kabushiki Kaisha Pattern matching method, apparatus and computer readable memory medium for speech recognition using dynamic programming
GB9602701D0 (en) * 1996-02-09 1996-04-10 Canon Kk Image manipulation
US5819225A (en) * 1996-05-30 1998-10-06 International Business Machines Corporation Display indications of speech processing states in speech recognition system
US5867817A (en) * 1996-08-19 1999-02-02 Virtual Vision, Inc. Speech recognition manager
US6654955B1 (en) * 1996-12-19 2003-11-25 International Business Machines Corporation Adding speech recognition libraries to an existing program at runtime
US5897618A (en) * 1997-03-10 1999-04-27 International Business Machines Corporation Data processing system and method for switching between programs having a same title using a voice command
US6192338B1 (en) * 1997-08-12 2001-02-20 At&T Corp. Natural language knowledge servers as network resources
JP4827274B2 (ja) * 1997-12-30 2011-11-30 ニュアンス コミュニケーションズ オーストリア ゲーエムベーハー コマンド辞書を使用する音声認識方法
US6298324B1 (en) * 1998-01-05 2001-10-02 Microsoft Corporation Speech recognition system with changing grammars and grammar help command
US6301560B1 (en) * 1998-01-05 2001-10-09 Microsoft Corporation Discrete speech recognition system with ballooning active grammar
DE69908121T2 (de) * 1998-03-23 2004-04-01 Microsoft Corp., Redmond Anwendungsprogrammierungsschnittstelle in einem betriebssystem
US6144938A (en) 1998-05-01 2000-11-07 Sun Microsystems, Inc. Voice user interface with personality
FI981154A (fi) * 1998-05-25 1999-11-26 Nokia Mobile Phones Ltd Menetelmä ja laite puheen tunnistamiseksi
US7082391B1 (en) * 1998-07-14 2006-07-25 Intel Corporation Automatic speech recognition
US6243076B1 (en) 1998-09-01 2001-06-05 Synthetic Environments, Inc. System and method for controlling host system interface with point-of-interest data
FR2783625B1 (fr) * 1998-09-21 2000-10-13 Thomson Multimedia Sa Systeme comprenant un appareil telecommande et un dispositif de telecommande vocale de l'appareil
US6240347B1 (en) 1998-10-13 2001-05-29 Ford Global Technologies, Inc. Vehicle accessory control with integrated voice and manual activation
US6928614B1 (en) 1998-10-13 2005-08-09 Visteon Global Technologies, Inc. Mobile office with speech recognition
US6230129B1 (en) * 1998-11-25 2001-05-08 Matsushita Electric Industrial Co., Ltd. Segment-based similarity method for low complexity speech recognizer
US6233560B1 (en) 1998-12-16 2001-05-15 International Business Machines Corporation Method and apparatus for presenting proximal feedback in voice command systems
US7206747B1 (en) 1998-12-16 2007-04-17 International Business Machines Corporation Speech command input recognition system for interactive computer display with means for concurrent and modeless distinguishing between speech commands and speech queries for locating commands
US6937984B1 (en) 1998-12-17 2005-08-30 International Business Machines Corporation Speech command input recognition system for interactive computer display with speech controlled display of recognized commands
US6192343B1 (en) 1998-12-17 2001-02-20 International Business Machines Corporation Speech command input recognition system for interactive computer display with term weighting means used in interpreting potential commands from relevant speech terms
US8275617B1 (en) 1998-12-17 2012-09-25 Nuance Communications, Inc. Speech command input recognition system for interactive computer display with interpretation of ancillary relevant speech query terms into commands
US7567677B1 (en) * 1998-12-18 2009-07-28 Gateway, Inc. Noise reduction scheme for a computer system
US6230135B1 (en) 1999-02-02 2001-05-08 Shannon A. Ramsay Tactile communication apparatus and method
US6408301B1 (en) 1999-02-23 2002-06-18 Eastman Kodak Company Interactive image storage, indexing and retrieval system
US6345254B1 (en) * 1999-05-29 2002-02-05 International Business Machines Corp. Method and apparatus for improving speech command recognition accuracy using event-based constraints
US6421655B1 (en) * 1999-06-04 2002-07-16 Microsoft Corporation Computer-based representations and reasoning methods for engaging users in goal-oriented conversations
US6308157B1 (en) * 1999-06-08 2001-10-23 International Business Machines Corp. Method and apparatus for providing an event-based “What-Can-I-Say?” window
US6871179B1 (en) * 1999-07-07 2005-03-22 International Business Machines Corporation Method and apparatus for executing voice commands having dictation as a parameter
US6374226B1 (en) 1999-08-06 2002-04-16 Sun Microsystems, Inc. System and method for interfacing speech recognition grammars to individual components of a computer program
US6510414B1 (en) 1999-10-05 2003-01-21 Cisco Technology, Inc. Speech recognition assisted data entry system and method
US6594630B1 (en) * 1999-11-19 2003-07-15 Voice Signal Technologies, Inc. Voice-activated control for electrical device
US7319962B2 (en) * 1999-12-24 2008-01-15 Medtronic, Inc. Automatic voice and data recognition for implanted medical device instrument systems
FR2803927B1 (fr) * 2000-01-14 2002-02-22 Renault Procede et dispositif de commande d'equipements embarques sur un vehicule utilisant la reconnaissance vocale
US7047196B2 (en) 2000-06-08 2006-05-16 Agiletv Corporation System and method of voice recognition near a wireline node of a network supporting cable television and/or video delivery
US6408277B1 (en) 2000-06-21 2002-06-18 Banter Limited System and method for automatic task prioritization
US9699129B1 (en) 2000-06-21 2017-07-04 International Business Machines Corporation System and method for increasing email productivity
US8290768B1 (en) 2000-06-21 2012-10-16 International Business Machines Corporation System and method for determining a set of attributes based on content of communications
US6510410B1 (en) * 2000-07-28 2003-01-21 International Business Machines Corporation Method and apparatus for recognizing tone languages using pitch information
CN1272698C (zh) * 2000-10-11 2006-08-30 佳能株式会社 信息处理装置、信息处理方法
US7644057B2 (en) 2001-01-03 2010-01-05 International Business Machines Corporation System and method for electronic communication management
US8095370B2 (en) 2001-02-16 2012-01-10 Agiletv Corporation Dual compression voice recordation non-repudiation system
DE10115899B4 (de) * 2001-03-30 2005-04-14 Siemens Ag Verfahren zur Erstellung von Computer-Programmen mittels Spracherkennung
US7506022B2 (en) * 2001-05-04 2009-03-17 Microsoft.Corporation Web enabled recognition architecture
US20020178182A1 (en) * 2001-05-04 2002-11-28 Kuansan Wang Markup language extensions for web enabled recognition
US7610547B2 (en) * 2001-05-04 2009-10-27 Microsoft Corporation Markup language extensions for web enabled recognition
US7409349B2 (en) * 2001-05-04 2008-08-05 Microsoft Corporation Servers for web enabled speech recognition
US7203188B1 (en) 2001-05-21 2007-04-10 Estara, Inc. Voice-controlled data/information display for internet telephony and integrated voice and data communications using telephones and computing devices
US7020841B2 (en) 2001-06-07 2006-03-28 International Business Machines Corporation System and method for generating and presenting multi-modal applications from intent-based markup scripts
US7701437B2 (en) * 2001-07-03 2010-04-20 Koninklijke Philips Electronics N.V. Interactive display and method of displaying a message
US7711570B2 (en) 2001-10-21 2010-05-04 Microsoft Corporation Application abstraction with dialog purpose
US8229753B2 (en) 2001-10-21 2012-07-24 Microsoft Corporation Web server controls for web enabled recognition and/or audible prompting
US20040034529A1 (en) * 2002-08-14 2004-02-19 Hooper Howard Gaines Multifunction printer that converts and prints voice data
US7421390B2 (en) * 2002-09-13 2008-09-02 Sun Microsystems, Inc. Method and system for voice control of software applications
US7389230B1 (en) 2003-04-22 2008-06-17 International Business Machines Corporation System and method for classification of voice signals
US20040230637A1 (en) * 2003-04-29 2004-11-18 Microsoft Corporation Application controls for speech enabled recognition
US7363060B2 (en) * 2003-05-02 2008-04-22 Nokia Corporation Mobile telephone user interface
US20050187913A1 (en) 2003-05-06 2005-08-25 Yoram Nelken Web-based customer service interface
US8495002B2 (en) 2003-05-06 2013-07-23 International Business Machines Corporation Software tool for training and testing a knowledge base
US20050009604A1 (en) * 2003-07-11 2005-01-13 Hsien-Ta Huang Monotone voice activation device
US8160883B2 (en) 2004-01-10 2012-04-17 Microsoft Corporation Focus tracking in dialogs
US7552055B2 (en) * 2004-01-10 2009-06-23 Microsoft Corporation Dialog component re-use in recognition systems
CN1691581B (zh) * 2004-04-26 2010-04-28 彭诗力 基于特征值的多模式匹配方法
CN100403255C (zh) * 2005-03-17 2008-07-16 英华达(上海)电子有限公司 一种利用声音操作游戏的方法
JP4667138B2 (ja) * 2005-06-30 2011-04-06 キヤノン株式会社 音声認識方法及び音声認識装置
KR100632400B1 (ko) * 2005-11-11 2006-10-11 한국전자통신연구원 음성 인식을 이용한 입출력 장치 및 그 방법
US8229733B2 (en) * 2006-02-09 2012-07-24 John Harney Method and apparatus for linguistic independent parsing in a natural language systems
US20080213047A1 (en) * 2006-08-21 2008-09-04 Bryant Corwin J Systems and methods for liner tensioning in pipeline rehabilitation
WO2008136081A1 (ja) * 2007-04-20 2008-11-13 Mitsubishi Electric Corporation ユーザインタフェース装置及びユーザインタフェース設計装置
US8620652B2 (en) * 2007-05-17 2013-12-31 Microsoft Corporation Speech recognition macro runtime
US8538757B2 (en) * 2007-05-17 2013-09-17 Redstart Systems, Inc. System and method of a list commands utility for a speech recognition command system
US8150699B2 (en) * 2007-05-17 2012-04-03 Redstart Systems, Inc. Systems and methods of a structured grammar for a speech recognition command system
US20080312929A1 (en) * 2007-06-12 2008-12-18 International Business Machines Corporation Using finite state grammars to vary output generated by a text-to-speech system
US7962344B2 (en) * 2007-06-29 2011-06-14 Microsoft Corporation Depicting a speech user interface via graphical elements
US8165886B1 (en) 2007-10-04 2012-04-24 Great Northern Research LLC Speech interface system and method for control and interaction with applications on a computing system
US8595642B1 (en) 2007-10-04 2013-11-26 Great Northern Research, LLC Multiple shell multi faceted graphical user interface
CN101436404A (zh) * 2007-11-16 2009-05-20 鹏智科技(深圳)有限公司 可会话的类生物装置及其会话方法
KR20090107365A (ko) * 2008-04-08 2009-10-13 엘지전자 주식회사 이동 단말기 및 그 메뉴 제어방법
US8958848B2 (en) 2008-04-08 2015-02-17 Lg Electronics Inc. Mobile terminal and menu control method thereof
US8762963B2 (en) * 2008-12-04 2014-06-24 Beck Fund B.V. L.L.C. Translation of programming code
KR101528266B1 (ko) * 2009-01-05 2015-06-11 삼성전자 주식회사 휴대 단말기 및 그의 응용프로그램 제공 방법
US8606578B2 (en) * 2009-06-25 2013-12-10 Intel Corporation Method and apparatus for improving memory locality for real-time speech recognition
CN101976186B (zh) * 2010-09-14 2013-04-03 方正科技集团苏州制造有限公司 一种计算机语音识别方法及其计算机
US20120089392A1 (en) * 2010-10-07 2012-04-12 Microsoft Corporation Speech recognition user interface
US20120155663A1 (en) * 2010-12-16 2012-06-21 Nice Systems Ltd. Fast speaker hunting in lawful interception systems
WO2012169679A1 (ko) * 2011-06-10 2012-12-13 엘지전자 주식회사 디스플레이 장치, 디스플레이 장치의 제어 방법 및 디스플레이 장치의 음성인식 시스템
WO2013022135A1 (en) * 2011-08-11 2013-02-14 Lg Electronics Inc. Electronic device and method of controlling the same
US10186262B2 (en) * 2013-07-31 2019-01-22 Microsoft Technology Licensing, Llc System with multiple simultaneous speech recognizers
US9653073B2 (en) * 2013-11-26 2017-05-16 Lenovo (Singapore) Pte. Ltd. Voice input correction
US9589564B2 (en) 2014-02-05 2017-03-07 Google Inc. Multiple speech locale-specific hotword classifiers for selection of a speech locale
KR102281178B1 (ko) * 2014-07-09 2021-07-23 삼성전자주식회사 멀티-레벨 음성 인식 방법 및 장치
US11741951B2 (en) * 2019-02-22 2023-08-29 Lenovo (Singapore) Pte. Ltd. Context enabled voice commands
CN110598671B (zh) * 2019-09-23 2022-09-27 腾讯科技(深圳)有限公司 基于文本的虚拟形象行为控制方法、设备和介质
EP4302178A1 (de) * 2021-03-01 2024-01-10 Apple Inc. Virtuelle objektplatzierung auf der basis von referenzausdrücken
CN113590360A (zh) * 2021-08-03 2021-11-02 北京博睿宏远数据科技股份有限公司 一种实现函数hook的方法、装置、计算机设备及存储介质
US20230169967A1 (en) * 2021-11-30 2023-06-01 Google Llc Dynamic assistant suggestions during assistant browsing

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CH644246B (fr) * 1981-05-15 1900-01-01 Asulab Sa Dispositif d'introduction de mots a commande par la parole.
JPS58195957A (ja) * 1982-05-11 1983-11-15 Casio Comput Co Ltd 音声によるプログラム実行方式
US4704696A (en) * 1984-01-26 1987-11-03 Texas Instruments Incorporated Method and apparatus for voice control of a computer
US4980918A (en) * 1985-05-09 1990-12-25 International Business Machines Corporation Speech recognition system with efficient storage and rapid assembly of phonological graphs
US4759068A (en) * 1985-05-29 1988-07-19 International Business Machines Corporation Constructing Markov models of words from multiple utterances
US4776016A (en) * 1985-11-21 1988-10-04 Position Orientation Systems, Inc. Voice control system
US4839634A (en) * 1986-12-01 1989-06-13 More Edward S Electro-optic slate for input/output of hand-entered textual and graphic information
PH24865A (en) * 1987-03-24 1990-12-26 Ibm Mode conversion of computer commands
US4931950A (en) * 1988-07-25 1990-06-05 Electric Power Research Institute Multimedia interface and method for computer system
US5157384A (en) * 1989-04-28 1992-10-20 International Business Machines Corporation Advanced user interface
DE3928049A1 (de) * 1989-08-25 1991-02-28 Grundig Emv Sprachgesteuertes archivsystem
EP0438662A2 (de) * 1990-01-23 1991-07-31 International Business Machines Corporation Einrichtung und Verfahren zur Gruppierung von Äusserungen eines Phonemen in von Kontexten abhängigen Kategorien, die auf Tonähnlichkeit basiert sind für automatische Spracherkennung
JPH04163618A (ja) * 1990-10-26 1992-06-09 Oki Electric Ind Co Ltd 音声操作コンピュータ
US5182773A (en) * 1991-03-22 1993-01-26 International Business Machines Corporation Speaker-independent label coding apparatus
AU2419092A (en) * 1991-08-02 1993-03-02 Broderbund Software, Inc. System for interactve performance and animation of prerecorded audiovisual sequences

Also Published As

Publication number Publication date
US5664061A (en) 1997-09-02
CA2115210A1 (en) 1994-10-22
EP0621531B1 (de) 1999-09-29
JPH06348452A (ja) 1994-12-22
CA2115210C (en) 1997-09-23
CN1105464A (zh) 1995-07-19
EP0621531A1 (de) 1994-10-26
ATE185203T1 (de) 1999-10-15
CN1086484C (zh) 2002-06-19
JP2856671B2 (ja) 1999-02-10
KR970006403B1 (ko) 1997-04-28
DE69420888D1 (de) 1999-11-04

Similar Documents

Publication Publication Date Title
DE69420888T2 (de) Interaktives Rechnersystem, das gesprochene Befehle erkennt
DE69127818T2 (de) System zur verarbeitung kontinuierlicher sprache
DE69315374T2 (de) Spracherkennungssystem zur naturgetreuen Sprachübersetzung
DE69425776T2 (de) Spracherkennungseinrichtung mit verbesserter Ausschliessung von Wörtern und Tönen welche nicht im Vokabular enthalten sind
DE69033084T2 (de) Schaltung zur Spracherkennung unter Anwendung von nichtlinearer Verarbeitung, Sprachelementmodellierung und Phonembewertung
DE69524036T2 (de) Vorrichtung zur erkennung von gesprächsthemen
DE60009583T2 (de) Sprecheradaptation auf der Basis von Stimm-Eigenvektoren
DE69225371T2 (de) Schlüsselwörtererkennung in einem zusammenhängenden Text mittels zweier "Hidden Markov" Modelle
DE3236834C2 (de) Verfahren und Gerät zur Sprachanalyse
DE69814104T2 (de) Aufteilung von texten und identifizierung von themen
DE69421354T2 (de) Datenkompression für die Spracherkennung
DE69225173T2 (de) Spracherkennungsgerät
DE69707876T2 (de) Verfahren und vorrichtung fuer dynamisch eingestelltes training zur spracherkennung
DE69427083T2 (de) Spracherkennungssystem für mehrere sprachen
DE69818231T2 (de) Verfahren zum diskriminativen training von spracherkennungsmodellen
DE69831114T2 (de) Integration mehrfacher Modelle für die Spracherkennung in verschiedenen Umgebungen
DE69029188T2 (de) Auf Wahrscheinlichkeitclusterbildung gestützte Schriftzeichenerkennung
DE69324428T2 (de) Verfahren zur Sprachformung und Gerät zur Spracherkennung
DE2953262C2 (de)
DE60305568T2 (de) Schlüsselworterkennung in einem Sprachsignal
DE69414752T2 (de) Sprecherunabhängiges Erkennungssystem für isolierte Wörter unter Verwendung eines neuronalen Netzes
DE69427717T2 (de) Sprachdialogsystem
DE4310190A1 (de) Sprecher-Verifizierungssystem unter Verwendung der Abstandsmessung nächster Nachbarn
WO1993006591A1 (de) Verfahren zur erkennung von mustern in zeitvarianten messsignalen
DE20004416U1 (de) Spracherkennungsvorrichtung unter Verwendung mehrerer Merkmalsströme

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: NUANCE COMMUNICATIONS,INC., BURLINGTON, MASS., US

8328 Change in the person/name/address of the agent

Representative=s name: VOSSIUS & PARTNER, 81675 MUENCHEN