Vous êtes sur la page 1sur 39

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/230777160

Codage Conjoint Source-Canal des paramètres LSF du codeur


FS1016 : application de la quantification vectorielle par treillis
optimisée pour un canal bruité

Article  in  annals of telecommunications - annales des télécommunications · March 2007


DOI: 10.1007/BF03253269

CITATIONS READS

5 166

All content following this page was uploaded by Merouane Bouzid on 27 May 2014.

The user has requested enhancement of the downloaded file.


426 pp. 426-463

Codage conjoint source-canal


des paramètres LSF du codeur FS1016 :
application de la quantification vectorielle
par treillis optimisée pour un canal bruité
Merouane BOUZID*

Résumé
Dans cet article, nous présentons un système de codage optimisé à base de quantification
vectorielle codée par treillis (TCVQ) conçu pour le codage efficace et robuste des paramètres
spectraux LSF (paires de raies spectrales) à bas débit. Le but de ce système, que nous avons
appelé au début « Encodeur LSF-OTCVQ », est de réaliser une quantification transparente à
bas débit des paramètres LSF du codeur de parole de la norme fédérale FS1016. Après avoir
prouvé l’efficacité de nos codeurs LSF-OTCVQ (avec distance pondérée) dans le cas des trans-
missions idéales à travers un canal non bruité, nous nous sommes intéressé par la suite à
l’amélioration de leurs robustesses pour des transmissions à travers un canal bruité. Pour
protéger implicitement les indices de transmission de nos codeurs LSF-OTCVQ incorporés dans
le FS1016, nous avons utilisé un codage conjoint source-canal mis en œuvre par la méthode
de quantification vectorielle optimisée pour un canal bruité (QVOC). Dans le cas des trans-
missions par canal bruité, nous montrerons que notre nouveau système de codage global,
que nous avons appelé « Encodeur COVQ-LSF-OTCVQ », pourra contribuer significativement à
l’amélioration des performances du FS1016 en assurant une bonne robustesse de codage de
ses paramètres spectraux LSF.
Mots clés : Théorie signal, Quantification bloc, Codage treillis, Codage source, Codage canal, Bruit fond,
Robustesse système, Codage parole, Raie spectrale, Codeur, Bas débit, Transmission numérique

JOINT SOURCE-CHANNEL CODING OF THE FS1016 CODER LSF


PARAMETERS : APPLICATION OF THE CHANNEL OPTIMIZED
TRELLIS CODED VECTOR QUANTIZATION

Abstract
In this paper, we present an optimized trellis coded vector quantization (TCVQ) coding
system designed for the effective and robust coding of LSF spectral parameters at low bit rate.
The aim of this system, called at the beginning « LSF-OTCVQ Encoder », is to achieve a low bit
rate transparent quantization of LSF parameters of the US Federal Standard (FS1016) speech

* Laboratoire Communication Parlée et Traitement du signal (LCPTS), Faculté d’Électronique et d’Informatique,


Université des Sciences et de la Technologie Houri Boumediene (USTHB) – BP. 32, El-Alia, Bab-Ezzouar,
ALGER, 16111, ALGÉRIE. Fax : 213- 21- 24. 76. 07, mbouzid@yahoo.com, mbouzid@usthb.dz

ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007 1/38


M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF 1719

coder. Once the effectiveness of our LSF-OTCVQ encoders (with weighted distance) was proven
in the case of ideal transmissions over noiseless channel, we were interested after in the
improvement of their robustnesses for real transmissions over noisy channel. To implicitly
protect the transmission indices of our LSF-OTCVQ coders incorporated in the FS1016, we used
a joint source-channel coding carried out by the channel optimized vector quantization
(COVQ) method. In the case of transmissions over noisy channel, we will show that our new
encoding system, called “COVQ-LSF-OTCVQ Encoder”, would be able to contribute signifi-
cantly in the improvement of the FS1016 performances by ensuring a good coding robust-
ness of its LSF spectral parameters.
Key words : Signal theory, Block quantization, Treillis coding, Source coding, Channel coding, Background
noise, System robustness, Speech coding, Spectrum line, Coding circuit, Low rate, Digital transmission.

Sommaire
I. Introduction VI. Codage efficace et robuste des para-
II. Quantification vectorielle mètres LSF du codeur FS1016: Applica-
III. Système de codage optimisé à base de tion du système de codage LSF-OTCVQ
quantification vectorielle codée par treillis VII. Conclusion
IV. Quantification vectorielle optimisée VIII. Annexe : codeur de parole de la
pour un canal bruité norme fédérale FS1016
V. Codage à bas débit des paramètres LSF Bibliographie (55 ref.)
par TCVQ optimisée

I. INTRODUCTION

Dans les systèmes de codage de la parole, l’information spectrale à court terme d’un
signal de parole est souvent modélisée par la réponse fréquentielle d’un filtre tout-pôles dont
la fonction de transfert est donnée par H(z) = 1/A(z), avec A(z) = 1 + a1 z–1 + … + ap z–p [1].
Pour un codage en bande téléphonique (300-3400 Hz, fe = 8 kHz), les paramètres de ce filtre
sont déterminés par une analyse par prédiction linéaire d’ordre p = 10. Les dix paramètres
{ai}i = 1, 2,…, 10, connus généralement sous le nom de coefficients de prédiction linéaire (LPC)
[2, 3], jouent un rôle important dans la préservation de la qualité du signal de parole codé sur
toute la largeur de bande. Par conséquent, le plus grand défi dans la quantification des para-
mètres LPC est de réaliser une qualité de quantification transparente [4], avec un débit binaire
minimal tout en maintenant la mémoire et la complexité des calculs à un niveau assez bas.
En pratique, les coefficients LPC ne sont pas appropriés pour une transmission directe vu
qu’ils ont des propriétés de quantification médiocres. Ainsi, plusieurs représentations para-
métriques équivalentes ont été formulées afin de les convertir en paramètres beaucoup plus
appropriés à la quantification. Parmi les représentations qui se sont avérées plus efficaces, les
paires de raies spectrales LSP (Line Spectrum Pairs) sont sans doute les plus utilisées [5]. Ces
paramètres sont également connus sous le nom de fréquences de raies spectrales LSF (Line
Spectral Frequencies).

2/38 ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007


1720 M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF

Les paramètres LSF qui sont liés aux zéros de polynômes dérivés de A(z) [3] présentent un
certain nombre de propriétés intéressantes. Ces propriétés rendent les LSF un ensemble de
paramètres de transmission très approprié pour les coefficients LPC [4, 6]. Dans une trame,
par exemple, les paramètres LSF sont ordonnés et bornés à l’intérieur d’un intervalle entre 0 et
0,5. Cette propriété d’ordonnancement croissant des LSF est une condition nécessaire et suffi-
sante pour la stabilité du filtre-LPC de synthèse. D’autre part, la distorsion spectrale causée
par la perturbation d’un paramètre LSF est localisée sur un certain intervalle de fréquence
autour de la valeur du paramètre perturbé. Cette propriété de sensibilité spectrale localisée
aide à donner différents poids à différent LSF dans le sens ou certains paramètres sont plus
importants que d’autres. En outre, la position d’un formant dans le spectre du signal de
parole est liée à un rapprochement de deux paramètres LSF consécutifs autour de la fréquence
du formant considéré. Un espacement large entre deux paramètres LSF correspond à une val-
lée. Ainsi, il est donc possible d’identifier approximativement les zones auditivement impor-
tantes dans le spectre du signal de parole. Exploitant ces propriétés, divers schémas de
codage basés sur la quantification scalaire (QS) et vectorielle ont été développés dans le passé
pour la quantification efficace des paramètres spectraux LSF. Plusieurs travaux ont démontrés
que les schémas conçus à base de quantificateurs vectoriels (VQs), comme les VQs multi-
étages [7], VQs divisés [4]…, peuvent réaliser la qualité de quantification transparente des
LSF à des débits binaires plus bas comparés à ceux conçus à base de quantificateur scalaire
(SQ) [8].
Dans cet article, nous présentons un système de codage optimisé à base de quantification
vectorielle codée par treillis (TCVQ) conçu pour le codage efficace et robuste des paramètres
LSF. Le but de ce système, appelé au début « Encodeur LSF-OTCVQ », est de réaliser une quan-
tification transparente des paramètres LSF en exploitant la dépendance intra-trame entre les
plus proches paires de paramètres LSF. Dans le cas des transmissions idéales à travers un
canal non bruité, nous avons déjà prouvé dans [9], que nos codeurs LSF-OTCVQ (avec distance
pondérée) pouvaient réaliser de bonnes performances lors du codage des paramètres LSF, par-
ticulièrement ceux du codeur de parole de la norme fédéral FS1016. En effet, nous avons
montré que le codeur LSF-OTCVQ de 27 bit/trame produit une qualité perceptuelle équivalente
à celle obtenue quand les paramètres LSF ne sont pas quantifiés.
Une fois que l’efficacité de nos codeurs LSF-OTCVQ a été prouvée dans le cas d’un canal
idéal non bruité, nous nous sommes intéressés, par la suite, à l’amélioration de leurs robus-
tesses pour des transmissions à travers un canal bruité. En effet, les performances prévues par
les codeurs de source, conçus selon des hypothèses de transmissions idéales, se dégradent
rapidement lorsqu’il s’agit de transmettre les données source à travers un canal réel qui est
généralement bruité. La minimisation des dégradations causées par les bruits des canaux est
l’un des problèmes majeurs dans les systèmes de communication numérique.
Dans le domaine du codage de la parole à bas débit, l’objectif essentiel est de réduire les
débits des codeurs de parole tout en maintenant une bonne qualité de transmission. En géné-
ral, lors de la conception des systèmes de codage de la parole, les effets du bruit de transmis-
sion sont négligés. C’est la tâche du codage de canal [10, 11] de fournir la protection
nécessaire pour éviter une grande perte de la qualité lors de la transmission. Un codage de
canal « séparé » redondant est conventionnellement utilisé afin d’assurer une protection
explicite aux paramètres des codeurs de parole contre d’éventuelles erreurs de canal. Ce
codage utilise des bits de redondance (codes détecteurs/correcteurs d’erreurs) pour le
contrôle des erreurs de transmission. Ces codes, qui sont conçus séparément du codeur de
source, peuvent fournir une bonne protection aux paramètres sensibles aux erreurs du canal

ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007 3/38


M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF 1721

mais au prix de l’augmentation du débit de transmission et de la complexité du codage ou du


décodage.
Cependant, à bas débit où les contraintes en complexité et en délais de traitement sont
très sévères, ce codage de canal redondant n’est pas forcement recommandé. Ceci est dû
principalement aux divers inconvénients des hypothèses de l’approche de la conception sépa-
rée [12], suggérée par Shannon dans son théorème de séparation [13, 14]. Selon Shannon, le
problème de codage de source et canal peut être traité de façon complètement séparée, sans
aucune perte d’optimalité, à condition d’utiliser des codeurs très complexes avec des blocs de
traitement extrêmement longs, tant au niveau source que canal. Dans des applications réelles,
ces hypothèses de Shannon ne sont pas toujours vérifiées. En effet, les considérations pra-
tiques imposent souvent des contraintes sur la complexité, la disponibilité des ressources et
les délais de codage. Ce qui a poussé les chercheurs à penser à une solution conjointe au pro-
blème d’optimisation du codage de source et de canal de sorte qu’on puisse réduire la com-
plexité des deux côtés, tout en fournissant des performances proches de l’optimum. C’est
dans ce contexte qu’ils ont introduits le dit codage conjoint source-canal (CCSC), dans le quel
on se préoccupe de la minimisation de la distorsion totale en considérant simultanément l’im-
pact des erreurs de transmission et de la distorsion du codage de source [15, 16, 17].
Actuellement, le codage combiné pour la compression des données de source et la pro-
tection contre le bruit des canaux est devenu l’un des objectifs essentiels dans la conception
des systèmes de transmissions ; particulièrement ceux conçus à base de quantificateur (sca-
laire ou vectoriel) [18, 19, 20, 21]. Plusieurs catégories d’approches de conception conjointe
de codage de source et de canal ont été développées pour des transmissions fiables de don-
nées sur un canal bruité [22, 23, 24]. La plupart de ces travaux ont prouvés l’efficacité du
CCSC dans la protection implicite des données, en maintenant un débit constant et une com-
plexité réduite. Ceci nous a motivé à utiliser ce type de codage dans le domaine de la parole
à bas débit.
Pour protéger implicitement nos codeurs LSF-OTCVQ incorporés dans le FS1016, nous
avons adopté une méthode appartenant à une catégorie de base du CCSC relative aux quantifi-
cateurs qui sont conçus en tenant compte de l’erreur de canal. Il s’agit de la quantification
vectorielle optimisée pour un canal bruité (QVOC). Nous verrons, dans un premier temps,
comment adapter et appliquer la QVOC dans la conception robuste d’un nouveau système de
codage à base du codeur LSF-OTCVQ, afin de protéger implicitement certains de ses indices.
Pour terminer, nous généraliserons l’étude à la protection complète de tous les indices de
notre nouveau système de codage que nous avons dénoté par « Encodeur COVQ-LSF-OTCVQ ».
Nous montrerons que notre système de codage global COVQ-LSF-OTCVQ pourra contribuer
significativement à l’amélioration des performances du FS1016 en assurant une bonne robus-
tesse de codage de ses paramètres spectraux LSF.
Cet article est organisé comme suit. Dans la section II, nous rappelons brièvement le prin-
cipe de base des systèmes de codage par quantification vectorielle. Dans la section III, une
description détaillée des étapes de conception d’un système de codage optimisé à quantifi-
cation vectorielle codée par treillis (OTCVQ) est donnée. Des exemples de résultats compara-
tifs, obtenus lors du codage de sources sans mémoire en utilisant des codeurs TCVQ/OTCVQ,
sont présentés dans cette section. Dans la section IV, nous décrirons la méthode du codage
conjoint par quantification vectorielle optimisée pour un canal bruité (QVOC). Un algorithme
basé sur une version modifiée de l’algorithme LBG de la QV sera développé afin de concevoir
le système codeur/décodeur QVOC, optimisé à l’erreur du canal. Les performances du sys-
tème QVOC appliqué au codage de sources sans mémoire, opérant à travers un canal bruité de

4/38 ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007


1722 M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF

