Echantillonnage et quantification

Transcription

Echantillonnage et quantification
Échantillonnage et quantification
Séverine Dubuisson
Échantillonnage et quantification – p. 1/2
Rappels
f (x, y)
! Échantillonnage
fs (m, n)
!
u(m, n)
!
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 :
δ(k, l) =
'
e(k, l) =
0 si
1 sinon
'
0 si
1 sinon
k = l != 0
k, l ≥ 0
É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
1
1
et ∆v ≤ 2G
à partir de ses échantillons si et seulement si ∆u ≤ 2F
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) =
+∞
)
+∞
)
k=−∞ l=−∞
δ(u − k∆u, v − l∆v)
É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 :
+∞
+∞
*
)
)
n +
1
m
,g −
Xa f −
Xe (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
et ∆v
dimensions avec l’inverse des périodes d’échantillonnage ∆u
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
"
!
!
!
! !v
!
!
"$
"$
"
"$
f
""
#
#$
%
%
#
"$
%
$
!g
#$
"
#$
%
"
%
#
"$
%
#%
##
%%
u
!
"
!
!
!
!
!
! !v
""
"$
$
f
"
#
#
%
"
%
"
$
$
$
!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 :
Gi (f, g) =
'
∆u∆v si
0
sinon
f ≤ F et g ≤ G
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) =
+∞
)
+∞
)
k=−∞ l=−∞
x(k, l) · sinc (2F u − k) · sinc (2Gv − 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
TV numérique :
HDTV
TV
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 tk+1
u
tk : k = 1, 2, . . . , L + 1 niveau de transition/décisio
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) ×
k = 1, 2, . . . , 257
10
256 ,
É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 :
-
& = E (u − u )
#
.
2
=
(
+∞
−∞
(u − u ) pu (u)du =
# 2
(
tL+1
t1
(u − u# )2 pu (u)du
Comme u# = rk , si u ∈ [tk , tk+1 ], on réécrit la formule précédente :
&=
L (
)
i=1
ti+1
ti
(u − ri )2 pu (u)du
∂"
∂"
Pour minimiser &, on utilise les conditions ∂r
=
0
et
= 0. Et on
∂t
k
k
obtient :
, tk+1
upu (u)du
rk + rk−1
tk
rk = , tk+1
tk =
2
pu (u)du
tk
Échantillonnage et quantification – p. 20/2
Quantificateur uniforme (1/2)
On considère pu (u) =
'
1
tL+1 −t1
0
si
t1 ≤ u ≤ tL+1
sinon
On a donc :
rk =
tk
, tk+1
2
2
−
t
t
tk+1 + tk
tk
k+1
k
=
=
, tk+1
2(tk+1 − tk )
2
pu (u)du
tk
upu (u)du
rk + rk−1
tk+1 + tk−1
=
=
2
2
Quantificateur linéaire : tk − tk−1 = tk+1 − tk = q , avec
q=
tL+1 −t1
L
tk = tk−1 + q et rk = tk +
q
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 :
1
"=
q
(
q
2
− q2
2
q
u2 du =
12
La variance d’une variable uniforme sur [0, A] est
σu2
=
,
1 α+A
x−α
A α
−
.
A 2
dx
2
=
A2
12
Pour un quantificateur sur B bits, q =
"
σu2
= 2−2B
⇒
A
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 :
d(x, xq ) = etq · eq =
N
)
j=1
(xj − xq )2
L’erreur quadratique moyenne de quantification & est l’espérance
mathématique de la distance d(x, xq )
&=
E(etq
· eq ) =
N (
)
j=1
Dj
/
0
t
Tr (x − ri )(x − ri ) px (x)dx
É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 " :
∂"
=
∂ri
ri =
(
Dj
(x − ri )px (x)dx
Dj
xpx (x)dx
,
,
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(xi , xqi )
D=
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(xi , r1 )
D=
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

Documents pareils