Vous êtes sur la page 1sur 59

Troisième partie : Systèmes multicadences,

bancs de filtres

 1) Sous-échantillonnage, sur-échantillonnage

 2) Systèmes multicadences

 3) Bancs de filtres

 4) Applications
ִ au codage audio dans la norme MPEG
ִà la norme G 722

1
1) Sous-échantillonnage, sur-échantillonnage

 Les opérations de sous-échantillonnage et de sur-échantillonnage


tiennent une part importante en TNS
 Le sous-échantillonnage est souvent utilisé pour diminuer la
cadence des opérations (la complexité)
 Le sur-échantillonnage est souvent utilisé pour augmenter le S/N
dans les opérations de CNA
 Une autre application sous-échantillonnage et du sur-
échantillonnage est le changement de fréquence
 Elles apparaissent dans les techniques des bancs de filtres

2
1.1. La décomposition polyphase
 Intervient dans les bancs de filtres
 permet une représentation simple pour le sur et sous échantillonnage
Soit une suite numérique x(n) et sa transformée en z :
+∞
X(z) = ∑ x(n)
n = −∞
z −n

Soit M un entier stricte ment positif. On peut décomposer X(z) en :


...+x(0)+x(M)z−M +x(2M)z−2M +...
...+x(1) z−1+x(M +1)z−(M +1)+x(2M +1)z−(2M +1)+...
..
..........
................
...+x(M −1) z−(M −1)+x(2M −1)z−(2M −1)+x(3M −1)z−(3M −1)+...
+∞
On pose Pi(z)=∑x(nM +i)z−n
n=−∞
M −1
On peut alors écrire : X(z)=∑z−i Pi(zM)
i=0
M −1
On a aussi en posant Qi( z) = PM − 1 + i ( z) , X ( z) = ∑ z
− ( M −1−i )
Qi ( zM ) 3
i=0
1.2. Sous-échantillonnage

1.2.1. Rappels
Soit une suite numérique x(n) et sa transformée en z :
+∞
X(z) = ∑ x ( n) z
n = −∞
−n

La fonction {X(z)}(z = ejω) est la TF de x(n)


On s'intéresse aux suites extraites de x(n), et qui forment la décomposition
polyphase.

On construit à partir de x(n) une famille de M suites :

xM,i(n) = x(nM + i) avec 0≤i<M .


 On extrait un échantillon sur M de la suite x(n)
 On obtient les éléments de la décomposition
4
Avec i = 0, on retrouve le cas étudié classique (2a).
La Tz de xM,0(n) est P0(z), et on montre que :

M −1
1
P0 ( z ) =
M
∑ Mz
X (
k =0
W k 1M
) avec WM = e - j 2π/M

M −1
1
De même : P0 (ω ) =
M
∑ X (e
k =0
- j 2πk/M
e
jω M
)

Notation : X(z) ↓M P0(z)

=> La représentation spectrale de xM,0(n) s ’obtient :


• en répétant X(ν) /M tous les 1/M
• en normalisant l ’axe des fréquences pour que 1/M => 1
5
Exemple : M = 4, i = 0

X(e )
1
[
P0(ejω) = X (e jω/4 ) + X (e j (ω − 2π )/4 ) + X (e j (ω − 4π )/4 ) + X (e j (ω − 6π )/4 )
4
]

ω
π 2π

X (e )
4,0

ω
6

 On a une expression similaire pour i quelconque :
M −1
1
Pi ( z ) =
M
∑ M
W ki

k =0
X (WM
k 1M
z ) avec WM = e - j 2π/M

1.2.2. Structures pour le sous-échantillonnage

Les deux systèmes suivants sont équivalents :


P0(z)
X(z) ↓M H(z) Y1(z)

X (z) H(zM) ↓M Y2(z)

=> réduction da complexité dans la pratique

7
 Cette équivalence est utilisée dans les structures de décimation
Soit un filtre anti-repliement H(z)

X(z) H(z) ↓M Y(z)

M −1

∑z
−i
Sa décomposition s ’écrit : H ( z ) = PH i ( z M )
i =0

M
x(k) PH0 (z ) ↓M y(k)

