Vous êtes sur la page 1sur 23

S.

D
ja
zir
i-L
ar
EN bi

IT
La Quantification
La quantification

bi
ar
i-L
zir

IT
ja
D
S.

EN
Sonia Djaziri-Larbi — Dépt.TIC — ENIT Compression de données 1D-2D 11 / 72
La quantification La quantification scalaire

Formulation

bi
Quantificateur scalaire !"#$%&'&(#%&)$*+,-&$(&,.
: Q : [−A, A] → {0, 1, . . . , M − 1}

ar
S
I Une partition de [−A, A] en M intervalles Ri = [−A, A] de largeur ∆i

i-L
I M représentants vi , avec vi ∈ Ri .
P"#$D-&2 P"#$D-&$-D"+%F$#BF-
G 9+?-Q&/B+@B$-&9
{v0 , v1 , ...vM−1 } forme le ”codebook” ou dictionnaire.
zir OG <'O ,

I Exemple : M = 8 ⇒ R = 3bits/éch. Si fe = 8kHz, le débit D = fe R = 24kbps.


G#@+FBHBD@F-#$ LMK#@+FBHBD@F-#$

IT
ja
! 2 3&42'5&205&6&5&278&! 5&&9&! :)5'565;<'=&&5&&, 3&4,'5&,05&6&5&,78&! !7 5&
!7
! -+%-./>-&?-%&,@>-#$%&A$B%-%&A@$&2B C&D@$?4!8&3&E&4?@+%&>-&D@%&?B%D$-F8
D

! G#@+FBHBD@F-#$&I&G428&3&B " 2 ! JB&&&C&&B&! :)5'565;<'=&


# J)&5&J'&5&6 5&J;<'&I&D->>#>-%&?-&K#@+FBHBD@FB"+5&H"$.-+F&#+-&A@$FBFB"+
S.

# EN
LMK#@+FBHBD@F-#$ I&G<'4B8&3&,B
Quantificateur scalaire régulier (uniforme) : les Ri sont égaux et de largeur
:,) 5&,' 5&6 5&,;<'=&I&D"?-/""N "# ?BDFB"++@B$-

<R
,B4+8
R
24+8
7&3&'
2A
M

J) J;<'
!"#$%&'&(#%&)$*+,- !"#$%&'&( )*&+",-./$-&0))1 !"

Sonia Djaziri-Larbi — Dépt.TIC — ENIT Compression de données 1D-2D 12 / 72


La quantification La quantification scalaire

Loi de quantification uniforme

bi
ar
i-L
zir

IT
ja
D
S.

EN
Sonia Djaziri-Larbi — Dépt.TIC — ENIT Compression de données 1D-2D 13 / 72
La quantification La quantification scalaire

Formalisation

bi
ar
I Processus de quantification :

i-L
Quantification Q : x ∈ [−A, A] → i tel que x ∈ Ri
Quantification inverse Q−1 : i ∈ {0, . . . , M − 1} → vi
zir
Q puis Q−1 : q : x ∈ [−A, A] → y ∈ {v0 , . . . , vM−1 }
I Mesure de la puissance de l’erreur de quantification e = q(x ) − x :

IT
ja
Mesure de distorsion : l’EQM (erreur quadratique moyenne) :
D

Z A M−1
XZ
S.

2
σQ = E [e 2 ] = p(x )(q(X ) − X )2 dx = p(x )(vi − x )2 dx
−A

où p(x ) est la densité de probabilité de X .


EN i=0 Ri

F La puissance de l’erreur de Q dépend de la distribution du signal x

Sonia Djaziri-Larbi — Dépt.TIC — ENIT Compression de données 1D-2D 14 / 72


La quantification Quantification scalaire optimale

Minimisation de la puissance de l’erreur σQ2

bi
ar
But : Trouver la partition Ri et les représentants vi qui minimisent la puissance de
2
l’erreur de quantification σQ .

i-L
I Partition optimale pour {vi } donné
2
La minimisation de σQ donne : Ri = {x /∀j, ||vi − x || ≤ ||vj − x ||} (régions de
zir
Voronoı̈ / règle du plus proche voisin).

IT
ja
Dans le cas unidimensionnel, Ri = [ vi−12+vi , vi +v2 i+1 ]
D

I Représentants optimaux pour {Ri } donné : règle du centroı̈de (centre de


gravité)
S.

EN
vi = RRi
R

Ri
xp(x )dx
p(x )dx
a+b
F Dans le cas d’une distribution uniforme de X , si Ri = [a, b] alors vi = 2 .

Sonia Djaziri-Larbi — Dépt.TIC — ENIT Compression de données 1D-2D 15 / 72


La quantification Quantification scalaire optimale

Minimisation de σQ2 (calcul)

bi
1 soit {v0 , · · · , vM−1 } un dictionaire donné. La meilleure partition est alors

