Brevet FR2739482A1 — publié le 19970404

La présente invention concerne un procédé et un dispositif pour l'évaluation du voisement du signal de parole par sous bandes dans des vocodeurs. Elle s'applique notamment à la réalisation de vocodeurs utilisables dans une plage de débit binaire comprise entre 2400 bits/s et 4800 bits/s. Pour des débits de 2400 bits/s et moins jusqu'à environ 600 bits/s, il existe en effet des réalisations satisfaisantes, mettant en oeuvre des processus connus sous le nom de "prédiction linéaire" suivant lesquels le signal de parole est synthétisé à la sortie d'un filtre de prédiction sur l'entrée duquel est appliqué soit un signal périodique pour reconstituer les sons voisés représentant les voyelles, soit un signal aléatoire pour la restitution des consonnes. Pour des débits supérieurs à 4800 bits, des procédés récents connus sous l'abréviation anglo saxonne CELP de "Code Exicited Linear Prediction" découlent des procédés précédents à ceci près que le signal appliqué à l'entrée du filtre de synthèse possède une forme plus complexe. Ces procédés permettent une reproduction relativement fidèle du signal de parole. Dans la plage de débit précitée, comprise entre 2400 bits/s 4800 bits/s, plusieurs procédés concurrents de qualité voisine ont pour caractéristique commune de découper la bande de fréquence audio du signal de parole qui est comprise typiquement entre 300 et 3300 Hz en plusieurs sous-bandes jointives et de tenter de représenter le mieux possible le signal présent dans chaque sous bande. Cette façon de procéder se justifie par le fait que l'oreille humaine peut être considérée elle même comme un banc de filtres couplés à la façon d'un analyseur de spectre complexe capable de discriminer les différentes composantes spectrale du signal de parole accompagné éventuellement d'un bruit de fond. Un premier type de vocodeur mettant en oeuvre ce principe a vu le jour au cours des années 1970.Ce vocodeur avait pour caractéristique de découper la bande audio fréquence en 12 sous -bandes, par tiers d'octave, ou en 24 sous-bandes, suivant une échelle de type MEL dont la caractéristique est d'être linéaire dans les basses fréquences, et non linéaire ailleurs. Le niveau de signal mesuré dans chaque sous bande correspond au gain à utiliser en sortie des filtres passe bande de synthèse utilisés. Suivant ce mode de réalisation les signaux appliqués sur les entrées des filtres de synthèse sont soit aléatoires, soit périodiques. Suivant un deuxième mode de réalisation, plus généralement connu sous l'abréviation HELP de "Harmonic Enhanced Linear Prediction", le signal d'excitation du filtre de prédiction est enrichi.Une fois calculée la période de la raie fondamentale du signal de parole qui est encore désignée sous le vocable "Pitch" dans le langage anglo-saxon, la proportion de signal déterministe représentant les sons voisés relativement au bruit est déterminée en tenant compte des niveaux des raies spectrales obtenues après une analyse appelée "pitch-synchrone" suivant laquelle les raies sont analysées dans une fenêtre qui dépend de la valeur de la raie fondamentale. Enfin, suivant un dernier mode de réalisation qui concerne les vocodeurs généralement connus sous la désignation anglo-saxonne de "vocodor IBME" ou IBME est l'abréviation de "lmproved Multiband Excitation", la raie fondamentale ou Pitch la plus probable est recherchée dans chaque sousbande et après sélection d'une valeur de raie fondamentale commune à toutes les sous-bandes, des opérations similaires mais plus complexes à celles exécutées dans les vocodeurs de type HELP sont effectuées. Tout comme dans les vocodeurs de type HELP, la synthèse du signal de parole a lieu par exécution d'une transformée de Fourier rapide inverse reconstituant les différents harmoniques du signal fondamental avec leurs amplitudes respectives pour les sons voisés. Cependant, quelle que soit la complexité des modes de réalisation précités, ceux ci apparaissent fortement perturbés lorsque l'environnement du signal de parole est bruité. En effet, dans ces conditions, il devient illusoire de chercher à reproduire la forme d'onde du signal de parole du fait que le rapport signal à bruit exprimé en dB, est proportionnel au débit. A titre d'exemple, si le rapport S/B est de 16 dB pour un débit de 4800 bits/s, celui ci tombe environ à 8 dB à 2400 bits/s, ce qui est largement insuffisant pour conserver au signal de parole toute son intelligibilité. Le but de l'invention est de palier les inconvénients précités. A cet effet l'invention a pour objet, un procédé pour l'évaluation du voisement du signal de parole par sous-bandes dans des vocodeurs caractérisé en ce qu'il consiste, après avoir échantillonné puis découpé le signal de parole en sous-bandes, à transposer le signal résultant dans chaque sous-bandes en bande de base, à calculer le carré du module de l'autocorrélation du signal transposé dans chaque sous-bande, à estimer la valeur de la fréquence fondamentale du signal de parole en sélectionnant parmi les autocorrélations effectuées sur les signaux présents dans l'ensemble des sous-bandes celle dont l'amplitude est maximum, à sélectionner dans chaque sous-bande l'autocorrélation maximum qui correspond à une valeur soit de la fréquence fondamentale estimée, de ses multiples et sous multiples soit d'une valeur de leur voisinage, et à convertir en taux de voisement les valeurs des autocorrélations obtenues avant leur transmission. D'autres caractéristiques et avantages de l'invention apparaîtront dans la description qui suit faite en regard des dessins annexés qui représentent La figure 1 un dispositif pour la mise en oeuvre du procédé selon l'invention. La figure 2 une courbe de réponse d'un filtre mis en oeuvre dans l'invention pour effectuer un prétraitement du signal de parole. La figure 3 un graphe illustrant la méthode de seuillage utilisée pour sélectionner les taux de voisement. Le procédé selon l'invention reprend les principes connus du codage par prédiction linéaire qui permettent grâce à une transmission des coefficients d'un filtre prédicteur de définir d'une façon très économique une première approximation de l'enveloppe spectrale du signal à représenter. La synthèse du signal de parole a lieu en appliquant à l'entrée d'un filtre prédicteur un signal d'excitation défini dans un certain nombre de sous-bandes jointives et réparties de façon linéaire ou non dans la bande des fréquences audio, typiquement définie entre 300 et 3400 Hz. Il consiste principalement à mesurer le taux de voisement dans chaque sous-bande en lui attribuant une valeur comprise entre 0 et 1, faisant correspondre à un taux de voisement nul une excitation du filtre prédicteur purement aléatoire, et à un taux de voisement égal à 1 un signal parfaitement périodique.Selon l'invention, le taux de voisement est défini comme le rapport entre la puissance de la composante purement périodique du signal de parole à sa puissance totale. Le procédé consiste, après avoir échantillonné le signal de parole, et effectué le partage du signal de parole en un nombre déterminé K de sous-bandes, à effectuer dans chacune des sous-bandes un passage du signal en bande de base, en générant un signal complexe, dit "signal analytique", à calculer l'autocorrélation normalisée de ce signal analytique, à combiner les résultats des autocorrélations obtenues dans les différentes sous-bandes pour obtenir une première estimation de la période du fondamental, puis à effectuer également dans chacune des sous-bandes une estimation du taux de voisement maximal autour de la période trouvée et à corriger le taux de voisement ainsi trouvé de manière à limiter les fausses décisions. Le dispositif pour la mise en oeuvre du procédé précité qui est représenté à la figure 1, comporte un dispositif de prétraitement 1 du signal de parole, couplé à un ensemble de K dispositifs référencés de 21 à 2k de calcul d'autocorrélation du signal dans K sous bandes. Les sorties des dispositifs 21 à 2k sont couplées d'une part, à un dispositif de combinaison des autocorrélations 3 et d'autre part, à K dispositifs de recherche de maximum de taux de voisement et de correction référencés respectivement de 41 à 4k Un dispositif 5 d'évaluation de la période du fondamental est couplé entre le dispositif 3 de combinaison des autocorrélations et les K dispositifs de recherche de maximum de taux de voisement et de correction 41 à 4k. Le dispositif de prétraitement 1 se compose d'un filtre ayant pour fonction de transfert: dans laquelle ai représente les coefficients du filtre et y est une constante, voisine de 0,7. Les coefficients ai sont obtenus de façon connue par autocorrélation du signal de parole. L'intérêt de ce filtrage est qu'il permet, en fournissant un spectre résiduel pas trop plat, de faciliter l'évaluation du fondamental, en éliminant les risques de fausse évaluation sur des formants pouvant apparaître entre 400 et 1200 Hz environ. Avant d'effectuer l'autocorrélation du signal filtré par le dispositif de prétraitement 1, les dispositifs 21 à 2K effectue un passage en bande de base d'un nombre déterminé K de sous-bandes, afin d'éviter que la recherche des maxima de l'autocorrélation dans chaque sous-bande ne soit perturbée par l'existence, de plusieurs maxima secondaires autour du maximum vrai. Le passage en bande de base a aussi pour intérêt qu'il permet de rendre minimale la puissance de calcul nécessaire à condition de choisir une fréquence d'échantillonnage un peu supérieur à la largeur de la sous-bande de fréquence pour ne pas perdre d'information.Le passage en bande de base d'une sousbande de largeur B centrée autour d'une fréquence Fc a lieu par exemple, en multipliant par exp Fc pendant une période d'échantillonnage et en filtrant par un filtre passe bas de fréquence de coupure B/2 le signal complexe obtenu. Pour réduire le volume des données à traiter, un sous échantillonnage du signal peut éventuellement être réalisé. En pratique, I'angle O est ajusté pour que la rotation e de phase soit exactement un multiple de 2w pendant la durée d'une trame de parole fixée à 22,5 ms par exemple, afin d'utiliser à chaque nouvelle trame les mêmes tables de cosinus et de sinus pour le calcul des parties réelles et imaginaires du produit Sn.exp(-jne) qui peuvent être ainsi mémorisées une fois pour toute dans le dispositif de prétraitement 1.Le filtrage peut alors être obtenu de façon connue en utilisant un filtre d'impulsion à réponse finie en ne calculant qu'un échantillon complexe sur Q par sous échantillonnage d'un facteur Q=4 par exemple, suivant la relation: dans laquelle hi désigne les coefficients d'un filtre passe bas de fonction de transfert Les autres échantillons ne sont ni calculés ni utilisés dans la suite des traitements. Pour sa réalisation le filtre H(z) n'a pas besoin d'avoir une réponse en fréquence parfaitement plate dans la bande de filtrage et un filtre dont la réponse impultionnelle est le produit d'une fenêtre de Hamming et d'un sinus cardinal peut parfaitement convenir. Une réponse impulsionnelle d'un tel filtre, comportant 31 coefficients et une fréquence de coupure de 500 Hz pouvant convenir, est représenté à titre d'exemple sur la figure 2. L'autocorrélation proprement dite est effectuée dans chaque sousbande par les dispositifs 21 à 2k sur le carré du module de l'autocorrélation du signal Zn suivant la relation: dans laquelle N désigne la longueur en nombre d'échantillons de la plage de calcul, et M une valeur maximum de retard exprimée aussi en nombre d'échantillons. A titre d'exemple et en supposant des périodes de fondamental de 160 échantillons au plus dans le signal original et un sous échantillonnage d'un facteur 4, M vaudra un peu plus de 40, pour 1 pitch maxi de 160, sa valeur exacte dépendant de la marge à adopter pour les traitements suivants. La relation précédente permet de vérifier qu'avec un signal quasi périodique, une période de M et un gain complexe g telle que: Zn=g.Zn-M l'autocorrélation normalisée p(M) définie précédemment vaut exactement 1 ce qui correspond au but recherché. Cependant l'autocorrélatîon précédente ne fournit de résultats satisfaisants que si les différentes sous-bandes sont suffisamment larges et contiennent au moins deux harmoniques du fondamental et que son calcul est adapté pour refléter le taux de voisement du signal de parole dans chaque sous bande. A contrario, lorsque le dimensionnement d'une sous bande est insuffisant et ne peut contenir qu'un harmonique de rang k du fondamental Fo, ou bien un harmonique très puissant, accompagné d'autres harmoniques d'amplitudes nettement plus faibles générés par des formants bien marqués le calcul d'autocorrélation précédent ne permet pas de distinguer la période du fondamental car quelle que soit la valeur de M, p(M) est toujours égal ou voisin de 1, ce qui rend impossible une évaluation de la fréquence du fondamental et gêne la suite des traitements.Cette difficulté est surmontée en introduisant dans le calcul un paramètre appelé taux de voisement reflétant la proportion de signal déterministe dans le signal complet. En désignant par v cette proportion, par a2 la puissance moyenne du signal et par 2a2 la puissance moyenne du bruit, le taux de voisement v est déterminé par la relation: a2 a2 +2a2 2a2 Un calcul exposé en Annexe montre que dans ces conditions une estimation de l'amplitude du signal d'autocorrélation p(M) peut être exprimée par sa valeur moyenne en utilisant la relation: dans laquelle N est le nombre d'échantillons de signal sur lequel porte l'autocorrélation. L'intérêt de la relation (6) est qu'elle permet de définir un taux de voisement V qui est déterminé uniquement par la connaissance de l'amplitude moyenne pmoy du signal d'autocorrélation et par le nombre N d'échantillons considérés suivant la relation: La relation (7) conduit cependant à une surestimation du taux de voisement dans les sous bandes non voisées. En effet, de par la relation 7 le taux de voisement retenu ne peut correspondre qu'à une valeur maximum de p(M) dont la valeur moyenne ne peut être que supérieure à 1/N.Cette difficulté est surmontée selon l'invention en faisant l'hypothèse que le signal d'autocorrélation p possède une densité de probabilité exponentielle décroissante de moyenne m=1/N pour les sons non voisés définie par la relation: Dans ce cas la densité de probabilité du maximum de K valeurs de p supposées indépendantes est définie par la relation: et sa valeur moyenne est donnée par:: A titre d'exemple, en procédant à un calcul d'autocorrélation sur une quarantaine de valeurs correspondant à des valeurs de fréquences fondamentales ou de pitchs allant de 0 et 160 par pas de 4, la moyenne m=1/N doit être remplacée par pom soit environ 4,3.m c'est-à-dire 4,3/N ce qui donne une valeur de taux de voisement empirique corrigée En reportant la valeur de V ainsi obtenue dans la relation (6), K séries de valeurs d'autocorrélation normalisées notées respectivement p1 (M). .pk(M), sont obtenues, le nombre de termes d'une série étant défini dans chaque sousbande par le nombre de fréquences fondamentales ou pitchs considérés qui varient de 0 à M.Ces valeurs sont appliquées par les dispositifs 21 à 2K sur des entrées correspondantes du dispositif 3 de combinaison des autocorrélations afin d'estimer la période du fondamental. Le procédé consiste à remplacer l'ensemble des corrélations par une corrélation fictive unique qui en est le maximum. Pour toutes les valeurs de M,p(M) est alors défini par la relation: p(M) = MAX(pl(M), p2(M),-- -PK (M)) (12) Cette façon de procéder permet à la sous-bande dont la périodicité du signal est la plus marquée d'être distinguée par rapport aux autres pour que l'estimation de la période du fondamental puisse être réalisée sur le signal disponible le plus périodique, lequel n'est pas forcément, pour de la parole perturbée par un bruit de fond important, celui localisé dans les basses fréquences.Naturellement le procédé précédent doit être exécuté pour l'ensemble des valeurs de M. Les valeurs correspondantes de p(M) ainsi obtenues sont appliquées sur des entrées correspondantes du dispositif 5 dévaluation de la période du fondamental afin de déterminer un retard plus ou moins commun à l'ensemble des sous-bandes pour lequel l'autocorrélation fictive définie précédemment présente des maxima cohérents d'une sousbande à l'autre.Ceci a lieu dans le dispositif 5 en recherchant sur l'ensemble des valeurs de M acceptables (typiquement de 20 à 160 ou de 5 à 40 si le pitch est évalué par un pas de 4), les maxima locaux, à savoir ceux pour lesquels les relations suivantes sont vérifiées, p(M) 2 p(M - 1) et p(M) > p(M + l) (13) ou p(M) > p(M - 1) et p(M) 2 p(M + l) (14) puis à effectuer une interpolation, par exemple parabolique, pour trouver à la fois une position plus précise du maximum, et de sa valeur.La recherche plus précise de la valeur du maximum est effectuée en opérant des décalages de la forme: 1 P(M I)-p(M+1)) (15) 2 p(M - 1)+ p(M + 1)- 2p(M) et le calcul de la valeur du maximum a lieu en appliquant la formule d'interpolation suivante: #par = #(M) = #(#(M-1)+#)(#(M-1)+#(M+1)-2#(M)) (16) Les valeurs de "ppar" qui sont ainsi calculées pour chacune des valeurs de M sont ensuite comparées entre elles afin de ne retenir comme période candidate Mcand, que celle qui correspond à un maximum de "ppar". La valeur Mcand ainsi obtenue est ensuite appliquée par le dispositif 5 sur les entrées respectives des dispositifs 41..4k en même temps que les signaux d'autocorrélation fournis par les dispositifs 21..2k pour rechercher les maximum de taux de voisement. Le traitement correspondant a lieu pour chacune des sous-bandes à partir de pk(M) pour (k=1 à K) en initialisant les calculs par une valeur de M=Mcand et en corrigeant éventuellement M de plus ou moins une unité si nécessaire pour être au voisinage d'un maximum de p. Si aucun maximum n'est trouvé les calculs sont effectués en conservant la plus grande valeur parmi p(M-1), p(M), p(M+1). Par contre si un maximum est trouvé, le calcul doit être poursuivi pour rechercher la présence éventuelle .d'un autre maximum.Ce traitement est aussi réitéré pour des valeurs de M égales à Mcand/2 et 2.Mcand, si ces valeurs se trouvent dans la plage des valeurs autorisées pour le Pitch. Le meilleur résultat est retenu à chaque fois. A la fin du traitement, K valeurs de p sont ainsi obtenues, une par sous-bande. Pour tenir compte du fait que, dès que le taux de voisement est inférieur à 1, la valeur estimée par le calcul peut varier de façon assez importante autour de sa valeur moyenne les traitements précédents peuvent être complétés en calculant les taux de voisement deux fois plus souvent que nécessaire, par exemple deux fois par trame, pour ne retenir comme valeur de maximum, le maximum de trois valeurs successives, pour favoriser les sons voisés.Enfin, la valeur du voisement retenue pour une sous-bande donnée subit une dernière correction à l'aide d'un double seuillage, suivant lequel, si elle est inférieure à une valeur minimale déterminée, fixant un seuil de non voisement, elle est remise à zéro; si elle est supérieure à une autre valeur de seuil, dit de voisement, elle est mise à 1 et suivant lequel, elle subit entre les deux valeurs une variation linéaire, comme indiqué sur la figure 3. Ce seuillage intervient pour tenir compte du fait que, même pour des sons parfaitement voisés, la valeur observée peut descendre à environ 0,8, au lieu de 1 en théorie et que pour des sons purement non voisés la valeur observée peut fréquemment atteindre 0,3 à 0,4. Pour tenir compte également du fait que le taux de voisement mesuré décroît lorsque la fréquence croît, à cause de phénomènes complexes dits de "micromélodie" ou "bitter", apparaissant plus particulièrement pour les voix graves, les seuils définis précédemment, peuvent toujours être diminués en fonction de la fréquence centrale de la sous-bande considérée. On comprendra que l'ensemble des traitements précédemment décrits pourront être mis en oeuvre à l'aide de microprocesseurs de traitement du signal du commerce convenablement programmés. ANNEXE En désignant par: - M la valeur du pitch, - N le nombre d'échantillons utilisés pour calculer l'autocorrélation, - S la plage courante de N échantillons complexes déterministes (périodiques), à laquelle est additionné une plage de bruit X - S (-M)= # S la plage précédente d'échantillons déterministes, décalée de M échantillons, proportionnelle à S, à laquelle est additionné une plage de bruit Y. La valeur de l'autocorrélation calculée devient, en notation vectorielle: En supposant que le signal a une puissance moyenne de a2 et le bruit une puissance moyenne de 2a2, on montre assez facilement que l'espérance mathématique du numérateur est égale à N2 a4 |#| +2Na N2 a4I2 |#| + 2N#(2# + a ( 1+|#|)) et celle du dénominateur à: N2 (a2 +a2)(|#|ȃ+2#) En assimilant l'espérance mathématique de p au rapport de ces deux quantités, ce qui donne: Pour un bruit nul, cette quantité vaut 1, et, pour un signal nul, 1/N. Lorsque le signal est stationnaire, on peut considérer que X est de module unité, et l'expression ci-dessus se simplifie en: REVENDICATIONS 1- Procédé pour l'évaluation du voisement du signal de parole par sous-bandes dans des vocodeurs caractérisé en ce qu'il consiste, après avoir échantillonné puis découpé le signal de parole en sous-bandes, à transposer le signal résultant dans chaque sous-bandes en bande de base (21 ...2k) à calculer le carré du module de l'autocorrélation p(M) du signal transposé dans chaque sous-bande (21 ...2k) à estimer (3,5) la valeur de la fréquence fondamentale du signal de parole en sélectionnant parmi les autocorrélations effectuées sur les signaux présents dans l'ensemble des sous-bandes celle dont l'amplitude est maximum, à sélectionner (41...4k) dans chaque sous-bande l'autocorrélation maximum qui correspond à une valeur soit de la fréquence fondamentale estimée, de ses multiples et sous multiples soit d'une valeur de leur voisinage, et à corriger (41 4k) en taux de voisement les valeurs des autocorrélations obtenues avant leur transmission. 2- Procédé selon la revendication 1 caractérisé en ce que le calcul du carré du module de l'autocorrélation (21..2K) a lieu sur un nombre déterminé M de valeurs de fréquences fondamentales, dans chacune des sous-bandes. 3- Procédé selon la revendication 2 caractérisé en ce que la valeur de taux de voisement est déterminée en corrigeant la valeur le carré du module de l'autocorrélation p(M) obtenue pour une valeur de fréquence fondamentale M par la relation: où N désigne le nombre d'échantillons considérés et po est une valeur à ajuster suivant les applications. 4- Procédé selon la revendication 3 caractérisé en ce que la recherche des maximum d'autocorrélation est effectuée par des calculs d'interpolation entre des valeurs déterminées de la fréquence fondamentale. 5- Procédé selon la revendication 4 caractérisé en ce que le signal de parole échantillonné subit un prétraitement avant d'être découpé en sous-bandes consistant en un filtrage par un filtre de fonction de transfert où les coefficients a sont obtenus par autocorrélation du signal de parole échantillonné et y est une constante voisine de 0,7. 6- Dispositif pour la mise en oeuvre du procédé selon l'une quelconque des revendications 1 à 5 caractérisé en ce qu'il comprend un dispositif de prétraitement (1) du signal de parole, couplé à un ensemble de k dispositifs de calcul d'autocorrélation ..... .2k) du signal de parole corrigé dans k sousbandes, et un dispositif de combinaison des résultats des autocorrélations (3), couplé à k dispositifs de recherche de maximum de taux de voisement .4k) à partir des valeurs d'autocorrélation fournies par les k dispositifs de calcul d'autocorrélation, par l'intermédiaire d'un dispositif d'évaluation de la période du fondamental du signal de parole (5).