-1
z

M
PH1 (z ) ↓M
-1
z

M
PHM-1 (z ) ↓M
8
1.2. Sur-échantillonnage
• Opération inverse qui consiste à introduire M-1 zéros entre deux échantillons
X( z ) ↑M Xe(z)

• Il est clair que : Xe(z) = X(zM)


• La représentation spectrale de xe(n) est la même que celle de x(n) en
normalisant l’axe des fréquences 1 => 1/M

• Structures pour le sous-échantillonnage


• les deux systèmes suivants sont équivalents
Xe(z)
X(z) ↑M H(zM) Y1(z)

Xe(z)
X(z) H(z) ↑M Y2(z)

=> réduction da complexité dans la pratique


9
2) Systèmes multicadences

2.1. Principe

 = système avec plusieurs fréquences d ’échantillonnage


 2 objectifs :
ִaméliorer la qualité du signal
ִdiminuer la complexité

10
2.2. Application au filtrage anti-repliement
(exemple du lecteur de CD)

 On se pose le problème de la restitution d ’un signal numérique


avec Fe = 44 kHz et Bu de [20 Hz - 20 kHz]

|X(ν)|

ν
0 1/2 1
(22 kHz) (44 kHz)
11
 Une Conversion NA avec un bloqueur d ’ordre 0 (rectangle) génère des
composantes hors bande :
|X(ν)|

ν
0 1/2 1
(22 kHz) (44 kHz)

|X(ν)| Passe-bas idéal

ν
0 1/2 1
(44 kHz) 12
(22 kHz)
 La bande de transition est très faible de 20 à 24 kHz
 => il faut faire des réglages si on utilise un filtre analogique
 => on essaye de transposer la difficulté en numérique en sur-
échantillonnant d ’un facteur 4 (ou 8)

Fe = 44 kHz Fe’ = 176 kHz

↑4 Passe-bas C N/A Passe-bas


numérique analogique

(1) (2) (3) (4) (5)

13
 Etapes (1) à (5) :
|X(ν)|

(1)
0 1/2 1 3/2 2 4
ν
3
(22 kHz)(44 kHz) (88 kHz) (132 kHz) (176 kHz) f
|X(ν)|

(2)

0 1/8 1/4 3/8 1/2 3/4 1


ν
(22 kHz) (44 kHz) (88 kHz) (132 kHz) (176 kHz) f

14
|X(ν)| Filtre numérique

(3)

0 1/8 1/4 3/8 1/2 3/4 1


ν
(22 kHz) (44 kHz) (88 kHz) (132 kHz) (176 kHz) f

Bloqueur travaillant à 176 kHz

(4)
0 (22 kHz) (44 kHz) (88 kHz) (176 kHz) f

Filtre analogique

(5)
15
0 (22 kHz) (44 kHz) (88 kHz) (176 kHz) f
3. Bancs de filtres
3.1. Filtres de synthèse et filtres d ’analyse
 Dans l ’analyse spectrale, ils souvent intéressant de décomposer le
signal en « sous-bandes » (intervalle de fréquence)
 Ceci peut être réalisé par une collection de filtres h0(n), h1(n),…hM-1(n)
 = banc de filtres (banc d ’analyse)
xˆ 0 (n)
 Ces filtres RIF ou RII h0(n)

 M sorties xˆi (n) xˆ1 ( n)


h1(n)

h2(n)
x(n)

xˆ M −1 (n)
hM-1(n)
16
 De manière similaire, on a une collection de filtres gi(n)
 = banc de synthèse

xˆ 0 (n)
g0(n)

xˆ1 (n)
g1(n)

g2(n) +
^
x(n)

xˆ M −1 (n)
gN-1(n)

17
 Un cas fréquent est la décomposition en bandes de largeur égales
 Le banc d ’analyse est suivi de M sous-ech.

Codage
Transmission

h0(n) M:1 1:M g0(n)

h1(n) M:1 1:M g1(n)

h2(n) M:1 1:M g2(n) +


x(n) ^
x(n)

hM-1(n) M:1 1:M gM-1(n)


