Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
SIGNAL PREDICTION METHOD AND DEVICE FOR A SPEECH CODER
Document Type and Number:
WIPO Patent Application WO/1997/014139
Kind Code:
A1
Abstract:
A method and a device for predicting periodicity data present in a voice signal to be coded that is subdivided into a series of sub-frames. The prediction is performed using an adaptive dictionary built up from the optimal excitation of each preceding sub-frame. The previous predictions are filtered and correlated to enable selection of the desired predicted signal, which is then compared with the starting information so that only the prediction error is coded and transmitted. The method and device are useful in video telephony.

More Like This:
Inventors:
Paulin
Jacques, Ravera
Bertrand
Application Number:
PCT/FR1996/001596
Publication Date:
April 17, 1997
Filing Date:
October 11, 1996
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
PHILIPS ELECTRONICS N
Paulin, Jacques Ravera Bertrand
International Classes:
G10L19/08; H03M7/30; H04B14/06; (IPC1-7): G10L9/14
Foreign References:
US5138661A1992-08-11
EP0296763A11988-12-28
Other References:
CUPERMAN: "Low delay speech coding", PROCEEDINGS OF THE ASILOMAR CONFERENCE ON SIGNALS, SYSTEMS AND COMPUTERS, vol. 2, 4 November 1991 (1991-11-04) - 6 November 1991 (1991-11-06), PACIFIC GROVE, CA, US, pages 935 - 939, XP000314435
CHEN ET AL.: "Comparison of pitch prediction and adaptation algorithms in forward and backward adaptive CELP systems", IEE PROCEEDINGS I (COMMUNICATIONS, SPEECH AND VISION), vol. 140, no. 4, August 1993 (1993-08-01), STEVENAGE, GB, pages 240 - 245, XP000389911
VEENEMAN ET AL.: "Efficient multi-tap pitch prediction for stochastic coding", SPEECH AND AUDIO CODING FOR WIRELESS AND NETWORK APPLICATIONS, 1 January 1993 (1993-01-01), BOSTON-DORDRECHT-LONDON, pages 225 - 229, XP000470445
GERSON ET AL.: "Techniques for improving the performance of CELP-type speech coders", IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, vol. 10, no. 5, 1 June 1992 (1992-06-01), NEW YORK, US, pages 858 - 865, XP000274720
Download PDF:
Claims:
REVENDICATIONS
1. : i. Méthode de prédiction, dans un codeur de parole dit CELP, du signal vectoriel résiduel, ou vecteur résiduel, de l'analyse à court terme, ledit signal contenant l'information de périodicité présente dans un signal vocal initial à coder décomposé en soustrames successives, ladite prédiction étant effectuée à partir d'excitations optimales prédites pour la soustrame précédente, ladite méthode comprenant pour chacune desdites sous trames les étapes suivantes : (1) pour différentes valeurs d'un pas δ dit de détermination de ladite information de périodicité, et en vue de la sélection, à partir desdites excitations optimales précédemment prédites, d'un vecteur de gain optimal βopC et de la valeur correspondante du pas optimal, une étape de réalisation, en série et pour chaque valeur de δ, des sousétapes suivantes : (a) une sousétape de filtrage ; (b) une sousétape de calcul de termes de corrélation entre les vecteurs filtrés et le vecteur résiduel, de termes d'énergie des vecteurs filtrés, et de termes de corrélation entre les vecteurs filtrés pris deux à deux, délivrant un premier vecteur V(δ) ; (c) une sousétape de présélection, pour la détermination d'un vecteur initial de gain P*(δ)init, des carrés des composantes dudit vecteur, et des produits de ces mêmes composantes prises deux à deux, délivrant un deuxième vecteur βτ(δ)init î (2) une étape de sélection de ladite valeur optimale du pas δ, celleci correspondant à la voie pour laquelle le produit scalaire desdits premier et deuxième vecteurs V(δ) et Pτ^^init est maximum, et, pour cette valeur optimale de δ, de sélection, dans une table dite de quantification, dudit vecteur de gain optimal βopC , qui est celui de la table pour lequel le produit scalaire dudit premier vecteur V(δ) par chacun des vecteurs de la table est maximal ; (3) une étape de calcul dudit signal vectoriel résiduel prédit, ou vecteur résiduel prédit, à partir d'une part des vecteurs d'excitation filtrés de la soustrame précédente qui correspondent à ladite valeur optimale de δ précédemment sélectionnée et d'autre part dudit vecteur de gain optimal sélectionné.
2. Dans un codeur de parole dit CELP comprenant d'une part un filtre d'analyse à court terme, qui reçoit un signal vocal initial à coder décomposé en soustrames successives et délivre un signal vectoriel résiduel t (n) définissant l'information de périodicité présente dans le signal vocal initial, et d'autre part un dispositif de prédiction de ce signal résiduel et un circuit d'estimation d'erreur de prédiction par différence entre ce signal vectoriel résiduel t (n) et le signal vectoriel prédit p (n) , dispositif de prédiction comprenant : (A) un circuit de mémorisation de vecteurs, dit dictionnaire adaptatif, contenant les excitations optimales prédites pour la soustrame précédente ; (B) en sortie dudit circuit de mémorisation, une pluralité de voies de calcul d'un vecteur βτ(δ) , prévues en parallèle chacune pour une valeur déterminée d'un pas δ dit de détermination de ladite information de périodicité et comprenant ellesmêmes chacune en série : (a) un filtre de réponse impulsionnelle égale à celle du filtre de synthèse construit à partir dudit filtre d'analyse ; (b) un circuit de calcul de termes de corrélation entre les vecteurs filtrés, provenant dudit dictionnaire adaptatif, et ledit vecteur résiduel ou vecteurcible, de termes d'énergie des vecteurs filtrés et de termes de corrélation entre les vecteurs filtrés pris deux à deux ; (c) un circuit de présélection, par voie, dudit vecteur βτ(δ)init, dont les composantes sont d'une part les composantes d'un vecteur initial de gain P(δ)inic, d'autre part les carrés des composantes dudit vecteur, et enfin les produits de ces mêmes composantes prises deux à deux ; !7 (C) un sousensemble de calcul et de mémorisation de la valeur optimale dudit pas ; (D) une mémoire, dite table de quantification, qui contient les composantes des vecteurs de gain candidats, ainsi que leurs carrés et leurs produits deux à deux ; (E) un commutateur de sélection, en liaison avec ladite valeur optimale du pas, du vecteur optimal V(δ) correspondant composé de termes de corrélation, donnés par les produits scalaires des vecteur filtrés par le vecteur résiduel de termes d'énergie, donnés par les produits scalaires des vecteurs filtrés par euxmêmes, et de termes de corrélation, donnés par les produits scalaires deux à deux des vecteurs filtrés ; (F) un circuit de sélection, dans ladite table de quantification, de chaque vecteur de gain candidat ; (G) une mémoire de stockage du vecteur de gain ainsi sélectionné ; (H) en sortie de cette mémoire, un amplificateur de la sortie de filtre sélectionnée selon ladite valeur de pas optimal par un commutateur ; (I) un soustracteur d'estimation de ladite erreur de prédiction par différence entre ledit signal résiduel t (n) et le signal prédit p (n) délivré par ledit amplificateur.
Description:
"METHODE ET DISPOSITIF DE PREDICTION DE SIGNAL POUR UN CODEUR DE PAROLE"