ar
Ri = {x /∀j, ||vi − x || ≤ ||vj − x ||}
2
Soit ti la valeur définissant la limite entre les partitions Ri et Ri+1 , la minimisation de σQ

i-L
par hrapport à ti donne : i

R ti R ti+1
∂ti
(x − vi )2 p(x )dx +
zir (x − vi+1 )2 p(x )dx = 0
ti−1 ti
vi +vi+1
⇒ (ti − vi )2 p(ti ) − (ti − vi+1 )2 p(ti ) = 0 soit ti = 2

IT
ja
2 Etant donnée une partition R0 , · · · , Ri , · · · , RM−1 , les représentants optimaux sont
D

donnés par la règle Rdu centroı̈de (ou centre de gravité) de la partie de la DDP placée dans
xp(x )dx
la région Ri : vi = Rx ∈Ri (1).
S.

La minimisation

∂v
R
i
p(x )(v
x ∈Rii
de σQ
− x
x ∈Ri

)2 dx = 0 ⇒ 2
p(x )dx
2 par rapport à v donne :
Ri
EN
p(x )(vi − x )dx = 0 ⇒ (1)
x ∈Ri

Rappel Intégrale de Riemann Rb


f (t) continue sur [a, b], alors 1) l’intégrale de Riemann de f existe, i.e. f (t)dt existe, 2) soit
Rt a

F (t) = f (x )dx , ∀t ∈ [a, b] ⇒ ∂t
F (t) = f (t), ∀t ∈ [a, b]
a

Sonia Djaziri-Larbi — Dépt.TIC — ENIT Compression de données 1D-2D 16 / 72


La quantification Quantification scalaire optimale

Minimisation de σQ2

bi
Recherche d’un quantificateur optimal :

ar
Problème difficile à résoudre lorsqu’on ne connaı̂t pas la DDP de X :

i-L
I Algorithme itératif de Lloyd-Max : optimisation alternée des représentants et de
la partition. zir
Ce processus est très sensible à l’initialisation. Ne converge que vers un minimum

IT
ja
local.
I Le quantificateur uniforme à M pas sur [−A, A] est optimal sous condition
D

de distribution uniforme de X :
S.

• ∆= 2A
M

• vi = −A + ( 21 + i)∆
EN
• Ri = [−A + i∆, −A + (i + 1)∆]

Sonia Djaziri-Larbi — Dépt.TIC — ENIT Compression de données 1D-2D 17 / 72


La quantification Quantificateur scalaire uniforme

Puissance de l’erreur (σQ2 ) pour X de distribution uniforme

bi
M−1

ar
XZ
2
σQ = E [ke 2 k] = p(x )kvi − x k2 dx

i-L
i=0 Ri
M−1
X Z −A+∆(i+1) 1 1
|x + A − ∆( + i)|2 dx
zir =
−A+∆i 2A 2
i=0

IT
ja
M−1
X Z ∆/2
1 M ∆3 ∆2 A2
= x 2 dx = = =
D

2A i=0 −∆/2 2A 12 12 3M 2
2
A −2R
S.

2
σQ2 =

R∞
3
RA 1
Avec σX2 = −∞ x 2 p(x )dx = −A x 2 2A dx =
EN A2
3 on a :

2
σQ = σX2 2−2R

Sonia Djaziri-Larbi — Dépt.TIC — ENIT Compression de données 1D-2D 18 / 72


La quantification Quantificateur scalaire uniforme

2
Puissance de l’erreur (σQ ) pour X de distribution uniforme (calculs)

bi
ar
2
Puissance de l’erreur (σQ ) pour X de distribution uniforme (calculs)

i-L
2 M−1
p(x )(vi − x )2 dx
P R
σQ =
R i=0 1 Ri 1
= x ∈R0 2A (v0 − x )2 dx + · · · + x ∈RM−1 2A (vM−1 − x )2 dx
R

1 M−1
zir
−A+∆(i+1)
(x + A − ∆( 12 + i))2 dx
P R
= 2A i=0 −A+∆i

IT
ja
1
En posant t = x + A − ∆( 2 + i), on obtient
D

M−1 Z
2 1 X ∆/2 2
σQ = t dt
S.

2A i=0 −∆/2
EN
Sonia Djaziri-Larbi — Dépt.TIC — ENIT Compression de données 1D-2D 19 / 72
La quantification Quantificateur scalaire uniforme

Rapport signal à bruit de quantification (Q uniforme, p(x ) uniforme)

bi
I Quantification sur M pas avec M = 2R :

ar
E [X 2 ] σX2
RSB = 10 log = 10 log

i-L
E [(q(X ) − X )2 ] σQ2

zir = 10 log M 2 = 20 log 2R ≈ 6R dB

I Règle des 6dB par bit :

