Brevet FR2892555A1 — publié le 20070427

La présente invention concerne un système et un procédé de synthèse vocale par concaténation d'unités acoustiques. La synthèse vocale par concaténation d'unités acoustiques utilise un certain nombre de principes connus. Typiquement, une chaîne de synthèse vocale à partir du texte comprend les étapes de - traitement linguistique permettant d'extraire du texte des informations pertinentes pour la synthèse, - transcription phonétique transformant les informations linguistiques en une chaîne phonétique comportant une suite d'unités acoustiques cibles, - sélection des unités acoustiques candidates, c'est-à-dire sélection des fragments de paroles préenregistrées qui seront utilisées pour la synthèse, et - synthèse du signal consistant à concaténer les unités acoustiques candidates sélectionnées pour former le signal sonore demandé. La qualité du signal sonore dépend essentiellement du choix des unités acoustiques candidates : il s'agit d'utiliser les fragments de paroles les plus appropriés pour obtenir un signal sonore naturel . Traditionnellement, la sélection des unités acoustiques candidates est basée sur un algorithme de Viterbi. Celui-ci détermine la séquence optimale des unités acoustiques à utiliser en calculant le chemin optimal dans un graphe, graphe dont les noeuds sont les unités acoustiques candidates et les arcs les transitions entre les unités acoustiques candidates. Le chemin est optimal dans le sens d'une minimisation de la somme des coûts associés aux noeuds et aux arcs qui constituent le chemin. Le coût associé à une unité acoustique candidate, noeud du graphe, est appelé coût-cible et mesure l'adéquation entre l'unité acoustique candidate et l'unité acoustique cible. Le coût associé à une transition, arc du graphe, est appelé coût de concaténation et mesure la qualité de la concaténation entre les deux unités candidates qu'elle relie. Ces différents coûts sont déterminés par des fonctions de coût permettant de les calculer pour chacun des arcs et noeuds du graphe. On conçoit aisément que, ces fonctions de coût étant censées représenter la qualité de la synthèse, leurs choix et leurs paramétrages ont une forte influence sur le résultat final. 2 Pour synthétiser la meilleure phrase, perceptuellement parlant, la demande de brevet US 2003/0229494 de RUTTEN et AL. propose de faire intervenir un opérateur qui, par itération successive, ajuste la qualité de la phrase produite. Le procédé proposé pour cette demande, consiste donc à sélectionner de façon classique, une suite d'unités acoustiques candidates, à faire écouter par l'opérateur la phrase ainsi produite par le module de sélection, puis à ajuster les paramètres de la sélection avant de relancer une sélection,... Le procédé est réitéré jusqu'à ce que l'opérateur obtienne une solution qui lui convienne. Le procédé et le système de synthèse vocale proposés par cette demande présentent l'inconvénient d'obliger l'opérateur à intervenir sur les paramètres de la sélection pour obtenir une solution. Or ces paramètres, comme, par exemple, les paramètres des fonctions de coût, n'ont pas toujours de liens directs et intuitifs avec le résultat obtenu. Cela nécessite donc, de la part de l'opérateur, un long apprentissage avant d'être capable d'utiliser un tel système efficacement. De plus, à chaque changement de paramètres, il est nécessaire de lancer une nouvelle étape de sélection qui est très consommatrice en ressources de calcul. Le but de l'invention est donc de remédier à ces inconvénients en proposant un système et un procédé de synthèse vocale aisés à mettre en oeuvre. L'objet de l'invention est un système de synthèse vocale par concaténation d'unités acoustiques comportant : - des moyens de transcription phonétique aptes à générer une suite d'unités acoustiques cibles, représentative du texte à synthétiser, - des moyens de stockage d'unités acoustiques candidates, chaque unité acoustique candidate comportant un fragment de parole préenregistrée, - des moyens de présélection aptes à produire au moins un flux d'unités acoustiques candidates, chaque flux étant présélectionné sur la base d'une minimisation de son coût global, ledit coût global étant la somme de fonctions de coûts qui déterminent le coût entre chaque unité acoustique cible et les unités acoustiques candidates et de fonctions de coûts des transitions entre deux unités acoustiques candidates, et - des moyens d'interface aptes à permettre à un opérateur d'évaluer la qualité auditive de chaque flux d'unités acoustiques candidates présélectionné, caractérisé en ce que les moyens de présélection sont aptes à produire une pluralité de flux d'unités acoustiques candidates ayant les meilleurs coûts globaux, et en ce que les moyens d'interface sont aptes à permettre à un opérateur de comparer les flux d'unités acoustiques présélectionnés et de choisir le flux dont la qualité auditive lui paraît la meilleure. D'autres caractéristiques de l'invention sont - les moyens de présélection utilisent un algorithme N-best pour présélectionner la pluralité de flux d'unités acoustiques candidates ; - les moyens d'interface comportent des moyens de filtrage aptes à éliminer, à partir de critères phonétiques, un sous-ensemble de flux d'unités acoustiques candidates de la pluralité des flux d'unités acoustiques candidates présélectionnés ; - les critères phonétiques comportent, seuls ou en combinaison, des critères d'interdiction de présence d'une unité acoustique, des critères d'interdiction de présence d'une concaténation entre deux unités acoustiques, et des critères d'interdiction d'une concaténation sur une transition. Un autre objet de l'invention est un procédé de synthèse vocale par concaténation d'unités acoustiques comportant une étape préalable de stockage d'unités acoustiques candidates, chaque unité acoustique candidate comportant un fragment de parole préenregistrée, et ledit procédé comportant en outre les étapes de : - transcription phonétique apte à générer une suite d'unités acoustiques cibles représentative du texte à synthétiser, - présélection d'au moins un flux d'unités acoustiques candidates, chaque flux étant présélectionné sur la base d'une minimisation de son coût global, ledit coût global étant la somme de fonctions de coûts qui déterminent le coût entre chaque unité acoustique cible et les unités acoustiques candidates et de fonctions de coûts des transitions entre deux unités acoustiques candidates, et -évaluation par un opérateur de la qualité auditive de chaque et ledit procédé est caractérisé en ce que - l'étape de présélection est apte à produire une pluralité de flux d'unités acoustiques candidates présélectionnées ayant les meilleurs coûts globaux, et - l'étape d'évaluation consiste, pour l'opérateur, à comparer les flux 5 d'unités acoustiques présélectionnés et à choisir le flux dont la qualité auditive lui paraît la meilleure. D'autres caractéristiques de cet objet sont -l'étape de présélection utilise un algorithme N-best pour présélectionner la pluralité de flux d'unités acoustiques candidates ; 10 - l'étape d'évaluation comporte une étape de filtrage, à partir de critères phonétiques, apte à éliminer un sous-ensemble de flux d'unités acoustiques candidates de la pluralité des flux d'unités acoustiques candidates présélectionnés ; - les critères phonétiques comportent, seuls ou en combinaison, des 15 critères d'interdiction de présence d'une unité acoustique, des critères d'interdiction de présence d'une concaténation entre deux unités acoustiques, et des critères d'interdiction d'une concaténation sur une transition. Un autre objet est un produit programme d'ordinateur comprenant des instructions de code de programme enregistré sur un support lisible par un 20 ordinateur, pour mettre en oeuvre le procédé de synthèse vocale lorsque ledit programme fonctionne sur un ordinateur. Un autre objet est un support d'enregistrement lisible par un ordinateur sur lequel est enregistré un programme d'ordinateur. L'invention sera mieux comprise à la lecture de la description qui va 25 suivre faite uniquement à titre d'exemple et en relation avec les dessins en annexe dans lesquels : - la figure 1 est un schéma simplifié d'un système de synthèse vocale selon l'invention ; - la figure 2 est un ordinogramme du procédé selon un mode de 30 réalisation préféré de l'invention ; - la figure 3 est un schéma de présélection des unités acoustiques candidates ; et - la figure 4 est un schéma d'un écran d'interface avec l'opérateur du système de synthèse vocale selon un mode de réalisation préféré de l'invention. En référence à la figure 1, un système 1 de synthèse vocale est destiné à transformer un texte 2 en un flux sonore 3. Le texte 2 est entré dans le système 1 par l'intermédiaire de moyens de saisie 4 qui le transforme en un fichier, typiquement au standard UNICODE. Ce fichier est traité par des moyens 5 de traitements linguistiques permettant d'extraire du texte des informations pertinentes pour la synthèse par une analyse linguistique du texte. Ces informations linguistiques sont utilisées par les moyens 6 de transcription phonétique. Cette transcription, non nécessairement unique, se présente sous la forme d'une suite d'unités acoustiques cibles, éventuellement augmentée d'informations supplémentaires telles que des consignes prosodiques ou des catégories grammaticales. Ces moyens 4, 5 et 6 permettant d'obtenir une suite d'unités acoustiques cibles sont bien connus de l'homme du métier et ne seront pas décrits plus en détail. Des informations complémentaires sur ces moyens peuvent être trouvées, par exemple, dans la demande de brevet US 2003/0229494 précitée. Le système 1 de synthèse vocale comporte également des moyens 7 de stockage d'unités acoustiques candidates typiquement sous forme d'une base de données. Ces unités acoustiques candidates comportent principalement des fragments de paroles préenregistrées. Ces fragments peuvent correspondre à des phonèmes, des diphones, des syllabes, ... Chaque unité acoustique candidate représente une variation sonore d'une unité acoustique de base, par exemple des variations de longueur, de timbre, ... Typiquement, les moyens 7 de stockage peuvent contenir plus de 100 000 unités acoustiques candidates. Dans la description qui suit, et à titre purement illustratif, les unités acoustiques seront supposées être des diphones. Les moyens 7 de stockage sont reliés à des moyens 8 de présélection dont l'objet est de produire au moins un flux d'unités acoustiques candidates. Chaque flux d'unités acoustiques candidates est représentatif de la suite d'unités acoustiques cibles. Habituellement, un système de synthèse vocale ne produit qu'un seul flux d'unités acoustiques. Un algorithme communément utilisé pour produire cet unique flux est l'algorithme de Viterbi qui minimise le coût global, somme des 6 coûts-cible et des coûts de transition pour les unités acoustiques candidates et les transitions de ce flux. Des exemples de fonctions de coût utilisables dans le cadre de cet algorithme de Viterbi sont décrits dans Perceptual and Objective Detection of discontinuities in concatenative Speech synthesis , Yannis Stylianou and Ann K. Syrdal, ICASSP 2001. Pour cela, les moyens 8 de présélection n'utilisent pas que l'algorithme de Viterbi puisque celui-ci ne fournit qu'un seul flux, celui ayant le meilleur coût global. A titre purement illustratif, la suite de flux produite par les moyens 8 de présélection est le résultat d'un algorithme de type N-best qui fournit une suite ordonnée de N flux dont le premier flux correspond à la solution de l'algorithme de Viterbi. Deux exemples de ce type d'algorithme sont décrits dans A comparison of two Exact Algorithms for finding the NBest Sentence Hypothese in Continuous Speech Recognition , V.M. Jimenez, A. Marzal, J. Monné, Eurospeech 1995. Les moyens 8 de présélection sont connectés à des moyens 9 d'interface. Ceux-ci sont connectés à des moyens 10 de restitution sonore permettant ainsi à un opérateur d'écouter, à la demande, un des flux d'unités acoustiques présélectionnés, et de déterminer ainsi celui qui a la meilleure qualité auditive. Les moyens 9 d'interface sont également connectés à des moyens 11 de visualisation et de saisie permettant à l'opérateur de visualiser et de sélectionner les différents flux présélectionnés. De manière préférentielle, ces moyens 9 d'interface comportent des moyens 12 de filtrage. Ceux-ci sont adaptés pour que l'opérateur, par utilisation de critères phonétiques, puisse éliminer des sous-ensembles de flux parmi les flux présélectionnés de façon à limiter le nombre d'écoutes et de comparaisons à effectuer pour choisir le meilleur flux. Le fonctionnement de ce système va maintenant être explicité en référence à la figure 2. Le procédé démarre à l'étape 20. La saisie d'un texte est effectuée à l'étape 21. Celui-ci est traité en 22 pour en extraire des informations linguistiques. Ces informations linguistiques sont utilisées en 23 pour produire classiquement une suite d'unités acoustiques cibles. Par utilisation de l'algorithme de présélection, on sélectionne en 24 un nombre N de flux d'unités acoustiques candidates. Par exemple, figure 3, pour la suite 30 de quatre unités acoustiques cibles, on a représenté en 31 l'ensemble des graphes possibles dont les unités acoustiques candidates sont les noeuds 10-1, 10-2, 11-1,... Le flux 32, représenté en trait plein épais, correspond à la première solution. Il correspond au flux des unités acoustiques candidates 10-1, 11-2, 12-10 1, 13-1. Le flux 33, représenté en traits pointillés épais, correspond à la deuxième solution. Il est composé des unités acoustiques candidates 10-2, 11-1, 12-3, 13-3. L'ensemble des N flux ainsi présélectionnés est stocké en mémoire et 15 rendu disponible à l'utilisateur. Celui-ci écoute en 25, figure 2, un des flux présélectionné. S'il est satisfait par la qualité de ce flux en 26, alors le procédé est terminé en 27. Par contre, si le flux écouté n'est pas satisfaisant, un autre flux est 20 écouté en 25 jusqu'à l'écoute d'un flux de bonne qualité. On conçoit que cette écoute successive peut être longue et fastidieuse. Aussi, il est avantageux d'offrir à l'utilisateur une interface permettant de filtrer l'ensemble des flux selon des critères phonétiques modifiables par l'utilisateur. 25 Ainsi, une étape 28 d'édition des filtres est, de manière facultative, insérée dans la boucle d'écoute / sélection. A titre d'exemple, un schéma simplifié d'un écran d'interface est représenté en figure 4. Le flux actuellement traité et écouté par l'opérateur est représenté en 30 40 avec la suite des unités acoustiques candidates sélectionnées. Par l'utilisation des boutons 41 et 42, l'opérateur passe au flux précédent ou au flux suivant. Il peut également choisir un des flux qu'il a déjà écouté et retenu dans la fenêtre 43. 8 Il dispose d'opérations de filtrage pour contraindre les propriétés des flux qu'il veut visionner ou écouter. Parmi les opérations de filtrage à sa disposition, il peut - interdire en 44 la présence d'une unité dans les flux filtrés. Par exemple, il peut interdire la présence de l'unité acoustique 10-4, - interdire en 45 la présence d'une concaténation entre deux unités acoustiques dans les flux filtrés. Par exemple, il peut interdire la transition entre les unités 11-2 et 12-1, - interdire en 46 toute concaténation sur une transition. Par exemple, il peut interdire toute concaténation entre les états acoustiques 12 et 13. Les seuls flux autorisés auront alors nécessairement, pour cette transition, deux unités adjacentes dans la base. La ligne 47 résume l'ensemble des filtres utilisés. On conçoit qu'il est possible de combiner plusieurs filtres selon une logique booléenne. On a ainsi décrit un système et un procédé de synthèse vocale par concaténation d'unités acoustiques aisées à manipuler puisque l'opérateur n'a pas à attendre que des calculs d'optimisation soient faits pour comparer deux flux. En effet, tous les calculs sont faits lors de l'étape de présélection et sont donc effectués sans que l'opérateur n'intervienne. De plus, les opérations de filtrage telles que la suppression d'une concaténation correspondent à une analyse auditive directe des flux. II suffit en effet d'écouter un flux comportant une telle concaténation, de s'apercevoir qu'elle est mal sonnante, et donc de décider d'éliminer tous les flux comportant cette concaténation. Ce procédé de synthèse vocale peut être mis en oeuvre par un programme d'ordinateur fonctionnant sur un ordinateur de type station de travail. Ce programme d'ordinateur est enregistré sur un support de données lisible par cet ordinateur. REVENDICATIONS 1. Système de synthèse vocale par concaténation d'unités acoustiques comportant : - des moyens (6) de transcription phonétique aptes à générer une suite d'unités acoustiques cibles, représentative du texte à synthétiser, - des moyens (7) de stockage d'unités acoustiques candidates, chaque unité acoustique candidate comportant un fragment de parole préenregistrée, - des moyens (8) de présélection aptes à produire au moins un flux d'unités acoustiques candidates, chaque flux étant présélectionné sur la base d'une minimisation de son coût global, ledit coût global étant la somme de fonctions de coûts qui déterminent le coût entre chaque unité acoustique cible et les unités acoustiques candidates et de fonctions de coûts des transitions entre deux unités acoustiques candidates, et - des moyens (9) d'interface aptes à permettre à un opérateur d'évaluer la qualité auditive de chaque flux d'unités acoustiques candidates présélectionné, caractérisé en ce que les moyens (8) de présélection sont aptes à produire une pluralité de flux d'unités acoustiques candidates ayant les meilleurs coûts globaux, et en ce que les moyens (9) d'interface sont aptes à permettre à un opérateur de comparer les flux d'unités acoustiques présélectionnés et de choisir le flux dont la qualité auditive lui paraît la meilleure. 2. Système de synthèse vocale selon la revendication 1, caractérisé en ce que les moyens de présélection utilisent un algorithme N-best pour présélectionner la pluralité de flux d'unités acoustiques candidates. 3. Système de synthèse vocale selon la revendication 1 ou 2, caractérisé en ce que les moyens (9) d'interface comportent des moyens (12) de filtrage aptes à éliminer, à partir de critères phonétiques, un sous-ensemble de flux d'unités acoustiques candidates de la pluralité des flux d'unités acoustiques candidates présélectionnés. 4. Système de synthèse vocale selon la revendication 3, caractérisé en ce que les critères phonétiques comportent, seuls ou en combinaison, des critères d'interdiction de présence d'une unité acoustique, des critères d'interdiction de présence d'une concaténation entre deux unités acoustiques, et des critères d'interdiction d'une concaténation sur une transition. 10 5. Procédé de synthèse vocale par concaténation d'unités acoustiques comportant une étape préalable de stockage d'unités acoustiques candidates, chaque unité acoustique candidate comportant un fragment de parole préenregistrée, et ledit procédé comportant en outre les étapes de : - transcription phonétique (23) apte à générer une suite d'unités acoustiques cibles représentative du texte à synthétiser, - présélection (24) d'au moins un flux d'unités acoustiques candidates, chaque flux étant présélectionné sur la base d'une minimisation de son coût global, ledit coût global étant la somme de fonctions de coûts qui déterminent le coût entre chaque unité acoustique cible et les unités acoustiques candidates et de fonctions de coûts des transitions entre deux unités acoustiques candidates, et - évaluation (25, 26) par un opérateur de la qualité auditive de chaque flux, et ledit procédé est caractérisé en ce que -l'étape de présélection est apte à produire une pluralité de flux d'unités acoustiques candidates présélectionnées ayant les meilleurs coûts globaux, et - l'étape d'évaluation consiste, pour l'opérateur, à comparer les flux d'unités acoustiques présélectionnés et à choisir le flux dont la qualité auditive lui paraît la meilleure. 6. Procédé de synthèse vocale selon la revendication 5, caractérisé en ce que l'étape de présélection utilise un algorithme N- best pour présélectionner la pluralité de flux d'unités acoustiques candidates. 7. Procédé de synthèse vocal selon la revendication 5 ou 6, caractérisé en ce que l'étape (25, 26) d'évaluation comporte une étape (28) de filtrage, à partir de critères phonétiques, apte à éliminer un sous-ensemble de flux d'unités acoustiques candidates de la pluralité des flux d'unités acoustiques candidates présélectionnés. 8. Procédé de synthèse vocal selon la revendication 7, caractérisé en ce que les critères phonétiques comportent, seuls ou en combinaison, des critères d'interdiction de présence d'une unité acoustique, des critères d'interdiction de présence d'une concaténation entre deux unités acoustiques, et des critères d'interdiction d'une concaténation sur une transition. 11 9. Produit programme d'ordinateur comprenant des instructions de code de programme enregistré sur un support lisible par un ordinateur, pour mettre en oeuvre le procédé de synthèse vocale selon l'une des revendications 6 à 10 lorsque ledit programme fonctionne sur un ordinateur. 10. Support d'enregistrement lisible par un ordinateur sur lequel est enregistré un programme d'ordinateur selon la revendication 9.