FR2632758A1 - Procede de codage et codeur de parole a prediction lineaire - Google Patents

Procede de codage et codeur de parole a prediction lineaire Download PDF

Info

Publication number
FR2632758A1
FR2632758A1 FR8807846A FR8807846A FR2632758A1 FR 2632758 A1 FR2632758 A1 FR 2632758A1 FR 8807846 A FR8807846 A FR 8807846A FR 8807846 A FR8807846 A FR 8807846A FR 2632758 A1 FR2632758 A1 FR 2632758A1
Authority
FR
France
Prior art keywords
filtering
vector
frame
speech
signal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR8807846A
Other languages
English (en)
Other versions
FR2632758B1 (fr
Inventor
Michel Lever
Marc Delprat
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nortel Networks France SAS
Original Assignee
Matra Communication SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matra Communication SA filed Critical Matra Communication SA
Priority to FR8807846A priority Critical patent/FR2632758B1/fr
Priority to DE68915057T priority patent/DE68915057T2/de
Priority to ES89401644T priority patent/ES2052043T3/es
Priority to EP89401644A priority patent/EP0347307B1/fr
Publication of FR2632758A1 publication Critical patent/FR2632758A1/fr
Application granted granted Critical
Publication of FR2632758B1 publication Critical patent/FR2632758B1/fr
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/005Correction of errors induced by the transmission channel, if related to the coding algorithm
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/10Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation
    • G10L19/113Regular pulse excitation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L2019/0001Codebooks
    • G10L2019/0003Backward prediction of gain
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L2019/0001Codebooks
    • G10L2019/0013Codebook search algorithms
    • G10L2019/0014Selection criteria for distances
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/06Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being correlation coefficients

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)

Abstract

Le procédé, utilisable notamment pour la transmission de parole à faible débit, utilise l'excitation vectorielle. On représente une trame de signal d'une part par des paramètres de prédiction, d'autre part par une succession de vecteurs d'excitation contenus dans un dictionnaire 20 et par des gains GK d'amplification de ces vecteurs, les vecteurs retenus étant déterminés par recherche du minimum de l'énergie d'un signal d'erreur obtenu par soustraction de chaque vecteur à son tour, après l'avoir soumis à un filtrage, à la trame du signal de parole. Avant soustraction, on soumet : chaque trame du signal de parole à un filtrage d'analyse à court terme et à un filtrage de synthèse pondéré, à coefficients éventuellement fixes dans le temps et le vecteur amplifié à un filtrage prédictif à long terme et au même filtrage de synthèse pondéré perceptuelle que le signal de parole.

Description