IT
ja
Le rapport signal à bruit de quantification uniforme (avec X de distribution
D

uniforme) augmente de 6dB lorsque le niveau de quantification augmente d’un bit.


S.

EN
Codage MIC 2 ou PCM 3 : utilisé dans les convertisseurs A/N et N/A (cartes
son), enregistrements CD (16 bits par échantillon, dont un bit de signe)
⇒ M = 216 = 65536

2. Modulation par Impulsion Codée


3. Pulse Code Modulation
Sonia Djaziri-Larbi — Dépt.TIC — ENIT Compression de données 1D-2D 20 / 72
La quantification Quantificateur scalaire non uniforme

Intérêts de la quantification non uniforme

bi
ar
i-L
zir

IT
ja
I Adapter le quantificateur à la DDP de X sur [−A, A].
D

I Intuitivement : les Ri sont d’autant plus petits que la DDP est importante
S.

⇒ réduit l’erreur de quantification


I Autre point de vue (audio)
EN
L’oreille est plus sensible au bruit de quantification sur les sections silencieuses ou
de faible intensité.

Sonia Djaziri-Larbi — Dépt.TIC — ENIT Compression de données 1D-2D 21 / 72


La quantification Quantificateur scalaire non uniforme

Exemples de loi de quantification non uniforme

bi
ar
i-L
zir

IT
ja
D
S.

EN
Sonia Djaziri-Larbi — Dépt.TIC — ENIT Compression de données 1D-2D 22 / 72
La quantification Quantificateur scalaire non uniforme

Généralisation : X de distribution quelconque


Hypothèse de haute résolution : pour M = 2R très grand, on suppose que p(x )

bi
est constante sur l’intervalle Ri , donc p(x ) ≈ p(vi ) pour x ∈ Ri .

ar
⇒ Formule de Bennett :

i-L
Z ∞ 3
1 1
zir 2
σQ = p(x ) 3 dx 2−2R
12 −∞

Cas particuliers :

IT
ja
= σX2 2−2R
D

2
• p(x ) uniforme : σQ

2
• p(x ) gaussienne : σQ 3π 2 −2R
= 2 σX 2
S.

2
Généralisation de la règle des 6dB/bit : σQ
EN
= cσX2 2−2R , avec 1 ≤ c ≤


2

2R
RSB = 10 log( 2c ) = c̃ + 20R log 2 ≈ c̃ + 6R

Sonia Djaziri-Larbi — Dépt.TIC — ENIT Compression de données 1D-2D 23 / 72


La quantification Quantificateur scalaire non uniforme

Généralisation : X de distribution quelconque (calculs)

bi
L’hypothèse de haute résolution = quantificateur avec M très grand

ar
Cette hypothèse implique que :
• la DDP p(x ) est supposée constante dans l’intervalle

i-L
Ri = [ti , ti+1 ] = [−A + ∆i , −A + ∆i+1 ]
zir
• les représentants vi de la partition peuvent être pris aux milieux des Ri :
ti +ti+1
vi ≈ 2
, i = 0...M − 1.

IT
ja
On peut donc écrire : pour x ∈ Ri p(x ) ≈ p(vi )
D

On appelle ∆i = ti+1 − ti la longueur de Ri et Pr (i) = Pr {X ∈ Ri } = p(vi )∆i la


probabilité que x appartienne à Ri .
S.

σQ2 =
EN
M−1
X

i=0
p(vi )
Z

Ri
(x − vi )2 dx

R R ∆i /2 ∆3i PM−1
Comme Ri
(x − vi )2 dx = −∆i /2
x 2 dx = 12
, on obtient σQ2 = 1
12 i=0
p(vi )∆3i .
⇒ chercher la partition avec ∆0 , · · · , ∆M−1 qui minimise σQ2 . ...

Sonia Djaziri-Larbi — Dépt.TIC — ENIT Compression de données 1D-2D 24 / 72


La quantification Quantificateur scalaire non uniforme

Transformation non linéaire (loi A et loi µ)

bi
ar
Astuce :

i-L
• codeur : Transformation non linéaire T suivie d’un Q uniforme
(Compression) zir
• décodeur : Q uniforme inverse suivi de T inverse (expansion).

IT
ja
• BUT : modifier la DDP de X pour qu’elle s’approche d’une loi uniforme.
D
S.

EN
Sonia Djaziri-Larbi — Dépt.TIC — ENIT Compression de données 1D-2D 25 / 72
La quantification Quantificateur scalaire non uniforme

Loi A

bi
ar
Pour le codage de la voix téléphonique, la compression est réalisée par la loi A
(A=87.7, standard européen ITU-T G.711) ou la loi µ (standard US et japonais) :

i-L

zir A|x | 1
; 0 ≤ |x | ≤


1 + ln(A) A

T (x ) = sign(x )
 1 + A|x | 1

