Académique Documents
Professionnel Documents
Culture Documents
net/publication/230777160
CITATIONS READS
5 166
All content following this page was uploaded by Merouane Bouzid on 27 May 2014.
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
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
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).
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
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.
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
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] :
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 :
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
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 :
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
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].
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.
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.
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.
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.
É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
É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
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.
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.
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
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).
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
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
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
2
(16) ⏐⏐x – yj⏐⏐ p( j/l)
j=0
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) :
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] :
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
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
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.
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.
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).
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.
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).
É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).
– 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.
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
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.
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.
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
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.
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
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.
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
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.
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
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.
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
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
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.
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
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é.
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.
TABLEAU XII. — Allocation des bits dans la norme FS1016 de 4,8 kbit/s.
4.8 Kbps FS1016 bits allocation.
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.