type binaire symétrique (BSC), sont présentées en fin de section. L’application du système
OTCVQ pour le codage des paramètres LSF à bas débit est décrite dans la section V. Des résul-
tats de simulation, en utilisant deux mesures de distance (pondérée et non pondérée) dans
l’étape de conception et de fonctionnement du codeur LSF-OTCVQ, sont présentés dans cette
section. Dans la section VI, nous appliquons notre codeur LSF-OTCVQ (avec distance pondé-
rée) pour quantifier et coder les paramètres LSF d’un codeur de parole de la norme fédérale
FS1016. Des tests objectifs et subjectifs ont été effectués au début afin d’évaluer les perfor-
mances du codeur (incorporé dans le FS1016) dans le cas idéal non bruité. Afin d’améliorer
les performances de nos codeurs dans le cas des transmissions par canal bruité, la robustesse
des codeurs LSF-OTCVQ en présence des erreurs de canal a été étudiée. Un CCSC par QVOC sera
utilisé pour donner une robustesse aux dictionnaires des codeurs LSF-OTCVQ incorporés dans
le FS1016. Des conclusions sont rapportées dans la section VII.

II. QUANTIFICATION VECTORIELLE

La quantification vectorielle (QV) est connue comme une technique de codage de source
efficace dans plusieurs applications de la communication numérique. Elle joue un rôle impor-
tant dans le domaine du codage de la parole et de l’image à bas débit. Un quantificateur vec-
toriel VQ (Vector Quantizer), de dimension k et de taille L, est défini comme une fonction Q
d’un espace euclidien ℜ k vers un sous-ensemble fini Y de ℜ k composé de L niveaux de quan-
tification [25]. Il associe à chaque vecteur source x de k échantillons un niveau de quantifi-
cation correspondant :

(1) Q : ℜk → Y

x → yi

Avec Y = {y0, y1,…, yL−1} et yi ∈ ℜ k pour 0 ≤ i ≤ L – 1. Le sous-ensemble Y est commu-


nément appelé dictionnaire (ou alphabet dans le cas scalaire) et les niveaux de quantification
yi sont appelés vecteurs-code ou centroïdes. Pour des raisons de commodité, on suppose sou-
vent que la taille du dictionnaire Y est de la forme L = 2n, où n est le nombre de bits alloués à
chaque indice d’un vecteur-code yi. Pour une abréviation de notation, l’indice binaire i est
écrit comme un entier positif ou nul. L’ensemble des L indices binaires est généralement noté
par {0,1}n [26]. Le débit du VQ est donné en nombre de bits par échantillon :
1
(2) R =  log2 (L)
k
Le principe de codage d’une séquence de vecteurs source par un système à QV est d’asso-
cier à chaque vecteur source l’indice binaire d’un vecteur-code tel que la distance entre ce
vecteur-code et le vecteur source soit minimisée. Par la suite, les indices sélectionnés seront
transmis au récepteur qui va décoder les vecteurs-code associés aux indices reçus à l’aide
d’une réplique du dictionnaire. Ces vecteurs-code seront utilisés comme des approximations
des vecteurs source originaux. En général, l’opération de quantification entraîne une perte
d’information irréversible, qui se traduit par une dégradation évaluée par une certaine mesure
de distorsion. Pour un quantificateur Q quelconque, une mesure de distance d(.,.) et un vec-

ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007 5/38


M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF 1723

teur source X aléatoire dans ℜ k, la distorsion moyenne due à la QV de la source est donnée
par la formule générale suivante [25, 27] :

(3) D = E (d(X, Q (X))) = 


x ∈ℜ k
d(x, Q (x)) p(x) dx

où E est l’espérance mathématique et p(x) est la fonction densité de probabilité (pdf) de X qui
représente, dans ce cas, la pdf conjointe des composants du vecteur X.
Le principe de conception d’un système de codage à QV consiste a décomposer l’espace
des vecteurs source x de dimension k en L classes disjointes (régions de voronoï) Ri et asso-
cier à chaque classe un représentant yi. Il s’agit donc d’opérer une partition de ℜ k en L
classes Ri :

(4) Ri = {x ∈ ℜ k : Q (x) = yi}, pour chaque i ∈ {0,1}n,

ou l’on distingue dans chacun d’elles un vecteur particulier yi (centroïde). Un VQ est complè-
tement décrit par sa partition {Ri, i ∈ {0,1}n} et le dictionnaire Y. Pour un VQ donné (parti-
tion et dictionnaire), la distorsion moyenne peut être formulée comme suit [25] :


L –1
(5) D = 1
k
 d(x, yi) p(x)  dx.
i=0 x ∈Ri

On considère souvent que la mesure de distance entre un vecteur source x et son repré-
sentant y = Q(X) est du type euclidienne quadratique :
k
d(x, y) = ⏐⏐x – y⏐⏐ =  (x ( j) – y( j))2
2
(6)
j=1

En pratique, selon certaine suppositions statistiques (stationnarité et ergodicité), la distor-


sion moyenne totale peut être formulée simplement par [25, 27] :

1 N
(7) D =   d(xi, Q(xi))
Ni=1
où N est la taille de la séquence de vecteurs source de dimension k. Pour un débit donné, la
conception optimale d’un VQ se base donc sur le principe de recherche de la partition
{R0, …, RL – 1} et les représentants {y0, …, yL – 1} qui minimisent la distorsion D. La
recherche de l’optimum global est un problème très complexe; car il faut chercher simulta-
nément la meilleure partition et les meilleurs vecteurs-code, telle que la distorsion moyenne
totale D soit minimisée. Pour résoudre ce problème, le VQ doit vérifier deux conditions
nécessaires d’optimalité; où la partie de codage du VQ doit être optimale étant donné la
partie de décodage et réciproquement. Ainsi, la conception d’un VQ optimal est réalisée
d’une manière itérative en vérifiant successivement les deux conditions d’optimalité sui-
vantes [25, 27] :
1. Étant donné le dictionnaire Y = {y0, y1,…, yL–1}, la partition optimale est celle qui
vérifie :

(8) Ri = {x : d(x, yi) ≤ d(x, yj), ∀j ≠ i, j ∈ {0 … L –1}}

C’est la règle du plus proche voisin (Nearest Neighbor Condition).

6/38 ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007


1724 M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF

2. Étant donné la partition {Ri, i = 0,…, L – 1}, les représentants optimaux doivent satis-
faire la condition du centroïde, donnée par la moyenne conditionnelle de la source pour une
région de codage connue :
 xp(x)dx
x ∈ Ri
y = Cent (R ) = E(X/X ∈ R ) = 
 p(x)dx
(9) i i i

x ∈ Ri

En utilisant une mesure de distance euclidienne quadratique, le centroïde de la région Ri


est simplement le centre de masse de cette région. Il est donné par la formule de calcul de la
moyenne arithmétique :

⏐Ri⏐

1
(10) yi = cent (Ri). 
⏐⏐ i⏐⏐
R

i=1
xi

où ⏐⏐Ri⏐⏐ est le cardinal de la classe Ri et xi, 1 ≤ i ≤ ⏐⏐Ri⏐⏐, les vecteurs appartenant à cette
classe.
En général, il existe plusieurs méthodes de construction, appelées méthodes de classifica-
tion automatique ou d’entraînement (apprentissage), qui peuvent être utilisées pour résoudre
les problèmes de conception des systèmes de codage à QV. La méthode la plus populaire est
sans doute l’algorithme LBG [28], connu aussi par algorithme de Lloyd-Max généralisé. Cet
algorithme est une application itérative des deux conditions d’optimalité, telle que la partition
et le dictionnaire soient mis à jour itérativement. Il converge, en un nombre fini d’itérations,
vers une solution localement optimale selon le choix du dictionnaire initial. D’où, l’étape
d’élaboration du dictionnaire initial est très importante car elle conditionne les résultats
finaux de l’algorithme. Dans la plupart de nos conceptions à base de QV, nous avons utilisé la
méthode d’initialisation de Katsavounidis [29] qui nous a permit d’obtenir les meilleurs opti-
mums locaux.
Notons, enfin, que les performances d’un quantificateur sont souvent évaluées par le rap-
port signal sur bruit (RSB). Le RSB, qui dépend de la mesure de distorsion moyenne D, est
donné en décibels (dB) par [25] :

σ2X
(11) RSB = 10 log10 
D  
où σ2X = E(X2) est la variance des vecteurs source X (de moyenne supposée nulle). Afin d’ob-
tenir les meilleurs performances, ce rapport RSB doit s’approcher le plus que possible de la
fonction Distorsion-Débit D(R) qui représente les performances maximales théoriquement
atteignables. Il s’agit de la limite théorique de Shannon pour le codage de source [13, 14].

III. SYSTÈME DE CODAGE OPTIMISÉ


À BASE DE QUANTIFICATION VECTORIELLE CODÉE PAR TREILLIS

La théorie de l’information relative à la fonction distorsion-débit avec contrainte sur la


taille de l’alphabet de sortie Dc(R), développée par Pearlman [30], indique que la perfor-

ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007 7/38


M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF 1725

mance distorsion-débit optimal peut être asymptotiquement approchée par augmentation de


la taille de l’alphabet de reproduction. Elle démontre, que pour un même débit de codage, les
performances d’un quantificateur SQ/VQ conventionnel peuvent être dépassées par des quan-
tificateurs qui utilisent un alphabet/dictionnaire de taille plus grande. La Quantification codée
par treillis est une approche qui rend possible l’augmentation de la taille de l’alphabet/dic-
tionnaire du quantificateur tout en maintenant constant le débit de codage et la dimension
des données.
La Quantification scalaire codée par treillis (TCQ) [31, 32] ainsi que sa version généralisée
au cas vectoriel (TCVQ) [33, 34], améliorent les systèmes de codage en treillis traditionnel
[11] en étiquetant les branches du treillis avec des sous-ensembles plutôt qu’avec des niveaux
de quantification individuels. Cette approche, qui a été motivée par la formulation d’Unger-
boeck de la Modulation Codée par Treillis (TCM) [35], utilise un alphabet structuré avec un
ensemble augmenté de niveaux de quantification. Dans ce travail, on s’est intéressé particu-
lièrement à la quantification vectorielle codée par treillis (TCVQ) dont la structure est similaire
à celle du codeur scalaire TCQ, avec une augmentation de la complexité des calculs due à la
recherche de vecteurs-code dans les sous-ensembles [34]. Pour un même débit de codage, il a
été démontré dans [9, 33, 34, 36] que les performances de la TCVQ sont nettement supérieures
à celles de la TCQ.
La conception d’un codeur TVCQ est basée sur plusieurs étapes consécutives : sélection du
treillis, construction du dictionnaire initial augmenté, partitionnement de ce dictionnaire en
sous-ensembles (sous-dictionnaires) et étiquetage des branches du treillis avec les sous-
ensembles. Considérant le processus de conception d’un codeur TCVQ de débit de R bits par
échantillon (bpe) qui sera utilisé pour coder une séquence de vecteurs-source de dimension k.
Le treillis à S états utilisé dans la TCVQ est généralement choisi parmi les treillis utilisés par
Ungerboeck pour la modulation d’amplitude codée par treillis [35, 37]. Ces treillis sont géné-
rés à partir de codeurs convolutionnels systématiques (avec rétroaction) de taux 1/2. Il y’a
donc deux branches entrantes et sortantes de chaque état du treillis. Le dictionnaire initial
augmenté est généralement conçu par l’algorithme LBG de la QV (LBG-QV) [28]. Il contient
2kR+1 vecteurs-code (c.-à-d., deux fois la taille de celui d’un VQ). Cependant, lors du proces-
sus de codage TCVQ, la structure du treillis ramène le nombre augmenté de vecteurs-code au
débit de codage désiré R.
Basé sur les règles de la partition d’ensemble d’Ungerboeck de la TCM, ces vecteurs-
code sont ensuite divisés en quatre sous-ensembles D0, D1, D2 et D3 de taille 2kR − 1 chacun.
La méthode de la partition d’ensemble est effectuée de telle manière que la distance eucli-
dienne minimale parmi les vecteurs-code assignés à la même branche soit maximisée. Dans
la conception de nos codeurs TCVQ, nous avons utilisé l’heuristique décrite dans [33, 38]
afin de réaliser la partition d’ensemble du dictionnaire augmenté. Les sous-ensembles
conçus sont ensuite étiquetés sur les branches du treillis selon les règles de la TCM d’Unger-
boeck [35]. Sans entrer dans les détails, l’étiquetage des branches dans la TCM a pour but de
réduire la probabilité des erreurs qui apparaissent lorsque la séquence-canal reçue au déco-
deur est plus proche d’une séquence-canal associée à un chemin dans le treillis autre que
celui suivi par le codeur. Ces règles d’assignation des sous-ensembles d’Ungerboeck ont
été adoptées dans la TCQ/TCVQ afin assurer que la distorsion entre les séquences original et
reconstruite (sous des suppositions de canal idéal) soit proche du minimum. Le système
TCVQ est complètement défini par la structure du treillis, les niveaux de quantification et la
partition d’ensemble.

8/38 ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007


1726 M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF

Pour coder la séquence de vecteurs-source d’entrée, l’algorithme de Viterbi [11] est uti-
lisé pour trouver le chemin optimal à travers le treillis qui minimise la distorsion totale. À la
fin du codage, le codeur TCVQ transmet à la réception une séquence de bits indiquant le che-
min optimal en plus d’une séquence de mots-code de kR–1 bits nécessaire pour indiquer les
vecteurs-code choisis à l’intérieur des sous-ensembles du chemin optimal. Une fois les
séquences binaires reçues, le décodeur reconstruit la source quantifiée comme suit : la
séquence de bits indiquant le chemin optimal sélectionné à travers le treillis est utilisée
comme entrée du codeur convolutionnel du système TCVQ. La sortie de ce codeur sélectionne

FIG 1. – Codeur TCQ de débit R = 2 bit/échantillon, (a) Section du treillis étiqueté d’Ungerboeck à 8 états,
(b) Niveaux de l’alphabet de sortie et la partition, (c) Codeur convolutionnel correspondant.
TCQ encoder of rate R = 2 bit/sample, (a) Ungerboeck’s 4-state labelled trellis,
(b) Output alphabet levels and partition, (c) Corresponding TCQ convolutional coder.

ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007 9/38


M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF 1727

ainsi le sous-ensemble Di approprié. Les mots-code de la seconde séquence binaire sont