Procédé de codaqe et codeur de parole à prédiction linéaire. La présente
invention a pour objet un procédé de codage et un codeur de parole du type dit à analyse par prédiction.linéaire. Elle concerne plus particulièrement
les procédés et codeurs de parole de ce genre à excita-
tion par vecteur d'excitation, souvent désignés par l'abréviation anglosaxonne CELP, qui sont à distinguer des procédés de codage à analyse par prédiction linéaire à excitation multi-impulsionnelle (MPLPC) dont un exemple est donné dans le document EP-A-0 195 487 auquel
on pourra se reporter.
Le codage à analyse par prédiction linéaire à excitation vectorielle fournit une solution intéressante au problème de la transmission de parole dans un canal à
bande étroite, par exemple de la transmission entre mo-
biles et vers les mobiles dans un canal de 12,5 kHz qui réduit le débit disponible à environ 8 kbits/s; dans ce dernier cas le débit affecté à la transmission des paramètres représentant le signal de parole est réduit à environ 6 kbits/s du fait qu'une partie du débit global doit être affectée à la transmission d'un code de
correction d'erreur.
On connaît déjà des codeurs de parole à prédic-
tion linéaire et excitation vectorielle, utilisables avec un faible débit binaire, habituellement entre un
quart de bit et un demi bit par échantillon de parole.
On pourra notamment trouver un exemple de réalisation d'un tel codeur dans l'article de SCHROEDER et ATAL "Code excited linear prediction (CELP) : high quality
speech at very low bit rates", proc. ICASSP, mars 1985.
La figure 1 donne un schéma de principe d'un tel codeur 10. Le signal de parole est appliqué à ce codeur par l'intermédiaire d'une chaîne de numérisation. Dans le mode de réalisation montré en figure 1, la chaîne
comprend, à partir d'un microphone 12, un filtre passe-
bas 14 limitant la bande passante à 4 000 Hz environ et un échantillonneur-codeur 16. L'échantillonneur prélève des échantillons de parole à une cadence qui est par exemple de 8 kHz et fournit des échantillons successifs, regroupés par trames vocodeurs occupant des fenêtres
temporelles de durée déterminée, par exemple 20 ms.
Le codeur 10 transforme le signal de parole en un signal codé ayant une cadence de bits inférieure,
transmis vers l'équipement d'émission par un multi-
plexeur 18 qui reçoit, pour chaque trame, les indices k des vecteurs d'excitation optimaux Ck, les gains Gk associés et des coefficients identifiant des paramètres de prédiction, pour chacun des blocs constitutifs de la
trame, occupant chacun une sous-fenêtre.
Le codeur 10 représenté à titre d'exemple sur la figure 1 utilise l'analyse par synthèse: le spectre de parole dans chaque fenêtre est modélisé par un filtre prédicteur linéaire dont les coefficients sont variables
dans le temps. Le signal résiduel, obtenu par soustrac-
tion, fait l'objet d'une quantification vectorielle en utilisant un dictionnaire de formes d'onde. Sur la figure 1, le dictionnaire 20 contient K+1 vecteurs d'excitation ck (avec k=O,..., k,..., K) et attaque un
amplificateur 22 de gain Gk.
Habituellement les vecteurs d'excitation mémori-
sés dans le dictionnaire 20 sont choisis soit de façon empirique en tenant compte de données statistiques sur la langue, soit de façon aléatoire, soit encore à partir de codes numériques binaires classiques tels que les
codes de Golay.
L'article de SCHROEDER et autres mentionné plus haut propose par exemple un dictionnaire comportant 1024
vecteurs d'excitation constitués chacun de 40 échantil-
lons. Ce nombre de vecteurs se place entre le minimum au dessous duquel l'excitation serait mal représentée et le maximum au delà duquel le nombre de bits laissés libres serait insuffisant pour transmettre les paramètres des prédicteurs. La sortie de l'amplificateur 22 est appliquée à un filtre prédictif de synthèse constitué d'un filtre prédicteur à long terme 24, destiné à introduire la périodicité du signal à long terme, et d'un filtre prédicteur à court terme 26. La sortie Sn du filtre prédicteur, qui représente une -synthèse d'estimation du signal de parole, est appliquée à l'entrée soustractive d'un soustracteur 28 qui reçoit, sur son entrée additive, le signal de parole Sn échantillonné et numérisé. Les fonctions de transfert respectives 1/B(z) et
1/A(z) des filtres 24 et 26 une fois calculées et quan-
tifiées, l'opération de codage consiste à-déterminer la séquence optimale d'innovation ck et le gain Gk pour chaque trame de parole par un processus d'analyse par synthèse. Pour chacune des séquences de codage Ck, le signal de synthèse obtenu Sk est comparé au signal d'origine S -et le signal de différence obtenu dans le soustracteur 28 est traité dans un filtre de pondération perceptuelle 30 ayant une fonction de transfert W(z) ,
dont-la fonction est d'atténuer les fréquences pour les-
quelles les erreurs ont moins d'importance du point de
vue perceptuel et d'amplifier au contraire les fréquen-
ces pour lesquelles les erreurs ont davantage d'impor-
tance du point de vue perceptuel.
Un circuit 32 recherche la séquence de codage pour laquelle l'énergie contenue dans le signal d'erreur pondéré ek pour une sous-fenétre, est minimale; cette séquence est sélectionnée pour le bloc en cours, puis le
gain optimum Gk est calculé.
Classiquement, la fonction A(z) du filtre pré-
dicteur à court terme 26 est de la forme: P A(z) = 1 - E a(i).z (1) i=1 Dans cette formule, qui utilise la notation classique en z, les coefficients a(i) constituent les
paramètres de prédiction linéaire. Leur nombre est géné-
ralement compris entre 8 et 16 pour des fenêtres de ms. Quant à la fonction de transfert B(z), elle peut
-
être de la forme 1-bz T et faire intervenir un retard T
allant de 40 à 120 échantillons.
Le filtre de pondération perceptuelle 30 a de
son côté une fonction de transfert W(z) qui est généra-
lement de la forme: W(z) = A(z)/A(z/y) avec y = 0,8 (2) En dépit de son intérêt, le procédé de codage qui vient d'être exposé ne peut pratiquement pas être mis en oeuvre en temps réel, du fait du volume. énorme de calculs requis pour rechercher la séquence d'innovation, (c'est- à-dire le vecteur d'excitation) optimale par K+1
parcours successifs de boucle, chaque parcours consti-
tuant le filtrage d'un vecteur d'excitation, par des
filtres à coefficients variables dans le temps.
La présente invention vise à fournir un procédé
de codage et un codeur à prédiction linéaire et excita-
tion par vecteurs de codage répondant mieux que ceux antérieurement connus aux exigences de la pratique, notamment en ce qu'elle-réduit d'au moins un ordre de grandeur le volume de calculs à effectuer pour le codage
d'un segment.
Pour cela l'invention propose un procédé de codage de parole, à prédiction linéair- et excitation vectorielle, permettant de coder des signaux de parole mis sous forme d'échantillons numérisés répartis en trames, suivant lequel on représente une trame de signal d'une part par des paramètres de prédiction, d'autre
part par une succession de vecteurs d'excitation conte-
nus dans un dictionnaire et par des gains d'amplifi-
cation de ces vecteurs, les vecteurs retenus étant déterminés par recherche du minimum de l'énergie d'un signal d'erreur obtenu par soustraction de chaque vecteur à son tour, après l'avoir soumis à un filtrage, à la trame du signal de parole, caractérisé en ce que, avant soustraction, on soumet: - chaque trame du signal de parole à un filtrage d'analyse à court terme et -à un filtrage de pondération perceptuelle à coefficients fixes dans le temps et - le vrecteur amplifié à un filtrage prédictif à long terme et au même filtrage de synhèse pondéré que le
signal de parole.
L'invention propose au surplus un procédé.du type ci-dessus défini dans lequel chaque séquence de
codage est constituée de plusieurs impulsions équidis-
tantes-séparées par des zéros, avantageusement binaires.
Ce procédé, qu'on peut qualifier de procédé à prédiction
linéaire et excitation par séquences d'impulsions régu-
lières, ou RPCELP, permet de réduire dans des propor-
tions très considérables la.durée de recherche de la séquence optimale, surtout si on fait un choix approprié - des caractéristiques du filtre de pondération
perceptuelle.
L'invention sera mieux comprise à la lecture de
la description qui suit de modes particuliers de
réalisation, donnés à titre d'exemples non limitatifs.
La description se réfère aux dessins qui l'accompagnent,
dans lesquels: - la figure 1, déjà mentionnée, est un schéma de principe d'un codeur de parole à prédiction linéaire et excitation vectorielle déjà connu - la figure 2, similaire à la figure 1, est une variante du schéma montrant une constitution possible de codeur de la figure 1, susceptible d'être simplifiée pour constituer un premier mode de réalisation de l'invention;
- les figures 3, 4 et 5 sont des schémas mon-
trant des évolutions successives du codeur de la figure 52; - la figure 6, similaire à la figure 5, montre
de façon plus complète un mode de réalisation de l'in-
vention réduisant encore le volume de calcul; - la figure 7 montre une répartition possible de séquences de codage dans le dictionnaire; - la figure 8 montre une autre constitution
possible du dictionnaire.
Dans le codeur de parole représenté schématique-
ment en figure 2 (o les éléments correspondant à ceux de la figure 1 sont désignés par le même numéro de référence) le filtre de pondération perceptuelle 30, placé à la sortie du soustracteur 28 sur la figure 1,
est reporté sur les deux branches d'entrée du soustra-
cteur sous forme de filtres 34 et 36, de fonction de transfert 1/A(z/y). On trouve ainsi en cascade, sur la branche affectée au signal d'origine S(n), le filtre 33 de fonction de transfert A(z) et le filtre 36 ayant la
même fonction de transfert que le filtre 34.
Le filtrage de tous les vecteurs par le filtre de synthèse, de fonction de transfert 1/A(z/Y) dont les coefficients varient dans le temps, représente un volume énorme de calculs. Ce volume est réduit de façon très considérable suivant un premier aspect de l'invention, en adoptant un filtre de pondération perceptuelle à petit nombre de coefficients fixes dans le temps, choisis en fonction des caractéristiques moyennes de la parole sur un long intervalle de temps. Le filtre de pondération perceptuelle a alors une fonction de transfert W'(z) qui peut s'écrire: W'(z) = A(z)/C(z/y) o C(z/-) est la fonction de transfert d'un prédicteur ? de parole à court terme, par exemple de la forme: 2 iz-i C(z/y) = 1-E a(i).-Y Z (3) i=1 Les fonctions de transfert des composants 34 et
36 de la figure 2 deviennent alors 1/C(z/-y).
Un autre mode de mise en oeuvre'de l'invention, pouvant être combiné au premier, apparait mieux en considérant les transformations successives apportées au
circuit de la figure 2 pour y aboutir.
Tout d'abord, comme indiqué sur les figures 3 et
4, la. contribution de la mémoire dans le filtre prédic-
teur à.long terme 24, de'fonction de transfert 1/B(z), et dans le filtre prédicteur à court terme pondéré de fonction de transfert 1/A(z/-Y), -est soustraite du signal d'origine ayant subi la pondération pour obtenir un
signal xn, avant le début de la recherche dans le dic-
tionnaire de vecteurs 20. Cette opération s'effectue sur la figure- 3 à l'aide d'un soustracteur 38 qui reçoit uniquement la composante de mémoire du filtre prédicteur
à long terme 24.
Ainsi, au cours de la procédure de recherche du
vecteur optimal, chaque vecteur ck est traitée unique-
ment par le filtre de synthèse pondéré 34.
On va maintenant montrer comment il est possible de réduire encore notablement le volume de calcul en faisant référence à la figure 4. Sur cette figure, chacun des filtres 34 et 36 a été montré décomposé en un filtre 34a ou 36a de fonction de transfert 1/A(z/y), sans mémoire, et un filtre 34b ou 36b correspondant
uniquement à la contribution des termes de mémoire.
Au cours de la recherche du vecteur optimal Ck, chaque vecteur ck amplifié avec le gain Gk n'est plus
traité que par le filtre de synthèse pondéré sans mé-
moire 1/A(z/y) qui fournit en sortie un signal z(n). Si on identifie par une tilde les grandeurs sans mémoire et si on désigne par: r le signal résiduel après soustraction des effets du prédicteur à long terme 24, x le signal original dont la redondance à long terme a été écartée dans le soustracteur 38 et qui a été pondéré par W(z), Zk le signal synthétisé, x et z0 les contributions des mémoires des filtres au calcul de x et z. On peut écrire: x = Hr + xo x = Hr o Zk = Gk.H ck + z L'opération de filtrage par le filtre 34a, sans mémoire, est exprimée ci-dessus par la convolution de deux séquences finies, représentée par le produit d'une matrice et d'un vecteur: zk = Gk H ck (4) o H est une matrice triangulaire inférieure LxL (L étant la longueur commune des séquences) dont les éléments sont tirés de la réponse impulsionnelle h(i) de 1/A(z/-) , de la forme: h(O) O 0.......... O h(1) h(O) 0.......... 0 H = h(2) h(1) h(O).......... 0 (5) h(L-1) h(L-2) h(L-3).......... h(O) qui se confond avec celle de 1/A(z/y) Le vecteur x' à l'entrée du soustracteur 28, après soustraction des effets de mémoire, peut lui-méme s'écrire: x'= Hr + xO - z0 L'énergie de l'erreur Ek pondérée pour le vecteur d'indice k (avec O < k / K) peut s'écrire: E(K) = I lx' - ZkIl x= lx - Gk H ck 12 (6)
Le processus de recherche de la séquence d'inno-
vation optimale (indice k de vecteur ck et gain d'ampli-
fication Gk) comporte deux étapes qui découlent de l'équation (6) si on tient compte du fait connu (J.P. ADOUL et coll.- "Fast -CELP coding based on algebraic codes"' Proc. ICASSP, April 1987) que minimiser l'énergie Ek revient à maximiser un produit scalaire Pw: - recherche de l'indice k pour lequel le produit scalaire Pw(k) est maximum: Pw(k) = (x't H ck)/IH ckll (7) - calcul du gain correspondant Gk: Gk = Pw(k)/ll-H ckl (8) - Le calcul d'un produit scalaire est évidemment plus rapide que la recherche d'une distance euclidienne, de sorte que le schéma de la figure 3 permet déjà à lui
seul de réduire le volume de calcui.
L'étape suivante de la démarche consiste à faire disparaître les termes de mémoire, c'est-à-dire les opérations schématisées en 34a et 36ar pour arriver à la
constitution montrée en figure 5.
Comme dans le.cas de la figure 2,r une simplifi-
cation importante consiste à substituer des filtres fixes de synthèse à fonction de transfert 1/C(z/y) aux filtres 34a et 36a de fonction 1/A(z/y) , ce qui revient - encore à adopter un filtre de pondération perceptuelle de la forme W'(z) = A(z)/C(z/y). Il n'y a plus à effectuer une opération de filtrage répétitive par 34a, dans la mesure o les vecteurs d'excitation sont stockés dans le dictionnaire 20, d'une part à l'état préfiltré
pour les appliquer directement'au circuit de maximisa-
tion de produit scalaire 38, d'autre part sous forme originale pour application à l'amplificateur 22 de gain Gk. La simplification apparalt immédiatement par une comparaison avec les-processus classiques de recherche
de minimum..
Un autre mode encore de mise en oeuvre de l'invention met en oeuvre un critère d'évaluation d'erreur à minimiser modifié. Les trames d'échantillons occupant chacun une fenêtre sont successivement appliquées; en conséquence, la réponse impulsionnelle du filtre pondéré de synthèse pour une trame (ou un bloc) intervient sur la trame suivante (ou le bloc
suivant). Pour écarter cet effet, on utilise l'amortis-
sement des filtres et on applique, au lieu d'une séquence constituée uniquement de L échantillons, une séquence constituée de L échantillons et J zéros, J étant choisi de façon que la réponse impulsionnelle du filtre de synthèse W(z)/A(z) soit pratiquement nulle après J échantillons. Une valeur J=10 est généralement suffisante pour que l'amortissement des filtres permette d'écarter les termes représentatifs de leur mémoire. La matrice de réponse impulsionnelle devient alors une matrice rectangulairedu type "bande" à (L+J)xL termes du type: h(0) 0 0.......... 0 h(1) h(0) 0.......... 0 h(2) h(1) h(0).......... O H = h(J-1 h(J-2)...... h(O)0.. 0 (10) O O h(0) O........................... h(J-1)
La matrice HtH = R est alors une matrice symé-
trique de Toeplitz, construite à partir de l'auto--
corrélation R(i) de la réponse impulsionnelle h(n). Ht désigne la transposée de H. L'erreur de mémoire qui apparait dans l'équation représentative de x' est alors suffisamment faible pour pouvoir être considérée comme nulle et l'équation (7) peut s'écrire: Pw(k) = (x H ck) / I1H Ckll = yt Ck/I H CkIl (10) t t t Le vecteur y = r H H peut être calculé de
façon précise, une seule fois par trame, par une opéra-
tion de filtrage, en utilisant un filtre adaptatif dont les coefficients sont les termes d'auto-corrélation
R(i).
Pour mettre en oeuvre ce procédé dant le cas d'un signal de parole échantillonné à 8 kHz et dont les échantillons sont répartis en trames de 160 échantillons occupant chacune 20 ms, on peut notamment fractionner chaque trame, après filtrage en 33 (figure 5), en quatre blocs de L=40 échantillons qui sont successivement appliqués au filtre 36a, suivis chaque fois de J=10 zéros. A sera alors calculé pour chaque trame tandis
que k et Gk seront calculés pour chaque bloc.
Une solution particulièrement intéressante dans ce cas consiste à utiliser des séquences d'impulsions de longueur L ayant une structure régulière constituée de q impulsions équidistantes séparées par D-1 zéros, la première impulsion occupant l'une des positions O à D-1 et le nombre de séquences étant tel que toutes ces positions sont successivement occupées. On peut ainsi donner une représentation satisfaisante de l'information de phase dans le signal d'excitation. La figure 7 montre, à titre d'exemple, quatre séquences. (pour k=O, 1, 2 et 3) identiques sauf en ce qu'elle correspondent à D=4 phases différentes. On peut considérer que le dictionnaire est constitué par un jeu de base de K/D séquences, avec une phase nulle et avec trois décalages
successifs, soit en tout K séquences.
L'excitation par séquences d'excitation régu-
lières réduit le nombre d'opérations à effectuer, du fait que beaucoup des produits à effectuer sont nuls, l'un des facteurs étant un zéro dont la position est connue pour chaque échantillon. On peut encore simpli- fier les calculs en constituant les séquences uniquement d'échantillons binaires ne pouvant prendre que les valeurs +1, -1 (et 0), comme indiqué sur la figure 8. En effet toutes les séquences contiennent alors la même énergie; la recherche de la séquence optimum s'effectue avec des produits purement scalaires et revient à chercher le vecteur binaire qui donne le meilleur résultat. On peut à sujet noter que le document EP-A-O 487 concerne un procédé de codage MPLPC suivant lequel il faut successivement déterminer une phase optimale d'impulsions, puis chercher l'amplitude optimale de toutes les impulsions constituant séquence parmi des valeurs discrètes, quantifiées par exemple sur
3 bits.
Dans le cas du critère modifié et d'une excita-
tion par séquences régulières, et notamment dans le cas de séquences constituées d'échantillons binaires, et à la condition supplémentaire que l'auto-corrélation soit normalisée et présente des termes nuls dont l'écartement correspond aux échantillons non nuls des séquences, les termes H ck deviennent tous égaux et on a: IIH ckl2 = 3ldmI2 (11) o dm désigne l'une des séquences (au nombre de K/D) résultant de la décimation des composantes des K vecteurs par élimination des zéros; la séquence dm pour
0 e k 4 3 est donnée en figure 7 à titre d'exemple.
Si les séquences sont normalisées, la procédure de recherche se limite à la recherche de la séquence t pour laquelle le produit scalaire P(k) = yt. ck est
maximum.
Les conditions nécessaires à l'applicabilité de la formule (11) peuvent notamment être obtenues: - soit en adoptant un filtre fixe R tel que R(iD) soit nul pour i > 0, - soit en adoptant un filtre à coefficients variables, mais dont la réponse impulsionnelle finie (RIF) est tronquée pour les indices d'échantillons supérieurs à D. Le codeur présente alors la constitution de principe montrée en figure 6. Une opération de filtrage unique est effectuée sur la trame de signal de parole par le filtre 33. La séquence ck testée, sous forme qui n'a plus besoin d'être préfiltrée, est appliquée au circuit 32 de calcul du produit scalaire ckt. y et de détermination du maximum, pour lequel un ordre de sélection d'. indice est envoyé en 40. La séquence Ck amplifiée en 22 est appliquée au prédicteur à long terme 24, représenté avec un seul coefficient b. Le terme r est formé en soustrayant la sortie du prédicteur à long terme 24 de la sortie du filtre 34 sur la voie de parole, dans le soustracteur 38. Le filtre 42 qui reçoit le résidu r a une réponse fixe R(z) représentée par-une
matrice de Toeplitz symétrique.
La recherche du vecteur optimal peut alors
s'effectuer par un nombre réduit d'opérations de multi-
plication et d'addition, sous la réserve que la réponse soit tronquée si le filtre est variable, par exemple par la démarche suivante si les vecteurs d'excitation régulière sont binaires: - détermination de la phase qui donne une valeur maximale à M(p): q-1 M(p) = E Iy(p+iD) I i=O i4 puis, parmi les vecteurs ayant la phase retenue, sélection du vecteur dm tel que t y.ck = M(p) c'est-à-dire: dm(i) = signe de y(p+iD) pour i = 0,..., q-1 Une fois sélectionné le vecteur optimal, le gain Gk à retenir s'en déduit directement, puisque IIH ckl[2 est égal à une valeur constante q, quelle que soit la valeur de k, dans le cas de vecteurs binaires qui ont
tous la même norme.
Ce processus réduit le nombre de calculs requis dans un rapport qui est typiquement de trois ordres de grandeur environ par rapport au procédé CERT classique, et ce quelle que soit la longueur L choisie pour les
blocs de parole.
Les données à transmettre par le multiplexeur 18 seront: - le coefficient unique b et la période T (correspondant à la périodicité du signal de parole) du filtre prédicteur à long terme 24, une ou plusieurs fois
par fenêtre, les coefficients a du filtre 33, de fonc-
tion de transfert A(z), une fois par fenêtre, - l'indice k du vecteur optimal et le gain correspondant Gk, une fois par bloc correspondant à une
sous-fenêtre de par exemple 40 échantillons.
Le gain Gk est, en vue de la transmission, quan-
tifié dans un quantificateur 46. Chaque trame de signal
est fractionnée en plusieurs blocs, une mémoire inter-
médiaire 48 doit être interposée entre les composants 33
et 44.
Il faut au surplus noter que, du fait que l'ex-
citation est binaire et régulière, elle est peu sensible aux erreurs de transmission: une erreur modifiant la
valeur d'un bit ne modifie le vecteur que localement.
Les bits de phase en nombre réduit peuvent être protégés
par un code correcteur.

Claims (7)

REVENDICATIONS
1. Procédé de codage de parole, à prédiction linéaire et excitation vectorielle, permettant de coder des signaux de parole mis sous forme d'échantillons numérisés répartis en trames, suivant lequel on représente une trame de signal d'une part par des paramètres de prédiction, d'autre part par une succession de vecteurs d'excitation contenus dans un dictionnaire (20) et par des gains (Gk) d'amplification de ces vecteurs, les vecteurs retenus étant déterminés par recherche du minimum de l'énergie d'un signal d'erreur obtenu par soustraction de chaque vecteur à son tour, après l'avoir soumis-à un filtrage, à-la trame du signal de parole, caractérisé en ce que, avant soustraction, on soumet: - chaquetrame du signal de parole à un filtrage d'analyse à court terme et à un filtrage de synthèse pondéré, à coefficients éventuellement fixes dans le temps et - le vecteur amplifié à un filtrage prédictif à long terme et au même filtrage de synthèse pondéré
perceptuelle que le signal de parole.-
2. Procédé selon la revendication 1, caractérisé en ce que tous les vecteurs de codage sont constitués du même nombre d'impulsions, équidistantes et séparées par
des zéros.
3. Procédé selon la revendication 2, caractérisé
en ce que les impulsions sont binaires.
4. Procédé selon la revendication 2 ou 3, carac-
térisé en ce que l'on effectue chaque recherche du mini-
mum d'énergie du signal d'erreur sur un ensemble comprenant, en plus des échantillons réels d'un bloc constituant une fraction de la trame, des échantillons
nuls en nombre suffisant pour que-la réponse impulsion-
- nelle de filtrage prédictif correspondant au dernier échantillon réel soit sensiblement amortie, le filtrage
étant effectué sans mémorisation d'un bloc à-l'autre.
5. Procédé selon la revendication 2 ou 3, carac-
térisé en ce que chaque trame du signal de parole, après avoir été soumise à un filtrage prédictif d'analyse à court terme A(z) est appliquée à l'entrée additive d'un soustracteur (28) qui reçoit sur son entrée soustractive la contribution de la 'mémoire du filtre prédictif à long terme (24), - on soumet la sortie du soustracteur à un filtrage (42), - on calcule le produit scalaire (38) de la sortie filtrée du soustracteur et de chaque séquence non amplifiée à son tour en recherchant la séquence pour
laquelle le produit scalaire est maximum.
6. Procédé selon la revendication 5, caractérisé
en ce que le filtrage (42) est à coefficients fixes.
7. Procédé de codage de parole à prédiction linéaire et excitation vectorielle, permettant de coder des signaux de parole mis sous forme d'échantillons numérisés répartis en trames et suivant lequel on représente chaque bloc constituant une fraction de trame
de signal par l'un des vecteurs contenus dans un dic-
tionnaire (20) et par un gain (Gk) d'amplification du vecteur, le vecteur retenu étant déterminé par recherche du minimum de l'énergie d'un signal d'erreur obtenu par soustraction de chaque vecteur à son tour, préalablement soumis à un filtrage, à la trame du signal de parole, caractérisé en ce que, avant soustraction, on soumet: - chaque trame du signal de parole à un filtrage d'analyse à court terme A(z) et à un filtrage de synthèse pondéré 1/C(z/y) à coefficients fixes dans le temps, et - le vecteur amplifié à un filtrage prédictif à
long terme 1/B(z) et au même filtrage de synthèse pon-
déré que les trames du signal de parole.
FR8807846A 1988-06-13 1988-06-13 Procede de codage et codeur de parole a prediction lineaire Expired - Fee Related FR2632758B1 (fr)

Priority Applications (4)

Application Number Priority Date Filing Date Title
FR8807846A FR2632758B1 (fr) 1988-06-13 1988-06-13 Procede de codage et codeur de parole a prediction lineaire
DE68915057T DE68915057T2 (de) 1988-06-13 1989-06-13 Kodierungsverfahren und linearer Prädiktionssprachkodierer.
ES89401644T ES2052043T3 (es) 1988-06-13 1989-06-13 Procedimiento de codificacion y codificador de palabra con prediccion lineal.
EP89401644A EP0347307B1 (fr) 1988-06-13 1989-06-13 Procédé de codage et codeur de parole à prédiction linéaire

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR8807846A FR2632758B1 (fr) 1988-06-13 1988-06-13 Procede de codage et codeur de parole a prediction lineaire

Publications (2)

Publication Number Publication Date
FR2632758A1 true FR2632758A1 (fr) 1989-12-15
FR2632758B1 FR2632758B1 (fr) 1991-06-07

Family

ID=9367205

Family Applications (1)

Application Number Title Priority Date Filing Date
FR8807846A Expired - Fee Related FR2632758B1 (fr) 1988-06-13 1988-06-13 Procede de codage et codeur de parole a prediction lineaire

Country Status (4)

Country Link
EP (1) EP0347307B1 (fr)
DE (1) DE68915057T2 (fr)
ES (1) ES2052043T3 (fr)
FR (1) FR2632758B1 (fr)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0964393A1 (fr) * 1990-12-21 1999-12-15 BRITISH TELECOMMUNICATIONS public limited company Codage de la parole
ES2042410B1 (es) * 1992-04-15 1997-01-01 Control Sys S A Metodo de codificacion y codificador de voz para equipos y sistemas de comunicacion.
FR2720849B1 (fr) * 1994-06-03 1996-08-14 Matra Communication Procédé et dispositif de prétraitement d'un signal acoustique en amont d'un codeur de parole.
CN101615394B (zh) 2008-12-31 2011-02-16 华为技术有限公司 分配子帧的方法和装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1337217C (fr) * 1987-08-28 1995-10-03 Daniel Kenneth Freeman Codage vocal

Non-Patent Citations (7)

* Cited by examiner, † Cited by third party
Title
ICASSP 85 PROCEEDINGS - IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH, AND SIGNAL PROCESSING, 26-29 mars 1985, Tampa, Florida, vol. 3, pages 965-968, IEEE, New York, US; E.F.DEPRETTERE et al.: "Regular excitation reduction for effective and efficient LP-coding of speech" *
ICASSP 86 PROCEEDINGS - IEEE-IECEJ-ASJ INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH, AND SIGNAL PROCESSING, 7-11 avril 1986, Tokyo, vol. 2, pages 857-850, IEEE, New York, US; A.LE GUYADER et al.: "A robust 16 KBITS/S vector adaptive predictive coder for mobile communications" *
ICASSP 86 PROCEEDINGS - IEEE-IECEJ-ASJ INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH, AND SIGNAL PROCESSING, 7-11 avril 1986, Tokyo, vol. 4, pages 3055-3058, IEEE, New York, US; G.DAVIDSON et al.: "Complexity reduction methods for vector excitation coding" *
IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, vol. 6, no. 2, février 1988, pages 353-363, IEEE, New York, NY., US; P.KROON et al.: "A class of analysis-by-synthesis predictive coders for high quality speech coding at rates between 4.8 and 16 kbits/s" *
MILCOM 86 - 1986 IEEE MILITARY COMMUNICATIONS CONFERENCE, 5-9 octobre 1986, Monterey, California, Conference Record, vol. 2, pages 32.6.1 - 32.6.5, IEEE, New York, US; S.A.TOWNES et al.: "4800 B/S speech compression techniques for mobile satellite systems" *
PROCEEDINGS: ICASSP 87 - 1987 INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH, AND SIGNAL PROCESSING, 6-9 avril 1987, Dallas, Texas, vol. 3 des 4, pages 1354-1357, IEEE, New York, US; D.LIN: "Speech coding using efficient pseudo-stochastic block codes" *
PROCEEDINGS: ICASSP 87 - 1987 INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH, AND SIGNAL PROCESSING, 6-9 avril 1987, Dallas, Texas, vol. 4, pages 1957-1960, IEEE, New York, US; J.-P.ADOUL et al.: "Fast CELP coding based on algebraic codes" *

Also Published As

Publication number Publication date
EP0347307A3 (en) 1990-12-27
DE68915057T2 (de) 1994-08-18
EP0347307A2 (fr) 1989-12-20
ES2052043T3 (es) 1994-07-01
DE68915057D1 (de) 1994-06-09
EP0347307B1 (fr) 1994-05-04
FR2632758B1 (fr) 1991-06-07

Similar Documents

Publication Publication Date Title
EP0608174B1 (fr) Systeme de codage-décodage prédictif d&#39;un signal numérique de parole par transformée adaptative à codes imbriqués
EP0749626B1 (fr) Procede de codage de parole a prediction lineaire et excitation par codes algebriques
EP1316087B1 (fr) Dissimulation d&#39;erreurs de transmission dans un signal audio
EP0782128B1 (fr) Procédé d&#39;analyse par prédiction linéaire d&#39;un signal audiofréquence, et procédés de codage et de décodage d&#39;un signal audiofréquence en comportant application
EP2002428B1 (fr) Procede de discrimination et d&#39;attenuation fiabilisees des echos d&#39;un signal numerique dans un decodeur et dispositif correspondant
EP3330964B1 (fr) Ré-échantillonnage d&#39;un signal audio pour un codage /décodage à bas retard
EP1320087A2 (fr) Synthèse d&#39;un signal d&#39;excitation utilisé dans un générateur de bruit de confort
EP0428445B1 (fr) Procédé et dispositif de codage de filtres prédicteurs de vocodeurs très bas débit
EP1267325A1 (fr) Procede pour detecter l&#39;activite vocale dans un signal, et codeur de signal vocal comportant un dispositif pour la mise en oeuvre de ce procede
EP0506535B1 (fr) Procédé et système de traitement des pré-échos d&#39;un signal audio-numérique codé par transformée fréquentielle
FR2762464A1 (fr) Procede et dispositif de codage d&#39;un signal audiofrequence par analyse lpc &#34;avant&#34; et &#34;arriere&#34;
WO2006114494A1 (fr) Procede d’adaptation pour une interoperabilite entre modeles de correlation a cout terme de signaux numeriques
EP1836699B1 (fr) Procédé et dispositif de codage audio optimisé entre deux modèles de prediction à long terme
EP0490740A1 (fr) Procédé et dispositif pour l&#39;évaluation de la périodicité et du voisement du signal de parole dans les vocodeurs à très bas débit.
EP2347411B1 (fr) Attenuation de pre-echos dans un signal audionumerique
FR2702075A1 (fr) Procédé de génération d&#39;un filtre de pondération spectrale du bruit dans un codeur de la parole.
EP3192073B1 (fr) Discrimination et atténuation de pré-échos dans un signal audionumérique
EP0347307B1 (fr) Procédé de codage et codeur de parole à prédiction linéaire
WO2023165946A1 (fr) Codage et décodage optimisé d&#39;un signal audio utilisant un auto-encodeur à base de réseau de neurones
EP1383109A1 (fr) Procédé et dispositif d&#39;encodage de la parole à bande élargie
EP0311494B1 (fr) Procédé et installation de transmission numérique de parole entre mobiles
CA2079884A1 (fr) Procede et dispositif de codage bas debit de la parole
EP1192618B1 (fr) Codage audio avec liftrage adaptif
FR2741743A1 (fr) Procede et dispositif pour l&#39;amelioration de l&#39;intelligibilite de la parole dans les vocodeurs a bas debit
FR2616026A1 (fr) Procede de codage micda et installation de transmission ou de stockage d&#39;informations utilisant un tel procede

Legal Events

Date Code Title Description
CD Change of name or company name
CJ Change in legal form
TP Transmission of property
ST Notification of lapse

Effective date: 20060228