Brevet FR2604815A1 — publié le 19880408

i La présente invention concerne de façon générale un procédé et un dispositif pour la reconnaissance d'une voix inconnue par comparaison avec un ensemble de voix connues, et elle porte en particulier sur un procédé et un dispositif pour reconnaître une voix d'entrée inconnue par l'utilisa- tion d'un vecteur propre obtenu par le procédé d'analyse par les composantes principales. Il a été proposé un procédé de reconnaissance de la voix dans lequel une voix produite avec des mots en tant qu'éléments unitaires est soumise à un traitement binaire pour former une configuration d'entrée sous la forme d'une distribution temps-fréquence, qu'on appelle également une configuration temps-spectre, et dans lequel la configuration d'entrée est comparée avec un ensemble de configurations en bibliothèque, par comparaison linéaire, pour reconnaître la voix d'entrée. Ce procédé de reconnaissance de la voix est également appelé procédé BTSP (pour Binary Time-Spectrum Pattern, c'est-à-dire configuration temps-spectre binaire) et il est simple et avantageux du fait qu'il n'utilise pas le procédé de comparaison par programmation dynamique. En outre, ce procédé est excellent en ce qui concerne l'absorp- tion de fluctuations de fréquence dans la configuration temps-spectre, ce qui fait qu'on prévoit la possibilité de l'appliquer à des locuteurs illimités. Cependant, dans le procédé BTSP classique, une capacité de mémoire très élevée est nécessaire pour enregistrer un certain nombre de confi- rations temps-spectre de bibliothèque, ce qui nécessite d'employer un processeur rapide pour éviter un retard dans l'accomplissement d'un processus de reconnaissance. L'invention procure un procédé pour reconnaître une voix d'entrée, dans lequel on obtient à partir de la voix d'entrée une configuration tempsspectre contenant une information temporelle, et un ensemble de trames, et dans lequel on soumet la configuration temps-spectre au procédé d'analyse par les composantes principales, pour déterminer un vecteur propre non nul qui est ensuite appliqué à la con- figuration temps-spectre, pour déterminer une distribution de produits scalaires entre le vecteur propre et les trames de la configuration temps-spectre. Un but principal de l'invention est donc d'élimi- ner les inconvénients de l'art antérieur décrits ci-dessus, et de procurer un procédé et un dispositif perfectionnés pour la reconnaissance d'une voix d'entrée inconnue. L'invention a également pour but de procurer un procédé et un dispositif de reconnaissance de voix qui aient une structure simple et qui ne nécsiternt qu'une capacité mi- nimale de mémoire de bibliothèque pour des données de bi- bliothèque. L'invention a encore pour but de procurer un pro- cédé perfectionné de reconnaissance de voix qui ait un fonctionnement rapide et puisse être mis en oeuvre aisément. D'autres caractéristiques et avantages de l'in- vention seront mieux compris à la lecture de la description qui va suivre d'un mode de réalisation, et en se référant aux dessins annexés sur lesquels: La figure 1 est un schéma synoptique montrant un dispositif de reconnaissance de voix construit conformément à un mode de réalisation de l'invention; La figure 2 est une représentation schématique montrant un exemple d'une configuration vocale qui est ap- plicable à l'invention; et La figure 3 est un graphique montrant une distri- bution de fréquence de produit scalaire entre une configu- ration de bibliothèque I et plusieurs configurations d'en- trée II et III. En considérant tout d'abord la figure 2, on voit une configuration vocale pour le mot "shita" qui, lorsqu'il est prononcé avec la prononciation japonaise, signifie "bas" en français. On peut former une telle configuration vocale en échantillonnant un signal vocal avec un intervalle de temps prédéterminé, par exemple 10 ms, dans un ensemble. de bandes de fréquence prédéterminées, par exemple au moyen de filtres passe-bande, et en quantifiant les valeurs de spectre locales dans chaque collection de données échantil- lonnées. On peut convertir les données en valeurs binaires, en appliquant par exemple une technique décrite dans le brevet des E.U.A. n 4 634 966. Dans la configuration vocale représentée sur la figure 2, la configuration se présente sous une forme matri- cielle et elle comporte 9 colonnes et 34 lignes. On notera que chaque ligne comprend les données obtenues par échantil- lonnage avec un intervalle d'échantillonnage particulier, et on appelle également cette ligne une trame. En d'autres termes, lorsqu'on échantillonne une voix d'entrée avec un intervalle de temps prédéterminé dans un ensemble de bandes de fréquence prédéterminées qui sont mutuellement différen- tes, on obtient une distribution temps-fréquence. On peut traiter une telle distribution temps-fréquence pour former la configuration vocale qui est représentée sur la figure 2. Dans la configuration vocale particulière qui est représen- tée sur la figure 2, les trois colonnes de gauche, A à C, définissent une information de fréquence combinée. Autrement dit, la colonne A contient des données combinées pour une région de fréquence basse, la colonne B contient des données combinées pour une région de fréquence intermédiaire et la colonne C contient des données combinées pour une région de fréquence élevée. En d'autres termes, les données résultant d'une analyse de fréquence qui sont obtenues à partir d'un ensemble de filtres passebande avec un intervalle de temps prédéterminé, sont combinées dans trois régions de fréquen- ce, à savoir les régions basse, intermédiaire et élevée, et ces données combinées respectives sont placées respective- ment dans les colonnes de fréquence basse, intermédiaire et élevée. La colonne D contient des données qui indiquent un intervalle d'absence de voix, et les colonnes E et F con- tiennent des données accentuées de fréquence basse et de fré- quence élevée, qui ont été obtenues en traitant les données soumises à l'analyse de fréquence, d'une manière prédétermi- née bien connue de l'homme de l'art. Il est important de noter que la configuration vo- cale représentée sur la figure 2 comprend trois colonnes dé- signées par G, qui contiennent trois nombres binaires repré- sentant un code décimal codé en binaire (DCB) qui indique le temps. Par exemple, les quinze premières trames contiennent "000" dans la colonne de temps G, et ceci indique que les quinze premières trames ont été échantillonnées avec un in- tervalle de temps prédéterminé, par exemple 10 ms, pendant une première période d'environ 15 x 10 ms = 150 ms. Les seize trames suivantes contiennent "001" dans la colonne de temps G, et ceci indique que les seize trames suivantes ont été échantillonnées avec l'intervalle de temps prédéterminé, par exemple 10 ms, pendant la période suivante, ou seconde période, d'environ 16 x 10 ms = 160 ms, qui est de préférence pratiquement égale à la première période. De cette manière, un ensemble de trames sont échantillonnées avec un intervalle de temps prédéterminé pendant une période prédéterminée qui peut être fixée arbitrairement, mais qui est de préférence fixée à une valeur notablement supérieure à l'intervalle de temps d'échantillonnage. Du fait que chaque trame ou ligne de la configura- tion vocale qui est représentée sur la figure 2 comporte neuf éléments, ou que la configuration représentée sur la figure 2 comporte neuf colonnes, on peut considérer que la configuration vocale de la figure 2 est constituée par un nombre N de vecteurs à neuf dimensions. Comme on le décrira ultérieurement en détail, et conformément au principe de l'invention, on soumet la configuration vocale sous forme matricielle qui est représentée sur la figure 2 à l'opération bien connue d'analyse par les composantes principales, pour déterminer un vecteur propre minimal non nul, et on calcule ensuite les produits scalaires entre le vecteur propre ainsi obtenu et les trames de la configuration vocale de la figure 2. Ensuite, on représente graphiquement les produits scalai- res résultants en fonction de la fréquence à un ensemble d'intervalles (par exemple au nombre de huit) dont les va- leurs sont mutuellement différentes, pour définir ainsi un histogramme des produits scalaires. On utilise cet histo- gramme de produits scalaires en tant qu'identificateur d'une voix particulière. En considérant maintenant la figure 1, on voit une représentation sous forme synoptique d'un dispositif de re- connaissance de voix construit conformément à un mode de réalisation de l'invention. Comme il est représenté, le dis- positif de reconnaissance de voix comprend une unité de pré- traitement 1 à laquelle est appliqué un signal vocal qui résulte de la conversion, par exemple par un microphone, d'une voix d'un locuteur. L'unité de pré-traitement 1 com- prend par exemple un détecteur d'intervalle vocal dans le- quel le niveau de puissance du signal vocal est contrôlé pour déterminer un intervalle vocal, en utilisant un niveau de seuil. L'unité de prétraitement 1 comprend également de façon caractéristique une batterie de filtres formée par un ensemble de filtres passe-bande ayant des gammes de fréquen- ce mutuellement différentes. Par conséquent, lorsque le si- gnal vocal est traité dans l'unité de pré-traitement 1, il est numérisé dans un ensemble de gammes de fréquence diffé- rentes. Les données vocales numérisées qui sont ainsi obte- nues sont ensuite appliquées à une unité de détermination de paramètres de caractéristiques 2, dans laquelle les don- nées vocales numérisées sont traitées d'une manière prédé- terminée pour former une configuration vocale, par exemple de la forme représentée sur la figure 2. La configuration vocale qui est ainsi formée est appliquée à une unité de comparaison partielle et de sélection préliminaire, 3, dans laquelle cette configuration vocale est comparée à un en- semble de configurations de bibliothèque enregistrées dans une mémoire, chacune d'elles correspondant à une voix connue. Dans ce cas, la configuration vocale d'entrée est comparée partiellement avec chaque configuration de bibliothèque, par exemple pour un nombre prédéterminé de premières trames, pour sélectionner des candidats possibles dans la collection de configurations de bibliothèque, et ces candidats sont transférés vers une mémoire de candidats 6. Ensuite, la con- figuration vocale d'entrée est comparée de façon complète avec chacun des mots candidats, par le calcul d'un degré de similitude par une unité de calcul de similitude 4, et le mot candidat ayant le degré de similitude le plus élevé est présenté en sortie en tant que résultat reconnu. Dans le mode de réalisation préfère de l'invention, un signal vocal est soumis à une analyse de fréquence pour produire une distribution tempsfréquence ou temps-spectre, et des pics locaux, qu'on peut considérer comme le formant, sont extraits et sont utilisés en tant que caractéristiques du signal vocal. Le processus de comparaison est de préfé- rence accompli en deux étapes. Ainsi, dans la première étape de comparaison, la configuration vocale d'entrée est comparée à chaque configuration de l'ensemble de configurations de bibliothèque, pour un nombre de trames prédéterminé, par exemple 20, à partir de la première trame dans les configu- rations de distribution temps-fréquence respectives, en prenant en considération la position des pics locaux. Un nombre prédéterminé, par exemple 20, de ces configurations vocales de bibliothèque, dont les pics locaux sont plus rapprochés de ceux de la configuration vocale d'entrée, sont sélectionnées en tant que candidats possibles et sont trans- férées vers la mémoire de candidats. Ensuite, dans la seconde étape de comparaison, la configuration vocale d'entrée est comparée entièrement avec chacune des configurations vocales de bibliothèque qui correspondent aux candidats ainsi sélec- tionnés, en utilisant pour la comparaison la méthode d'ana- lyse par les composantes principales, comme on le décrira ci-après en détail. La configuration de parole ayant la distribution temps-spectre représentée sur la figure 2 comprend un en- semble de trames dont chacune définit une ligne de matrice et peut être considérée comme un élément d'un espace vecto- riel. Ainsi, chaque trame peut être représentée par un point Xi dans l'espace vectoriel à neuf dimensions, qui est défini par l'expression suivante: Xi = (Xil, Xi2,..., Xi9) (1) avec i = 1, 2,..., N. Un vecteur propre R pour un voix correspondant à un mot est défini par l'expression suivante. On notera qu'on peut dé- terminer un tel vecteur propre à partir d'une configuration vocale du format représenté sur la figure 2, pour chaque voix connue, en appliquant l'analyse par les composantes principales. R =(r1, r2,..., r3) (2) avec: r = 1. i=l On peut en outre définir un produit scalaire entre le vec- teur propre R et Xi par l'expression suivante: (R, Xi) = riXij (3) ]=1 On applique ensuite le calcul de produit scalaire de l'équa- tion (3) à chaque trame, de façon à obtenir un nombre N de produits scalaires si la configuration vocale comporte un nombre de trames égal à N. En utilisant les produits scalai- res ainsi obtenus, on forme une distribution produits sca- laires/fréquence, ou un histogramme des produits scalaires, comme le montre la figure 3. On accomplit cette opération pour chacune des voix connues, pour définir un histogramme des produits scalaires obtenus, en tant que produits sca- laires entre le vecteur propre R et les trames d'une confi- guration vocale. L'histogramme de produits scalaires, ou la distribution produits scalaires/fréquence qui est ainsi ob- tenu est enregistré sous la forme d'un paramètre associé à une voix particulière. Par conséquent, le système de recon- naissance de voix qui est représenté sur la figure 1 com- porte deux modes de fonctionnement, c'est-à-dire le mode d'enregistrement et le mode de reconnaissance. Lorsqu'on fait fonctionner le système de reconnaissance de voix dans le mode d'enregistrement, on applique à l'entrée une voix connue, et on forme son histogramme de produits scalaires calculés de la manière décrite ci-dessus, et on l'enregistre sous la forme d'un paramètre associé à la voix connue. De cette manière, on enregistre un ensemble de voix connues, sous la forme de données de bibliothèque qui comprennent la configuration vocale et l'histogramme de produits scalaires. On place ensuite le dispositif de reconnaissance de voix dans le mode de reconnaissance, et une voix d'entrée incon- nue est alors comparée à toutes les données de bibliothèque pour identifier la voix d'entrée. Détermination du vecteur propre R Il est important de déterminer un vecteur propre de façon que l'étalement de la distribution de valeurs de produits scalaires soit limité, afin de limiter la capacité de mémoire nécessaire pour enregistrer la distribution pro- duits sclaires/fréquence. On détermine tout d'abord un vec- teur propre de façon à minimiser la dispersion ou la varian- ce des produits scalaires (R, Xi). On peut déterminer des valeurs propres en résolvant un problème de valeurs propres bien connu pour une configuration vocale ayant un format matriciel tel que celui représenté sur la figure 2. Ensuite, parmi les valeurs propres ainsi déterminées, on sélectionne la plus petite valeur propre différente de zéro, et on dé- termine son vecteur propre correspondant pour la configuration vocale particulière. De cette manière, du fait qu'on sélec- tionne la plus petite valeur propre, on peut minimiser l'éta- lement de la distribution de produits scalaires. Ceci est avantageux pour réduire la capacité de mémoire exigée pour l'enregistrement des données d'une distribution produits sca- laires/fréquence. On détermine ensuite un histogramme de pro- duits scalaires et on l'enregistre dans la bibliothèque 5 en compagnie de son vecteur propre. Traitement de reconnaissance Pour identifier la voie inconnue d'entrée, on ac- complit le calcul de produit scalaire entre la configuration vocale de la voix d'entrée, représentée sur la figure 2, et le vecteur propre de chacune des voix candidates qui ont été sélectionnées par la comparaison préliminaire et sont main- tenant enregistrées dans la mémoire de candidats 6. On dé- termine donc une distribution produits scalaires/fréquence ou un histogramme de produits scalaires pour chacune des Yoix candidates. Ensuite, sur la base des distributions pro- duits scalaires/fréquence ainsi obtenues, on détermine quelle est la voix candidate qui présente le degré de similitude le plus élevé. La figure 3 est un graphique montrant plusieurs distributions produits scalaires/fréquence, et son abscisse indique les valeurs de produits scalaires tandis que son or- donnée indique la fréquence d'apparition. On peut donc éga- lement considérer que le graphique de la figure 3 définit des histogrammes indiquant que des valeurs de produits sca- laires comprises dans une certaine plage de valeurs apparais- sent un nombre de fois donné. L'abscisse est donc en fait divisé en un nombre prédéterminé de plages (par exemple 8), et chaque distribution n'est donc pas une distribution con- tinue mais définit plutôt un histogramme. Sur la figure 3, la courbe en trait continu I in- dique une distribution produits scalaires/fréquence pour une voix de bibliothèque particulière, et la courbe en poin- tillés II indique une distribution produits scalaires/fré- quence pour une voix d'entrée inconnue qui correspond à la voix de bibliothèque particulière. Du fait que les distri- butions I et II se rapportent au même son, ces distributions sont presque identiques et elles se superposent donc prati- quement. Au contraire, les trois autres distributions en pointillés III indiquent des distributions produitsscalaires/ fréquence obtenues pour des voix différentes. De cette ma- nière, si la voix inconnue d'entrée diffère de la voix de bibliothèque, la distribution produitsscalaireefréquence diffère radicalement en hauteur et en étalement latéral. Ainsi, en calculant le degré de similitude de la distribu- tion produits scalaires/fréquence entre la voix d'entrée et la voix de bibliothèque, on peut déterminer l'identité de la voix d'entrée. Comme décrit ci-dessus et conformément à l'inven- tion, du fait qu'on utilise comme paramètres pour identifier une voix de bibliothèque particulière une distribution pro- duitsscalaire/fréquence et un vecteur propre, on peut ré- duire notablement la capacité de mémoire qui est exigée pour enregistrer des données de voix de bibliothèque. On peut donc enregistrer un nombre accru de données de voix de bi- bliothèque pour une capacité de mémoire donnée. En particu- lier, dans le système BTSP dans lequel une configuration vocale se présentant sous la forme d'une distribution temps- spectre est formée par des valeurs binaires, on peut calcu- ler des produits scalaires uniquement par addition, ce qui est particulièrement avantageux. De plus, conformément à l'invention, la capacité de mémoire qui est exigée pour une voix de bibliothèque est d'environ 20 multiplets, et les calculs arithmétiques qui interviennent dans le traitement de reconnaissance de voix sont simplifiés et consistent es- sentiellement en additions, ce qui fait que pour une biblio- thèque d'environ 50 voix matérialisées par des mots, un mi- croprocesseur universel à 8 bits est suffisant pour effec- tuer la reconnaissance de voix. Il faut noter que les confi- gurations vocales utilisables dans l'invention ne sont pas limitées à celle représentée sur la figure 2. On peut utili- ser dans l'invention une configuration vocale comprenant des trames contenant chacune une information de fréquence et une information de temps. A titre d'exemple, les colonnes A à F peuvent contenir des données qui font partie d'une distribu- tion temps-spectre obtenue en soumettant un signal vocal à une analyse de fréquence. Il va de soi que de nombreuses autres modifica- tions peuvent être apportées au dispositif et au procédé dé- crits et représentés, sans sortir du cadre de l'invention. REVENDICATIONS 1. Procédé de reconnaissance de voix caractérisé en ce qu'il comprend les opérations suivantes: on forme une configuration vocale d'entrée (1) à partir d'un signal vocal d'entrée correspondant à une voix d'entrée inconnue, cette configuration vocale d'entrée comprenant un ensemble de trames et chaque trame contenant des données de fréquence et de temps; on compare partiellement (3) la configuration vocale d'entrée avec une configuration vocale de bibliothè- que (5) de chaque voix parmi un premier ensemble de voix de bibliothèque connues, pour sélectionner un second ensemble de voix de bibliothèque candidates, chacune de ces voix de bibliothèque ayant un vecteur propre et une distribution produitsscalaireqfréquence pour les produits scalaires entre les trames de la voix de bibliothèque précitée et le vecteur propre précité; on calcule (4) une distribution produitssca- laireWfréquence des produits scalaires entre les trames de la configuration vocale d'entrée et le vecteur propre de chaque voix du second ensemble de voix de bibliothèque can- didate; et on sélectionne une voix du second ensemble de voix de bibliothèque candidates dont la distribution produits scalaire/fréquence est la plus similaire à l'une des distri- butions produits scalairefréquence qui ont été calculées au cours de l'opération de calcul, pour identifier ainsi la voix d'entrée par la voix de bibliothèque qui est ainsi sé- lectionnée. 2. Procédé selon la revendication 1, caractérisé en ce que la configuration vocale se présente sous la forme d'une matrice constituée par un premier nombre prédéterminé de lignes et un second nombre prédéterminé de colonnes, dans laquelle chaque ligne du premier nombre prédéterminé de lignes correspond à l'une des trames. 3. Procédé selon la revendication 2, caractérisé en ce que l'opération de comparaison est effectuée en com- parant un nombre prédéterminé de premières trames de la configuration vocale d'entrée avec les trames correspondantes de chacune des configurations vocales de bibliothèque (5). 4. Procédé selon la revendication 1, caractérisé en ce que chacune des voix de bibliothèque consiste en don- nées constituant un mot. 5. Procédé selon la revendication 1, caractérisé en ce que le vecteur propre précité est le plus petit vecteur propre différent de zéro obtenu en soumettant la configura- tion vocale à l'analyse par les composantes principales.