18
Exemple de banc avec M = 2

H0 H1 H0

0 0.25 0.5 0.75 1.0 ν

19
3.1. Filtres « fraction de bande », filtres demi-bande

Un choix particulièrement intéressant pour les filtres d ’analyse, sont


les filtres « fraction de bande », caractérisés par :
h(Mn) = 1/M si n = 0 et h(Mn) = 0 autrement.
Dans ce cas :
M −1
1 1
P0 ( z ) = =
M M
∑ H (W
k =0
k
M
1M
z )

Dans le cercle unité, cette relation devient :


M −1

∑ H
k =0
( e j (ω - 2πk/M )
) =1

20
 Un cas particulièrement intéressant est M = 2
 On a alors :
( ) ( )
H e j ω + H e j (ω -π ) = 1

 On peut mettre en évidence la symétrie :

( ) ( )
H e j (ω +π / 2 ) + H e j (ω -π / 2 ) = 1
 On a aussi H(ν = 1/4) = 0.5

21
Symetries d’un filtre demi-bande

1.2

0.8

0.6

0.4

0.2

-0.2
0 0.10 0.20 0.30 0.40 0.50 ν

22
Exemple : demi-bande à 17 coefficients (de n= - 8 à n = 8)
1  πn 
h (n ) = sin 
nπ  2 
0.5

0.4

0.3

0.2

0.1

-0.1

-0.2
-10 -8 -6 -4 -2 0 2 4 6 8 10
On peut remarquer que :
• ce filtre est à phase linéaire => symétrie / à 0
• ce filtre est demi bande => coefficients pairs nuls sauf en 0
• => 5 coefficients distincts non nuls 23
Réponse en amplitude

R(ω) = 0.5+2*(0.318*cos(ω)-0.106*cos(3*ω)+0.064*cos(5*ω)-0.045*cos(7*ω));

1.2

0.8

0.6

0.4

0.2

-0.2
0 0.10 0.20 0.30 0.40 0.50 ν

24
 Le filtre demi-bande est très utilisé dans la pratique, il conduit à des
systèmes plus efficaces en terme complexité calculatoire

 Pour un nombre de K = 2N + 1 , on avait pour le filtre à phase


linéaire :
 N

h (N )+ 2 ∑
H( ν ) = e - jω N h ( N + k )cos( ω k )
k =1 
 Pour le filtre demi bande, on pose N = 2M :

1 1+2 h(2M +2k −1)cos((2k −1)ω )


M

2  ∑
H(ν) = e- jω2M
k =1

 Les paramètres de réalisation sont donnés :

2  1 
Ne≈ ln10 
3∆ν  10δ 2 

25
3.2. Filtres à reconstruction parfaite
Codage
Transmission

h0(n) M:1 1:M g0(n)

h1(n) M:1 1:M g1(n)

h2(n) M:1 1:M g2(n) +


x(n) ^
x(n)

hM-1(n) M:1 1:M gM-1(n)

 Les filtres d ’analyse (et de synthèse) sont imparfaits (RIF)


 => élargissement des sous-bandes
 repliements à la sorties des décimateurs
26
=> on se pose le problème de reconstruction parfaite
Existe-t ’il un banc de filtres tel que les effets des repliements dans
chaque sous-bande se compensent exactement après reconstruction ?

Pour simplifier, on étudie M = 2

h (n) ↓2 y (n) y (n) ↑2 g (n)


0 0 0 0

x(n) + x (n)

h (n) ↓2 y (n) y (n) ↑2 g (n)


1 1 1 1

Ce système est décrit par :


1
Xˆ (e jω ) = [H0(ejω)G0(ejω) + H1(ejω)G1(ejω)] X(ejω) +
2
1
[H0(-ejω)G0(ejω) + H1(-ejω)G1(ejω)] X(-ejω)
2
27
La même relation sur les transformées en z :
1 1
Xˆ ( z ) = [ H0(z)G0(z) + H1(z)G1(z) ] X(z) + [ H0(-z)G0(z) + H1(-z)G1(z) ] X(-z).
2 2

La condition de reconstruction parfaite s ’écrit : Xˆ(z) = z−r X(z)