utilisés pour indiquer les vecteurs-code corrects à l’intérieur de chaque sous-ensemble
choisi.
Un exemple de codeur TCQ (TCVQ de dimension k = 1) à 8 états de débit R = 2 bpe, utilisé
pour le codage d’une source scalaire (k = 1) uniformément distribuée sur l’intervalle
[–A A], est illustré à la figure 1.
Dans cette figure, les niveaux doublés de quantification QS et la partition correspondante
sont montrés avec une section élémentaire du treillis étiqueté à 8 états d’Ungerboeck ainsi
que le codeur convolutionnel correspondant. Dans le cas scalaire, une méthode simple et effi-
cace proposée par Marcellin et Fischer [31] est utilisée pour réaliser la partition d’ensemble.
Il suffit de commencer avec le plus petit niveau d’extrême gauche et continuer à droite; en
attribuant d’une façon croissante les niveaux de quantification consécutif aux sous-ensembles
(D0, D1, D2, D3, D0, D1, D2, D3, …) jusqu’à ce que le plus grand niveau d’extrême droite soit
atteint (Figure 1-b). Notons aussi qu’une ligne en tirets, sur la section du treillis, représente le
cas où l’entrée x0 du codeur convolutionnel TCQ est un zéro « 0 » et une ligne en trait plein
dans le cas où l’entrée x0 est un « 1 ».
Des exemples de résultats de simulation obtenus lors du codage de sources sans mémoire
gaussiennes par des codeurs TCVQ, opérant à débits entiers et fractionnaires, sont donnés res-
pectivement aux tableaux I et II. Pour chaque débit de codage, les résultats sont donnés en
termes de RSB (en dB), avec les performances du VQ conventionnel conçu par l’algorithme
LBG ainsi que les fonctions Distorsion-Débit D(R) correspondantes. Ces limites théoriques de
Shannon D(R) ont été calculées par application de l’algorithme de Blahut [39]. Notons que
lorsque les débits de codage étaient entiers, la dimension k pouvait prendre n’importe quelle
valeur entière; cependant, pour des débits fractionnaires, k doit avoir une valeur tel que kR
soit entier. Rappelons aussi que les cas ou la dimension des vecteurs est égale à un (k = 1), la
TCVQ se réduit à la TCQ et la QV se réduit à la QS.

TABLEAU I. – Performance du codage TCVQ (à des débits entiers) d’une source gaussienne.
Performance of TCVQ encoding with integer rates for the gaussian source.

Débit Dimension Nombre d’états des Treillis de la TCVQ VQ-


D(R)
(bpe) vecteurs 4 8 16 32 64 LBG

1 4,64 4,77 4,85 4,93 4,98 4,40


2 4,85 5,03 5,09 5,10 5,21 4,42
6,02
1 3 4,98 5,08 5,12 5,15 5,22 4,49
4 5,05 5,14 5,16 5,18 5,23 4,69
1 10,18 10,31 10,38 10,46 10,51 9,31
2 10,36 10,50 10,57 10,60 10,69 9,70 12,04
2 3 10,59 10,69 10,72 10,75 10,81 10,00
4 10,93 11,02 11,05 11,07 11,12 10,41

10/38 ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007


1728 M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF

TABLEAU II. – Performance du codage TCVQ (à des débits fractionnaires) d’une source gaussienne.
Performance of TCVQ encoding with fractional rates for the gaussian source.

Nombre d’états des Treillis de la TCVQ


Débit VQ
Dim. D(R)
(bpe) LBG
k 4 8 16 32 64 128 256
0,66 6 3,34 3,39 3,41 3,42 3,45 3,48 3,49 3,05 4,01
0,75 4 3,72 3,78 3,80 3,82 3,87 3,90 3,93 3,36 4,51
0,80 5 3,96 4,04 4,07 4,08 4,14 4,18 4,20 3,69 4,82

Les valeurs RSB données dans tableau I montrent que, pour un même débit de codage, les
performances de la TCVQ sont nettement supérieures à celles de la TCQ (k = 1), surtout avec
l’augmentation de la dimension des vecteurs. En plus, la TCVQ permet un codage à des débits
fractionnaires; comme nous le montre si bien les exemples de résultats de simulation pré-
sentés dans le tableau II. Ces résultats montrent aussi que les performances de la TCQ/TCVQ
sont supérieures à celles du SQ/VQ conventionnel, au même débit de codage.
Pour améliorer davantage les performances de la TCVQ, une procédure d’optimisation de
la conception du dictionnaire étendu de la TCVQ a été élaborée [9]. Cette procédure d’optimi-
sation par entraînement utilise l’étape standard de l’algorithme LBG appliquée à une séquence
d’apprentissage de vecteurs-source à coder. Elle consiste à mettre à jour le dictionnaire TCVQ
en remplaçant chaque vecteur-code avec la moyenne de tous les vecteurs source attribués à
ce vecteur-code. Ceci mène, bien sûr, à un algorithme itératif de conception pour le codeur
TCVQ global. En fait, chaque itération est un processus de codage TCVQ avec de nouveaux
vecteurs-code optimisés, obtenus de l’itération précédente. En utilisant cette variante d’opti-
misation, l’algorithme sera dénoté par l’algorithme OTCVQ (Optimized Trellis Coded Vector
Quantization). Considérant le processus de codage d’une séquence d’apprentissage de vec-
teurs source {x1,…,xn} par un codeur TCVQ de dimension k opérant à un débit de R bpe
(treillis, dictionnaire initial « Y1 » avec les vecteurs-code y1i , i =1, 2,…, 2kR+1, sous-ensembles
et étiquetage des branches). Les étapes de base de la procédure d’optimisation sont données
ci-dessous.

Algorithme de la TCVQ optimisée (OTCVQ) :

Étape 1
− Choisir un seuil de convergence approprié ε (ε > 0).
− Définir D( j) comme mesure de distorsion à l’itération j.
− Initialiser j = 1 et D(0) = ∞.

Étape 2

− Coder la séquence des vecteurs d’apprentissage en utilisant le système TCVQ (par


algorithme de Viterbi) avec le dictionnaire courant (Y j ).
− Calculer la distorsion résultante D(j).
− Si (D(j–1) – D( j)) / D( j) < ε :
– Sauvegarder le dictionnaire final optimisé Y j. – Arrêt du programme.
Sinon continuer.

ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007 11/38


M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF 1729

Étape 3
− Partitionner l’ensemble d’apprentissage en classes C ji, i = 1, 2, …, 2kR + 1, telle que
chaque classe Cji contient seulement les vecteurs source codés par yji .
− Mettre à jour le dictionnaire-TCVQ Y j+1 en remplaçant chaque vecteur-code par le
centroïde de la classe actuelle correspondante :

y ji+1=  1
C j x, où ⏐⏐C ji ⏐⏐ dénote le nombre des vecteurs dans la classe C ji.
⏐⏐C i⏐⏐
j x ∈ i

− Incrémenter j ( j = j + 1) et aller à l’étape 2.

Des exemples de résultats de simulation obtenus lors du codage de sources sans mémoire
gaussiennes, en utilisant des codeurs TCVQ (à débits fractionnaires) avec dictionnaires opti-
misés, sont listés dans tableau III.

TABLEAU III. – Performances de la TCVQ optimisée (à débits fractionnaires) d’une source gaussienne.
Performances of the Optimized TCVQ with fractional rates for the gaussian source.

Nombre d’états des Treillis de la TCVQ


Débit VQ
Dim. D(R)
(bpe) LBG
k 4 8 16 32 64 128 256
0,66 6 3,41 3,45 3,47 3,48 3,49 3,52 3,53 3,05 4,01
0,75 4 3,81 3,85 3,87 3,89 3,93 3,96 3,97 3,36 4,51
0,80 5 4,08 4,14 4,16 4,17 4,21 4,23 4,25 3,69 4,82

En comparant ces résultats avec ceux donnés dans le tableau II, nous remarquons bien
l’amélioration des performances RSB apportée par l’optimisation du dictionnaire de la TCVQ.
Nous pouvons constater également la supériorité de la TCVQ (standard et optimisée) sur la QV
conventionnelle par LBG.

IV. QUANTIFICATION VECTORIELLE OPTIMISÉE


POUR UN CANAL BRUITÉ

La quantification vectorielle est actuellement très utilisée dans diverses applications pra-
tiques et puisqu’un certain type de bruit de canal est présent dans n’importe quel système de
communication numérique, l’étude et la conception de quantificateurs vectoriels pour des
canaux bruités suscitent un intérêt croissant. Historiquement, la théorie de la quantification
scalaire/vectorielle a été développée sans se soucier des erreurs de canal. Basé sur les condi-
tions nécessaires d’optimalité, des algorithmes itératifs de conception ont été développés
pour réaliser des quantificateurs (SQ/VQ) optimaux. Pour obtenir une transmission de don-
nées fiable à travers un canal bruité, les codeurs/décodeurs SQ/VQ et de canal sont cascadés

12/38 ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007


1730 M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF

comme suggéré par le principe de séparation de Shannon. Pour pallier les inconvénients de
cette approche séparée, des conceptions couplées des quantificateurs de source et des codeurs
de canal ont été mises au point afin de remplacer la cascade des codeurs [15, 18, 24, 26, 40].
Il s’agit du codage conjoint source-canal (CCSC) qui est généralement utilisé sans ajout de
codes de canal redondants (Non-redundant channel coding).
Dans cette étude, nous avons considéré le codage combiné de source et de canal avec la
quantification vectorielle afin d’apporter une protection implicite à nos quantificateurs. Parti-
culièrement, nous nous sommes intéressé à une catégorie de base du CCSC relative aux quan-
tificateurs optimisés en prenant en considération la probabilité d’erreur du canal. Il s’agit de
la quantification vectorielle optimisée pour un canal bruité (QVOC) [16, 41]. Nous montre-
rons par la suite que cette méthode de codage par QVOC peut améliorer la robustesse des sys-
tèmes QV en assurant une bonne protection contre les erreurs de transmissions. Ceci étant
effectué sans induire une augmentation du débit de transmission, à l’inverse des méthodes de
codage de canal redondant qui peuvent apporter une protection mais avec une certaine aug-
mentation du débit. Or, cette augmentation du débit n’est pas toujours tolérée lorsque les
contraintes pratiques sont sévères (codage à bas débit par exemple).

IV.1. Principe de conception d’un système à QVOC :


Conditions d’optimalité modifiées

Un quantificateur vectoriel optimisé pour un canal bruité « COVQ » (Channel Optimized


Vector Quantizer) est un schéma de codage qui se base sur le principe de modification d’un
VQ en tenant compte du bruit présent sur le canal de transmission. Ainsi, les opérations de
codages source et canal sont intégrées conjointement dans une seule entité en incorporant le
paramètre du canal bruité dans le processus de conception. En effet, le fonctionnement d’un
algorithme comme le LBG-QV se prête bien à une modification dans ce sens. Le but alors est
de minimiser la distorsion moyenne totale (modifiée) entre le signal reconstitué et le signal
original, étant donné ce bruit.
La conception d’un codeur COVQ est réalisée par une version étendue au cas bruité de la
QV [16, 41]. Le schéma du COVQ garde donc la même structure bloc que celle du VQ
(codeur/décodeur, dimension, débit). La différence réside dans la formulation des conditions
nécessaires d’optimalité pour minimiser une expression modifiée de la distorsion moyenne
totale. Cette nouvelle distorsion est formulée en considérant ensemble la distorsion due à la
quantification et aux erreurs de canal. En utilisant ce modèle, nous obtenons ainsi de nou-
velles conditions d’optimalité qui généralisent les conditions nécessaires pour un VQ optimal
(Eq. 8 et 9), conçu selon des suppositions idéales de transmissions. La distorsion moyenne
totale causée par l’effet combiné du quantificateur vectoriel et du bruit de canal est donnée
par l’expression suivante [24, 41, 42] :

1L – 1

L–1
(12) D =  
ki=0 Ri
p(x)   p( j/i)  d(x, y ) dx,
j=0
j

où p(j/i) est la probabilité conditionnelle du canal qui représente ici la probabilité de recevoir
l’indice j sachant que l’indice i a été transmis. En comparant l’éq. (12) avec l’éq. (5), on

ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007 13/38


M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF 1731

constate facilement que ces deux équations sont équivalentes, sauf que l’éq. (12) utilise une
mesure de distorsion modifiée (terme entre crochet). Il s’agit de la même distance d avec des
pondérations données par les probabilités conditionnelles du canal p(j/i), i, j = 0,…, L−1.
Notons que dans nos applications, le canal de transmission considéré est de type discret
(temps discret et alphabet fini), sans mémoire et stationnaire. Ce modèle de canal est entière-
ment défini par sa matrice de transition [11, 43] :

P(y1/x1) … P(y1/xN)
(13) P(Y/X) = 

P(yM/x1)



P(yM/xN)

,

où X = {x1, x2, …, xN} est l’alphabet à son entrée et Y = {y1, y2, …, yM} est l’alphabet à sa
sortie. Précisément, nous avons utilisé un modèle de canal discret, sans mémoire, de type
binaire symétrique BSC (Binary Symmetric Channel) qui est largement utilisé dans les sys-
tèmes de communication numérique.
La formulation des conditions nécessaires d’optimalité du système COVQ est effectuée
aussi en deux étapes, selon le principe de minimisation de la distorsion moyenne totale
(Eq. 12) [16, 41, 42]. D’abord, pour un décodeur fixe, la condition d’optimalité de la fonction
de codage est établie. Ensuite, pour un codeur fixe, la condition nécessaire pour l’optimalité
de la fonction de décodage est développée. La paire de ces conditions peut être alors utilisée
pour établir un ensemble de conditions d’optimalité du système COVQ global. Pour un dic-
tionnaire Y = {y0, …, yL−1} donné et en utilisant toujours une mesure de distance quadra-
tique, la partition optimale Ri (i= 0,…, L−1) pour un canal bruité est décrite par :
L–1 L–1

  p( j/i) ⏐⏐x – yj⏐⏐  p( j/l) ⏐⏐x – yj⏐⏐ , ∀l ≠ i,


2 2
(14) Ri = x ∈ Rk : ≤ i = 0,…, L – 1.
j=0 j=0

Pour une partition donnée, le dictionnaire optimal est donné par :

 xp(x)  dx
L–1


i=0
p( j/i),
Ri
(15) yj =  j = 0,…, L − 1.
 p(x)  dx
L–1


i=0
p( j/i),
Ri

Le vecteur-code yj représente maintenant le centroïde de tous les vecteurs d’entrée