IT
ja
 ; ≤ |x | ≤ 1
1 + ln(A) A

D

L’expansion au décodeur est réalisée selon :


S.

T −1 (y ) = sign(y )







|y |(1 + ln(A))

exp(|y
A
|(1 +
A
EN
; |y | <
ln(A)) − 1)
1
;
+
1
ln(A)
1
1 + ln(A)
≤ |y | < 1

Sonia Djaziri-Larbi — Dépt.TIC — ENIT Compression de données 1D-2D 26 / 72


La quantification Quantification vectorielle

Quantification vectorielle

bi
ar
La même chose dans RN !

i-L
• On groupe les échantillons à coder en paquets de N échantillons
zir Xm = [x1+(m−1)N . . . xmN ]

IT
ja
.
D

• On quantifie chaque paquet à l’aide d’un quantificateur vectoriel :


S.

• le QV associe à chaque vecteur Xm un indice i codé sur L bits

dictionnaire D
EN
• les indices i ∈ {1, · · · , M} correspondent aux vecteurs →

v i du

• Au décodeur : X̂m = Q −1 (i) = →



v i.

Sonia Djaziri-Larbi — Dépt.TIC — ENIT Compression de données 1D-2D 27 / 72


La quantification Quantification vectorielle

Illustration

bi
ar
i-L
zir

IT
ja
D
S.

EN
Sonia Djaziri-Larbi — Dépt.TIC — ENIT Compression de données 1D-2D 28 / 72
La quantification Quantification vectorielle

Formalisation

bi
On appelle quantificateur vectoriel de dimension N et de taille M l’application :

ar
Q : RN → D avec D = {~v1 . . . ~vM } où ~vi ∈ RN .

i-L
I L’espace RN est partitionné en M régions définies par :
Ri = {Xm : Q(Xm ) = ~vi }.
zir
I D est le dictionnaire, ~vi un représentant.

IT
ja
I Une mesure de distorsion possible est la distance euclidienne :
D

1
d(Xm , ~vi ) = N kXm − ~vi k2 .
S.

EN
I La relation fondamentale qui lie la résolution R, la dimension N des vecteurs
et la taille M du dictionnaire est : M = 2RN .
I L nombre de bits par vecteur Xm
F R = L/N, le nombre de bits par échantillon, n’est plus nécessairement un
entier. Il suffit que RN le soit.
Sonia Djaziri-Larbi — Dépt.TIC — ENIT Compression de données 1D-2D 29 / 72
La quantification Quantification vectorielle

Codage-Décodage

bi
ar
vi ) = N1 kXm − ~vi k2
• La distorsion instantanée d(Xm , ~

i-L
• Le codeur génère l’indice i optimal qui minimise cette distorsion :
zir
io = arg min{d(Xm , ~vi )}

IT
ja
i
D

⇒ Toutes les distances d(Xm , ~vi ) doivent être calculées...


S.

• Le décodeur reçoit l’indice io et extrait le représentant ~


vio du
dictionnaire :
EN Q −1 (io ) = ~vio

Sonia Djaziri-Larbi — Dépt.TIC — ENIT Compression de données 1D-2D 30 / 72


La quantification Quantification vectorielle

Optimisation du dictionnaire {~vi } et des partitions

bi
• Le dictionnaire optimal est construit off-line par minimisation (itérative) de

ar
la distorsion moyenne :

i-L
DM = N1 E [d(X , ~vi )] = N1 RN d(X , ~vi )p(X )dX
R

zir
• Dictionnaire optimal pour une partition donnée : centroı̈des.
• Partition optimale pour un dictionnaire donné : régions de Voronoı̈.

IT
ja
D

Pour l’optimisation alternée, l’algorithme de Lloyd-Max est trop instable, on lui


préfère l’algorithme de Linde-Buzo-Gray.
S.

EN
Sonia Djaziri-Larbi — Dépt.TIC — ENIT Compression de données 1D-2D 31 / 72
La quantification Quantification vectorielle

Application de la QV aux signaux audio

bi
Intérêt : Les échantillons du signal audio sont corrélés, les vecteurs Xm n’occupent
qu’une région limitée de l’espace RN . Le QV s’adapte à la forme du nuage de points.

ar
i-L
QS avec R = 4, M = 16 (dans R2 ) : QV à N = 2 et M = 16, donc R = 2 :
I QS = une occupation identique relative- I le QV permet une grande liberté dans le
ment aux 2 axes
zir
I la répartition des échantillons n’est pas
choix de la partition,
I plus le signal est corrélé et plus le gain

IT
ja
exploitée, du QV est important.
I l’erreur de quantification est importante
D
S.

EN
Sonia Djaziri-Larbi — Dépt.TIC — ENIT Compression de données 1D-2D 32 / 72

Vous aimerez peut-être aussi