La présente invention concerne une méthode de prédiction, dans un codeur de parole dit CELP, du signal vectoriel résiduel, ou vecteur résiduel, de l'analyse à court terme, ledit signal contenant l'information de périodicité présente dans un signal vocal initial à coder décomposé en sous-trames successives, ladite prédiction étant effectuée à partir d'excitations optimales prédites pour la sous-trame précédente. Elle concerne également, dans un codeur de parole dit CELP comprenant d'une part un filtre d'analyse à court terme, qui reçoit un signal vocal initial à coder décomposé en sous-trames successives et délivre un signal vectoriel résiduel définissant l'information de périodicité présente dans le signal vocal initial, et d'autre part un dispositif de prédiction de ce signal résiduel et un circuit d'estimation d'erreur de prédiction par différence entre ce signal vectoriel résiduel et le signal vectoriel prédit, plus particulièrement ledit dispositif de prédiction.

Les paroles émises par un organe de phonation constituent un signal vocal qui présente deux types de propriétés : d'une part celles liées au mécanisme de la perception de ce signal par l'appareil auditif humain (bande passante finie, résolution finie en fréquence, sensibilité aux fréquences de résonance, insensibilité à la phase des composantes fréquentielles du signal, etc...), et d'autre part celles liées au mécanisme de fonctionnement de l'organe de phonation (pseudo-périodicité des sons, structure résonante du signal,...). Le message vocal lui-même peut être considéré comme la combinaison d'une information de contenu et d'une information supplémentaire dite d'expression et qui traduit les variations individuelles de présentation acoustique du message. Il est manifeste qu'une transmission efficace d'un tel message impliquerait sans aucun doute de définir un critère de fidélité. Il est cependant plus réaliste, en général, de se contenter de définir un critère perceptif, qui permet de reconnaître l'absence de

