Vous êtes sur la page 1sur 29

Échantillonnage et quantification

Séverine Dubuisson

Échantillonnage et quantification – p. 1/2


Rappels

f (x, y) fs (m, n) u(m, n)


! Échantillonnage ! Quantification !
Image continue Vers l’ordinateur

La résolution spatiale est obtenue après échantillonnage (Sampling)


Détermine le plus petit détail perceptible dans l’image
Quel est le meilleur taux d’échantillonnage ?
La résolution en niveaux de gris est obtenue après quantification
(Quantization)
Détermine le plus petit changement de niveau de gris
discernable dans l’image
Existe-t-il un quantificateur optimal ?

Échantillonnage et quantification – p. 2/2


Notations préliminaires

Signal continu M -D : f (u, v, w, z)


Signal échantillonné M -D : w(k, l, m, n, i, j), avec
(k, l, m, n, i, j) indices entiers
Fonction séparable x(k, l, m) = x1 (k)x2 (l, m)
Plusieurs fonctions M -D peuvent être construites avec
des fonctions 1-D, telles que sinc (x, y), exp, etc.
Un signal échantillonné M -D est représenté par un
tenseur M -D (ex.: matrice 2-D, cube 3-D, etc.)

Échantillonnage et quantification – p. 3/2


Exemples de signaux simples

Exemple :
 
x(k1 , l1 ) x(k1 , l2 ) x(k1 , l3 )
 
x(k, l) =  x(k2 , l1 ) x(k2 , l2 ) x(k2 , l3 ) 
x(k3 , l1 ) x(k3 , l2 ) x(k3 , l3 )

Autres exemples simples :


'
0 si k = l != 0
δ(k, l) =
1 sinon
'
0 si k, l ≥ 0
e(k, l) =
1 sinon
Échantillonnage et quantification – p. 4/2
Échantillonnage

Étape nécessaire quand le signal sous-jacent est


analogique
Dans le cas 1-D, l’échantillonnage est bien expliqué,
bien connu et bien utilisé
La généralisation aveugle du 1-D au M -D est
dangereuse :
Les hypothèses du 1-D sont souvent oubliées
La nature des signaux M -D est souvent différente de
celle des signaux 1-D
Les contraintes des applications et des réalisations
sont différentes

Échantillonnage et quantification – p. 5/2


Échantillonnage 1-D

On utilise le théorème de l’échantillonnage (Nyquist) : un


signal analogique peut être entièrement reconstruit à
partir de ses échantillons s’il est échantillonné au moins
au double de sa fréquence maximum Fmax , soit
Fe ≥ 2Fmax
La fréquence maximum doit être connue (mesurée
avec des analyseurs de spectre)
Le signal doit être stationnaire (transformée de
Fourier)
La condition est donnée pour la reconstruction du
signal analogique

Échantillonnage et quantification – p. 6/2


Échantillonnage M -D (1/4)

Dans le cas M -D les analyseurs de spectre sont rares : on ne peut


pas connaître les fréquences maximum
Les signaux M -D sont rarement stationnaires
Très souvent on ne réalise pas la mise en œuvre de la conversion
numérique/analogique

Solution ?

On admet que les hypothèses 1-D sont satisfaites


Soit xa (u, v) un signal analogique M -D. On définit sa DFT Xa (f, g)
par :
( ( +∞
Xa (f, g) = xa (u, v)e−2πj(f u+gv) dudv
−∞

Échantillonnage et quantification – p. 7/2


Échantillonnage M -D (2/4)

Le signal échantillonné M -D de xa (u, v) se fait en prélevant des


échantillons espacés périodiquement et est donné par :

x(k∆u, l∆v) = x(k, l) = xa (u, v)|u=k∆u,v=l∆v

Un signal analogique M -D limité en bande à F et G peut être reconstruit


à partir de ses échantillons si et seulement si ∆u ≤ 2F
1
et ∆v ≤ 2G
1

La version échantillonnée xe (u, v) de xa (u, v) peut être vue comme le


produit du signal analogique et d’impulsions δ (Diracs) M -tuples
périodiques (“brosse” de Diracs) e(u, v) :

xe (u, v) = xa (u, v) · e(u, v)


+∞
) +∞
)
e(u, v) = δ(u − k∆u, v − l∆v)
k=−∞ l=−∞

Échantillonnage et quantification – p. 8/2