décodés dans la classe Rj, de sorte que l’indice reçu j est différent de l’indice transmis i. Les
équations (14) et (15) sont appelées respectivement les conditions généralisées du voisin le
plus proche et du centroïde, avec une mesure de distorsion modifiée. Les vecteurs-code opti-
maux pour un canal bruité sont donc des combinaisons linéaires des centroïdes des régions
de la partition, pondérés par les probabilités de transition du canal. Le codeur optimal sélec-
tionne ainsi un vecteurs-code qui minimise une somme pondérée des distorsions entre le vec-
teur d’entrée et chaque vecteur-code, où les poids sont les probabilités de transition du canal.
En d’autres termes, yi est dit voisin « pondéré » le plus proche de x si la quantité :
L–1


2
(16) ⏐⏐x – yj⏐⏐ p( j/l)
j=0

14/38 ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007


1732 M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF

est minimisée pour tous l = 0,…, L – 1.

Dans la conception de notre codeur COVQ, nous avons considéré que le canal de transmis-
sion est un canal binaire symétrique (BSC) de probabilité de transition de canal p [10, 11, 43].
Le BSC est un modèle de canal simple et puissant qui représente les configurations les plus
communes des erreurs de canal de transmission. Il possède deux symboles d’entrée (0, 1) et
deux symboles de sortie (0, 1) avec les alphabets X = Y = {0, 1} et N = M = 2. Ce modèle de
canal est dit symétrique parce que la probabilité de recevoir 1 lorsque 0 est émis est égale à la
probabilité de recevoir 0 lorsque 1 est émis (figure 2) :

(17) P(0/1) = P(1/0) = p et P(0/0) = P(1/1) = 1 – p

FIG 2. – Modèle du canal binaire symétrique.


Binary symmetric channel model.

La matrice de transition de ce canal est donc symétrique :

p 
1–p p
(18)
1–p
Si des mots-code (indices-VQ) de n bits sont transmis à travers un BSC, la probabilité
conditionnelle est alors donnée par l’expression suivante [18, 26] :

(19) p( j/i) = (1 – p)n – dH(i, j)  pdH(i, j) (i, j = 0, …, L – 1),

où dH (i, j) (0 ≤ dH (i, j) ≤ n) est la distance de Hamming entre les mots-code binaires de n bits
représentés par les entiers i et j. Ainsi, la probabilité qu’un mot-code binaire i ∈ {0,1}n trans-
mis soit reçu comme un mot-code binaire particulier j dépend seulement de la distance de
Hamming entre eux. Notons que la distance de Hamming dH(i, j) représente le nombre de
bits différents entre les indices i et j :
n–1
(20) dH(i, j) =  (i (m) ⊕ j(m)),
m=0

où ⊕ est une opération d’addition modulo 2, sans retenue (OU exclusif).

ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007 15/38


M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF 1733

Quand la probabilité de transition du canal p est suffisamment petite, la probabilité de


multiples bits d’erreurs par indice bruité est négligeable par rapport à la probabilité d’un ou
de zéro bit d’erreur [18, 24, 26, 41]. Pour réduire la complexité des calculs numériques, il est
souvent adéquat de considérer seulement les effets d’un seul bit d’erreur dominant par mot-
code binaire. Le modèle de canal BSC peut être alors approximé par [18] :
j ∈ ξi


p
(21) p( j/i) = 1 – np j=i ,
0 ailleurs
où ξi est l’ensemble qui contient tous les entiers j (0 ≤ j ≤ L – 1) tels que la distance de
Hamming entre la représentation binaire de j et la représentation binaire de i soit égale à 1.
L’ensemble ξi est communément appelé ensemble des n voisins de i. Suivant cette supposi-
tion, l’équation (12) de la distorsion modifiée s’écrira alors :

(22)
1L – 1
D =  
ki=0

Ri
p(x)   p( j/i)  d(x, y ) dx
j ∈ξi
j

Les conditions nécessaires d’optimalité pour un canal bruité seront donc reformulées
comme suit :


(23) Ri = x ∈ Rk :  p( j/i) ⏐⏐x – yj⏐⏐ ≤  p( j/l) ⏐⏐x – yj⏐⏐ , ∀l ≠ i,
2 2
i = 0,…, L – 1.
j ∈ξi j ∈ξ i

 p( j/i), Ri xp(x)  dx


et :

i ∈ξj
yj =  j = 0,…, L − 1.

(24)
 p( j/i), p(x)  dx
i ∈ξ
j Ri

Dans le cas où la distribution de la source est inconnue, une base d’apprentissage compo-
sée de vecteurs de dimension k peut être utilisée pour la conception du quantificateur. Ainsi,
les équations (22) et (24) peuvent être modifiées à :

N–1 L–1
1
(25) D = 1
N
 
t = 0 j ∈ξ
 p( j/it)  d(xt, yj),
k
i

et :

 p( j/i), l :
i ∈ξj x ∈R
xl /N
l i
(26) yj = 
 p( j/i)⏐⏐Ri⏐⏐/N
i ∈ξ j

où N est la taille de la base d’apprentissage qui peut être supprimée de l’éq. (26) et ⏐⏐Ri⏐⏐
dénote le nombre des vecteurs d’entraînement appartenant à la classe Ri.

16/38 ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007


1734 M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF

IV.2. Algorithme de conception du codeur COVQ

La procedure de conception d’un système de codage COVQ est réalisée par une extension
directe de l’algorithme LBG-QV. Il s’agit d’une optimisation itérative des deux conditions
d’optimalité modifieés, telles que la partition Ri et les vecteurs-code sont mis à jour en utili-
sant la distorsion modifiée incluant la probabilité du canal [15, 16, 41].
Les étapes de base de notre version de l’algorithme COVQ sont décrites ci-dessous. On
suppose qu’un ensemble de vecteurs d’entrée est disponible (base d’apprentissage) et que la
probabilité d’erreur du canal (BSC) ε est donnée. Cette probabilité, qui est souvent appelée
probabilité d’erreur de conception du dictionnaire COVQ, est considérée comme un paramètre
d’entrée dans le processus d’optimisation. L’algorithme démarre avec un dictionnaire initial
afin de trouvé la partition optimale en utilisant la condition généralisée du voisin le plus
proche (Eq. 23). Suivant cette nouvelle partition, il utilise ensuite la condition généralisée du
centroïde (Eq. 26) pour mettre à jour le dictionnaire COVQ optimal. Cette étape partielle se
poursuit (avec ε fixe) jusqu’ à ce que la diminution relative de la distorsion moyenne soit
inférieure à un seuil prédéfini. L’algorithme converge alors vers une solution localement opti-
male, pour la valeur actuelle de ε. Par la suite, le paramètre de conception ε est augmenté à
pas constant. Pour chaque palier de ε, les deux conditions d’optimalité généralisées sont
réitérées. Le processus continu ainsi jusqu’à ce que la probabilité de conception désirée soit
atteinte.
Comme nous l’avons déjà mentionné dans les étapes de conception d’un VQ par l’algo-
rithme LBG, le choix du dictionnaire initial est essentiel car il conditionne les résultats finaux.
Dans notre conception, le dictionnaire initial est déterminé pour ε = 0 (c.-à-d., pour un canal
non bruité). Il s’agit d’une simple exécution de l’algorithme LBG-QV traditionnel qui conver-
gera vers un dictionnaire qui sera utilisé comme dictionnaire initial de l’algorithme COVQ.
Ensuite, pour chaque palier de ε, l’algorithme convergera vers un dictionnaire intermédiaire
qui sera utilisé comme dictionnaire initial du palier suivant.
Notons que lorsque le canal est non bruité, l’algorithme COVQ se réduit à LBG-QV tradi-
tionnel. En effet, suivant les suppositions de transmissions idéales (ε = 0), la probabilité
conditionnelle du canal (Eq. 21) sera donnée par :

0:
1: j=i
(27) p(j/i) = δij =
j≠ i

où δij sont les éléments de la matrice identité δ. Ainsi, les conditions d’optimalité du COVQ,
équations (23) et (26), se réduisent respectivement aux équations (8) et (10); c.-à-d., aux
conditions d’optimalité familière d’un VQ optimisé pour un canal non bruité. Selon cette
optique, l’algorithme LBG peut donc être considéré comme un cas particulier de l’algorithme
COVQ quand la probabilité d’erreur du canal ε = 0.
La plus grande difficulté dans la conception d’un système COVQ est que la probabilité
d’erreur du canal est un paramètre de conception dans la procédure d’optimisation. Dans des
situations de transmission réelles, ce paramètre est difficile à estimer. Il peut varier en fonc-
tion du temps faisant la conception suivant une valeur spécifiée plutôt académique. En effet,
la robustesse des COVQ est basée principalement sur les caractéristiques exactes du canal de
transmission. Ainsi, selon la situation pratique et les estimations des caractéristiques réelles
du canal de transmission, des codeurs COVQ peuvent être choisis pour obtenir le degré le plus
élevé de robustesse.

ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007 17/38


M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF 1735

Algorithme COVQ :
Étape 1 : Introduction des données et initialisations
– Donner la probabilité d’erreur de conception, notée εc
– Introduire la base de donnée d’apprentissage.
– Donner la valeur adéquate du pas d’incrémentation ∆ε ainsi que le seuil α.
– Détermination du dictionnaire initial (ε = 0,000).

Étape 2 : Classification et réactualisation


– Partitionner la base d’apprentissage en classes, en utilisant la condition modifiée du
plus proche voisin.
– En utilisant la condition du centroïde modifiée, déterminer les centroïdes du nou-
veau dictionnaire pour l’ensemble des classes trouvées.

Étape 3 : Test de distorsion


– Si la décroissance relative de la distorsion moyenne reste supérieure au seuil
α : allez à l’étape 2.

Étape 4 : Test de fin


– ε = ε + ∆ ε,
– Si ε ≤ εc, allez à l’étape 2.
– Sinon arrêt du programme avec sauvegarde du dictionnaire-COVQ optimal pour εc.

IV.3. Performances du système de codage COVQ

Nous présentons maintenant les performances du système de codage COVQ fonctionnant à


travers un canal BSC de probabilité d’erreur p variable. Des exemples de résultats de simula-
tion de systèmes COVQ, conçus pour différentes valeurs du paramètre ε (ε = 0,001, 0,005,
0,010 et 0,050) sont tabulés ci-dessous. Ces systèmes, dont les caractéristiques choisies sont :
k = 2, R = 2 bits par échantillon et L = 16), ont été conçus pour un codage à QVOC de sources
gaussiennes sans mémoire. Pour une évaluation comparative avec le VQ standard, les perfor-
mances LBG-QV (conçu pour un canal non bruité, ε = 0,000) ont été insérées dans le tableau IV.

TABLEAU IV. — Évaluation comparative des performances des systèmes COVQ/VQ fonctionnant
à travers un BSC.
Performance comparisons between COVQ and VQ systems operating over BSC.

ε 0,000 0,001 0,005 0,01 0,05


p
0,000 9,686 9,685 9,624 9,537 8,664
0,001 9,584 9,604 9,565 9,481 8,643
0,005 9,292 9,314 9,357 9,332 8,571
0,01 8,927 8,965 9,034 9,179 8,477
0,05 6,824 6,918 7,351 7,608 7,800
0,1 4,650 5,292 5,875 6,801 7,043
0,2 2,518 3,109 3,876 4,752 5,886

18/38 ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007


1736 M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF

Dans le cas des transmissions à travers un canal de probabilité p élevée, ces résultats
montrent que les performances des systèmes COVQ sont nettement supérieures à celles obte-
nues par le LBG-VQ standard. Par exemple, pour un canal BSC de p = 0,2, un gain considérable
de 3,36 dB a été obtenu par le COVQ (conçu pour ε = 0,05) comparé au VQ standard. Nous
remarquons que lorsque la probabilité du canal p ne coïncide pas avec la probabilité de
conception ε, les systèmes COVQ conçus pour ε identique ou proche de p sont ceux qui don-
nent les meilleures performances. Aussi, nous avons constaté que pour un canal fortement
bruité, les dictionnaires-COVQ conçus pour des grandes valeurs de ε donnent de meilleurs
résultats que les autres. Cependant, lorsque le canal est non bruité (p = 0,000) les perfor-
mances-RSB des systèmes COVQ se dégradent avec l’augmentation du paramètre ε. Le VQ
standard, dans ce cas, assure des performances comparables, voir meilleures, que le COVQ. Il
en est de même lorsque le canal est de faible probabilité d’erreur (p < 0,005), avec une légère
amélioration des performances obtenue par des systèmes COVQ conçus pour une faible valeur
du paramètre ε (exemple, COVQ pour ε = 0,001).

V. CODAGE À BAS DÉBIT DES PARAMÈTRES LSF PAR TCVQ OPTIMISÉE

En utilisant la technique de codage OTCVQ, décrite dans la section III, un schéma de


codage pour les paramètres LSF est présenté dans cette section. L’objectif de ce système de
codage, que nous avons appelé « Encodeur LSF-OTCVQ » [9], est de quantifier efficacement les
paramètres LSF d’une trame en utilisant seulement les dépendances intra-trame. Pour des
applications de codage de la parole, nous utilisons la technique OTCVQ en mode bloc, où
chaque bloc correspond à un vecteur LSF de taille 10. Dans notre conception, des diction-
naires bidimensionnels 2-D (k = 2) ont été utilisés pour coder les vecteurs LSF. Ainsi, chaque
paire du vecteur LSF est codée par un étage du treillis. Par conséquent, il y a cinq étages dans
le treillis du système de codage LSF-OTCVQ avec deux branches entrantes et sortantes de
chaque état du treillis. Puisque les paramètres LSF ont des moyennes et des variances dispa-
rates, cinq dictionnaires 2-D étendus sont alors nécessaires pour coder un vecteur LSF. Ces
dictionnaires sont élaborés d’abord par l’algorithme LBG en utilisant la méthode de Katsa-
vounidis [29] pour le choix des dictionnaires initiaux. Après conception de la structure du
treillis, les sous-ensembles et l’étiquetage des branches, les dictionnaires sont ensuite opti-
misés pour une base de données d’apprentissage (vecteurs LSF), en utilisant l’algorithme
d’optimisation OTCVQ. Les étapes de base de conception de notre codeur LSF-OTCVQ sont indi-
quées ci-dessous.

Étape 1 : Initialisations
– Donner le nombre d’états S du treillis ainsi que le débit de codage R (en bits par échan-
tillon).
– Construire le diagramme en treillis d’Ungerboeck de S états.
– Diviser la base d’apprentissage des vecteurs LSF de dimension 10 en cinq ensembles
d’apprentissage de paires de vecteur LSF (c.-à-d., LSF 1-2, LSF 3-4, LSF 5-6, LSF 7-8 et LSF
9-10).

ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007 19/38


