Brevet FR2636163A1 — publié le 19900309

Procédé et dispositif de synthèse de la parole par addition-recouvrement de formes d'onde. L'invention concerne les procédés et dispositifs de synthèse de la parole; elle concerne, plus particu- lièrement, la synthèse à partir d'un dictionnaire d'éléments sonores par découpage du texte à synthétiser en microtrames identifiées chacune par un numéro d'ordre d'élément sonore correspondant et par des paramètres prosodiques (information de hauteur de son au début et à la fin de l'élément sonore et durée de l'élément sono- re), puis par adaptation et concaténation des éléments sonores par une procédure d'addition-recouvrement. Les éléments sonores stockés dans le diction- naire seront fréquemment des diphones, c'est-à-dire des transitions entre phonèmes, ce qui permet, pour la langue française, de se contenter d'un dictionnaire d'environ 1300 éléments sonores; on peut cependant utiliser des éléments sonores différents, par exemple des syllabes ou même des mots. Les paramètres prosodi- ques sont déterminés en fonction de critères portant sur le contexte: la hauteur de son qui correspond à l'intonation, dépend de l'emplacement de l'élément sonore dans un mot et dans la phrase et la durée donnée à l'élément sonore est fonction du rythme de la phrase. Il faut rappeler au passage que les méthodes de synthèse de la parole se subdivisent en deux groupes. Celles qui utilisent un modèle mathématique du conduit vocal (synthèse par prédiction linéaire, synthèse à formants et synthèse à transformée de Fourier rapide) font intervenir une déconvolution de la source et de la fonction de transfert du conduit vocal et exigent en général une cinquantaine d'opérations arithmétiques par échantillon numérique de la parole avant conversion numérique-analogique et restitution. Cette déconvolution source-conduit vocal permet d'une part la modification de la valeur de la fréquence fondamentale des sons voisés, c'est-a-dire des sons qui ont une structure harmonique et sont provoqués par vibration des cordes vocales, et d'autre part la com- pression des données représentant le signal de parole. Celles qui appartiennent au second groupe de procédés utilisent la synthèse dans le domaine temporel par concaténation de formes d'onde. Cette solution a l'avantage de la flexibilité d'emploi et de la possi- bilité de réduire considérablement le nombre d'opéra- tions arithmétiques par échantillons. En contrepartie, elle ne permet pas de réduire le débit nécessaire à la transmission autant que les méthodes basées sur un modèle mathématique. Mais cet inconvénient disparaît lorsqu'on recherche essentiellement une bonne qualité de restitution sans être géné par la nécessité de trans- mettre des données sur un canal étroit. La synthèse de parole suivant la présente invention appartient au second groupe. Elle trouve une application particulièrement importante dans le domaine de la transformation d'une chaîne orthographique (cons- tituée par exemple par le texte fourni par une impri- mante) en un signal de parole, par exemple restitué directement ou émis sur une ligne téléphonique normale. L'invention part de l'hypothèse qu'on peut con- sidérer les sons voisés comme la somme des réponses im- pulsionnelles d'un filtre, stationnaire durant plusieurs millisecondes, (correspondant au conduit vocal) excité par une suite de Dirac, c'est-àdire par un peigne d'impulsions", de façon synchrone de la fréquence fonda- mentale de la source, c'est-à-dire des cordes vocales, ce qui se traduit dans le domaine spectral par un spectre harmonique, les harmoniques étant espacés de la fréquence fondamentale et pondérés par une enveloppe présentant des maxima appelés formants, dépendant de la fonction de transfert du conduit vocal. On a déjà proposé (Micro-phonemic method of speech synthesis, Lucaszewic et al, ICASSP 1987, IEEE, pages 1426-1429) d'effectuer une synthèse de parole o la diminution de la fréquence fondamentale des sons voisés, lorsqu'elle est nécessaire pour respecter des données prosodiques, est effectuée par insertion de zéros, les microphonèmes stockés devant alors obliga- toirement correspondre à la hauteur maximale possible du son à restituer, ou bien (brevet US 4 692 941) de diminuer de la même manière par insertion de zéros la fréquence fondamentale, et d'augmenter celle-ci en diminuant la taille de chaque période. Ces deux méthodes introduisent sur le signal de parole des distorsions non négligeables lors de la modification de la fréquence fondamentale. La présente invention vise à fournir un procédé et un dispositif de synthèse à concaténation de formes d'onde ne présentant pas la limitation ci-dessus et permettant de fournir une parole de bonne qualité, tout en ne nécessitant qu'un faible volume de calculs arithmétiques. Dans ce but, l'invention propose notamment un procédé caractérisé en ce que: - on effectue, au moins sur les sons voisés des éléments sonores, un fenêtrage centré sur le début de chaque réponse impulsionnelle du conduit vocal à l'excitation des cordes vocales (ce début pouvant être mémorisé dans un dictionnaire) à l'aide d'une fenêtre présentant un maximum pour ledit début et une amplitude décroissant jusqu'à zéro au bord de la fenêtre, et - on replace les signaux fenêtrés correspondant à chaque élément sonore avec un décalage temporel égal à la période fondamentale de synthèse à obtenir, inférieur ou supérieur & la période fondamentale d'origine suivant l'information prosodique de hauteur de la fréquence fon- damentale et on effectue une sommation de ces signaux. Ces opérations constituent la procédure de re- couvrement puis addition des formes d'onde élémentaires obtenues par fenêtrage du signal de parole. En général, on utilisera des éléments sonores constitués par des diphones. La largeur de la fenêtre peut varier entre des valeurs inférieures et supérieures à deux fois la pé- riode d'origine. Dans l'exemple de mise en oeuvre qui sera décrit plus loin, la largeur de la fenêtre est choisie avantageusement égale à environ deux fois la période d'origine en cas d'augmentation de la période fondamentale ou environ deux fois la période finale de synthèse en cas d'augmentation de la fréquence fondamen- tale, afin de compenser partiellement les modifications d'énergie dues au changement de la fréquence fondamen- tale, non compensées par une normalisation possible de l'énergie, tenant compte de la contribution de chaque fenêtre à l'amplitude des échantillons du signal numérique de synthèse: dans le cas d'une diminution de la période fondamentale, la largeur de la fenêtre sera donc inférieure A deux fois la période fondamentale d'origine. Il est peu souhaitable de descendre au dessous de cette valeur. Du fait qu'il est possible de modifier la valeur de la fréquence fondamentale dans les deux sens, les diphones sont mémorisés avec la fréquence fondamentale naturelle du locuteur. Avec une fenêtre de durée égale à deux périodes fondamentales consécutives dans le cas voisé,-on obtient des formes d'onde élémentaires dont le spectre représen- te sensiblement l'enveloppe du spectre du signal de parole ou spectre à court terme large bande -du fait que ce spectre est obtenu par convolution du spectre harmo- nique du signal de parole et de la réponse fréquentielle de la fenêtre, qui dans ce cas possède une largeur de bande supérieure & la distance entre harmoniques-; la redistribution temporelle de ces formes d'onde élémen- taires donnera un signal possédant sensiblement la même enveloppe que le signal d'origine mais une distance entre harmoniques modifiée. Avec une fenêtre de durée supérieure à deux pé- riodes fondamentales, on obtient des formes d'onde élémentaires dont le spectre est encore harmonique, ou spectre à court terme bande étroite -du fait que cette fois-ci la réponse fréquentielle de la fenêtre est moins large que la distance entre harmoniques-; la redistri- bution temporelle de ces formes d'onde élémentaires donnera un signal possédant, comme le signal de synthèse précédent, sensiblement la même enveloppe que le signal d'origine à ceci près qu'on aura introduit des termes de réverbération (signaux dont le spectre possède une amplitude moindre, une phase différente, mais la même forme que le spectre d'amplitude du signal d'origine), dont l'effet ne sera audible qu'au delà de largeurs de fenêtre d'environ trois périodes, cet effet de réverbé- ration ne dégradant pas la qualité du signal de synthèse lorsque son amplitude est faible. On peut notamment utiliser une fenêtre de Han- ning, bien que d'autres formes de fenêtre soient éga- lement acceptables. Le traitement défini ci-dessus peut également être appliqué aux sons dits sourds ou non voisés, pou- vant être représentés par un signal dont la forme s'apparente à celle d'un bruit blanc, mais sans synchronisation des signaux fenêtrés: ceci a pour but d'homogénéiser le traitement sur les sons sourds et les sons voisés, ce qui permet d'une part le lissage entre éléments sonores (diphones) et entre phonèmes sourds et voisés, et d'autre part une modification du rythme. Il se pose un problème à la jonction entre diphones. Une solution pour écarter cette difficulté consiste à omettre l'extraction de formes d'onde élémentaires à partir des deux périodes fondamentales adjacentes de transition entre diphones (dans le cas des sons sourds, les marques de voisement sont remplacées par des marques posées arbitrairement): on pourra soit définir une troisième fonction d'onde élémentaire en calculant la moyenne des deux fonctions d'onde élémentaires extraites de part et d'autre du diphone, soit utiliser la procé- dure d'addition-recouvrement directement sur ces deux fonctions d'onde élémentaires. L'invention sera mieux comprise à la lecture de la description qui suit d'un mode particulier de mise en oeuvre de l'invention, donné à titre d'exemple non limitatif. La description se réfère aux dessins qui l'accompagnent, dans lesquels: - la Figure 1 est un graphe destiné à illustrer la synthèse de la parole par concaténation de diphones et modification des paramètres prosodiques dans le domaine temporel, conformément à l'invention; - la Figure 2 est un schéma synoptique montrant une constitution possible du dispositif de synthèse, implanté sur un calculateur hôte; - la Figure 3 montre, à titre d'exemple, comment on modifie les paramètres prosodiques d'un signal natu- rel, dans le cas d'un phonème particulier; - les Figures 4A, 4B et 4C sont des graphiques destinés à montrer des modifications spectrales appor- tées à des signaux de synthèse voisés, la Figure 4A montrant le spectre d'origine, la Figure 4B le spectre avec diminution de la fréquence fondamentale et la Figure 4C le spectre avec augmentation de cette fréquence; - la Figure 5 est un graphique montrant un prin- cipe d'atténuation des discontinuités entre diphones; - la Figure 6 est un schéma montrant le fenêtrage sur plus de deux périodes. La synthèse d'un phonème est effectuée à partir de deux diphones stockés dans un dictionnaire, chaque phonème étant composé de deux demi-diphones. Le son "é" dans "période" par exemple sera obtenu à partir du second demidiphone de "pai" et du premier demi-diphone de "air". Un module de traduction orthographique-phoné- tique et de calcul de la prosodie (qui ne fait pas partie de l'invention) fournit à un instant donné, des indications identifiant: - le phonème à restituer, d'ordre P - le phonème précédent, d'ordre P-1 - le phonème suivant, d'ordre P+1 et donnant la durée à affecter au phonème P ainsi que les périodes au début et à la fin (Figure 1). Une première opération d'analyse, qui n'est pas modifiée par l'invention, consiste à déterminer, par décodage du nom des phonèmes et des indications proso- diques, les deux diphones retenus pour le phonème à utiliser et le voisement. Tous les diphones disponibles (au nombre de 1300 par exemple) sont mémorisés dans un dictionnaire 10 muni d'une table constituant le descripteur 12 et contenant l'adresse du début de chaque diphone (en nombre de blocs de 256 octets) la longueur du diphone et le milieu du diphone (ces deux derniers paramètres étant exprimés en nombre d'échantillons à partir du début) et des marques de voisement repérant le début de la réponse du conduit vocal à l'excitation des cordes vocales dans le cas d'un son voisé (au nombre de 35 par exemple). Des diction- naires de diphones répondant à ces critères sont dispo- nibles par exemple auprès du Centre National d'Etudes des Télécommunications. Les diphones sont alors utilisés dans un processus d'analyse et de synthèse schématisé sur la Figure 1. On décrira ce processus en supposant qu'il est mis en oeuvre dans un dispositif de synthèse ayant la constitution montrée en figure 2, destiné à être relié à un calculateur hôte, tel que le processeur central d'un ordinateur personnel. On supposera également que la fréquence d'échantillonnage donnant la représentation des diphones est de 16 kHz. Le dispositif de synthèse (Figure 2) comporte alors une mémoire vive principale 16 qui contient un micro-programme de calcul, le dictionnaire de diphones (c'est-a-dire des formes d'onde représentées par des échantillons) rangés dans l'ordre des adresses du descripteur, la table 12 constituant le descripteur de dictionnaire, et une fenêtre de Hanning, échantillonnée par exemple sur 500 points. La mémoire vive 16 constitue également mémoire de micro-trame et mémoire de travail. Elle est reliée par un bus de données 18 et un bus d'adresses 20 à un accès 22 au calculateur hôte. Chaque micro-trame émise pour restituer un phonème (Figure 2) est constituée, pour chacun des deux phonèmes P et P+l qui interviennent - du numéro d'ordre du phonème, - de la valeur de la période au début du phonème, de la valeur de période A la fin du phonème, et - de la durée totale du phonème pouvant être remplacée par la durée du diphone pour le second phonème. Le dispositif comprend encore, reliés aux bus 18 et 20, une unité de calcul locale 24 et un circuit d'aiguillage 26. Ce dernier permet de relier une mémoire vive 28 servant de tampon de sortie soit vers le calcu- lateur, soit vers un contrôleur 30 de convertisseur numérique/analogique 32 de sortie. Ce dernier attaque un filtre passe-bas 34, généralement limité à 8 kHz, qui alimente un amplificateur de parole 36. Le fonctionnement du dispositif est le suivant. Le calculateur hôte (non représenté) charge les micro-trames dans le tableau réservé en mémoire 16, par l'intermédiaire de l'accès 22 et des bus 18 et 20, puis il commande le début de synthèse à l'unité de calcul 24. Cette unité de calcul recherche le numéro du phonème courant P. du phonème suivant P+l et du phonème précé- dent P-1 dans le tableau de micro-trames, à l'aide d'un index mémorisé dans la mémoire de travail, initialisée à 1. Dans le cas du premier phonème, l'unité de calcul vient chercher uniquement les numéros du phonème courant et du phonème suivant. Dans le cas du dernier phonème, elle vient chercher le numéro du phonème précédent et celui du phonème courant. Dans le cas général, un phonème est constitué de deux demi-diphones; l'adresse de chaque diphone est recherchée par adressage matriciel dans le descripteur du dictionnaire par la formule suivante: numéro du descripteur de diphone - numéro du ler phonème+ (numéro du 2ème phonème-1)*nombre de diphones Sons voisés L'unité de calcul charge, en mémoire de travail 16, l'adresse du diphone, sa longueur, son milieu ainsi que les trente-cinq marques de voisement. Elle charge ensuite, dans un tableau descripteur du phonème, les marques de voisement correspondant à la deuxième partie du diphone. Puis elle recherche, dans le dictionnaire de formes d'onde, la deuxième partie du diphone, qu'elle place dans un tableau représentant le signal du phonème d'analyse. Les marques conservées dans le tableau descripteur du phonème sont décrémentées de la valeur du milieu du diphone. Cette opération est répétée pour la deuxième partie du phonème constituée par la première partie du deuxième diphone. Les marques de voisement de la première partie du deuxième diphone sont ajoutées aux marques de voisement du phonème et incrémentées de la valeur du milieu du phonème. Dans le cas des sons voisés, l'unité de calcul, à partir des paramètres prosodiques (durée, période début et période fin du phonème) détermine alors le nombre de périodes nécessaire A la durée du phonème, suivant la formule: nombre de périodes=2*durée du phonème / (période début+période fin) L'unité de calcul range en mémoire le nombre de marques du phonème naturel, égal au nombre de marques de voisement, puis détermine le nombre de périodes à éliminer ou A ajouter en effectuant la différence entre le nombre de périodes de synthèse et le nombre de périodes d'analyse, différence qui est fixée par la modification de tonalité à introduire à partir de celle qui correspond au dictionnaire. Pour chaque période de synthèse retenue, l'unité de calcul détermine ensuite la période d'analyse retenue parmi les périodes du phonème à partir des considéra- tions suivantes: - la modification de la durée peut être considérée comme la mise en correspondance, par déformation de l'axe des temps du signal de synthèse, des n marques de voisement du signal d'analyse et des p marques du signal de synthèse, n et p étant des entiers prédé- terminés; il - à chacune des p marques du signal de synthèse doit être associée la marque la plus proche du signal d'analyse. La duplication ou, au contraire, l'élimination de périodes également réparties sur tout le phonème modifie la durée de celui-ci. Il faut noter qu'on n'aura pas à extraire une forme d'onde élémentaire à partir des deux périodes adjacentes de transition entre diphones: l'opération d'addition-recouvrement des fonctions élémentaires extraites des deux dernières périodes du premier diphone et des deux premières périodes du deuxième diphone permet le lissage entre ces diphones, comme le montre la figure 5. Pour chaque période de synthèse, l'unité de calcul détermine le nombre de points à ajouter ou à supprimer à la période d'analyse en effectuant la différence entre cette dernière et la période de synthèse. Comme on l'a indiqué plus haut, il est avanta- geux de choisir la largeur de la fenêtre d'analyse de la façon suivante, illustrée en Figure 3: - si la période de synthèse est inférieure à la période d'analyse (lignes A et B de la Figure 3), la taille de la fenêtre 38 est le double de la période de synthèse; - dans le cas contraire, la taille de la fenêtre 40 est obtenue en multipliant par deux la plus faible des valeurs de la période d'analyse courante et de la période d'analyse précédente (lignes C et D). L'unité de calcul détermine un pas d'avancement dans la lecture des valeurs de la fenêtre, tabulée par exemple sur 500 points, le pas étant alors égal & 500 divisé par la taille de la fenêtre précédemment calculée. Elle lit dans la mémoire tampon de signal du phonème d'analyse 28 les échantillons de la période précédente et de la période courante, les pondère par la valeur de la fenêtre de Hanning 38 ou 40 indexée par le numéro de l'échantillon courant multiplié par le pas d'avancement dans la fenêtre tabulée et ajoute, au fur et à mesure, les valeurs calculées à la mémoire tampon du signal de sortie indexé par la somme du compteur de l'échantillon courant de sortie et de l'index de recherche des échantillons du phonème d'analyse. Le compteur de sortie courant est ensuite incrémenté de la valeur de la période de synthèse. Sons sourds (non voisés) Pour les phonèmes sourds, le traitement est analogue au précédent, excepté que la valeur des pseudo-périodes (distance entre deux marques de voisement) n'est Jamais modifiée: l'élimination de pseudo-périodes au centre du phonème diminue simplement la durée de celui-ci. On n'augmente pas la durée de phonèmes sourds, excepté par addition de zéros au milieu des phonèmes "silence. Le fenêtrage s'effectue par période pour norma- liser la somme des valeurs des fenêtres appliquées au signal: - du début de la période précédente à la fin de la période précédente, le pas d'avancement dans la lecture de la fenêtre tabulée est (dans le cas d'une tabulation sur 500 points) égal à 500 divisé par deux fois la durée de la période précédente; - du début de la période courante à la fin de la période courante, le pas d'avancement dans la fenêtre tabulée est égal à 500 divisé par deux fois la durée de la période courante plus un décalage constant de 250 points. A la fin du calcul du signal d'un phonème de synthèse, l'unité de calcul range la dernière période du phonème d'analyse et de synthèse dans la mémoire tampon 28 qui permet la transition entre phonèmes. Le compteur de l 'échantillon courant de sortie est décrémenté de la valeur de la dernière période de synthèse. Le signal ainsi généré est envoyé, par blocs de 2048 échantillons, dans un de deux espaces mémoire reserves à la communication entre l'unité de calcul et le contrôleur 30 du convertisseur numérique/analogique 32. Dès que le premier bloc est chargé dans la première zone tampon, le contrôleur 30 est activé par l'unité de calcul et vide cette première zone tampon. Pendant ce temps, l'unité de calcul remplit une deuxième zone tampon de 2048 échantillons. L'unité de calcul vient ensuite alternativement tester ces deux zones tampons grâce à un drapeau pour y charger le signal numérique de synthèse à la fin de chaque séquence de synthèse d'un phonème. Le contrôleur 30, en fin de lecture de chaque zone tampon, positionne le drapeau correspondant. En fin de synthèse, le contrôleur vide la dernière zone tampon et positionne un drapeau de fin de synthèse que le cal- culateur hôte peut lire via l'accès de communication 22. L'exemple de spectre de signal de parole voisé d'analyse et de synthèse illustré en Figures 4A-4C montre que les transformations temporelles du signal numérique de parole n'affectent pas l'enveloppe du signal de synthèse, tout en modifiant la distance entre harmoniques, c'est-à-dire la fréquence fondamentale du signal de parole. La complexité du calcul reste faible: le nombre d'opérations par échantillon est en moyenne de deux multiplications et deux additions pour la pondération et la sommation des fonctions élémentaires fournies par l'analyse. L'invention est susceptible de nombreuses variantes de réalisation et, en particulier, comme on l'a indiqué plus haut, une fenêtre de largeur supérieure à deux périodes, comme le montre la Figure 6, éventuel- lement de taille fixe, peut donner des résultats acceptables. On peut aussi utiliser le procédé de modifica- tion de la fréquence fondamentale sur des signaux numériques de parole en dehors de son application à la synthèse par diphones. 26 3 6 163 REVENDICATIONS 1. Procédé de synthèse de parole à partir d'éléments sonores (mots, syllabes, diphones...) caractérisé en ce que: - on effectue, au moins sur les sons voisés des éléments sonores, une analyse par fenétrage sensiblement centrée sur le début de chaque réponse impulsionnelle du conduit vocal à l'excitation des cordes vocales à l'aide d'une fenêtre de filtrage présentant une amplitude dé- croissant jusqu'à zéro aux bords de la fenêtre de lar-. geur au moins égale à environ deux fois la période fon- damentale d'origine ou environ deux fois la période fondamentale de synthèse, - on replace les signaux résultant du fenêtrage correspondant à chaque élément sonore, avec un décalage temporel de ceux-ci égal à la période fondamentale de synthèse, inférieure ou supérieure à la période fonda- mentale d'origine, suivant l'information prosodique concernant la fréquence fondamentale de synthèse, - on effectue la synthèse par sommation des signaux ainsi décalés. 2. Procédé de synthèse de parole selon la reven- dication 1, caractérisé en ce qu'on réalise un diction- naire d'éléments sonores, par exemple de diphones, on découpe le texte à synthétiser en micro-trames identi- fiées chacune par le numéro de l'élément sonore corres- pondant (diphone) et au moins une information prosodi- que, constituée au moins par la valeur de la fréquence fondamentale en début et en fin d'élément et par la durée de l'élément. 3. Procédé de synthèse de parole selon l'une des revendications 1 et 2, caractérisé en ce que la largeur de la fenêtre est égale & deux fois la période d'origine en cas de diminution de la fréquence fondamentale ou deux fois la période finale de synthèse en cas d'augmen- tation de la fréquence fondamentale. 4. Procédé de synthèse de parole selon l'une des revendications 1 à 3, caractérisé en ce que la fenêtre est une fenêtre de Hanning. 5. Dispositif de synthèse de parole par mise en oeuvre du procédé selon l'une quelconque des revendica- tions 1 à 4, caractérisé en ce qu'il comprend, reliés à des bus (18,20): une mémoire vive principale (16) qui contient un micro-programme de calcul, un dictionnaire de diphones (10) constitués de formes d'onde représen- tées par des échantillons, rangés dans l'ordre des adresses d'un descripteur (12) de dictionnaire,* une fenêtre de Hanning échantillonnée, ladite mémoire vive (16) constituant également mémoire de micro-trame et mémoire de travail; une unité de calcul locale (24) et un circuit d'aiguillage (26) permettant de relier une mémoire vive (28) servant de tampon de sortie soit vers l'unité de calcul, soit vers un contrôleur (30) de convertisseur numérique/analogique (32) de sortie attaquant un filtre passe-bas (34) qui alimente un amplificateur de parole (36).