On en déduit que : H0(-z)G0(z) + H1(-z)G1(z) = 0

et H0(z)G0(z) + H1(z)G1(z) = 2 z-r

La première condition indique qu ’il n ’y a pas de distorsion


La deuxième indique l ’absence de repliement (supprimé globalement)
=> on recherche les Hi et Gi qui satisfont aux conditions

28
Les filtres QMF
Une première famille de filtres dite Q.M.F. (Quadrature Mirror Filter)

- permet d'éliminer le terme en X(-z)

- utilise des structures équivalentes plus économiques en temps de calcul.

- ces filtres vérifient: H1(z) = H0(-z)


G0(z) = H0(z)
G1(z) = − H0(-z)
Exemple :

H0(z) est un filtre passe-bas demi-bande

 H1(z) est le filtre passe-haut demi-bande associé (réponse en ω translatée de π).

 On réalise donc bien un banc de filtre à deux bandes : [ 0,1/4] et [1/4,1/2]


29
 Banc QMF demi-bande
 La relation H1(z) = H0(-z) indique que H0 correspond à l’image
miroir de H1 par rapport à 1/4 (symétrie en amplitude et anti-
symétrie en phase)

H0 H1

ν
0 0.25 0.5 0.75 1.0
30
1
On peut écrire : Xˆ ( z ) = [ H0(z)2 - H0(-z)2 ] X(z).
2
L −1 L −1
Posons : H0(z) = ∑ h (n) z
n =0
0
−n
, H1(z) = ∑ h (n)z
n=0
1
−n

L −1 L −1
G0(z) = ∑ g (n)z
n =0
0
−n
, G1(z) = ∑ g (n)z
n =0
1
−n
avec L entier pair.

Les coefficients vérifient : h1(n) = (-1)n h0(n)


g0(n) = h0(n)
g1(n) = - (-1)n h0(n).

Si on considère des filtres à phase linéaire, on a : h0(n) = h0(L - 1 - n) et


L/2
H0(ejω) = H0r(ω)e-jω(L - 1)/2 avec H0r(ω) = 2 ∑ h( L − n) cos(ω (n − 1/ 2)) .
n =1

1
La réponse en fréquence du système : Xˆ (e jω ) = e-jω(L - 1)[H0r(ω)2 + H0r(ω + π)2 ] X(ejω).
2

Ainsi lorsque H0 est un filtre demi-bande, la fonction de transfert globale est appro. un retard
31
Filtres CQF
Les filtres C.Q.F. (Conjugate Quadrature Filter) ont les propriétes suivantes:

H1(z) = - H0(-z-1)z- (L - 1) soit h1(n) = (-1)n h0 (L - 1 - n) et L un entier pair.

De plus : G0(z) = H0(z-1)z- (L - 1) soit g0(n) = h0 (L - 1 - n)

G1(z) = - H0(-z) soit g1(n) = -(-1)nh0(n).

1
On obtient : Xˆ ( z ) = z- (L - 1) [ H0(z)H0(z-1) + H0(-z)H0(-z-1) ] X(z).
2
L −1
Posons : F0(z) = H0(z) H0(z-1) = ∑ f (n)z
n = − ( L −1)
0
−n
.

La condition de reconstruction idéale est : F0(z) + F0(-z) = 2.


32
Cela se traduit sur les coefficients par : f0(0) = 1
f0(2n) = 0 pour n ≠ 0.

Dans ces conditions : Xˆ ( z ) = z- (L - 1) X(z).

Les conditions sur F0 sont vérifiées pour un filtre demi-bande. Il suffit


alors de factoriser F0 sous la forme :

F0(z) = H0(z)H0(z-1).

Pour cela, F0(z) doit être de la forme :


L −1
F0(z) = G ∏ m =1
( z − z m )( z −1 − z m ) .

L −1 L −1
Ainsi : H0(z) = z- (L - 1) G ∏ ( z − z m ) et H1(z) = G ∏ ( z −1 + z m )
m =1 m =1