différences perceptibles entre un message émis et le signal reçu correspondant.

Le signal vocal est, en fait, constitué par des variations de la pression de l'air, engendrées par le conduit vocal sous l'action du système respiratoire qui fournit l'énergie nécessaire à la production de la parole. Le flux d'air qui sort des poumons est modulé à une fréquence F dite fondamentale à laquelle est associée la production des voyelles. Cette fréquence, qui varie de 70 à 150 hertz environ pour les hommes et de 150 à *τ00 hertz environ pour les femmes, caractérise les sons dits voisés (un exemple de représentation de l'amplitude A d'un son voisé en fonction du temps t est donné sur la figure 1). Le flux d'air excite alors en oscillations forcées des cavités du conduit vocal, à la forme desquelles correspondent des fréquences propres F.,, F 2 , F-,, etc... appelées formants. Le signal vocal comprend également des signaux qui, eux, n'ont pas la cohérence des sons voisés, mais qui s'apparentent à du bruit, émis par une source sans fréquence propre, et qui n'excitent pas les fréquences propres du conduit vocal (ces sons sont liés à la production de la plupart des consonnes). Les caractéristiques du signal vocal peuvent être mises en évidence par une analyse spectrale, qui montre que le spectre émis comprend d'une part un spectre de raies (excitations périodiques) pour la production des sons voisés et d'autre part un spectre continu (excitations incohérentes) pour la production des sons non voisés. Une analyse plus poussée d'un signal vocal montre en définitive que son traitement en vue d'une transmission fidèle de la bande passante qu'il représente conduit à manipuler au niveau acoustique un flux de données considérable. Des techniques d'analyse de la parole ont alors été mises au point pour réduire considérablement ce flux de données. Par l'élimination des redondances ainsi obtenue, le signal vocal, initialement de type analogique, peut alors après numérisation être comprimé à des débits qui, du fait du taux de compression atteint, autorisent son transport sur les lignes à très bas débit actuelles. En matière de compression de signaux vocaux, l'Union

Internationale des Télécommunications a émis récemment, dans le cadre d'une application tournée vers la téléphonie à très bas débit,

un projet de recommandation ("Draft Recommendation G.723 - Dual rate speech coder for multimédia télécommunication transmitting at 5-3 and 6.3 kbits/s", ITU, Study Group 15, 1995, 10 ème "LBC Meeting", Newton, Ma., USA) visant à définir une norme pour un codeur de parole.

Ce codeur repose sur un principe dit d'analyse par synthèse (en anglais : linear prédiction analysis-by-synthesis coding), qui comprend d'une part une étape d'analyse, pour déterminer les coefficients du filtre de synthèse, et d'autre part une étape d'analyse par synthèse, qui consiste à trouver ou calculer une séquence d'excitations minimisant un critère d'erreur déterminé (on utilise souvent le critère des moindres carrés). Le codage mentionné dans le projet de norme cité, dit codage prédictif linéaire excité par codes (en anglais, Code Excited Linear Prédictive encoding, ou codage CELP, terme que l'on adoptera dans la suite de la description), s'appuie sur un modèle simplifié du mode de production de la parole, selon lequel, en première approximation, le signal vocal peut être modélisé par un filtre de corrélation à court terme (conduit vocal) et à long terme (source vocale) ayant pour entrée un signal d'excitation.

Des exemples détaillés de codeur prédictif à excitation par codes sont décrits dans de très nombreux documents, et par exemple dans le document "Digital audio coding for visual communications", P. Noll, Proceedings of the IEEE, vol.83. n"6, juin 1995 * Un filtrage dit perceptuel est utilisé dans tous les codeurs

CELP, et le projet de recommandation G.723 cité plus haut utilise en plus un filtrage dit harmonique. On ne mentionnera pas, dans la suite de la description, ces filtrages qui n'entrent pas dans le domaine de l'invention. De ce fait, dans le codeur, l'analyse à court terme consiste alors en un filtrage de prédiction linéaire dit LPC (en anglais : linear prédictive coding) , qui est k-n communément appelé A(z), avec A(z) = 1 - 2^ a k z "k (n = 10 dans le k-i

cas de la recommandation G.723), tandis que l'analyse à long terme, dite LTP (en anglais : long jterm prédiction) , utilise un filtrage de

synthèse S(z) = 1/A(z), avec quantification des coefficients a, de A(z).

L'analyse à court terme repose sur une méthode prédictive dans laquelle l'idée de base mise en oeuvre est, connaissant un signal vocal d'entrée ou signal observé s(n)