M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF 1737

– Basé sur ces ensembles d’apprentissage, utiliser l’algorithme LBG pour concevoir les
cinq dictionnaires initiaux 2-D étendus du système de codage LSF-OTCVQ.

Étape 2 : Partitionnement et étiquetage des branches


– Partitionner chaque dictionnaire initial en 4 sous-dictionnaires par l’algorithme de la
partition d’ensemble.
– Étiqueter les branches de chaque étage du treillis avec le dictionnaire partitionné cor-
respondant (c.-à-d., dictionnaire LSF1-2 pour l’etage1,…, dictionnaire LSF9-10 pour
l’étage 5).

Étape 3 : Codage/décodage TCVQ


– Pour toute la base d’apprentissage des vecteurs LSF, trouver les meilleurs vecteurs de
reproduction LSF à travers le treillis en utilisant la procédure de recherche de Viterbi.
– Calculer la SD moyenne entre les vecteurs LSF originaux et quantifiés.

Étape 4 : Test d’Arrêt


– Si la diminution relative de la SD moyenne (par rapport à la SD moyenne de l’itération
précédente) est au-dessous d’un certain seuil prédéfini, sauvegarde des cinq diction-
naires optimisés du système LSF-OTCVQ et arrêt du programme;
– Sinon, mise à jour des vecteurs-codes des dictionnaires LSF-OTCVQ en utilisant la procé-
dure d’optimisation; aller à l’étape 3.

Connaissant que le choix d’une mesure de distance appropriée est une question impor-
tante dans la conception d’un système à QV, nous avons utilisé une autre mesure de distance
dans l’étape de conception et de fonctionnement de notre codeur LSF-OTCVQ. Il s’agit de la
mesure de distance pondérée (weighted Euclidean measure). Cette mesure de distance pon-
dérée trouve son application dans le domaine fréquentiel des LSF, puisque ces paramètres ont
une très bonne correspondance avec l’enveloppe spectrale. Ainsi, pour mettre en évidence
une partie particulière du spectre, l’LSF de cette partie peut être pondéré plus que les autres.
Comparé au codeur LSF-OTCVQ conçu avec une distance euclidienne non pondérée (Eq. 6),
nous montrerons que la distance pondérée peut améliorer les performances du codeur LSF-
OTCVQ afin d’obtenir une quantification transparente à des débits plus bas.
Basé sur les propriétés des paramètres LSF, plusieurs formules de distances euclidiennes
pondérées ont été proposées pour le codage des LSF. Les plus utilisées peuvent être trouveés
dans les références [4, 7, 44, 45]. Si fi et fˆi sont respectivement les i ème coefficients des vec-
teurs LSF original f et quantifié f,ˆ alors la distance euclidienne carrée pondérée est donnée
par :
10
(28) ˆ =
d ( f, f)  ci wi( fi – fˆ)2,
i=1

où ci et wi représentent respectivement les poids fixe et variable assignés au i ème coefficient


LSF. Ces poids sont censés contribuer à une meilleure quantification des paramètres LSF dans
les régions formantiques [46]. Plusieurs fonctions de pondération ont été définies pour calcu-
ler le vecteur des poids variables w = [w1,…,w10]. Dans notre conception, nous avons utilisé
une fonction de pondération simple et efficace, qui a été proposée par R. Laroia et al. dans
[45]. Elle tire son avantage du fait que la fréquence d’un formant est située à la position de

20/38 ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007


1738 M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF

deux ou de trois paramètres LSF très proches. Cette fonction de pondération, dénotée généra-
lement par fonction IHM (Inverse Harmonic Mean), est définie :
1 1
(29) wi =  +  ,
fi – fi – 1 fi + 1 – fi
avec f0 = 0 et f11 = 0.5.

Le vecteur additionnel de poids constants c = [c1,…, c10] a été introduit dans la formule
afin que les paramètres LSF des basses fréquences soient pondérés plus que les autres. Car, il
est bien connu que l’oreille humaine est plus sensible aux différences d’impressions auditives
aux basses fréquences qu’en hautes fréquences. Ce vecteur est déterminé expérimentalement
[4] :
pour 1 ≤ i ≤ 8


1,0,
(30) ci = 0,8, pour i = 9
0,4, pour i = 10
Les performances du quantificateur sont évaluées ici par la distorsion spectrale SD (Spec-
tral Distorsion) moyenne qui est souvent utilisée comme mesure objective de la performance
de codage des paramètres LSF. Cette mesure de distorsion fournit en générale une bonne cor-
rélation avec la perception auditive humaine. L’expression de la SD pour une trame i est don-
née en décibels par [7, 47] :


n –1
1
S(e j2πn/N) 2
 
1
(31) SDi =   10 1og10  .
n1 – n0 n = n0 Ŝ(e j2πn/N)

Pour un signal de parole échantillonné à 8 kHz avec une largeur de bande de 3 kHz, une
FFT de N = 256 points est utilisée pour calculer les spectres de puissance originaux S(ej2πn/N)
et quantifiés Ŝ (ej2πn/N) du filtre de synthèse LPC de la ième trame du signal de parole. Ainsi, la
SD est calculée avec une résolution de 31,25 Hz par échantillon sur 96 points uniformément
espacés de 125 Hz à 3,125 kHz. Les constantes n0 et n1 dans l’Eq. (31) correspondent donc
respectivement à 1 et à 96. La SD moyenne est évaluée pour tout le nombre de trames (Nf) de
la base de donnée parole :
Nf
1
(32) SD = 
Nf i=1
 SDi .
En général, une SD moyenne d’environ 1 dB indique que la distorsion perçue pendant la
quantification est négligeable. Dans le passé, cette valeur a été suggérée comme seuil pour la
transparence spectrale de la parole (qualité de quantification transparente). Dans [4], Paliwal
et Atal ont établi que la SD moyenne n’est pas suffisante pour mesurer seule la qualité perçue.
Ils ont introduit la notion des trames spectrales externes (outliers frames). Selon leurs obser-
vations et résultats, un codage-LPC transparent est obtenu si les trois conditions suivantes sont
maintenues :
1) la SD moyenne est d’environ 1 dB,
2) le pourcentage des trames externes ayant une SD entre 2 et 4 dB est moins de 2 %,
3) aucune trame ne doit avoir une SD qui dépasse 4 dB.

ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007 21/38


M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF 1739

Nous évaluons, à présent, les performances de notre codeur LSF-OTCVQ opérant à diffé-
rents débits. Tous les résultats de simulation rapportés dans cette section ont été obtenus en
utilisant des treillis d’Ungerboeck à quatre états et des dictionnaires bidimensionnel (2-D).
Pour chaque débit étudié, 2 bits sont alors nécessaires pour indiquer l’état initial. Quand aux
bits restants, ils ne peuvent pas être également assignés pour représenter les cinq diction-
naires 2-D. Sachant que la perception humaine de la distorsion causée par les formants dans
les bandes de fréquence élevées est négligeable par rapport à celle dans les basses fré-
quences, peu de bits sont alors utilisés pour représenter les derniers dictionnaires. Après
étude et recherche des allocations optimales des bits pour le codeur LSF-OTCVQ, nous avons
constaté que l’allocation des bits suivante (Tableau V) donne les meilleurs résultats pour nos
applications.

TABLEAU V. – Allocation des bits de chaque dictionnaire d’étage du treillis LSF-OTCVQ


en fonction du débit binaire.
Bits allocation of each LSF-OTCVQ trellis stage codebook as a function of bit rate.

Bit/vecteur
Numéro d’étage du treillis
LSF
1 2 3 4 5
24 5 5 5 4 3

(Dictionnaire)
25 5 5 5 5 3

Bit/étage
26 6 5 5 5 3
27 6 6 5 5 3
28 6 6 6 5 3

La base de données parole utilisée dans ce travail se compose d’environ 43 minutes de


parole prise de la base de données internationale TIMIT (fe de 16 kHz) [48]. Les signaux de
parole sont d’abord filtrés passe-bas puis sous échantillonnés à 8 kHz. Pour construire une
base de données des vecteurs LSF, nous avons utilisé la même fonction d’analyse par prédic-
tion linéaire (LP) de la norme fédérale FS1016 [49, 50]. Dans le programme distribué du
FS1016 CELP v.3.3c [50], une analyse LP d’ordre 10 par la méthode d’autocorrélation est
effectuée sur chaque fenêtre d’analyse de 30 ms (pondérée par la fenêtre de Hamming). Pour
éviter les problèmes d’estimation de l’enveloppe spectrale des sons à haut voisement, une
expansion de 15 Hz de la largeur de bande est effectuée. Cela consiste à remplacer les coeffi-
cients LPC ai par des coefficients ai′ = ai γ i (γ = 0,994). Une partie de la base de données (de
75 000 vecteurs LSF) est utilisée pour l’apprentissage et la partie restante, de 11 262 vecteurs
LSF (différente de la base d’apprentissage), est utilisée pour les tests. Les signaux de parole
constituant la base de données d’apprentissage ont été prononcés par 102 locuteurs (mascu-
lins et féminins) et ceux de la base de test par environ 50 locuteurs (masculins et féminins).
Pour différents débits de codage, les performances du codeur LSF-OTCVQ, en terme de SD
moyenne et de fenêtres « outliers », sont données dans le tableau VI. Ces résultats ont été
obtenus en utilisant séparément deux mesures de distance dans l’étape de conception et de
fonctionnement du codeur.

22/38 ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007


1740 M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF

TABLEAU VI. – Performance du codeur LSF-OTCVQ en fonction du débit de codage.


Performance of the LSF-OTCVQ encoder as a function of bit rate.

LSF-OTCVQ (distance non-pondérée) LSF-OTCVQ (distance pondérée)


SD Outliers (en %) SD Outliers (en %)
Bit/trame SD Moy. (dB) SD Moy. (dB)
2- 4 dB > 4 dB 2-4 dB > 4 dB
24 1,34 7,04 0,03 1,29 5,26 0,02
25 1,24 3,97 0,03 1,19 2,99 0,00
26 1,18 3,01 0,02 1,15 2,72 0,00
27 1,14 2,95 0,02 1,07 1,90 0,00
28 1,04 1,60 0,01 0,98 1,10 0,00

Ces résultats comparatifs montrent clairement l’amélioration des performances du codeur


LSF-OTCVQ, obtenue par l’utilisation d’une mesure de distance pondérée. Le codeur LSF-
OTCVQ conçu avec une distance pondérée a besoin de 27 bit/trame pour obtenir une qualité de
quantification transparente. Il peut faire gagner environ 1-2 bit/trame comparé au codeur
conçu avec une mesure de distance non pondérée, tout en maintenant des performances com-
parables.

VI. CODAGE EFFICACE ET ROBUSTE DES PARAMÈTRES LSF


DU CODEUR FS1016 : APPLICATION DU SYSTÈME DE CODAGE
LSF-OTCVQ

Dans cette section nous appliquons notre codeur LSF-OTCVQ (avec distance pondérée)
pour quantifier et coder les paramètres LSF d’un codeur de parole de la norme fédérale
FS1016. Pour le moment, nous supposons que les transmissions s’effectuent à travers un
canal idéal non bruité. Nous verrons, plus loin, comment améliorer la robustesse de nos
codeurs en présence des erreurs de canal. Rappelons que le FS1016 est un codeur de parole de
type CELP (Code Excited Linear Prediction) fonctionnant à un débit de 4,8 kbit/s [49]. Sui-
vant la norme de ce codeur, les paramètres LSF sont codés à l’origine par un SQ de 34
bit/trame (voir l’annexe).
Pour la même base de données de test (11262 vecteurs LSF), ce SQ de 34 bit/trame donne
comme résultats : une SD moyenne de 1,72 dB, 25,99% de fenêtres outliers ont une SD entre 2 et
4 dB et 0,46 % de fenêtres outliers ayant une SD supérieure à 4 dB. En comparant ces résultats
avec ceux donnés dans le tableau VI, nous pouvons constater clairement que le codeur LSF-
OTCVQ (pour tous les bas débits étudiés) donne de meilleures performances que le SQ de
34 bit/trame utilisé à l’origine dans le codeur FS1016. Ainsi, beaucoup de bits par trame peuvent
être gagnés par l’application du LSF-OTCVQ dans le processus de codage des LSF du FS1016.
Nous avons effectué aussi des tests subjectifs sur un codeur LSF-OTCVQ de 27 bit/trame.
En incorporant ce codeur dans le FS1016, le débit binaire pour la quantification des para-
mètres LSF diminue à 900 bit/s et par conséquent le codeur FS1016 fonctionne à un débit de
4,57 kbit/s. Pour réaliser ces tests, nous avons généré pour un même signal de parole original
ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007 23/38
M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF 1741

trois versions de signaux de parole synthétique : un avec des paramètres LSF non quantifiés et
les deux autres avec des paramètres LSF quantifiés en utilisant respectivement le codeur LSF-
OTCVQ de 27 bit/trame et le SQ de 34 bit/trame. Les évaluations subjectives de la qualité du
codage sont effectuées ici par les tests de comparaison A-B et les tests MOS (Mean Opinion
Score). Six phrases de la base de données TIMIT (prononcées par trois locuteurs masculins et
trois locuteurs féminins) ont été utilisées pour les évaluations subjectives. Huit auditeurs ont
participés aux tests d’écoutes. Les tests de comparaison A-B consistent à faire écouter aux
auditeurs des séquences de paires de signaux de parole de tests (A et B). Pour chaque phrase,
une comparaison est faite entre les signaux synthétiques : l’un A (ou B) avec paramètres LSF
non quantifiés et l’autre B (ou A) avec paramètres LSF quantifiés par le codeur LSF-OTCVQ. Les
paires de signaux A-B sont présentées dans un ordre aléatoire. Les auditeurs choisissent une
ou l’autre des deux versions de signaux décodées, ou n’indiquer aucune préférence. En ce
qui concerne les tests MOS, les auditeurs doivent évaluer chaque signal de parole synthétique
(avec paramètres LSF quantifiés par l’LSF-OTCVQ) et délivrer un score d’appréciation (ou
d’opinion) variant dans un intervalle entre 1 (mauvais) et 5 (excellent). A la fin des tests, on
fait le calcul du score d’opinion moyen (MOS).
Les résultats des tests de comparaison A-B subjectifs montrent que la majorité des audi-
teurs (58,84 %) n’ont indiqués aucune préférence. La préférence moyenne pour les signaux
de parole synthétiques avec paramètres LSF quantifiés par LSF-OTCVQ (20,83 %) est identique
à celle obtenue pour les signaux de parole avec paramètres LSF non quantifiés. D’une manière
approximative, nous pouvons conclure que les deux versions considérées des signaux de
parole décodés sont statistiquement indiscernables. C’est-à-dire, qu’il n’y a aucune diffé-
rence perceptible et que la quantification ne contribue pas à une distorsion audible. En terme
de MOS, la version considérée des signaux de parole décodés présente un bon score MOS de
3,89. Ceci implique que le codeur FS1016 avec codage LSF-OTCVQ de ses paramètres LSF
donne des communications de bonne qualité avec des niveaux d’intelligibilité élevés [4, 46,
47]. Ainsi le codeur LSF-OTCVQ de 27 bit/trame peut assurer une qualité de quantification
transparente des paramètres LSF. Le FS1016 avec l’incorporation de ce codeur se situe dans la
bonne catégorie.
Par ailleurs, en terme de rapport signal/bruit segmental (RSBseg) moyen, les signaux de
parole synthétiques avec paramètres LSF non quantifiés ont données un RSBseg moyen de 11,05
dB; avec codage LSF-OTCVQ des paramètres LSF, le RSBseg moyen obtenu est de 10,31 dB.
Dans le cas ou les paramètres LSF sont quantifiés par le SQ de 34 bits, un RSBseg moyen de 9,59
dB a été obtenu. Ainsi, une diminution du débit de codage avec une amélioration des perfor-
mances-RSBseg du FS1016 a été obtenue par application du système de codage LSF-OTCVQ.