Échantillonnage M -D (3/4)

Au produit direct dans le domaine spatial correspond le produit de


convolution dans le domaine fréquentiel :
( ( +∞
Xe (f, g) = Xa (f, g) " E(f, g) = Xa (f # , g # )E(f − f # , g − g # )df dg
−∞

On peut montrer que :

1
+∞
) +∞
) * m n +
E(f, g) = δ f− ,g −
∆u∆v m=−∞ n=−∞ ∆u ∆v

Propriété du produit de convolution des impulsions de Dirac :


( ( +∞
y(α, β) " δ(α − a, β − b) = y(α# , β # )δ(α − a − α# , β − b − β # )dα# d
−∞
= y(α − a, β − b)

Échantillonnage et quantification – p. 9/2


Échantillonnage M -D (4/4)

La transformée de Fourier du signal échantillonné est donnée par :

1
+∞
) +∞
) * m n +
Xe (f, g) = Xa f − ,g −
∆u∆v m=−∞ n=−∞ ∆u ∆v

Xe (f, g) est obtenue par duplication périodique de Xa (f, g) dans les M


1 1
dimensions avec l’inverse des périodes d’échantillonnage ∆u et ∆v
L’échantillonnage M -D produit une succession de spectres secondaires
dans les M directions, proportionnels au spectre Xa (f, g)
Si l’échantillonnage est fait avec des impulsions de Dirac, tous les poids
sont égaux (échantillonnage idéal)
Si l’échantillonnage est fait avec des impulsions de largeur finie, les poids
sont donnés par la transformée de Fourier des impulsions

Échantillonnage et quantification – p. 10/2


Grilles d’échantillonnage

La majorité des grilles d’échantillonnage sont


cartésiennes (rectangulaires) : les pixels sont à ∆u et ∆v
les uns des autres
En général, on choisit des grilles carrées : ∆u = ∆v
Existent aussi des grilles hexagonales ou quinconces
Les signaux TV sont souvent échantillonnés en
quinconce pour économiser un facteur dans le
nombre total d’échantillons
Les applications liées à la vision par ordinateur
(robotique, reconnaissance, etc.) sont plus efficaces
sur des grilles hexagonales

Échantillonnage et quantification – p. 11/2


Exemples de grilles d’échantillonnage
Grille cartésienne Grille en quinconce
u u

! ! ! ! !
" "

! ! ! !v ! ! ! !v
! ! ! ! !

"$
""$
"$ ""
"$
$
f f

""
# #$
%
$%
#
"$
% "
#"
$#
%
"
$ %
$
!g !g
#$
" #$
%
"%
#
"$
% #
"#
%"
%
#
$ %
$
#%
##
%% #%
#%

Échantillonnage et quantification – p. 12/2


Reconstruction du spectre analogique (1/2)

Si le signal est limité en bande à F et G, il peut être


reconstruit à partir de ses échantillons par filtrage
passe-bas (interpolation). La réponse fréquentielle
Gi (f, g) d’un filtre passe-bas idéal est donnée par :
'
∆u∆v si f ≤ F et g ≤ G
Gi (f, g) =
0 sinon

Xa (f, g) = Gi (f, g) · Xe (f, g)

Échantillonnage et quantification – p. 13/2


Reconstruction du spectre analogique (2/2)

Si le signal n’est pas limité en bande, le spectre Xa (f, g) est


irrévocablement perdu à cause du recouvrement de spectre (dont les
erreurs ne peuvent être corrigées)
%→ Les fréquences au-dessus de la moitié de la fréquence
d’échantillonnage sont appelées fréquences de repliement
On peut éviter le recouvrement (phénomène d’aliasing dans l’image) par
filtrage passe-bas de l’image afin de limiter sa bande à F et G
Le signal reconstruit est une somme pondérée de fonctions sinus cardinal
(sinc )
+∞
) +∞
)
xa (u, v) = x(k, l) · sinc (2F u − k) · sinc (2Gv − l)
k=−∞ l=−∞

Échantillonnage et quantification – p. 14/2


Reconstruction : illustration en 1-D
Pas de recouvrement

" " " "

"$ "$
"$"
"
"
! ! " !
Signal analogique Spectre

Recouvrement

" "

