-
-
BESCHREIBUNG
-
Die Erfindung betrifft ein Verfahren und eine Schaltunqsqruppenanordnung
zur Sprachsynthese nach den Oberbegriffen der Patentansprüche.
-
Ein bekannter Weg zur Erzeugung einer gesprochenen Wiedergabe eines
Satzes mittels Sprachsynthese beruht darauf, jedes einzelne Wort des Satzes als
verbales Ausgangssignal abzugeben. Mit diesem Verfahren lassen sich theoretisch
zahlreiche Sätze durch Kombination von Worten synthetisieren; es sind jedoch besondere
Maßnahmen erforderlich, um eine unnatürlich oder künstlich klingende Betonung dadurch
zu vermeiden, daß Sprachdaten von Worten gleicher Schreibweise in einen Speicher
als unterschiedliche Worte geladen werden, um sicherzustellen, daß die jeweils inhaltlich
gleichen Worte in unterschiedlicher Weise gesprochen oder betont werden je nachdem
an welcher Stelle das oder die Wort(e) innerhalb des Satzes stehen. Dies führt ersichtlicherweise
zu Problemen, da ein Speicher mit möglichst großer Kapazität zu verwenden ist, was
zur Folge hat, daß der Sprach-Synthesizer räumlich relativ groß und unhandlich wird.
-
Ein alternatives Verfahren sieht vor, die Sprachdaten auf einer Satz-für-Satz-Basis
in den Speicher zu laden, anstelle der vorrwähnten Wort-für-Wort-Speicherung.
-
Damit läßt sich hinsichtlich der künstlichen Stimme eine befriedigende
Intonation erreichen; der Speicherbedarf wird jedoch noch wesentlich yrößer, wenn
eine vernünftige Anzahl von Sätzen zur Verfügung stehen soll. Dieses alternative
Verfahren mag für wenige Anwendungsfälle beispielsweise für stereotype Telephonansagen
oder Bankauskünfte ausreichend sein. In der Praxis jedoch wird die Satz-für-Satz-Speicherung
keine größere Bedeutung erlangen können.
-
Der Erfindung liegt damit die Aufgabe zugrunde, ein Verfahren zur
Sprachsynthese zu schaffen, bei dem unterschiedliche Intonationen und/oder Akzente
für ein bestimmtes Wort oder auch für Satzteile gewährleistet werden kann, so daß
die bisher sehr künstlich wirkende Monotonie von synthetisch erzeugten Sätzen mindestens
verringert werden kann ohne daß eine übermäßige Datenmenge benötigt wird.
-
Die erfindungsgemäße Lösung ist in den Patentanspruchen angegeben.
Diese Lösung sieht vor, die sich auf Worte, Silben oder Wort/Silben-Kombinationen
beziehenden Sprach-Grunddaten (Wellenformen) durch Faktoren zu beeinflussen, welche
eine Mehrzahl von Frequenzgruppen (Pitch-Frequenzen) und Amplituden beeinflussen.
Für die Erfindung wird dabei die Feststellung ausgenutzt, daß unterschiedliche Betonungen
eines Worts sich aus der Stellung des jeweiligen Worts im Satz bzw. aus der Art
des Satzes ergeben und daß diese Wortstellung vor allem zu unterschiedlichen Amplituden
und Frequenzgruppen oder Frequenzverschiebungen führt, während nur geringe oder
praktisch keine Veränderungen der Sprach-Grunddaten zu beachten sind.
-
Der erfindungsgemäße zusätzliche Verfahrensschritt beinhaltet also
die Zuordnung einer unterschiedlichen Intonation oder einer Akzentuierung zu bestimmten
Worten, Satzteilen oder Silben durch Einstellung der Sprach-Grunddaten mit einem
Faktor, der die Frequenzgruppe bzw.
-
Frequenzabschnitte und die Amplituden bestimmt.
-
Die Erfindung und vorteilhafte Einzelheiten werden nachfolgend unter
Bezug auf die Zeichnungen in beispielsweiser Ausführungsform näher erläutert. Es
zeigen: Fig 1. in schematischer Blockbilddarstellung einen typischen Sprachsynthesizer
für den sich die rfindung eignet;
Fig. 2 ein Flußdiagramm zur Erläuterung
von Betriebsabläufen im Sprachsynthesizer nach Fig. 1 und Fig. 3 das Detail-Blockschaltbild
eines Sprachsynthesizers mit erfindungsgemäßen Merkmalen.
-
In der schematischen Blockbilddarstellung eines Sprachsynthesizers
nach Fig. 1 dient eine periphere Einheit 1 zur Eingabe von Quellen- oder Eingangsinformation
wie Worten, Silben, Satzteilen oder Sätzen. Die Eingabe kann im Prinzip in beliebiger
Form erfolgen. Eine zentrale Steuereinheit 2 (im folgenden CPU=Central Processing
Unit) analysiert die Quelleninformation, extrahiert Frequenzgruppen-Parameter Kp,
Amplituden-Parameter K5 und ermittelt bzw. bestimmt Tondaten-Anfangsadressen a.
für oder von Bereichen eines in der Zeichnung nicht dargestellten Speichers in Zuordnung
auf bestimmte einzeln zu betonende Worte gemaß dem Ergebnis einer jeweiligen Analyse.
Die so extrahierten Parameter Kp und K werden 5 dann auf einen Sprachsynthesizer
3 übertragen und an eine Ausgabeeinheit mit Verstärker 4, mit D/A-Wandler etc.
-
und Lautsprecher 5 weizergegeben. Bei der aufeinanderfolgenden Übertragung
der Sprach-Startadressen (Sprach-Startcodes) von der CPU 2 dient der Sprachsynthesizer
3 auch zur Betonung bestimmter Worte unter Berücksichtigung von gewählten Frequenzgruppen
und Amplituden. Der Aufbau des Sprachsynthesizers 3 wird weiter unten unter Bezug
auf die Fig. 3 in seinem inneren Aufbau näher erläutert.
-
Entsprechend dem Grundprinzip des erfindungsgemäßen Verfahrens zur
Sprachsynthese1 werden sich auf Sprach-Grunddaten beziehende Amplituden und Frequenzgruppen
für jeden Satz bzw. eine Wortfolge (eine Aufeinanderfolge von zu "sprechenden" Worten)
innerhalb des Systems vorgeladen bzw. vorgespeichert. Soweit die Parameter eine
bestimmte Amplitude oder Frequenzgruppe spezifizieren, erfolgt die
Synthetisierung
der Sprache auf der Grundlage der erwähnten Grund- oder Bezugsamplituden- und Frequenzgruppen.
Geben die Paramter dagegen eine bestimmte Spezifikation an, so erfolgt die Synthetisierung
der Sprachsignale unter Berücksichtigung einer in bestimmter Weise klassifizierten
Amplitude (beispielsweise mit dem doppelten Wert der Grundamplitude) oder einer
spezifizierten Grundfrequenz (beispielsweise dem doppelten Wert der den Sprach-Grunddaten
zugeordneten Frequenzgruppe(n) ). Durch dieses Verfahren lassen sich im Ergebnis
unterschiedliche Eindrücke oder unterschiedliche Intonationen und Akzente für ein-
und dasselbe Wort in Abhängigkeit von bestimmten Parametern erreichen.
-
Wie im Stand der Technik bekannt, kann soweit nicht in der Baugruppe
3 enthalten, der Verstärker 4 einen Digital/ Analog-Wandler enthalten, dem dann
unter Zwischenschaltung eines Filters der Lautsprecher 5 folgt.
-
Anhand des Flußdiagramms der Fig.2 soll nun die Betriebsweise der
steuernden CPu 2 gemäß Fig. 1 im Verlauf einer synthetischen Spracherzeugung erläutert
werden. Beispielsweise soll der Satz "Do you have a book?" künstlich erzeugt werden.
-
Im Schritt n1 wird der Sprachsynthesizer 3 mit den Bezugspegeln für
die entsprechenden Frequenzgruppendaten und Amplituden erregt,wie sie ohne spezielle
Instruktionen durch die von der CPU 2 zur Verfügung gestellten Parameter maßgeblich
ind. In den folgenden Schritten wird ein zusammenzustellender Satz analysiert wobei
insbesondere im Schritt n2 geprüft wird, ob der Satz bzw. die als Sprache zu erzeugenden
Worte vollständig eingegeben wurden.
-
Im Schritt n3 wird geprüft, ob am Ende des Satzes ein "?" vorhanden
ist, d.h.ob es sich um eine Frage handelt.
-
Ist dies der Fall, so wird im Schritt n4 geprüft, ob ein
bestimmtes
Fragefürwort wie "was", "wann", "wie" usw.
-
im Satz vorliegt. Im gegebenen Beispiel wird, da es sich um eine Frage
handelt, dem letzten Wort 1,book" im Schritt n5 eine über dem Bezugspegel liegende
Frequenzgruppe (Pitch-Frequenz) zugeordnet. Die Frequenzgruppen- und Amplituden-Parameter
werden den Bezugspegeln in Bezug auf und unter Berücksichtigung der übrigen Worte
im Schritt n6 angeheftet. Handelt es sich bei dem betreffenden Satz um keinen Fragesatz,
ist jedoch ein Frage(für)wort enthalten, so werden allen Worten im Schritt n7 für
die Frequenzgruppen und Amplituden die Bezugspegel zugemessen.
-
In den Schritten n9 bis n11 gibt die steuernde CPU 2 die Daten für
den Sprachsynthesizer 3 in der Ordnunqsgruppe der Frequenzgruppen-Parameter, der
Amplituden-Parameter und der Sprach-Startadressen in der Sequenz der zu erzeugenden
Worte weiter, es sei denn im Schritt n8 ergab sich, daß die jeweilige Frequenzgruppe
oder Amplitude auf Bezugspegel steht. Da beim obigen Beispiel außer dem Wort "book"
die übrigen Worte mit Bezugspegel wiederzugeben sind, werden hinsichtlich der Frequenzgruppe
und Amplitude vor dem Auftreten des Worts "book" keine Parameter von der CPU 2 zum
Sprachsynthesizer 3 übertragen. Beispielsweise können die Amplituden und Frequenzgruppen-Parameter
entsprechend einer Pegelunterteilung mit einem Wert "n" bewertet sein und für einen
bestimmten zu "sprechenden" Satz kann irgendein beliebiger Wert der n-Pegelskala
vorgesehen werden. Die Amplituden-Parameter auf der n-Pegelskala können als konstant
angenommen werden während für die Frequenzgruppen-Parameter einerseits eine bestimmte
feststehende Frequenz gruppe und eine variable Frequenzgruppe vorgesehen werden
kann, deren Intervall T im Verlauf der zeitabhängigen Größe 1/t dekrementiert oder
in Abhängigkeit von t inkrementiert wird, wobei mit t die Zeitvariable gemeint ist.
-
Fig. 3 zeigt den inneren Aufbau der Sprachsynthesizer-Anordnungen
insbesondere den Sprachsynthesizer 3 selbst.
-
Der Sprachsynthesizer 3 enthält einen ersten durch strichpunktierte
Linie umgrenzten Block 301 durch den die auf die Sprach-Grunddaten bezogenen Wellenformen
erzeugt werden in Abhängigkeit vom Sprach-Startcode; weiterhin einen Block 302,
der die Frequenzgruppen-Umsetzerdaten in Abhängigkeit von den Frequenzgruppen-Parametern
erzeugt; einen Block 303 welcher die Amplituden-Umsetzerdaten in Abhängigkeit von
den Amplituden-Parametern liefert, sowie als Block 304 den eigentlichen Sprachsynthesizer.
Der die Sprach-Grundwellen erzeugende Block 301 enthält einen Speicher (beispielsweise
einen ROM A), der die Sprach-Grunddaten, die Frequenzgruppendaten sowie die Amplitudendaten
enthält. Weiterhin ist ein Adressendecoder ADRC, ein Adressenregister ADRS 1 und
ein Aufwärtszähler CNTUP vorgesehen. Der Block 301 codiert die von der Steuer CPU
2 gelieferten Sprach-Startcodes und lädt das Ergebnis des Codiervorgangs in das
Adressenregister ADRS 1 für den Sprachdaten-ROM A; er holt weiterhin die auf die
Sprachgrundwellen bezogenen Daten, die Frequenzgruppendaten und die Amplitudendaten,
während das Adressenregister des ROMs A sequentiell inkrementiert wird. Der Block
302 für die Frequenzgruppen-Einstelldaten decodiert die Frequenzgruppen-Parameter
Kp von der CPU 2 mit Hilfe eines Decoders DEC und aktiviert die Adressendecoder
ADC 1 und ADC 2,um zu Überprüfen, ob die Parameter nach der Decodierung einem auf
feststehende Frequenzgruppen oder auf variable Frequenzgruppen zugeordneten Parameter
entsprechen. Beziehen sich diese Parameter auf eine feste Frequenzgruppe so wird
ein Adressenregister ADRES 2 wirksam geschaltet,und es werden aus einem Lesespeicher
ROM 13 Daten ausgelesen und für eine Umsetzung der Grund-Prequenzgruppendaten im
Lesespeicher ROM A im Block 301 erforderlichen Daten bereitgestellt, die für die
Sprach-Grunddatensignale benötigt werden. Diese Daten werden in
einem
Pufferspeicher BUFF zwischengespeichert und gelangen sodann auf den Sprachsynthesizerblock
304.
-
Beziehen sich die decodierten Parameter andererseits auf variable
Frequenzgruppen, so wird ein Adressenregister ADRS 3 wirksam geschaltet und es werden
über den Aufwärtszähler CNTUP Adressen sequentiell inkrementiert,um die Gruppenfrequenzdaten
in sequentieller Folge aus einem Speicher ROM C auszulesen. Die so erhaltenen Daten
werden wiederum im Pufferspeicher BUFF zwischengespeichert und dem Sprachsynthesizerblock
304 zugeführt. Der Amplituden-Parameterblock 303 decodiert die von der CPu 2 gelieferten
Amplituden-Parameter über einen Decoder DEC 2, wodurch ein Adressenregister ADRES
4 wirksam wird und bestimmte Daten aus einem Speicher ROM D aufgerufen werden, die
auf die Amplitudenwerte bezogene Daten enthalten um bispielsweise die Amplituden
zu verringern oder zu überhöhen. D.h. in Abhängigkeit von den auf die Amplituden
bezogenen Daten werden die Grund-Amplitudendaten (erhalten aus dem ROM A) über den
Sprachsynthesizerblock 304 vermindert oder überhöht. Im Sprachsignalsynthesizerblock
304 werden also die Sprach-Grundwellen durch die die Frequenzgruppen steuernden
Daten vom ROM B oder C und die die Amplituden steuernden Daten vom ROM D eingestellt,
so daß einem bestimmten gleichen Wort eine bestimmte unterschiedliche Betonung oder
Akzentuierung aufgeprägt wird.
-
Der Digital/Analog-Wandler 4 setzt die erhaltenen digital codierten
synthetisierten Signale in Analogsignale um, die dann über den Lautsprecher 5 in
Form von hörbarer synthetisierter menschlicher Sprache abgegeben werden.
-
Obgleich die Erfindung anhand eines speziellen Ausfünrungsbeispiels
erläutert wurde, ist für den Fachmann ersichtlich, daß eine Reihe von Abwandlungen
im Rahmen des Erfindungsgedankens möglich sind. Einige Beispiele sollen solche
Abwandlungsmöglichkeiten
erläutern: 1. Bestimmten Worten entsprechende Sprachsignale oder dergleichen können
mit unterschiedlicher Lautstärke und/oder Akzentuierung synthetisiert werden.
-
2. Die Intonation von auf Worte sich beziehenden Sprachsignalen oder
dergleichen können durch entsprechende Steuerung von einzelnen oder allen Sprachsignalen
hinsichtlich der Frequenzgruppen oder Amplituden wahlweise verändert werden.
-
3. Das Intervalltwährend dem Sprachteile synthetisiert werden, wird
in mehrere Intervalle aufgeteilt mit variabler Frequenzgruppenzuordnung, beispielsweise
entsprechend der oben erwähnten vorgegebenen n- Skala.
-
4. In einem Speicher wird eine Mehrzahl von unterschiedlichen Tonhöhen
und Amplituden für ein oder mehrere Worte maßgebliches Sprachsignal gespeichert,
von denen jeweils eines gewählt wird, um eine einem bestimmten "gefühl", einer Intonation
oder Akzentuierung entsprechende Wortbetonung zu ereichen.
-
5. Für ein bestimmtes Wort wird ein einzelnes der bestimmten Grundwelle
entsprechendes Signal (Standardmuster) in einem Speicher gespeichert,und die Intonation
oder Akzentuierung dieses Standardmusters wird in Abhänqigkeit von bestimmten Befehlen
verändert. Liegt keine solche spezielle Anweisung für die Sprachsynthese vor, so
erfolgt die Wiedergabe entsprechend dem Standardmuster.
-
Mit der Erfindung ist es möglich, menschliche Sprache synthetisch
und unter Beachtung von unterschiedlichen Intonationen oder unterschiedlicher Akzentuierung
zu
erzeugen auch hinsichtlich von Worten gleicher Schreibweise
oder Aussprache, so daß insgesamt bei der Sprachsynthese eine natürlicher klingende
Wiedergabe erreicht wird mit einem vergleichsweise geringen Aufwand.
-
Leerseite