VI.1. Robustesse du codeur LSF-OTCVQ :


cas des transmissions par canal bruité

Nous avons montré précédemment que le codeur LSF-OTCVQ permettait d’obtenir une
quantification transparente des paramètres LSF du FS1016 en utilisant 27 bit/trame. Afin
d’améliorer les performances de nos codeurs dans le cas des transmissions réelles, la robus-
tesse des codeurs LSF-OTCVQ en présence des erreurs de canal a été étudiée. Dans cette partie,
nous nous sommes intéressé à la protection implicite des codeurs par application du CCSC.
Particulièrement, nous avons adopté la technique de quantification vectorielle optimisée pour

24/38 ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007


1742 M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF

un canal bruité (QVOC) qui sera utilisée pour donner une robustesse aux dictionnaires des
codeurs LSF-OTCVQ.
Plusieurs travaux ont considéré la conception conjointe de quantificateurs TCQ pour un
canal bruité. Par exemple dans [51], un quantificateur TCQ de sources sans-mémoire a été
développé pour des transmissions à travers un canal BSC. Pour concevoir ce système, les
auteurs ont suivis la même méthodologie que celle adoptée dans [52] où un algorithme basé
sur celui de Lloyd-Max a été développé pour concevoir un alphabet de reproduction d’un
système de codage en treillis fonctionnant à travers un canal bruité. Toujours dans le même
article [51], une conception combinée de la TCQ et de la TCM pour un CCSC a été réalisée dans
le cas des transmissions à travers un canal de type gaussien (AWGN). Cette conception a utili-
sée les formulations de base données dans [53]. Ainsi que d’autres travaux qui ont utilisé le
CCSC pour concevoir des quantificateurs TCQ robustes fonctionnant à travers un canal bruité.
Dans ce qui suit, nous verrons, dans un premier temps, comment appliquer la QVOC dans
la conception robuste du système LSF-OTCVQ afin d’apporter une protection implicite à cer-
tains de ses indices. Pour des raisons d’évaluations comparatives, nous avons choisi d’utiliser
le même exemple de codeur LSF-OTCVQ de 27 bit/trame, appliqué au codage des LSF du
FS1016. Pour terminer, nous généraliserons l’étude à la protection complète de tous les
indices du codeur LSF-OTCVQ avec QVOC.

VI.1.1 Conception du codeur LSF-OTCVQ avec CCSC par QVOC

Le principe de conception du système LSF-OTCVQ optimisé pour un canal bruité se base


principalement sur l’algorithme de conception du codeur LSF-OTCVQ (cf. section V) modifié
selon le concept de base de la QVOC (cf. section IV). Dans nos applications, les 5 diction-
naires étendus du nouveau système, que nous avons dénoté par : « Encodeur COVQ-LSF-
OTCVQ », ont été optimisés pour une probabilité d’erreur de conception ε = 0,05.
Les étapes de base de notre algorithme de conception du système COVQ-LSF-OTCVQ de
27 bit/trame sont résumées ci-dessous. Notons que le nombre d’états du treillis du système
est toujours S = 4; par conséquent 2 bits par trame sont nécessaires pour spécifier l’état initial
du treillis lors du codage d’un vecteur LSF de taille 10. Les 25 bits restants sont repartis pour
les 5 dictionnaires selon l’allocation des bits donnée au tableau V. Précisons qu’au départ les
5 dictionnaires étendus initiaux sont conçus par l’algorithme LBG-QV (ε = 0,000) en utilisant
la mesure de distance euclidienne pondérée (Eq.28). La conception des dictionnaires du nou-
veau système COVQ-LSF-OTCVQ est effectuée à travers la même base de données d’apprentis-
sage (75000 vecteurs LSF). Par la suite, cette base est divisée en 5 sous-ensembles
d’apprentissage de paires de vecteur LSF 2-D (LSF 1-2, LSF 3-4, LSF 5-6, LSF 7-8 ET LSF 9-10).

Étapes de conception du codeur COVQ-LSF-OTCVQ :


Étape 1 : Conception initiale
− Basé sur les 5 ensembles d’apprentissage, utiliser l’algorithme COVQ (εc = 0,05)
pour concevoir les 5 dictionnaires-COVQ initiaux étendus du système de codage
COVQ-LSF-OTCVQ.
− Partitionner chacun de ces 5 dictionnaires initiaux en 4 sous-dictionnaires en utili-
sant l’algorithme de la partition d’ensemble. Etiqueter ensuite les transitions de
chaque étage du treillis avec le dictionnaire-COVQ partitionné correspondant (c.-à-
d., dictionnaire-COVQ LSF1-2 pour l’étage1,… etc).
− Définir un seuil d’arrêt α et l’initialiser à une valeur très petite.

ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007 25/38


M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF 1743

Étape 2 : Codage/Décodage TCVQ


− Pour toute la base d’apprentissage des vecteurs LSF, trouver les meilleurs vecteurs
de reproduction LSF à travers le treillis en utilisant une version modifiée de la procé-
dure de recherche de Viterbi.
− Calculer la SD moyenne entre les vecteurs LSF originaux et quantifiés.

Étape 3 : Test d’Arrêt


− Si la diminution relative de la SD moyenne est au-dessous du seuil α, sauvegarder
les 5 dictionnaires optimisés du système COVQ-LSF-OTCVQ. Arrêt du programme.
− Sinon, mise à jour des vecteurs-code des 5 dictionnaires-COVQ étendus en utilisant
une version modifiée de la procédure d’optimisation. Aller à l’étape 2.

Dans l’étape 2, le processus de codage TCVQ de la séquence de donnée LSF consiste à


trouver la meilleure séquence possible des vecteurs-code (chemin optimal) à travers le
treillis. Cette tache est effectuée par l’algorithme de Viterbi avec une légère modification
apportée au niveau de la formule de calcul de distance. En effet, une combinaison de l’équa-
tion (28) avec les formules (16) et (23) a été effectuée pour définir une mesure de distance
appropriée entre un vecteur LSF original f et sa version quantifiée fˆi. Cette distance, qui doit
être minimiser lors du processus de recherche TCVQ du vecteur-code optimal, est formulée
comme suit :