(l'indice n désigne le rang de l'échantillon), de trouver un filtre qui, excité par un signal d'excitation x(n), va délivrer un signal prédit p(n) aussi proche que possible de s(n) et qui permet donc, par différence entre s(n) et p(n) , d'obtenir une erreur résiduelle e(n) aussi faible que possible. La méthode de prédiction mise en oeuvre dans l'analyse à court terme est linéaire car chaque échantillon s(n) du signal vocal initial à transmettre peut être prédit (signal p(n) sous la forme d'une représentation par une combinaison linéaire d'un certain nombre (par exemple, dix) d'échantillons précédents, ce qui s'exprime par exemple de la façon suivante : k=N P(n)=∑ a k .s(n-k) (1) k=l

Pour un nombre N d'échantillons égal à 10 par exemple, cette expression devient : p(n) + a 2 .s(n-2) + + a 10 .s(n-10) (2)

Cela revient à dire que le signal prédit p(n) est délivré par un filtre dont les coefficients a k (a^ à a^ dans l'exemple de l'expression (2)) sont calculés pour minimiser l'erreur de prédiction e(n) = s(n)-p(n) (on utilise en général, pour la minimisation de l'erreur obtenue, le critère de la méthode des moindres carrés) .

Le codeur de parole décrit dans le document G.723 cité plus haut reçoit un signal constitué de blocs, ou trames, comprenant 240 échantillons, avec une fréquence d'échantillonnage de 8 kHz, et chaque trame est supposée être divisée en quatre sous-trames de 60 échantillons chacune. Si, connaissant le signal s(n) à transmettre, on recherche donc un filtre 1/A(z), dit filtre de synthèse, qui, appliqué à un signal d'excitation x(n), permet d'obtenir un signal p(n) aussi proche que possible du signal d'échantillonnage s(n), il

est équivalent de rechercher un filtre A(z), dit d'analyse, dont les coefficients sont tels que le signal de sortie du filtre est le plus blanchi possible quand ce filtre est attaqué par le signal à transmettre (dans un codeur idéal, le signal de sortie serait un véritable bruit blanc). Au lieu de transmettre le signal vocal, il suffit alors, pour pouvoir le reconstituer ultérieurement, de transmettre les coefficients du filtre A(z) (ces coefficients sont moins consommateurs de bits de codage que ne le serait la transmission de l'erreur de prédiction ou du signal lui-même). Le codeur CELP mentionné ci-dessus comprend donc un tel filtre d'analyse à court terme, qui reçoit le signal vocal à transmettre et délivrerait, s'il était idéal, un bruit blanc. Ne l'étant pas, il délivre un signal résiduel e(n) , non complètement blanchi : ce signal appauvri contient encore l'information de périodicité de la partie voisée du signal vocal et devient lui-même le signal ou vecteur cible t (n) à modéliser à l'aide du filtre d'analyse à long terme précité (t(n) = e(n)).