L −1 L −1
G0(z) = G ∏ (z − zm )
−1
et G1(z) = -z- (L - 1) G ∏ (z + zm )
m =1 m =1 33
 reconstruction rigoureusement exacte du signal d'entrée contrairement
aux filtres Q.M.F.

Mais compléxité calculatoire plus importante (on ne peut plus utiliser les
structures où le filtrage a lieu après le sous-échantillonnage et avant le
sur-échantillonnage).

34
Application au codage audio MP3

 Standard pour la compression audio


 Au départ : standard de compression du son de la norme MPEG-1 (1992)
puis MPEG-2 (94)
 Moving Picture Experts Group (MPEG) connu pour les normes MPEG
 3 schémas de codage audio appelés Layer1, 2, 3
 De 1 vers 3 de plus en plus complexes, compatibilité ascendante
 Les 3 Layers utilisent une décomposition en 32 sous-bandes de largeur
Fe/64
 Fe = 32 kHz, 44.1 kHz et 48 kHz

35
 Chaque sous-bande est quantifiée avec un codage uniforme, mais
avec un nombre variable de bits
 Le nombre de bits est déterminé par un « masque d ’audition » (cf.
Cours de P. Morosini)

36
37
Vers la STFT

 Idée : prendre un instantané du signal à travers une fenêtre, et en


calculer sa transformée de Fourier

w[n-m]

x[n]

38
Vers la STFT

 Transforme un signal temporel (1-D) en "image (2-D) : redondance


augmentée

X (n, ω ) = ∑ x[n]w[n − m ]e − jω m
DTSTFT
m = −∞

X (n, k ) = ∑ x[ n ] w[ n − m ]e − j 2 πmk N
DSTFT
m = −∞

 Attention aux effets de fenêtrage !

39
Vers la STFT : temps/fréquence

40
Vers la STFT : temps/fréquence

41
Vers la STFT : temps/fréquence

42
Vers la STFT : exemple

43
Vers la STFT : exemples réels

44
Et dans les images ?

 Recherche de structures permanentes à différentes échelles ?

45
Et dans les images ?

 Recherche de structures fines (textures) ?

46
Effet de σ (taille du noyau gaussien)

original Canny avec Canny avec

Le choix de dépend des performances attendues


détecte des bords à grande échelle
détecte des détails fins
47
Effets d'échelle

48
Effets d'échelle

• échelle fine
• seuil élevé

49
Effets d'échelle

• échelle grossière
• seuil élevé

50
Effets d'échelle

• échelle fine
• seuil bas

51
Idée de représentation scale-space (Witkin 83)

zéros de la "dérivée" première

croissant

Signal filtré par des gaussiennes

 Propriétés en scale space (avec lissage gaussien)


ִ la position des bords peut se décaler avec l'échelle (σ)
ִ deux bords peuvent fusionner à une échelle donnée
52
ִ un bord ne doit pas se scinder à échelle croissante
Structures fines/orientées : filtres de Gabor

 Gaussiennes modulées par des sinusoïdes orientées


 Peuvent être adaptées en orientation et échelle
 Un filtre est appliqué à une région et caractérisé par les paramètres
de sa distribution d'énergie (souvent la moyenne et l'écart-type)

Scale: 3 at 72° Scale: 4 at 108° Scale: 5 at 144°


53
Mix : pyramides gaussiennes et laplaciennes

Laplacian and Gaussian pyramids


Burt & Adelson, Simoncelli et al.

54
Mix : ondelettes orthogonales 2- et M-bandes

55
Mix : ondelettes orthogonales 2- et M-bandes

56
Mix : ondelettes "duales" 2- et M-bandes

Image Analysis Using a Dual-Tree M-Band Wavelet Transform


Caroline Chaux et al.
IEEE Transactions on Image Processing, August 2006
57
Mix : bancs de filtres orientés, faible
redondance

Optimization of Synthesis Oversampled Complex Filter Banks,


Jérôme Gauthier et al.
IEEE Transactions on Signal Processing, October 2009
58
Conclusion

 "Quand on n'a qu'un marteau dans sa


boîte à outils, tous les problèmes ont la
forme d'un clou" (D'après Juran)

59

Vous aimerez peut-être aussi