1 k
(33) d (f , fˆi ) =  p( j/i)   cm wmd( f (m) – fˆj (m), i = 0,…, L – 1.
j ∈ξi k m=1
où k est la dimension des vecteurs LSF (k = 2 pour les paires LSF) et ξi est l’ensemble des voi-
sins de i telle que dH (i, j) = 1. En effet, pour des raisons de complexité de traitement, nous
considérons toujours que les transmissions s’effectuent à travers un canal bruité de type BSC
avec la supposition d’un seul bit d’erreur dominant par indice binaire bruité. La probabilité
de transition du canal est définie donc par l’équation (21). Rappelons qu’après le processus
de codage, le codeur COVQ-LSF-OTCVQ délivre au canal deux séquences binaires en plus des
deux bits représentant l’état initial du treillis. Notons que lorsque la taille des séquences à
coder est petite (comme par exemple ici un vecteur LSF de taille 10), une procédure de
recherche de l’état initial optimal doit être effectuée afin d’obtenir les meilleurs résultats pos-
sibles. Dans le cas de l’exemple choisis du COVQ-LSF-OTCVQ de 27 bit/trame, les séquences
binaires délivrées par le codeur lors du codage d’un vecteur LSF sont schématisées dans la
figure 3.
Notons que seule la séquence des indices des vecteurs-code des dictionnaires étendus
COVQ-LSF-OTCVQ (séquence de 5 indices de 20 bits au total) est sensée être protégée implici-
tement par QVOC. Cette séquence est issue directement par procédure de recherche QVOC à
travers les 5 dictionnaires du système de codage. Par contre, les autres séquences binaires
(état initial, chemin optimal) ne sont pas délivrées par un processus de recherche QV et par
conséquent elles ne sont pas protégées implicitement contre les erreurs de canal. Précisons,
enfin, que la mise à jour des vecteurs-code des dictionnaires étendus COVQ-LSF-OTCVQ
(ε = 0,05) est effectuée en utilisant une version modifiée de la procédure d’optimisation
OTCVQ. II s’agit du même principe d’optimisation du dictionnaire étendu de la TCVQ, décrit à
la section III, sauf que la formule d’actualisation des vecteurs-code, donnée dans l’étape 3 de

26/38 ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007


1744 M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF

FIG 3. – Séquences binaires de codage d’un vecteur LSF par le COVQ-LSF-OTCVQ de 27 bit/trame.
Encoding binary sequences of an LSF vector by the 27 bit/frame COVQ-LSF-OTCVQ encoder.

l’algorithme OTCVQ, est remplacée par l’équation (26) dont la formulation est bien détaillée
dans la sous-section IV.1.

VI.1.2. Performances du codeur COVQ-LSF-OTCVQ : Codage des paramètres LSF du FS1016

Nous présentons maintenant les performances du système de codage COVQ-LSF-OTCVQ


(ε = 0,05) de 27 bit/trame appliqué au codage efficace et robuste des paramètres LSF du
FS1016. En incorporant ce codeur dans le FS1016 et en n’ajoutant aucun code redondant, le
codeur FS1016 fonctionnera à un débit binaire de 4,57 kbit/s. Dans ces simulations, les
erreurs du canal affecteront seulement la transmission des paramètres LSF. Pour le moment,
seules les séquences de 20 bit/trame spécifiant les indices des vecteurs-code des dictionnaires
COVQ-LSF-OTCVQ sont transmises à travers un canal bruité BSC de probabilité d’erreur p
variant entre 0 et 0,5.
La base de données utilisée dans les évaluations suivantes est composée de séquences de
parole de 13,69 secondes extraites de la base de données de test. Des versions synthétiques
des signaux de parole de cette base ont été engendrées par le codeur FS1016, avec les RSBseg
moyens et les SD moyennes des codeurs des LSF. Les performances-SD des systèmes de
codage : LSF-OTCVQ de 27 bit/trame (sans protection) et le COVQ-LSF-OTCVQ (ε = 0,05) sont
présentées à la figure 4 et reportées en détails dans le tableau VII.

ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007 27/38


M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF 1745

TABLEAU VII. – Comparaison des performances entre les systèmes COVQ-LSF-OTCVQ/LSF-OTCVQ


de 27 bit/trame.
Performance comparisons between COVQ-LSF-OTCVQ/LSF-OTCVQ encoders of 27 bit/frame.

Encodeur COVQ-LSF-OTCVQ Encodeur LSF-OTCVQ


Probabilité p SD Moy. SD « Outliers » (en %) SD Moy. SD « Outliers » (en %)
du BSC (dB) 2-4 dB > 4 dB (dB) 2-4 dB > 4 dB
0,000 1,690 25,607 0,441 1,073 0,440 0,000
0,001 1,693 25,827 0,441 1,099 0,441 0,442
0,005 1,710 26,710 0,662 1,148 0,883 1,544
0,010 1,712 26,931 0,441 1,224 2,649 1,986
0,050 1,800 32,671 0,883 1,707 10,596 7,505
0,100 1,924 38,852 0,883 2,696 15,010 21,192
0,200 2,130 46,799 3,532 4,251 17,439 43,929
0,500 2,696 67,911 7,726 6,649 13,245 80,573

FIG 4. – Performances du LSF-OTCVQ de 27 bit/trame, sans et avec CCSC-QVOC


(COVQ-LSF-OTCVQ) : application au codage des paramètres LSF du FS1016.
27 bit/frame LSF-OTCVQ encoder Performances, without and with JSCC-COVQ
(COVQ-LSF-OTCVQ) : application to the FS1016 LSF parameters encoding.

Ces résultats montrent que lorsque la probabilité d’erreur de transmission devient assez
élevée (p > ε = 0,05), la QVOC apporte une amélioration significative aux performances du

28/38 ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007


1746 M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF

système LSF-OTCVQ. Sans protection, le LSF-OTCVQ subit une dégradation plus sévère compa-
rée au cas protégé (c.-à-d., système COVQ-LSF-OTCVQ). Ceci est traduit par une augmentation
brutale de la SD moyenne du LSF-OTCVQ quand le canal devient fortement bruité (p > 0,05)
ainsi que le pourcentage des fenêtres « outliers » ayant une SD > 4 dB qui commence a s’ac-
croître rapidement à des probabilité d’erreur p faible. Par exemple, pour un canal BSC de
p = 0,5, les performances-SD du système LSF-OTCVQ ont subit une dégradation d’environ 4 dB
comparé au système avec protection. Dans ces conditions de transmission, la QVOC (ε = 0,05)
a permit donc au système LSF-OTCVQ d’avoir une robustesse contre les erreurs de canal en
maintenant une augmentation réduite et lente de la SD moyenne et du nombre des fenêtres
« outliers » de SD > 4 dB. Par ailleurs, lorsque les transmissions s’effectuent à travers un
canal non bruité (p = 0,000) ou faiblement bruité (p ≤ ε), les performances du système COVQ-
LSF-OTCVQ deviennent sous-optimales en compromettant les performances de quantification
transparente (en terme de SD et fenêtres « outliers »).
D’autre part, des constatations très importantes ont été notées concernant les perfor-
mances objectives RSBseg du codeur global FS1016. En effet, à l’inverse de certaines conclu-
sions tirées à la sous-section IV.3, les performances du FS1016 en terme de RSBseg (avec
paramètres LSF codés par COVQ-LSF-OTCVQ) sont aussi remarquables lorsque le canal de trans-
mission est faiblement bruité. L’évaluation comparative des performances objectives du
FS1016, avec LSFs codés par les systèmes LSF-OTCVQ et COVQ-LSF-OTCVQ, est présentée dans le
tableau VIII.

TABLEAU VIII. – Performance objective du FS1016 global en terme de RSBseg moyen.


Average Segmental-SNR objective performance of the FS1016.

RSBseg moyen [dB] du FS1016 avec :


Probabilité p LSF-OTCVQ COVQ-LSF-OTCVQ
du BSC (27 bits/trame) (27 bits/trame)
0,000 10,499 10,497
0,001 10,491 10,490
0,005 10,472 10,481
0,010 10,361 10,460
0,050 10,146 10,324
0,100 9,721 10,246
0,200 8,668 10,140
0,500 6,958 9,847

Pour des probabilités d’erreur p ≤ 0,01, ces résultats montrent que les distorsions causées
par les erreurs du canal sont négligeables pour les deux systèmes de codage des LSF. Nous
pouvons conclure que le nouveau système COVQ-LSF-OTCVQ (ε = 0,05) peut apporter une
bonne protection implicite aux paramètres LSF du codeur FS1016 avec des performances-SD
sous-optimales lorsque le canal est faiblement bruité. Lorsque le canal est fortement bruité,
l’efficacité et la robustesse du système de codage est considérable.
Dans la figure 5, nous donnons un simple exemple de résultat de synthèse d’un signal de
parole par le codeur FS1016, où ses paramètres LSF sont quantifiés respectivement par les

ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007 29/38


M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF 1747

codeurs LSF-OTCVQ et COVQ-LSF-OTCVQ (ε = 0,05). Le signal original considéré (extrait de la


base de test) est d’environ 3,36 secondes. Deux signaux de parole synthétique ont été géné-
rés : le premier (Fig. 5-b) avec paramètres LSF quantifiés par le COVQ-LSF-OTCVQ de
27 bit/trame et le second (Fig. 5-c) avec quantification des LSF par le codeur LSF-OTCVQ de 27
bit/trame. Pour chaque transmission à travers un canal BSC de p = 0,1, les RSBseg moyens des
signaux synthétiques et les SD moyennes des codeurs-LSF sont reportés dans la figure.
Ces résultats de simulation à travers un BSC de p = 0,1 montrent une dégradation sévère
des performances du LSF-OTCVQ où certaines trames ont affiché de grandes valeurs SD qui ont
dépassées les 10 dB, au moment où les performances SD du COVQ-LSF-OTCVQ n’ont pas
dépassé les 4 dB (tableau IX). D’autre part, les performances objectives RSBseg du FS1016
ont été améliorées de 1,063 dB comparé au cas de codage non protégé des LSF. Une dégrada-
tion RSBseg négligeable a été notée lors de la synthèse du signal de la Fig. 5-b. En effet, pour
un canal non bruité (p = 0), le RSBseg moyen obtenu lorsque les LSF sont codés par l’COVQ-
LSF-OTCVQ est de 10,182 dB.

TABLEAU IX. – Performances SD des codeurs LSF : transmissions à travers un BSC de p = 0,1.
LSF encoders SD performances : transmissions over a BSC channel of p = 0.1.

SD « Outliers » (en %)
Codage des LSF du FS1016 SD Moy. (dB)
2-4 dB > 4 dB
COVQ-LSF-OTCVQ (27bits) 1,755 34,234 00,000
LSF-OTCVQ (27 bits) 3,041 09,900 28,828

VI.2. Codeur COVQ-LSF-OTCVQ avec codage de canal redondant

Nous généralisons maintenant l’étude à la protection complète de tous les indices de


transmission du codeur COVQ-LSF-OTCVQ (ε = 0,05) de 27 bit/trame. En utilisant adéquate-
ment les 7 bit/trame gagnés par ce codeur, un codage de canal redondant est utilisé pour pro-
téger explicitement les 7 bit/trame restants sans protection. Ce codage consiste à envoyer
avec l’information utile des bits supplémentaires appelés bits de redondance. Ces bits, qui
dépendent des bits utiles, seront utilisés par le décodeur de canal afin de détecter et corriger
d’éventuelles erreurs de transmission de données [10]. Puisque dans nos simulations les
transmissions s’effectuent à travers un canal bruité BSC avec la supposition d’un seul bit d’er-
reur dominant par indice binaire bruité (erreur simple), un code correcteur d’erreur simple est
largement suffisant pour corriger toutes les éventuelles erreurs simples qui affecterons les
séquences transmises du codeur (5 bits du chemin optimal et les 2 bits de l’état initial).
Notons, bien sûr, que les 20 bit/trame des indices des vecteurs-code du chemin optimal sont
déjà protégés implicitement par QVOC.
Pour réaliser le codage de canal des 7 bit/trame restants non protégés, nous avons utilisé
deux codes correcteurs d’erreurs de Hamming (7, 4, 3) appartenant à la catégorie des codes
en blocs linéaires systématiques. Dans cette catégorie de codes, notés généralement (n, k,
dmin), le message utile est découpée en blocs indépendants de k bits aux quels on adjoint r =
n – k bits de redondance afin d’obtenir des blocs de code de canal de n bits (n > k). Usuelle-
ment, les r bits de redondance sont une combinaison linéaire des k bits d’information utile.

30/38 ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007


1748 M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF

FIG 5. – Formes d’ondes synthétiques et évaluations des performances RSBseg/SD


pour la phrase de 3,36 s : transmissions à travers un canal BSC de p = 0,1.
Synthetic waveforms and SSNR/SD performance evaluations for the sentence of 3.36 s :
transmissions over a p = 0.1 BSC channel.

ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007 31/38


M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF 1749

Les relations linéaires étant soigneusement choisies à la fois pour garantir une distance mini-
male dmin suffisante entre deux mots distincts et pour que les opérations de codage et de
décodage soient les plus simples possible. En effet, la distance minimale dmin est un para-
mètre très important car c’est elle qui conditionne la capacité de correction du code (n, k,
dmin) en définissant le nombre d’erreur corrigibles t (t = (dmin – 1) /2) par bloc de code. Dans
cet article, nous n’allons pas revoir la théorie de conception ou de fonctionnement des codes
de Hamming (n, k, dmin), qui sont généralement bien documentés [10, 43, 54]. Ces codes ont
été conçus à l’origine [54] pour corriger efficacement une seule erreur par bloc de transmis-
sion (single error-correcting codes).
Dans notre conception, les deux codes de Hamming (7, 4, 3) que nous avons choisi d’uti-
liser ont la capacité de protéger 8 bits en générant ensemble 14 bits. Le codeur COVQ-LSF-
OTCVQ, avec les deux codes de Hamming (7, 4, 3), fonctionnera donc à un débit de 34
bit/trame. Il s’agit du même nombre de bits alloués au codage original des LSF du codeur
FS1016. Ainsi, la conception globale du FS1016 avec COVQ-LSF-OTCVQ (plus les 2 codes de
Hamming) des paramètres LSF maintient le débit du codeur de parole à sa valeur originale de
4,8 kbit/s. Notons que ce type de codage peut être facilement répertorie dans la catégorie du
codage conjoint traditionnel par équilibrage a posteriori du débit [19] entre codeurs source et
canal, où une procédure de réduction du débit de transmission d’un codeur de source est
effectuée pour ensuite ajouter adéquatement de la redondance afin d’améliorer les perfor-
mances du système global dans le cas des transmissions bruitées.
Les performances du système de codage LSF-OTCVQ de 27 bit/trame (non-protégé) com-
parées à celles du système protégé COVQ-LSF-OTCVQ (ε = 0,05) + codes correcteurs de Ham-
ming (7, 4, 3) sont présentées à la figure 6 et reportées en terme de fenêtres « outliers » dans
le tableau X.

TABLEAU X. – Évaluation comparative des performances-SD des systèmes :


LSF-OTCVQet COVQ-LSF-OTCVQ avec codage de canal de Hamming (7, 4, 3).
SD-Performance comparisons between the LSF-OTCVQ encoder and the COVQ-LSF-OTCVQ
encoder with the Hamming (7, 4, 3) channel coding.

Encodeur COVQ-LSF-OTCVQ Encodeur LSF-OTCVQ


+ 2 codes de Hamming (7, 4, 3) Sans protection
Probabilité p SD Moy. SD « Outliers » (en %) SD Moy. SD « Outliers » (en %)
du BSC (dB) 2-4 dB > 4 dB (dB) 2-4 dB > 4 dB
0,000 1,690 25,607 0,441 1,073 0,440 0,000
0,001 1,689 25,607 0,441 1,665 4,635 9,933
0,005 1,701 26,048 0,441 1,993 5,077 14,790
0,0100 1,725 26,490 0,662 2,030 5,960 14,128
0,050 1,802 28,697 1,545 2,896 13,907 26,931
0,100 1,948 32,229 3,532 3,825 17,880 41,721
0,200 2,226 34,878 7,505 5,070 23,620 54,304
0,500 2,389 35,982 10,596 7,057 12,362 86,754

32/38 ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007


1750 M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF

FIG 6. – Performances du système LSF-OTCVQ de 27 bit/trame, sans et avec protection


par QVOC (ε = 0,05) et codes correcteurs de Hamming (7, 4, 3).
27 bit/frame LSF-OTCVQ encoder Performances, without and with protection
by COVQ (ε = 0,05) and Hamming (7, 4, 3) correcting codes.

Pour toute la plage de variation de la probabilité d’erreur de transmission, le codage de


canal par codes de Hamming (7, 4, 3) a apporté une nette amélioration aux performances-SD
du système de codage COVQ-LSF-OTCVQ de 27 bit/trame. Le système global présente ainsi une
bonne robustesse contre les erreurs du canal bruité. Par ailleurs, en comparant ces résultats
avec ceux donnés au tableau VII, le système LSF-OTCVQ sans protection a subit une dégrada-
tion plus grande en terme de SD moyenne et de fenêtres « outliers ». Ceci est dû principale-
ment au bruitage aléatoire des séquences binaires spécifiant l’état initial ou le chemin
optimal.
Concernant les performances objectives RSBseg du codeur global FS1016 (avec LSF codés
par COVQ-LSF-OTCVQ + Hamming (7, 4, 3)), les dégradations sont très faibles,
voire même négligeables pour des probabilités d’erreur p < 0,01. Les performances-
RSBseg du FS1016, dans les cas avec et sans protection des LSF, sont données dans le
tableau XI.

ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007 33/38


M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF 1751

TABLEAU XI. — Performance objective RSBseg moyen du FS1016 global.


Average Segmental-SNR objective performance of the overall FS1016.

RSBseg moyen [dB] avec


Probabilité p LSF-OTCVQ COVQ-LSF-OTCVQ
du BSC (Sans protection) + code Ham (7, 4, 3)
0,000 10,499 10,497
0,001 10,428 10,476
0,005 10,276 10,467
0,010 10,218 10,416
0,050 9,607 10,352
0,100 8,567 10,274
0,200 7,789 10,173
0,500 6,775 9,916

VII. CONCLUSION

Dans ce travail, un système de codage optimal basé sur la quantification vectorielle codée
par treillis a été développé pour le codage efficace et robuste des paramètres spectraux LSF du
codeur FS1016. Dans le cas des transmissions idéales à travers un canal non bruité, les résul-
tats d’évaluation objective et subjective ont montrés que notre codeur LSF-OTCVQ incorporé
dans le FS1016 peut donner de meilleures performances comparé au SQ de 34 bit/trame, uti-
lisé à l’origine dans la norme FS1016. Particulièrement, le codeur LSF-OTCVQ de 27 bit/trame
(avec distance pondérée) a produit une qualité perceptuelle équivalente à celle obtenue quand
les paramètres LSF ne sont pas quantifiés, assurant ainsi une quantification-LSF de qualité
transparente à des débits plus bas.
Par la suite, nous nous sommes intéressés à l’amélioration de la robustesse de nos codeurs
afin de les rendre opérationnels pour des transmissions réelles à travers un canal bruité. La
technique de quantification vectorielle optimisée pour un canal bruité a été utilisée pour
concevoir un CCSC du codeur LSF-OTCVQ incorporé dans le FS1016. Les résultats de simulation
ont montrés que notre nouveau système de codage COVQ-LSF-OTCVQ a permit au système LSF-
OTCVQ de base d’avoir une bonne robustesse contre les erreurs de canal (BSC) surtout lorsque
la probabilité des erreurs de transmission est assez élevée. D’autre part, lorsque les transmis-
sions s’effectuent à travers un canal non bruité ou faiblement bruité, les performances-SD du
système COVQ-LSF-OTCVQ deviennent sous-optimales. Par contre, les performances objectives
RSBseg du codeur global FS1016 (avec paramètres LSF codés par COVQ-LSF-OTCVQ) sont satis-
faisantes dans ces conditions de transmission (canal faiblement bruité).
Pour terminer ce travail, il faillait protéger complètement tous les indices de transmis-
sion de notre codeur COVQ-LSF-OTCVQ puisque seulement une partie de ces indices été proté-
gée implicitement par CCSC-QVOC. En utilisant adéquatement les bits par trame gagnés par ce
codeur, un codage de canal redondant par code de Hamming a été utilisé pour protéger expli-
citement les bits restants sans protection. Nous avons montré que le codeur COVQ-LSF-OTCVQ,
utilisant les codes de Hamming (7, 4, 3), a contribué significativement à l’amélioration des

34/38 ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007


1752 M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF

performances du codage des paramètres LSF du FS1016. Nous pouvons conclure que notre
système de codage global COVQ-LSF-OTCVQ avec codage de canal de Hamming peut coder
d’une manière efficace et robuste les paramètres spectraux LSF du codeur de parole FS1016
fonctionnant à travers un canal bruité.

VIII. ANNEXE : CODEUR DE PAROLE DE LA NORME FÉDÉRALE FS1016

La norme fédérale américaine FS1016 [49] est un codeur de parole basé sur la technique
CELP (Code Excited Linear Prediction) qui fonctionne à un débit de 4,8 kbit/s. Ce codeur a
été développé conjointement par le DoD (Department of Defense) de la défense nationale
des USA et les laboratoires de AT&T Bell. Plus de détails concernant la technique de codage
CELP sont donnés dans les références [27, 55].
Le codeur CELP de la norme FS1016 divise le signal de parole (échantillonné à 8 kHz)
d’entrée en fenêtres d’analyse de 30 ms (240 échantillons), dont chacune est divisée encore
en quatre sous-fenêtres de 7,5 ms. Pour chaque fenêtre d’analyse, le codeur calcule un
ensemble de 10 coefficients (LPC) du filtre de synthèse par une prédiction linéaire à court
terme. A chaque sous-fenêtre, le signal d’excitation de ce filtre est déterminé par une modé-
lisation d’ordre 2. Il est construit donc par une combinaison linéaire de deux vecteurs de
code, sélectionnés selon une procédure d’analyse par synthèse. Ceci est effectué en minimi-
sant un critère d’erreur perceptuel [27].
Le premier vecteur, d’indice de retard ia, est extrait d’un dictionnaire adaptatif (prédictif)
de 256 vecteurs-code puis pondéré par un gain ga. Ce dictionnaire, qui est composé de
séquences antérieures d’excitations synthétiques, est utilisé pour modéliser les périodicités à
long terme présentes dans le signal de parole voisé. Le second vecteur, d’indice is, est extrait
d’un dictionnaire stochastique puis pondéré par un gain gs. Ce dictionnaire qui est de nature
statique contient 512 vecteurs de code pseudoaléatoires. Le schéma fonctionnel de ce codeur
est montré sur la figure 7. Suivant la norme FS1016, les paramètres transmis par ce codeur
sont les 10 paramètres LSP, les indices des dictionnaires stochastique et adaptatif (is et ia)
ainsi que les gains associés (gs et ga). Les paramètres LSP sont quantifiés par un SQ de 34
bit/trame suivant la configuration binaire (3.4.4.4.4.3.3.3.3.3) [47]. Le tableau XII montre
l’allocation des bits des paramètres du FS1016 transmis chaque fenêtre d’analyse de 30 ms.
Au niveau du décodeur, les entrées pondérées des deux dictionnaires passe par le filtre de
synthèse pour donner le signal de parole synthétique. Enfin ce signal doit subir un post-
filtrage pour améliorer sa qualité perceptuelle.

Manuscrit reçu le 26 juin 2006


Accepté le 25 octobre 2006

ANN. TÉLÉCOMMUN., 62, n°3-4, 2007 35/38


M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF 1753

TABLEAU XII. — Allocation des bits dans la norme FS1016 de 4,8 kbit/s.
4.8 Kbps FS1016 bits allocation.

Paramètres/fenêtre Bit/fenêtre Débit (bit/s)


10 LSP 3, 4, 4, 4, 4, 3, 3, 3, 3, 3 1133,3
4 indices ia 8+6+8+6
1600
4 gains ga 4 5
4 indices is 49
1866,67
4 gains gs 4 5
Correction erreur 4
Synchronisation 1 0,2
Bit non utilisé 1
Total 144 4800

FIG 7. – Schéma-bloc du codeur de parole de la norme FS1016.


Block diagram of the FS1016 speech coder.

36/38 ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007


1754 M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF

BIBLIOGRAPHIE

[1] BOITE (R.), KUNT (M.), Traitement de la parole, Presses polytechniques Romandes, Lausanne, 1987.
[2] RABINER (L. R.), SCHAFER (R. W.), Digital Processing of speech signals, Prentice-Hall, Englewood Cliffs, NJ,
1978.
[3] KLEIJN (W. B.), PALIWAL (K. K.), Speech coding and synthesis, Elsevier Science B.V., 1995.
[4] PALIWAL (K. K.), ATAL (B.S.), Efficient vector quantization of LPC parameters at 24 bit/frame, IEEE Transactions
on Speech and Audio Processing, 1, n° 1, pp. 3-14, January 1993.
[5] ITAKURA (F.), Line spectrum representation of linear predictive coefficients of speech signals, Journal of
Acoustical Society of America, 57, p. 535, April 1975.
[6] MALONE (K.T.), FISCHER (T. R.), Enumeration and Trellis-Searched Coding Schemes for Speech LSP
Parameters, IEEE Trans. Speech and Audio Processing, 1, n° 3, pp. 304-314, 1993.
[7] LEBLANC (W. F.), BHATTACHARYA (B.), MAHMOUD (S. A.), CUPERMAN (V.), Efficient search and design proce-
dures for robust multi-stage VQ of LPC parameters for 4 kb/s speech coding, IEEE Trans. Speech and Audio
Processing, 1, n° 4, pp. 373-385, October 1993.
[8] SOONG (F. K.), JUANG (B. H.), Optimal quantization of LSP parameters, Proc. IEEE Int. Conf. Acous., Speech
Signal Processing, New York, pp. 394-397, April 1988.
[9] BOUZID (M.), DJERADI (A.), Optimisation de la quantification vectorielle codée par treillis : Application au
codage des paramètres LSF, Annales des Télécommunication, 60, n° 5-6, pp. 744-769, mai-juin 2005.
[10] LIN (S.), An Introduction to Error-Correcting Codes, Prentice-Hall, Inc., Englewood Cliffs, New Jersey, USA,
1970.
[11] VITERBI (A. J.), OMURA (J. K.), Principles of Digital Communication and Coding, McGraw-Hill Kogakusha,
1979.
[12] LABEAU (F.), Strategies for exploiting residual redundancy in joint source-channel coding, Doctorate Thesis in
Applied Science, UCL university, Belgium, September 2000.
[13] SHANNON (C. E.), Mathematical Theory of Communication, Bell System Technical Journal, 27, n° 3-4,
pp. 379-423, 623-656, July and October, 1948.
[14] SHANNON (C. E.), Coding Theorems for a Discrete Source with a Fidelity Criterion, IRE Nat. Conv. Rec.,
pp. 142-163, March 1959.
[15] FARVARDIN (N.), VAISHAMPAYAN (V.), Optimal Quantizer Design for Noisy Channels : An Approach to
Combined Source-Channel Coding, IEEE Transactions on Information Theory, 33, n° 6, pp. 827-838,
November 1987.
[16] ZEGER (K. A.), GERSHO (A.), Vector Quantizer Design for Memoryless Noisy Channels, in Proceedings of the
International Conference on Communications (ICC’88), pp. 1593-1597, Philadelphia, 1988.
[17] VEMBU (S.), VERDU (S.), STEINBERG (Y.), The Source-Channel Theorem Revisited, IEEE Transactions on
Information Theory, 41, n° 1, pp. 44-54, 1995.
[18] FARVARDIN (N.), A Study of Vector quantisation for Noisy Channels », IEEE Transactions on Information
Theory, 36, n° 4, pp. 799-809, July 1990.
[19] DUHAMEL (P.), RIOUL (O.), Codage Conjoint Source/Canal : Enjeux et Approches, Proceedings du Seizième
Colloque sur le traitement du Signal et des Images (GRETSI), pp. 699-704, Grenoble, France, 15-19 septembre
1997.
[20] GUISANTES (J. R.), Codage Conjoint de Source et de Canal, Thèse Doctorat, Ecole Nationale Supérieure des
Télécommunications (ENST), Spécialité : Electronique et Communications, Paris, France, Décembre 1997.
[21] FARBER (B.), Quantization over noisy channels and bits allocation, PhD. Thesis, Electrical Engineering,
University of California, San Diego, USA, 2005.
[22] AZAMI (S. B. Z.), Codage Conjoint source/Canal : Protection Hiérarchique, Thèse Doctorat, École Nationale
Supérieure des Télécommunications (ENST), Spécialité : Électronique et Communications, Paris, France, mai
1999.
[23] AZAMI (S. B. Z.), DUHAMEL (P.), RIOUL (O.), combined Source-channel Coding: Panorama of Methods,
Presented in CNES Workshop on Data Compression, Toulouse France, November 1996.
[24] CHIANG (D. M.), POTTER (L. C.), Vector Quantisation For Noisy Channels: A guide To performance And
Computation, IEEE Trans. on Circuits and systems for Video Technology, 7, n° 1, pp. 604-612, 1997.
[25] GERSHO (A.), GRAY (R. M.), Vector quantization and Signal compression, Kluwer Academic Publishers, USA
1992.
[26] POTTER (L. C.), CHIANG (D. M.) Chiang, Minimax Nonredundant Channel Coding, IEEE Transactions on
Communications, 43, n° 2/3/4, pp. 804-811, Feb/Mar/April 1995.
[27] MOREAU (N.), Techniques de Compression des Signaux, Edition Masson, Paris 1995.

ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007 37/38


M. BOUZID – CODAGE CONJOINT SOURCE-CANAL DES PARAMÈTRES LSF 1755
[28] LINDE (Y.), BUZO (A.), GRAY (R. M.), An Algorithm for Vector Quantization Design, IEEE Transactions on
Communications, COM-28, pp. 84-95, Jan. 1980.
[29] KATSAVOUNIDIS (I.), KUO (C.), ZHANG (Z.), A new initialization technique for generalized Lloyd iteration, IEEE
Signal Proc. Letters, 1, pp. 144-146, October 1994.
[30] PEARLMAN (W. A.), Sliding-block and random source coding with constrained size reproduction alphabets, IEEE
Transactions on Communications, 30, pp. 1859-1867, August 1982.
[31] MARCELLIN (M. W.), FISCHER (T. R.), Trellis coded quantization of memoryless and Gauss-markov sources,
IEEE Transactions on Communications, 38, pp. 83-93, January 1990.
[32] KASNER (J. H.), MARCELLIN (M. W.), HUNT (B. R.), Universal Trellis Coded Quantization, IEEE Transactions
on Image Processing, 8, n°. 12, pp.1677-1687, December 1999.
[33] WANG (H. S.), MOAYERI (N.), Trellis coded vector quantization, IEEE Transactions on Communications, 40,
pp. 1273-1276, August 1992.
[34] FISCHER (T. R.), MARCELLIN (M. W.), WANG (M.), Trellis coded vector quantization, IEEE Transactions on
Information Theory, 37, pp.1551-1566, November 1991.
[35] UNGERBOECK (G.), Trellis-coded modulation with redundant signal sets, Part I and II, IEEE Commun. Magazine,
25, pp. 5-21, February 1987.
[36] BOUZID (M.), Trellis Coded Vector quantization, Technical research report, Centre de Développement des
Technologies avancées (CDTA), Baba-Hassan, Alger, 2001.
[37] UNGERBOECK (G.), Channel coding with multilevel/phase signals, IEEE Trans. on Information Theory, IT-28,
pp. 55-67, January 1982.
[38] AKSU (A.), SALEHI (M.), Design, Performance, and Complexity Analysis of Residual Trellis-Coded Vector
Quantizers, IEEE Transactions on Communications, 46, n° 8, pp. 1020-1026, August 1998.
[39] BLAHUT (R. E.), Computation of Channel Capacity and Rate-Distortion Function, IEEE Transactions on
Information Theory, 18, n° 4, pp. 460-473, July 1972.
[40] BOUZID (M.), DJERADI (A.), Joint channel-source coding for robust vector quantization: Application to speech
coding, 7th International Workshop on Digital Signal Processing for Space Communications (DSP2001), 1-3
Oct. 2001, Portugal.
[41] FARVARDIN (N.), VAISHAMPAYAN (V.), On the performance and Complexity of Channel-Optimized Vector
Quantizers, IEEE, Transactions on Information Theory, 37, n° 1, pp. 155-159, January 1991.
[42] FARVARDIN (N.), Speech Coding over Noisy Channels, Technical research report, T.R. 94-5, Institute for sys-
tems research (ISR), University of Maryland, 1994.
[43] SHANMUGAM (K. S.), Digital and Analog Communication Systems, John Wiley & Sons,, Printed in USA, 1979.
[44] LAHOUTI (F.), KHANDANI (A. K.), Quantization of LSF Parameters Using A Trellis Modeling, IEEE Trans. on
Speech and Audio Processing, 11, Issue 5, pp. 400-412, Sep. 2003.
[45] LAROIA (R.), PHAMDO (N.), FARVARDIN (N.), Robust and efficient quantization of speech LSP parameters using
structured vector quantizers, Proc. IEEE Int. Conference Acoustic Speech and Signal Processing, pp. 641-644,
May 1991.
[46] RAMACHANDRAN (R. P.), SONDHI (M. M.), SESHADRI (N.), A Two Codebook Format for Robust Quantization of
Line Spectral Frequencies, IEEE Transactions on Speech and Audio Processing, 3, n° 3, pp. 157-167, May
1995.
[47] GRASSI (S.), Optimized Implementation of Speech Processing Algorithms, Doctorat Thesis, Neuchâtel
University, Switzerland, February 1998.
[48] GAROFOLO (J. S.) et al.,“DARPA TIMIT Acoustic-phonetic Continuous Speech Database”, Technology Building,
National Institute of Standards and Technology (NIST), Gaithersburg,, October 1988.
[49] CAMPBELL (J. P.), TREMAIN (T. E.), WELCH (V. C.), The Proposed Federal Standard 1016 4800 bps Voice Coder
CELP, Speech Technology Magazine, pp. 58-64, April/ May 1990.
[50] The US FS1016 based 4800 BPS CELP voice coder, Fortran and C simulation source codes, version 3.3c (CELP
3.3c), disponible sur Net ftp://svr-ftp.eng.cam.ac.uk et autres sites web.
[51] WANG (M.), FISCHER (T. R.), Trellis-Coded Quantization Designed for Noisy Channels, IEEE Transactions on
Information Theory, 40, n° 6, pp. 1792-1802, November 1994.
[52] AYANOĞLU (E.), GRAY (R. M.), The Design of Joint source and Channel Trellis Waveform Coders, IEEE
Transactions on Information Theory, IT-36, n° 6, pp. 855-864, November 1987.
[53] DUNHAM (J. G.), GRAY (R. M.), Joint source and Channel Trellis encoding, IEEE Transactions on Information
Theory, IT-27, n° 4, pp. 516-519, July 1981.
[54] HAMMING (R. W.), Error detecting and error correcting binary group codes, Bell System Technical Journal, 29,
pp.147-160, 1950.
[55] SCHROEDER (M. R), ATAL (B. S.), Code-Excited Linear Prediction (CELP) : High-quality speech at very low bit
rates, Proc. ICASSP 85, pp. 937-940, March 1985.

38/38 ANN. TÉLÉCOMMUN., 62, n° 3-4, 2007

View publication stats

Vous aimerez peut-être aussi