En définitive, il faut donc distinguer, dans un codeur CELP, deux sortes de prédictions. La première, dite à court terme (en anglais : short term analysis), effectue une décorrélation des échantillons adjacents : elle a pour objet de définir les coefficients du filtre d'entrée les plus aptes à permettre l'obtention, après le filtrage du signal connu, d'un signal résiduel aussi proche que possible d'un bruit blanc. La seconde (l'invention décrite ci-après concerne uniquement ce deuxième type de prédiction) dite à long terme (en anglais : long term prédiction) et effectuée sur chaque sous-trame, exploite l'information résiduelle de périodicité des sons voisés selon la relation (3) suivante : p(n) = β . t(n-OLP) (3) Dans cette expression (3), t(.) et p(.) désignent respectivement, l'échantillon concerné dans le signal à modéliser et l'échantillon prédit, β est une valeur de gain, et OLP (en anglais, Open Loop Pitch) désigne la grandeur dite période de voisement en boucle ouverte, caractéristique de la périodicité du signal. La détermination de la période OLP et celle du gain β suffisent à mettre en oeuvre la prédiction représentée par l'expression (3)-

On constate, en écrivant l'expression (3), que cette détermination a la forme d'une dépendance directe : à un facteur de gain près, l'échantillon à prédire serait égal à l'un des échantillons déjà survenus. En fait, le principe adopté est encore plus général.

Autour de cette valeur qui serait celle de la dépendance directe, on construit une relation plus complexe, sous la forme de l'expression (4) suivante, pour un prédicteur par exemple d'ordre 5 : k=+4 p(n) = ∑ β(k).t(n-OLP+k) (4) k=0 Dans un codeur CELP, et en particulier dans le cas du codeur faisant l'objet du projet de norme cité plus haut, une telle prédiction est réalisée à l'aide d'une mémoire appelée dictionnaire adaptatif. Ce dictionnaire adaptatif est construit à partir de la mémoire des vecteurs d'excitation optimale de la sous-trame précédente, partiellement remise à jour à chaque sous-trame. Il est constitué, pour les sous-trames paires, de trois groupes de cinq vecteurs (pour un prédicteur d'ordre 5) et, pour les sous-trames impaires, de quatre groupes de cinq vecteurs. On appelle par la suite "V-vecteur" chacun de ces groupes de cinq vecteurs. La première composante du premier vecteur de chaque V-vecteur est obtenue en se décalant de

(OLP-2+6) dans le passé, sachant que ό peut prendre les valeurs (-1, 0, 1) pour les sous-trames paires et (-1, 0, 1, 2) pour les sous- trames impaires. Les quatre autres vecteurs de chaque V-vecteur sont obtenus à l'aide du premier vecteur par décalages successifs d'un échantillon dans le sens des temps croissants.

L'opération correspondant à l'expression (4) est donc une prédiction avec combinaison linéaire d'échantillons, au cours de laquelle on raffine la recherche du vecteur solution en faisant varier le gain β, par exemple, dans le cas du projet G.723 cité, en lui donnant cinq valeurs distinctes ( β est le vecteur de gain formé de ces cinq valeurs), et en ajustant également d'une faible valeur δ la grandeur OLP. La sélection, au cours de cette recherche, du meilleur vecteur solution possible est faite en incluant dans le déroulement du procédé de détermination une étape de minimisation,

au sens des moindres carrés, de la différence entre le vecteur t (n) de sortie du filtre d'analyse (dont on transmettra les coefficients) et les vecteurs solutions résultant de la mise en oeuvre de l'expression (4). Finalement, comme un codeur CELP comprend à son entrée le filtre d'analyse qui, ayant reçu le signal vocal à transmettre, ne délivre plus qu'un signal résiduel constituant l'information de périodicité de ce signal vocal initial, c'est ce signal appauvri t(n) pour lequel va être mise en oeuvre la prédiction expliquée ci-après en référence à la figure 2. Le dictionnaire adaptatif contient donc les vecteurs d'excitation candidats à ia construction d'une approximation de ce vecteur t (n) .

La figure 2 montre, dans le cas du projet G.723. un exemple de dispositif de prédiction permettant de mettre en oeuvre les principes de détermination qui viennent d'être décrits. Ce dispositif comprend tout d'abord un circuit 20 de stockage de vecteurs d'excitation (c'est le dictionnaire adaptatif mentionné ci- dessus), construit à partir de l'excitation optimale de la sous- trame précédente, c'est-à-dire des excitations sélectionnées lors d'une précédente mise en oeuvre de la même méthode de prédiction pour de précédents échantillons. Pour trouver la valeur du vecteur de gain β ainsi que celle de la grandeur OLP + δ = CLP (en anglais, Closed Loop Pitch) , le circuit 20 est suivi, dans le cas où l'on se trouve dans une sous-trame paire et où δ prend par exemple les trois valeurs - 1, 0 et + 1 (c'est le cas représenté sur la figure 2), de voies 30, ici trois voies 30a, 30b, 30c identiques (le circuit 20 est suivi de quatre voies identiques, référencées de façon similaire, dans le cas où l'on se trouve dans une sous-trame impaire, δ prenant alors les quatre valeurs - 1, 0, + 1, + 2). Chacune de ces voies (selon le cas, de ces trois ou quatre voies dans l'exemple décrit, sans que ces nombres soient limitatifs) traite le V-vecteur du dictionnaire adaptatif qui correspond au pas δ de la voie considérée, et comprend à cet effet en série tout d'abord un filtre 31. ayant pour réponse la réponse impulsionnelle du filtre de synthèse {défini plus haut) . Un circuit 32, recevant également le vecteur cible à modéliser t (n) est ensuite prévu pour le calcul d'un vecteur à vingt composantes V(δ)

constitué de cinq termes de corrélation entre les vecteurs filtrés et le vecteur résiduel (en anglais : cross-products) , donnés par les produits scalaires des cinq vecteurs filtrés du dictionnaire adaptatif par le vecteur cible t (n) , de cinq termes d'énergie, donnés par les produits scalaires des cinq vecteurs filtrés du dictionnaire adaptatif par eux-mêmes, et de dix termes de corrélation deux à deux entre les vecteurs filtrés. A partir de ces corrélations, il est possible de déterminer dans quelle mesure le vecteur résiduel ou vecteur cible t (n) peut être modélisé à partir des V-vecteurs du dictionnaire adaptatif. Les gains, qui sont quantifiés, sont fournis par une mémoire *t0, ou table de quantification, qui contient les valeurs possibles pour les différents gains (170 à 5,3 kbits/s., et 85 ou 170 à 6,3 kbits/s., les 170 vecteurs de la table utilisés dans l'un ou l'autre cas étant alors les mêmes). Les informations relatives aux gains sont données, dans cette table de quantification, sous la forme de vecteurs possédant chacun vingt termes (comme précédemment) définis comme suit : cinq valeurs de gain, cinq valeurs égales au carré de ces gains, dix valeurs correspondant aux dix produits deux à deux de ces cinq valeurs de gain.

La minimisation de l'erreur de prédiction à effectuer pour chaque valeur de δ (c'est-à-dire dans chacune des trois ou quatre voies : dans l'exemple décrit, pour les trois valeurs δ = -1, 0, +1 ou, respectivement, les quatres valeurs δ = -1, 0, 1, 2) conformément à l'expression (5) suivante : k-. ε = Min(∑e 2 (n)) - Min£ [t(n) -£ β (k) .f (n-OLP+k) ] 2 (5) n n k»o

(avec n = 0 à 59. par exemple, pour une sous-trame à soixante échantillons, et f(.) = échantillon de l'excitation optimale passée filtrée par le filtre de synthèse) est réalisée dans un circuit 33 de recherche de la valeur maximale des produits scalaires du vecteur V(δ) par chacun des 170 (ou 85) vecteurs de la table de quantification. On remarquera en effet que le vecteur de gain μ optimal au sens de l'expression (5) est celui qui annule la dérivée de ε par rapport à chacune des composantes du vecteur, et qui, par

là même, rend maximal le produit scalaire de V(δ) par un vecteur de la table de quantification. En sortie des circuits 33. un circuit 50 permet alors la sélection du produit scalaire maximal parmi les trois ou quatre produits scalaires disponibles en sortie de ces trois (ou quatre) circuits, produit scalaire maximal auquel correspondent une valeur optimale du pas δ (stockée dans une mémoire 110) et une valeur optimale du vecteur de gain j3. La valeur optimale de δ est bien entendu l'une des trois (ou quatre) valeurs utilisées dans les trois (ou quatre) voies, et la valeur ainsi sélectionnée permet de commander un commutateur 60, comprenant autant d'entrées qu'il y a de voies (trois, ou quatre). Ce commutateur, prévu en sortie des filtres 31. permet de sélectionner le V-vecteur filtré constituant le meilleur représentant pour le vecteur solution recherché. Ce vecteur filtré sélectionné est alors présenté à l'entrée d'un amplificateur 70 dont le vecteur de gain j3 , délivré par le circuit de sélection 50, avait été stocké dans une mémoire 80 présente en sortie de ce circuit 50. Le V-vecteur filtré optimal ainsi amplifié est le vecteur de prédiction p(n) envoyé vers la borne négative d'un soustracteur 90 qui reçoit sur sa borne positive le vecteur t (n) de sortie du filtre d'analyse du codeur CELP. Ce soustracteur 90 délivre un signal d'erreur e(n) = t (n) - p (n) .

La qualité obtenue avec un tel codeur de parole (tel que décrit dans le document G?23) est due en bonne partie à la finesse d'analyse de cette recherche de corrélation à long terme en boucle fermée, effectuée à l'aide du circuit 20 constituant le dictionnaire adaptatif. Cette qualité n'est cependant obtenue qu'au prix d'une très forte complexité, qui apparaît d'emblée dans la suite d'opérations qu'implique la mise en oeuvre du codeur.

Un premier but de l'invention est donc de proposer une méthode de prédiction plus simple, à qualité pratiquement égale, que celle précédemment décrite.

A cet effet l'invention concerne une méthode de prédiction comprenant pour chacune desdites sous-trames les étapes suivantes :

(1) pour différentes valeurs d'un pas δ dit de détermination de ladite information de périodicité, et en vue de la sélection, à partir desdites excitations optimales précédemment prédites, d'un vecteur de gain optimal p opt et de la valeur correspondante du pas optimal, une étape de réalisation, en série et pour chaque valeur de δ, des sous-étapes suivantes :

(a) une sous-étape de filtrage ;

(b) une sous-étape de calcul de termes de corrélation entre les vecteurs filtrés et le vecteur résiduel, de termes d'énergie des vecteurs filtrés, et de termes de corrélation entre les vecteurs filtrés pris deux à deux, délivrant un premier vecteur V(δ) ;

(c) une sous-étape de présélection, pour la détermination d'un vecteur initial de gain β(δ) init , des carrés des composantes dudit vecteur, et des produits de ces mêmes composantes prises deux à deux, délivrant un deuxième vecteur Pτ^^i n i t •

(2) une étape de sélection de ladite valeur optimale du pas δ, celle-ci correspondant à la voie pour laquelle le produit scalaire desdits premier et deuxième vecteurs V(δ) et est maximum, et, pour cette valeur optimale de δ, de sélection, dans une table dite de quantification, dudit vecteur de gain optimal β opt , qui est celui de la table pour lequel le produit scalaire dudit premier vecteur V(δ) par chacun des vecteurs de la table est maximal ; (3) une étape de calcul dudit signal vectoriel résiduel prédit, ou vecteur résiduel prédit, à partir d'une part des vecteurs d'excitation filtrés de la sous-trame précédente qui correspondent à ladite valeur optimale de δ précédemment sélectionnée et d'autre part dudit vecteur de gain optimal sélectionné. Un autre but de l'invention est de proposer un codeur de parole similaire à celui qui vient d'être décrit, mais avec une complexité réduite et tout en conservant une qualité pratiquement équivalente.

A cet effet l'invention concerne, dans un codeur tel que défini dans le préambule de la description, un dispositif de prédiction comprenant :

(A) un circuit de mémorisation de vecteurs, dit dictionnaire adaptatif, contenant les excitations optimales prédites pour la sous-trame précédente ;

(B) en sortie dudit circuit de mémorisation, une pluralité de voies de calcul d'un vecteur prévues en parallèle chacune pour une valeur déterminée d'un pas δ dit de détermination de ladite information de périodicité et comprenant elles-mêmes chacune en série :

(a) un filtre de réponse impulsionnelle égale à celle du filtre de synthèse construit à partir dudit filtre d'analyse ;

(b) un circuit de calcul de termes de corrélation entre les vecteurs filtrés, provenant dudit dictionnaire adaptatif, et ledit vecteur résiduel ou vecteur-cible, de termes d'énergie des vecteurs filtrés et de termes de corrélation entre les vecteurs filtrés pris deux à deux ;

(c) un circuit de calcul, par voie, dudit vecteur Pτ(δ)ini t ' dont les composantes sont d'une part les composantes d'un vecteur initial de gain, d'autre part les carrés des composantes dudit vecteur, et enfin les produits de ces mêmes composantes prises deux à deux ;

(C) un sous-ensemble de calcul et de mémorisation de la valeur optimale dudit pas ;

(D) une mémoire, dite table de quantification, qui contient les composantes des vecteurs de gain candidats, ainsi que leurs carrés et leurs produits deux à deux ;

(E) un commutateur de sélection, en liaison avec ladite valeur optimale du pas, du vecteur optimal V(δ) correspondant composé de termes de corrélation, donnés par les produits scalaires des vecteur filtrés par le vecteur résiduel de termes d'énergie, donnés par les produits scalaires des vecteurs filtrés par eux-mêmes, et de termes de corrélation, donnés par les produits scalaires deux à deux des vecteurs filtrés ;

(F) un circuit de sélection, dans ladite table de quantification, des vecteurs de gain candidats ;

(G) une mémoire de stockage du vecteur de gain ainsi sélectionné ; (H) en sortie de cette mémoire, un amplificateur de la sortie de filtre sélectionnée selon ladite valeur de pas optimal par un commutateur ;

(I) un soustracteur d'estimation de ladite erreur de prédiction par différence entre ledit signal résiduel t (n) et le signal prédit p (n) délivré par ledit amplificateur.

Alors que, dans le cas du document G723. le parcours de la table de quantification des gains est très complexe, puisqu'il est effectué à raison de lk fois par trame de 240 échantillons, la solution conforme à l'invention permet de faire un nombre de parcours bien moindre (quatre dans le cas du codeur selon ce document) , avec une dégradation pratiquement insensible de la qualité. L'idée de base de la structure ainsi proposée est en effet la suivante : en faisant l'hypothèse simplificatrice que les prédicteurs sont décorrélés, ou, ce qui est équivalent, que les corrélations entre vecteurs filtrés pris deux à deux, précédemment définies, sont nulles, on peut, pour chaque sous-trame et pour chaque voie correspondant à un pas δ, définir un vecteur initial de gain P( ( 5) init , sans calcul coûteux d'inversion de matrice. Les composantes de ce vecteur sont alors, pour la voie considérée, les rapports successifs des termes de corrélation entre les vecteurs filtrés et le vecteur cible et des termes d'énergie du vecteur V(δ) défini précédemment.

La donnée, pour chaque voie, d'un vecteur initial de gain β (δJ-init P ermet alors de déterminer une valeur de δ initiale (et sous-optimale) ne nécessitant qu'un parcours de la table de quantification par sous-trame. En effet, le critère du choix du pas δ qui minimise l'erreur de prédiction est tiré directement de la remarque faite plus haut, selon laquelle le vecteur de gain β optimal au sens de l'expression (5) est celui qui annule la dérivée de cette expression par rapport à chacune des composantes du

vecteur : le pas initial optimal, déterminé pour chaque sous-trame par le sous-ensemble de calcul prévu en sortie des voies, est alors celui qui rend maximal l'un des trois, ou quatre selon que la sous- trame est paire ou impaire, produits scalaires de κτ^)ι n it ^ ar V(δ), déterminés par le circuit de calcul prévu dans chaque voie après le calcul de V(δ) (on rappelle ici que V(δ) a été défini précédemment, tandis que βτ(° " )i n it est un vecteur qui comprend le même nombre de composantes que V(δ), à savoir, dans le cas présent : les cinq composantes du vecteur initial de gain β (^ i nit * les cinq carrés des composantes de ce vecteur, et les dix produits de ces mêmes composantes prises deux à deux) . Le vecteur du gain optimal pour chaque sous-trame est alors obtenu à l'aide du circuit prévu en sortie de la table de quantification et qui effectue la recherche de la valeur maximale du produit scalaire du vecteur V(δ) correspondant à la valeur optimale du pas δ qui vient d'être calculée par chacun des vecteurs (ici 170 ou 85 selon le débit) de ladite table. Cette détermination du vecteur de gain optimal ne nécessite plus qu'un seul balayage de la table de quantification par sous-trame, soit quatre par trame (au lieu de trois ou quatre par sous-trame selon que la sous-trame est paire ou impaire, soit quatorze par trame) , ce qui entraîne une réduction notable de la complexité.

Les particularités de l'invention apparaîtront de façon plus précise dans la description qui suit et dans les dessins annexés, donnés à titre d'exemples non limitatifs et dans lesquels :

- la figure 1 montre un exemple de représentation de l'amplitude d'un son voisé en fonction du temps ;

- les figures 2 et 3 montrent la structure d'un dispositif de prédiction de période de voisement en boucle fermée, respectivement dans le cas du document G723 cité et dans le cas de la présente invention.

Le dispositif de prédiction selon l'invention, tel que représenté sur la figure 3. présente avec celui de la figure 2 des

éléments communs, à savoir le circuit 20 de mémorisation des vecteurs d'excitation candidats (ou dictionnaire adaptatif), les filtres 31. les circuits 32 de calcul des termes de corrélation et d'énergie, la mémoire 40 (ou table de quantification), le commutateur 60, l'amplificateur 70, la mémoire 80, le soustracteur 90, et la mémoire 110.

La simplification apportée par le mode de réalisation de la figure 3 est la suivante. En choisissant, dans chacune des voies maintenant référencées 130a, 130b, 130c, un vecteur de gain initial β(δ). ... il est possible de déterminer une valeur de δ initiale ne nécessitant plus qu'un parcours de la table de quantification (mémoire kO) par sous-trame (ce choix est effectué dans trois, ou quatre, circuits de présélection 101, selon le nombre de voies). Cette détermination du pas δ optimal est effectuée, pour les vecteurs de gain initiaux ainsi choisis, dans un circuit de calcul 102, et la valeur de δ, conservée en mémoire 110, permet de sélectionner, à l'aide d'un commutateur 161, celle des sorties des circuits de calcul 32 qui lui correspond. La recherche du vecteur de gain optimal est alors effectuée par le circuit de sélection 150, et le vecteur ainsi sélectionné est conservé en mémoire 80. Le commutateur 60, prévu en sortie des filtres 31 et dont la position est commandée par la valeur de δ issue de la mémoire 110, envoie vers l'amplificateur 70 le V-vecteur filtré sélectionné. Le V- vecteur filtré optimal ainsi amplifié est le vecteur de prédiction p(n) , envoyé, comme dans le cas de la figure 2, vers le soustracteur 90.

La simplification de réalisation ainsi apportée ne dégrade la qualité qui était obtenue dans le cas du document G.723 que de 0,2 dB en moyenne, sur la base de 20 signaux de parole de 12 s. chacun fournis par 20 locuteurs différents. Cette dégradation du rapport signal/bruit moyen (RSB moyen) n'est pas perceptible.