"$
"$
"$
"""
!

Échantillonnage et quantification – p. 15/2


En pratique

La transformée de Fourier Xa (f, g) du signal est rarement connue, de


même que F et G
Le traitement M -D est assez lourd, on cherche donc à éviter les filtres de
reconstitution
Des périodes arbitraires de fréquences d’échantillonnage sont
sélectionnées dans la plupart des cas :
Télécopie (Fax) : 2 résolutions pré-réglées
Imprimantes : nombre fini de résolutions au choix de l’utilisateur
TV : 25 ou 30 images par seconde, 625 ou 525 lignes par hauteur
d’image
HDTV TV
TV numérique :
1920 × 1152 × 50 720 × 576 × 25

Échantillonnage et quantification – p. 16/2


Quantification

But : réduire le nombre de bits nécessaires au codage


de la luminance
! moyennant une diminution de la précision de l’image
Associer à un nombre réel un nombre entier
! compression implicite
Deux types de quantifieurs :
Le quantifieur scalaire : on quantifie chaque valeur
Le quantifieur vectoriel : on quantifie une suite
d’échantillons (vecteur)

Échantillonnage et quantification – p. 17/2


Quantification scalaire

On considère une variable aléatoire u de sdensité de


probabilité pu (u)
Une quantification est une application
Q : R '−→ R, u −→ u!
L’image de Q est souvent un ensemble fini
On subdivise les valeurs de u en intevalles [tk , tk+1 [
On associe une valeur rk à chaque intervalle
On cherche les niveaux de transition tk et de
quantification rk optimum, connaissant la densité de
probabilité de u en se fixant un critère d’optimisation
On peut utiliser l’histogramme comme fonction de
densité de probabilité
Échantillonnage et quantification – p. 18/2
Principe de la quantification scalaire
u! " u! ∈ {r1 , r2 , . . . , rL } est le signal quantifié

tk ≤ u < tk+1 et u → rk
rk
tk : k = 1, 2, . . . , L + 1 niveau de transition/décisio
!
tk tk+1 u rk : kième niveau de reconstruction

Exemple : cas d’un quantificateur uniforme, avec u ∈ [0, 10.0]


On souhaite avoir u& ∈ {0, 1, . . . , 255} (dynamique d’une image)
t1 = 0, t257 = 10.0
Avec un séparation uniforme, on a tk = (k − 1) × 10
256 ,
k = 1, 2, . . . , 257

Échantillonnage et quantification – p. 19/2


Quantificateur optimal
, +∞
Soit E(u) = −∞ upu (u)du la densité de probabilité du signal
échantillonné u
L’erreur quadratique moyenne & (MSE) de quantification est donnée par :
( +∞ ( tL+1
- .
& = E (u − u )# 2
= (u − u ) pu (u)du =
# 2
(u − u# )2 pu (u)du
−∞ t1

Comme u# = rk , si u ∈ [tk , tk+1 ], on réécrit la formule précédente :

L (
) ti+1
&= (u − ri )2 pu (u)du
i=1 ti

Pour minimiser &, on utilise les conditions ∂r∂"


k
= 0 et ∂"
∂tk
= 0. Et on
obtient : , tk+1
rk + rk−1 tk
upu (u)du
tk = rk = , tk+1
2 pu (u)du
tk
Échantillonnage et quantification – p. 20/2
Quantificateur uniforme (1/2)
'
1
tL+1 −t1 si t1 ≤ u ≤ tL+1
On considère pu (u) =
0 sinon
On a donc :
, tk+1 2 2
tk upu (u)du tk+1 − tk tk+1 + tk
rk = , tk+1 = =
pu (u)du 2(tk+1 − tk ) 2
tk
rk + rk−1 tk+1 + tk−1
tk = =
2 2
Quantificateur linéaire : tk − tk−1 = tk+1 − tk = q , avec
tL+1 −t1
q= L
q
tk = tk−1 + q et rk = tk + 2

Échantillonnage et quantification – p. 21/2


Quantificateur uniforme (2/2)

L’erreur de quantification e = (u − u! ) est uniformément


quantifiée sur [− 2q , 2q ]
L’erreur quadratique moyenne de quantification est :
( q
2
1 2 q
"= u2 du =
q − q2 12

La variance d’une variable uniforme sur [0, A] est


,
1 α+A
- .
A 2 A2
σu2 = A α x−α − 2 dx = 12
A
Pour un quantificateur sur B bits, q = 2B
"
σu2 = 2−2B ⇒ SNR = 10 log10 22B * 6B dB
Rapport signal à bruit de 6 dB par bit
Échantillonnage et quantification – p. 22/2
Quantificateur vectoriel (1/3)

Approximation d’un signal d’amplitude continu par un


signal d’amplitude discrète
Former un vecteur de n échantillons non quantifiés x(k, l)

x = [x(1, 1), x(1, 2), . . . , x(k, l), . . .]t

La QV consiste à segmenter cet espace en Nq régions


de décisions (cellules) Di et à représenter tous les
vecteurs dont les extrémités tombent dans Di par un
vecteur unique de reconstruction ri = xq
La QV est la généralisation de la quantification scalaire

Échantillonnage et quantification – p. 23/2


Quantificateur vectoriel (2/3)

En théorie, la probabilité conjointe (pdf) px (x) du vecteur x est


supposée connue
L’erreur de quantification est mesurée par la distance entre x et
ri = xq . L’erreur est eq = x − xq = x − ri . La distance peut être :
N
)
d(x, xq ) = etq · eq = (xj − xq )2
j=1

L’erreur quadratique moyenne de quantification & est l’espérance


mathématique de la distance d(x, xq )
N (
) / 0
&= E(etq · eq ) = Tr (x − ri )(x − ri ) px (x)dx
t

j=1 Dj

Échantillonnage et quantification – p. 24/2


Quantificateur vectoriel (3/3)

Les régions optimum de décision Di et les vecteurs de


reconstruction ri sont obtenus en minimisant " :
(
∂"
= (x − ri )px (x)dx
∂ri Dj
,
Dj xpx (x)dx
ri = ,
Dj px (x)dx

Échantillonnage et quantification – p. 25/2


Elaboration d’un quantificateur vectoriel (1/

La liste des niveaux de reconstruction est appelée dictionnaire de


reconstruction
Le même dictionnaire est nécessaire à l’encodeur et au décodeur
La QV optimale doit choisir ri avec la plus petite distorsion entre x
et ri : xq = ri ssi d(x, ri ) ≤ d(x, rj ), pour i != j et j = 1, 2, . . . , Nq (1)
Chaque ri doit minimiser la distorsion moyenne D dans Di , donc
minimiser par rapport à ri D = E(d(x, ri )), pour x ∈ Di (2)
(1) et (2) sont des relations imbriquées : les niveaux de
reconstruction spécifient les cellules et les cellules spécifient les
niveaux de reconstruction

Échantillonnage et quantification – p. 26/2


Elaboration d’un quantificateur vectoriel (2/

Nécessité d’itérations : à partir d’une situation initiale des ri , et étant


donnée une distance, on détermine les Di à partir de (1)
A partir de cette estimée des Di , on calcule les ri comme leur centroïde.
On réitère jusqu’à un minimum de distorsion soit atteint
Deux difficultés :
On doit déterminer les ri pour toutes les entrées x possibles
On doit connaître px (x) pour calculer les centroïdes des Di
Solution : utiliser des vecteurs d’apprentissage et l’algorithme des
K-means
Soient M vecteurs d’apprentissage x1 , i = 1, . . . , M
On cherche Nq vecteurs de reconstruction ri

Échantillonnage et quantification – p. 27/2


Elaboration d’un quantificateur vectoriel (3/

Les niveaux de reconstruction ri sont obtenus en minimisant la distorsion


moyenne :
M
1 )
D= d(xi , xqi )
M i=1

Soient ri les estimations initiales, avec i = 1, . . . , Nq . On classe les M


vecteurs d’apprentissage avec la relation (1), puis on détermine un
nouveau vecteur de reconstruction dans chaque groupe
%→ Si M1 vecteurs xi sont groupés et quantifiés au niveau de
reconstruction r1 , alors la nouvelle estimation de r1 est donnée
par :
M1
1 )
D= d(xi , r1 )
M1 i=1

Échantillonnage et quantification – p. 28/2


Elaboration d’un quantificateur vectoriel (4/

Tous les autres ri sont traités de la même manière pour


terminer la première itération
Les itérations continuent jusqu’à ce que les variations de
D soient considérées comme non-significatives
(l’algorithme converge à un minimum local).
On déterminera un minimum global en prenant plusieurs
estimations initiales différentes des ri . L’ensemble des ri
retenu est celui ayant minimisé D

Échantillonnage et quantification – p. 29/2