-
Die
vorliegende Erfindung betrifft Text-in-Sprache-Synthese (TTS, text
to speech synthesis) und insbesondere ein Verfahren und eine Vorrichtung
für reibungslose
Verknüpfung
von Spracheinheiten.
-
Sprachsynthese
(Erzeugen von Sprache) wird unter Verwendung einer Sprachdatenbasis
auf Basis des Corpus (nachfolgend als DB oder Sprach-DB bezeichnet)
durchgeführt.
In neuerer Zeit führen
Sprachsynthesesysteme geeignete Sprachsynthese gemäß ihren
Systemspezifikationen aus, wie ihren unterschiedlichen Größen von
DB. Da zum Beispiel große
Sprachsynthesesysteme einen großen
Umfang an DB enthalten, können
sie Sprachsynthese ohne Beschneidung von Sprachdaten durchführen. Jedoch
kann nicht jedes Sprachsynthesesystem eine große DB verwenden. In der Tat
können
Mobiltelefone, digitale Personalassistenten (PDAs, personal digital
assistants) und dergleichen nur eine DB mit kleinem Umfang verwenden.
Daher konzentrieren sich diese Geräte darauf, wie Sprachsynthese
guter Qualität
bei Verwendung einer kleinen DB erreicht werden kann.
-
In
einer Verknüpfung
von zwei benachbarten Spracheinheiten ist bei der Sprachsynthese
eine Reduzierung des akustischen Fehlers ein erstes Ziel, das zu
erreichen ist. Die folgenden Schriften zum Stand der Technik behandeln
diesen Punkt.
-
US-Patent
Nr. 5,490,234 mit dem Titel "Waveform
Blending Technique for Text-to-Speech System" betrifft Systeme zur Bestimmung eines
optimalen Verknüpfungspunkts
und Durchführen
einer reibungslosen Verknüpfung
von zwei benachbarten Teilungen mit Bezug zum Verknüpfungspunkt.
-
US-A-2002099547
mit dem Titel „Method
and Apparatus for Speech Synthesis without Prosody Modification" betrifft Sprachsynthese,
die sowohl für
große
DB und DB von begrenztem Umfang geeignet ist (nämlich von mittelgroßen bis
kleinen DB) und insbesondere Verknüpfung unter Verwendung einer
großen Sprach-DB
ohne Ausgleichsprozess.
-
US-A-2002143526
mit dem Titel „Fast
Waveform Synchronization for Concatenation and Timescale Modification
of Speech" betrifft
begrenztes Ausgleichen, das über
ein Teilungsintervall durchgeführt
wird, und insbesondere eine Einstellung der Verknüpfungsgrenze
zwischen einer linken Spracheinheit und einer rechten Spracheinheit,
ohne akkurate Teilungsmarkierung.
-
Bei
einer Verknüpfung
von zwei benachbarten stimmhaften Spracheinheiten bei der Sprachsynthese ist
es von Bedeutung, akustische Fehler zu reduzieren und eine natürliche Sprache
aus einem eingegebenen Text zu bilden und adaptiv Sprachsynthese
entsprechend der Hardwareanlagen für Sprachsynthese durchzuführen.
-
US 6,067,519 beschreibt
ein Sprachsynthesesystem mit einem spezifischen Verfahren zum Zusammenfügen von
stimmhaften Phonemen. Sowohl linke und rechte Phoneme werden erweitert,
wobei das linke Phonem unter Verwendung einer versetzten Version
einer Fensterperiode erweitert wird, um sie mit den Teilungsmarkierungen
des rechten Phonems zu synchronisieren, wobei das rechte Phonem
unter Verwendung einer Version einer anderen Fensterperiode erweitert
wird, die versetzt ist, um sie mit den Teilungsmarkierungen des
linken Phonems zu synchronisieren.
-
Die
vorliegende Erfindung zielt darauf ab, ein Sprachsyntheseverfahren
zur Verfügung
zu stellen, durch das akustische Fehler reduziert werden, sprachunabhängige Verknüpfung erreicht
wird und gute Sprachsynthese selbst unter Verwendung einer kleinen
DB durchgeführt
werden kann.
-
Gemäß einem
Aspekt der vorliegenden Erfindung wird ein Sprachsyntheseverfahren
zur Verfügung gestellt,
wie es in Anspruch 1 angeführt
ist.
-
In
Ausführungsformen
kann equiproportionale Interpolation von Teilungsperioden, die in
dem bestimmten Interpolationsbereich enthalten sind, zwischen dem
Ausrichtschritt der Teilungsmarkierungen und dem Überlagerungsschritt
der Spracheinheit durchgeführt
werden.
-
Gemäß einem
anderen Aspekt der vorliegenden Erfindung wird eine Sprachsynthesevorrichtung
zur Verfügung
gestellt, in der Spracheinheiten unter Verwendung einer DB verknüpft werden,
wie es in Anspruch 5 angegeben ist.
-
Gemäß einem
anderen Aspekt der vorliegenden Erfindung umfasst die Vorrichtung
zur Sprachsynthese ferner eine Teilungsspurinterpolationseinheit.
Die Teilungsspurinterpolationseinheit empfängt eine Teilungswellenform
von der Teilungsmarkierungausrichteinheit, interpoliert equiproportional
die Perioden der im Interpolationsbereich enthaltenen Teilungen
und gibt das Ergebnis der equiproportionalen Interpolation an die Spracheinheitenüberlagerungseinheit.
-
Die
obigen und weitere Merkmale und Vorteile der vorliegenden Erfindung
werden besser ersichtlich durch eine ausführliche Beschreibung bevorzugter
Ausführungsformen
mit Bezug zu den beigefügten
Zeichnungen, in denen:
-
1 ein
Fliessbild zur Erläuterung
eines Sprachsyntheseverfahrens gemäß einer Ausführungsform der
Erfindung ist;
-
2 eine
Sprachwellenform und ihr Spektrogramm über ein Intervall zeigt, in
dem drei Spracheinheiten, die synthetisiert werden sollen, nacheinander
folgen;
-
3 getrennt
eine linke Spracheinheit und eine rechte Spracheinheit zeigt, die
in Schritt S10 von 1 verknüpft werden sollen;
-
4 ein
Fliessbild zur Erläuterung
einer bevorzugten Ausführungsform
von Schritt S14 von 1 ist;
-
5 ein
Beispiel von Schritt S14 von 1 zeigt,
bei dem Ränder
zweier benachbarter linker und rechter Einheiten aus 3 unter
Verwendung von Extrasegmentdaten erweitert werden;
-
6 ein
Beispiel von Schritt S14 von 1 zeigt,
bei dem ein Rand einer linken Spracheinheit durch eine Extrapolation
erweitert wird;
-
7 ein
Beispiel von Schritt S14 von 1 zeigt,
bei dem ein Rand einer rechten Spracheinheit durch eine Extrapolation
erweitert wird;
-
8 ein
Beispiel von Schritt S16 von 1 zeigt,
in dem Teilungsmarkierungen (PMs) durch Verkleinern der in einem
erweiterten Teil einer linken Spracheinheit enthaltenen Teilungen
ausgerichtet werden, so dass die Teilungen in einen bestimmten Interpolationsbereich
passen können;
-
9 ein
Beispiel von Schritt S16 von 1 zeigt,
in dem Teilungsmarkierungen durch Erweitern der in einem erweiterten
Teil einer rechten Spracheinheit enthaltenen Teilungen ausgerichtet
werden, so dass die Teilungen in einen bestimmten Interpolationsbereich
passen können;
-
10 ein
Beispiel von Schritt S18 von 1 zeigt,
in dem die Teilungsperioden in einem bestimmten Interpolationsbereich
jeder der linken und rechten Spracheinheiten equiproportional interpoliert
werden;
-
11 ein
Beispiel zeigt, in dem ein bestimmter Interpolationsbereich einer
linken Spracheinheit ausgeblendet wird und ein bestimmter Interpolationsbereich
einer rechten Spracheinheit eingeblendet wird;
-
12 Wellenformen
zeigt, in denen linke und rechte Spracheinheiten von 11 überlagert
sind;
-
13 Wellenformen
zeigt, in denen Phoneme verknüpft
werden, ohne dass ein Ausgleichsprozess vorgenommen wird; und
-
14 ein
Blockdiagramm einer Sprachsynthesevorrichtung gemäß der vorliegenden
Erfindung zum Verknüpfen
von Spracheinheiten auf Basis einer DB ist.
-
Die
vorliegende Erfindung betrifft ein Sprachsyntheseverfahren und eine
Sprachsynthesevorrichtung, in denen Spracheinheiten unter Verwendung
einer DB verknüpft
werden, die eine Sammlung von aufgezeichneten und verarbeiteten
Spracheinheiten ist. Die zu verknüpfenden Spracheinheiten können in
stimmlos-stimmlos, stimmlos-stimmhaft, stimmhaft-stimmlos und stimmhaft-stimmhaft
Nachbarpaare geteilt werden. Da die reibungslose Verknüpfung von
stimmhaft-stimmhaf Nachbarspracheinheiten für Sprachsynthese in hoher Qualität wesentlich
ist, betreffen das vorliegende Verfahren und die Vorrichtung die
Verknüpfung
von stimmhaft-stimmhaft Spracheinheiten. Weil die stimmhaft-stimmhaft Spracheinheitenübergänge in allen
Sprachen erscheinen, können
die Methodik und die Vorrichtung sprachunabhängig angewendet werden.
-
Ein
Sprachsyntheseprozess auf Basis des Corpus besteht in einem Offlineprozess
zur Erzeugung einer DB für
Sprachsynthese und einem Onlineprozess zur Konvertierung eines Eingabetextes
in Sprache unter Verwendung der DB.
-
Der
Offlineprozess der Sprachsynthese beinhaltet die folgenden Schritte:
Auswählen
eines optimalen Corpus, Aufzeichnen des Corpus, Anhängen von
Phonemen und Prosodiekennungen, Segmentieren des Corpus in Spracheinheiten,
Komprimieren der Daten unter Verwendung von Wellenformkodierverfahren,
Speichern der kodierten Sprachdaten in der Sprach-DB, Extrahieren
von phonetisch-akustischen Parametern aus Spracheinheiten, Erzeugen
einer Einheits-DB, die diese Parameter enthält und wahlweise Beschneiden
der Sprache und Einheits-DBs, um ihre Größe zu reduzieren.
-
Der
Online-Prozess der Sprachsynthese beinhaltet die folgenden Schritte:
Eingeben eines Textes, Vorbearbeiten des Eingabetextes, Durchführung einer
Wortartanalyse (POS, part of speech), Konvertieren von Graphemen
in Phoneme, Erzeugen von Prosodiedaten, Auswählen der geeigneten Spracheinheiten
ausgehend von ihren phonetisch-akustischen Parametern, die in der
Einheits-DB gespeichert sind, Durchführen von Prosodieüberlagerung,
Durchführung
von Verknüpfung
und Ausgleich und Ausgeben einer Sprachansage.
-
1 ist
ein Fliessbild zur Erläuterung
eines Verfahrens zum Erzeugen von Sprache gemäß einer Ausführungsform
der vorliegenden Erfindung. Mit Bezug zu 1 beinhaltet
das Sprachsyntheseverfahren auf Basis von Interpolation einen Bestimmungsschritt
S10 für
eine zu verknüpfende
Spracheinheit, einen Bestimmungsschritt S12 für den Interpolationsbereich,
einen Randerweiterungsschritt S14, einen Ausrichtschritt für Teilungsmarkierungen
S16, einen Interpolationsschritt für die Teilungsspur S18 und
einen Spracheinheitenüberlagerungsschritt
S20.
-
In
Schritt S10 werden zu verknüpfende
Spracheinheiten bestimmt und eine Sprache wird als linke Spracheinheit
und die andere als rechte Spracheinheit bezeichnet. 2 zeigt
einen Sprachwellenform und ihr Spektrogramm in einem Intervall,
in dem Spracheinheiten, nämlich
drei stimmhafte Phoneme, die synthetisiert werden sollen, einander
folgen. Mit Bezug zu 2 werden Wellenformfehler und
Spektrogrammdiskontinuität
an den Rändern
zwischen benachbarten Phonemen gefunden. Es wird ausgleichende Verknüpfung für eine Sprachsynthese
in einer quasistationären
Zone zwischen stimmhaften Spracheinheiten durchgeführt. Wie in 3 gezeigt
ist, werden zwei zu verknüpfende
Sprach einheiten bestimmt und eine als linke Spracheinheit und die
andere als rechte Spracheinheit abgeteilt.
-
In
Schritt S12 wird die Länge
eines Interpolationsbereichs jeder der linken und rechten Spracheinheiten
variabel bestimmt. Ein Interpolationsbereich eines mit einem anderen
Phonem zu verknüpfenden
Phonems wird zu einem gewissen Prozentsatz bestimmt, aber weniger
als 40 der Gesamtlänge
des Phonems. Mit Bezug zu 2 wird ein
Bereich, der maximal 40 % der Gesamtlänge eines Phonems entspricht,
als Interpolationsbereich des Phonems bestimmt. Der Prozentanteil
des Interpolationsbereichs eines Phonems von der Gesamtlänge des
Phonems schwankt entsprechend der Spezifikation eines Sprachsynthesesystems
und dem Abweichungsgrad zwischen zu verknüpfenden Spracheinheiten.
-
In
Schritt S14 wird am rechten Rand einer linken Spracheinheit und
am linken Rand einer rechten Spracheinheit eine Erweiterung angehängt. Der
Randerweiterungsschritt S14 kann entweder durch Verbinden von Extrasegmentdaten
mit dem Rand einer Spracheinheit oder durch Wiederholen einer Teilung
am Rand einer Spracheinheit durchgeführt werden.
-
4 ist
ein Fliessbild zur Erläuterung
einer bevorzugten Ausführungsform
von Schritt S14 von 1. Die Ausführungsform von Schritt S14
beinhaltet die Schritte 140 bis 150, die Randerweiterung
in dem Fall erläutern,
wo die Extrasegmentdaten einer linken und/oder rechten Spracheinheit
vorhanden sind und Randerweiterung in dem Fall, wo keine Extrasegmentdaten
der linken und/oder rechten Spracheinheit vorhanden sind.
-
In
Schritt S140 wird bestimmt, ob die Extrasegmentdaten einer linken
Spracheinheit in einer DB vorhanden sind. Wenn die Extrasegmentdaten der
linken Spracheinheit in der DB vorhanden sind, wird der rechte Rand
erweitert und die Extrasegmentdaten in Schritt S142 geladen. Wie
in 5 gezeigt ist, wird, wenn die Extrasegmentdaten
einer linken Spracheinheit vorhanden sind, die linke Spracheinheit
durch Anhängen
so vieler Extrasegmentdaten erweitert, wie es der Anzahl an Teilungen
in einem bestimmten Interpolationsbereich einer rechten Spracheinheit
zum rechten Rand der linken Spracheinheit entspricht. Wenn hingegen
keine Extrasegmentdaten der linken Spracheinheit vorhanden sind,
werden in Schritt 144 künstliche
Extrasegmentdaten erzeugt. Wie in 6 gezeigt
ist, wird, wenn keine Extrasegmentdaten der linken Spracheinheit
vorhanden sind, die linke Spracheinheit durch Wiederholen einer
Teilung an ihrem rechten Rand um die Anzahl erweitert, die der Anzahl
von Teilungen in einem bestimmten Interpolationsbereich der rechten
Spracheinheit entspricht. Dieser Prozess wird gleichermaßen bei
einer rechten Spracheinheit, wie in den 5 und 7 gezeigt,
in den Schritten S146, S148 und S150 angewendet.
-
In
Schritt S16 werden die Stellen der Teilungsmarkierungen, die in
einem erweiterten Teil jeder der linken und rechten Spracheinheiten
enthalten sind, synchronisiert und zueinander ausgerichtet, so dass
die Teilungsmarkierungen in einen bestimmten Interpolationsbereich
passen. Der Teilungsmarkierungsausrichtschritt S16 entspricht einem
Vorbearbeitungsschritt zum Verknüpfen
der linken und rechten Spracheinheiten. Mit Bezug zu 8 werden
die im erweiterten Teil der linken Spracheinheit enthaltenen Teilungen
verkleinert, so dass sie in einen bestimmten Interpolationsbereich
passen. Mit Bezug zu 9 werden die im erweiterten
Teil der rechten Spracheinheit enthaltenen Teilungen erweitert,
so dass sie in den bestimmten Interpolationsbereich passen.
-
Der
Teilungsmarkierungsinterpolationsschritt S18 ist beim Sprachsyntheseverfahren
gemäß der vorliegenden
Erfindung optional. In Schritt S18 werden die in einem Interpolationsbereich
jeder der linken und rechten Spracheinheiten enthaltenen Teilungsperioden
equiproportional interpoliert. Mit Bezug zu 10 nehmen
die in einem Interpolationsbereich einer linken Spracheinheit enthaltenen
Teilungsperioden in einer gleichen Rate in Richtung vom linken Rand
des Interpolationsbereichs zu seinem rechten Rand ab. Ebenso nehmen
die in einem Interpolationsbereich einer rechten Spracheinheit enthaltenen
Teilungsperioden in einer gleichen Rate in Richtung vom linken Rand
des Interpolationsbereichs zu seinem rechten Rand ab. Außerdem bleiben
einzelne Teilungspaare der linken und rechten Einheit im Interpolationsbereich
synchron und einzelne Paare von Teilungsmarkierungen bleiben ausgerichtet.
-
Im
Sprachüberlagerungsschritt
S20 werden die linke Spracheinheit und die rechte Spracheinheit überlagert.
Die Spracheinheitenüberlagerung
kann in einem Einblend-/Ausblendvorgang durchgeführt werden. 11 zeigt
eine Wellenform, in der ein bestimmter Interpolationsbereich einer
linken Spracheinheit ausgeblendet wird und eine Wellenform, in der
ein bestimmter Interpolationsbereich einer rechten Spracheinheit
eingeblendet wird. 12 zeigt Wellenformen, in denen
linke und rechte Spracheinheiten von 11 überlagert sind.
Zum Vergleich zeigt 13 Wellenformen, in denen Phoneme
verknüpft
sind, ohne dass sie einem Ausgleichsprozess unterzogen sind. Wie
in 13 gezeigt ist, tritt eine schnelle Wellenformveränderung
bei einem Verknüpfungsrand
zwischen linker und rechter Spracheinheit auf. In diesem Fall wird
eine raue und diskontinuierliche Sprache erzeugt. Hingegen zeigt 12 eine
reibungslose Verknüpfung
der linken und rechten Spracheinheit ohne schnelle Wellenformänderung.
-
14 ist
ein Blockdiagramm eines Sprachsynthesegeräts gemäß der vorliegenden Erfindung.
Das Sprachsynthesegerät
von 14 beinhaltet eine Bestimmungseinheit 10 für den Verknüpfungsbereich,
eine Rand erweiterungseinheit 20, eine Teilungsmarkierungsausrichteinheit 30 und
eine Spracheinheitenüberlagerungseinheit 50.
-
Die
Vorrichtung zum Erzeugen von Sprache gemäß der vorliegenden Erfindung
verknüpft
Spracheinheiten unter Verwendung einer DB. Die Bestimmungseinheit 10 für den Verknüpfungsbereich
führt die
Schritte S10 und S12 von 1 aus, indem zu verknüpfende Spracheinheiten
bestimmt werden, die bestimmten Spracheinheiten in eine linke Spracheinheit
und eine rechte Spracheinheit unterteilt werden und die Länge eines Interpolationsbereichs
jeder der linken und rechten Spracheinheiten variabel bestimmt wird.
Die zu verknüpfenden
Spracheinheiten sind stimmhafte Phoneme.
-
Die
Randerweiterungseinheit 20 führt den Schritt S14 von 1 durch
Anhängen
einer Erweiterung an den Rand der linken und rechten Spracheinheiten
aus. Insbesondere bestimmt die Randerweiterungseinheit 20,
ob Extrasegmentdaten der linken und rechten Spracheinheit in einer
DB vorhanden sind. Wenn die Extrasegmentdaten der linken und rechten
Spracheinheit in der DB vorhanden sind, erweitert die Randerweiterungseinheit 20 den
Rand der linken und rechten Spracheinheit unter Verwendung der in
der DB vorhandenen Extrasegmentdaten. Wenn keine Extrasegmentdaten
der linken und rechten Spracheinheit in der DB vorhanden sind, erweitert
die Randerweiterungseinheit 20 den Rand der linken und
rechten Spracheinheit unter Verwendung von Extrapolation.
-
Die
Teilungsmarkierungsausrichteinheit 30 führt den Schritt S16 in 1 durch,
indem die in der Erweiterung enthaltenen Teilungsmarkierungen ausgerichtet
werden, so dass die Teilungsmarkierungen in den bestimmten Verknüpfungsbereich
passen können.
-
Die
Spracheinheitenüberlagerungseinheit 50 führt den
Schritt S20 von 1 durch, indem die linke und
rechte Spracheinheit überlagert
werden, deren Teilungsmarkierungen ausgerichtet wurden. Die Spracheinheitenüberlagerungseinheit 50 kann
die linke und rechte Spracheinheit überlagern, nachdem die linke Spracheinheit
ausgeblendet und die rechte Spracheinheit eingeblendet wird.
-
Das
Sprachsynthesegerät
gemäß der vorliegenden
Erfindung kann eine Teilungsspurinterpolationseinheit 40 beinhalten,
die Teilungsspur- und Wellenformdaten von der Teilungsmarkierungsausrichteinheit 30 erhält, die
Perioden der im Interpolationsbereich enthaltenen Teilungen equiproportional
interpoliert und das Ergebnis der equiproportionalen Interpolation
an die Spracheinheitenüberlagerungseinheit 50 ausgibt.
-
Wie
oben beschrieben kann im Falle von Sprachsyntheseverfahren auf Basis
des Corpus gemäß der vorliegenden
Erfindung eine Bestimmung, ob Extrasegmentdaten vorhanden sind oder
nicht vorgenommen werden, und ausgleichende Verknüpfung wird
durchgeführt,
entweder unter Verwendung von vorhandenen Daten oder einer Extrapolation
in Abhängigkeit
vom Ergebnis der Bestimmung. Auf diese Weise kann eine akustische
Unstimmigkeit am Verknüpfungsrand
zwischen zwei Spracheinheiten gemildert werden und eine Sprachsynthese
in guter Qualität
kann erreicht werden. Das Sprachsyntheseverfahren gemäß der vorliegenden
Erfindung ist in Systemen mit einer großen und mittleren DB effektiv,
aber noch effektiver in Systemen mit einer kleinen DB, wobei eine
natürliche
und gewünschte
Sprache erhalten wird.
-
Eine
durch ausgleichende Verknüpfung
erhaltene Sprache, wie sie in der vorliegenden Erfindung vorgeschlagen
ist, wird mit einer Sprache verglichen, die durch einfache Verknüpfung erhalten
ist, mittels insgesamt 15 Befragungen, wobei die Anzahl bei Durchführung von
3 Befragungen für
jeweils 18 Personen erhalten ist. Tabelle 1 zeigt das Ergeb nis der
15 Befragungen, in denen jeweils ein Teilnehmer eine Sprache hört, die durch
eine einfache Verknüpfung
(d. h. Verknüpfung
ohne Ausgleich) erzeugt ist, eine Sprache, die durch eine ausgleichende
Verknüpfung
ausgehend von Interpolation unter Verwendung von Extrasegmentdaten
erzeugt ist, und einer Sprache, die durch eine ausgleichende Verknüpfung ausgehend
von Interpolation von extrapolierten Daten erzeugt ist, und dann
die drei Sprachen unter Vergabe von 1 bis 5 Bewertungspunkten bewertet.
-
-
Das
Verfahren und die Vorrichtung zum Reduzieren akustischer Fehler
zwischen Phonemen ist für sprachunabhängige Anwendungen
geeignet. Die vorliegende Erfindung ist nicht auf die oben beschriebenen und
in den Zeichnungen dargestellten Ausführungsformen beschränkt. Insbesondere
wurde die vorliegende Erfindung mit Schwerpunkt auf eine ausgleichende
Verknüpfung
zwischen stimmhaften Phonemen in der Sprachsynthese beschrieben.
Es ist jedoch ersichtlich, dass die vorlie gende Erfindung auch angewendet
werden kann, wenn quasistationäre
eindimensionale Signale ausgeglichen und verknüpft werden.
-
Während die
vorliegende Erfindung insbesondere mit Bezug zu beispielhaften Ausführungsformen
beschrieben und gezeigt wurde, versteht es sich für die Fachleute,
dass verschiedene Änderungen
in Form und Details vorgenommen werden können, ohne vom Rahmen der vorliegenden
Erfindung abzuweichen, wie er in den folgenden Ansprüchen definiert
ist.