-
Die
vorliegende Erfindung bezieht sich auf den Bereich der Synthese
von Sprache oder Musik und im Besonderen ohne Einschränkung den
Bereich der Text/Sprache-Synthese.
-
Die
Funktion eines Text/Sprache-Synthesesystems (engl. text-to-speech,
TTS) besteht darin, Sprache aus einem generischen Text in einer
gegebenen Sprache synthetisch zu erzeugen. Heutzutage werden TTS-Systeme
in vielen Anwendungsbereichen praktisch eingesetzt, beispielsweise
für den
Zugriff auf Datenbanken durch das Telefonnetz oder als Hilfe für Behinderte.
Ein Verfahren zur Synthese von Sprache besteht darin, Elemente einer
aufgezeichneten Folge von Teilspracheinheiten, beispielsweise Halbsilben
oder Polyphone, zu verketten. Die Mehrzahl erfolgreicher handelsüblicher
Systeme nutzt die Verkettung von Polyphonen.
-
Die
Polyphone umfassen Gruppen von zwei (Diphone), drei (Triphone) oder
mehr Phonen und können aus
Unsinnwörtern
ermittelt werden, indem die gewünschte
Gruppierung aus Phonen bei stabilen spektralen Bereichen segmentiert
werden. Bei einer auf Verkettung basierenden Synthese ist die Erhaltung
des Übergangs
zwischen zwei benachbarten Phonen wesentlich für die Sicherstellung der Qualität der synthetisch
erzeugten Sprache. Durch die Wahl der Polyphone als grundlegende
Teileinheiten wird der Übergang
zwischen zwei benachbarten Phonen in den aufgezeichneten Teileinheiten
beibehalten, und die Verkettung erfolgt zwischen ähnlichen
Phonen.
-
Vor
der Synthese muss jedoch die Dauer und die Grundfrequenz der Phone
verändert
werden, damit die prosodischen Einschränkungen der neuen, derartige
Phone enthaltenden Wörter
erfüllt
werden. Diese Verarbeitung ist erforderlich um zu vermeiden, dass
die synthetisch erzeugte Sprache monoton klingt. In einem TTS-System
wird diese Funktion durch ein prosodisches Modul ausgeführt. Damit
die Dauer und die Grundfrequenz in den aufgezeichneten Teileinheiten
verändert
werden kann, nutzen viele auf Verkettung basierende TTS-Systeme
das TD-PSOLA-Synthesemodell (engl. time-domain pitch synchronous
overlap-add, TD-PSOLA) (E. Moulines und F. Charpentier, „Pitch
synchro nous waveform processing techniques for text-to-speech synthesis
using diphones",
erschienen in Speech Commun., Band 9, S. 453–467, 1990).
-
Bei
dem TD-PSOLA-Modell wird das Sprachsignal zuerst einem die Grundfrequenz
kennzeichnenden Algorithmus unterzogen. Dieser Algorithmus ordnet
den Spitzen des Signals in stimmhaften Segmenten und 10 ms entfernt
in den stimmlosen Segmenten Marken zu. Die Synthese erfolgt durch Überlagerung
von der Hanning-Fensterfunktion unterzogenen Segmenten, die an den
Grundfrequenzmarken zentriert sind und sich von der vorherigen Grundfrequenzmarke
bis zur nächsten
erstrecken. Die Veränderung
der Dauer erfolgt durch Löschen
oder Replizieren einiger der gefensterten Segmente. Die Veränderung
der Grundfrequenzperiode erfolgt andererseits durch die Vergrößerung oder
Reduzierung der Überlagerung
zwischen den gefensterten Segmenten.
-
Trotz
des in vielen handelsüblichen
TTS-Systemen erzielten Erfolgs kann die unter Einsatz des TD-PSOLA-Synthesemodells
erzeugte synthetische Sprache insbesondere bei starken prosodischen Schwankungen
einige Nachteile aufweisen.
-
Beispiele
derartiger PSOLA-Verfahren sind in den Dokumenten US-Patent Nr.
6.067.519, EP-0363233, US-Patent Nr. 5.479.564 und EP-0706170 dargelegt.
Ein spezielles Beispiel ist auch das MBR-PSOLA-Verfahren, wie es
von T. Dutoit und H. Leich in Speech Communication, Elsevier Publisher,
November 1993, Band 13, N.Grad 3-4, 1993, veröffentlicht wurde. Das in der
US-amerikanischen Patentschrift Nr. 5.479.564 beschriebene Verfahren
schlägt
Mittel zum Verändern
der Frequenz durch die Überlappung
und Addition von kurzzeitigen Signalen vor, die von diesem Signal
extrahiert werden. Die Breite der Gewichtungsfenster, die zur Erzielung
der kurzzeitigen Signale verwendet werden, entspricht ungefähr der doppelten
Periode des Tonsignals, und ihre Position innerhalb der Periode
kann auf jeglichen Wert eingestellt werden (vorausgesetzt, dass
die Zeitverschiebung zwischen aufeinander folgenden Fenstern der
Periode des Tonsignals entspricht). In der US-amerikanischen Patentschrift
Nr. 5.479.564 werden auch Mittel zum Interpolieren von Signalformen
zwischen zu verkettenden Segmenten beschrieben, um Unstetigkeiten
zu glätten.
In Text/Sprache-Systemen nach dem Stand der Technik kann eine Folge
von vorher aufgezeichneten Sprachfragmenten in einer speziellen
Reihenfolge verkettet werden, um einen bestimmten Text in natürlich klingende
Sprache umzuwandeln. Text/Sprache-Systeme, die kleine Sprachfragmente
verwenden, weisen viele derartige Verkettungspunkte auf. Insbesondere
wenn sich die Sprachfragmente vom Spektralbereich her unterscheiden,
erzeugen diese Übergänge Artefakte,
die die Verständlichkeit
mindern. Im Besonderen kann die resultierende Sprache, wenn zwei
Sprachsegmente von unterschiedlichen Aufzeichnungszeitpunkten zu
verketten sind, eine Unstetigkeit am Übergang der beiden Segmente
aufweisen. Wenn beispielsweise ein Vokal synthetisch erzeugt wird,
stammt der linke Teil meistens von einer anderen Aufzeichnung als
der rechte Teil. Dadurch wird es unmöglich, die genaue Färbung eines
Vokals zu reproduzieren.
-
Die
kleinen Unterschiede in der Formantlage erzeugen einen plötzlichen
Sprung an der Position des Übergangs.
In den meisten Verfahren nach dem Stand der Technik wird zur Reduzierung
dieses Effektes das Sprachfragment erneut aufgezeichnet, bis es
mit dem Rest übereinstimmt,
oder es werden verschiedene Versionen (zusätzliche Fragmente) hinzugefügt, um den
Unterschied zu minimieren.
-
Die
vorliegende Erfindung, wie sie durch die anhängenden, unabhängigen Ansprüche definiert
wird, zielt daher darauf ab, ein verbessertes Verfahren zur synthetischen
Erzeugung eines Sprachsignals zu schaffen, wobei das Sprachsignal
mindestens ein erstes Diphon und ein zweites Diphon aufweist. Die
vorliegende Erfindung zielt ferner darauf ab, ein entsprechendes
Computerprogrammprodukt und ein entsprechendes Computersystem, im
Besonderen ein Text/Sprache-System, zu schaffen.
-
Die
vorliegende Erfindung schafft ein Verfahren zur synthetischen Erzeugung
von Sprachsignalen basierend auf ersten und zweiten Diphonsignalen,
die an ihrem Übergang überlagert
werden. Die Erfindung ermöglicht
eine übergangslose
Verkettung der Diphonsignale ohne jegliche hörbaren Artefakte. Dies wird
dadurch erreicht, dass Perioden eines Endintervalls des ersten Diphonsignals
in umgekehrter Reihenfolge an das Ende des ersten Diphonsignals
angehängt
werden und Perioden eines Anfangsintervalls des zweiten Diphonsignals
an den Anfang des zweiten Diphonsignals angehängt werden. Die End- und Anfangsintervalle überlappen
sich und erzeugen so einen glatten Übergang.
-
Gemäß einem
Ausführungsbeispiel
der Erfindung werden die End- und Anfangsintervalle des ersten und
des zweiten Diphonsignals durch eine Markierung gekennzeichnet.
Die End- und Anfangsintervalle enthalten vorzugsweise Perioden,
die ungefähr
konstant sind, d. h. ungefähr
den gleichen Informationsgehalt und die gleiche Signalform aufweisen.
Derartige End- und Anfangsintervalle können durch einen menschlichen Fachmann
oder mittels eines entsprechenden Computerprogramms identifiziert
werden. Die erste Analyse wird vorzugsweise mittels eines Computerprogramms
durchgeführt,
und das Ergebnis wird zur Erhöhung
der Genauigkeit von einem menschlichen Fachmann überprüft.
-
Gemäß einem
weiteren Ausführungsbeispiel
der Erfindung werden die letzte Periode des Endintervalls und die
erste Periode des Anfangsintervalls nicht angehängt. Dies weist den Vorteil
auf, dass in dem Signal keine Periodizität durch die unmittelbare Wiederholung
zweier identischer Perioden entsteht.
-
Gemäß einem
weiteren Ausführungsbeispiel
der Erfindung wird an den End- und
Anfangsintervallen sowie an den entsprechenden angehängten Perioden
eine Fensterfunktion mittels Einblend- bzw. Ausblendfenstern angewendet.
Es wird vorzugsweise eine angehobene Kosinus-Fensterfunktion für stimmhafte
Endintervalle und die angehängten
Perioden eingesetzt, während
für die
stimmlosen Endintervalle und die angehängten Perioden ein Sinus-Fenster
als Ausblendfenster eingesetzt wird. In gleicher Weise wird eine
angehobene Kosinus-Fensterfunktion für die Glättung des Beginns eines stimmhaften
Segments des zweiten Diphons oder ein Sinus-Fenster für stimmlose
Segmente eingesetzt.
-
Gemäß einem
Ausführungsbeispiel
der Erfindung erfolgt eine Anpassung der Dauer für die zu überlappenden Intervalle. Dies
ist besonders vorteilhaft, wenn die Intervalle eine unterschiedliche
Dauer aufweisen um zu vermeiden, dass abrupte Signalübergänge entstehen.
-
Gemäß einem
weiteren Ausführungsbeispiel
der Erfindung erfolgt die Text/Sprache-Verarbeitung durch die Verkettung
von Diphonen gemäß den Prinzipien
der vorliegenden Erfindung. Auf diese Weise kann eine natürlich klingende
Sprachausgabe erzeugt werden.
-
Es
ist wichtig anzumerken, dass die vorliegende Erfindung nicht auf
die Verkettung von Diphonen beschränkt ist, sondern auch vorteilhaft
für die
Verkettung von anderen Spracheinheiten, beispielsweise Triphonen,
Polyphonen oder Worten, eingesetzt werden kann.
-
Ausführungsbeispiele
der Erfindung sind in den Zeichnungen dargestellt und werden im
Folgenden näher
beschrieben. Es zeigen:
-
1 einen
Ablaufplan eines bevorzugten Ausführungsbeispiels eines erfindungsgemäßen Verfahrens;
-
2 die
verschachtelte Wiederholung von Perioden am Ende und am Anfang der
ursprünglichen
Diphonsignale;
-
3 ein
Beispiel für
eine Signalsynthese; und
-
4 ein
Blockschaltbild eines Ausführungsbeispiels
eines Text/Sprache-Systems.
-
1 zeigt
einen Ablaufplan, der ein bevorzugtes Ausführungsbeispiel eines Verfahrens
gemäß der vorliegenden
Erfindung darstellt. In Schritt 100 wird ein erstes Diphonsignal
A zugeführt.
Das Diphonsignal A enthält
mindestens eine Markierung, die ein Endintervall des Diphonsignals
A kennzeichnet.
-
In
Schritt
102 werden Perioden innerhalb des Endintervalls
des Diphonsignals A in umgekehrter Reihenfolge wiederholt, um ein
Ausblendintervall zu schaffen, das an das Ende des Endintervalls
angehängt
wird. In Schritt
104 wird das Endintervall mit seinem angehängten Ausblendintervall
mit Hilfe einer Ausblendfensterfunktion gefenstert, um das Diphonsignal
an seinem Ende übergangslos
auszublenden. In gleicher Weise wird in Schritt
106 ein
Diphonsignal B zugeführt.
Das Diphonsignal B weist mindestens eine zugehörige Markierung auf, die ein
Anfangssegment des Diphonsignals B kennzeichnet. In Schritt
108 werden
mindestens einige der Anfangsintervallperioden am Anfang des Anfangsintervalls
des Diphonsignals B in umgekehrter Reihenfolge angehängt. Dadurch
wird ein Einblendintervall geschaffen. In Schritt
110 werden
das Anfangsintervall und das angehängte Einblendintervall mit
Hilfe eines Einblendfensters gefenstert. Dadurch wird ein übergangsloser
Anfang des Diphonsignals B geschaffen. In Schritt
112 erfolgt
eine Anpassung der Dauer. Dies bedeutet, dass die Dauer der End-
und Anfangsintervalle der Diphonsignale A und B so verändert werden,
dass die End- und Einblendintervalle die gleiche Dauer haben. In
gleicher Weise werden die Ausblend- und Anfangsintervalle angepasst.
In Schritt
114 wird eine Überlappungs- und Additionsoperation
an den Diphonsignalen A und B mit den verarbeiteten End- und Einblendintervallen
und den Ausblend- und Anfangsintervallen durchgeführt. Dadurch
wird eine übergangslose
Verkettung der Diphonsignale A und B erzielt. Für stimmhafte Segmente wird der
Einsatz der folgenden angehobenen Kosinus-Fensterfunktion vorgezogen:
wobei m die Gesamtzahl der
Perioden im Glättungsbereich
angibt.
-
Bei
stimmlosen Segmenten wird ein Sinus-Fenster eingesetzt:
-
Der
Vorteil der Verwendung eines Sinus-Fensters besteht darin, dass
sichergestellt wird, dass die gesamte Signalhüllkurve im Leistungsbereich
konstant bleibt. Im Gegensatz zu einem periodischen Signal kann die
Gesamtsumme beim Addieren von zwei Rauschabtastsignalwerten kleiner
als der absolute Wert jedes der beiden Abtastwerte sein. Das ist
darauf zurückzuführen, dass
die Signale (meistens) nicht in Phase sind. Das Sinus-Fenster gleicht diesen
Effekt aus und entfernt die Hüllkurvenmodulation.
-
2 zeigt
den Vorgang des Anhängens
von Intervallperioden in umgekehrter Reihenfolge (siehe Schritte 102 und 108 in 1).
Die Zeitachse 200 gibt den Zeitbereich des Diphonsignals
A an. Das Diphonsignal A umfasst ein Endintervall 202,
das die Perioden p1, p2,
..., pi, ..., pN-1,
pN enthält.
Zur Schaffung eines Ausblendintervalls 204 werden die Perioden
pj des Endintervalls 202 am Ende
des Endintervalls 202 in umgekehrter Reihenfolge angehängt. Die
letzte Periode pN des Endintervalls 202 wird
nicht angehängt,
damit eine Wiederholung von zwei identischen Perioden vermieden
wird, durch die eine unerwünschte
Periodizität
entstehen würde.
Eine derartige Periodizität
könnte
unter gewissen Umständen
hörbar
werden. Es wird daher vorgezogen, die letzte Periode pN des
Endintervalls 202 nicht zu wiederholen. Die erste Periode
p'1 des
Ausblendintervalls 204 wird durch Kopieren des Signals
der Periode pN-1 geschaffen. Im Allgemeinen
wird die Periode p'j des Ausblendintervalls 204 durch
Anhängen
der Periode pN-j des Endintervalls 202 erzielt,
d. h. p'j = pN-j. Die Zeitachse 206 zeigt
den Zeitbereich des Diphonsignals B. Das Diphonsignal B umfasst
ein Anfangsintervall 208, das die Perioden P1,
P2, ..., Pi, ...,
PN-1, PN enthält. Das
Einblendintervall 210 wird durch Anhängen von Perioden des Anfangsintervalls 208 an
den Anfang des Anfangsintervalls 208 in umgekehrter Reihenfolge geschaffen.
Es wird wiederum vorgezogen, die erste Periode P1 des
Anfangsintervalls 208 nicht anzuhängen, damit keine unerwünschte Periodizität entsteht.
Im Allgemeinen wird eine Signalperiode P'j aus der Periode PN+j+1 des Anfangsintervalls 208 erzielt,
d. h. P'j = PN+j+1. Zur Verkettung
des Diphonsignals A und des Diphonsignals B werden das Endintervall 202 und
das Einblendintervall 210 sowie das Ausblendintervall 204 und
das Anfangsintervall 208 überlappt und addiert. In dem
hier betrachteten Beispiel kann dies erfolgen, ohne dass die Dauer
der entsprechenden Intervalle angepasst wird, da die Dauer des Endintervalls
und des Einblendintervalls 210 sowie die Dauer des Ausblendintervalls 204 und
des Anfangsintervalls 208 gleich ist.
-
3 zeigt
ein Beispiel für
die verschiedenen Syntheseschritte für das Wort „young". Dieses Wort besteht aus den Phonemen
/j/, /V/, /N/ und der Sprechpause //. a) und b) sind die aufgezeichneten
Unsinnwörter, die
die Übergänge von
/j/ zu /V/ und /V/ zu /N/ enthalten. Innerhalb jedes Unsinnwortes
werden fünf
Markierungen gesetzt. Die äu ßeren Markierungen
sind die Diphongrenzen (bezeichnet mit j-, -V, V- und -N). Die Markierungen
in der Mitte zeigen, wo ein neues Phonem beginnt (bezeichnet mit
V und N). Die anderen Bezeichnungen werden dazu verwendet, die Segmente
zu kennzeichnen, die für
die Überlappung
und Addition verwendet werden. Wie es im Diagramm (c) in
3 dargestellt
ist, werden die Perioden des Endintervalls
300 in umgekehrter
Reihenfolge wiederholt und bilden ein Ausblendintervall
302.
Alle Perioden innerhalb des Endintervalls
300 werden nach
der Periode
304 angehängt,
die die letzte Periode des Endintervalls
300 darstellt.
Die Periode
304 selbst wird nicht angehängt, um die Wiederholung derselben
Periode zu vermeiden, wodurch eine unerwünschte Periodizität entstehen
würde.
In gleicher Weise werden für
das Diphonsignal in Diagramm (b) in
3 die Perioden
innerhalb des Anfangsintervalls
306 am Anfang des Anfangsintervalls
306 in umgekehrter
Reihenfolge angehängt.
Dies gilt für
alle Perioden innerhalb des Anfangsintervalls
306 außer für die erste
Periode
310 am Anfang des Anfangsintervalls
306.
Diese Periode
310 wird wiederum nicht angehängt um zu
vermeiden, dass zwei identische Perioden aufeinander folgen, die
eine unerwünschte
Periodizität
entstehen lassen würden.
Es erfolgt die gleiche Art der Verarbeitung für das Anfangsintervall
312 des
Diphonsignals aus dem Diagramm (a) und für das Endintervall
314 des
Diphonsignals aus dem Diagramm (b). Der gleiche Ansatz wird ferner
auf die weiteren Diphone angewendet, die zur Synthese des Wortes „young" verkettet werden
müssen.
Danach wird eine Glättungsfensterfunktion
auf die Anfangs-, End-, Einblend- und
Ausblendintervalle angewendet. Bei stimmhaften Segmenten wird vorzugsweise
eine angehobene Kosinus-Fensterfunktion eingesetzt. Die folgende
Fensterfunktion wird für
die Einblend- und Anfangsintervalle verwendet:
wobei m die Gesamtzahl der
Perioden im Glättungsbereich
ist. Das entsprechende angehobene Kosinus-Fenster ist als angehobenes
Kosinus-Fenster
316 im Diagramm (d) dargestellt. Eine entsprechende
Fensterfunktion wird eingesetzt, um das angehobene Kosinus-Fenster
318 für die End-
und Ausblendintervalle
300 und
302 zu schaffen.
Wie es im Diagramm (e) dargestellt ist, wird der Maßstab der
Dauer der zu überlappenden
und addierenden Intervalle, d. h. der Intervalle
300/
308 und
302/
306,
geändert,
damit diese die gleiche Länge
haben. Die folgende Überlagerung
des benötigten
Diphons liefert die Synthese des Wortes „young".
-
4 zeigt
ein Blockschaltbild eines Computersystems 400, bei dem
es sich um ein Text/Sprachsystem handelt. Das Computersystem 400 umfasst
ein Modul 402, das zum Speichern von Diphonen und Markierungen
für die
Diphone zur Kennzeichnung der Anfangs- und Endintervalle dient.
Das Modul 404 dient zur Wiederholung in umgekehrter Reihenfolge
von Perioden, die in den End- und Anfangsintervallen enthalten sind, um
Einblend- und Ausblendintervalle zu schaffen. Das Modul 406 dient
zur Schaffung einer Fensterfunktion, um zum Zweck der Glättung die
End-/Ausblend- und Einblend-/Anfangsintervalle zu fenstern. Das
Modul 408 dient zur Anpassung der Dauer der zu überlagernden
Intervalle. Eine derartige Anpassung der Dauer ist erforderlich,
wenn die zu überlagernden
Intervalle nicht die gleiche Länge
aufweisen. Das Modul 410 dient zur Überlagerung der End-/Einblendintervalle
und der Ausblend-/Anfangsintervalle zur Verkettung ihrer erforderlichen
Diphone. Wenn Text in das Computersystem 400 eingegeben
wird, werden die zu verkettenden erforderlichen Diphone vom Modul 402 ausgewählt. Diese
Diphone werden mit Hilfe der Module 404, 406 und 408 verarbeitet,
bevor sie durch das Modul 410 überlappt und addiert werden,
woraus sich das erforderliche synthetisch erzeugte Sprachsignal
ergibt.
-
Text in den
Zeichnungen
-
Figur 4
-