You are on page 1of 184

Universitatea Politehnica Bucuresti

Facultatea de Automatica si Calculatoare


PRELUCRAREA
SEMNALELOR:
breviar teoretic, probleme rezolvate, ghid Matlab
prof.dr.ing. Bogdan Dumitrescu
versiunea 6.1, iunie 2006
Prefat a
Lucrarea de fat a este destinata student ilor de anul IV ai Facultat ii de Au-
tomatica si Calculatoare, sect ia Automatica, care urmeaza cursul de Prelucrarea
Semnalelor. Dupa cum sugereaza titlul, lucrarea urmareste mai multe scopuri.

In primul rand, ea constituie un suport teoretic condensat al informat iilor pre-


date la curs; lipsesc deci explicat iile detaliate; lucrarea are mai degraba un rol de
xare a cunostint elor teoretice decat unul de init iere.
Al doilea scop major este obisnuirea studentului cu rezolvarea de probleme. De
aceea, ecare sect iune cont ine atat probleme rezolvate, cat si probleme propuse
cititorului. Problemele propuse au n general un nivel mediu de dicultate, sau
chiar usor. Lipsesc, sau sunt foarte rare, problemele grele.

In ne, lucrarea cont ine si informat ii despre funct iile Matlab, n special din Sig-
nal Processing Toolbox, utilen contextul chestiunilor teoretice studiate. Informat iile
sunt sumare, iar cititorul este invitat sa le completeze utilizand programul Matlab.
Fiecare sect iune este organizata n ordinea: teorie, probleme rezolvate, probleme
propuse, ghid Matlab; aceasta din urma parte poate lipsi, daca sect iunea respectiva
nu are implicat ii calculatorii.
Lucrarea este nca incompleta. Prima versiunea a ei, din decembrie 2002,
cont inea doar cinci capitole din cele cel put in sapte proiectate (numarul de versiune
de pe coperta are doua cifre: prima este numarul de capitole, a doua reprezinta
edit ia curenta).

Intre timp, al saselea capitol a fost scris, mpreuna cu numeroase
corecturi si adaugiri. Sugestiile si corecturile cititorilor sunt binevenite.
Versiuni
5.0: init iala.
5.1: nou: semnale aleatoare; corecturi: cap. 1, 2, 4.
5.2: corecturi si adaugiri: sect . 4.5.
5.3: nou: sect . 3.3; corecturi: cap. 5.
6.0: cap. 6, sect . 2.6; corecturi: cap. 1-5.
6.1: corecturi: cap. 1-5 (datorate student ilor din 2006: Alexandra Tarziu, Adela
Defta, Maria Comanescu, Diana Diaconescu, Vlad Amarandei, Alex Dumitrache,
Daniel Brumusescu, Raluca Oroz si alt ii).
Cuprins
1 Semnale 3
1.1 Semnale discrete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Transformata Fourier . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.3 Transformata Z . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.4 Semnale aleatoare . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2 Sisteme 31
2.1 Denit ii si proprietat i de baza . . . . . . . . . . . . . . . . . . . . . . 31
2.2 Sisteme liniare invariante n timp . . . . . . . . . . . . . . . . . . . . 34
2.3 Reprezentarea n frecvent a a sistemelor LIT . . . . . . . . . . . . . . 40
2.4 Filtre de faza minima . . . . . . . . . . . . . . . . . . . . . . . . . . 51
2.5 Filtre cu faza liniara . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
2.6 Implementarea ltrelor . . . . . . . . . . . . . . . . . . . . . . . . . . 63
3 Esantionare 69
3.1 Esantionare (conversie analogic-numeric) . . . . . . . . . . . . . . . . 69
3.2 Conversie numeric-analogic . . . . . . . . . . . . . . . . . . . . . . . 74
3.3 Schimbarea frecvent ei de esantionare . . . . . . . . . . . . . . . . . . 80
3.3.1 Decimare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
3.3.2 Interpolare (discreta) . . . . . . . . . . . . . . . . . . . . . . . 83
3.3.3 Schimbarea frecvent ei de esantionare cu un factor rat ional . . 87
4 Proiectarea ltrelor 91
4.1 Specicarea performant elor . . . . . . . . . . . . . . . . . . . . . . . 91
4.2 Proiectarea ltrelor FIR prin metoda ferestrei . . . . . . . . . . . . . 97
4.3 Proiectarea ltrelor FIR n sens CMMP . . . . . . . . . . . . . . . . 105
4.4 Proiectarea ltrelor FIR n sens Chebyshev . . . . . . . . . . . . . . 114
4.5 Proiectarea ltrelor IIR: metode de
transformare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
4.5.1 Filtre analogice . . . . . . . . . . . . . . . . . . . . . . . . . . 120
4.5.2 Transformarea biliniara . . . . . . . . . . . . . . . . . . . . . 122
4.5.3 Transformari discret-discret n frecvent a . . . . . . . . . . . . 125
1
2
5 Analiza n frecvent a a semnalelor 133
5.1 Seria Fourier discreta . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
5.2 Transformata Fourier discreta . . . . . . . . . . . . . . . . . . . . . . 139
5.3 Transformata Fourier rapida . . . . . . . . . . . . . . . . . . . . . . . 144
5.3.1 Decimare n timp . . . . . . . . . . . . . . . . . . . . . . . . . 144
5.3.2 Decimare n frecvent a . . . . . . . . . . . . . . . . . . . . . . 148
6 Cuantizare 157
6.1 Cuantizare scalara . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
6.2 Proiectarea unui cuantizor . . . . . . . . . . . . . . . . . . . . . . . . 164
6.3 Cuantizare vectoriala . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
A Semnale si sisteme analogice 179
A.1 Semnale analogice . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
A.2 Sisteme analogice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
Capitolul 1
Semnale
1.1 Semnale discrete
Denit ia 1.1 Un semnal discret x este o funct ie denit a pe mult imea numerelor
ntregi, x : Z R.
Mult imea Z are semnicat ia de timp (discret). Notam x[n] valoarea semnalului
la momentul n; numim x[n] si esantionul n al semnalului. Printr-un abuz curent de
notat ie, vomscrie si cantreg semnalul este x[n], subnt elegand prin aceasta ca n Z
este o variabila libera. Un exemplu de semnal discret este prezentat n gura 1.1.

In practica apar ndeosebi semnale reale, i.e. care au valori n mult imea numerelor
reale, ca n denit ia 1.1. Teoretic, semnalele complexe sunt foarte importante; un
semnal complex este o funct ie x : Z C. Prezentam mai jos cateva posibile
proprietat i ale semnalelor discrete.
Denit ia 1.2 Un semnal x[n] este periodic de perioad a N sau N periodic, dac a
x[n] = x[n +kN], pentru orice n, k Z.

In general, numim perioad a a semnalului
cel mai mic N pozitiv cu proprietatea de mai sus.
Denit ia 1.3 Se spune c a semnalul x[n] este absolut sumabil dac a

n=
|x[n]| < .
Mult imea tuturor semnalelor absolut sumabile este notat a
1
.
Denit ia 1.4 Se spune c a semnalul x[n] are energie nit a dac a

n=
|x[n]|
2
< .
Mult imea tuturor semnalelor de energie nit a este notat a
2
.
Suportul unui semnal. Spunem ca semnalul x[n] are suport T Z daca x[n] = 0,
n Z \ T , adica semnalul este nul n afara mult imii suport. Semnalele pot avea:
3
4 CAPITOLUL 1. SEMNALE
10 8 6 4 2 0 2 4 6 8 10
2
1.5
1
0.5
0
0.5
1
1.5
2
2.5
n
x[n]
... ...
Figura 1.1: Un exemplu de semnal discret.
suport nit, cand T este o mult ime nita, e.g. T = 0 : M, unde M este un
ntreg pozitiv;
suport innit la dreapta, cand x[n] = 0 pentru n < M, cu M Z xat.
suport innit la stanga, cand x[n] = 0 pentru n > M, cu M Z xat.
suport dublu innit (sau innit bilateral), cand T = Z.
Prezentamn continuare cateva semnale extrem de folosite.
Impuls unitate. Semnalul impuls unitate, prezentat n gura 1.2a este denit de
[n] =
_
1, daca n = 0,
0, altfel.
(1.1)
Orice semnal x[n] poate descris ca o suma innita de impulsuri unitate (decalate
n timp), anume
x[n] =

k=
x[k][n k]. (1.2)
Treapt a unitate. Semnalul treapta unitate, prezentat n gura 1.2b este denit
de
u[n] =
_
1, daca n 0,
0, altfel.
(1.3)
Aplicand relat ia (1.2) se observa ca ntre treapta si impulsul unitate exista relat ia
u[n] =

k=0
[n k]. (1.4)
1.1. SEMNALE DISCRETE 5
5 4 3 2 1 0 1 2 3 4 5
n
[n]
1
... ...
5 4 3 2 1 0 1 2 3 4 5
n
u[n]
1
... ...
a) b)
Figura 1.2: a) Impuls unitate; b) treapta unitate.
Semnale sinusoidale. Un semnal sinusoidal discret real are forma
x[n] = sin(n +). (1.5)
Exista o mare deosebire ntre sinusoidele discrete si cele continue. Acestea din
urma, de forma x(t) = sin(t +), t R, sunt ntotdeauna periodice, de perioada
T
0
= 2/. Sinusoida discreta (1.5) este periodica doar daca exista un ntreg k
astfel ncat
N =
2k

(1.6)
sa e ntreg. Cu alte cuvinte, este necesar ca / sa e un numar rat ional.

In acest
caz, perioada este cel mai mic ntreg pozitiv N care satisface (1.6). Prezentam n
gura 1.3 semnalul sin(n/3), a carui perioada este N = 6; punctat, este gurata
sinusoida continua sin(t/3), care trece prin aceleasi puncte ca si cea discreta. O
sinusoida aperiodica este sin n, desenata n gura 1.4.
Numim din (1.5) frecvent a semnalului sinusoidal. (Acesta este un abuz comun
n prelucrarea semnalelor, deoarece termenul corespunz ator din zica este pulsat ia.
Abuzul este justicat de proport ionalitatea dintre frecvent a si pulsat ie.) O pro-
prietate esent iala a semnalelor sinusoidale discrete este ca semnale cu frecvent e
diferite pot identice. (Spre deosebire, sinusoidele continue cu frecvent e diferite
sunt ntotdeauna diferite.)
Propozit ia 1.5 Dou a sinusoide de forma (1.5), cu frecvent ele si +2k, unde
k este un ntreg arbitrar, sunt identice.
Demonstrat ie.

In mod evident avem sin(( + 2k)n +) = sin(n +).
Asadar, doar semnalele sinusoidale cu frecvent e [, ] sunt distincte.
Prezentam n gura 1.5 sinusoidele identice sin(n/4) = sin(9n/4), precum si
sinusoidele continue diferite din care provin.
Semnale sinusoidale complexe. Un semnal sinusoidal discret complex are forma
x[n] = e
j(n+)
= cos(n +) +j sin(n +). (1.7)
6 CAPITOLUL 1. SEMNALE
6 4 2 0 2 4 6 8 10 12 14
1
0.5
0
0.5
1
n
... ...
Figura 1.3: Semnalul sin(n/3), de perioada 6. Punctat, sinusoida continua
sin(t/3).
6 4 2 0 2 4 6 8 10 12 14
1
0.5
0
0.5
1
n
... ...
Figura 1.4: Semnalul aperiodic sinn. Punctat, sinusoida continua sint.
1.1. SEMNALE DISCRETE 7
10 8 6 4 2 0 2 4 6 8 10
1
0.5
0
0.5
1
n
... ...
Figura 1.5: Sinusoidele identice sin(n/4) = sin(9n/4). Punctat, sinusoidele con-
tinue diferite sin(t/4) si sin(9n/4).
Semnale exponent iale. Un semnal discret exponent ial are forma
x[n] =
n
u[n], C, (1.8)
cu u[n] treapta unitate denita n (1.3). Daca || < 1, atunci lim
n
x[n] = 0.
Daca = 1, atunci x[n] = u[n] este treapta unitate. Daca || = 1, atunci se obt ine
o sinusoida (pentru n 0).

In ne, daca || > 1, atunci semnalul este divergent (n
sensul ca nu exista lim
n
x[n]).
Operat ii cu semnale. Fie x[n], y[n] doua semnale. Avandn vedere ca un semnal
este o funct ie, produsul unui semnal cu un scalar, i.e. x[n], R, sau suma a doua
semnale, i.e. x[n] +y[n], au denit ii evidente. Alte operat ii de interes n prelucrarea
semnalelor sunt urmatoarele.
Denit ia 1.6 Convolut ia semnalelor x[n], y[n] este semnalul
x[n] y[n]
def
=

k=
x[k]y[n k]. (1.9)
Denit ia 1.7 Modulat ia n timp a semnalelor x[n], y[n] este semnalul x[n]y[n]
obt inut prin nmult irea esantioanelor corespunz atoare aceluiasi moment de timp.
(Frecvent se spune c a semnalul x[n] este modulat n timp prin semnalul y[n], sau
invers.)
Probleme rezolvate
PR 1.1.1 a. Ce perioada are semnalul sin(3n/5) ?
b. Ce semnicat ie are numarul k din (1.6) ?
c. Dat i un exemplu de semnal sinusoidal discret de perioada 3.
8 CAPITOLUL 1. SEMNALE
2 0 2 4 6 8 10 12
1
0.5
0
0.5
1
n
... ...
Figura 1.6: Semnalul sin(3n/5) are perioada N = 10. Unei perioade a semnalului
i corespund k = 3 perioade ale semnalului continuu sin(3t/5).
Solut ie. a. Deoarece frecvent a semnalului este = 3/5, se observa din (1.6)
ca cel mai mic k pentru care N este ntreg este k = 3; perioada semnalului este
N = 10. Semnalul este ilustrat n gura 1.6.
b. Numarul k din (1.6) reprezinta numarul de perioade ale semnalului sinusoidal
continuu x(t) = sin(t +) care corespund unei perioade a semnalului discret (1.5).
Vezi si gura 1.6.
c. Alegand = 2/3, rezulta din (1.6) ca N = 3 pentru k = 1.
PR 1.1.2 Fie semnalele
x[n] = 2 sin
_

3
n +

4
_
, y[n] = cos
_

4
n
_
.
Este x[n] +y[n] un semnal periodic ? Daca da, care este perioada lui ?
Solut ie. Semnalul x[n] are perioad a 6, iar semnalul y[n] are perioada 8. Suma
a doua semnale periodice este periodica, iar perioada sa este cel mai mic multiplu
comun al perioadelor celor doua semnale, n cazul nostru 24.
PR 1.1.3 a. Care este sinusoida discreta cu cea mai nalta frecvent a ?
b. Pot identice doua sinusoide discrete cu aceeasi frecvent a, dar cu amplitudini
diferite ? (Semnalul sinusoidal x[n] = a sin(n +), cu a > 0 are amplitudinea a.)
Solut ie. a. Frecvent a cea mai nalta este = . Un semnal cu aceasta frecvent a
este cos(n) = (1)
n
, desenat n gura 1.7.
b. Da, de exemplu cos(n) = 2 cos(n +

3
).
1.1. SEMNALE DISCRETE 9
8 6 4 2 0 2 4 6 8
1
0.5
0
0.5
1
n
... ...
Figura 1.7: Semnalul cos(n) are frecvent a maxima.
Probleme propuse
PP 1.1.1 Poate periodic un semnal cu suport nit ? Dar unul cu suport innit
la dreapta ?
PP 1.1.2 Un semnal x[n] este ntarziat cu n
0
momente de timp (adica noul semnal
este y[n] = x[n n
0
]). Care din urmatoarele proprietat i ale semnalului x[n] se
conserva dupa ntarziere: a) periodicitate, b) forma sinusoidala, c) suport nit, d)
suport innit la dreapta ?
PP 1.1.3 Aceeasi ntrebare pentru semnalul y[n] = x[n] obt inut prin inversarea
sensului timpului.
PP 1.1.4 Este un semnal constant periodic ? Daca da, care este perioada sa ?
PP 1.1.5 Care dintre semnalele impuls unitate (1.1), treapta unitate (1.3), sinu-
soidal (1.5), exponent ial (1.8) este absolut sumabil ?
PP 1.1.6 Demonstrat i ca orice semnal absolut sumabil are energie nita, i.e. ca
este satisfacuta incluziunea
1

2
.
Dat i un exemplu de semnal cu energie nita care nu este absolut sumabil;
demonstrat i astfel ca incluziunea de mai sus e stricta.
PP 1.1.7 Demonstrat i ca operat ia de convolut ie a semnalelor, denita de (1.9),
este comutativa si asociativa.
PP 1.1.8 Fie x[n] si y[n] doua semnale periodice. Sunt periodice semnalele obt inute
prin convolut ia sau modulat ia n timp a celor doua semnale date ?
PP 1.1.9 Fie x
1
[n] si x
2
[n] doua semnale cu suport innit la dreapta, anume M
1
:
si M
2
: . Care este suportul convolut iei lor x
1
[n] x
2
[n] ? Caz particular:
M
1
= M
2
= 0.
10 CAPITOLUL 1. SEMNALE
Formulat i si rezolvat i o problema asemanatoare pentru semnale cu suport innit
la stanga.
Daca x
1
[n] are suport innit la stanga iar x
2
[n] suport innit la dreapta, demon-
strat i ca x
1
[n] x
2
[n] are suport dublu innit.
Ghid Matlab

In Matlab se pot utiliza doar semnale cu suport nit, n variabile de tip vector;
adoptam convent ia ca acesti vectori sa e de tip linie. Pentru exemplicare vom
considera suportul
>> n = 0:M
de lungime
>> L = length(n)
Semnalele denite n aceasta sect iune, i.e. impuls unitate (1.1), treapta unitate
(1.3), sinusoida reala (1.5), exponent ial (1.8) se introduc simplu astfel
>> imp_unit = eye(1,L) % impuls unitate
>> tr_unit = ones(1,L) % treapta unitate
>> sin_real = sin(w*n + phi) % sinusoida reala
>> j = sqrt(-1)
>> sin_compl = exp( j*(w*n + phi)) % sinusoida complexa
>> e = ones(1,L)
>> e(2:end) = alfa
>> e = cumprod(e) % semnal exponential
Desigur, nainte de executarea instruct iunile de mai sus, variabilele w, phi, alfa au
primit valori numerice adecvate. Gracul unui semnal real se poate face cu funct ia
plot; tipica pentru semnale discrete este nsa funct ia stem (cu care au fost trasate
gracele din aceasta sect iune), apelata e.g. astfel
>> stem(n, sin_real)
Pentru a ilustra operat iile cu semnale, consideram ca x1 si x2 cont in doua sem-
nale cu acelasi suport. Atunci, suma lor se scrie
>> xs = x1 + x2
modulat ia n timp (produsul la nivel de element) este
>> xm = x1 .* x2
iar convolut ia lor este
>> xc = conv(x1,x2)
Atent ie, semnalul xc obt inut prin convolut ie are alt suport decat x1 si x2; de ex-
emplu, daca x1 si x2 au suport 0 : M, atunci xc are suport 0 : 2M.
1.2. TRANSFORMATA FOURIER 11
1.2 Transformata Fourier
Denit ia 1.8 Transformata Fourier a unui semnal discret x[n] este funct ia X :
R C, denit a de
X() =

n=
x[n]e
jn
. (1.10)
Not am pe scurt X() = TF(x[n]).
Din motive care vor evidente mai tarziu, folosim si notat ia X(e
j
) cu aceeasi
semnicat ie ca X(). Deocamdata vom utiliza mai ales notat ia din (1.10); n
schimb, atunci cand va vorba despre sisteme, cealalta notat ie va prevala.
Observat ia 1.9 Stim din Propozit ia 1.5 ca sinusoidele cu frecvent e diferind cu 2
sunt identice.

In consecint a, transformata Fourier X() este periodica cu perioada
2 si de aceea este sucient sa studiem transformata Fourier a unui semnal doar n
intervalul [, ].
Observat ia 1.10 Nu orice semnal x[n] are o transformata Fourier denita pentreg
intervalul [, ], deoarece seria (1.10) poate divergenta. O condit ie sucienta de
convergent a este urmatoarea.
Propozit ia 1.11 Dac a semnalul x[n] este absolut sumabil, atunci X() din (1.10)
exist a pentru orice . (Mai mult, seria (1.10) converge uniform c atre o funct ie
continu a n .)
Propozit ia 1.12 Dac a x[n] este un semnal de energie nit a, atunci seria (1.10)
converge (i.e. transformata Fourier exist a) aproape peste tot. Mai precis, e
X
M
() =
M

n=M
x[n]e
jn
. (1.11)
Atunci avem
lim
M
_

|X() X
M
()|
2
d = 0, (1.12)
adic a energia erorii de aproximare a lui X() prin X
M
() tinde spre zero, dar
eroarea nu se anuleaz a neap arat peste tot. (Pe scurt, X
M
() poate s a nu convearg a
peste tot la X(); desigur, convergent a nu e uniform a, n general.)
Teorema 1.13 Transformata Fourier invers a, care asociaz a unei funct ii X() sem-
nalul x[n] (a c arui transformat a Fourier este X()) este
x[n] =
1
2
_

X()e
jn
d. (1.13)
Forma transformatei Fourier inversa (1.13) sugereaza semnicat ia transformatei
Fourier a unui semnal: X(), [, ], reprezinta cont inutul n frecvent a al
semnalului x[n]. Funct ia complexa X() este numita spectrul semnalului x[n]; de-
sigur, |X()| este amplitudinea (magnitudinea) spectrului, iar argX() este faza
spectrului. De asemenea, |X()|
2
este numita densitate de energie spectral a, din
motive ce vor evidente mai jos, dupa prezentarea teoremei lui Parseval.
12 CAPITOLUL 1. SEMNALE
Proprietat i ale transformatei Fourier
Vom enumera n continuare cateva proprietat i importante ale transformatei Fourier.
Fie x[n], y[n] semnale complexe, iar X(), Y () transformatele Fourier ale acestora.
Liniaritate. Pentru orice , C avem
TF(x[n] +y[n]) = TF(x[n]) + TF(y[n]). (1.14)

Int arziere. Fie n


0
un ntreg oarecare si y[n] = x[n n
0
], i.e. y[n] este sem-
nalul x[n] ntarziat cu n
0
momente de timp (o ntarziere negativa este de fapt o
anticipare). Relat ia ntre transformatele Fourier ale celor doua semnale este
Y () = e
jn0
X(). (1.15)
Complex conjugare. Fie y[n] = x

[n]. Atunci
Y () = X

(). (1.16)
Simetrii ale TF pentru semnale reale. Daca semnalul x[n] este real, atunci au
loc urmatoarele proprietat i de simetrie:
X() = X

(),
ReX() = ReX(),
ImX() = ImX(),
|X()| = |X()|,
argX() = argX().
(1.17)
Cu alte cuvinte, |X()| si ReX() sunt funct ii pare, iar ImX() si argX() sunt
funct ii impare.
Timp invers. Consideramsemnalul y[n] = x[n] obt inut prin inversarea sensului
timpului pentru semnalul x[n]. Avem
Y () = X(). (1.18)
Derivare n frecvent a:
TF(nx[n]) = j
dX()
d
. (1.19)
Teorema lui Parseval. Forma generala a acestei teoreme este

n=
x[n]y

[n] =
1
2
_

X()Y

()d. (1.20)
Termenul din stanga are semnicat ie de produs scalar n spat iul semnalelor; similar,
termenul din dreapta are semnicat ie de produs scalar n spat iul funct iilor denite
pe intervalul [, ]. Punand y[n] = x[n] n (1.20) se obt ine egalitatea numita de
obicei teorema lui Parseval

n=
|x[n]|
2
=
1
2
_

|X()|
2
d. (1.21)
1.2. TRANSFORMATA FOURIER 13
Asadar, energia n timp a semnalului este egala (modulo constanta 1/2) cu energia
n frecvent a a acestuia. Termenul din dreapta justica denumirea de densitate de
energie spectrala atribuita lui |X()|
2
.
Convolut ie. Prin transformata Fourier, convolut ia a doua semnale este transfor-
mata n produs al transformatelor Fourier, i.e.
TF(x[n] y[n]) = X() Y (). (1.22)
Modulat ie n timp. Avem
TF(x[n]y[n]) =
1
2
_

X()Y ( )d. (1.23)


Probleme rezolvate
PR 1.2.1 a. Demonstrat i ca daca m este ntreg, atunci
_

e
jm
d = 2[m] =
_
2, daca m = 0
0, altfel.
(1.24)
b. Demonstrat i Teorema 1.13.
Solut ie. a. Calculam direct. Pentru m = 0 obt inem
_

e
jm
d =
_

d = 2
iar pentru m = 0 avem
_

e
jm
d =
1
jm
e
jm
|

=
2j sin(m)
jm
= 0,
deoarece sin(m) = 0 pentru orice m ntreg.
b. Substituim (1.10) n (1.13), apoi utilizam (1.24) si obt inem
1
2
_

k=
x[k]e
jk
_
e
jn
d =
1
2

k=
x[k]
_

e
j(nk)
d =
=

k=
x[k][n k] = x[n].
Ultima egalitate este (1.2). Asadar funct ia (1.13) este inversa funct iei (1.10).
PR 1.2.2 a. Calculat i transformata Fourier a semnalului exponent ial denit de
(1.8), cu || < 1.
b. Calculat i transformata Fourier a semnalului y[n] =
n
u[n1], cu || > 1.
Solut ie. a. Folosim denit ia (1.10) si obt inem
X() =

n=0

n
e
jn
=

n=0
(e
j
)
n
=
1
1 e
j
.
14 CAPITOLUL 1. SEMNALE

In calculul sumei progresiei geometrice de mai sus am t inut seama ca lim


n
(e
j
)
n
=
0, deoarece rat ia e
j
are modul subunitar.
b. Aplicand din nou denit ia (1.10) obt inem
Y () =
1

n=

n
e
jn
=

n=1
(
1
e
j
)
n
=
_
1
1
1
e
j
1
_
=
1
1 e
j
.
De data aceasta avem lim
n
(
1
e
j
)
n
= 0. Atent ie, semnalele x[n] =
n
u[n] si
y[n] =
n
u[n1] nu au transformate Fourier identice, deoarece ele sunt denite
pentru valori diferite ale parametrului .

In primul caz avem || < 1, n al doilea
|| > 1. De altfel, doua semnale nu pot avea aceeasi transformata Fourier, deoarece
TF este o biject ie.
PR 1.2.3 Consideram semnalul x[n] al carui spectru, ilustrat n gura 1.8, este
X() =
_
1, pentru ||
t
,
0, pentru
t
< || ,
unde
t
este dat. Asadar, semnalul x[n] are un spectru ideal de joasa frecvent a.
Calculat i x[n] folosind transformata Fourier inversa (1.13).
Solut ie. Introducem funct ia sinc (numita si nucleul Dirichlet; ea va aparea de
multe ori n continuare):
sinc =
sin

. (1.25)
Folosind transformata Fourier inversa obt inem
x[n] =
1
2
_

X()e
jn
d =
1
2
_
t
t
e
jn
d =
1
2jn
e
jn

t
t
=
sin(
t
n)
n
=

t

sinc(
t
n). (1.26)
Un exemplu de astfel de semnal este prezentat n gura 1.8. Se observa ca semnalul
are suport dublu innit. Am obt inut deci egalitatea
X() =

n=
sin(
t
n)
n
e
jn
=

t

n=
sinc(
t
n)e
jn
. (1.27)
PR 1.2.4 (Fenomenul Gibbs) Se considera semnalul x[n] denit de (1.26), cu
spectrul ideal de joasa frecvent a din gura 1.8. Scriet i un program Matlab care sa
deseneze modulul spectrului semnalului
x
M
[n] =
_
x[n], pentru n = M : M,
0, altfel;
cu alte cuvinte, seria (1.27) se trunchiaza ca n (1.11).
1.2. TRANSFORMATA FOURIER 15
4 3 2 1 0 1 2 3 4
0.2
0
0.2
0.4
0.6
0.8
1
1.2

/3 /3
15 10 5 0 5 10 15
0.1
0.05
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
n
... ...
Figura 1.8: Spectru de joasa frecvent a ideal, cu
t
= /3 (stanga). Semnalul
corespunzator (dreapta).
Observat i ca, pe masura ce M creste, spectrul X
M
() se apropie de caracteristica
ideala, mai put inn apropierea frecvent ei
t
. Aceasta este o ilustrare a convergent ei
transformatei Fourier conform Propozit iei 1.12 si se numeste fenomenul Gibbs. (De
asemenea, demonstrat i ca semnalul (1.26) are energie nita.)
Solut ie. Programul este prezentat n gura 1.9, n doua variante. Prima este
cea naiva, n care seria (1.27) se trunchiaza pur si simplu. Singurul articiu de
calcul este utilizarea simetriei transformatei Fourier pentru semnale reale (prima
relat ie din (1.17)). Observam ca spectrul este calculat ntr-un numar de puncte
np, pentru comoditate alese echidistant. De asemenea, trebuie precizata explicit
valoarea x[0] =
t
/ care rezulta din (1.26) pentru n = 0; n Matlab (si n orice alt
limbaj de programare care utilizeaza formatul virgula mobila pentru numere reale),
calculul direct al lui x[0] duce la operat ia 0/0, al carui rezultat este NaN (not a
number, simbolul pentru rezultate nedeterminate n standardul virgula mobila).
A doua varianta de program utilizeaza proprietat ile semnalului (1.26) pentru un
calcul mai rapid. Observam ca semnalul (1.26) este par, adica x[n] = x[n].

In
acest caz se poate demonstra usor ca X() este real (si deci par), si ca
X() =

t

+ 2
M

n=1
sin(
t
n)
n
cos(n).
(Vezi problema PP1.2.4 pentru mai multe amanunte.)
Transformata Fourier X() calculata de programul de mai sus este prezentata
n gura 1.10, pentru M = 3, 10, 30, 100 si
t
= /3. Fenomenul Gibbs este evident,
eroarea absolutan jurul frecvent ei =
t
ramanand mare chiar pentru valori foarte
mari ale lui M, pentru care x[n] este foarte mic (spre exemplu x[100] = 0.0028,
dar eroarea absoluta maxima este aproape 0.09).

In sfarsit, pentru a demonstra ca semnalul (1.26) are energie nita este sucient
sa observam ca |x[n]| < 1/n, pentru n > 0, si deci

n=1
|x[n]|
2
<

n=1
1/n
2
; seria
din termenul drept este convergenta.

In plus, avem x[n] = x[n].
PR 1.2.5 (Transformata Fourier a semnalelor sinusoidale complexe) Sem-
nalul sinusoidal complex x[n] = e
j0n
, unde
0
[, ] este dat, nu are energie
16 CAPITOLUL 1. SEMNALE
function [X,w] = tf_jf(wt, M, np)
% calculeaza transformata Fourier a semnalului ideal
% de joasa frecventa trunchiat la intervalul -M:M
% wt - frecventa maxima (banda de frecvente este [0,wb])
% M - limita suportului semnalului
% np - numarul de frecvente (echidistante) in care se calculeaza
% transformata Fourier
if nargin < 3
np = 200;
end
%------------------------------------------
% VARIANTA 1
n = -M:M;
x = sin(wt*n)./(pi*n);
x((1+end)/2) = wt/pi;
w = 0:2*pi/np:pi;
for k = 1 : length(w)
X(k) = sum( x .* exp(-j*w(k)*n) );
end
X = [ conj(X(end:-1:2)) X ];
w = [ -w(end:-1:2) w ];
%------------------------------------------
% VARIANTA 2
n = (1:M);
x = sin(wt*n)./(pi*n);
w = 0:2*pi/np:pi;
X = x * cos(n*w);
X = 2*X + wt/pi;
X = [ X(end:-1:2) X ];
w = [ -w(end:-1:2) w ];
Figura 1.9: Program de calcul al modulului transformatei Fourier (1.27) trunchiata
la suportul M : M.
1.2. TRANSFORMATA FOURIER 17
4 3 2 1 0 1 2 3 4
0.2
0
0.2
0.4
0.6
0.8
1
1.2

/3 /3
4 3 2 1 0 1 2 3 4
0.2
0
0.2
0.4
0.6
0.8
1
1.2

/3 /3
4 3 2 1 0 1 2 3 4
0.2
0
0.2
0.4
0.6
0.8
1
1.2

/3 /3
4 3 2 1 0 1 2 3 4
0.2
0
0.2
0.4
0.6
0.8
1
1.2

/3 /3
Figura 1.10: Modulul transformatei Fourier (1.27) trunchiata la suportul M : M,
pentru M = 3, 10, 30, 100.
nita si seria (1.10) nu este convergenta. Totusi, putem asocia o transformata
Fourier acestui semnal, anume
X() = 2

=
(2 +
0
). (1.28)
Notam () impulsul Dirac situat n origine. Observam ca X() este periodica si
ca restrict ia la intervalul [, ] este impulsul 2(
0
).
Interpretare: semnalul sinusoidal are un spectru nenul ntr-o singura frecvent a
(n care se concentreaza toata energie sa). Un spectru de acest tip se numeste si
spectru de linii (una singura, n cazul de fat a).
Demonstrat i, folosind denit ia (1.13), ca semnalul sinusoidal x[n] se obt ine
aplicand transformata Fourier inversa funct iei (spectru) X().
Solut ie. Demonstrat ia este banala, t inand seama de proprietat ile impulsului
Dirac:
1
2
_

2(
0
)e
jn
d = e
j0n
.
PR 1.2.6 Demonstrat i proprietat ile (1.141.23) ale transformatei Fourier.
18 CAPITOLUL 1. SEMNALE
Solut ie. Liniaritatea (1.14) este evidenta.

Int arziere. Luand y[n] = x[n n


0
] si aplicand denit ia (1.10) obt inem
Y () =

n=
x[n n
0
]e
jn
=

n=
x[n]e
j(n+n0)
= e
jn0
X().
Complex conjugare. Luam y[n] = x

[n] si obt inem


Y () =

n=
x

[n]e
jn
=
_

n=
x[n]e
jn
_

= X

().
Simetriile TF pentru semnale reale rezulta din (1.16), t inand seama ca x

[n] =
x[n]. Asadar avem X() = X

(), ceea ce implica toate relat iile (1.17).


Derivare n frecvent a. Avem
dX()
d
=
d
d
_

n=
x[n]e
jn
_
=

n=
(jnx[n]e
jn
),
de unde (1.19) rezulta imediat.
Teorema lui Parseval. Folosim denit ia TF si proprietatea (1.24):
1
2
_

X()Y

()d =
1
2
_

n=
x[n]e
jn

k=
y

[k]e
jk
d
=
1
2

n=

k=
x[n]y

[k]
_

e
j(kn)
d
(1.24)
=

n=
x[n]y

[n].
Convolut ie. Transformata Fourier a semnalului x[n] y[n] denit n (1.9) este

n=

k=
x[k]y[nk]e
jn
=

k=
x[k]e
jk

n=
y[nk]e
j(nk)
= X()Y (),
ceea ce demonstreaza (1.22).
Modulat ie n timp. Relat ia (1.23) se demonstreaza nlocuind X() si Y ( )
cu denit ia (1.10).
Probleme propuse
PP 1.2.1 Calculat i transformata Fourier a semnalului
x[n] =
_
1, pentru n = 0 : M,
0, altfel,
unde M este un ntreg pozitiv dat.
1.2. TRANSFORMATA FOURIER 19
PP 1.2.2 Calculat i transformata Fourier a semnalului x[n] =
|n|
, cu || < 1.
PP 1.2.3 Calculat i transformata Fourier a semnalului x[n] = n
n
u[n], unde || <
1. (Observat i ca x[n] este absolut sumabil.)
PP 1.2.4 a. Fie x[n] un semnal complex cu proprietatea x[n] = x

[n], n Z;
spunem ca un astfel de semnal este par. Observat i ca x[0] R. Demonstrat i ca
transformata sa Fourier este reala, mai precis ca
X() = x[0] + 2

n=1
Re
_
x[n]e
jn
_
.
Demonstrat i ca, daca x[n] este un semnal real par, i.e. are proprietatea x[n] = x[n],
n Z, atunci transformata sa Fourier este
X() = x[0] + 2

n=1
x[n] cos(n).
b. Fie x[n] un semnal complex cu proprietatea x[n] = x

[n], n Z; spunem
ca un astfel de semnal este impar. Observat i ca x[0] jR (i.e. este pur imaginar).
Demonstrat i ca transformata sa Fourier este pur imaginara, mai precis ca
X() = 2j

n=1
Im
_
x[n]e
jn
_
.
Demonstrat i ca, daca x[n] este un semnal real impar, i.e. are proprietatea x[n] =
x[n], n Z, atunci transformata sa Fourier este
X() = 2j

n=1
x[n] sin(n).
PP 1.2.5 Fie x[n] un semnal complex si X() = TF(x[n]). Calculat i, n funct ie
de X(), transformata Fourier a semnalului y[n] = x

[n
0
n], unde n
0
Z este
dat.
PP 1.2.6 Calculat i transformatele Fourier ale semnalelor cos(
0
n) si sin(
0
n),
unde
0
[, ] este dat. (Indicat ie: utilizat i (1.28).)
PP 1.2.7 Se considera semnalul constant x[n] = 1. Demonstrat i ca transformata
sa Fourier, denita pe intervalul [, ], este impulsul centrat n origine 2().
(Indicat ie: folosit i transformata Fourier inversa.) Se obt ine asadar relat ia
2() =

n=
e
jn
.
Desigur, semnalul x[n] nu are energie nita. Fenomenul Gibbs apare si n acest
caz; desenat i gracul sumei trunchiate
M

n=M
e
jn
,
20 CAPITOLUL 1. SEMNALE
pentru diverse valori ale lui M. Vet i obt ine aproximari ale impulsului unitate (n
frecvent a, adica ntr-un domeniu continuu). Aceste aproximari vor avea oscilat ii
mari n apropierea frecvent ei = 0.
PP 1.2.8 Fie x[n] un semnal cu energie nita si X() transformata sa Fourier.
Denim semnalul
r[k] =

n=
x[n]x

[n k] (1.29)
si notam R() transformata sa Fourier.
a. Demonstrat i ca are loc egalitatea R() = |X()|
2
.
b. Observat i ca r[0] =

n=
|x[n]|
2
este energia semnalului x[n]. Din trans-
formata Fourier inversa
r[k] =
1
2
_

R()e
jk
d,
deducet i teorema lui Parseval.
Ghid Matlab
Transformata Fourier a unui semnal cu suport nit se poate calcula ntr-un mod
similar programului din gura 1.9. Deci, luand o grila de frecvent e
>> w = 0:pas:pi
unde, e.g. pas=0.01, transformata Fourier a semnalului x cu suportul
>> n = 0:M
se poate calcula simplu prin
>> X = x * exp(-j*n*w)
Amplitudinea transformatei Fourier se deseneaza cu
>> plot(w, abs(X))
iar faza prin
>> plot(w, angle(X))
De exemplu, pentru problema PP1.2.1, facand abstract ie de formula simpla
ceruta acolo, transformata Fourier se poate calcula astfel
>> M = 10 % o valoare intreaga oarecare
>> w = 0 : pi/200 : pi % sunt de fapt 201 puncte
>> x = ones(1, M+1) % semnalul
>> X = x * exp(-j*(0:M)*w) % transformata Fourier
O alta varianta de calcul presupune utilizarea funct iei freqz, care va discutata
mai n detaliun capitolul 2. Transformata Fourier se calculeaza pe grila de frecvent e
w prin apelul
>> X = freqz(x, 1, w)
De asemenea, transformata Fourier se poate calcula ecient (pe o anumita grila
de frecvent e), cu funct ia fft. Aceasta va discutata dupa prezentarea transfor-
matei Fourier discrete si a algoritmilor rapizi de implementare a acesteia, n capitolul
5.
1.3. TRANSFORMATA Z 21
1.3 Transformata Z
Denit ia 1.14 Transformata Z (bilateral a) a unui semnal discret x[n] este funct ia
X : C C
X(z) =

n=
x[n]z
n
. (1.30)
Folosim si notat ia X(z) = TZ(x[n]).
Observam ca transformata Fourier (1.10) este un caz particular al transformatei
Z, pentru z = e
j
. Notat ia X(e
j
) pentru transformata Fourier (spre deosebire de
notat ia naturala X()) subliniaza aceasta legatura.
Observat ia 1.15 Pentru marea majoritate a semnalelor, transformata Z exista (n
sensul ca seria (1.30) converge) ntr-o anume regiune a planului complex (care nu
cont ine neaparat cercul unitate), numita regiune de convergent a. Asadar semnale
care nu au transformata Fourier pot avea transformata Z. Vezi problema PR1.3.1
pentru un exemplu.
Observat ia 1.16 Mai multe semnale pot avea aceeasi transformata Z, dar regiuni
de convergent a disjuncte. Exemple de astfel de semnale sunt prezentate n prob-
lemele PR1.3.1 si PR1.3.2.
Teorema 1.17 Transformata Z invers a, care asociaz a unei funct ii X(z) semnalul
x[n] (a c arui transformat a Z este X(z)) este
x[n] =
1
2j
_
X(z)z
n1
dz. (1.31)
Integrala se calculeaz a pe un contur nchis n jurul originii n planul complex, par-
curs n sens invers acelor de ceas; conturul este situat n regiunea de convergent a a
transformatei Z pentru semnalul x[n].
Asadar transformata Z inversa nu depinde doar de X(z) ci si de regiunea de
convergent a a transformatei.

In aceste condit ii, transformata Z este unica.
Teorema de mai sus are put ina utilitate practica, datorita dicultat ii calcularii
integralei (1.31). De obicei, recuperarea unui semnal a carui transformata Z este
cunoscuta se face utilizand transformate Z elementare (unele prezentate n tabelul
1.1) si proprietat i ale transformatei Z (prezentate mai jos).
Proprietat i ale transformatei Z
Vom enumera n continuare cateva proprietat i importante ale transformatei Z. Fie
x[n], y[n] semnale si X(z), Y (z) transformatele lor Z.
Liniaritate. Pentru orice , C avem
TZ(x[n] +y[n]) = TZ(x[n]) + TZ(y[n]). (1.32)
22 CAPITOLUL 1. SEMNALE
Semnal Transformata Z
Impuls unitate ntarziat: [n n
0
] z
n0
Treapta unitate: u[n]
1
1 z
1
Exponent iala:
n
u[n]
1
1 z
1
Sinus: sin(
0
n)u[n]
sin
0
z
1
1 2 cos
0
z
1
+z
2
Cosinus: cos(
0
n)u[n]
1 cos
0
z
1
1 2 cos
0
z
1
+z
2
Tabelul 1.1: Transformate Z ale unor semnale uzuale.

Int arziere. Fie n


0
un ntreg oarecare si y[n] = x[n n
0
], i.e. semnalul x[n]
ntarziat. Relat ia dintre transformatele Z ale celor doua semnale este
Y (z) = z
n0
X(z). (1.33)

In cazul n care n
0
= 1, relat ia de mai sus este Y (z) = z
1
X(z), adica ntarzierea
cu un moment de timp corespunde unei nmult iri cu z
1
. De aceea, z
1
se numeste
si operator de ntarziere cu un pas (esantion).

Inmult irea cu o exponent ial a. Fie x[n] un semnal oarecare si y[n] =


n
x[n], cu
C. Atunci avem
Y (z) = X(z/). (1.34)
Timp invers. Consideramsemnalul y[n] = x[n] obt inut prin inversarea sensului
timpului pentru semnalul x[n]. Avem
Y (z) = X(z
1
). (1.35)
Derivare dup a z:
TZ(nx[n]) = z
dX(z)
dz
. (1.36)
Convolut ie. Prin transformata Z, convolut ia a doua semnale este transformata
n produs al transformatelor Z, i.e.
TZ(x[n] y[n]) = X(z) Y (z). (1.37)
Probleme rezolvate
PR 1.3.1 Calculat i transformata Z a semnalului exponent ial denit de (1.8). Care
este regiunea de convergent a a transformatei Z a acestui semnal ?
Solut ie. Aplicand (1.30) obt inem
X(z) =

n=0

n
z
n
=

n=0
(z
1
)
n
=
1
1 z
1
.
1.3. TRANSFORMATA Z 23
Seria de mai sus converge daca rat ia z
1
are modul subunitar, deci n regiunea
inelara (innita) a planului complex n care |z| > ||. Asadar, cand || > 1,
transformata Z a semnalului exponent ial exista ntr-o zona a planului complex, n
timp ce transformata Fourier nu exista.
PR 1.3.2 Calculat i transformata Z a semnalului y[n] =
n
u[n1] si determinat i
regiunea de convergent a a acesteia.
Solut ie. Aplicand (1.30) obt inem
Y (z) =
1

n=

n
z
n
=

n=1
(
1
z)
n
=
_
1
1
1
z
1
_
=
1
1 z
1
.
Convergent a are loc cand |
1
z| < 1, i.e. |z| < ||. Regiunile de convergent a
ale semnalelor y[n] (din aceasta problema) si x[n] (din problema precedenta) sunt
disjuncte; transformatele Z ale semnalelor sunt identice.
PR 1.3.3 Determinat i semnalul a carui transformata Z este
X(z) =
1 + 2z
1
1 1.5z
1
+ 0.5z
2
.
Solut ie. Scriem numitorul ca produs a doi factori si descompunem n fract ii
simple:
1
1 1.5z
1
+ 0.5z
1
=
1
(1 z
1
)(1 0.5z
1
)
=
2
1 z
1

1
1 0.5z
1
.
Din problema PR1.3.1 observam ca
X
1
(z) =
1
1 z
1
, X
2
(z) =
1
1 0.5z
1
sunt transformatele Z ale treptei unitate x
1
[n] = u[n], respectiv exponent ialei
x
2
[n] = 0.5
n
. Regiunile de convergent a ale transformatelor sunt |z| > 1, respec-
tiv |z| > 0.5. T inand seama de proprietat ile de liniaritate (1.32) si ntarziere (1.33),
semnalul a carui transformata Z este X(z) este
x[n] = 2x
1
[n] + 4x
1
[n 1] x
2
[n] 2x
2
[n 1]
= (2 0.5
n
)u[n] + 2(2 0.5
n1
)u[n 1].
Mai sus am presupus ca regiunea de convergent a a transformatei Z este |z| > 1 adica
intersect ia regiunilor de convergent a considerate pentru X
1
(z) si X
2
(z). Putemnsa
considera alte doua regiuni, pentru care se obt in semnale diferite (cititorul este rugat
sa completeze detaliile).
Daca regiunea de convergent a este |z| < 0.5, atunci conform PR1.3.2, semnalul
a carui transformata Z este X(z) este
x[n] = (2 + 0.5
n
)u[n 1] + 2(2 + 0.5
n1
)u[n].
24 CAPITOLUL 1. SEMNALE
Daca regiunea de convergent a este 0.5 < |z| < 1, atunci obt inem
x[n] = 2u[n 1] 4u[n] 0.5
n
u[n] 2 0.5
n1
u[n 1].

In acest caz am folosit PR1.3.2 pentru X


1
(z) si PR1.3.1 pentru X
2
(z).
Asadar exista trei semnale a caror transformata Z este X(z), dar cu regiuni de
convergent a disjuncte doua cate doua.
Probleme propuse
PP 1.3.1 Demonstrat i proprietat ile (1.321.37) ale transformatei Z.
PP 1.3.2 Ce semnal are transformata Z egala cu (1 z
1
)(1 +z
1
)(1 2z
1
) ?
PP 1.3.3 Se cunoaste transformata Z a unui semnal x[n]. Care este transformata
Z a semnalului y[n] = x[n
0
n], unde n
0
Z este dat ?
PP 1.3.4 Calculat i transformatele Z si stabilit i regiunile lor de convergent a pentru
semnalele de mai jos:
x
1
[n] =
_
1, pentru n = 0 : M (cu M N),
0, altfel,
x
2
[n] = n
n
u[n],
x
3
[n] =
n
u[n 1],
x
4
[n] =
n
cos(
0
(n 1))u[n 1]
x
5
[n] = cos(
0
n)u[n 1]
x
6
[n] = u[n + 1].
1.4 Semnale aleatoare
Pana acum am discutat doar despre semnale deterministe.

In practica apar nsa
de multe ori semnale cu caracter aleator; caracterizarea lor este subiectul acestei
sect iuni.
O variabil a aleatoare reala este caracterizata de funct ia de densitate de proba-
bilitate p : R R
+
, cu proprietatea
_

p()d = 1. (1.38)
Probabilitatea ca valoarea variabilei aleatoare sa se ae ntr-un interval precizat
[
1
,
2
] este
Prob(
1

2
) =
_
2
1
p()d.
Sperant a matematic a (expectat ia). Fie si doua variabile aleatoare legate prin
relat ia = f(), unde f este o funct ie precizata. Atunci sperant a matematica
(expectat ia) a variabilei este
E{} =
_

f()p()d. (1.39)
1.4. SEMNALE ALEATOARE 25

1
p()
1

1
p()
Figura 1.11: Densitat i de probabilitate uniforma (stanga) si gaussiana N(0, 1)
(dreapta).
Aceasta are semnicat ia de medie a valorilor variabilei peste toate valorile posibile
ale variabilei , luand n considerare probabilitat ile asociate acestor valori. Opera-
torul E{} se mai numeste si operator de mediere.
Media a variabilei aleatoare se obt ine punand = n (1.39), adica este
denita prin
= E{} =
_

p()d. (1.40)
Variant a
2
a variabilei aleatoare este denita prin

2
= E{( )
2
} =
_

( )
2
p()d. (1.41)
Denit ia 1.18 O variabil a aleatoare cu distribut ie uniform a n intervalul [0, 1] are
densitatea de probabilitate
p() =
_
1, pentru [0, 1],
0, altfel.
(1.42)
Denit ia 1.19 O variabil a aleatoare cu distribut ie gaussian a (sau normal a) de me-
die si variant a
2
are densitatea de probabilitate
p() =
1

2
e

()
2
2
2
. (1.43)
De obicei, aceast a distribut ie este notat a N(,
2
).
Gracele densitat ilor de probabilitate ale variabilelor uniforma si gaussiana sunt
prezentate n gura 1.11.
Denit ia 1.20 Un proces aleator x[n], n Z, este un sir de variabile aleatoare.
Un semnal aleator, notat tot x[n], este o realizare a procesului aleator, n sensul c a,
la ecare moment de timp n, se consider a o singur a valoare a variabilei aleatoare
corespunz atoare.
26 CAPITOLUL 1. SEMNALE
Denit ia 1.21 Autocorelat iile unui proces aleator reprezint a sperant ele matemat-
ice ale produselor variabilelor aleatoare (la diferite momente de timp):
E{x[n]x[n k]} = r[n, k], n, k, Z.
Se observa imediat ca r[n, k] = r[n, k].
Cele mai simple, dar extrem de utile, procese aleatoare sunt cele ale caror pro-
prietat i nu se modica n timp.

In aceasta lucrare va vorba doar despre astfel de
procese, denite ca mai jos.
Denit ia 1.22 Un proces aleator x[n] este stat ionar (n sens larg) dac a variabilele
aleatoare x[n] au aceeasi medie, i.e.
E{x[n]} = , n Z, (1.44)
iar autocorelat iile
E{x[n]x[n k]} = r[k], n Z, (1.45)
depind doar de distant a k ntre momentele de timp. (Evident, avem r[k] = r[k].)
Autocovariant ele unui proces aleator stat ionar sunt autocorelat iile procesului
x[n] , i.e.
E{(x[n] )(x[n k] )} = [k].
Pentru procese cu medie nula, avem r[k] = [k].
Denit ia 1.23 Un zgomot alb de medie nul a si variant a
2
este un proces aleator
w[n] pentru care
E{w[n]} = 0,
E{w[n]w[n k]} =
2
[k].
(1.46)
Estimarea mediei si a autocorelat iilor.

In aplicat iile practice, dispunem de o
realizare nita a unui proces aleator, adica de un semnal aleator cu suport nit
x[n], n = 0 : N 1. Presupunand ca procesul este stat ionar, se pune problema
sa estimam valorile mediei (1.44) si autocorelat iilor (1.45). Pentru medie, cea mai
naturala estimat ie este
=
1
N
N1

n=0
x[n]. (1.47)
Pentru autocorelat ii se folosesc estimat ia nedeviata
r[k] =
1
N k
N1

n=k
x[n]x[n k], 0 k N 1, (1.48)
(numele provine din faptul ca E{ r[k]} = r[k], vezi problema PR1.4.3; o estimat ie
este nedeviata daca expectat ia sa este egala cu valoarea adevarata), dar mai ales
cea deviata
r[k] =
1
N
N1

n=k
x[n]x[n k], 0 k N 1. (1.49)
1.4. SEMNALE ALEATOARE 27
Pentru k < 0, n (1.48) si (1.49) se ia r[k] = r[k].
Densitate de putere spectral a. Consideram un proces aleator stat ionar x[n] cu
medie nula si dorim sa descriem distribut ia n frecvent a a energiei sale. Deoarece
orice semnal x[n], realizare a procesului, are energie innita, nu putem folosi trans-
formata Fourier pentru a calcula densitatea de energie spectrala |X()|
2
.

In schimb,
putem evalua densitatea de putere spectrala, care se poate deni n doua moduri,
ambele inspirate de rezultate pentru semnale deterministe.
Pornind de la similaritatea dintre autocorelat iile deterministe (1.29) si cele
aleatoare (1.45), densitatea de putere spectrala P() se deneste ca transformata
Fourier a secvent ei de autocorelat ii
P() =

k=
r[k]e
jk
. (1.50)
O denit ie echivalenta se obt ine aplicand relat ia generala putere = energie/timp
si t inand seama de denit ia densitat ii de energie spectrala (vezi paragraful de dupa
Teorema 1.13)
P() = lim
N
E
_
_
_
1
2N + 1

n=N
x[n]e
jn

2
_
_
_
. (1.51)

In denit ia de mai sus, suma este o trunchiere de lungime 2N + 1 a transformatei


Fourier, mpart irea cu 2N+1 transforma energia n putere, iar operatorul E{} face
medierea pe ansamblul realizarilor.
Probleme rezolvate
PR 1.4.1 Fie o variabila aleatoare cu media si variant a
2
. Demonstrat i ca:
a. E{af() + bg()} = aE{f()} + bE{g()}, pentru orice constante a, b si
funct ii f, g.

In particular, E{a} = a.
b. E{ } = 0.
c.
2
= E{
2
}
2
;
Solut ie. a,b. Se aplica denit ia (1.39) si se foloseste liniaritatea operatorului de
integrare.
c. Avem
2
= E{( )
2
} = E{
2
} 2E{} +
2
= E{
2
}
2
. Am folosit
liniaritatea operatorului de mediere demonstrata mai sus.
PR 1.4.2 Calculat i media si variant a unei variabile aleatoare uniform distribuite
n intervalul [0, 1], i.e. cu densitatea de probabilitate (1.42). Ce valori au media si
variant a n cazul n care variabila este uniform distribuita n intervalul [a, b], unde
a < b sunt constante reale.
Solut ie. Media este
=
_
1
0
d = 1/2,
28 CAPITOLUL 1. SEMNALE
iar variant a (aplicand punctul c de la problema precedenta) este

2
=
_
1
0

2
d
2
=
1
3

1
4
=
1
12
.
Pentru o variabila uniform distribuita n intervalul [a, b], densitatea de probabili-
tate este p() = 1/(b a). Media si variant a sunt
=
a +b
2
,
2
=
(b a)
2
12
.
Calculele sunt lasate cititorului.
PR 1.4.3 Demonstrat i ca estimat iile (1.47) si (1.48) ale mediei, respectiv autocorelat iilor,
sunt nedeviate, i.e. E{ } = , respectiv E{ r[k]} = r[k].
Solut ie. Aplicand operatorul de mediere n (1.47) obt inem
E{ } = E
_
1
N
N1

n=0
x[n]
_
=
1
N
N1

n=0
E{x[n]} =
1
N
N1

n=0
= .
Pentru autocorelat ii demonstrat ia este similara.
PR 1.4.4 Care este densitatea de putere spectrala a zgomotului alb (1.46) ?
Solut ie. T inand seama de denit ia (1.50) a densitat ii de putere spectrala si
de expresiile autocorelat iilor (1.46), se obt ine imediat P() =
2
. Asadar spectrul
zgomotului alb este constant (zgomotul alb cont ine toate frecvent ele cu putere egala,
de aici numele sau, prin analogie cu lumina).
Probleme propuse
PP 1.4.1 Consideram o variabila aleatoare cu distribut ie triunghiulara, a carei
densitate de probabilitate are expresia:
p() =
_
1 ||, pentru || 1,
0, altfel.
Vericat i valabilitatea relat iei (1.38). Calculat i media (1.40) si variant a (1.41) vari-
abilei aleatoare .
PP 1.4.2 a. Dandu-se o variabila aleatoare cu distribut ie uniform a n intervalul
[0, 1], cum se poate obt ine o variabila cu distribut ie uniforma n intervalul [a, b] ?
b. Dandu-se o variabila aleatoare cu distribut ie gaussiana N(0, 1), cum se poate
obt ine o variabila cu distribut ie N(0,
2
) ?
PP 1.4.3 Fie w[n] un proces de tip zgomot alb pentru care, la ecare moment de
timp i, variabila aleatoare w[i] are distribut ie uniforma n intervalul [1, 1].
a. Calculat i variant a
2
a zgomotului alb (vezi (1.46)).
1.4. SEMNALE ALEATOARE 29
b. Consideram procesul aleator
u[n] =
_
w[n], pentru n par,
w[n], pentru n impar.
Este acesta un zgomot alb ?
c. Consideram procesul aleator
v[n] =
_
w[n], pentru n par,
2w[n], pentru n impar.
Este acest proces stat ionar ?
PP 1.4.4 Demonstrat i ca densitatea de putere spectrala P() a unui proces aleator
real este pozitiva, para (i.e. P() = P()) si periodica cu perioada 2.
Ghid Matlab
Matlab poseda generatoare de numere (aproximativ) aleatoare. Un semnal aleator
cu distribut ie uniforma n intervalul [0, 1], de lungime N, se poate genera cu
>> x = rand(1,N)
Un semnal aleator cu distribut ie gaussiana de medie nula si variant a egala cu 1 se
poate genera cu
>> x = randn(1,N)
Media (1.47) a unui semnal aleator se calculeaza cu
>> mean(x)
Autocorelat iile nedeviate (1.48) se calculeaza cu
>> r = xcorr(x, unbiased)
iar cele deviate (1.49) cu
>> r = xcorr(x, biased)

In ambele cazuri, vectorul de autocorelat ii r are lungimea 2N 1; de altfel, aceasta


este lungimea maxima permisa de suportul nit al semnalului, dupa cum se vede
din (1.48) si (1.49).
Autocovariant ele se estimeaza cu funct ia xcov. Atent ie, n aceasta funct ie nu se
foloseste media exacta a procesului (care este necunoscuta), ci estimat ia ei (1.47).
30 CAPITOLUL 1. SEMNALE
Capitolul 2
Sisteme
2.1 Denit ii si proprietat i de baza

In cea mai generala accept iune, un sistem discret transforma un semnal de intrare
x[n] ntr-un semnal de iesire y[n], asa cum este ilustrat n gura 2.1. Notam y[n] =
S{x[n]} transformarea produsa de sistemul S; numim y[n] si raspuns al sistemului
la intrarea x[n].

In prelucrarea semnalelor, sistemele sunt numite deseori ltre.
Enumeram n continuare patru proprietat i fundamentale ale sistemelor.
Denit ia 2.1 (Liniaritate) Un sistem S este liniar dac a pentru orice semnale de
intrare x
1
[n], x
2
[n] si orice scalari
1
,
2
are loc egalitatea
S{
1
x
1
[n] +
2
x
2
[n]} =
1
S{x
1
[n]} +
2
S{x
2
[n]}. (2.1)
Denit ia 2.2 (Invariant an timp) Sistemul S este invariant n timp dac a pentru
orice semnal de intrare x[n], cu iesirea corespunz atoare y[n] = S{x[n]}, si orice
nt arziere n
0
Z, aplic and semnalul x[n n
0
] la intrarea sistemului se obt ine
iesirea y[n n
0
]. (Altfel spus, nt arziind cu n
0
semnalul de intrare, se obt ine o
iesire nt arziat a tot cu n
0
, conform schemei din gura 2.2, n care operat iile S si
nt arziere comut a.)
Denit ia 2.3 (Cauzalitate) Sistemul S este cauzal dac a, lu and orice semnal de
intrare x[n], cu iesirea corespunz atoare y[n] = S{x[n]}, pentru orice n
0
Z, val-
oarea y[n
0
] depinde doar de intr arile x[n], n n
0
. (Altfel spus, valoarea curent a a
iesirii depinde doar de valoarea curent a si de valori anterioare ale intr arii.)
Denit ia 2.4 (Stabilitate) Sistemul S este stabil n sens BIBO (Bounded Input,
Bounded OutputIntrare M arginit a, Iesire M arginit a) dac a, pentru orice semnal
de intrare x[n] m arginit, n sensul c a exist a M
x
astfel nc at |x[n]| M
x
, n Z,
semnalul de iesire y[n] = S{x[n]} este si el m arginit, i.e. exist a M
y
astfel nc at
|y[n]| M
y
, n Z.
31
32 CAPITOLUL 2. SISTEME
S

x[n] y[n] = S{x[n]}
Figura 2.1: Un sistem discret.
S
ntarziere
cu n
0

x[n]
S

ntarziere
cu n
0


y[n n
0
]
y[n]

x[n n
0
]
Figura 2.2: Un sistem invariant n timp transfera ntarzierea intrarii la iesire
(operat iile S si ntarziere comuta).
Probleme rezolvate
PR 2.1.1 Caracterizat i urmatoarele sisteme din punctul de vedere al liniaritat ii,
invariant ei n timp, cauzalitat ii si stabilitat ii.
a. Sistemul medie pe doua esantioane, descris de relat ia y[n] = (x[n] +x[n
1])/2.
b. Decimatorul, descris de y[n] = x[Mn], unde M 2 este un ntreg pozitiv
xat. (Decimatorul extrage ecare al M-lea esantion al semnalului de intrare si le
elimina pe celelalte.)
c. Acumulatorul, descris de y[n] =

n
k=
x[k].
Solut ie. a. Sistemul este liniar, invariant n timp, cauzal si stabil. Desi banale,
prezentam mai jos demonstrat iile.
Fie y
1
[n] = (x
1
[n] +x
1
[n 1])/2 si y
2
[n] = (x
2
[n] +x
2
[n 1])/2 raspunsurile la
intrarile x
1
[n], respectiv x
2
[n]. Daca intrarea este
1
x
1
[n] +
2
x
2
[n], atunci iesirea
este y[n] = (
1
x
1
[n] +
2
x
2
[n] +
1
x
1
[n 1] +
2
x
2
[n 1])/2 =
1
y
1
[n] +
2
y
2
[n],
ceea ce demonstreaza liniaritatea.
Daca intrarea este x[n n
0
], atunci iesirea este (x[n n
0
] +x[n n
0
1])/2 =
y[n n
0
], deci sistemul e invariant n timp.
y[n] depinde doar de x[n] si de x[n 1], deci sistemul e cauzal.
Daca |x[n]| M
x
, atunci |y[n]| (|x[n]| +|x[n1]|)/2 M
x
, deci sistemul este
stabil.
b. Decimatorul este evident liniar si stabil.
Nu este invariant n timp. Fie M = 2 si semnalul de intrare x[n] = n. Atunci
iesirea este y[n] = x[2n] = 2n.

Intarziem intrarea cu un esantion; la intrarea
2.1. DEFINIT II SI PROPRIET

ATI DE BAZ

A 33
x
1
[n] = x[n 1] iesirea este y
1
[n] = x
1
[2n] = x[2n 1] = 2n 1. Pe de alta parte,
avem y[n 1] = 2(n 1) = 2n 2 = y
1
[n].
De asemenea, nu este cauzal, deoarece e.g. y[1] = x[M], deci iesirea la momentul
n = 1 depinde de intrarea la momentul M > 1.
c. Acumulatorul este evident liniar, invariant n timp si cauzal.
Nu este stabil: pentru intrarea treapta x[n] = u[n] se obt ine y[n] = (n + 1)u[n],
care este un semnal nemarginit.
Probleme propuse
PP 2.1.1 Consideram sistemul cu intrarea x[n] si iesirea
y[n] =
_
x[n/2], daca n este par,
x[(n 1)/2], altfel.
a. Desenat i un exemplu de semnale de intrare si iesire.
b. Caracterizat i sistemul din punctul de vedere al liniarit at ii, invariant ei n
timp, cauzalitat ii si stabilitat ii.
PP 2.1.2 Aceleasi cerint e ca la problema anterioara, pentru sistemul cu intrarea
x[n] si iesirea y[n] = x[N n], unde N este un ntreg dat.
PP 2.1.3 Aceleasi cerint e ca la problema anterioara, pentru sistemul cu intrarea
x[n] si iesirea y[n], funct ionand dupa legea y[n] = ny[n 1] +x[n].
PP 2.1.4 Demonstrat i ca daca un sistem este liniar, atunci intrarea nula x[n] = 0
produce iesirea nula y[n] = 0. Aratat i printr-un contraexemplu ca reciproca nu este
adevarata.
PP 2.1.5 Fie S un sistem invariant n timp.
a. Demonstrat i ca aplicand lui S o intrare constanta se obt ine o iesire constanta.
b. Demonstrat i ca aplicand lui S o intrare periodica se obt ine o iesire periodica,
cu aceeasi perioada.
c. Aratat i prin contraexemple ca reciprocele armat iilor de mai sus nu sunt
adevarate.
PP 2.1.6 La intrarea unui sistemS se aplica un semnal cu suport nit. Se constata
ca iesirea este marginita. Este sistemul stabil ?
PP 2.1.7 Un sistem anticauzal are proprietatea ca iesirea y[n] depinde doar de
intrari x[m], cu m n. Dat i un exemplu de astfel de sistem.
PP 2.1.8 Un sistem poate avea (sau nu) oricare dintre cele patru proprietat i de-
scrise mai sus (liniaritate, invariant a n timp, cauzalitate, stabilitate) independent
de celelalte.

In total, sunt 16 combinat ii posibile ale acestor proprietat i. Dat i cate
un exemplu de sistem pentru ecare combinat ie. (Nota: n problema PR2.1.1 sunt
deja prezentate trei astfel de exemple; va mai raman deci 13.)
34 CAPITOLUL 2. SISTEME
2.2 Sisteme liniare invariante n timp

In restul capitolului ne ocupam doar de sisteme liniare si invariante n timp (LIT),


care au o important a majora n teoria si practica prelucrarii semnalelor. Fie S un
sistem LIT si h[n] = S{[n]} r aspunsul la impuls al sistemului (h[n] se mai numeste
si secvent a pondere a sistemului).
Propozit ia 2.5 R aspunsul la impuls h[n] al unui sistem LIT S caracterizeaz a com-
plet funct ionarea sistemului. Dac a x[n] este un semnal de intrare oarecare, atunci
iesirea y[n] = S{x[n]} este dat a de relat ia
y[n] =

k=
x[k]h[n k] =

k=
x[n k]h[k], (2.2)
adic a este convolut ia dintre semnalul de intrare si r aspunsul la impuls al sistemului.
Demonstrat ie. Deoarece sistemul este invariant n timp, avem h[nk] = S{[n
k]}. Folosind expresia (1.2) pentru semnalul de intrare, obt inem
y[n] = S{

k=
x[k][n k]}
lin.
=

k=
x[k]S{[n k]} =

k=
x[k]h[n k].
Expresia din dreapta din (2.2) rezulta datorita comutativitat ii convolut iei.
Prezentam n continuare caracteristicile raspunsului la impuls atunci cand sis-
temul LIT este cauzal sau stabil.
Propozit ia 2.6 Un sistem LIT este cauzal dac a si numai dac a r aspunsul s au la
impuls este nul pentru timp negativ, i.e. h[n] = 0 pentru n < 0.
Demonstrat ie. Din (2.2) rezulta ca y[n] depinde doar de x[k], cu k n, daca si
numai daca h[n k] = 0 pentru k > n, adica h[n] = 0, pentru n < 0.
Propozit ia 2.7 Un sistem LIT este stabil dac a si numai dac a r aspunsul s au la
impuls este absolut sumabil.
Demonstrat ie. () Folosim reducerea la absurd: presupunem ca h[n] nu este
absolut sumabil. Construim semnalul de intrare
x[n] =
_
_
_
h

[n]
|h[n]|
, daca h[n] = 0
0, daca h[n] = 0.

In acest caz, pentru y[0] obt inem valoarea


y[0] =

k=
h[k]x[k] =

k=
|h[k]|
2
|h[k]|
=

k=
|h[k]|,
care nu e marginita, deci sistemul nu ar stabil.
2.2. SISTEME LINIARE INVARIANTE

IN TIMP 35
() Deoarece h[n] este absolut sumabil, exista M
h
astfel ncat

n=
|h[n]|
M
h
. Fie x[n] o intrare marginita, pentru care |x[n]| M
x
, n Z. Atunci avem
|y[n]| =

k=
h[k]x[n k]

k=
|h[k]||x[n k]| M
x

k=
|h[k]| M
x
M
h
,
si deci iesirea este marginita, adica sistemul este stabil.
Denit ia 2.8 Funct ia de transfer a unui sistem LIT este transformata Z a r aspun-
sului s au la impuls
H(z) =

n=
h[n]z
n
. (2.3)
Propozit ia 2.9 Fie X(z), Y (z) transformatele Z ale semnalelor de intrare, respec-
tiv iesire ale unui sistem LIT cu funct ia de transfer H(z). Atunci este adev arat a
relat ia
Y (z) = H(z)X(z). (2.4)
Demonstrat ie. Aplicam transformata Z relat iei (2.2), unde termenii din dreapta
reprezinta o convolut ie, deci (2.4) rezulta imediat din (1.37).
Sistemele (ltrele) se mpart n doua mari categorii, dupa suportul raspunsului
lor la impuls, care poate nit sau innit.

In primul caz, ltrele sunt numite FIR
(Finite Impulse Responseraspuns nit la impuls; pastram abrevierea din en-
gleza deoarece s-a consacrat si n romana).

In cazul suportului innit, ltrele sunt
numite IIR (Innite Impulse Response). Prezentam n continuare cateva caracter-
istici importante ale celor doua tipuri de ltre.
Filtre FIR
Un ltru FIR are funct ia de transfer
H
1
(z) =
M2

n=M1
h[n]z
n
. (2.5)
Este evident ca suportul raspunsului la impuls este M
1
: M
2
, i.e. nit.
Daca ltrul FIR este cauzal, atunci, t inand seama de Propozit ia 2.6, funct ia sa
de transfer este
H(z) =
M

n=0
h[n]z
n
. (2.6)
Aceasta forma va folosita n continuare, avandn vedere ca, luand M = M
1
+M
2
,
avem H(z) = z
M1
H
1
(z) (o simpla ntarziere face ltrul (2.5) cauzal).
Numim M ordinul (sau gradul) ltrului. Observam ca un ltru de ordin M are
M + 1 coecient i (n general) nenuli: lungimea ltrului este M + 1.
Propozit ia 2.10 Orice ltru FIR este stabil.
36 CAPITOLUL 2. SISTEME
Demonstrat ie. Deoarece suma

M
n=0
|h[n]| are un numar nit de termeni, ea
este nita, deci ltrul e stabil.
Daca la intrarea ltrului FIR cauzal (2.6) se aplica semnalul x[n], atunci, con-
form cu (2.2), iesirea y[n] este
y[n] =
M

k=0
h[k]x[n k], (2.7)
adica esantionul curent n al iesirii depinde doar de cele mai recente M+1 esantioane
ale intrarii. Sa notam ca ltrele FIR mai sunt numite, n anumite contexte (e.g. n
identicarea sistemelor), si sisteme MA (Moving Averagemedie alunecatoare),
deoarece formula (2.7) poate interpretata n sens larg ca o medie (ponderata) a
celor mai recente esantioane ale intrarii.
Datorita simplitat ii lor, a implementarii facile, stabilitat ii implicite si, dupa cum
vom vedea mai tarziu, a metodelor rapide de proiectare, ltrele FIR sunt extrem
de utilizate n practica.
(Mai observam ca o funct ie de transfer ca (2.6), formata numai din numitor, nu
exista pentru sistemele continue.)
Filtre IIR

Intre ltrele IIR sunt interesante cele care au o funct ie de transfer rat ionala, i.e.
H(z) =
B(z)
A(z)
=
M

n=0
b
n
z
n
N

n=0
a
n
z
n
, (2.8)
unde de obicei a
0
= 1 (n caz contrar, se mpart si numitorul si numaratorul la
a
0
). Filtrul (2.8) este cauzal; ltre IIR necauzale se obt in nmult ind H(z) cu z
m
,
cu m > 0. Observam ca, n general, gradul numaratorului poate diferit de gradul
numitorului. Ordinul ltrului este max(M, N).
Funct ia de transfer H(z) este reprezentata n (2.8) cu ajutorul coecient ilor. O
reprezentare echivalenta este forma poli-zerouri, n care avem
H(z) =
B(z)
A(z)
=
b
0
a
0
M

k=1
(1 c
k
z
1
)
N

k=1
(1 d
k
z
1
)
. (2.9)

In formula de mai sus, c


k
, k = 1 : M, sunt zerourile funct iei de transfer, iar
d
k
, k = 1 : N, sunt polii funct iei, i.e. radacinile polinoamelor B(z), respectiv
A(z), din (2.8). Pentru evitarea ambiguitat ilor, precizam ca radacinile polinomului
A(z) =

N
n=0
a
n
z
n
sunt solut iile ecuat iei A(z) = 0 sau, echivalent, ale ecuat iei
2.2. SISTEME LINIARE INVARIANTE

IN TIMP 37
z
N
A(z) = 0, adica

N
n=0
a
n
z
Nn
= 0. (Mai riguros este sa se considere numarul
de poli egal cu cel de zerouri; n acest caz, daca M > N se adauga M N poli
la valorile d
k
, iar daca M < N se adauga N M zerouri la valorile c
k
; polii sau
zerourile suplimentari sunt plasat i n origine.)

In general, polii si zerourile au valori complexe. Daca funct ia de transfer are


coecient i reali (cazul obisnuit), atunci valorile complexe apar n perechi complex
conjugate.
Propozit ia 2.11 Un ltru IIR este stabil dac a tot i polii s ai sunt n interiorul cer-
cului unitate.
Putem asocia ltrului IIR (2.8) o ecuat ie cu diferent e, care rezulta imediat din
(2.4), t inand seama de semnicat ia de operator de ntarziere a lui z
1
:
N

k=0
a
k
y[n k] =
M

k=0
b
k
x[n k]. (2.10)
Cu a
0
= 1, relat ia precedenta poate indica un mod recurent de calcul al iesirii
y[n] =
N

k=1
a
k
y[n k] +
M

k=0
b
k
x[n k]. (2.11)
Asadar, esantionul curent al iesirii depinde de cele mai recente M + 1 esantioane
ale intrarii, dar si de precendentele N esantioane ale iesirii.
Presupunand de exemplu ca semnalul de intrare satisface x[n] = 0 pentru n < 0,
observam ca iesirea se poate calcula cu ajutorul recurent ei (2.11) doar daca se cunosc
valorile y[N], . . . , y[1], care au rol de condit ii init iale. Ecuat ia cu diferent e
(2.11) este un model mai general decat funct ia de transfer (2.8); deoarece funct ia
de transfer este cauzala, este clar ca modelele (2.8) si (2.11) sunt echivalente daca
y[n] = 0 pentru n < 0, deci condit iile init iale pentru (2.11) sunt nule.
Un caz particular de ltru IIR este cel de forma
H(z) =
1
A(z)
, (2.12)
numit si ltru AR (AutoRegresiv); numele este natural dac a observam ca ecuat ia
cu diferent e asociata ltrului este
y[n] =
N

k=1
a
k
y[n k] +x[n], (2.13)
adica, lasand x[n] la o parte, semnalul y[n] se obt ine combinand versiuni ntarziate
(regresate) ale lui nsusi.
Probleme rezolvate
PR 2.2.1 Care sunt raspunsurile la impuls ale sistemelor din problema PR2.1.1 ?
38 CAPITOLUL 2. SISTEME
Solut ie. Sistemul medie pe doua esantioane are raspunsul h[0] = h[1] = 1/2
si zero n rest.
Raspunsul la impuls al decimatorului este [n]. Atent ie nsa, acest sistem nu e
invariant n timp, deci rezultatele din aceasta sect iune nu i se aplica.
Acumulatorul are raspunsul la impuls h[n] = u[n].
PR 2.2.2 Semnalul x[n] = (1)
n
se aplica la intrarea ltrului H(z) = (1+z
1
)/2.
Care este semnalul de iesire ?
Solut ie. y[n] = (x[n] +x[n 1])/2 = ((1)
n
+ (1)
n1
)/2 = 0.
PR 2.2.3 La intrarea ltrului FIR (2.6) se aplica un semnal x[n] cu suport 0 : L,
unde L este un ntreg pozitiv dat. Ce suport are semnalul de iesire ?
Solut ie. Din (2.7) rezulta ca esantionul curent al iesirii y[n] depinde doar de cele
mai recente M + 1 esantioane ale intrarii. Printre acestea trebuie sa se gaseasca
cel put in unul nenul; ultimul moment de timp la care se nt ampla aceasta este
L + M, adica y[n] = 0 pentru n > L + M. Cum y[n] = 0 pentru n < 0 (datorita
cauzalitat ii), rezulta ca suportul semnalului de iesire este 0 : L +M.
Alta solut ie: deoarece Y (z) = H(z)X(z), iar H(z) si X(z) sunt polinoame de
grad M, respectiv L (n z
1
), rezulta ca Y (z) este un polinom de grad L + M.
Asadar, suportul lui y[n] este 0 : L +M.
Probleme propuse
PP 2.2.1 Demonstrat i ca raspunsul la impuls al unui sistem stabil are ntotdeauna
transformata Fourier (n sensul ca (1.10) converge pentru orice ).
PP 2.2.2 Calculat i iesirea ltrului H(z) = 1 2z
1
atunci cand intrarea este
semnalul cu suport n = 0 : 3 ale carui esantioane nenule au valorile, n ordine, 1,
1, 1, 2.
PP 2.2.3 Dat i un exemplu de ltru IIR necauzal, dar stabil.
PP 2.2.4 Scriet i ecuat ia cu diferent e asociata acumulatorului, descris de relat ia
intrare-iesire y[n] =

n
k=
x[k].
PP 2.2.5 Scriet i ecuat ia cu diferent e corespunzatoare ltrului
H(z) =
z
1
1 z
1
+z
2
.
Care sunt polii si zerourile acestui ltru ?
PP 2.2.6 Demonstrat i ca ltrul IIR cu funct ia de transfer H(z) =
1
12z
1
este
instabil calculand raspunsul acestuia la impuls.
PP 2.2.7 Care este mult imea polinoamelor de gradul doi cu coecient i reali, de
forma A(z) = 1 +a
1
z
1
+a
2
z
2
, care au radacinile n interiorul cercului unitate ?
(Aceste polinoame pot numitoare ale unor ltre IIR stabile.)
2.2. SISTEME LINIARE INVARIANTE

IN TIMP 39
Ghid Matlab
Un polinom A(z) se reprezinta n Matlab printr-un vector linie n care coecient ii
sunt asezat i n ordine descrescatoare a puterilor lui z. De exemplu, polinomul
A(z) = 1 0.7z
1
+ 0.1z
2
se reprezinta prin vectorul
>> a = [1 -0.7 0.1]
De asemenea, un polinom monic (i.e. al carui prim coecient este 1) se poate
reprezenta printr-un vector coloana cont inand radacinile polinomului. Asadar A(z) =
1 0.7z
1
+ 0.1z
2
= (1 0.5z
1
)(1 0.2z
1
) se poate reprezenta prin vectorul
>> ra = [0.5; 0.2]
Radacinile unui polinom se calculeaza din coecient i prin
>> ra = roots(a)
iar coecient ii se calculeaza din radacini prin
>> a = poly(ra)
Un ltru IIR se reprezinta prin doua polinoame, unul pentru numarator, al-
tul pentru numitor. Modelul uzual presupune reprezentarea polinoamelor prin
coecient i, ca n (2.8). De exemplu, ltrul IIR
H(z) =
2 +z
1
1 0.7z
1
+ 0.1z
2
se reprezinta prin
>> b = [2 1], a = [1 -0.7 0.1]
Modelul poli-zerouri (2.9) doi vectori cont inand radacinile polinoamelor B(z) si
A(z) si un scalar cont inand amplicarea b
0
/a
0
. Conversia ntre modelele (2.8) si
(2.9) se face prin funct iile
>> [rb, ra, k0] = tf2zp(b, a)
>> [b, a] = zp2tf(rb, ra, k0)
Desigur, pentru un ltru FIR se ia
>> a = 1
Calculul iesirii unui ltru IIR, atunci cand la intrare se aplica un semnal x[n]
cu suport nit, se face utilizand ecuat ia cu diferent e (2.11). Presupunand condit ii
init iale nule si semnalul de intrare memorat ntr-un vector x, iesirea se calculeaza
cu
>> y = filter(b, a, x)
Semnalul de iesire are acelasi suport ca semnalul de intrare.
40 CAPITOLUL 2. SISTEME
2.3 Reprezentarea n frecvent a a sistemelor LIT
Propozit ia 2.12 Consider am un sistem LIT stabil, al c arui r aspuns la impuls este
h[n]. Fie H(z) funct ia sa de transfer si
H(e
j
) =

n=
h[n]e
jn
(2.14)
transformata Fourier a r aspunsului la impuls. Dac a la intrarea sistemului se aplic a
semnalul sinusoidal complex x[n] = e
j0n
, atunci iesirea este semnalul sinusoidal
y[n] = H(e
j0
)e
j0n
= |H(e
j0
)|e
j(0n+argH(e
j
0
))
. (2.15)
Demonstrat ie. Pornim de la (2.2) si obt inem
y[n] =

k=
h[k]x[n k] =

k=
h[k]e
j0(nk)
=
_

k=
h[k]e
j0k
_
e
j0n
,
i.e. chiar (2.15).
Observat ia 2.13 Relat ia (2.15) spune ca raspunsul unui sistem LIT la intrare
sinusoidala de frecvent a
0
(de amplitudine 1 si faza nula) este tot o sinusoida, cu
aceeasi frecvent a, a carei amplitudine si faza depind de valoarea, la frecvent a
0
, a
transformatei Fourier (2.14) a raspunsului la impuls h[n]. Mai precis, amplitudinea
iesirii este |H(e
j0
)|, iar faza argH(e
j0
).
Mai mult, daca intrarea x[n] este un semnal oarecare, a carui transformata
Fourier X(e
j
) exista, atunci iesirea are transformata Fourier Y (e
j
) = H(e
j
)X(e
j
).
Asadar, spectrul semnalului de iesire este, la ecare frecvent a , produsul dintre
valoarea spectrului intrarii la frecvent a si H(e
j
).
Denumirea de ltru ca sinonim pentru sistem, utilizatan prelucrarea semnalelor,
provine din proprietatea sistemelor de a modica spectrul semnalelor de intrare, de
a trata n mod diferit semnale de frecvent e diferite, pe scurt de a ltra semnale.
Denit ia 2.14 Transformata Fourier (2.14) a r aspunsului la impuls a unui sis-
tem se numeste raspuns n frecvent a al sistemului. De asemenea, n special pentru
reprezentarea grac a a r aspunsului n frecvent a, se foloseste denumirea de caracter-
istica de frecvent a a sistemului.
Observat ia 2.15 Daca H(z) are coecient i reali, se reprezinta amplitudinea |H(e
j
)|
si faza argH(e
j
) pentru [0, ]; pentru [, 0] se t ine seama de proprietat ile
de simetrie (1.17) (amplitudinea este para, iar faza impara).

In cazul funct iilor de
transfer cu coecient i complecsi, mai rar utilizate n practica, se ia [, ].
Amplitudinea se masoara deseori n decibeli (dB), caz n care se reprezinta grac
funct ia |H(e
j
)|
dB
= 20 log
10
|H(e
j
)|. Amplitudinea |H(e
j
)|
dB
este numita si
amplicare, iar opusul ei, |H(e
j
)|
dB
, atenuare. (Denumirile sunt naturale avand
n vedere (2.15).)
Deoarece exponent iala complexa este o funct ie periodica, de perioada 2, faza
se poate reprezenta doar cu valori n intervalul [, ], prin adunarea sau scaderea
2.3. REPREZENTAREA

IN FRECVENT

A A SISTEMELOR LIT 41
n mod adecvat a unor multipli de 2; se obt ine astfel valoarea principal a a fazei,
notata ARG[H(e
j
)]. Aceasta este folosita ntotdeauna atunci cand faza unui ltru
este calculata numeric.

In unele lucrari, precum si n funct iile Matlab dedicate reprezentarii caracteris-


ticilor de frecvent a, frecvent a este normalizata la intervalul [0, 1], n sensul ca n loc
de [0, ], se foloseste frecvent a normalizata / [0, 1].
Interpretare pentru procese aleatoare. Raspunsul n frecvent a al unui sistem LIT
arata si felul n care sistemul ltreaza o intrare care reprezinta un proces aleator.
Propozit ia 2.16 Consider am un sistem LIT stabil, cu r aspunsul la impuls h[n]
si r aspunsul n frecvent a H(e
j
), la intrarea c aruia se a a un semnal aleator x[n]
cu densitatea de putere spectral a P
xx
() (vezi denit ia acesteia n (1.50)). Atunci
iesirea y[n] a sistemului are densitatea de putere spectral a
P
yy
() = P
xx
()|H(e
j
)|
2
. (2.16)
Asadar, puterea semnalului x[n] ntr-o anume frecvent a este multiplicat a la iesire
cu p atratul amplitudinii r aspunsului sistemului pentru acea frecvent a.
Demonstrat ie. Notand r
xx
[k] = E{x[n]x[n k]}, k Z, autocorelat iile sem-
nalului de intrare, si t inand seama ca iesirea este
y[n] =

=
h[]x[n ],
autocorelat iile iesirii au expresia (mai departe omitem limitele de sumare, care sunt
si )
r
yy
[k]
def
= E{y[n]y[n k]}
= E{

h[]x[n ]

i
h[i]x[n k i]}
=

i
h[]h[i]r
xx
[k +i ].
Deci, densitatea de putere spectrala a iesirii este
P
yy
()
def
=

k=
r
yy
[k]e
jk
=

i
h[]h[i]r
xx
[k +i ]e
jk
=

h[]e
j

i
h[i]e
ji

k
r
xx
[k +i ]e
j(k+i)
= H()H

()P
xx
()
ceea ce demonstreaza (2.16).
42 CAPITOLUL 2. SISTEME
Caracteristica de frecvent a a ltrelor rat ionale

In cazul ltrelor IIR rat ionale (de acum nainte vom subnt elege ca ltrele IIR de
care discutam sunt rat ionale), caracteristica de frecvent a se poate trasa mai usor
atunci cand funct ia de transfer se reprezinta n forma poli-zerouri (2.9). Aceasta
reprezentare are avantajul ca poate analizata prin studierea caracteristicilor de
frecvent a ale funct iilor de transfer de grad 1. Mai precis, amplitudinea n decibeli
este
|H(e
j
)|
dB
= 20 log
10

b
0
a
0

+ 20
M

k=1
log
10
|1 c
k
e
j
| 20
N

k=1
log
10
|1 d
k
e
j
|,
(2.17)
iar faza se poate scrie ca
arg|H(e
j
)| = arg
_
b
0
a
0
_
+
M

k=1
arg(1 c
k
e
j
)
N

k=1
arg(1 d
k
e
j
). (2.18)
Se observa deci ca n (2.17) si (2.18) apar sume ale amplitudinilor, respectiv fazelor
unor termeni elementari de gradul 1 (dar cu coecient i complecsi, n general). Mai
mult, singura diferent a ntre efectul polilor si cel al zerourilor este semnul termenilor
corespunzatori. De aceea, este justicat studiul funct iei de transfer cu un singur
zero, efectuat n continuare.
Filtrul FIR de ordinul 1. Studiem caracteristica de frecvent a a ltrului
H(z) = 1 cz
1
, c = re
j
, r [0, 1], [0, ]. (2.19)
Asadar, zeroul c este n general complex, de modul r si faza . Restrict ia modulului
la valori subunitare va justicata ulterior. Ca si restrict ia asupra fazei, ea nu
limiteaza generalitatea concluziilor.
Amplitudinea raspunsului n frecvent a al ltrului (2.19) este
|H(e
j
)|
2
= |1 re
j()
|
2
= 1 +r
2
2r cos( ).
(Am ridicat la patrat pentru simplitatea calculelor. In decibeli, amplitudinea orig-
inala se obt ine simplu ca |H(e
j
)|
dB
= 20 log
10
|H(e
j
)| = 10 log
10
|H(e
j
)|
2
.) Se
observa ca valoarea maxima a amplitudinii este (1+r) pentru = , iar valoarea
minima este (1 r), pentru = . Prezentam n gura 2.3 amplitudinea pentru
= 0 (deci zero real) si trei valori r = 0.5, 0.8, 1. Pentru comparat ie, n gracul
de sus amplitudinea este reprezentata adimensional, iar n cel din mijloc n deci-
beli. (Amintim ca 20 log
10
2 6 si ca, evident, 20 log
10
1 = 0, 20 log
10
0.2 14.)
Frecvent a este normalizata, deci 2 nseamna de fapt 2. Grace similare sunt
prezentate n gura 2.4, pentru = 0.4.
Observamca cu cat r este mai aproape de 1 (i.e. zeroul este mai aproape de cercul
unitate), cu atat atenuarea n jurul frecvent ei = este mai mare.

In particular,
atunci cand r = 1, deci zeroul este pe cerc, avem H(e
j
) = 0 (si |H(e
j
)|
dB
= ),
deci amplicarea ltrului la aceasta frecvent a este nula; semnalele sinusoidale cu
frecvent a sunt taiate complet de ltru.
2.3. REPREZENTAREA

IN FRECVENT

A A SISTEMELOR LIT 43
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
0
0.5
1
1.5
2
A
m
p
l
i
t
u
d
i
n
e
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
20
10
0
10
A
m
p
l
i
t
u
d
i
n
e

(
d
B
)
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
100
50
0
50
100
Frecventa normalizata
F
a
z
a

(
v
a
l
.
p
r
i
n
c
.
)
Figura 2.3: Caracteristica de frecvent a a ltrului (2.19), pentru = 0, r = 1 (linie
continua), r = 0.8 (linie ntrerupta), r = 0.5 (linie-punct).
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
0
0.5
1
1.5
2
A
m
p
l
i
t
u
d
i
n
e
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
20
10
0
10
A
m
p
l
i
t
u
d
i
n
e

(
d
B
)
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
100
50
0
50
100
Frecventa normalizata
F
a
z
a

(
v
a
l
.
p
r
i
n
c
.
)
Figura 2.4: Caracteristica de frecvent a a ltrului (2.19), pentru = 0.4, r = 1
(linie continua), r = 0.8 (linie ntrerupta), r = 0.5 (linie-punct).
44 CAPITOLUL 2. SISTEME
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0
1
2
3
A
m
p
l
i
t
u
d
i
n
e
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
20
10
0
10
A
m
p
l
i
t
u
d
i
n
e

(
d
B
)
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
100
50
0
50
100
Frecventa normalizata
F
a
z
a

(
v
a
l
.
p
r
i
n
c
.
)
Figura 2.5: Caracteristica de frecvent a a ltrului (2.20), pentru = 0.4, r = 1
(linie continua), r = 0.8 (linie ntrerupta), r = 0.5 (linie-punct).
Deoarece raspunsul n frecvent a al ltrului (2.19) este
H(e
j
) = 1 r cos( ) +jr sin( ),
valoarea principala a fazei este
ARG[H(e
j
)] = arctg
_
r sin( )
1 r cos( )
_
.

In partea de jos a gurilor 2.3 si 2.4 sunt prezentate grace de faza respectand
expresia de mai sus; faza este masurata n grade.
Filtrul FIR de ordinul 2.

In general, funct iile de transfer ale ltrelor au coecient i
reali. De aceea este interesant sa studiem raspunsul n frecvent a al unui ltru FIR
de ordinul 2, cu zerouri complex conjugate. Asadar, zerourile sunt c = re
j
si
c

= re
j
, iar funct ia de transfer are forma
H(z) = (1 cz
1
)(1 c

z
1
) = 1 2r cos z
1
+r
2
z
2
. (2.20)
Amplitudinea raspunsului n frecvent a, n decibeli, se obt ine adunand doua ampli-
tudini de tipul celor prezentate n gurile 2.3 si 2.4, corespunzatoare valorilor si
. Similar, faza se obt ine adunand fazele corespunzatoare factorilor de grad 1
ai lui (2.20). Prezentam caracteristica de frecvent a a ltrului (2.20) n gura 2.5,
pentru = 0.4. Deoarece coecient ii ltrului sunt reali, gracul amplitudinii este
simetric fat a de = 0 si deci este sucienta desenarea lui pentru intervalul [0, ]
(normalizat [0, 1]).
2.3. REPREZENTAREA

IN FRECVENT

A A SISTEMELOR LIT 45
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
0
5
10
15
20
A
m
p
l
i
t
u
d
i
n
e
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
10
0
10
20
30
A
m
p
l
i
t
u
d
i
n
e

(
d
B
)
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
100
50
0
50
100
Frecventa normalizata
F
a
z
a

(
v
a
l
.
p
r
i
n
c
.
)
Figura 2.6: Caracteristica de frecvent a a ltrului (2.21), pentru = 0.4, r = 0.95
(linie continua), r = 0.8 (linie ntrerupta), r = 0.5 (linie-punct).
Filtre AR cu un singur pol. Caracteristica de frecvent a a ltrului
H(z) =
1
1 cz
1
, (2.21)
i.e. a inversului ltrului (2.19)al carui raspunsn frecvent a se presupune cunoscut
se obt ine imediat. Atat amplitudinea n decibeli cat si faza ltrului (2.21) sunt
opusele analoagelor lor pentru ltrul (2.19). Exemple de r aspuns n frecvent a al
ltrului (2.21) sunt prezentate n gura 2.6; pentru comparat ie, revedet i gura 2.4,
pentru ltrele FIR cu un singur zero; gracele din gura 2.6 se obt in prin oglindirea
fat a de abscisa a celor din gura 2.4. (De notat ca nu am reprezentat raspunsul
ltrului (2.21) cu r = 1, care are un pol pe cercul unitate, i.e. este instabil.)
Leg atura dintre diagrama poli-zerouri si caracteristica de frecvent a. Din cele
prezentate mai sus rezulta ca pozit ian planul complex a polilor si zerourilor unui l-
tru da informat ii importante despre caracteristica de frecvent a a ltrului. Inuent a
polilor si zerourilor este cu at at mai mare cu cat sunt mai aproape de cercul unitate.

In linii mari, un zero de faza situat n apropierea cercului unitate implica o aten-
uare mare a raspunsului la frecvent a . Dimpotriva, un pol de faza nseamna o
amplicare mare la frecvent a , sau, n orice caz, o crestere a amplicarii n preajma
frecvent ei . Pentru ilustrare, prezentam n gura 2.7 caracteristicile de frecvent a
a doua ltre IIR cu doi poli si trei zerouri. Zerourile ltrelor sunt identice si se aa
pe cercul unitate, avand valorile j = e
j/2
, j = e
j/2
si 1 = e
j
.

In consecint a,
amplitudinea raspunsului n frecvent a este nula la frecvent ele /2 si . Pentru
primul ltru (gracele de sus), polii (complex conjugat i) au modul 0.9 si argument
/4. Deoarece polii sunt aproape de cercul unitate, amplitudinea raspunsului n
46 CAPITOLUL 2. SISTEME
1 0.5 0 0.5 1
1
0.8
0.6
0.4
0.2
0
0.2
0.4
0.6
0.8
1
Parte reala
P
a
r
t
e

i
m
a
g
i
n
a
r
a
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
60
50
40
30
20
10
0
10
Frecventa normalizata
A
m
p
l
i
t
u
d
i
n
e
1 0.5 0 0.5 1
1
0.8
0.6
0.4
0.2
0
0.2
0.4
0.6
0.8
1
Parte reala
P
a
r
t
e

i
m
a
g
i
n
a
r
a
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
60
50
40
30
20
10
0
10
Frecventa normalizata
A
m
p
l
i
t
u
d
i
n
e
Figura 2.7: Diagrame poli-zerouri (stanga) si caracteristici de frecvent a (dreapta)
pentru doua ltre IIR cu doi poli si trei zerouri.
frecvent a are valori mari n jurul frecvent ei /4. Pentru al doilea ltru, modulul
polilor este 0.7, iar efectul lor e mai put in sesizabil. Desi amplitudinea raspunsului
n frecvent a nu mai este mare la = /4, totusi polii au ca efect palierul aproape
orizontal n intervalul [0, /4]. (Anticipand capitolul despre proiectarea ltrelor,
observam ca al doilea ltru are o caracteristica de tip trece-jos; modulul polilor a
fost ales special pentru a o obt ine.)
Probleme rezolvate
PR 2.3.1 Fie sistemul ntarziere pura descris de y[n] = x[n n
0
], unde n
0
este
un ntreg pozitiv. Reprezentat i caracteristica sa de frecvent a.
Solut ie. Funct ia de transfer este H(z) = z
n0
, deci H(e
j
) = e
jn0
. Ampli-
tudinea este |H(e
j
)| = 1, iar faza argH(e
j
) = n
0
este liniara n . (Reprezen-
tarea graca ramane cititorului.)
PR 2.3.2 Consideram H(z) = (1+z
1
)/2, ltrul FIR medie pe doua esantioane.
a. Reprezentat i caracteristica sa de frecvent a.
b. Care este raspunsul ltrului la intrarea x[n] = cos(
0
n), cu
0
[, ]
dat ? Exemplu numeric:
0
= /3.
2.3. REPREZENTAREA

IN FRECVENT

A A SISTEMELOR LIT 47
Solut ie. a. Avem
H(e
j
) =
1 + e
j
2
= e
j/2
_
e
j/2
+ e
j/2
2
_
= cos(/2) e
j/2
si deci pentru [0, ] obt inem
|H(e
j
)| = cos(/2), argH(e
j
) = /2.
Caracteristica de frecvent a este prezentata n gura 2.8. Remarcat i normalizarea
frecvent ei (abscisa 1 nseamna = ) si reprezentarea fazei n grade (nu radiani).
b. Deoarece
cos(
0
n) =
1
2
_
e
j0n
+ e
j0n
_
,
raspunsul ltrului este
y[n] =
1
2
_
H(e
j0
)e
j0n
+H(e
j0
)e
j0n
_
.
Deoarece H(z) are coecient i reali si deci H(e
j0
) = H

(e
j0
), obt inem
y[n] = Re
_
H(e
j0
)e
j0n
_
= |H(e
j0
)| cos
_

0
n + argH(e
j0
)
_
,
adica un rezultat similar cu (2.15). (Atent ie, daca funct ia de transfer are coecient i
complecsi, rezultatul nu mai e acelasi.)
Daca
0
= /3, iesirea pentru ltrul considerat este
y[n] =

3
2
cos
_

3
n

6
_
,
i.e. semnalul de intrare a fost atenuat si defazat.
PR 2.3.3 Semnalul x[n] = (1)
n
se aplica la intrarea ltrului H(z) = (1+z
1
)/2.
Care este semnalul de iesire ?
Solut ie. Cititorul atent a observat ca aceasta problema este identica cu PR2.2.2.
Prezentam aici alta solut ie. Observam ca x[n] = (1)
n
= cos(n), adica x[n] este
un semnal sinusoidal de frecvent a . Pe de alta parte, avem H(e
j
) = H(1) = 0,
ceea ce nseamna ca semnalul de frecvent a este taiat complet de ltru, deci iesirea
este nula.
PR 2.3.4 Consideram ltrul FIR medie pe M + 1 esantioane, care are funct ia
de transfer
H(z) =
1
M + 1
M

n=0
z
n
. (2.22)
Reprezentat i caracteristica sa de frecvent a.
48 CAPITOLUL 2. SISTEME
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0
0.2
0.4
0.6
0.8
1
Frecventa normalizata
A
m
p
l
i
t
u
d
i
n
e
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
100
80
60
40
20
0
Frecventa normalizata
F
a
z
a
Figura 2.8: Caracteristica de frecvent a a ltrului H(z) = (1 +z
1
)/2.
Solut ie. Utilizand formula pentru suma unei progresii geometrice, obt inem
H(e
j
) =
1
M + 1
M

n=0
e
jn
=
1
M + 1
1 e
j(M+1)
1 e
j
=
1
M + 1
e
j(M+1)/2
(e
j(M+1)/2
e
j(M+1)/2
)
e
j/2
(e
j/2
e
j/2
)
=
1
M + 1
sin((M + 1)/2)
sin(/2)
e
jM/2
.

In mod evident, amplitudinea este


|H(e
j
)| =
1
M + 1

sin((M + 1)/2)
sin(/2)

In reprezentarea fazei apare un fenomen specic. Cand [0, ], observam ca


sin(/2) 0, dar ca semnul lui sin((M + 1)/2) variaza.

In concluzie, deoarece
1 = e
j
, faza este
argH(e
j
) =
_
M/2, cand sin((M + 1)/2) 0,
M/2 , cand sin((M + 1)/2) < 0.
Gracele amplitudinei si fazei sunt prezentate n gura 2.9, pentru M = 5, n doua
variante; prima este cea teoretica, n care formulele de mai sus sunt utilizate ca
atare; a doua este cea inginereasca, n care amplitudinea este reprezentata n
decibeli, iar faza prin valoarea sa principala.

In reprezentarea fazei, am t inut seama
ca sin(3) < 0 pentru [/3, 2/3], de unde discontinuitat ile gracului.
2.3. REPREZENTAREA

IN FRECVENT

A A SISTEMELOR LIT 49
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0
0.2
0.4
0.6
0.8
1
Frecventa normalizata
A
m
p
l
i
t
u
d
i
n
e
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
500
400
300
200
100
0
Frecventa normalizata
F
a
z
a
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
60
50
40
30
20
10
0
Frecventa normalizata
A
m
p
l
i
t
d
i
n
e

(
d
B
)
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
150
100
50
0
50
100
Frecventa normalizata
F
a
z
a

(
v
a
l
.
p
r
i
n
c
.
)
Figura 2.9: Caracteristica de frecvent a a ltrului H(z) =
1
M+1

M
n=0
z
n
, pen-
tru M = 5. Sus, reprezentarea teoretica amplitudine-faza. Jos, reprezentarea
inginereasca: amplitudine n dB si valoarea principala a fazei.
50 CAPITOLUL 2. SISTEME
Probleme propuse
PP 2.3.1 Reprezentat i caracteristica de frecvent a a ltrului FIR H(z) = (1
z
1
)/2.
Care este iesirea sa atunci cand la intrare sunt semnalele a) x[n] = 1, b) x[n] =
(1)
n
?
PP 2.3.2 Desenat i caracteristica de frecvent a a ltrului H(z) = 1 0.5z
1
+
0.25z
2
si comparat i rezultatul obt inut cu cel din gura 2.5.
PP 2.3.3 a. Presupunem ca se cunosc gracele (amplitudine si faza) raspunsului
n frecvent a al unui ltru H(z). Cum se pot trasa rapid gracele raspunsului n
frecvent a al ltrului H
2
(z) ?
b. Presupunem ca se cunosc gracele raspunsurilor n frecvent a a doua ltre
H
1
(z) si H
2
(z). Cum se pot trasa rapid gracele raspunsului n frecvent a al ltrului
H
1
(z)H
2
(z) obt inut prin conectarea n serie a celor doua ltre ?
PP 2.3.4 Filtrul AR (2.21) cu polul c = e
j
este instabil deoarece polul se aa
pe cercul unitate. Dat i exemplu de un semnal de intrare x[n] marginit pentru care
raspunsul ltrului y[n] este nemarginit. Cazuri particulare: c = 1, c = 1.
PP 2.3.5 Filtrul IIR cu funct ia de transfer
H(z) =
1 +z
1
+z
2
+z
3
1 0.9

2z
1
+ 0.81z
2
are zerourile si polii ca n gura 2.7, stanga sus. Desenat i caracteristica sa de
frecvent a si observat i ca nu obt inet i exact gracul din dreapta sus a gurii. De ce ?
Ghid Matlab
Caracteristica de frecvent a a unui ltru IIR (2.8) se poate trasa cu ajutorul funct iei
freqz. Daca variabilele b si a cont in coecient ii numaratorului, respectiv numi-
torului, atunci
>> freqz(b,a)
deseneaza amplitudinea (n dB) si valoarea principala a fazei (n radiani) n doua
grace. De exemplu, ltrul FIR de ordinul doi (2.20) cu r = 0.8, = /3 se
deseneaza prin
>> b = [1 -0.8 0.64]
>> freqz(b,1)
Apelul
>> [H,w] = freqz(b,a)
pune n H valorile raspunsului n frecvent a calculat n elementele grilei de frecvent e
w (generata de funct ie). Desenarea e.g. amplitudinii raspunsului se face cu
>> plot(w, abs(H))

In alte moduri de apel ale funct iei freqz se pot specica numarul de puncte de pe
grila, se pot preciza explicit frecvent ele n care se calculeaza raspunsul etc.
Diagrama poli-zerouri a unui ltru IIR se deseneaza cu apelul
>> zplane(b,a)
2.4. FILTRE DE FAZ

A MINIM

A 51
2.4 Filtre de faza minima
Denit ia 2.17 Un ltru IIR cu funct ia de transfer (2.9) av and zerourile si polii
situat i n interiorul cercului unitate, i.e. cu proprietatea c a |c
k
| < 1, k = 1 : M,
|d
i
| < 1, i = 1 : N, se numeste ltru de faz a minim a.
Deoarece n practica sunt interesante doar ltrele stabile, pentru care |d
i
| < 1,
i = 1 : N, proprietatea de faza minima este data de pozit ia zerourilor unui ltru.

In sect iunea precedenta am analizat doar caracteristica de frecvent a a ltrelor de


faza minima. Pentru a studia cazul ltrelor de faza neminimacare au cel put in
un zero n afara cercului unitateavem nevoie de denit ia ltrelor trece-tot.
Denit ia 2.18 Un ltru trece-tot de ordin N are funct ia de transfer
H
T
(z) =

N
k=1
(z
1
c

k
)

N
k=1
(1 c
k
z
1
)
, (2.23)
iar polii c
k
C, k = 1 : N, au modul subunitar (deci ltrul este stabil).
Observam ca zerourile ltrului sunt 1/c

k
, k = 1 : N, si se aa n afara cercului
unitate. Numele ltrului este dat de urmatoarea proprietate.
Propozit ia 2.19 Fie H
T
(z) ltrul trece-tot cu funct ia de transfer (2.23). R aspunsul
s au n frecvent a are modul constant |H
T
(e
j
)| = 1, pentru orice frecvent a .
Demonstrat ie. Modulul unui factor al numaratorului raspunsului H
T
(e
j
) este
|e
j
c

k
| = |e
j
(1 c

k
e
j
)| = |1 c
k
e
j
|,
i.e. este egal cu modulul factorului corespunzator al numitorului (ultima egalitate
a fost obt inuta prin complex conjugare).
Propozit ia 2.20 Orice ltru (stabil) H(z) de faz a neminim a poate exprimat ca
produs ntre dou a ltre: unul de faz a minim a H
m
(z) si unul trece-tot H
T
(z), i.e.
H(z) = H
m
(z)H
T
(z). (2.24)
Demonstrat ie. Sa presupunem pentru simplitate ca H(z) are un singur zero n
afara cercului unitate, i.e. se poate scrie sub forma H(z) =

H
m
(z)(z
1
c

), cu
|c| < 1, unde

H
m
(z) este un ltru de faza minima. Atunci avem
H(z) =

H
m
(z)(1 cz
1
)
z
1
c

1 cz
1
,
adica H(z) are forma (2.24), cu H
m
(z) =

H
m
(z)(1 cz
1
) si H
T
(z) un ltru trece-
tot de ordinul 1 cu polul c.
Daca H(z) are mai multe zerouri n afara cercului unitate, atunci demonstrat ia
este similara.
Observam ca H
m
(z) se obt ine din H(z) prin reectarea si complex conjugarea
zerourilor din afara cercului (1/c

se transforma n c). Combinand Propozit iile 2.19


si 2.20 obt inem urmatorul rezultat important.
52 CAPITOLUL 2. SISTEME
Corolarul 2.21 Amplitudinea r aspunsului n frecvent a al unui ltru H(z) de faz a
neminim a exprimat ca n (2.24) este identic a cu cea a ltrului de faz a minim a
H
m
(z), i.e. |H(e
j
)| = |H
m
(e
j
)|.
Fazele raspunsurilor n frecvent a ale celor doua ltre, H(z) si H
m
(z), difera.
Alte propriet at i ale ltrelor de faz a minim a. Denumirea de ltru de faza minima
provine din urmatorul rezultat.
Propozit ia 2.22 Fie H(z) un ltru de faz a neminim a si H
m
(z) ltrul de faz a
minim a din (2.24).

Intre fazele celor dou a ltre exist a relat ia
argH(e
j
) argH
m
(e
j
), [0, ]. (2.25)
Observam ca de fapt faza ltrului de faza minima este mai mare decat cea a
unui ltru de faza neminima corespunzator. Deoarece faza este n general negativa,
ltrul de faza minima are faza mai mica n valoare absoluta, de unde si denumirea
sa.
Propozit ia 2.23 Fie H(z) un ltru cauzal de faz a neminim a si H
m
(z) ltrul de
faz a minim a din (2.24). Fie h[n], respectiv h
m
[n], r aspunsurile la impuls ale celor
dou a ltre. Atunci, pentru orice n 0, are loc inegalitatea
n

k=0
|h[k]|
2

k=0
|h
m
[k]|
2
. (2.26)
Sumele din (2.26) au semnicat ia de energii part iale ale raspunsului la impuls.
T inand seama ca amplitudinile raspunsurilor n frecvent a ale celor doua ltre sunt
identice, din teorema lui Parseval rezulta ca raspunsurile la impuls h[n] si h
m
[n]
au aceeasi energie. Relat ia (2.26) spune ca raspunsul la impuls al ltrului de faza
minima are mai multa energie n partea sa init iala, n comparat ie cu ltrele de faza
neminima provenite din el.
Probleme rezolvate
PR 2.4.1 Scriet i forma generala a unui ltru trece-tot de ordin N. (Evident iat i
coecient ii, nu polii si zerourile ca n (2.23).)
Solut ie. Fie H
T
(z) = B(z)/A(z), unde B(z), A(z) sunt polinoamele din (2.23).
Daca c este radacina a lui A(z), din denit ia (2.23) a ltrului trece-tot rezulta ca
1/c

e radacina a lui B(z). Asadar avem B(z) = z


N
A

(z
1
) (nmult irea cu z
N
face B(z) polinomn z
1
), adica coecient ii lui B(z) sunt identici cu cei ai lui A(z),
dar n ordine inversa si complex conjugat i si deci funct ia de transfer a ltrului este
H
T
(z) =

N
n=0
a

Nn
z
n

N
n=0
a
n
z
n
(2.27)
unde a
0
= 1. Se observa imediat ca pentru N = 1 se obt ine chiar (2.23).
2.4. FILTRE DE FAZ

A MINIM

A 53
PR 2.4.2 Demonstrat i Propozit ia 2.22. Indicat ie: demonstrat i ca ltrul trece-tot
(2.23) are faza negativa pentru [0, ]; folosind apoi (2.24), Propozit ia este
demonstrata.
Solut ie. Negativitatea fazei ltrului trece-tot (2.24) se demonstreaza dupa urma-
torul plan, ale carui detalii (de calcul) le lasam cititorului:
1. Se considera ltrul trece-tot de ordinul 1
H
1
(z) =
z
1
c

1 cz
1
, c = re
j
, 0 < r 1, (2.28)
si se calculeaza expresia fazei sale, obt inandu-se
() = argH
1
(e
j
) = 2arctg
r sin( )
1 r cos( )
.
2. Se calculeaza derivata fazei

() =
r
2
1
1 2r cos( ) +r
2
si se observa ca

() 0, [0, ].
3. Deoarece (0) = 0, rezulta imediat ca () 0, [0, ].
4. Cum ltrul trece-tot (2.23) este produs de termeni de tipul (2.28), rezulta ca
si faza sa este negativa.
Probleme propuse
PP 2.4.1 Scriet i funct ia de transfer a unui ltru trece-tot cu coecient i reali ai
carui poli sunt e
j
, unde [0, 1) si [0, ] sunt dat i.
PP 2.4.2 Demonstrat i ca un ltru H(z) este trece-tot daca si numai daca egalitatea
H(z)H

(z
1
) = 1 are loc pentru orice z complex.
PP 2.4.3 Un semnal x[n] de energie nita este aplicat la intrarea unui ltru trece-
tot (2.23), obt inandu-se la iesire semnalul y[n]. Demonstrat i ca semnalele de intrare
si de iesire au aceeasi energie, i.e.

n=
|x[n]|
2
=

n=
|y[n]|
2
.
(Indicat ie: folosit i teorema lui Parseval.)
PP 2.4.4 Desenat i caracteristicile de frecvent a ale ltrelor H
1
(z) = 1 0.5z
1
+
0.25z
2
si H
2
(z) = 0.250.5z
1
+z
2
. Stiind ca unul dintre ele este de faza minima,
aat i din caracteristica de frecvent a care este acesta, fara a calcula zerourile ltrelor.
Putet i aa raspunsul doar din valorile coecient ilor ltrelor ?
PP 2.4.5 Fie H
m
(z) un ltru FIR de faza minima, de ordin M, cu coecient i reali.
Cate ltre FIR de ordin M au aceeasi amplitudine a raspunsului n frecvent a ca
H
m
(z), dar faze diferite ? Indicat i valorile maxima si minim a ale numarului acestor
ltre si dat i exemple de ltre H
m
(z) pentru care se ating valorile extreme.
PP 2.4.6 Demonstrat i Propozit ia 2.23. Indicat ie: considerat i (2.26) pentru cazul
particular cu un ltru de faza minima H
m
(z) si un ltru de faza neminima cu un
singur zero n afara cercului unitate.
54 CAPITOLUL 2. SISTEME
2.5 Filtre cu faza liniara
Raspunsul n frecvent a al sistemului de ntarziere cu n
0
esantioane este H(e
j
) =
e
jn0
(vezi problema PR2.3.1). Se observa ca faza acestui sistem este liniara.

In prelucrarea semnalelor, ntarzierea unui semnal este o modicare acceptabila a


acestuia. Filtrele cu faza liniara sunt asadar interesante pentru ca ele act ioneaza
doar asupra amplitudinii spectrului semnalului, modicarile fazei reprezentand o
simpla ntarziere.

In sens strict, un ltru are faza liniara daca raspunsul sau n frecvent a poate
scris n forma H(e
j
) = |H(e
j
)|e
jn0
, unde se poate accepta si n
0
R. Aceasta
denit ie poate reformulata n sens mai larg.
Denit ia 2.24 Un ltru are faz a liniar a generalizat a dac a r aspunsul s au n frecvent a
poate scris n forma
H(e
j
) = A(e
j
)e
jn0j
, (2.29)
unde A(e
j
) R (deci, put and avea valori negative, nu este amplitudinea r aspunsu-
lui), n
0
R, iar e
j
reprezint a un defazaj suplimentar ( R).
Denit ia 2.25

Int arzierea de grup (group delay) a unui ltru este derivata fazei
r aspunsului n frecvent a al ltrului (cu semn schimbat), i.e.
grdH(e
j
) =
d
d
argH(e
j
). (2.30)

In mod evident, ntarzierea de grup a unui ltru cu faza liniara generalizata este
constanta (si pozitiva, de obicei).
Filtre ideale
Un ltru trece-jos ideal, care lasa sa treaca nealterate semnalele cu frecvent a mai
mica decat
t
si taie complet semnalele de alte frecvent e, are raspunsul n frecvent a
H
TJ
(e
j
) =
_
1, daca ||
t
,
0, daca
t
< || .
(2.31)
Sa notam ca [0,
t
] se numeste banda de trecere, iar [
t
, ] banda de oprire (sau
taiere). Admit and ntarzierea semnalelor din banda de trecere, ltrul trece-jos are
raspunsul n frecvent a
H
TJi
(e
j
) =
_
e
jn0
, daca ||
t
,
0, daca
t
< || ,
(2.32)
unde n
0
R este ntarzierea de grup a ltrului.
Filtrele ideale au raspunsuri la impuls necauzale, cu suport innit. De exemplu,
ltrul (2.32) are raspunsul la impuls
h
TJi
[n] =
sin
t
(n n
0
)
(n n
0
)
. (2.33)
2.5. FILTRE CU FAZ

A LINIAR

A 55
M par M impar
H(z) simetric (h[n] = h[M n]) I II
H(z) antisimetric (h[n] = h[M n]) III IV
Tabelul 2.1: Tipurile de ltre FIR cu faza liniara.
(Demonstrat ia este lasata cititorului n problema PP2.5.1.) Raspunsurile la impuls
(2.33) pentru
t
= /4, sunt reprezentate in gura 2.10. Observam ca daca n
0
este
ntreg, atunci raspunsul este simetric fat a de verticala dusa prin n
0
. Aceeasi simetrie
este valabila si n cazul n
0
= k
0
+ 1/2, cu k
0
Z.

In celelalte cazuri, raspunsul nu
are nici o simetrie.
Datorita suportului innit si necauzalitat ii, ltrele ideale nu sunt utilizabile n
practica. De asemenea, nu exista ltre IIR rat ionale cu faza liniara. De aceea,
singura solut ie practica de obt inere a liniaritat ii exacte a fazei o reprezinta ltrele
FIR.
Filtre FIR cu faza liniara
Denit ia 2.26 Fie H(z) un ltru FIR cu coecient i reali descris de (2.6), de ordin
M. Spunem c a H(z) este simetric dac a vectorul coecient ilor s ai (r aspunsul s au la
impuls) este simetric, i.e. h[n] = h[M n].
De asemenea, spunem c a H(z) este antisimetric dac a h[n] = h[M n].
Se poate demonstra urmatorul rezultat.
Propozit ia 2.27 Un ltru FIR are faz a liniar a generalizat an sensul c a r aspunsul
s au n frecvent a are forma (2.29)dac a si numai dac a este simetric sau antisimet-
ric.
Filtrele FIR cu faza liniara sunt de patru tipuri, dupa simetria coecient ilor si
paritatea ordinului ltrului.

In mod tradit ional, tipurile sunt numerotate de la I la
IV, dupa cum se arata n tabelul 2.1.

In cele ce urmeaza, vom arata ca ecare din
cele patru tipuri de ltre are raspunsul n frecvent a de forma (2.29) si vom vedea
care sunt pozit iile zerourilor acestor ltre n planul complex.
Tipul I. Cand M este par, numarul de coecient i ai ltrului este impar, deci
funct ia de transfer are forma
H(z) = h[0] +h[1]z
1
+. . . +h[
M
2
]z

M
2
+. . . +h[1]z
(M1)
+h[0]z
M
. (2.34)
Raspunsul n frecvent a este (fort am factor comun exponent iala corespunzatoare
termenului central)
H(e
j
) = e
j
M
2
_
h[
M
2
] +h[
M
2
1](e
j
+ e
j
) +. . . +h[0](e
j
M
2
+ e
j
M
2
)
_
= e
j
M
2
_
2h[0] cos(
M
2
) +. . . + 2h[
M
2
1] cos +h[
M
2
]
_
. (2.35)
56 CAPITOLUL 2. SISTEME
5 0 5 10 15 20
0.05
0
0.05
0.1
0.15
0.2
0.25
0.3
n
... ...
5 0 5 10 15 20
0.05
0
0.05
0.1
0.15
0.2
0.25
0.3
n
... ...
5 0 5 10 15 20
0.05
0
0.05
0.1
0.15
0.2
0.25
0.3
n
... ...
Figura 2.10: Raspunsuri la impuls ale ltrului ideal trece-jos, pentru
t
= /4 si
ntarziere de grup n
0
= 8 (sus), n
0
= 8.5 (mijloc) si n
0
= 8.4 (jos).
2.5. FILTRE CU FAZ

A LINIAR

A 57
1.5 1 0.5 0 0.5 1 1.5 2
1
0.5
0
0.5
1
Parte reala
P
a
r
te
im
a
g
in
a
r
a
1.5 1 0.5 0 0.5 1 1.5 2
1
0.5
0
0.5
1
Parte reala
P
a
r
te
im
a
g
in
a
r
a
Figura 2.11: Zerourile ltrelor FIR cu faza liniara, de tip I (stanga) si II (dreapta).
Din (2.35) se observa ca ntarzierea de grup este
grdH(e
j
) = M/2.
Pentru a vedea care sunt pozit iile zerourilor, observam ca, pentru un ltru si-
metric, este adevarat sirul de egalitat i
H(z) =
M

n=0
h[n]z
n
= z
M
M

n=0
h[M n]z
Mn
= z
M
M

n=0
h[n]z
n
= z
M
H(z
1
).
(2.36)
Asadar, daca c este un zero al lui H(z), atunci si 1/c este zero, adica orice zero
n interiorul cercului unitate este nsot it de unul n afara cercului. Mai mult, daca
ltrul are coecient i reali, atunci c este zero al ltrului mpreuna cu c

, 1/c, 1/c

.
Zerourile ltrului au pozit iile ilustrate n gura 2.11, stanga; zerourile complexe
apar n general n grupuri de patru. Zerourile aate pe cercul unitate sunt perechi,
deoarece n acest caz avem 1/c = c

; cele doua zerouri sunt simetrice fat a de axa


reala.

In ne, zerourile reale sunt si ele perechi (c = c

); daca zerourile sunt reale


si pe cercul unitate, adica sunt egale cu 1 sau 1, atunci ele sunt duble.
Tipul II. Funct ia de transfer are forma
H(z) = h[0] +. . . +h[
M1
2
]z

M1
2
+h[
M1
2
]z

M+1
2
+. . . +h[0]z
M
. (2.37)
Procedand ca n (2.35), raspunsul n frecvent a este
H(e
j
) = e
j
M
2
_
2h[0] cos(
M
2
) +. . . + 2h[
M1
2
] cos(

2
)
_
. (2.38)
Ca si pentru tipul I, ntarzierea de grup este M/2.
Si pentru tipul II este adevarata relat ia (2.36), adic a simetriile pozit iilor zer-
ourilor sunt aceleasi ca la tipul I, cu o singura except ie. Punand z = 1 n (2.36)
obt inem H(1) = (1)
M
H(1) = H(1); asadar H(1) = 0, deci 1 este
ntotdeauna un zero al ltrului; multiplicitatea sa este impara, deoarece zerouri
58 CAPITOLUL 2. SISTEME
1.5 1 0.5 0 0.5 1 1.5 2
1
0.5
0
0.5
1
Parte reala
P
a
r
te
im
a
g
in
a
r
a
1.5 1 0.5 0 0.5 1 1.5 2
1
0.5
0
0.5
1
Parte reala
P
a
r
te
im
a
g
in
a
r
a
Figura 2.12: Zerourile ltrelor FIR cu faza liniara, de tip III (stanga) si IV (dreapta).
duble pot aparea asa cum s-a discutat la tipul I. Figura 2.11 (dreapta) prezinta
pozit iile tipice ale zerourilor unui ltru de tip II.
Tipul III. Deoarece numarul coecient ilor este impar, antisimetria implica h[
M
2
] =
h[
M
2
], deci coecientul central este nul, iar funct ia de transfer este
H(z) = h[0] +. . . +h[
M
2
1]z
(
M
2
1)
h[
M
2
1]z
(
M
2
+1)
. . . h[0]z
M
. (2.39)
T inand seama ca j = e
j/2
, raspunsul n frecvent a este
H(e
j
) = e
j(
M
2

2
)
_
2h[0] sin(
M
2
) +. . . + 2h[
M
2
1] sin
_
, (2.40)
iar ntarzierea de grup este M/2.
Procedand ca n (2.36), pentru un ltru cu coecient i antisimetrici obt inem
relat ia
H(z) = z
M
H(z
1
). (2.41)

In general, aceasta implica aceleasi simetrii ale zerourilor ca pentru un ltru de tip
I.

In plus, observam ca pentru M par, din relat ia (2.41) rezulta H(1) = H(1) si
H(1) = H(1); asadar atat 1 cat si 1 sunt ntotdeauna zerouri ale ltrului
de tip III; n cazul cel mai general, multiplicitatea lor este impara. Figura 2.12
(stanga) prezinta pozit iile tipice ale zerourilor unui ltru de tip III.
Tipul IV. Funct ia de transfer are forma
H(z) = h[0] +. . . +h[
M1
2
]z

M1
2
h[
M1
2
]z

M+1
2
. . . h[0]z
M
. (2.42)
Raspunsul n frecvent a este
H(e
j
) = e
j(
M
2

2
)
_
2h[0] sin(
M
2
) +. . . + 2h[
M1
2
] sin(

2
)
_
(2.43)
si ntarzierea de grup este M/2.

In privint a pozit iei zerourilor, diferent a fat a de tipul III este ca, M ind impar,
din (2.41) rezulta doar H(1) = H(1), deci numai 1 este un zero al ltrului de
multiplicitate impara (vezi gura 2.12, dreapta).
2.5. FILTRE CU FAZ

A LINIAR

A 59
Probleme rezolvate
PR 2.5.1 Determinat i raspunsul la impuls al ltrului de ntarziere ideal, al carui
raspuns n frecvent a este H(e
j
) = e
jn0
, unde n
0
R.
Solut ie. Folosind transformata Fourier inversa ca n solut ia problemei PR1.2.3,
se obt ine raspunsul la impuls
h[n] =
sin(n n
0
)
(n n
0
)
.
Daca n
0
este ntreg, atunci h[n] este impulsul unitate ntarziat [n n
0
]. Altfel,
raspunsul are suport innit ! Raspunsul este simetric daca 2n
0
Z. Figura 2.13
ilustreaza aceste situat ii.
PR 2.5.2 Fie H(z) un ltru FIR cu faza liniara, de tip I. Ce fel de ltre sunt
(1 z
1
)H(z), (1 z
2
)H(z), (1 +z
1
)H(z), (1 +z
2
)H(z) ?
Solut ie. Toate ltrele de mai sus au faza liniara. Demonstram doar ca G(z) =
(1 z
1
)H(z) este de tip IV.

In primul rand, gradul lui G(z) este M + 1, deci
impar. Apoi, observam ca ntre coecient ii celor doua ltre exista relat ia g[n] =
h[n] h[n1], n = 0 : M +1; desigur, consideram h[1] = h[M +1] = 0. Deoarece
h[n] este simetric, putem scrie
g[M + 1 n] = h[M + 1 n] h[M n] = h[n 1] h[n] = g[n],
asadar ltrul G(z) are coecient i antisimetrici.
PR 2.5.3 Gasit i un ltru FIR a carui faza sa e nula.
Solut ie. Evident, un astfel de ltru are faza liniara si ntarziere de grup egala
cu zero. Daca ne marginim la ltrele descrise n aceasta sect iune, a caror ntarziere
de grup este M/2, vom constata ca gradul ltrului trebuie sa e nul, deci funct ia
de transfer este o constanta.
Daca permitem si ltre FIR necauzale, cu funct ia de transfer
H(z) =
M

n=M
h[n]z
n
,
atunci se observa cu usurint a ca ltrele simetrice, cu h[n] = h[n], au raspunsul
n frecvent a H(e
j
) real, deci ntarziere de grup nula. Totusi, pentru a avea faza
nula este necesar ca H(e
j
) 0, [, ]. Un exemplu de astfel de ltru este
H(z) = z+2+z
1
. (Atent ie, ltrele cu raspuns la impuls antisimetric h[n] = h[n]
au raspunsul n frecvent a pur imaginar, deci chiar dac antarzierea de grup este nula,
faza este nenula.)
60 CAPITOLUL 2. SISTEME
2 0 2 4 6 8 10 12 14 16 18
0.2
0
0.2
0.4
0.6
0.8
1
n
... ...
2 0 2 4 6 8 10 12 14 16 18
0.2
0
0.2
0.4
0.6
0.8
1
n
... ...
2 0 2 4 6 8 10 12 14 16 18
0.2
0
0.2
0.4
0.6
0.8
1
n
... ...
Figura 2.13: Raspunsuri la impuls ale ltrului de ntarziere ideal, cu ntarzierea de
grup n
0
= 8 (sus), n
0
= 8.5 (mijloc) si n
0
= 8.4 (jos).
2.5. FILTRE CU FAZ

A LINIAR

A 61
Probleme propuse
PP 2.5.1 Demonstrat i ca ltrul trece-jos ideal cu raspunsul n frecvent a (2.32) are
raspunsul la impuls (2.33).
Daca n
0
Z, demonstrat i ca h
TJi
[n
0
+n] = h
TJi
[n
0
n], n Z.
Daca 2n
0
Z, demonstrat i ca h
TJi
[n] = h
TJi
[2n
0
n], n Z.
PP 2.5.2 Filtrul trece-banda ideal, care lasa sa treaca semnalele sinusoidale cu
frecvent a n banda de trecere [
1
,
2
] si taie toate celelalte frecvent e, are raspunsul
n frecvent a
H
TB
(e
j
) =
_
e
jn0
, daca
1
||
2
,
0, daca ||
1
sau
2
< || ,
(2.44)
unde n
0
R este ntarzierea introdusa n banda de trecere. Demonstrat i ca
raspunsul la impuls al ltrului este
h
TB
[n] =
sin
2
(n n
0
)
(n n
0
)

sin
1
(n n
0
)
(n n
0
)
. (2.45)
Aratat i ca raspunsurile la impuls ale ltrului trece-jos ideal (2.33) si ltrului
de ntarziere ideal din problema PR2.5.1 sunt cazuri particulare ale (2.45). De
asemenea, deducet i raspunsul la impuls al ltrului trece-sus ideal.
PP 2.5.3 Fie un ltru cu faza liniara (n sens strict), al carui raspuns n frecvent a
poate scris n forma
H(e
j
) = |H(e
j
)|e
jn0
,
cu n
0
R. Presupunem ca ltrul are proprietatea ca |H(e
j
)| = |H(e
j
)| (valabila
cand raspunsul la impuls al ltrului este real).
Demonstrat i ca daca 2n
0
estentreg, atunci raspunsul la impuls h[n] este simetric
fat a de momentul n
0
, i.e. h[n] = h[2n
0
n]. (Ghilimelele sunt puse pentru ca n
0
poate sa nu e ntreg, deci nu reprezinta ntr-adevar o valoare a timpului discret.)
PP 2.5.4 Filtrul FIR H(z) = 1 z
1
+ 0.25z
2
nu are faza liniara (desenat i
caracteristica sa de frecvent a). Gasit i un ltru cu faza liniara care sa aiba aceeasi
amplitudine a raspunsului n frecvent a ca H(z).
Este adevarat ca pentru orice ltru FIR exista un ltru FIR cu faza liniara care
are aceeasi amplitudine a raspunsului n frecvent a ?
PP 2.5.5 Dat i un exemplu de ltru FIR cu faza liniara, de tip I, ale carui zerouri
sunt toate duble si complexe. Aleget i gradul cel mai mic posibil.
PP 2.5.6 Demonstrat i ca produsul a doua ltre FIR cu faza liniar a este tot un
ltru FIR cu faza liniara.
Completat i tabelul 2.2, n care sunt prezentate tipurile produselor a doua ltre
cu faza liniara. De exemplu, produsul unui ltru de tip I cu unul de tip X este un
ltru de tip X, unde X este oricare din cele patru tipuri.
At i demonstrat asadar ca prin conectarean serie a dou a ltre FIR cu faza liniara
se obt ine un ltru cu faza liniara. Ce putet i spune despre conexiunea n paralel a
celor doua ltre ?
62 CAPITOLUL 2. SISTEME
I II III IV
I I II III IV
II ? ? ? ?
III ? ? ? ?
IV ? ? ? ?
Tabelul 2.2: Tipurile produselor a doua ltre FIR cu faza liniara.
Tip Ordin H
r
()
I M = 2K
K

n=0
g
n
cos(n)
II M = 2K + 1 cos(/2)
K

n=0
g
n
cos(n)
III M = 2(K + 1) sin
K

n=0
g
n
cos(n)
IV M = 2K + 1 sin(/2)
K

n=0
g
n
cos(n)
Tabelul 2.3: Tipurile produselor a doua ltre FIR cu faza liniara.
PP 2.5.7 Demonstrat i ca raspunsurile n frecvent a ale ltrelor FIR cu faza liniara
de ordin M pot scrise n forma H(e
j
) = H
r
()e
jM/2
, unde H
r
() este real
si are forma din tabelul 2.3 (unde coecient ii g
n
sunt reali si depind de coecient ii
h[n] ai ltrului, dependent ele ind diferite pentru ecare dintre cele patru tipuri de
ltre), iar = 1 pentru ltrele simetrice si = j pentru ltrele antisimetrice.
PP 2.5.8 Are ltrul H(z) = z
2
+z + 1 +z
1
+z
2
faza nula ?
PP 2.5.9 La intrarea unui ltru FIR cu faza liniara de tip III se aplica semnalul
x
n
= 1 + cos n. Sa se demonstreze ca iesirea este nula.
Ce se ntampla daca ltrul este de tip IV ?
PP 2.5.10 Consideram ltrele FIR cauzale descrise de (2.6), cu coecient i com-
plecsi. Un astfel de ltru este simetric daca h[M n] = h

[n], si antisimetric daca


h[M n] = h

[n]. Demonstrat i ca ltrele simetrice si cele antisimetrice au faza


liniara generalizata.
PP 2.5.11 Pot apart ine unor ltre FIR cu faza liniara diagramele de zerouri din
gura 2.14 ? Daca da, de ce tip sunt ltrele respective ? (Cifrele din dreptul locat iei
unui zero indica multiplicitatea zeroului respectiv.)
Ghid Matlab
Gracul ntarzierii de grup a unui ltru IIR se poate trasa cu funct ia grpdelay. De
exemplu, pentru ltrul medie pe 6 esantioane, gracul este obt inut cu
2.6. IMPLEMENTAREA FILTRELOR 63
1 0.5 0 0.5 1
1
0.8
0.6
0.4
0.2
0
0.2
0.4
0.6
0.8
1
Parte reala
P
a
r
te
im
a
g
in
a
r
a
5
2
2
3
1 0.5 0 0.5 1
1
0.8
0.6
0.4
0.2
0
0.2
0.4
0.6
0.8
1
Parte reala
P
a
r
te
im
a
g
in
a
r
a
1 0.5 0 0.5 1
1
0.8
0.6
0.4
0.2
0
0.2
0.4
0.6
0.8
1
Parte reala
P
a
r
te
im
a
g
in
a
r
a
2
1 0.5 0 0.5 1
1
0.8
0.6
0.4
0.2
0
0.2
0.4
0.6
0.8
1
Parte reala
P
a
r
te
im
a
g
in
a
r
a
Figura 2.14: Diagrame de zerouri pentru diverse ltre FIR. Au aceste ltre faza
liniara ?
>> b = [1 1 1 1 1 1]
>> grpdelay(b,1)
Modicat i unul din coecient ii ltrului, dandu-i valoarea 2, si observat i cantarzierea
de grup nu mai este constanta (deci faza nu mai este liniara).
2.6 Implementarea ltrelor
Implementarea ltrelor digitale implica trei operat ii de baza: adunare, nmult ire,
si ntarziere cu un pas. Simbolurile folosite pentru aceste operat ii sunt prezentate
n tabelul 2.4. Sumatorul efectueaza adunarea celor dou a (sau mai multe) semnale
de intrare. Multiplicatorul nmult este semnalul de intrare cu valoarea reprezentata
deasupra saget ii.
O metoda de a obt ine scheme de implementare a ltrelor se bazeaza pe ecuat iile
cu diferent e care descriu funct ionarea acestora. Schemele obt inute se numesc forme
directe. Prezentamn continuare aceste forme pentru ltrele FIR si IIR.
Filtre FIR. Ecuat ia cu diferent e corespunzatoare ltrului FIR B(z) =

M
k=0
b[k]z
k
64 CAPITOLUL 2. SISTEME
Sumator

Multiplicator
b
k

Intarziere cu un pas
z
1
Tabelul 2.4: Elemente constructive pentru implementarea ltrelor digitale.

x[n]
z
1
z
1


`
`


b
0
b
1
b
M1
b
M
.
.
.
.
.
.
y[n]
`




x[n]
b
0
b
M1
b
1
b
M

z
1
z
1

y[n]


Figura 2.15: Implementari echivalente ale unui ltru FIR.
este
y[n] =
M

k=0
b[k]x[n k]. (2.46)
Doua scheme de implementare a ecuat iei (2.46) sunt prezentate n gura 2.15. Cele
doua scheme sunt identice, doar modul de desenare difera: n stanga pe verticala,
n dreapta pe orizontala. Ne referim la schema verticala; n nodurile liniei verticale
din stanga se gasesc valorile ntarziate ale semnalului de intrare: x[n], x[n1], . . . ,
x[n M] (de sus n jos); aceste valori se nmult esc cu coecient ii corespunzatori ai
ltrului, iar rezultatele se aduna pe coloana verticala din dreapta. Complexitatea
schemei este de M + 1 nmult iri si adunari; sunt necesare M celule de memorie
(nereprezentate explicit), corespunzatoare celor M elemente de ntarziere.
Filtre AR. Ecuat ia cu diferent e (2.13) corespunzatoare ltrului AR (2.12) se
implementeaza cu schema din gura 2.16. Deoarece acum sunt necesare valori la M
momente de timp ale iesirii, elementele de ntarziere sunt pe coloana din dreapta.
Filtre IIR, forma direct a. Deoarece ltrul IIR (2.8) este produsul dintre l-
trul AR 1/A(z) si ltrul FIR B(z), implementarea lui se poate obt ine prin sim-
pla concatenare a schemelor corespunzatoare celor doua ltre, asa cum se vede n
gura 2.17. Se observa ca cele doua coloane descendente din mijloc sunt identice
2.6. IMPLEMENTAREA FILTRELOR 65

x[n]
z
1

a
1
a
M1
a
M
.
.
.
.
.
.
y[n]
`

`

`

z
1
Figura 2.16: Implementarea unui ltru AR.

x[n]
z
1

a
1
a
M1
a
M
.
.
.
.
.
.
`

`

`

z
1
z
1


`
`


b
0
b
1
b
M1
b
M
.
.
.
.
.
.
y[n]
`
z
1
Figura 2.17: Implementarea unui ltru IIR, versiune neecienta.
iar elementele de ntarziere sunt duplicate inutil. Prin eliminarea uneia dintre cele
doua coloane se obt ine implementarea ecienta din gura 2.18.
Filtre IIR, forma transpus a. Scheme de implementare alternative se obt in prin
urmatoarea procedura generala: se schimba sensul tuturor arcelor, apoi se permuta
ntre ele intrarea si iesirea. Se obt ine forma transpusa a schemei init iale. Cele doua
scheme, init iala si transpusa, sunt echivalente. Demonstram echivalent a doar pe
cazul particular al unui ltru IIR de ordinul 2. Figura 2.19 cont ine schemele directa
(stanga) si transpusa (dreapta) pentru acest ltru. Pentru forma transpusa, sem-
nalele din nodurile coloanei din mijloc sunt, de sus n jos, y[n], v
1
[n], respectiv v
2
[n].
Exprimand aceste semnale ca suma a semnalelor care intra n nodurile respective,
obt inem succesiv
y[n] = b
0
x[n] +v
1
[n 1] = b
0
x[n] +b
1
x[n 1] a
1
y[n 1] +v
2
[n 2]
= b
0
x[n] +b
1
x[n 1] a
1
y[n 1] +b
2
x[n 2] a
2
y[n 2],
adica exact ecuat ia cu diferent e corespunzatoare ltrului IIR de ordinul 2.
Filtre IIR, implementare cu sect iuni de ordinul 2. Presupunand ca M = N n
(2.8) si ca ordinul ltrului este par, funct ia de transfer a unui ltru IIR cu coecient i
66 CAPITOLUL 2. SISTEME

x[n]
a
1
a
M1
a
M
.
.
.
`

z
1
z
1


`
`


b
0
b
1
b
M1
b
M
.
.
.
.
.
.
y[n]
`
Figura 2.18: Implementarea ecienta a unui ltru IIR.

x[n]
a
1
a
2
`

z
1
z
1


`
`

b
0
b
1
b
2
y[n]

x[n]
a
1
a
2

z
1
z
1

b
0
b
1
b
2
y[n]


`

`


v
1
[n]
v
2
[n]
Figura 2.19: Filtru IIR de ordinul 2, n implementare directa (stanga) si transpusa
(dreapta).
reali se poate scrie n forma
H(z) =
b
0
a
0
N/2

k=1
(1 c
k
z
1
)(1 c

k
z
1
)
N/2

k=1
(1 d
k
z
1
)(1 d

k
z
1
)
. (2.47)
Am grupat polii si zerourile n perechi complex conjugate, obt inand ltre IIR de
ordinul 2 cu coecient i reali. (Eventualii poli sau zerouri reali se pot grupa n
perechi, obt inand tot ltre de ordinul 2.) Schema de implementare corespunzatoare
formei (2.47) este o conexiune serie a N/2 scheme de tipul celor din gura 2.19,
care se numeste implementare cu sect iuni de ordinul 2. O astfel de implementare
este n general mai robusta decat cele directa sau transpusa (din punctul de vedere
al sensibilitat ii la erori care afecteaza coecient ii ltrului).
Filtre FIR cu faz a liniar a. Coecient ii acestor ltre sunt (anti)simetrici, ceea ce
permite reducerea numarului de nmult iri. Spre exemplu, schema de implementare
a ltrului FIR de tip II (2.37) este prezentata n gura 2.20(pastram notat ia B(z)
pentru ltru). Schema se bazeaza pe scrierea ecuat iei cu diferent e corespunzatoare
(2.37) n forma
y[n] = b
0
(x[n] +x[n M]) +b
1
(x[n 1] +x[n M + 1]) +. . .
+bM1
2
_
x
_
n
M1
2

+x
_
n
M+1
2
_
.
2.6. IMPLEMENTAREA FILTRELOR 67

x[n]

z
1
z
1
z
1
z
1

-
`
`
`
`
`
`
`
`
`
`
`
`

y[n]



b
0
bM3
2
b
1
bM1
2

z
1





Figura 2.20: Implementarea unui ltru FIR cu faza liniara, de tip II.
Sunt necesare doar (M + 1)/2 nmult iri, cate una pentru ecare coecient distinct
al ltrului. Numarul de adunari si de elemente de ntarziere este acelasi ca pentru
schema standard din gura 2.15.
Probleme propuse
PP 2.6.1 Desenat i scheme de implementare a ltrelor FIR, respectiv AR, n forma
transpusa. Demonstrat i corectitudinea lor, scriind ecuat iile cu diferent e corespun-
zatoare.
PP 2.6.2 Comparat i numarul de operat ii necesar schemelor directa, transpusa si
cu sect iuni de ordinul 2. Este vreuna mai avantajoasa din acest punct de vedere ?
PP 2.6.3 Desenat i scheme eciente de implementare pentru ltrele FIR cu faza
liniara de tip I, III, IV. Care sunt deosebirile ntre implementarile ltrelor simetrice
si antisimetrice ?
68 CAPITOLUL 2. SISTEME
Capitolul 3
Esantionare
3.1 Esantionare (conversie analogic-numeric)
Denit ia 3.1 Un semnal n timp continuu este o funct ie x
a
: R R. Not am
x
a
(t) valoarea semnalului n momentul t R. (Aceeasi notat ie poate folosit a
pentru ntreg semnalul.)
Mai departe, vom numi x
a
semnal analogic sau semnal continuu (chiar daca
funct ia x
a
nu este continua), cu scopul de a-l diferent ia de semnalele discrete studi-
ate anterior. (O alta denumire utilizata este cea de semnal continual.) Vom studian
continuare esantionarea, adica transformarea unui semnal analogic ntr-unul discret
prin reducerea suportului semnalului de la R la Z.
Denit ia 3.2 Fie x
a
(t) un semnal analogic si {t
n
}
nZ
, o mult ime num arabil a de
valori reale distincte ordonate, i.e. t
n
< t
m
dac a n < m. Esantionarea este trans-
formarea semnalului x
a
(t) n semnalul discret x[n] denit prin
x[n] = x
a
(t
n
). (3.1)
Esantionarea uniforma este denit a de relat ia
x[n] = x
a
(nT), (3.2)
unde T > 0 este perioada de esantionare. (Deci, se ia t
n
= nT n (3.1) pentru a
obt ine (3.2).)
Un exemplu de semnal analogic esantionat uniform si neuniform este prezentat
n gura 3.1. Din punct de vedere practic, esantionarea uniforma este mult mai
importanta, de aceea ne vom ocupa doar de ea n continuare. Deoarece efectul
temporal al esantionarii este evident, vom studia mai departe efectul ei asupra
spectrului semnalului.
Spectrul unui semnal analogic x
a
(t) este transformata Fourier a semnalului,
adica
X
a
() =
_

x
a
(t)e
jt
dt, R. (3.3)
69
70 CAPITOLUL 3. ESANTIONARE
t
T 2T nT
x
a
(t)
t
t
1
t
2
t
n
x
a
(t)
n
1 2 n
x[n]
n
1 2 n
x[n]
Figura 3.1: Sus: un semnal analogic esantionat uniform (stanga) si neuniform
(dreapta). Jos: semnalele discrete obt inute.
Presupunem ca semnalul x
a
(t) are energie nita, astfel ca transformata sa Fourier
exista. Convenim sa notam R frecvent a n domeniul analogic si [, ]
frecvent a n domeniul discret. Spectrul semnalului esantionat este transformata
Fourier (1.10)
X() =

n=
x[n]e
jn
.

In continuare, cautam raspunsul unor ntrebari foarte naturale:


Care este relat ia ntre X
a
() si X() ?
Ce (din spectrul semnalului analogic) se pierde prin esantionare ?
Cand nu se pierde nimic ? (Este posibil acest caz ?)
Teorema 3.3 Fie x
a
(t) un semnal analogic cu energie nit a si x[n] semnalul dis-
cret obt inut din x
a
prin esantionare cu perioada T.

Intre spectrele celor dou a sem-
3.1. ESANTIONARE (CONVERSIE ANALOGIC-NUMERIC) 71
nale are loc relat ia
X() =
1
T

=
X
a
_
+ 2
T
_
, [, ]. (3.4)
Demonstrat ie. Folosind (3.2) si expresia transformatei Fourier inverse pentru un
semnal analogic, putem scrie
x[n] = x
a
(nT) =
1
2
_

X
a
()e
jnT
d
=
1
2

=
_
(2+1)/T
(21)/T
X
a
()e
jnT
d.
Mai departe, cu substitut iile succesive + 2/T si
= /T, (3.5)
obt inem
x[n] =
1
2

=
_
/T
/T
X
a
( + 2/T)e
jnT
d
=
1
2
_

1
T

=
X
a
_
+ 2
T
_
e
jn
d.
Comparam ultima relat ie de mai sus cu transformata Fourier inversa a spectrului
semnalului discret x[n], anume
x[n] =
1
2
_

X()e
jn
d,
si egalitatea (3.4) rezulta prin identicare.
Observat ia 3.4 Din egalitatea (3.4) se observa ca, pentru o frecvent a xata,
spectrul X() al semnalului esantionat este o suma innita de valori X
a
(

), cu

[(2 1)/T, (2 + 1)/T], Z. Distingem doua situat ii importante.


1. Fie
N
= /T. Presupunem ca semnalul analogic are spectrul limitat la
banda [
N
,
N
], deci X
a
() = 0, pentru || >
N
.

In acest caz, egalitatea (3.4)
se reduce la
X() =
1
T
X
a
(/T), [, ], (3.6)
deci spectrul semnalului esantionat este esent ialmente egal cu cel al semnalului ana-
logic. Frecvent a
N
, egal a cu jum atatea frecvent ei de esantionare
e
= 2/T, se
numeste frecvent a Nyquist. Prezentam n gura 3.2 spectrul unui semnal analogic
cu banda de frecvent a limitata la frecvent a Nyquist, precum si spectrul (periodic)
al semnalului esantionat.
2. Daca spectrul semnalului analogic se ntinde dincolo de frecvent a Nyquist,
atunci spectrul semnalului esantionat nu mai este, n general, egal cu cel al sem-
nalului analogic. Spre deosebire de cazul anterior, suma din (3.4) cont ine mai mult
de un termen. Apare fenomenul de aliere (engl. aliasing), ilustrat n gura 3.3.
72 CAPITOLUL 3. ESANTIONARE

2 3
|X()|
... ...

N

N
|X
a
()|
Figura 3.2: Spectrul unui semnal analogic de banda limitata (sus) si spectrul sem-
nalului esantionat (jos).

2 3
|X()|
... ...

N

N
|X
a
()|
Figura 3.3: Spectrul unui semnal analogic a carui banda depaseste frecvent a Nyquist
(sus) si spectrul semnalului esantionat, n care este vizibil fenomenul de aliere (jos).
3.1. ESANTIONARE (CONVERSIE ANALOGIC-NUMERIC) 73
Filtru
anti-aliere
(trece-jos)
Esantionare
(+ cuantizare)

x
a
(t) x[n]

Figura 3.4: Schema practica de esantionare.


Conversia analog-numeric. Schema practica de esantionare, ilustrata n gura
3.4, cont ine doua blocuri. Filtrul anti-aliere este un ltru analogic trece-jos, cu
frecvent a de taiere egala cu frecvent a Nyquist
N
=
e
/2.

In mod normal, frecvent a
de esantionare este aleasa astfel ncat spectrul semnalului analogic util x
a
(t) sa e
practic nul deasupra frecvent ei Nyquist; ltrul anti-aliere este folosit pentru a pre-
veni alierean cazul alterarii semnalului util cu zgomot denalta frecvent a, care, prin
aliere, ar modica spectrul semnalului esantionat la frecvent e joase. Al doilea bloc
din gura 3.4 efectueaza esantionarea propriu-zisa, adica operat ia (3.2). Un con-
vertor analog-numeric (CAN) mai face n plus cuantizarea semnalului esantionat;
conform cu (3.2), semnalul x[n] are valori reale; n sistemele numerice de prelu-
crare a semnalelor se utilizeaza nsa numere reprezentate ntr-un format precizat,
care permite utilizarea unei mult imi nite de valori; operat iunea de transformare
a valorilor reale n valori din aceasta mult ime nita se numeste cuantizare si va
discutata ntr-un capitol urmator.
Probleme rezolvate
PR 3.1.1 Un semnal analogic sinusoidal cu frecvent a de 1KHz este esantionat uni-
form cu perioada T = 100s. Care este frecvent a semnalului discret obt inut ?
Solut ie 1. Relat ia (3.5) dintre frecvent ele continue si cele discrete este liniara.
Aplicam regula de trei simpla. Avandn vedere ca frecvent ei Nyquist
N
=
e
/2 =
/T = 5KHz i corespunde frecvent a discreta , rezulta ca frecvent ei analogice
= 1KHz, i corespunde frecvent a discreta = /
N
= /5.
Solut ie 2. Perioada semnalului analogic sinusoidal este de 1ms. O perioada
a semnalului esantionat cont ine 10 esantioane, deci frecvent a acestui semnal este
2/10 = /5.
PR 3.1.2 Explicat i forma spectrului semnalului discret din gura 3.3.
Solut ie. Spectrul se calculeaza ca n relat ia (3.4). Spectrul semnalului analogic
din gura 3.3 se mparte n trei part i, corespunzatoare intervalelor (3
N
,
N
],
(
N
,
N
], (
N
, 3
N
]. Se deplaseaza (pe orizontala) gracele celor trei part i n
acelasi interval [
N
,
N
], dupa care se aduna. Gracul obt inut este cel al spec-
trului discret, pe intervalul (, ] (mai put in o scalare pe verticala, pentru a lua
n considerare factorul 1/T din (3.4)). Desenul din gura 3.3 mai pune n evident a
si periodicitatea spectrului unui semnal discret.
74 CAPITOLUL 3. ESANTIONARE
Probleme propuse
PP 3.1.1 Consideram semnalul analogic x
a
(t) cu spectrul ideal
X
a
() =
_
1, daca || <
0
,
0, altfel,
cu
0
> 0 xat. Semnalul este esantionat cu frecvent a
e
. Desenat i spectrul
semnalului discret rezultat, pentru diverse valori ale lui
e
. Considerat i cel put in
cazurile
e
=
0
,
e
= 3
0
/2,
e
= 3
0
.
PP 3.1.2 Un semnal analogic x
a
(t) are spectrul de banda limitata, n sensul ca
exista o frecvent a
0
astfel ncat X
a
() = 0 pentru || >
0
. Se esantioneaza
semnalul cu frecvent a
e
= 4
0
, obt inandu-se semnalul discret x[n]. Se considera
semnalele x
1
[n] = x[2n] si x
2
[n] = x[2n+1], care cont in esantioanele pare, respectiv
impare, ale semnalului x[n]. Ce putet i spune despre spectrele semnalelor x
1
[n] si
x
2
[n] ?
PP 3.1.3 Se poate schimba ordinea operat iilor n schema din gura 3.4 ? Mai
precis, se poate face ntai esantionare si apoi aplica un ltru trece-jos discret ?
3.2 Conversie numeric-analogic
Teorema 3.3 spune ca, daca un semnal analogic cu banda de frecvent a limitata
(superior) este esantionat corect, atunci spectrele semnalelor analogic si esantionat
coincid esent ialmente. Intuitiv, acest rezultat are semnicat ia ca semnalul analogic
x
a
(t) este determinat n ntregime de semnalul esantionat x[n].

Intr-adevar, are loc
urmatorul rezultat.
Teorema 3.5 (Whittaker 1935, Shannon 1949) Fie x
a
(t) un semnal analogic si
x[n] = x
a
(nT), n Z, semnalul discret obt inut din x
a
(t) prin esantionare uniform a
cu perioada T. Presupunem c a semnalul analogic are spectrul de band a limitat a, i.e.
X
a
() = 0 pentru || >
N
, unde
N
= /T este frecvent a Nyquist. Atunci are
loc egalitatea
x
a
(t) =

n=
x[n]
sin((t nT)/T)
(t nT)/T
. (3.7)
Demonstrat ie. Putem scrie urmatorul sir de egalitat i, explicate mai jos:
x
a
(t) =
1
2
_

X
a
()e
jt
d
=
1
2
_
/T
/T
X
a
()e
jt
d
=
1
2T
_

X
a
(/T)e
jt/T
d
=
1
2
_

X()e
jt/T
d
3.2. CONVERSIE NUMERIC-ANALOGIC 75
=
1
2
_

n=
x[n]e
jn
_
e
jt/T
d
=
1
2

n=
x[n]
_

e
j(tnT)/T
d
Prima egalitate este denit ia transformatei Fourier inversa (n timp continuu). A
doua provine din condit ia de limitare a spectrului semnalului x
a
(t). A treia se
bazeaza pe schimbarea de variabila (3.5), care face legatura ntre frecvent ele con-
tinua si discreta. A patra utilizeaza relat ia (3.6) dintre spectre. A cincea foloseste
denit ia transformatei Fourier a semnalului x[n], iar pentru ultima se permuta suma
cu integrala.
T inand seama ca
1
2
_

e
j
d =
sin()

,
egalitatea (3.7) rezulta imediat.
Notand
s
n
(t) =
sin((t nT)/T)
(t nT)/T
(3.8)
funct ia sinc analogica (cu argumentul deplasat), se poate demonstra (vezi PR3.2.2)
ca
_

s
n
(t)s
m
(t)dt = T[n m]. (3.9)
Asadar, funct iile s
n
(t) sunt ortogonale. Egalitatea (3.7) poate scrisa
x
a
(t) =

n=
x[n]s
n
(t)
si are semnicat ia ca orice semnal analogic cu spectru limitat poate reprezentat
n baza ortogonala (numarabila !) formata de funct iile sinc (3.8), pentru un T
convenabil ales.
Convertorul numeric-analogic (CNA) ideal. Egalitatea (3.7) poate interpre-
tata prin schema din gura 3.5. Formatorul de impulsuri transforma semnalul
discret x[n] n semnalul analogic
x
i
(t) =

n=
x[n](t nT), (3.10)
i.e. ntr-o suma de impulsuri echidistante, ca n gura 3.6. (Impulsul Dirac x[n](t
nT) are nalt ime innita, dar este gurat printr-o sageata de amplitudine x[n].)
Filtrul analogic H
tj
() este un ltru trece-jos ideal cu banda de trecere [0,
N
],
i.e.
H
tj
() =
_
T, pentru ||
N
,
0, pentru || >
N
.
(3.11)
76 CAPITOLUL 3. ESANTIONARE
Formator
de impulsuri
Filtru
trece-jos ideal
H
tj
()

x[n] x
i
(t) x
a
(t)
Figura 3.5: Convertorul numeric-analogic ideal.
n
1 2 3 4
x[n]
...
t
T 2T 3T 4T
x
i
(t)
...
Figura 3.6: Funct ionarea formatorului de impulsuri din gura 3.5. Stanga: semnalul
discret de intrare. Dreapta: semnalul analogic de iesire.
Demonstram n continuare corectitudinea schemei din gura 3.5. Notand h
tj
(t)
raspunsul la impuls al acestui ltru si t inand seama de (3.10), putem scrie
x
a
(t) =
_

x
i
()h
tj
(t )d =

n=
x[n]h
tj
(t nT). (3.12)
Prin identicare cu (3.7) rezulta imediat
h
tj
(t) =
sin(t/T)
t/T
, (3.13)
care este ntr-adevar raspunsul la impuls al ltrului ideal (3.11); vezi PR3.2.1.
Raspunsul la impuls (3.13) are suport innit bilateral, ceea ce se vede si din
relat ia (3.7), care descrie modul de refacere a semnalului analogic din cel esantionat.
Asadar, convertorul numeric-analogic ideal are doar important a teoretica.

In prac-
tica, se folosesc scheme simple care aproximeaza comportarea CNA din gura 3.5.
Interpolare de ordinul zero. Un mijloc simplu de transformare a unui semnal dis-
cret (esantionat) x[n] ntr-unul analogic, respectand relat ia (3.2), este de a ment ine
semnalul constant pe durate egale cu perioada de esantionare T, ca n gura 3.7.
Semnalul obt inut este
x
0
(t) = x[t/T], (3.14)
3.2. CONVERSIE NUMERIC-ANALOGIC 77
t
nT (n+1)T
x
0
(t)
... ...
Figura 3.7: Funct ionarea unui interpolator de ordin zero.
unde este funct ia parte ntreaga cu rotunjire inferioara. Se observa imediat
ca x
0
(t) = x[n] pentru t [nT, (n + 1)T). Semnalul x
0
(t) este o aproximare a
semnalului analogic x
a
(t), refacut ideal ca n (3.7). Pentru a avea o imagine n
frecvent a a calitat ii aproximarii, nlocuim, n gura 3.5, ltrul ideal H
tj
(), cu
un ltru H
0
(), astfel ncat la iesire sa se obt ina semnalul x
0
(t). Notand h
0
(t)
raspunsul la impuls al ltrului H
0
(), prin analogie cu (3.12) rezulta
x
0
(t) =

n=
x[n]h
0
(t nT).
Aceasta relat ie trebuie sa e identica cu (3.14), i.e. raspunsul la impuls este (vezi
gura 3.8)
h
0
(t) =
_
1, pentru t [0, T),
0, altfel.
(3.15)
Raspunsul n frecvent a este
H
0
() =
_
T
0
e
jt
dt =
2 sin(T/2)

e
jT/2
. (3.16)
Amplitudinea raspunsului, |H
0
()|, este desenata n dreapta gurii 3.8. Se observa
caracterul trece-jos al raspunsului, care aproximeaza grosier raspunsul ideal (3.11).
Desigur, alegerea altor ltre n locul lui H
0
() poate furniza aproximari mai bune.
Un exemplu este interpolatorul de ordinul unu, descris n problema PR3.2.3.
Probleme rezolvate
PR 3.2.1 Demonstrat i ca raspunsul la impuls al ltrului trece-jos ideal (3.11) are
forma (3.13).
78 CAPITOLUL 3. ESANTIONARE
t
T
h
0
(t)
1

2/T 4/T
|H
0
()|
T
Figura 3.8: Filtrul de interpolare de ordinul zero: raspunsul la impuls (stanga) si
amplitudinea raspunsului n frecvent a (dreapta).
Solut ie. Aplicand transformata Fourier inversa (n timp continuu), obt inem
h
tj
(t) =
1
2
_

H()e
jt
d =
T
2
_
N
N
e
jt
d
=
T
2jt
e
jt

N
N
=
sin(
N
t)
t/T
. (3.17)

Inlocuind
N
= /T rezulta (3.13).
PR 3.2.2 Demonstrat i egalitatea (3.9), care arata ortogonalitatea funct iilor sinc
analogice.
Solut ie. Din problema precedenta stim ca transformata Fourier a funct iei sinc
s
0
(t) este ltrul trece-jos ideal S
0
() = H
tj
() din (3.11).

In plus, daca x(t) este
un semnal analogic si X() transformata sa Fourier, atunci avem egalitatea
TF(x(t )) =
_

x(t )e
jt
dt = e
j
X().
Observand ca s
n
(t) = s
0
(t nT) si folosind egalitatea Parseval (A.6) obt inem
_

s
0
(t nT)s
0
(t mT)dt =
1
2
_

e
jnT
S
0
()e
jmT
S
0
()d
=
1
2
_
/T
/T
T
2
e
j(mn)T
d = T[mn],
adica egalitatea (3.9).
PR 3.2.3 (Interpolare de ordinul unu) Un semnal discret x[n] poate trans-
format ntr-unul continuu x
1
(t), prin interpolare de ordinul unu, asa cum se arata
3.2. CONVERSIE NUMERIC-ANALOGIC 79
n gura 3.9, unind cu segmente de dreapta valorile semnalului discret. Semnalul
obt inut este
x
1
(t) =
(t nT)x[n + 1] + ((n + 1)T t)x[n]
T
, t [nT, (n + 1)T). (3.18)
Procedand analog cu cazul interpolarii de ordinul zero si notand H
1
() ltrul care
aproximeaza ltrul ideal H
tj
() din gura 3.5, demonstrat i ca raspunsul la impuls
al ltrului este
h
1
(t) =
_
1 |t|/T, pentru |t| T,
0, altfel,
(3.19)
iar raspunsul n frecvent a este
H
1
() =
4 sin
2
(T/2)
T
2
=
1
T
|H
0
()|
2
, (3.20)
unde H
0
() este raspunsul n frecvent a (3.16) al interpolatorului de ordin zero. Cele
doua raspunsuri sunt ilustrate n gura 3.10.
Apreciat i calitatea interpolatorului de ordin unu (comparativ cu cel de ordin
zero) si comentat i eventuale dicultat i de implementare.
Solut ie. Expresia (3.19) a raspunsului la impuls se demonstreaza identicand
denit ia (3.18) a interpolatorului, rescrisa astfel
x
1
(t) =
1
T
{(t (n + 1)T +T)x[n + 1] + (t +nT +T)x[n]},
cu relat ia (analoaga cu (3.12))
x
1
(t) =

n=
x[n]h
1
(t nT).
Calculand transformata Fourier a raspunsului la impuls obt inem
H
1
() =
_
T
T
(1 |t|/T)e
jt
dt =
e
jt
j

T
T

1
T
_
T
0
t(e
jt
+ e
jt
)dt
=
2 sin(T)


2
T
_
T
0
t cos(t)dt. (3.21)
Un calcul elementar arata ca
_
T
0
t cos(t)dt =
T sin(T)


2 sin
2
(T/2)

2
,
si deci (3.20) rezulta imediat.

In mod evident, interpolatorul de ordin unu are o atenuare mai buna decat
cel de ordin 0, precum si o zona de tranzit ie mai abrupta. Pe de alta parte, asa
cum era de asteptat, avem H
1
(0) = H
0
(0) = T. Raspunsul la impuls h
1
(t) arata
ca interpolatorul de ordin 1 este necauzal. Totusi, introducand o ntarziere T, el
devine cauzal si poate astfel implementat.
80 CAPITOLUL 3. ESANTIONARE
t
nT t (n+1)T
x
1
(t)
... ...
Figura 3.9: Funct ionarea unui interpolator de ordin unu.
Probleme propuse
PP 3.2.1 Construim un interpolator de ordinul zero nlocuind relat ia de funct io-
nare (3.14) cu
x
0
(t) = x[[t/T]],
unde [] este partea ntreaga prin rotunjire (la cel mai apropiat ntreg). Desenat i un
exemplu de funct ionare a acestui interpolator. Calculat i raspunsurile lui la impuls
si n frecventa.
PP 3.2.2 Fie interpolatorul care, avand la intrare semnalul discret x[n], are iesirea
x
m
(t) =
1
2
(x[t/T] +x[t/T 1]) .
Desenat i un exemplu de funct ionare a acestui interpolator. Calculat i raspunsurile
lui la impuls si n frecventa. Poate el un interpolator util ? Comparat i-l cu
interpolatorul de ordinul zero.
3.3 Schimbarea frecvent ei de esantionare

In aceasta sect iune vomstudia modul n care se poate schimba frecvent a de esantionare
a unui semnal analogic x
a
(t), dispunand numai de un semnal discret x[n], obt inut
printr-o esantionare anterioara din semnalul x
a
(t). Mai precis, notand T perioada
primei esantionari (deci x[n] = x
a
(nT)) si T
1
noua perioada de esantionare, cautam
semnalul discret y[n] astfel ncat
y[n] = x
a
(nT
1
). (3.22)
Deoarece dispunem doar de semnalul x[n], si nu de semnalul analogic x
a
(t), obt inerea
egalitat ii n (3.22) este n general imposibila. Totusi, cu unele condit ii suplimentare,
3.3. SCHIMBAREA FRECVENT EI DE ESANTIONARE 81
t
T T
h
1
(t)
1

2/T 4/T
|H
1
()|
T
Figura 3.10: Filtrul de interpolare de ordinul unu: raspunsul la impuls (stanga) si
amplitudinea raspunsului n frecvent a (dreapta).
se pot obt ine bune aproximari, nu neaparat n sensul (3.22), ci n sensul ca spec-
trele semnalelor y[n] si x[n] coincid sau sunt foarte apropiate unul de celalalt. Una
dintre condit ii este ca raportul T/T
1
sa e un numar rat ional, ai carui numarator
si numitor sa aiba, de preferint a, valori relativ mici. Cele mai simple cazuri sunt
cele n care unul dintre rapoartele T/T
1
sau T
1
/T este ntreg. Acestea vor tratate
primele.

In cele ce urmeaza, vom numi x[n] semnalul init ial iar y[n] semnalul reesantionat.
Operat ia de schimbare a frecvent ei de esantionare apare la conversii de format
(de exemplu, se creste frecvent a de esantionare a unor nregistrari vechi, pentru
adaptarea la noi standarde), la transferul ntre sisteme care utilizeaza rate diferite
de esantionare etc.
3.3.1 Decimare

In cazul n care T
1
/T = M N, frecvent a de esantionare se reduce de M ori.
Relat ia ntre semnalul reesantionat si cel init ial este
y[n] = x[Mn]. (3.23)
Sistemul care realizeaza aceasta operat ie de subesantionare se numeste decimator cu
factorul M; n mod tradit ional, operat ia de decimare se noteaza cu M, asa cum se
vede n gura 3.11; funct ionarea unui decimator cu factorul 2 este ilustrata n gura
3.12. Suntem interesat i n a aa relat ia dintre spectrele semnalelor reesantionat si
init ial.
Teorema 3.6 Fie x[n] un semnal discret cu energie nit a si y[n] semnalul discret
obt inut prin decimare cu factorul M ca n (3.23).

Intre spectrele celor dou a semnale
are loc relat ia
Y () =
1
M
M1

=0
X
_
+ 2
M
_
. (3.24)
82 CAPITOLUL 3. ESANTIONARE
M

x[n] y[n] = x[Mn]

Figura 3.11: Reprezentarea unui decimator cu factorul M.


n
...
x[n]
0 2 4 6 8
n
...
y[n]
0 1 2 3 4
Figura 3.12: Funct ionarea unui decimator cu factorul 2; n stanga, semnalul de
intrare x[n]; n dreapta, semnalul de iesire y[n].
Demonstrat ie. Pentru n Z are loc egalitatea
M1

=0
e
j2n/M
=
_
M, daca n mod M = 0,
0, altfel,
(3.25)
demonstrata n PR3.3.1. Termenul drept din (3.24) poate scris
1
M
M1

=0
X
_
+ 2
M
_
=
1
M
M1

=0

n=
x[n]e
j(+2)n/M
=
1
M

n=
x[n]e
jn/M
M1

=0
e
j2n/M
(3.25)
=

n=
x[n]e
jn/M
[n mod M]
nMn
=

n=
x[Mn]e
jn
.
Ultimul termen este chiar Y (), ceea ce demonstreaza (3.24).
Observat ia 3.7 Analogia dintre relat iile (3.4) si (3.24) este evidenta; prima in-
dica transformarea spectrului unui semnal analogic prin esantionare, a doua arata
transformarea spectrului unui semnal discret dupa subesantionare. Din (3.24) se
3.3. SCHIMBAREA FRECVENT EI DE ESANTIONARE 83
observa ca, pentru o frecvent a xata, spectrul Y () al semnalului decimat cu
factorul M este o suma de M valori ale spectrului semnalului init ial. Mai precis,
pentru a obt ine Y () pe intervalul [, ], se ia spectrul X() pe ecare interval
[(2 1)/M, (2 +1)/M], = 0 : M1, se deplaseaza la stanga pentru a coincide
cu [/M, /M], se expandeaza n frecvent a cu factorul M, dupa care se aduna
cele M spectre astfel obt inute. Distingem doua situat ii importante.
1. Daca semnalul init ial are spectrul limitat la banda [/M, /M], deci X() =
0 pentru /M < || ], atunci egalitatea (3.24) se reduce la
Y () =
1
M
X(/M), [, ], (3.26)
deci spectrul semnalului decimat are aceeasi forma ca spectrul semnalului init ial,
dar expandata pe ntreg intervalul [, ]. Prezentam n gura 3.13 ilustrarea
acestei transformari. Subliniem ca spectrele celor dou a semnale discrete corespund
aceluiasi spectru al semnalului analogic din care a fost obt inut x[n] (evident, cu
condit ia ca frecvent a de esantionare init iala
e
sa fost de cel put in 2M ori mai
mare decat banda de frecvent a a semnalului analogic; i.e. frecvent a de esantionare

e
/M, corespunzatoare semnalului decimat, e nca mai mare decat dublul benzii
de frecvent a a semnalului analogic, ceea ce asigura absent a alierii).
2. Daca spectrul semnalului init ial se ntinde dincolo de frecvent a /M, atunci
spectrul semnalului decimat nu mai are, n general, aceeasi forma ca spectrul sem-
nalului init ial. Apare fenomenul de aliere, ilustrat n gura 3.14.
Pentru a evita alierea (dar afectand spectrul init ial), se utilizeaza un ltru trece-
jos care taie frecvent ele superioare lui /M. Schema de reducere a frecvent ei de
esantionare cu factorul M are atunci aspectul din gura 3.15.
3.3.2 Interpolare (discreta)
Trecem acum la cazul T/T
1
= M N, adica cel n care frecvent a de esantionare
creste de M ori. Asadar, ntre ecare doua esantioane ale semnalului x[n] apar
M 1 esantioane noi. Interpolatorul (discret) este sistemul care atribuie valoarea
zero esantioanelor noi, deci funct ioneaza dupa regula
y[n] =
_
x[n/M], daca n mod M = 0,
0, altfel.
(3.27)
Operat ia de interpolare cu factorul M se noteaza cu M, asa cum se vede n gura
3.16; funct ionarea unui interpolator este ilustrata n gura 3.17. Relat ia dintre
spectrele semnalelor init ial si interpolat este data de urmatoarea teorema.
Teorema 3.8 Fie x[n] un semnal discret cu energie nit a si y[n] semnalul dis-
cret obt inut prin interpolare cu factorul M ca n (3.27).

Intre spectrele celor dou a
semnale are loc relat ia
Y () = X(M). (3.28)
84 CAPITOLUL 3. ESANTIONARE

2 3
|Y()|
1/M
... ...

/M /M 2 3
|X()|
1
... ...
Figura 3.13: Spectrul unui semnal discret x[n] cu banda limitata la [/M, /M]
(sus) si spectrul semnalului decimat y[n] = x[Mn] (jos).

/M /M 2 3
|X()|
1
... ...

2 3
|Y()|
1/M
... ...
Figura 3.14: Spectrul unui semnal discret a carui banda depaseste frecvent a /M
(sus) si spectrul semnalului decimat, n care este vizibil fenomenul de aliere (jos).
3.3. SCHIMBAREA FRECVENT EI DE ESANTIONARE 85
Filtru anti-aliere
trece-jos, cu frecvent a
de taiere /M
Decimare
M

x[n] y[n]

Figura 3.15: Schema practica de reducere a frecvent ei de esantionare cu factorul


M N.
M

x[n] y[n]

Figura 3.16: Reprezentarea unui interpolator cu factorul M.


Demonstrat ie. Transformata Fourier a semnalului interpolat este
Y ()
def
=

n=
y[n]e
jn
(3.27)
=

k=
x[k]e
jMk
= X(M),
ceea ce demonstreaza (3.28).
Observat ia 3.9 Relat ia (3.28) arata ca spectrul semnalului interpolat, pe inter-
valul [, ], este obt inut prin alaturarea a M copii ale unei perioade a spectrului
semnalului init ial; ecare copie este comprimata de M ori. Figura 3.18 ilustreaza
acest fenomen, numit replicare (engl. replication, imaging).
Pentru a pastra forma spectrului init ial, se utilizeaza un ltru trece-jos care taie
frecvent ele superioare lui /M, deci elimina replicile identice cu cea din banda de
frecvent a de baza [/M, /M]; un exemplu de aspect al spectrului dupa operat ia
de ltrare este prezentat n gura 3.18, jos; deoarece ltrarea elimina cele M 1
replici ale spectrului din afara benzii de baza, ltrul trebuie sa aiba o amplicare
egala cu M, pentru a conserva energia semnalului. Schema de crestere a frecvent ei
de esantionare cu factorul M are aspectul din gura 3.19.
Filtru Nyquist. Filtrul anti-replicare din gura 3.19 (numit curent ltru de
interpolare) este de obicei un ltru FIR simetric
H(z) =
K

k=K
h[k]z
k
. (3.29)
Notand v[n] = x[n] M semnalul de la intrarea ltrului, iesirea schemei de inter-
polare este
y[n] =
n+K

k=nK
v[k]h[n k]. (3.30)
86 CAPITOLUL 3. ESANTIONARE
n
...
x[n]
0 1 2 3 4
n
...
y[n]
0 2 4 6 8
Figura 3.17: Funct ionarea unui interpolator cu factorul 2; n stanga, semnalul de
intrare x[n]; n dreapta, semnalul de iesire y[n].


|X()|
1
... ...

/M /M
|Y()|
1
... ...

/M /M
M
... ...
Figura 3.18: Spectrul unui semnal discret x[n] (sus), spectrul semnalului interpolat
conform (3.27) (mijloc) si spectrul semnalului interpolat, dupa aplicarea unui ltru
trece-jos cu frecvent a de taiere /M si amplicare M (jos), cu M = 3.
Filtru anti-replicare:
trece-jos, cu frecvent a
de taiere /M
amplicare M
Interpolare
M

x[n] y[n]

Figura 3.19: Schema practica de crestere a frecvent ei de esantionare cu factorul


M N.
3.3. SCHIMBAREA FRECVENT EI DE ESANTIONARE 87
n
v[n]
0 2 4 6 8
k
h[k]
4 2 0 2 4
n
y[n]
0 2 4 6 8
Figura 3.20: Sus: semnal interpolat cu factorul M = 2. Mijloc: raspuns la impuls
al unui ltru Nyquist. Jos: semnalul la iesirea din ltru.
Esantionul curent al semnalului de iesire este obt inut din 2K+1 esantioane ale sem-
nalului v[n] situate ntr-o fereastra simetrica n jurul esantionului curent. Desigur,
ltrul devine cauzal prin introducerea unei ntarzieri egale cu K.
Un ltru (3.29) este numit Nyquist daca are proprietatea
h[Mk] = [k], k Z. (3.31)
Aceasta proprietate face ca n (3.30) sa se obt ina
y[nM] = v[nM] = x[n]. (3.32)
Asadar, esantioanele semnalului init ial x[n] se regasesc printre cele ale semnalului
reesantionat y[n]. Figura 3.20 ilustreaza comportarea unui ltru Nyquist, pentru
M = 2.

In partea de sus este reprezentat semnalul v[n] = x[n] 2.

In mijloc
se aa raspunsul la impuls al ltrului Nyquist, care respecta condit ia (3.31). Jos
este reprezentat semnalul de iesire y[n] = v[n] h[n], obt inut prin convolut ia celor
doua semnale precedente. Esantioanele pare din y[n] si v[n] sunt egale; esantioanele
impare din y[n] se gasesc (ca valoare) ntre cele pare alaturate (asa cum este intuitiv
corect pentru un semnal a carui frecvent a de esantionare creste de doua ori).
3.3.3 Schimbarea frecvent ei de esantionare cu un factor rat ional
Cazul cel mai general este acela n care T
1
/T = M/N, cu M, N N; frecvent a
de esantionare creste de N/M ori (mai precis, creste atunci cand N > M si scade
cand N < M). Aceasta operat ie de reesantionare se realizeaza prin interpolarea
88 CAPITOLUL 3. ESANTIONARE
Filtru trece-jos
frecvent a de
taiere min(/N, /M)
amplicare N

x[n]

N

y[n]
M
Figura 3.21: Schema practica de crestere a frecvent ei de esantionare cu factorul
N/M, cu M, N N.
semnalului init ial x[n] cu factorul N, urmata de decimarea cu factorul M a sem-
nalului interpolat. Schema efectiva de implementare are aspectul din gura 3.21.
Conectand n serie interpolatorul din gura 3.19 si decimatorul din gura 3.15, ob-
servam ca cele doua ltre ideale din schemele respective pot nlocuite cu ltrul
unic din gura 3.21; acest ltru mosteneste amplicarea N de la interpolare si
frecvent a de taiere minima ntre /N (interpolare) si /M (decimare).
Probleme rezolvate
PR 3.3.1 Demonstrat i egalitatea (3.25). (Aceasta este o relat ie elementara ntre
radacinile de ordinul M ale unitat ii.)
Solut ie. Daca n mod M = 0, atunci e
j2n/M
= 1, pentru orice . Altfel, avem
M1

=0
e
j2n/M
=
1 e
j2n
1 e
j2n/M
= 0,
deoarece e
j2n
= 1.
PR 3.3.2 Un semnal analogic x
a
(t) cu banda de frecvent a de 10Hz (n sensul ca
X
a
() = 0, pentru > 10Hz) este esantionat cu frecvent a
e
= 30Hz, obt inandu-se
semnalul discret x[n]. Ulterior, se doreste modicarea frecvent ei de esantionare, dis-
punand doar de semnalul x[n]. Care sunt valorile factorului de crestere a frecvent ei
de esantionare pentru care nu apare fenomenul de aliere ?
Solut ie. Frecvent a de esantionare minima admisibila pentru semnalul x
a
(t) este

e
= 20Hz, astfel ncat frecvent a Nyquist asociata
N
=
e
/2 sa coincida cu
banda de frecvent a a semnalului.

In consecint a, factorul de crestere a frecvent ei de
esantionare trebuie sa e cel put in 20/30 = 2/3 (ceea ce corespunde cu scaderea
frecvent ei de esantionare de la 30Hz la 20Hz). O limita superioara nu exista (poate
doar, eventual, din motive practice).
PR 3.3.3 De ce, la cresterea frecvent ei de esantionare cu factorul N/M, nu se face
nt ai decimarea cu factorul M si apoi interpolarea cu factorul N ?
Solut ie. Pentru ca decimarea sa nu produca aliere, banda de frecvent a a sem-
nalului x[n] trebuie sa e mai mica de /M. Aceasta este o condit ie extrem de
3.3. SCHIMBAREA FRECVENT EI DE ESANTIONARE 89
restrictiva, mai ales daca N/M > 1, deci se doreste cresterea efectiva a frecvent ei
de esantionare; n acest caz, efectuarea ntai a interpolarii nu impune nici un fel de
restrict ii.
Mai mult, presupunand ca banda de frecvent a a semnalului x[n] respecta condit ia
de mai sus, schema de implementare practica ar cont ine doua ltre, nu doar unul
ca n gura 3.21.
Probleme propuse
PP 3.3.1 Fie x[n] un semnal discret de banda /2, i.e. X() = 0, pentru /2 <
|| . Presupunand ca X() = 1 pentru || /2, desenat i spectrele semnalelor
obt inute din x[n] prin cresterea frecvent ei de esantionare cu factorii 3/2, 2, respectiv
3.
Ghid Matlab
Fie x un semnal cu suport nit. Semnalul y obt inut din x conform schemei de
decimare cu factorul M din gura 3.15 se calculeaza cu
>> y = decimate(x,M)
Semnalul obt inut conform schemei de interpolare cu factorul M din gura 3.19 se
calculeaza cu
>> y = interp(x,M)
Schimbarea frecvent ei de esantionare cu factorul N/M, implementata ca n gura
3.21, se realizeaza cu
>> y = upfirdn(x,h,N,M)
unde vectorul h cont ine coecient ii unui ltru FIR trece-jos. O alta funct ie cu
acelasi scop, n care ltrul nu mai trebuie precizat de utilizator, se apeleaza cu
>> y = resample(x,N,M)
90 CAPITOLUL 3. ESANTIONARE
Capitolul 4
Proiectarea ltrelor

In acest capitol vom prezenta mai multe metode de proiectare a ltrelor FIR si IIR.
Toate aceste metode pornesc de la specicarea caracteristicilor de frecvent a dorite si
gasesc coecient ii ltrului care satisface specicat iile sau se apropie sucient de mult
de ele. Ordinul ltrului este de obicei xat dinainte. Vom presupune permanent ca
ltrele au coecient i reali.
Prima sect iune prezinta moduri posibile de specicare a performant elor. Urma-
toarele sect iuni cont in metode de proiectarentai pentru ltrele FIR, apoi pentru
cele IIRsi sunt relativ independente.
4.1 Specicarea performant elor

In general, un ltru trebuie s a lase sa treacape cat posibil nemodicatesemnale


de anumite frecvent e, si sa taiedaca se poate completsemnalele cu alte frecvent e.
Un interval de frecvent e [
1
,
2
] se numeste band a de trecere daca semnalele sinu-
soidale cu aceste frecvent e sunt aproape nealterate de ltru; un astfel de interval
se numeste band a de oprire (de t aiere, de stop) daca semnalele cu aceste frecvent e
sunt taiate sau mult atenuate de ltru. Raspunsul n frecvent a al unui ltru este
deci |H(e
j
)| 1, pentru frecvent e din banda de trecere si |H(e
j
)| 0, pentru
frecvent e din banda de oprire. Faza ltrului nu este considerata n denumirile de
mai sus; de obicei, se prefera ltrele cu faza liniara.
Filtrele ideale prezentate n gura 4.1 dau o imagine perfecta a funct iei unui
ltru, iar denumirile lor sunt sugestive: trece-jos, trece-sus, trece-banda, opreste-
banda. (Prototipuri mai complicate, n care exista cel put in doua benzi de trecere
si doua de taiere, apar uneori n practica, dar mult mai rar decat cele simple din
gura.) Asa cum am vazut n capitolul anterior, ltrele ideale nu pot implemen-
tate; ele sunt necauzale si au suport innit (fara a rat ionale), deci nu sunt utile
ca atare. Problemele de proiectare utilizeaza specicat ii care aproximeaza ltrele
ideale. Prezentam mai jos cele mai comune specicat ii, utilizand numai ltre de tip
trece-jos. Extensia la celelalte tipuri se face n general banal.
R aspuns cu tolerant e xate. Figura 4.2 prezinta specicat iile de proiectare pen-
tru un ltru trece-jos, n care se fac doua feluri de aproximari:
91
92 CAPITOLUL 4. PROIECTAREA FILTRELOR

t

1

t

1

1

2

1

1

2

1
Figura 4.1: Caracteristicile de frecvent a (amplitudine) ale ltrelor ideale: trece-jos,
trece-sus, trece-banda, opreste banda.
Raspunsul n frecvent a este precizat cu tolerant e, n sensul ca se permite o
abatere maxima a amplitudinii de la valorile ideale 1 n banda de trecere si 0
n banda de oprire. Tolerant ele sunt
b
n banda de trecere [0,
b
] si
s
n
banda de oprire [
s
, ]; valorile acestor tolerant e constituie date de proiectare.


In afara de benzile de trecere si de oprire, raspunsul n frecvent a cont ine si o
banda de tranzit ie (
b
,
s
), n care valoarea amplitudinii este indiferenta.
Problema de proiectare poate formulata n felul urmator:
F TOL. D andu-se frecvent ele
b
si
s
si tolerant ele
b
si
s
, s a se g aseasc a
un ltru care satisface cerint ele din gura 4.2. Filtrul poate avea ordin dat sau
se poate dori un ltru de ordin cat mai mic ntr-o clasa data (FIR, eventual
cu faza liniara, sau IIR).

In problema de mai sus, un ltru este declarat solut ie daca raspunsul sau se
ncadreaza n tolerant ele stabilite. Nu exista nici un criteriu de departajare a
solut iilor n afara de ordin. Totusi, chiar dispunand de o metoda de rezolvare a
problemei F TOL, nu avem garant ia ca o alta metoda n-ar furniza un ltru de
ordin mai mic. Metodele prin care un ltru este gasit ca solut ie a unei probleme de
optimizare elimina defectul de mai sus.
Proiectare prin optimizare. Se xeaza ca obiectiv o caracteristica de frecvent a,
numita r aspuns dorit. De exemplu, admit and o banda de tranzit ie, pentru un ltru
4.1. SPECIFICAREA PERFORMANTELOR 93

b

s

1
1+
b
1
b

s
Figura 4.2: Caracteristica de frecvent a (amplitudine) cu tolerant e si exemplu de
raspuns care satisface specicat iile.
trece-jos raspunsul dorit poate
D() =
_
1, pentru [0,
b
],
0, pentru [
s
, ].
(4.1)
Ne marginim cautarea la o clasa de ltre de ordin M, notata C(M) (de exemplu,
ltre FIR cu faza liniara, cu coecient i simetrici, deci de tip I sau II). Dorim sa
gasim ltrul al carui raspuns n frecvent a H() este cel mai apropiat de D(), pe
mult imea de frecvent e F = [0,
b
][
s
, ]. (

In general, F este reuniunea benzilor de


trecere si de oprire; sau, F este diferent a dintre intervalul complet [0, ] si benzile
de tranzit ie n care raspunsul ltrului nu se ia n considerare.) Distant a ntre doua
raspunsuri se masoara utilizand o norma n spat iul funct iilor denite pe F. Uzuale
sunt normele 2 si innit, pentru care obt inem problemele de proiectare urmatoare.
F OPT2. D andu-se un r aspuns dorit D() pe o mult ime de frecvent e F
[0, ], e.g. (4.1), si o clas a de ltre C(M), s a se g aseasc a ltrul H(z) din clasa
C(M) al c arui r aspuns n frecvent a H() este cel mai aproape n amplitudine
de D(), n norma 2, i.e.
min
HC(M)
_
F
[D() |H()|]
2
d. (4.2)
F OPTINF. D andu-se un r aspuns dorit D() pe o mult ime de frecvent e
F [0, ] si o clas a de ltre C(M), s a se g aseasc a ltrul H(z) din clasa C(M)
al c arui r aspuns n frecvent a H() este cel mai aproape n amplitudine de
94 CAPITOLUL 4. PROIECTAREA FILTRELOR
D(), n norma innit, i.e.
min
HC(M)
max
F
|D() |H()||. (4.3)
Observat ia 4.1 Proiectarea unui ltru prin rezolvarea problemei F OPT2 se mai
numeste si proiectare n sensul celor mai mici p atrate (CMMP). Rezolvarea prob-
lemei F OPTINF se numeste si proiectare n sens Chebyshev (citit i Cebasev).
Observat ia 4.2 Prin min
HC(M)
nt elegem minimizare dupa parametrii funct iei
de transfer H(z). De obicei, acestia sunt chiar coecient ii lui H(z). De exemplu,
daca impunem ca H(z) sa e un ltru FIR cu faza liniara de tip I, de grad M,
atunci variabilele problemei de optimizare sunt cei M/2+1 coecient i independent i
din (2.34), iar H() are forma (2.35).
Observat ia 4.3 Solut iile problemei F OPTINF au o alura specica: eroarea
|D() |H()|| (ntre raspunsul dorit si cel obt inut efectiv) maxima este atinsa
pentru mai multe frecvent e. Un exemplu de astfel de ltru de ordin M = 16, este
prezentat n gura 4.3; raspunsul dorit are forma (4.1), cu
b
= 0.25,
s
= 0.4.
Atat n banda de trecere, cat si n cea de oprire, ondulat iile raspunsului au nalt imi
egale. De altfel, un ltru ca acela din gura 4.3 se mai numeste ltru cu ondulat ii
egale (equiripple). (Terminologia graca poate completata dupa cum urmeaza.
Raspunsul din gura are mai mult i lobi, care se vad clar n gracul din dreapta,
n care amplitudinea este reprezentata n dB; cel corespunzator benzii de trecere
se numeste lob principal, iar cei din banda de oprire se numesc lobi laterali.

In
cazul solut iei unei probleme F OPTINF, lobul principal are ondulat ii egale, iar
lobii laterali au nalt imi egale.)
Spre deosebire, o solut ien sens CMMP arata can gura 4.4, unde am considerat
aceleasi date de proiectare ca mai sus. Se observa ca primul lob lateral este mai
nalt. (

In general, lobii din apropierea benzilor de tranzit ie sunt mai nalt i.) De
asemenea, ondulat iile lobului principal sunt inegale.
Observat ia 4.4

In formularile problemelor F OPT2 si F OPTINF, important a
erorii D() |H()| este aceeasi pentru toate frecvent ele. Pentru a avea erori mai
mici n anumite zone (de exemplu n banda de oprire), se poate introduce e.g. n
(4.2) o funct ie de ponderare p() > 0, astfel ncat problema de optimizare sa e
min
HC(M)
_
F
p()[D() |H()|]
2
d. (4.4)
Observat ia 4.5

In problemele F OPT2 si F OPTINF se optimizeaza doar am-
plitudinea raspunsului n frecvent a al ltrului H(z). Pentru a optimiza ntregul
raspuns n frecvent a, se alege un raspuns dorit D
c
() complex
1
si se nlocuieste e.g.
(4.2) cu
min
HC(M)
_
F
|D
c
() H()|
2
d. (4.5)
1
Pentru a evident ia mult imea n care ia valori r aspunsul dorit, vom nota ntotdeauna n felul
urm ator: D() este un r aspuns pozitiv, Dr() este real, iar Dc() este complex.
4.1. SPECIFICAREA PERFORMANTELOR 95

b

s

1

b

s

0 dB
Figura 4.3: Amplitudinea raspunsului n frecvent a al solut iei unei probleme
F OPTINF (stanga: adimensional; dreapta: dB).

b

s

1

b

s

0 dB
Figura 4.4: Amplitudinea raspunsului n frecvent a al solut iei unei probleme
F OPT2 (stanga: adimensional; dreapta: dB).
96 CAPITOLUL 4. PROIECTAREA FILTRELOR
Punerea n acest fel a problemei este utila n special pentru ltrele IIR. Raspunsurile
complexe sunt necesare n special pentru a asigura liniaritatea fazei; pentru ltrele
FIR, aceasta cerint a este ndeplinita prin impunerea (anti)simetriei coecient ilor
ltrului.
Optimizare pe o mult ime discret a de frecvent e. Pentru simplicarea calculelor,
problemele F OPT2 si F OPTINF pot tratate aproximativ, n sensul ca mult i-
mea continua de frecvent e F se nlocuieste cu o grila discreta de frecvent e G
L
F
avand L puncte (n practica L este de ordinul zecilor sau, mai degraba, sutelor).
De obicei frecvent ele
k
G
L
se aleg echidistante. Se obt in urmatoarele formulari
ale problemelor de proiectare (comparat i cu (4.2) si (4.3)):
F OPT2D. D andu-se un r aspuns dorit D(), mult imea de frecvent e discrete
G
L
= {
1
, . . . ,
L
} si o clas a de ltre C(M), s a se rezolve
min
HC(M)
1
L
L

k=1
[D(
k
) |H(
k
)|]
2
. (4.6)
F OPTINFD. D andu-se un r aspuns dorit D(), mult imea de frecvent e dis-
crete G
L
= {
1
, . . . ,
L
} si o clas a de ltre C(M), s a se rezolve
min
HC(M)
max
k=1:L
|D(
k
) |H(
k
)||. (4.7)
Factorul 1/L din (4.6) a fost pus pentru a sublinia faptul ca aproximam prin
discretizare integrala denita din (4.2).
Probleme rezolvate
PR 4.1.1 Sa presupunem ca dispunem de o procedura care rezolva problema F TOL
pentru ltre FIR, n sensul urmator: dandu-se ordinul M al ltrului, procedura e
gaseste un ltru de acest ordin care satisface cerint ele problemei, e raporteaza ca
nu exista un astfel de ltru.
Indicat i un algoritm de apelare a procedurii astfel ncat sa se gaseasca solut ia
de ordin minim (pe care o poate gasi procedura) a problemei F TOL.
Solut ie 1. Se alege o valoare init iala pentru M (dupa bunul simt al proiectantu-
lui !). Daca procedura de rezolvare a F TOL nu gaseste o solut ie, se mareste ordinul
M M +1. Daca procedura gaseste o solut ie, se micsoreaza ordinul M M 1.
Se continua pana la obt inerea solut iei de ordin minim.
Solut ie 2 (bisect ie). Se procedeaza ca mai sus, dar ordinul se mareste sau
micsoreaza cu o valoare > 1 (sucient de mare).

In momentul n care pentru
ordinul M nu exista solut ie, iar pentru M + exista (deci ordinul minim este n
intervalul M : M + ), noua ncercare se face cu M + /2. Astfel se micsoreaza
intervalul de cautare la jumatate. Se continua pana c and intervalul se reduce la o
singura valoare.
4.2. PROIECTAREA FILTRELOR FIR PRIN METODA FERESTREI 97
PR 4.1.2 Scriet i un program Matlab care, dandu-se frecvent ele
b
si
s
, calculeaza
L frecvent e echidistante care acopera mult imea F = [0,
b
] [
s
, ]. Capetele
intervalelor fac parte din cele L frecvent e.
Solut ie. Formulata astfel, problema este n general imposibil de rezolvat ! O
buna aproximat ie este nsa data de urmatoarea funct ie Matlab, n care intervalelor
[0,
b
] si [
s
, ] li se aloca un numar (n mod necesar ntreg) de frecvent e discrete
proport ional cu lungimea lor.
function w = frecv_echid( wb, ws, L )
Lb = floor( wb / (wb+pi-ws) * L );
Ls = L - Lb - 1;
Lb = Lb - 1;
w = [ 0 : wb/Lb : wb, ws : (pi-ws)/Ls : pi ];
Generalizarea la o reuniune oarecare de intervale este banala.
Probleme propuse
PP 4.1.1 Vericat i daca ltrul H(z) = 0.1 +0.2z
1
+ 0.2z
2
+0.2z
3
+ 0.2z
4
+
0.1z
5
satisface cerint ele raspunsului cu tolerant e din gura 4.2, cu
b
= 0.15,

s
= 0.35,
b
= 0.25,
s
= 0.15.
PP 4.1.2 Scriet i problema de optimizare ce rezulta daca n (4.3) se introduce o
funct ie de ponderare p(). Cu referire la ltrul trece-jos, introducem ponderea
p() =
_
1, pentru [0,
b
],
5, pentru [
s
, ].
Ce relat ie estentre eroarea maxima din banda de oprire si cea din banda de trecere ?
Desenat i un raspuns n frecvent a care sa e o solut ie plauzibila a unei probleme (4.3)
cu ponderea de mai sus.
PP 4.1.3 Aratat i ca prin rezolvarea unor probleme F OPTINF se poate aa
ntotdeauna solut ia FIR de ordin minim a unei probleme F TOL. Cum trebuie
alese ponderile n F OPTINF pentru atingerea acestui scop ?
PP 4.1.4 Desenat i amplitudinea raspunsului n frecvent a a solut iilor unor (ipotet-
ice) probleme F OPTINF si F OPTINFD cu aceleasi specicat ii (i.e. acelasi
D()). Aratat i grac de ce solut ia problemei aproximative F OPTINFD este mai
proasta (e.g. are atenuare mai mica n banda de oprire) decat solut ia problemei
F OPTINF corespunzatoare.
4.2 Proiectarea ltrelor FIR prin metoda ferestrei
Metoda ferestrei este una dintre cele mai simple proceduri de proiectare a ltrelor
FIR. Ea se bazeaza pe modularea n timp a unui raspuns ideal cu un semnal de tip
98 CAPITOLUL 4. PROIECTAREA FILTRELOR
fereastra, care are suport nit. Ordinul M al ltrului se xeaza n prealabil, iar
ltrul are forma generala (2.6):
H(z) =
M

n=0
h[n]z
n
.
Algoritmul de proiectare este urmatorul:
0. Date de proiectare: ordinul M al ltrului si amplitudinea raspunsului ideal
n frecvent a care trebuie aproximat; de exemplu, pentru un ltru trece-jos, se
precizeaza frecvent a
t
care delimiteaza benzile de trecere si de oprire.
1. Se ia ntarzierea de grup n
0
= M/2 si se calculeaza raspunsul la impuls
al ltrului ideal. De exemplu, pentru un ltru trece-jos, r aspunsul ideal n
frecvent a este (2.32)
H
id
(e
j
) =
_
e
jn0
, daca ||
t
,
0, daca
t
< || ,
iar raspunsul la impuls este (2.33)
h
id
[n] =
sin
t
(n n
0
)
(n n
0
)
.
2. Se alege o fereastra f[n] cu suport 0 : M.
3. Se calculeaza coecient ii ltrului FIR modulandn timp raspunsul ideal h
id
[n]
cu fereastra f[n], i.e. prin relat ia h[n] = h
id
[n] f[n], n = 0 : M. Eventual,
se nmult esc tot i coecient ii h[n] cu o constanta potrivit aleasa (de exemplu
astfel ncat H(1) =

M
n=0
h[n] = 1).
Observat ia 4.6 Dupa aplicarea algoritmului se traseaza raspunsul n frecvent a al
ltrului FIR obt inut si se verica daca este convenabil (de exemplu, daca satisface
condit iile impuse de o problema F TOL). Daca nu este convenabil, se poate mari
ordinul M sau se poate alege o alta fereastra f[n].
Observat ia 4.7 Raspunsul n frecvent a al ltrelor ideale (cu benzi de trecere si
de oprire) are faza strict liniar a; de aceea, raspunsul ideal la impuls h
id
[n] este
ntotdeauna simetric fat a de n
0
, vezi problema PP2.5.3.

In consecint a, daca
coecient ii ferestrei f[n] sunt simetrici n raport cu mijlocul M/2 al suportului
0 : M, atunci H(z) rezulta un ltru cu faza liniara de tip I sau II. Un ltru cu faza
neliniara ar rezulta daca s-ar alege o ntarziere n
0
= M/2.
Observat ia 4.8 Alegerea ferestrei. R aspunsul n frecvent a al ltrului H(z) poate
scris n funct ie de raspunsurile n frecvent a ale ltrului ideal si ferestrei conform
cu (1.23), i.e.
H(e
j
) =
1
2
_

H
id
(e
j
)F(e
j()
)d.
4.2. PROIECTAREA FILTRELOR FIR PRIN METODA FERESTREI 99
Pentru ca H(e
j
) sa e cat mai aproape de H
id
(e
j
), e necesar ca F(e
j
) sa e
o aproximat ie cat mai buna a impulsului unitate (continuu) (). (Cerint ele ca
fereastra sa aiba suport nit n timp si ca spectrul ei s a e cat mai concentrat n
jurul frecvent ei = 0 sunt contradictorii; vom prezenta mai tarziu principiul de
incertitudine privind localitatea n timp si frecvent a.)
Ferestre uzuale
Fereastra dreptunghiular a, cea mai simpla fereastra, ilustrata n gura 4.5, este
denita de
f
d
[n] =
_
1, daca 0 n M,
0, altfel.
(4.8)
Aplicarea ferestrei dreptunghiulare nseamna trunchierea raspunsului ideal h
id
[n].
Asa cum am vazut n problema PR1.2.4, aceasta trunchiere da nastere fenomenului
Gibbs, deci |H(e
j
)| are oscilat ii mari n apropierea frecvent elor de tranzit ie ale
raspunsului ideal n frecvent a (e.g. n apropierea frecvent ei =
t
pentru un ltru
trece-jos).
Ferestrele mai eciente prezentate mai jos au valori mai mici la marginea supor-
tului, tocmai pentru a preveni fenomenul Gibbs.
Fereastra triunghiular a (Bartlett) (gura 4.5):
f
t
[n] =
_
_
_
2n/M, daca 0 n M/2,
2 2n/M, daca M/2 n M,
0, altfel.
(4.9)
Fereastra Hanning are forma
f
Hann
[n] =
_
0.5 0.5 cos(2n/M), daca 0 n M,
0, altfel.
Se observa ca pentru aceste doua ferestre esantioanele extreme sunt nule, i.e. f[0] =
f[M] = 0, ceea ce micsoreaza suportul ferestrei. De aceea, forma utilizata n prac-
tica a ferestrei Hanning este (gura 4.6):
f
Hann
[n] =
_
0.5 0.5 cos(2
n+1
M+2
), daca 0 n M,
0, altfel.
(4.10)
Fereastra Hamming (gura 4.6):
f
Hamm
[n] =
_
0.54 0.46 cos(2n/M), daca 0 n M,
0, altfel.
(4.11)
Fereastra Blackman (gura 4.7):
f
B
[n] =
_
0.42 0.5 cos(2n/M) + 0.08 cos(4n/M), daca 0 n M,
0, altfel.
(4.12)
Fereastra Kaiser (gura 4.7):
f
K
[n] =
_
I0(

1[(nn0)/n0]
2
)
I0()
, daca 0 n M,
0, altfel,
(4.13)
100 CAPITOLUL 4. PROIECTAREA FILTRELOR
5 0 5 10 15 20
0.2
0
0.2
0.4
0.6
0.8
1
1.2
5 0 5 10 15 20
0.2
0
0.2
0.4
0.6
0.8
1
1.2
Figura 4.5: Ferestre dreptunghiulara (stanga) si triunghiulara (dreapta), pentru
M = 16.
5 0 5 10 15 20
0.2
0
0.2
0.4
0.6
0.8
1
1.2
5 0 5 10 15 20
0.2
0
0.2
0.4
0.6
0.8
1
1.2
Figura 4.6: Ferestre Hanning (stanga) si Hamming (dreapta), pentru M = 16.
unde I
0
() este funct ia Bessel de ordinul zero modicata. Parametrul permite
varierea proprietat ilor ferestrei; pentru = 0 se obt ine fereastra dreptunghiulara.
Proprietat ile n frecvent a ale ferestrelor sunt discutate n problema PR4.2.2.
Pentru ltrele simple, e.g. de tip trece-jos, exista unele metode empirice de
alegere a ordinului M si, pentru fereastra Kaiser, a parametrului , astfel ncat sa
se obt ina solut ia unei probleme F TOL (sau o buna aproximare a acesteia). Nu
vom discuta aceste metode; vezi mai departe funct iile Matlab dedicate acestui scop.
Probleme rezolvate
PR 4.2.1 Folosind metoda ferestrei, proiectat i ltre FIR trece-jos de ordin M =
16, cu frecvent a de taiere
t
= 0.4 folosind toate tipurile de ferestre descrise n
aceasta sect iune. Comparati caracteristicile de frecvent a ale ltrelor obt inute si
evaluat i calitat ile lor.
Calculat i care sunt valorile
b
si
s
ale unor probleme de tip F TOL, n care
prototipul este un ltru trece-jos cu
b
= 0.3 si
s
= 0.5, iar solut iile sunt ltrele
4.2. PROIECTAREA FILTRELOR FIR PRIN METODA FERESTREI 101
5 0 5 10 15 20
0.2
0
0.2
0.4
0.6
0.8
1
1.2
5 0 5 10 15 20
0.2
0
0.2
0.4
0.6
0.8
1
1.2
Figura 4.7: Ferestre Blackman (stanga) si Kaiser (dreapta, cu = 3), pentru
M = 16.
FIR obt inute mai sus. Ce ltru da cele mai mici valori pentru tolerant ele
b
si
s
?
Solut ie. Prezentam amplitudinea raspunsurilor n frecvent a ale ltrelor FIR
obt inute cu ferestrele dreptunghiulara, Hamming si Blackman n gura 4.8, si pe
cele obt inute cu fereastra Kaiser n gura 4.9, pentru trei valori ale parametrului ,
anume 1, 2.1 si 3. Filtrele au fost obt inute cu funct ia fir1 din Matlab (Signal Pro-
cessing Toolbox); toate ltrele sunt normate astfel ncat H(1) = 1, i.e. amplicarea
semnalelor constante este unitara. Se observa ca unele ltre (e.g. pentru fereastra
dreptunghiulara sau fereastr a Kaiser cu mic) au erori mari n benzile de trecere
si oprire, dar o banda de tranzit ie mai ngusta. Altele (e.g. Blackman sau Kaiser
cu mare) au erori mici si deci o atenuare mare n banda de oprire, dar banda
de tranzit ie mai lata. Filtrul cel mai bun este de fapt cel potrivit cerint elor unei
probleme de proiectare (nespecicate aici).

In tabelul 4.1 sunt prezentate tolerant ele problemelor F TOL ale caror solut ii
sunt ltrele proiectate. Cel mai bun rezultat a fost obt inut cu o fereastra Kaiser cu
= 2.1. (

In general, metoda ferestrei este destul de incomoda pentru rezolvarea


unor probleme cu specicat ii precise. Ea este mai potrivita cand specicat iile sunt
vagi si optimalitatea solut iei nu este necesara.)
PR 4.2.2 Sa se traseze caracteristicile de frecvent a ale ferestrelor (4.84.13), pen-
tru M = 16. Pentru fereastra Kaiser se vor alege mai multe valori ale parametrului
. Comentat i si comparat i proprietat ile n frecvent a ale ferestrelor.
Solut ie. Prezentamn gurile 4.10 si 4.11 amplitudinea raspunsurilorn frecvent a
ale ferestrelor utilizaten problema anterioara (cu alte valori ale parametrului pen-
tru fereastra Kaiser). Se observa ca toate raspunsurile au un lob principal si mai
mult i lobi laterali.

In general, lat imea lobului principal si nalt imea lobilor secun-
dari sunt n relat ie inversa, i.e. un lob principal lat e nsot it de lobi laterali put in
nalt i. Compromisul cel mai bun depinde de aplicat ie.
Note: 1. Raspunsurile au fost normate astfel ncat amplitudinea la frecvent a
nula sa e unitara. 2. Generarea raspunsurilor a fost f acuta cu funct iile Matlab
prezentate mai jos.
102 CAPITOLUL 4. PROIECTAREA FILTRELOR
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0
0.2
0.4
0.6
0.8
1
1.2
Frecventa normalizata
A
m
p
lit
u
d
in
e
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
100
90
80
70
60
50
40
30
20
10
0
10
Frecventa normalizata
A
m
p
litu
d
in
e
(
d
B
)
Figura 4.8: Caracteristici de frecvent a ale unor ltre FIR obt inute prin metoda fer-
estrei, cu M = 16 si
t
= 0.4, utilizand ferestre dreptunghiulara (linie ntrerupta),
Hamming (linie continua) si Blackman (linie-punct).

In stanga, amplicarea este
adimensionala, iar n dreapta n decibeli.
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0
0.2
0.4
0.6
0.8
1
1.2
Frecventa normalizata
A
m
p
lit
u
d
in
e
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
60
50
40
30
20
10
0
10
Frecventa normalizata
A
m
p
litu
d
in
e
(
d
B
)
Figura 4.9: Caracteristici de frecvent a ale unor ltre FIR obt inute prin metoda fer-
estrei, cu M = 16 si
t
= 0.4, utilizand ferestre Kaiser cu = 1 (linie ntrerupta),
= 2.1 (linie continua) si = 3 (linie-punct).
Fereastra drept. Hanning Hamming Blackman Kaiser Kaiser Kaiser
= 1 = 2.1 = 3

b
0.057 0.116 0.130 0.194 0.047 0.0336 0.068

s
0.103 0.119 0.131 0.197 0.078 0.0336 0.060
Tabelul 4.1: Abateri de la raspunsul optim (
b
= 0.3,
s
= 0.5) pentru ltre FIR
de ordin M = 16, proiectate prin metoda ferestrei.
4.2. PROIECTAREA FILTRELOR FIR PRIN METODA FERESTREI 103
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
100
90
80
70
60
50
40
30
20
10
0
10
Frecventa normalizata
A
m
p
lit
u
d
in
e

(
d
B
)
Figura 4.10: Caracteristici de frecvent a ale ferestrelor dreptunghiulara (linie
ntrerupta), Hamming (linie continua) si Blackman (linie-punct), pentru M = 16.
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
100
90
80
70
60
50
40
30
20
10
0
10
Frecventa normalizata
A
m
p
lit
u
d
in
e

(
d
B
)
Figura 4.11: Caracteristici de frecvent a ale ferestrelor Kaiser cu = 1 (linie
ntrerupta), = 3 (linie continua) si = 5 (linie-punct), pentru M = 16.
104 CAPITOLUL 4. PROIECTAREA FILTRELOR
PR 4.2.3 Consideram fereastra triunghiulara simetrica fat a de origine (pentru sim-
plicarea calculelor)
f[n] =
_
1
|n|
M
, daca |n| M 1,
0, altfel.
(4.14)
Demonstrat i ca transformata sa Fourier are forma
F() =
1
M
_
sin(M/2)
sin(/2)
_
2
. (4.15)
Funct ia F() se numeste nucleul Fejer (si, remarcabil, este pozitiva).
Solut ie. Folosind denit ia (1.10) putem scrie
F() =
M1

n=M+1
_
1
|n|
M
_
e
jn
.
Observam acum ca F() este de fapt suma elementelor unei matrice Toeplitz cu
e
jn
pe diagonala n (diagonala principala este numerotata cu 0); n consecint a
obt inem
F() =
1
M
M

i=1
M

=1
e
j(i)
=
1
M
M

i=1
e
ji
M

=1
e
j
=
1
M

n=1
e
jn

2
.
Calculand suma progresiei geometrice se obt ine (4.15).
Probleme propuse
PP 4.2.1 Ce semnal are transformata Fourier egala cu impulsul () ? De ce nu
poate acest semnal o fereastra ?
PP 4.2.2 Poate avea un semnal fereastra coecient ii antisimetrici (n raport cu
mijlocul suportului) ?
PP 4.2.3 Utilizand metoda ferestrei, proiectat i un ltru FIR cu M = 20, pornind
de la raspunsul ideal
H
id
(e
j
) =
_
1, daca || /2,
1/2, daca /2 < || .
PP 4.2.4 Modicat i fereastra triunghiulara (4.9) astfel ncat sa nu aiba esantioane
nule la extremitat i (i.e. f[0] = f[M] = 0). Aceeasi problema pentru fereastra
Blackman.
4.3. PROIECTAREA FILTRELOR FIR

IN SENS CMMP 105
Ghid Matlab
Un ltru FIR trece-jos se proiecteaza cu metoda ferestrei prin apelul
>> h = fir1(M, wt)
unde M este ordinul ltrului iar wt frecvent a de taiere (normalizata) a ltrului ideal
(2.32). (Frecvent ele au valori normalizate n toate apelurile funct iilor Matlab de
proiectare a ltrelor.) Implicit, funct ia fir1 utilizeaza o fereastra de tip Hamming
(4.11). De exemplu, pentru obt inerea ltrului din problema PR4.2.1, cu raspunsul
n frecvent a din gura 4.8 (fereastra Hamming), a fost folosit apelul
>> h = fir1(16, 0.4)
Aceeasi funct ie se poate utiliza pentru proiectarea unui ltru trece-sus, cu apelul
>> h = fir1(M, wt, high)
sau pentru ltre trece-banda etc. cu moduri de apel dezvaluite cititorului interesat
de comanda help fir1. Precizarea ferestrei se face cu apelul
>> h = fir1(M, wt, f)
unde f este semnalul fereastra. O fereastra de lungime N = M+1 poate generata
cu
>> f = boxcar(N)
>> f = triang(N)
>> f = hanning(N)
>> f = hamming(N)
>> f = blackman(N)
>> f = kaiser(N, beta)
obt inandu-se, n ordine, ferestrele dreptunghiulara, triunghiulara, Hanning, Ham-
ming, Blackman si Kaiser (cu parametrul ).
Funct ia kaiserordntoarce parametrii necesari rezolvarii (aproximative a) unei
probleme F TOL cu un apel la fir1, utilizand o fereastra Kaiser.
4.3 Proiectarea ltrelor FIR n sens CMMP
Cazul general: ltre fara restrict ie de faza
Ne ocupam acum de proiectarea ltrelor FIR n sensul celor mai mici patrate prin
rezolvarea problemei F OPT2 n varianta cea mai generala, n care
criteriul de optimizare este (4.5), i.e. raspunsul dorit D
c
() este complex;
nu exista nici o restrict ie asupra coecient ilor ltrului H(z) (e.g. de tip faza
liniara); asadar C(M) din (4.5) este mult imea tuturor ltrelor FIR de ordin
M.
Raspunsul n frecvent a al ltrului H(z), de ordin M xat, poate scris n forma
H(e
j
) =
M

n=0
h[n]e
jn
= h
T
e(), (4.16)
106 CAPITOLUL 4. PROIECTAREA FILTRELOR
unde
h = [ h[0] h[1] . . . h[M] ]
T
R
M+1
(4.17)
este vectorul coecient ilor ltrului (care reprezinta variabilele problemei de opti-
mizare), iar
e() = [1 e
j
. . . e
jM
]
T
C
M+1
(4.18)
este un vector cunoscut pentru orice frecvent a .
Pentru a rezolva problema (4.5), observam ca utilizand (4.16) obt inem
|H(e
j
) D
c
()|
2
= [h
T
e() D
c
()][e
H
()h D

c
()]
= h
T
e()e
H
()h 2Re[e
H
()D
c
()]h +|D
c
()|
2
.
Mai mult, matricea
e()e
H
() =
_

_
1 e
j
. . . e
jM
e
j
1
.
.
. e
j(M1)
.
.
.
.
.
.
.
.
.
.
.
.
e
jM
. . . . . . 1
_

_
= C() +jS()
are structura Toeplitz hermitica; partea sa reala
C() =
_

_
1 cos() . . . cos(M)
cos() 1
.
.
. cos((M 1))
.
.
.
.
.
.
.
.
.
.
.
.
cos(M) . . . . . . 1
_

_
(4.19)
este o matrice Toeplitz simetrica, iar partea imaginara
S() =
_

_
0 sin() . . . sin(M)
sin() 0
.
.
. sin((M 1))
.
.
.
.
.
.
.
.
.
.
.
.
sin(M) . . . . . . 0
_

_
este o matrice Toeplitz antisimetrica. Notand
g
T
() = Re[e
H
()D
c
()]
si observand ca h
T
S()h = 0 (vezi problema PP4.3.1), putem scrie
|H(e
j
) D
c
()|
2
= h
T
C()h 2g
T
()h +|D
c
()|
2
.
Asadar, ignorand termenul care nu depinde de h, problema de optimizare (4.5)
poate scrisa n forma
min
hR
M+1
h
T
__
F
C()d
_
h 2
__
F
g
T
()d
_
h. (4.20)
4.3. PROIECTAREA FILTRELOR FIR

IN SENS CMMP 107
Notam
P =
_
F
C()d, q =
_
F
g()d, (4.21)
si reamintim ca F este mult imea frecvent elor corespunzatoare benzilor de trecere
si de oprire, pe care se optimizeaza raspunsul n frecvent a. (De exemplu, pentru
un ltru trece-jos, avem F = [0,
b
] [
s
, ].) Pentru raspunsuri dorite D
c
()
simple, matricea P si vectorul q se pot calcula relativ usor, ind integrale de funct ii
trigonometrice.

In nal, putem scrie (4.5) n forma


min
hR
M+1
h
T
Ph 2q
T
h. (4.22)
Aceasta este o problema de optimizare fara restrict ii, n care criteriul este patratic.
Propozit ia 4.9 Filtrul FIR reprezent and solut ia problemei de proiectare (4.5) n
sens CMMP este
h = P
1
q. (4.23)
Demonstrat ie. Deoarece e()e
H
() 0, matricea
P = Re
__
F
e()e
H
()d
_
este pozitiv semidenita; mai mult, de fapt avem P > 0 (dar nu demonstram acest
lucru). Pentru a minimiza criteriul V (h) = h
T
Ph 2q
T
h al problemei (4.22),
anulam gradientul
V (h)
h
= 2Ph 2q,
de unde rezulta (4.23). Acest h corespunde ntr-adevar unui punct de minim
deoarece Hessianul

2
V (h)
h
2
= 2P
este pozitiv denit.

In concluzie, algoritmul de proiectare este urmatorul:


0. Date de proiectare: ordinul M al ltrului, raspunsul ideal n frecvent a D
c
()
(cu valori complexe) care trebuie aproximat si mult imea de frecvent e F pe
care se face aproximat ia.
1. Se calculeaza matricea P si vectorul q din (4.21).
2. Se calculeaza h = P
1
q.
Implementarea algoritmului n cazul proiectarii unui ltru trece-jos este prezen-
tata n problema PR4.3.1.
108 CAPITOLUL 4. PROIECTAREA FILTRELOR
Filtre cu faza liniara

In cazul ltrelor cu faza liniara de ordin M, raspunsul n frecvent a are forma


H(e
j
) = h
T
c()e
jM/2
, (4.24)
unde h este vectorul coecient ilor, iar c() este un vector constant pentru o frecvent a
precizata. Pentru ecare din cele patru tipuri de ltre cu faza liniara, vectorii au
forme specice. De exemplu, pentru ltrele de tip I, din expresia (2.35) se vede ca
avem
h = [ h[
M
2
] h[
M
2
1] . . . h[1] h[0] ]
T
R
M
2
+1
,
c() = [1 2 cos . . . 2 cos((
M
2
1)) 2 cos(
M
2
) ]
T
R
M
2
+1
.
(4.25)
Deoarece faza ltrului este structural liniara, trebuie optimizata doar amplitudinea
h
T
c() (care este reala, dar nu neaparat pozitiva). Pentru aceasta, alegem un
raspuns dorit D
r
() real si rezolvam o problema de optimizare similara cu (4.2),
anume
min
h
_
F
[D
r
() h
T
c()]
2
d. (4.26)
Algoritmul de rezolvare este similar cu cel pentru ltre fara restrict ii de faza:
0. Date de proiectare: ordinul M al ltrului, tipul ltrului, raspunsul ideal
n frecvent a D
r
() (cu valori reale) care trebuie aproximat si mult imea de
frecvent e F pe care se face aproximat ia.
1. Se calculeaza matricea P si vectorul q cu formulele
P =
_
F
c()c
T
()d, q =
_
F
c()D
r
()d. (4.27)
Atent ie, acum P nu mai este o matrice Toeplitz, ci doar una simetrica.
2. Solut ia problemei (4.26) este h = P
1
q. Coecient ii ltrului rezulta conform
regulii de simetrie pentru tipul ales.
Detalii de implementare si un exemplu de proiectare sunt prezentate n problema
PR4.3.2.
Rezolvarea problemei F OPT2D
Atunci cand raspunsul dorit (complex) D
c
() este dat pe o mult ime discreta de
frecvent e G
L
= {
1
, . . . ,
L
} problema F OPT2D are o forma identica cu (4.22),
dar matricea P si vectorul q nu sunt calculate prin integrare, ci printr-o suma nita.
Asadar, e.g. matricea P din (4.21) se calculeaza prin relat ia
P =
1
L
L

k=1
C(
k
), (4.28)
cu matricea C() ca n (4.19).
4.3. PROIECTAREA FILTRELOR FIR

IN SENS CMMP 109

In cazul ltrelor cu faza liniara, problema (4.26) se rezolva n mod similar.


Atunci cand integrala care deneste matricea P din (4.21) se poate calcula
analitic (ceea ce e cazul pentru ltrele n care amplitudinea raspunsului e constanta
sau liniara n benzile de trecere), aceasta se calculeaza numeric mult mai usor decat
analogul ei discretizat (4.28). De aceea, rezolvarea unei probleme F OPT2D este
preferabila doar atunci cand raspunsul dorit D
c
() are o forma complicatan
sensul ca integralele (4.21) nu au primitive usor calculabile.
Probleme rezolvate
PR 4.3.1 a. Sa se scrie un program Matlab pentru proiectarea n sens CMMP
a ltrelor FIR trece-jos fara restrict ie de faza. Datele de proiectare sunt ordinul
ltrului M si raspunsul dorit
D
c
() =
_
e
jn0
, daca ||
b
,
0, daca
s
< || .
(4.29)
Frecvent ele
b
si
s
, precum si ntarzierea de grup n
0
sunt date.
b. Cu programul realizat anterior, sa se proiecteze un ltru FIR cu urmatoarele
date init iale: M = 16,
b
= 0.3,
s
= 0.46, n
0
= 8. Executat i programul si
pentru alte valori ale ntarzierii de grup n
0
.
Solut ie. a. Programul este prezentat n gura 4.12, sub forma de funct ie.
(Lipsesc vericari ale validitat ii argumentelor, e.g.
b

s
, pe care cititorul este
rugat sa le completeze.) Pentru nt elegerea programului, precizam ca avem
_
2
1
cos(n)d =
sin(n
2
)
n

sin(n
1
)
n
=
2
sinc(n
2
)
1
sinc(n
1
).
Matricea P din (4.21) mosteneste structura Toeplitz a matricei C() din (4.19), si
cum F = [0,
b
] [
s
, ], rezulta ca elementele sale au forma

b
sinc(n
b
)
s
sinc(n
s
) +[n],
cu n = 0 : M; am t inut seama ca sinc(n) = [n]. (Nu uitat i ca funct ia Matlab
sinc are o denit ie diferita de cea matematica (1.25).) Similar obt inem vectorul q
din (4.21), t inand seama de expresia raspunsului dorit D
c
() si de faptul ca banda
de oprire nu contribuie la integrala.
b. Exemplul de proiectare cerut a fost obt inut cu apelul opt2c tj(16,0.3,0.46,8),
iar caracteristica de frecvent a a ltrului rezultat este prezentata n gura 4.13. Fil-
trul are faza liniara ! Avem n
0
= M/2. (Vezi problema PR4.3.3.)
Luand n
0
= 5, obt inem raspunsul din gura 4.14. Filtrul nu mai are faza liniara.
Apelat i funct ia grpdelay pentru a vedea deviat ia de la liniaritate.
PR 4.3.2 a. Sa se scrie un program Matlab pentru proiectarea n sens CMMP a
ltrelor FIR trece-jos cu faza liniara. Pentru simplitate, se vor considera doar ltre
de tip I (ordinul ltrului M este par). Raspunsul dorit este
D
r
() =
_
1, daca ||
b
,
0, daca
s
< || .
110 CAPITOLUL 4. PROIECTAREA FILTRELOR
function h = opt2c_tj( M, wb, ws, n0 )
% Proiectare filtru FIR trece-jos in sens CMMP cu prototip complex
% M - ordinul filtrului
% wb, ws - frecventele (normalizate) definind benzile
% de trecere, respectiv oprire
% n0 - intarzierea de grup a filtrului dorit
T = (0:M);
P = wb*sinc(T*wb) - ws*sinc(T*ws) + eye(size(T));
P = toeplitz(P);
q = wb*sinc((T-n0)*wb);
h = P \ q;
Figura 4.12: Funct ie Matlab pentru proiectarea n sens CMMP a ltrelor FIR trece-
jos fara restrict ie de faza.
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
60
50
40
30
20
10
0
10
Frecventa normalizata
A
m
p
l
i
t
u
d
i
n
e

(
d
B
)
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
200
100
0
100
200
Frecventa normalizata
F
a
z
a

(
v
a
l
.
p
r
i
n
c
.
)
Figura 4.13: Caracteristica de frecvent a a ltrului FIR trece-jos, fara restrict ii de
faza, optim n sens CMMP, pentru M = 16,
b
= 0.3,
s
= 0.46, n
0
= 8.
4.3. PROIECTAREA FILTRELOR FIR

IN SENS CMMP 111
Frecvent ele
b
si
s
sunt date.
b. Cu programul realizat anterior, sa se proiecteze un ltru FIR cu urmatoarele
date init iale: M = 16,
b
= 0.3,
s
= 0.46. Sa se compare ltrul obt inut aici cu
cel de la problema PR4.3.1.
Solut ie. a. Programul este prezentat n gura 4.15. Din (4.25) observ am ca
elementele matricei c() c
T
() au forma
[c() c
T
()]
ik
=
ik
cos(i) cos(k), i, k = 0 : M/2,
unde = gg
T
, iar g = [1 2 . . . 2]
T
R
M/2+1
. Pentru simplitate, indexam matricele
ncepand de la zero. Pentru a calcula matricea P din (4.27), avem deci nevoie de
integrala
_
2
1
cos(i) cos(k)d =
_
2
1
1
2
[cos(i +k) + cos(i k)]d =
=
1
2
[
2
sinc(i +k)
2
+
2
sinc(i k)
2

1
sinc(i +k)
1

1
sinc(i k)
1
].
Asadar, elementul (i, k) al matricei P are expresia
p
ik
=
1
2
{
b
sinc(i +k)
b
+
b
sinc(i k)
b

s
sinc(i +k)
s

s
sinc(i k)
s
+[i +k] +[i k]}.
Desigur, n Matlab indicii matricelor ncep de la 1, de unde expresiile din program;
de asemenea, atent ie, n program se utilizeaza frecvent e normalizate. Calculul vec-
torului q este similar cu cel din problema anterioara. Ultima linie din program
aseaza coecient ii ltrului n ordinea reasca, t inand seama de (4.25).
b. Apeland funct ia din gura 4.15 cu opt2fl tj(16,0.3,0.46) obt inem exact
ltrul al carui raspuns n frecvent a este desenat n gura 4.13. Explicat ia acestui
fapt este data n problema urmatoare.
PR 4.3.3 Filtrele obt inute n rezolvarile celor doua probleme anterioare sugereaza
urmatoarea generalizare. Presupunem ca raspunsul dorit (complex) are faza strict
liniara si deci putem scrie D
c
() = |D
c
()|e
jn0
, F; un exemplu de astfel de
prototip este (4.29). Cautam ltrul FIR H(z) de ordin M = 2n
0
N reprezentand
solut ia problemei de optimizare n sens CMMP (4.5). Sa se demonstreze ca solut ia
problemei este un ltru cu faza liniara, cu coecient i simetrici (i.e. de tip I sau II).
Solut ie. Fie H(z) =

M
n=0
h[n]z
n
. Secvent a h[n], care are suport nit 0 : M,
se poate descompune ca
h[n] = h
s
[n] +h
a
[n],
unde h
s
[n] este simetrica, iar h
a
[n] antisimetrica.

Intr-adevar, se observa imediat
ca luand
h
s
[n] =
1
2
(h[n] +h[M n]),
h
a
[n] =
1
2
(h[n] h[M n]),
condit iile de mai sus sunt ndeplinite (h
s
[M n] = h
s
[n] si h
a
[M n] = h
a
[n]).
Din (2.35) si (2.38) se observa ca daca M = 2n
0
, atunci raspunsul n frecvent a al
ltrelor simetrice are forma
H
s
(e
j
) = A
s
()e
jn0
, A
s
() R,
112 CAPITOLUL 4. PROIECTAREA FILTRELOR
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
60
50
40
30
20
10
0
10
Frecventa normalizata
A
m
p
l
i
t
u
d
i
n
e

(
d
B
)
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
200
100
0
100
200
Frecventa normalizata
F
a
z
a

(
v
a
l
.
p
r
i
n
c
.
)
Figura 4.14: Caracteristica de frecvent a a unui ltru proiectat ca n gura 4.13, dar
cu n
0
= 5.
function h = opt2fl_tj( M, wb, ws )
% Proiectare in sens CMMP a unui filtru
% FIR trece-jos cu faza liniara de tip I
% M - ordinul filtrului
% wb, ws - frecventele (normalizate) definind benzile
% de trecere, respectiv oprire
m = M/2 + 1; % numarul de coeficienti diferiti ai filtrului
g = [1; 2 * ones(m-1, 1)];
P = 0.5 * eye(m);
P(1,1) = 1;
for i = 1 : m
for k = 1 : i
P(i,k) = P(i,k) + 0.5*( wb*sinc((i+k-2)*wb) + wb*sinc((i-k)*wb) ...
-ws*sinc((i+k-2)*ws) - ws*sinc((i-k)*ws) );
P(k,i) = P(i,k);
end
end
P = P .* (g * g);
q = wb * g .* sinc((0:m-1)*wb);
h = P \ q;
h = [ h(end:-1:2); h ];
Figura 4.15: Funct ie Matlab pentru proiectarea n sens CMMP a ltrelor FIR (de
tip I) trece-jos cu faza liniara.
4.3. PROIECTAREA FILTRELOR FIR

IN SENS CMMP 113
iar din (2.40) si (2.43) se vede ca raspunsul ltrelor antisimetrice este
H
a
(e
j
) = jA
a
()e
jn0
, A
a
() R.

In acest caz, criteriul problemei de optimizare (4.5) este


_
F
|H(e
j
) D
c
()|
2
d =
_
F

[A
s
() +jA
a
() |D
c
()|]e
jn0

2
d
=
_
F
_
[A
s
() |D
c
()|]
2
+ [A
a
()]
2
_
d.
Se observa imediat ca minimul criteriului se atinge pentru A
a
() = 0, adica pentru
h
a
[n] = 0.

In consecint a ltrul H(z) = H
s
(z) este simetric. (Evident, coecient ii
h[n] = h
s
[n] se determina n funct ie de D
c
() rezolvand problema CMMP ca n
problemele anterioare.)
Probleme propuse
PP 4.3.1 Fie S R
m
o matrice antisimetrica, i.e. S
T
= S. Demonstrat i ca
h
T
Sh = 0 pentru orice vector h R
m
.
PP 4.3.2 Cum se modica problema de optimizare n sens CMMP (4.22) daca se
adauga ponderi n criteriu ca n (4.4) ?
PP 4.3.3 Generalizat i programul de la problema PR4.3.2 pentru toate tipurile
de ltre cu faza liniara.
PP 4.3.4 Generalizat i programele de la problemele PR4.3.1 si PR4.3.2 pentru
ltre cu mai multe benzi de trecere si de oprire, n ordine oarecare. Testat i pro-
gramul pentru ltre trece-banda si opreste-banda. (Indicat ie: citit i ntai sect iunea
dedicata funct iilor Matlab pentru a lua de acolo formatul datelor de intrare.)
Ghid Matlab
Funct ia firls permite proiectarea n sens CMMP a ltrelor cu faza liniara; ea
constituie o generalizare a programului prezentat n gura 4.15. Modul de apel este
urmatorul
>> h = firls(M, W, A)
Ordinul ltrului este M. Parametrii W si A sunt vectori care descriu raspunsul dorit.
Cei doi vectori au lungimi pare si egale. Vectorul W cont ine frecvent ele reprezentand
benzile de interes; de exemplu, n cazul raspunsului dorit (de tip trece-jos) de la
problema PR4.3.2, vectorul este
>> W = [0 0.3 0.46 1]
Deci, prima banda (de trecere, n cazul de mai sus) este ntre W(1) si W(2), a doua
(de oprire) este ntre W(3) si W(4) etc. Benzile de tranzit ie sunt ntre W(2) si W(3),
W(4) si W(5) etc. Vectorul A descrie valorile raspunsului dorit n benzile de interes.

In exemplul nostru, vectorul este


>> A = [1 1 0 0]
114 CAPITOLUL 4. PROIECTAREA FILTRELOR
Prima pereche de elemente descrie o banda de trecere, iar a doua o banda de oprire.

In general, raspunsul dorit este format din segmente de dreapta unind punctele de
coordonate (W(k),A(k)) si (W(k+1),A(k+1)), unde k este un numar impar. (Acest
raspuns este mai general decat cel constant pe port iuni, utilizatn exemplele noastre,
dar ramane un caz particular al problemei (4.26), unde nu se impun restrict ii asupra
raspunsului dorit D
r
().)
Introducerea unor ponderi n criteriul CMMP se face adaugand un al patrulea
parametru de apel
>> h = firls(M, W, A, p)
Vectorul p are jumatate din lungimea lui W si A, ecare valoare din p corespunzand
unei perechi de valori din cei doi vectori. O valoare din p este ponderea (constanta)
asociata, n criteriul patratic, benzii de frecvent e corespunzatoare. Daca, n exem-
plul nostru de ltru trece-jos, vrem sa dam abaterii de la raspunsul dorit pondere
1 n banda de trecere si 10 n banda de oprire (cu scopul de a creste atenuarea n
banda de oprire), atunci punem
>> p = [1 10]
4.4 Proiectarea ltrelor FIR cu faza liniara n sens
Chebyshev
Proiectarea n sens Chebyshev se face mai usor n cazul ltrelor cu faza liniara, de
aceea nu ne ocupam aici de cazul general al ltrelor fara restrict ii de faza. Asadar,
n aceasta sect iune, raspunsul n frecvent a al ltrului are expresia (4.24).
Rezolvarea problemei F OPTINF
Problema F OPTINF se poate rezolva exact cu ajutorul celebrului algoritm Parks-
McClellan. Deoarece descrierea riguroasa a acestui algoritm necesita un spat iu rel-
ativ mare si unele not iuni matematice de aproximare a funct iilor, ne vom margini
prezentarea la elementele esent iale ale metodei. Consideram doar ltrele de tip I
(2.34), al caror raspuns n frecvent a este (eliminand exponent iala complexa carac-
teristica fazei liniare)
H
r
() =
K

n=0
g
n
cos(n), (4.30)
unde K = M/2, vezi (2.35) si problema PP2.5.7. Se observa ca cos(n) se poate
scrie ca un polinom (numit Chebyshev) de grad n n variabila cos (vezi problema
PR4.4.1), si deci avem
H
r
() =
K

n=0
f
n
(cos )
n
. (4.31)
Eroarea cu care raspunsul ltrului aproximeaza raspunsul dorit D() este
E() = D() H
r
().
4.4. PROIECTAREA FILTRELOR FIR

IN SENS CHEBYSHEV 115
Pentru un ltru optim, asa cum sugereaza gura 4.3, funct ia E() are un numar de
extreme locale, toate cu aceeasi amplitudine . Deoarece H
r
() este un polinomn
variabila x = cos [1, 1], se poate demonstra urmatoarea teorema de alternant a.
Teorema 4.10 Dac a r aspunsul H
r
() (4.31) este solut ia unei probleme F OPTINF,
atunci funct ia eroare E() are L K+2 extreme locale n frecvent ele
1
, . . . ,
L
,
cu aceeasi amplitudine si cu semne alternante, i.e.
E(
k
) = (1)
k
, k = 1 : L, (4.32)
unde este valoarea maxim a a erorii (egal a cu norma innit, sau Chebyshev, a
funct iei E()).
Metoda de proiectare Parks-McClellan se bazeaza pe algoritmul Remez de in-
terschimbare si are urmatoarea structura simpla.
1. Se aleg K + 2 frecvent e
k
[0, ], k = 1 : K + 2. Se alege o tolerant a .
2. Se rezolva sistemul (4.32) (cu exact K+2 ecuat ii), necunoscutele ind coecient ii
f
0
, . . . , f
K
din (4.31) si valoarea .
3. Se calculeaza punctele de extrem

k
[0, ], k = 1 : L, ale raspunsului H
r
()
obt inut, si se ret in K+2 dintre ele, cele pentru care eroarea |D(

k
) H
r
(

k
)|
are valorile cele mai mari.
4. Daca |
k

k
| , k = 1 : K + 2, atunci solut ia a fost obt inuta. Altfel, se
pune
k

k
, k = 1 : K + 2, si se reia de la pasul 2.
Explicat ii. Algoritmul se bazeaza pe fort ari succesive ale relat iei (4.32) care
caracterizeaza ltrul optim. Desigur, dupa ce la pasul 1 se alege un set arbitrar de
frecvent e
k
, rezolvarea ecuat iei (4.32), n care si este necunoscut, nu produce
valoarea minima a erorii . De aceea, punctele de extrem

k
, calculate la pasul 3,
sunt diferite de punctele
k
cu care s-a rezolvat sistemul (4.32). Repetand operat iile
de mai sus, de ecare data cu noul set de frecvent e, se constata convergent a catre
setul optim, n care relat ia (4.32) este satisfacuta si este eroarea optima.
Detaliile de implementare sunt numeroase. De exemplu, la proiectarea unui
ltru trece-jos, frecvent ele
b
si
s
care denesc benzile de trecere si, respectiv, de
oprire, fac parte ntotdeauna din setul de frecvent e
k
cu care se rezolva sistemul de
la pasul 2 al algoritmului. Algoritmul se poate extinde usor la ltrele de tip II-IV.
Rezolvarea problemei F OPTINFD
Pe o mult ime discreta de frecvent e G
L
= {
1
, . . . ,
L
}, proiectarea ltrelor FIR
cu faza liniara n sens Chebyshev se poate reduce la o problema standard de
optimizareprogramarea liniara. Considerand expresia (4.24) a raspunsului n
frecvent a al ltrului de ordin M si alegand un raspuns dorit D
r
() real, problema
F OPTINFD (4.7) se modica n
min
h
max
k=1:L
|D(
k
) c
T
(
k
)h|. (4.33)
116 CAPITOLUL 4. PROIECTAREA FILTRELOR
Variabilele problemei de optimizare sunt coecient ii independent i ai ltrului H(z);
notam M

numarul lor, e.g. n cazul ltrelor de tip I, avem M

= M/2 + 1, vezi
(4.25). Introducem o variabila suplimentara (care depinde de coecient ii ltrului)
= max
k=1:L
|D(
k
) c
T
(
k
)h|,
care are semnicat ie de eroare maxim a de aproximare pe mult imea de frecvent e G
L
.
Putem asadar scrie
c
T
(
k
)h D(
k
) , k = 1 : L,
sau
D(
k
) c
T
(
k
)h D(
k
) + , k = 1 : L.
Cu aceste observat ii, problema de optimizare (4.33) are forma
min
h,

cu restrictiile c
T
(
k
)h D(
k
), k = 1 : L,
c
T
(
k
)h D(
k
), k = 1 : L.
(4.34)
Notam
=
_
h

_
R
M

+1
variabilele problemei de optimizare (4.34). Coecient ii acesteia sunt
=
_

_
c
T
(
1
) 1
.
.
.
.
.
.
c
T
(
L
) 1
c
T
(
1
) 1
.
.
.
.
.
.
c
T
(
L
) 1
_

_
R
2L(M

+1)
, =
_

_
D(
1
)
.
.
.
D(
L
)
D(
1
)
.
.
.
D(
L
)
_

_
R
2L
. (4.35)
Notand = [0 . . . 0 1]
T
R
M

+1
, problema de optimizare (4.34) poate scrisa n
forma standard a unui program liniar, adica
min
R
M

+1

cu restrictiile
(4.36)
Numele de program liniar provine din faptul ca atat criteriul cat si restrict iile sunt
liniare n variabila vectoriala . (Asa cum se subnt elege, notat ia are
semnicat ia ca ecare element al vectorului este mai mic sau egal cu elementul
corespunzator al vectorului .) Rezolvarea unei probleme de programare liniara
se face cu algoritmi dedicat i acestui scop, de exemplu cu funct ia lp din Matlab
(Optimization Toolbox).
Un program pentru rezolvarea problemei de proiectare F OPTINFD pentru
ltre de tip I este prezentat n PR4.4.2, mpreuna cu exemple de proiectare.
4.4. PROIECTAREA FILTRELOR FIR

IN SENS CHEBYSHEV 117
Probleme rezolvate
PR 4.4.1 Pe intervalul [1, 1], polinomul Chebyshev de grad n se deneste prin
T
n
(x) = cos(ncos
1
(x)). Notand x = cos , se observa imediat ca avem T
n
(x) =
cos(n). Sa se demonstreze ca
T
0
(x) = 1, T
1
(x) = x, (4.37)
iar pentru n > 0 are loc relat ia de recurent a
T
n+2
(x) = 2xT
n+1
(x) T
n
(x). (4.38)
Solut ie. Relat iile (4.37) sunt evidente. Se observa ca relat ia (4.38) este echiva-
lenta cu
cos((n + 2)) = 2 cos() cos((n + 1)) cos(n).
Putem scrie
cos((n + 2)) = cos(2) cos(n) sin(2) sin(n)
= [2 cos
2
() 1] cos(n) 2 sin() cos() sin(n)
= 2 cos()[cos() cos(n) sin() sin(n)] cos(n)
= 2 cos() cos((n + 1)) cos(n),
ceea ce demonstreaza (4.38).
PR 4.4.2 a. Sa se scrie un program Matlab pentru proiectarea n sens Chebyshev
a ltrelor FIR trece-jos cu faza liniara, de tip I. Datele de proiectare sunt ordinul
ltrului M (un numar par), raspunsul dorit
D
r
() =
_
1, daca ||
b
,
0, daca
s
< || ,
(frecvent ele
b
si
s
sunt date) si numarul de frecvent e L din mult imea G
L
, presu-
puse echidistante. Programul va consta n calculul coecient ilor programului liniar
(4.36), urmat de apelul funct iei lp.
b. Cu programul realizat anterior, sa se proiecteze un ltru FIR cu urmatoarele
date init iale: M = 16,
b
= 0.3,
s
= 0.46, L = 100. Care este valoarea erorii
, i.e. a criteriului problemei (4.34) ?
Solut ie. a. Programul este prezentat n gura 4.16. Pentru lamuriri supli-
mentare, vezi PR4.1.2 pentru generarea grilei de frecvent e si PR4.3.2. Matricea
din (4.35), cu doua bloc coloane, este construita n program din patru blocuri
obt inute prin separarea primelor si ultimelor L linii.
b. Cu apelul optinfd tj(16,0.3,0.46,100) a fost obt inut ltrul al carui
raspuns n frecvent a este prezentat n gura 4.17. Valoarea erorii maxime este
= 0.0424. Comparat i raspunsul cu cel din gura 4.13.
118 CAPITOLUL 4. PROIECTAREA FILTRELOR
function [h, Delta] = optinfd_tj( M, wb, ws, L )
% Proiectare in sens Chebyshev
% (pe o multime discreta de frecvente echidistante)
% a unui filtru FIR trece-jos, cu faza liniara de tip I
%
% M - ordinul filtrului
% wb, ws - frecventele (normalizate) definind benzile
% de trecere, respectiv oprire
% L - numarul de frecvente in multimea discreta
% h - coeficientii filtrului
% Delta - eroarea Chebyshev
% genereaza frecvente echidistante
Lb = floor( wb / (wb+1-ws) * L );
Ls = L - Lb - 1;
Lb = Lb - 1;
w = [ 0 : wb/Lb : wb, ws : (1-ws)/Ls : 1 ] * pi;
M2 = M/2;
g = [1; 2 * ones(M2, 1)];
% genereaza constantele problemei de programare liniara
Ccos = repmat(g, L, 1) .* cos(w*(0:M2));
Psi = [ Ccos -ones(L,1);
-Ccos -ones(L,1) ];
beta = [ ones(Lb+1,1); zeros(Ls+1,1) ];
beta = [ beta; -beta ];
gamma = zeros(M2 + 2, 1);
gamma(end) = 1; % criteriul este Delta !
% rezolva problema de programare liniara
x = lp(gamma, Psi, beta);
h = x(1:end-1);
h = [ h(end:-1:2); h ];
Delta = x(end);
Figura 4.16: Funct ie Matlab pentru proiectarea n sens Chebyshev a ltrelor FIR
(de tip I) trece-jos cu faza liniara.
4.5. PROIECTAREA FILTRELOR IIR: METODE DE TRANSFORMARE 119
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
200
100
0
100
200
Frecventa normalizata
F
a
z
a

(
v
a
l
.
p
r
i
n
c
.
)
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
60
50
40
30
20
10
0
10
Frecventa normalizata
A
m
p
l
i
t
u
d
i
n
e

(
d
B
)
Figura 4.17: Caracteristica de frecvent a a ltrului FIR trece-jos, solut ie a problemei
F OPTINFD, pentru M = 16,
b
= 0.3,
s
= 0.46, L = 100.
Probleme propuse
PP 4.4.1 Sa se generalizeze funct ia Matlab din problema PR4.4.2 pentru
a. toate ltrele cu coecient i simetrici, respectiv antisimetrici;
b. orice raspuns dorit D(), denit pe o mult ime discreta de frecvent e. (Valorile
raspunsului dorit si frecvent ele corespunzatoare sunt argumente ale funct iei.)
PP 4.4.2 Fie H
r
() raspunsul n frecvent a al ltrului calculatn problema PR4.4.2,
punctul b. Evaluat i eroarea |D
r
() H
r
()| ntr-un numar mare de frecvent e, de
exemplu 1000 (n orice caz mult mai mare decat valoarea L folosita la proiectarea
ltrului), si calculat i eroarea maxima. De ce este aceasta mai mare decat eroarea
calculata de programul din PR4.4.2 ?
Ghid Matlab
Algoritmul Parks-McClellan pentru proiectarea n sens Chebyshev a ltrelor cu faza
liniara se face cu funct ia remez. Modul de apel este
>> h = remez(M, W, A)
Argumentele sunt aceleasi ca la funct ia firls de proiectare n sens CMMP.
4.5 Proiectarea ltrelor IIR: metode de
transformare
Din punct de vedere istoric, ltrele analogice au fost primele utilizate n aplicat ii
practice, cu decenii bune naintea celor digitale. De aceea, metodele de proiectare a
ltrelor analogicen mod necesar ltre IIRerau deja bine dezvoltate atunci cand
120 CAPITOLUL 4. PROIECTAREA FILTRELOR
Specicare
performant e
H(z)
H(s)
Performant e
timp continuu

Transformare
discret-continuu
discret
(digital)
continuu
(analogic)
`
Transformare
continuu-discret
Proiectare
n continuu
Figura 4.18: Schema generala de proiectare a ltrelor IIR prin metode de transfor-
mare.
a aparut necesitatea proiectarii ltrelor digitale. O metoda comoda de proiectare
a ltrelor IIR digitale se bazeaza pe transformarea unora analogice, ca n gura
4.18. Performant ele specicate ale ltrului digital (e.g. n forma unei probleme
F TOL) sunt transformate n performant e echivalente n domeniul continuu; pe
baza acestora se proiecteaza ltrul analogic H(s), din care, printr-o transformare
z = f(s), se obt ine ltrul dorit H(z). Se observa ca metoda are doua componente
principale:
transformarea f ntre domeniile discret si continuu, care trebuie sa e biuni-
voca;
proiectarea ltrelor analogice (n timp continuu).
Vom prezenta n continuare detalii ale celor doua componente. Peste tot vom nota
frecvent a n domeniul discret (asa cum am facut pana aici) si frecvent a n dome-
niul continuu. Asadar, daca H(s) si G(z) sunt funct ii de transfer n continuu, re-
spectiv discret, atunci caracteristicile lor de frecvent a sunt H(j), respectiv G(e
j
).
4.5.1 Filtre analogice
Proiectarea ltrelor analogice se face ndeosebi cu ajutorul unor ltre tip, pentru
care exista o modalitate analitica de descriere. Cele mai ntalnite ltre sunt numite
Butterworth, Chebyshev (tip I sau II) si Cauer (sau eliptic). Vom prezenta mai jos
o descriere sumara a acestor ltre.
Filtrul Butterworth. Un astfel de ltru este denit de ordinul sau n si de o
frecvent a de taiere
t
. Caracteristica de frecvent a H(j) a ltrului satisface relat ia
|H(j)|
2
= H(j)H(j) =
1
1 + (/
t
)
2n
. (4.39)
Dupa cum se vede n gura 4.19, amplitudinea raspunsului n frecvent a al ltru-
lui Butterworth este descrescatoare. La frecvent a de taiere
t
, avem ntotdeauna
4.5. PROIECTAREA FILTRELOR IIR: METODE DE TRANSFORMARE 121

t
|H(j)|
0.707
1
Figura 4.19: Amplitudinea r aspunsului n frecvent a al ltrului Butterworth, pentru
n = 2 (linie-punct), n = 4 (linie ntrerupta) si n = 10 (linie continua).
|H(j
t
)| = 1/

2, i.e. aceasta este frecvent a la care atenuarea este de 3dB (ream-


intim ca log
10
2 0.3, deci 20 log
10
(1/

2) 3); de asemenea, amplicarea


H(0) = 1 este constanta. Cu cat ordinul n este mai mare, cu atat tranzit ia n
jurul valorii
t
este mai abrupta.
Funct ia de transfer H(s) se determina prelungind analitic relat ia (4.39) (valabila
pentru s = j) si obt inand
H(s)H(s) =
1
1 + (s/j
t
)
2n
. (4.40)
Cei 2n poli ai funct iei H(s)H(s) sunt denit i de (1)
1/2n
j
t
, deci au forma
s
k
=
t
exp
_
j

2n
(2k 1 +n)
_
, k = 0 : 2n 1, (4.41)
si sunt plasat i echidistant pe un cerc de raza
t
centrat n origine, simetric fat a de
axa imaginara, ca n gura 4.20. Pentru H(s) se iau polii cu parte reala negativa,
astfel ncat H(s) sa e o funct ie de transfer stabila. Vezi problema PR4.5.1 pentru
exemple de ltre Butterworth cu numar mic de poli.
Filtre Chebyshev. Filtrele Chebyshev de tip I au raspunsul n frecvent a de forma
|H(j)|
2
= H(j)H(j) =
1
1 +
2
T
2
n
(/
b
)
, (4.42)
unde n este ordinul ltrului, iar
T
n
(x) =
_
cos(ncos
1
(x)), pentru |x| 1,
cosh(ncosh
1
(x)), pentru |x| > 1,
122 CAPITOLUL 4. PROIECTAREA FILTRELOR
1 0.5 0 0.5 1
1
0.8
0.6
0.4
0.2
0
0.2
0.4
0.6
0.8
1
Parte reala
P
a
r
te
im
a
g
in
a
r
a
1 0.5 0 0.5 1
1
0.8
0.6
0.4
0.2
0
0.2
0.4
0.6
0.8
1
Parte reala
P
a
r
te
im
a
g
in
a
r
a
Figura 4.20: Polii ltrului Butterworth (n semiplanul stang) si simetricii lor fat a
de axa imaginara, pentru n = 4 (stanga) si n = 5 (dreapta),
t
= 1. Vezi formula
(4.41).
este polinomul Chebyshev de ordinul n. Raspunsul n frecvent a al unui ltru
Chebyshev de tip I, cu n = 4, este prezentat n gura 4.21 (stanga). Se ob-
serva ca raspunsul are ondulat ii egale n banda de trecere si este descrescator n
banda de oprire. Parametrul dicteaza nalt imea ondulat iilor; n banda de trecere
[0,
b
], raspunsul ia valori ntre M
b
=
1
1+
2
si 1; pentru =
b
, avem ntotdeauna
|H(j)| = M
b
.
Filtrul Chebyshev de tipul II, al carui raspuns se vede n gura 4.21 (dreapta),
se obt ine printr-o transformare a celui de tip I si are ondulat ii egale n banda de
oprire.
Filtrul eliptic are raspunsul n frecvent a
|H(j)|
2
= H(j)H(j) =
1
1 +
2
U
2
n
(/
b
)
, (4.43)
unde U
n
() este funct ia Jacobi eliptica de ordinul II. Raspunsul are ondulat ii egale
atat n banda de trecere cat si n cea de oprire (vezi gura 4.22, unde n = 4). Si
aici avem M
b
=
1
1+
2
.
4.5.2 Transformarea biliniara
O transformare continuu-discret z = f(s) trebuie sa aiba urmatoarele proprietat i:
sa e biunivoca, astfel ncat, mpreuna cu inversa sa, sa asigure transformarea
n ambele sensuri;
sa transforme semiplanul complex stang n discul unitate, astfel ncat un ltru
analogic stabil sa e transformat ntr-un ltru digital stabil si reciproc;
sa transforme axa imaginaran cercul unitate, astfel ncat raspunsul n frecvent a
H(j) al unui ltru analogic sa-si pastreze alura n transformatul sau digi-
4.5. PROIECTAREA FILTRELOR IIR: METODE DE TRANSFORMARE 123

b
|H(j)|
1
M
b

s
|H(j)|
Figura 4.21: Amplitudinea raspunsului n frecvent a al unor ltre Chebyshev de tip
I cu n = 4 (stanga) si II cu n = 6 (dreapta).

s
|H(j)|
1
M
b
Figura 4.22: Amplitudinea raspunsului n frecvent a a unui ltru eliptic, cu n = 4.
124 CAPITOLUL 4. PROIECTAREA FILTRELOR

Figura 4.23: Gracul transformarii de frecvent e continuu-discret biliniara.


tal H(e
j
) (notam H(s) ltrul analogic si, cu aceeasi litera, H(z) = H(f(s))
ltrul digital).
Transformarea cea mai utilizata este cea biliniar a, denita de relat ia
z =
1 +s
1 s
, (4.44)
a carei inversa este
s =
z 1
z + 1
=
1 z
1
1 +z
1
. (4.45)
(Deoarece au forme similare, ambele transformari de mai sus sunt numite biliniare,
sensul transformarii rezultand din context.) Transformarea continuu-discret a frecvent elor
se obt ine din (4.44) nlocuind s = j si z = e
j
. Din
e
j
=
1 +j
1 j
(4.46)
se obt in relat iile (vezi problema PR4.5.2)
= 2arctg,
= tg

2
.
(4.47)
Desigur, transformarea = 2arctg, care duce Rn [, ], este neliniara, asa cum
se vede si din gura 4.23.
Filtrul Butterworth discret. Fiind o funct ie crescatoare, transformarean frecvent a
(4.47) pastreaza forma raspunsului n frecvent a al unui ltru analogic, n sensul ca
e.g. un ltru trece-jos analogic este transformat ntr-un ltru trece-jos discret. Prin
aplicarea transformarii biliniare, raspunsul n frecvent a (4.39) al ltrului Butter-
worth analogic se transforma n
|H(e
j
)|
2
=
1
1 +
_
tg(/2)
tg(t/2)
_
2n
,
t
= 2arctg
t
, (4.48)
4.5. PROIECTAREA FILTRELOR IIR: METODE DE TRANSFORMARE 125
care reprezinta amplitudinea raspunsului n frecvent a al ltrului Butterworth dis-
cret. Un exemplu de proiectare a unui ltru Butterworth discret este prezentat n
problema PR4.5.3.
4.5.3 Transformari discret-discret n frecvent a
Filtrele IIR analogice discutate mai sus sunt toate de tip trece-jos, iar prin trans-
formarea biliniara se obt in ltre digitale tot de tip trece-jos. Pentru a proiecta
altfel de ltre digitale (trece-sus, trece-banda etc.), se pot utiliza transformari n
frecvent a (e n domeniul continuu, e n cel discret), care obt in ltrul dorit dintr-
unul trece-jos. Ne vom ocupa doar de transformarile n domeniul discret. O astfel
de transformare Z = G(z) trebuie sa aiba urmatoarele proprietat i:
sa e inversabila;
sa transforme discul unitate n el nsusi, astfel nc at un ltru stabil sa e
transformat ntr-un ltru stabil;
sa transforme cercul unitate n el nsusi, astfel nc at raspunsul n frecvent a al
ltrului obt inut H(Z) sa depinda doar de raspunsul ltrului init ial H(z).
Propozit ia 4.11 Toate transform arile cu propriet at ile de mai sus sunt funct ii de
tip trece-tot, i.e.
Z
1
=

N
k=1
(z
1
c

k
)

N
k=1
(1 c
k
z
1
)
, |c
k
| < 1. (4.49)

In particular, transformarile din trece-jos n trece-sus sau trece-jos (dar cu alta


frecvent a de taiere) sunt date de o funct ie de forma (4.49) cu un singur pol, iar
cele din trece-jos n trece-banda sau opreste-banda de funct ii cu doi poli. Problema
PR4.5.4 ilustreaza o astfel de transformare.
Probleme rezolvate
PR 4.5.1 a. Care sunt funct iile de transfer ale ltrelor Butterworth analogice cu

t
= 1 si n = 1, 2, 3 ?
b. Care sunt funct iile de transfer ale ltrelor discrete obt inute din cele analogice
prin transformarea biliniara ?
Solut ie. a. Reamintim ca polii ltrelor Butterworth au forma (4.41) si se aa
n semiplanul complex stang. Pentru n = 1, unicul pol este s
1
= 1. Pentru
n = 2, polii sunt s
1,2
= (1 j)/

2. Pentru n = 3, polii sunt s


1
= 1, s
2,3
=
(1 j

3)/2. Funct iile de transfer corespunzatoare sunt


H
1
(s) =
1
s + 1
, H
2
(s) =
1
s
2
+

2s + 1
, H
3
(s) =
1
(s + 1)(s
2
+s + 1)
.
b. Aplicand transformarea biliniara se obt in ltrele discrete
H
1
(z) =
1 +z
1
2
, H
2
(z) =
(1 +z
1
)
2
(2 +

2) + (2

2)z
2
, H
3
(z) =
(1 +z
1
)
3
6 + 2z
2
.
126 CAPITOLUL 4. PROIECTAREA FILTRELOR
Observat i ca polii ltrelor discrete sunt pe axa imaginara.
PR 4.5.2 Demonstrat i ca transformarea biliniara satisface cele trei proprietat i enu-
merate la nceputul sect iunii 4.5.2.
Solut ie. Se verica elementar ca transformarile (4.44) si (4.45) sunt una inversa
celeilalte.
Demonstram acum ca semiplanul complex stang este transformat prin (4.44) n
discul unitate. Notam s = u +jv. Daca Res = u < 0, atunci (1 +u)
2
< (1 u)
2
si
din (4.44) obt inem
|z|
2
=

1 +s
1 s

2
=
(1 +u)
2
+v
2
(1 u)
2
+v
2
< 1.
Ca sa demonstram ca axa imaginar a e transformata prin (4.44) n cercul unitate,
i.e. ca are loc (4.47), luam pur si simplu argumentul n egalitatea (4.46); rezulta
prima relat ie din (4.47), iar a doua este evident inversa ei.
PR 4.5.3 Scriet i un program Matlab care sa proiecteze un ltru Butterworth dis-
cret satisfacand cerint ele unei probleme F TOL. Se doreste un ltru de ordin
minim, pentru care H(1) = 1 (amplicare unitara a semnalelor constante).
Exemplu numeric:
b
= 0.3,
s
= 0.45,
b
= 0.1 si
s
= 0.1.
Solut ie. Raspunsul n frecvent a al unui ltru Butterworth discret care satisface
cerint ele este prezentat n gura 4.24 stanga. Notam M
b
= 1
b
. Gracul este
desenat presupunand ca cerint ele sunt satisfacute la limita, dar n general avem
|H(
b
)| M
b
, |H(
s
)|
s
. (4.50)
Evident, deoarece amplitudinea raspunsului este descrescatoare, avemM
b
|H()|
1 pentru [0,
b
] si |H()|
s
pentru [
s
, ].
Pentru proiectarea ltrului, parcurgemurmatoarele etape: i) transpunem cerint ele
de proiectare n domeniul continuu, ii) gasim un ltru analogic care sa satisfaca
cerint ele, iii) obt inem ltrul discret aplicand transformarea biliniara celui continuu.
i) Filtrul analogic corespunzator celui discret are raspunsul n frecvent a din
gura 4.24 dreapta. Conform cu (4.47), avem

b
= tg

b
2
,
s
= tg

s
2
. (4.51)
Dorim sa aam ordinul n si frecvent a de taiere
t
ale unui ltru Butterworth ana-
logic, al carui raspuns n frecvent a (4.39) satisface condit iile obt inute din (4.50),
i.e.
|H(
b
)| M
b
, |H(
s
)|
s
. (4.52)
si deci
1
1 + (
b
/
t
)
2n
M
2
b
,
1
1 + (
s
/
t
)
2n

2
s
. (4.53)
4.5. PROIECTAREA FILTRELOR IIR: METODE DE TRANSFORMARE 127
ii) Din (4.53) obt inem
2n(log
t
log
b
) log
M
2
b
1 M
2
b
,
2n(log
s
log
t
) log
1
2
s

2
s
.
Adunam cele doua inegalitat i de mai sus si obt inem
n
log
M
2
b
(1
2
s
)

2
s
(1 M
2
b
)
2 log
s
/
b
. (4.54)
Desigur, ordinul n trebuie sa e ntreg, asa ca l luam egal cu primul ntreg mai
mare ca (4.54). Pentru a calcula
t
, impunem egalitatea ntr-una din inegalitat ile
(4.53), de exemplu n prima, din care rezulta

t
=

b
_
1 M
2
b
M
2
b
_
1/2n
. (4.55)
Am obt inut deci parametrii n si
t
ai ltrului Butterworth analogic, a carui funct ie
de transfer H(s) se calculeaza usor stiind pozit iile (4.41) ale polilor.
iii)

In nal, ltrul discret H(z) se obt ine aplicand transformarea biliniara (4.45)
ltrului analogic H(s).
Programul care implementeaza algoritmul descris mai sus este prezentat n gura
4.25. Primele linii ale programului reprezinta implementarea formulelor (4.51),
(4.54) si (4.55). Calculul polilor se face conform formulei (4.41), n care se iau
doar polii din semiplanul complex stang, corespunzand valorilor k = 1 : n. Trans-
formarea biliniara se aplica direct asupra polilor (si nu asupra coecient ilor ltrului
analogic). Daca funct ia de transfer a ltrului Butterworth analogic este
H(s) =

n
k=1
(s
k
)

n
k=1
(s s
k
)
,
i.e. s
k
, k = 1 : n, sunt polii ltrului si H(0) = 1, atunci folosind transformarea
(4.45) rezulta
H(z) =

n
k=1
(s
k
)

n
k=1
(1 s
k
)

n
k=1
(1 +z
1
)

n
k=1
(1 z
1
1+s
k
1s
k
)
, (4.56)
formula care evident iaza amplicarea, zerourile si polii z
k
=
1+s
k
1s
k
ai ltrului But-
terworth discret.

In ultimele instruct iuni ale programului se ia partea reala pentru
a elimina partea imaginara rezultata n urma erorilor numerice.
Cu datele numerice din problema, din (4.54) rezulta n 5.852, deci se ia n =
6. Din (4.55) se obt ine
t
= 0.575. Cititorul este invitat sa traseze, n Matlab,
raspunsul n frecvent a al ltrului Butterworth proiectat cu programul descris mai
sus.
128 CAPITOLUL 4. PROIECTAREA FILTRELOR


b

s
1
M
b

b

s
1
M
b

s
Figura 4.24: Filtre Butterworth discret (stanga) si analogic (dreapta) satisfacand
cerint ele problemei PR4.5.3.
PR 4.5.4 Demonstrat i ca aplicand unui ltru trece-jos H(z) transformarea
Z
1
=
z
1
c
1 cz
1
, c R, |c| < 1, (4.57)
se obt ine un ltru trece-sus H(Z). Pentru a studia raspunsurile n frecvent a ale l-
trelor, pe cercul unitate notam z = e
j
si Z = e
j
. Obt inet i relat ia de transformare
a frecvent elor = g().
Aplicat i transformarea de mai sus ltrului Butterworth H
2
(z) din problema
PR4.5.1, pentru c = 0.5, 0, 0.5 si desenat i caracteristicile de frecvent a ale ltrelor
obt inute.
Solut ie. Pe cercul unitate, din (4.57) obt inem
e
j
=
e
j
c
1 ce
j
=
2c (1 +c
2
) cos +j(c
2
1) sin
1 +c
2
2c cos
.
Luand argumentul n expresiile extreme de mai sus, rezulta
= arctg
_
(1 c
2
) sin
2c (1 +c
2
) cos
_
. (4.58)
Gracul transformarii (4.58) este prezentat n gura 4.26; pentru a-l obt ine, am
considerat ca funct ia arctg ia valori n intervalul [0, ] si nu n [/2, /2] (unde
este ramura principala a funct iei); cu alte cuvinte, am nlocuit cu + atunci
cand < 0. Cea mai simpla transformare se obt ine pentru c = 0, cand Z = z iar
= , deci raspunsul n frecvent a este oglindit fat a de verticala care trece prin
/2.
Caracteristicile de frecvent a ale ltrele Butterworth trece-sus obt inute din H
2
(z)
de la problema PR4.5.1 sunt prezentate n gura 4.27. Calculul funct iilor de
transfer este lasat cititorului.
4.5. PROIECTAREA FILTRELOR IIR: METODE DE TRANSFORMARE 129
function [b,a] = prbut(wb, ws, Delta_b, Delta_s)
% Proiectare filtru Butterworth discret pentru problema F_TOL
% wb, wb - frecventele normalizate definind benzile
% de trecere, respectiv oprire
% Delta_b - toleranta in baza de trecere
% Delta_s - toleranta in baza de oprire
Mb = 1 - Delta_b;
% transforma specificatiile in continuu
Omega_b = tan(wb*pi/2);
Omega_s = tan(ws*pi/2);
% determina parametrii filtrului Butterworth analogic
Mb2 = Mb * Mb;
Ds2 = Delta_s * Delta_s;
n = ceil( log(Mb2 * (1-Ds2) / Ds2 / (1-Mb2)) / 2 / log(Omega_s/Omega_b) );
Omega_t = Omega_b / ((1-Mb2)/Mb2)^(1/2/n);
% polii filtrului Butterworth analogic
poli_a = Omega_t * exp( -sqrt(-1) * pi / 2 / n * ( (1:2:2*n) + n ) );
% functia de transfer a filtrului Butterworth digital
zero_d = - ones(n,1);
poli_d = (1 + poli_a) ./ (1 - poli_a);
amplif = real(prod(-poli_a) / prod(1 - poli_a));
b = amplif * real(poly(zero_d));
a = real(poly(poli_d));
Figura 4.25: Funct ie Matlab pentru rezolvarea unei probleme F TOL cu un ltru
de tip Butterworth.
130 CAPITOLUL 4. PROIECTAREA FILTRELOR


Figura 4.26: Gracul transformarii n frecvent a (4.58), din trece-jos n trece-sus,
pentru c = 0 (linie continua), c = 0.5 (linie-punct), c = 0.5 (linie ntrerupta).

1
Figura 4.27: Caracteristici de frecvent a ale unui ltru Butterworth trece-jos de
ordinul 2 si ale unor ltre trece-sus obt inute din acesta prin transformarea (4.57),
pentru c = 0 (linie continua), c = 0.5 (linie-punct), c = 0.5 (linie ntrerupta).
4.5. PROIECTAREA FILTRELOR IIR: METODE DE TRANSFORMARE 131
Probleme propuse
PP 4.5.1 a. Observat i ca pentru ordin n impar, ltrul Butterworth analogic are
un pol n
t
. Unde se aa polul corespunzator al ltrului discret obt inut prin
transformarea biliniara ? Ce proprietate are numitorul acestui ltru ?
b. Care sunt zerourile ltrului Butterworth discret ?
c. Ce poli trebuie sa aiba un ltru analogic pentru ca prin transformarea
biliniara sa se obt ina din el un ltru FIR ?
PP 4.5.2 Demonstrat i ca transformarea biliniara (4.44) transforma cercul unitate
n axa imaginara (si nu doar invers, asa cum am demonstrat n PR4.5.2).
Observat i ca daca un ltru Butterworth analogic are frecvent a de taiere
t
= 1,
atunci polii ltrului Butterworth discret obt inut prin transformarea biliniara se aa
pe axa imaginara (vezi PR4.5.1).
PP 4.5.3 Indicat i modul de proiectare al unui ltru IIR Butterworth de tip trece-
sus conform urmatoarelor cerint e de tip F TOL: banda de trecere [
b
, ], banda
de oprire [0,
s
], tolerant e
b
n banda de trecere si
s
n cea de oprire.
PP 4.5.4 Modicat i algoritmul de proiectare din PR4.5.3 astfel ncat cerint ele
problemei F TOL sa e satisfacute de un ltru Butterworth pentru care H(1) = 1+

b
. (Spre deosebire, algoritmul din PR4.5.3 considera H(1) = 1, adica amplicare
unitara n regim stat ionar.) Pentru scrierea algoritmului, demonstrat i ca ordinul
ltrului se obt ine prin modicarea relat iei (4.54) n
n
log
M
2
b
[(1 +
b
)
2

2
s
]

2
s
[(1 +
b
)
2
M
2
b
]
2 log
s
/
b
, (4.59)
iar frecvent a de taiere este

t
=

b
_
(1 +
b
)
2
M
2
b
M
2
b
_
1/2n
. (4.60)

In ne, observat i ca funct ia de transfer (4.56) a ltrului trebuie nmult ita cu 1 +


b
pentru a obt ine amplicarea dorita n regim stat ionar.
PP 4.5.5 De multe ori, n locul transformarii biliniare (4.45) se foloseste forma
mai generala
s =
2
T
1 z
1
1 +z
1
, (4.61)
cu T > 0 xat.
a. Calculat i inversa acestei transformari.
b. Demonstrat i ca transformarea poseda proprietat ile enumerate la nceputul
sect iunii 4.5.2.
c. Care sunt analoagele formulelor (4.47) n cazul acestei transformari ?
132 CAPITOLUL 4. PROIECTAREA FILTRELOR
Ghid Matlab
Filtrul Butterworth analogic se proiecteaza cu apelul
>> [rb, ra, k0] = buttap(N)
Funct ia primeste ordinul ltrului si ntoarce zerourile, polii si amplicarea acestuia.
Frecvent a de taiere are valoarea normalizata
t
= 1.
Filtrele analogice Chebyshev, de tip I si II, si eliptic se proiecteaza cu funct iile
cheb1ap, cheb2ap si, respectiv, ellipap. De exemplu, ltrul Chebyshev de tip I se
obt ine cu
>> [rb, ra, k0] = cheb1ap(N, Mb)
unde Mb este nalt imea ondulat iilor n banda de trecere, n decibeli.
Transformarea biliniara, n forma generala (4.61), este implementata de funct ia
bilinear. Un apel la aceasta are forma
>> [rbd, rad, k0d] = bilinear(rb, ra, k0, F)
Primele trei argumente de intrare sunt zerourile, polii si amplicarea ltrului ana-
logic. Al patrulea argument, F, este valoarea 1/T din (4.61). Argumentele de iesire
sunt zerourile, polii si amplicarea ltrului discret rezultat n urma aplicarii trans-
formarii biliniare ltrului analogic.
Metoda de proiectare prin transformare a ltrului Butterworth discret este im-
plementata de funct ia butter. Funct ia se apeleaza cu
>> [b, a] = butter(N, wt)
N este ordinul ltrului iar variabila wt corespunde frecvent ei discrete (normalizate)

t
din (4.48). Funct ia butter se comporta ntr-un mod echivalent urmatorului
algoritm: calculeaza
t
= tg(/2), conform cu (4.47), proiecteaza ltrul analogic
de ordinul N, apoi aplica transformarea biliniara pentru a obt ine ltrul discret dorit.
De exemplu, pentru a obt ine ltrul H
3
(z) cerut n problema PR4.5.1, observam
ca lui
t
= 1 i corespunde prin (4.47)
t
= /2 si deci folosim apelul (nu uitat i,
frecvent ele sunt mereu normalizate)
>> [b, a] = butter(3, 0.5)
Filtrele discrete Chebyshev, de tip I si II, si eliptic se proiecteaza cu funct iile
cheby1, cheby2 si, respectiv, ellip. De exemplu, ltrul Chebyshev de tip I se
obt ine cu
>> [b, a] = cheby1(N, Mb, wb)
unde Mb este nalt imea ondulat iilor n banda de trecere, n decibeli, N este ordinul
ltrului iar wb este frecvent a maxima de trecere.

In plus fat a de comportarea deja descrisa, toate aceste funct ii permit proiectarea
unor ltre trece-sus sau opreste-banda (care se obt in prin transformari n frecvent a
ale ltrului trece-jos). De asemenea, ele pot calcula ltre analogice, nlaturand
restrict ia
t
= 1 de la funct iile buttap etc.
Capitolul 5
Analiza n frecvent a a
semnalelor
Scopul acestui capitol este de a prezenta metode pentru studiul practic al cont inutului
n frecvent a al unui semnal discret. Principalul instrument utilizat este transformata
Fourier discreta, calculata cu ajutorul algoritmului FFT (Fast Fourier Transform
transformata Fourier rapida). Semnalele de care ne ocupam sunt de doua tipuri,
rezultate din practica si legate ntre ele:
semnale periodice
semnale cu suport nit
Primele sunt utilizate n multe aplicat ii, iar cont inutul lor n frecvent a poate calcu-
lat utilizand o singura perioada a semnalului. Utilitatea suportului nit mai apare
si atunci cand trebuie analizate n timp real proprietat ile unui semnal neperiodic
(si eventual nestat ionar); n acest scop, se iau port iuni (cadre) succesive ale sem-
nalului, ecare avand evident suport nit; n ecare cadru se calculeaza cont inutul
n frecvent a pentru intervalul de timp corespunzator.

In tot acest capitol, daca x[n] este un semnal N-periodic, notam x[n] semnalul
cu suport 0 : N 1 care reprezinta o perioada a lui x[n], adica
x[n] =
_
x[n], daca x 0 : N 1,
0, altfel.
(5.1)
Invers, daca x[n] este un semnal cu suport 0 : N 1, notam x[n] prelungirea lui
prin periodicitate, data de
x[n] = x[n mod N]. (5.2)
5.1 Seria Fourier discreta
Fie x[n] un semnal N-periodic, i.e. x[n + kN] = x[n], k Z. Ca si n cazul
semnalelor continue, un semnal discret periodic se poate descompune ca o suma
de sinusoide a caror frecvent a este multiplu al frecvent ei fundamentale 2/N. Spre
133
134 CAPITOLUL 5. ANALIZA

IN FRECVENT

A A SEMNALELOR
deosebire de cazul continuu, unde suma are o innitate de termeni distinct i, n cazul
discret exista doar N sinusoide distincte (vezi sect iunea 1.1).
Teorema 5.1 (Reprezentarea unui semnal periodic prin seria Fourier) Orice sem-
nal N-periodic x[n] se poate reprezenta prin seria Fourier discret a (SFD)
x[n] =
1
N
N1

k=0

X[k]e
j
2
N
kn
. (5.3)
Valorile

X[k], k = 0 : N 1, se numesc coecient ii seriei Fourier discrete.
Factorul 1/N a fost introdus doar din considerente formale.
Notam, pe tot parcursul capitolului,
w
N
= e
j
2
N
. (5.4)
Cu aceasta notat ie, relat ia (5.3) se scrie
x[n] =
1
N
N1

k=0

X[k]w
kn
N
. (5.5)
Notam
F
N
=
_

_
w
0
N
w
0
N
. . . w
0
N
w
0
N
w
1
N
. . . w
(N1)
N
w
0
N
w
2
N
. . . w
2(N1)
N
.
.
.
.
.
. . . .
.
.
.
w
0
N
w
(N1)
N
. . . w
(N1)
2
N
_

_
. (5.6)
Notand (oarecum abuziv)
x =
_

_
x[0]
x[1]
.
.
.
x[N 1]
_

_
,

X =
_

X[0]

X[1]
.
.
.

X[N 1]
_

_
, (5.7)
se observa imediat ca relat ia (5.3) se poate scrie n forma compacta
x =
1
N
F
H
N

X. (5.8)
Propozit ia 5.2 Matricea F
N
denit a de (5.6) are structur a Vandermonde, este
simetric a, iar F
H
N
F
N
= F
N
F
H
N
= N I (adic a
1

N
F
N
este o matrice unitar a).
Demonstrat ie. Structura Vandermonde si simetria sunt evidente. Atent ie, ma-
tricea F
N
nu este hermitica, adica F
N
= F
H
N
. Pentru restul demonstrat iei, vezi
problema PR5.1.2.
5.1. SERIA FOURIER DISCRET

A 135
Teorema 5.3 (Calculul coecient ilor seriei Fourier discrete) Coecient ii seriei Fourier
(5.3) asociate semnalului periodic x[n] au forma

X[k] =
N1

n=0
x[n]e
j
2
N
kn
=
N1

n=0
x[n]w
kn
N
. (5.9)
Folosind notat iile (5.6) si (5.7), putem scrie echivalent

X = F
N
x. (5.10)
Demonstrat ie.

Inmult im la stanga cu F
N
n (5.8) si obt inem, grat ie Prop. 5.2,
egalitatea (5.10). La nivel de element, aceasta egalitate este echivalenta cu (5.9).
Asadar, transformarea dintre vectorul x, reprezentand o perioada a semnalului
N-periodic x[n], si vectorul

X este biunivoca, n sensul ca relat iile (5.3) si (5.9) sunt
una inversa celeilalte. Aceste relat ii sunt numite
(5.9): de analiz a, prin care din semnalul x[n] se calculeaza coecient ii seriei
Fourier, care arata ponderea ecarei sinusoide n semnal (

X[k] este coecientul
sinusoidei de frecvent a 2k/N, iar |

X[k]|
2
este puterea acestei frecvent e n
semnal; pentru lamuriri suplimentare, vezi problema PR5.1.3);
(5.3): de sintez a, prin care semnalul este refacut din coecient ii seriei Fourier.
Desigur, coecient ii

X[k] ai seriei Fourier pot denit i pentru orice k Z, sem-
nalul astfel obt inut ind N-periodic.
Proprietat i ale seriei Fourier discrete
Vom enumera n continuare cateva proprietat i importante ale seriei Fourier dis-
crete. Fie x[n], y[n] semnale complexe N-periodice, iar

X[k] = SFD( x[n]),

Y [k] =
SFD( y[n]), seriile Fourier discrete asociate acestora. Pentru comparat ie, revedet i
n sect iunea 1.2 proprietat ile similare ale transformatei Fourier.
Liniaritate. Pentru orice , C avem
SFD( x[n] + y[n]) = SFD( x[n]) + SFD( y[n]). (5.11)

Int arziere. Fie n


0
un ntreg oarecare si y[n] = x[n n
0
]. Observat i n gura 5.1
ca ntarzierea cu n
0
a unui semnal N-periodic este echivalenta cu deplasarea ciclica
de n
0
ori la dreapta a esantioanelor cu suportul 0 : N 1. Atunci avem

Y [k] = w
kn0
N

X[k]. (5.12)
Complex conjugare. Fie y[n] = x

[n]. Atunci avem

Y [k] =

X

[k] =

X

[N k]. (5.13)
Simetrii ale SFD pentru semnale reale. Daca semnalul x[n] este real, atunci au
loc urmatoarele proprietat i de simetrie:

X[k] =

X

[k]
Re

X[k] = Re

X[k]
Im

X[k] = Im

X[k]
|

X[k]| = |

X[k]|
arg

X[k] = arg

X[k]
(5.14)
136 CAPITOLUL 5. ANALIZA

IN FRECVENT

A A SEMNALELOR
n
... ...
n
... ...
Figura 5.1: Stanga: semnal periodic cu perioada N = 6. Dreapta: acelasi semnal,
dupa ntarzierea cu n
0
= 2. (Liniile punctate verticale marcheaza perioade ale
semnalelor.)
Cu alte cuvinte, |

X[k]| si Re

X[k] sunt funct ii discrete (n variabila k) pare, iar
Im

X[k] si arg

X[k] sunt funct ii impare.

In plus, toate aceste funct ii sunt N-periodice.
Timp invers. Consideram semnalul y[n] = x[n]. Avem

Y [k] =

X

[k]. (5.15)
Teorema lui Parseval.

In privint a conservarii energiei prin transformarea
SFD, avem urmatorul rezultat similar cu (1.21):
N1

n=0
| x[n]|
2
=
1
N
N1

k=0
|

X[k]|
2
. (5.16)
Convolut ie periodic a. Pentru semnalele N-periodice se deneste o operat ie spe-
cica de convolut ie, care ia n considerare doar cate o perioada a semnalelor.
Denit ia 5.4 Convolut ia periodica a semnalelor N-periodice x[n] si y[n] este sem-
nalul
x[n] y[n]
def
=
N1

=0
x[] y[n ]. (5.17)
Seria Fourier discreta asociata convolut iei a doua semnale este produsul (la nivel
de element) al seriilor Fourier ale semnalelor, i.e.
SFD( x[n] y[n]) =

X[k]

Y [k]. (5.18)
Modulat ie n timp. Avem un rezultat dual cu (5.18), anume
SFD( x[n] y[n]) =
1
N

X[k]

Y [k]. (5.19)
5.1. SERIA FOURIER DISCRET

A 137
Probleme rezolvate
PR 5.1.1 Demonstrat i ca, pentru m Z, este adevarata egalitatea
N1

k=0
w
km
N
=
_
N, daca m mod N = 0,
0, altfel,
(5.20)
unde w
N
este constanta denita de (5.4).
Solut ie. Vezi problema PR3.3.1, unde se demonstreaza o relat ie asemanatoare.
PR 5.1.2 Demonstrat i ca F
H
N
F
N
= N I, unde F
N
este matricea (5.6).
Solut ie. Calculam elementul (i, ) al matricei F
H
N
F
N
, folosind (5.20):
(F
H
N
F
N
)
i
=
N1

k=0
w
ki
N
w
k
N
=
N1

k=0
w
k(i)
N
=
_
N, daca i = ,
0, daca i = .
(Observam ca, deoarece i, 0 : N 1, singurul caz n care egalitatea (i ) mod
N = 0 are loc este cand i = .)
PR 5.1.3 Calculat i coecient ii seriilor Fourier discrete asociate urmatoarelor sem-
nale N-periodice
x
1
[n] = e
j
2m
N
n
,
x
2
[n] = e
j
2m
N
n
,
x
3
[n] = sin
_
2m
N
n
_
,
x
4
[n] = cos
_
2m
N
n
_
,
unde m 0 : N 1. (Se observa ca, daca m si N nu sunt numere prime ntre ele,
perioada semnalelor este de fapt mai mica. Chiar si n acest caz, le consideram tot
N-periodice.)
Solut ie. Identicand pur si simplu n (5.3), obt inem, pentru k 0 : N 1,

X
1
[k] = N[k m],
i.e. doar coecientul X
1
[m] este nenul si deci toata puterea semnalului este concen-
trata ntr-o singura frecvent a. La fel, observand c a
x
2
[n] = e
j
2(Nm)
N
n
,
obt inem

X
2
[k] = N[k (N m)].
Pentru celelalte doua semnale, observam ca
x
3
[n] =
x
1
[n] x
2
[n]
2j
, x
4
[n] =
x
1
[n] +x
2
[n]
2
.
138 CAPITOLUL 5. ANALIZA

IN FRECVENT

A A SEMNALELOR
Asadar, seria Fourier asociata unei sinusoide complexe de frecvent a 2m/N are un
singur coecient nenul, cel cu indice m sau N m; daca sinusoida este reala, atunci
ambii coecient i sunt nenuli. Deci, n general, puterea unui semnal N-periodic x[n]
n frecvent a 2m/N este data de doi coecient i ai SFD, anume

X[m] si

X[N m].
PR 5.1.4 Demonstrat i proprietat ile (5.115.19) ale seriei Fourier discrete.
Solut ie. Liniaritatea (5.11) este evidenta.

Int arziere. Aplicand denit ia (5.9) obt inem

Y [k] =
N1

n=0
y[n]w
kn
N
=
N1

n=0
x[n n
0
]w
k(nn0)
N
w
kn0
N
= w
kn0
N

X[k].
Am t inut seama de faptul ca atat x[n] cat si v[n] = w
kn
N
sunt semnale N-periodice,
si deci
N1

n=0
x[n n
0
]w
k(nn0)
N
=
N1

n=0
x[n]w
kn
N
.
Complex conjugare. Pentru y[n] = x

[n] obt inem

Y [k] =
N1

n=0
x

[n]w
kn
N
=
_
N1

n=0
x[n]w
kn
N
_

=

X

[k] =

X

[N k].
Ultima egalitate rezulta din periodicitatea coecient ilor SFD.
Simetriile TF pentru semnale reale rezulta din (5.13), t inand seama ca x

[n] =
x[n]. Asadar avem

X[k] = X

[k], ceea ce implica toate relat iile (5.14).


Timp invers. Aplicand denit ia (5.9) obt inem

Y [k] =
N1

n=0
x[n]w
kn
N
=
_
N1

n=0
x

[N n]w
k(Nn)
N
_

= SFD( x

[n])

=

X

[k].
Teorema lui Parseval. Utilizand relat ia (5.8) si Prop. 5.2 obt inem
N1

n=0
| x[n]|
2
= x
H
x =
1
N

X
H

X =
1
N
N1

k=0
|

X[k]|
2
.
Convolut ie periodic a. Seria Fourier discreta asociata semnalului x[n] y[n]
denit n (5.17) este
N1

n=0
N1

=0
x[] y[n ]w
kn
N
=
_
N1

=0
x[]w
k
N
__
N1

n=0
y[n ]w
k(n)
N
_
=

X[k]

Y [k].
ceea ce demonstreaza (5.18). Expresia de mai sus pentru

Y [k] este corecta deoarece
atat y[n ] cat si w
k(n)
N
(cu n ca variabila timp) sunt N-periodice.
Modulat ie n timp. Relat ia (5.19) se demonstreaza pornind de la termenul din
dreapta, n care se substituie denit ia (5.9).
5.2. TRANSFORMATA FOURIER DISCRET

A 139
Probleme propuse
PP 5.1.1 Constanta w
N
din (5.4) are numeroase proprietat i, unele extrem de utile
n continuare.
a. Demonstrat i ca daca N si n sunt divizibile cu k atunci avem w
n
N
= w
n/k
N/k
.
b. Demonstrat i ca w
N/2
N
= 1, w
N/4
N
= j, w
3N/4
N
= j.
c. Demonstrat i ca ecuat ia z
N
1 = 0 are solut iile w
n
N
, n = 0 : N 1. Din egali-
tatea z
N
1 =

N1
n=0
(z w
n
N
), folosind relat iile lui Vi`ete, deducet i alte proprietat i
ale numerelor w
n
N
.
PP 5.1.2 a. Fie x[n] un semnal N-periodic. Seria Fourier discreta

X[k] = SFD( x[n])
a semnalului este N-periodica, asadar i putem asocia ei nsasi o serie Fourier dis-
creta. Demonstrat i ca SFD(

X[k]) = N x[n] (atent ie, n ultima relat ie am inter-
schimbat rolurile uzuale ale indicilor n si k). Asadar, prin calculul succesiv a doua
SFD (5.9) obt inem semnalul original, n timp invers, scalat cu factorul N.
b. Fie F
N
matricea denita n (5.6). Demonstrat i ca
F
2
N
= N
_
1 0
0 J
N1
_
,
unde J
N1
este matricea contraidentitate (cu 1 pe diagonala secundara si 0 n
rest), de dimensiune (N 1) (N 1). Observat i, utilizand (5.10), ca egalitatea
de mai sus constituie o alta demonstrat ie a cerint ei de la punctul a.
PP 5.1.3 (Proprietat i ale convolut iei periodice)
a. Demonstrat i ca operat ia de convolut ie periodica este comutativa si asociativa.
b. Fie x[n], y[n] doua semnale periodice si v[n] = x[n] y[n] convolut ia lor
periodica. Demonstrat i ca pentru orice n
0
N avem
v[n n
0
] = x[n n
0
] y[n] = x[n] y[n n
0
].
5.2 Transformata Fourier discreta
Fie x[n] un semnal cu suport 0 : N 1. Dorim sa analizam spectrul acestui semnal.
Transformata Fourier (TF) a semnalului este
X() =
N1

n=0
x[n]e
jn
. (5.21)
Desigur, aceasta expresie poate utilizata pentru evaluarea spectrului n orice punct
[0, 2]. Totusi, un mod de calcul mai ecient, prin care se obt ine spectrul doar
n N puncte echidistante, se bazeaza pe transformata Fourier discreta.
Denit ia 5.5 Transformata Fourier discreta (TFD) a semnalului x[n] cu suport
0 : N 1 este secvent a
X[k] =
N1

n=0
x[n]e
j
2
N
kn
=
N1

n=0
x[n]w
kn
N
, k = 0 : N 1, (5.22)
140 CAPITOLUL 5. ANALIZA

IN FRECVENT

A A SEMNALELOR
n
|x[n]|
1
k

N/2

N
2
|X[k]|
0
1
Figura 5.2: Stanga: un semnal cu suport 0 : 7. Dreapta: spectrul semnalului
(amplitudine) si esantioanele obt inute cu TFD.
unde w
N
este denit de (5.4). Vom nota n continuare X[k] = TFD
N
(x[n]) (ig-
nor and eventual indicele N atunci c and lungimea suportului rezult a din context).
Observat ia 5.6 Comparand (5.21) si (5.22), observam relat ia dintre TF si TFD.
Se observa ca punand = 2k/N, k 0 : N 1, n TF (5.21), obt inem exact TFD
(5.22). Asadar, pentru semnale cu suport nit, TFD reprezinta o esantionare a TF,
n N frecvent e echidistante aate n intervalul [0, 2]. Pentru ilustrare, prezentam
n gura 5.2 un semnal cu suport 0 : 7 (deci N = 8), transformata Fourier a acestuia
(care este o funct ie continua cu suport [0, 2]) si transformata Fourier discreta a
semnalului, care esantioneaza TF n frecvent ele 0 : /4 : 7/4.
Observat ia 5.7 De asemenea, se observa imediat, comparand (5.22) cu (5.9), ca
TFD se deneste la fel ca seria Fourier discreta asociata semnalului N-periodic
x[n], care reprezinta prelungirea prin periodicitate (5.2) a semnalului x[n]. Facem
convent ia ca TFD se deneste doar pe esantioanele 0 : N 1, n timp ce SFD se
prelungeste prin periodicitate pentru orice k Z; n acest fel, notat iile X[k] din
(5.22) si

X[k] din (5.9) sunt consistente.
Cele doua observat ii de mai sus ne arata cum pot deduse usor proprietat ile
TFD.

In primul rand, toate proprietat ile SFD din sect iunea precedenta se pot aplica
transformatei Fourier discrete. Singura precaut ie care trebuie luata este de a evita
iesirea din suportul nit 0 : N 1 n urma deplasarilor. Ca n gura 5.1, toate
deplasarile sunt interpretate ciclic n intervalul 0 : N 1. Vom exemplica n
continuare prin analogul relat iei (5.12).
Deplasarea ciclic a a unui semnal. Fie x[n] un semnal cu suport 0 : N 1.
Semnalul deplasat circular (ntarziat) cu n
0
esantioane la dreapta este y[n] =
x[(n n
0
) mod N], iar TFD a sa este
Y [k] = w
kn0
N
X[k]. (5.23)
5.2. TRANSFORMATA FOURIER DISCRET

A 141
Se observa ca formal relat ia de mai sus este identica cu (5.12).
Convolut ia circular a. Ideea deplasarii ciclice se aplica si pentru a deni o
operat ie de convolut ie specica semnalelor cu acelasi suport nit.
Denit ia 5.8 Convolut ia ciclica a semnalelor x[n] si y[n], ambele cu suport nit
0 : N 1, este semnalul
x[n]
N
y[n]
def
=
N1

=0
x[]y[(n ) mod N]. (5.24)
Transformata Fourier discreta a convolut iei ciclice a doua semnale cu suport
0 : N 1 este produsul (la nivel de element) al TFD ale celor doua semnale, i.e.
TFD(x[n]
N
y[n]) = X[k] Y [k]. (5.25)

In al doilea rand, proprietat ile TFD pot deduse din cele ale TF, avand n
vedere ca TFD este o esantionare a TF. De exemplu, relat iile de simetrie (5.3) ale
SFD pentru semnale reale (identice ca forma pentru TFD, dupa nlaturarea tildei
care marcheaza periodicitatea) pot deduse direct din proprietat ile similare (1.17)
ale TF.

In ne, sa ment ionam ca transformata Fourier discreta inversa (TFDI) are o


forma identica cu (5.3).
Propozit ia 5.9 Dac a x[n] este un semnal cu suport 0 : N1 si X[k] = TFD(x[n]),
atunci are loc egalitatea
x[n] =
1
N
N1

k=0
X[k]e
j
2
N
kn
=
1
N
N1

k=0
X[k]w
kn
N
(5.26)
care deneste transformata Fourier discret a invers a.
Probleme rezolvate
PR 5.2.1 Fie x[n] un semnal cu suport 0 : N1. Am vazut ca X[k] = TFD
N
(x[n])
calculeaza o esantionare n N puncte a spectrului semnalului x[n].
a. Fie m un ntreg pozitiv si x
0
[n] semnalul obt inut prin prelungirea cu zerouri
a semnalului x[n] pana la lungime mN, i.e.
x
0
[n] =
_
x[n], daca 0 n N 1,
0, daca N n mN 1.
(De fapt am prelungit articial suportul lui x[n].) Demonstrat i ca TFD
mN
(x
0
[n])
este o esantionare n mN puncte a spectrului semnalului x[n].
b. Cum se poate obt ine o esantionare a spectrului semnalului x[n] n N/m
puncte, unde m este un divizor al lui N ?
142 CAPITOLUL 5. ANALIZA

IN FRECVENT

A A SEMNALELOR
Solut ie. a.

In mod evident avem
X() =
N1

n=0
x[n]e
jn
= X
0
(),
deci transformatele Fourier ale semnalelor x[n] (cu suport 0 : N 1) si x
0
[n] (cu
suport 0 : mN 1) coincid. Concluzia rezulta imediat. Observam ca putem pune
n loc de mN orice ntreg N

> N, nu neaparat un multiplu al lui N.


b. Se calculeaza pur si simplu mai put ine esantioane ale TFD (5.22), alegand
valori convenabile k 0 : N 1.
PR 5.2.2 Fie x[n] un semnal cu suport 0 : N 1. Prin interpolare de ordinul 2,
se construieste semnalul y[n], cu suport 0 : 2N 1, denit prin
y[n] = x[n] 2
def
=
_
x[n/2], pentru n par,
0, pentru n impar,
Fie X[k] = TFD
N
(x[n]) si Y [k] = TFD
2N
(y[n]) (atent ie, cele doua transformate
au suporturi diferite). Care este legatura dintre X[k] si Y [k] ? Ilustrat i grac
aceasta legatura.
Generalizat i pentru interpolarea de ordin M, cand y[n] are suport 0 : MN 1
si este denit ca n relat ia (3.27).
Solut ie. Utilizand denit ia (5.22), obt inem
Y [k] =
2N1

n=0
y[n]w
kn
2N
=
N1

n=0
x[n]w
2kn
2N
=
N1

n=0
x[n]w
kn
N
= X[k].

In egalitatea de mai sus am prelungit prin periodicitate X[k]; riguros, ar trebui sa


scriem Y [k] = X[k mod n], k = 0 : 2N 1. Asadar transformata Fourier discreta
a lui x[n] 2 se compune din doua copii alaturate ale TFD
N
(x[n]). Daca X[k]
are forma din stanga gurii 5.3, atunci Y [k] are forma din dreapta aceleiasi guri.
Observat i similaritatea cu gura 3.18, care este natural a avand n vedere ca TFD
reprezinta o esantionare a spectrului semnalului.

In general, n cazul interpolarii de ordin M, transformata Y [k] se compune din


M copii alaturate ale lui X[k].
Probleme propuse
PP 5.2.1 Calculat i transformatele Fourier discrete ale semnalelor x
0
[n] = 1 si
x
1
[n] = (1)
n
, ambele cu suport 0 : N 1. Pentru al doilea semnal, observat i
ca rezultatul depinde de paritatea lui N.
PP 5.2.2 Fie x[n], y[n] doua semnale reale, cu suport 0 : N 1. Semnalul x
n
este
simetric, n sensul ca x[n] = x[(N n) mod N], iar y[n] este antisimetric, n sensul
ca y[n] = y[(N n) mod N].
a. Fie X[k], Y [k] transformatele Fourier discrete ale celor doua semnale. Demon-
strat i ca X[k] este reala, iar Y [k] pur imaginara.
5.2. TRANSFORMATA FOURIER DISCRET

A 143
k

N/2

N
2
|X[k]|
0 k

N/2

N
2
|Y[k]|
0
Figura 5.3: Stanga: TFD a unui semnal x[n] real. Dreapta: TFD a semnalului
x[n] 2. (Cu linie continua sunt desenate TF ale celor doua semnale.)
b. Observat i ca orice semnal real v[n] se poate scrie n forma v[n] = x[n] +y[n],
cu x[n] simetric si y[n] antisimetric. Dandu-se V [k] = TFD
N
(v[n]), cum pot
calculate x[n], y[n] ?
PP 5.2.3 Fie x[n] un semnal cu suport 0 : N 1, iar y[n] un semnal cu suport
0 : 2N 1, astfel ncat y[n] = x[n mod N] (adica semnalul y[n] se compune din
doua copii alaturate ale lui x[n]).
Fie X[k] = TFD
N
(x[n]) si Y [k] = TFD
2N
(y[n]) Care este legatura dintre X[k]
si Y [k] ? Ilustrat i grac aceasta legatura.
Ghid Matlab
Transformata Fourier discreta a unui semnal x (memorat ntr-un vector) se cal-
culeaza cu
>> X = fft(x)
Daca suportul mesajului are lungime putere a lui 2, atunci algoritmul folosit este
FFT (transformata Fourier rapida), care va discutat n sect iunea urmatoare; altfel,
se foloseste un algoritm mai lent. Apelul
>> X = fft(x, N)
calculeaza TFD a semnalului x prelungit cu zerouri pana la lungime N. Asa cum am
vazut n problema PR5.2.1, o astfel de TFD calculeaza o esantionare mai deasa a
spectrului semnalului.
Transformata Fourier discreta inversa se calculeaza cu
>> x = ifft(X)
Evident, ifft(fft(x)) produce semnalul original (cu inevitabilele erori numerice).
Deoarece funct ia fft calculeaza DFT conformdenit iei (5.22), vectorul X obt inut
reprezinta o esantionare a spectrului denit pe [0, 2). Funct ia fftshift realizeaza
deplasarea vectorului X astfel ncat spectrul esantionat sa corespunda intervalului
[, ). Apelul
144 CAPITOLUL 5. ANALIZA

IN FRECVENT

A A SEMNALELOR
>> Y = fftshift(X)
muta n primele N/2 pozit ii din Y a doua jumatate a vectorului X.
5.3 Transformata Fourier rapida
Transformata Fourier rapida (FFT Fast Fourier Transform) este numele generic
pentru o clasa de algoritmi rapizi de calcul al transformatei Fourier discrete (TFD),
pentru semnale cu suport nit. Primul algoritm de acest tip a fost propus de
Cooley si Tukey n 1965. Numele FFT provine din complexitatea de O(N log
2
N)
operat ii aritmetice necesare calculului TFD al unui semnal cu N esantioane. Spre
deosebire, algoritmul banal care implementeaza (5.22) ca atare (printr-o nmult ire
matrice-vector) necesita O(N
2
) operat ii. Reducerea complexitat ii este semnicativa
pentru valori practice ale marimii suportului: pentru N = 1024, avem N
2
10
6
si
N log
2
N 10
4
; deja pentru N = 100 complexitatea scade de N/ log
2
N > 10 ori.
Notam TFD
N
() transformata Fourier discreta a unui semnal (neprecizat) cu
suport de lungime N. Vom prezenta mai jos doi algoritmi de tip FFT, bazat i pe
ideea de decimare, adica de reducere a calculului TFD
N
() la calculul unor TFD de
lungime mai mica. Pentru simplitatea prezentarii, vom considera doar cazul practic
n care N este o putere a lui 2.

In acest caz, decimarea este de fapt njumatat ire,
iar calculul TFD
N
() se reduce la calculul a doua transformari TFD
N/2
(). Ideea
esent iala este de a aplica recursiv procedeul de decimare, pentru calculul ecarei
TFD de lungime mai mica. Asadar, algoritmii FFT sunt de tip divide et impera.
Vom detalia metodele de decimare si aplicarea lor recursiva n cele ce urmeaza.
5.3.1 Decimare n timp
Spargerea calculului TFD
N
(x[n]), unde x[n] este un semnal cu suport 0 : N 1, iar
N este putere a lui doi, se face protand de urmatoarea separare, n esent a extrem
de simpla, a relat iei de denit ie (5.22):
X[k] =
N1

n=0
x[n]w
kn
N
=
N1

n par
x[n]w
kn
N
+
N1

n impar
x[n]w
kn
N
=
N/21

m=0
x[2m]w
2km
N
+
N/21

m=0
x[2m+ 1]w
k(2m+1)
N
=
N/21

m=0
x[2m]w
km
N/2
+w
k
N
N/21

m=0
x[2m+ 1]w
km
N/2
. (5.27)
Asadar, n prima linie a sirului de egalitat i de mai sus avem denit ia (5.22) a TFD.

In a doua linie, separam suma din prima linie n doua sume, una corespunzand
indicilor pari, cealalta celor impari.

In a treia linie exprimam formal separarea prin
5.3. TRANSFORMATA FOURIER RAPID

A 145

U[1] = U[5]
w
0
N
w
1
N
w
4
N
w
5
N
U[0] = U[4]
U[2] = U[6]
U[3] = U[7]
V [1] = V [5]
V [0] = V [4]
V [2] = V [6]
V [3] = V [7]
w
6
N
w
7
N
w
2
N
w
3
N
X[0]
X[1]
X[2]
X[3]
X[4]
X[5]
X[6]
X[7]
TFD
N/2
()
TFD
N/2
()

x[0]
x[2]
x[4]
x[6]
x[1]
x[3]
x[5]
x[7]
Figura 5.4: Calculul unei TFD de lungime N = 8 utilizand doua TFD de lungime
N/2 = 4 (decimare n timp).
substitut iile n = 2m, m = 0 : N/21, n prima suma, si n = 2m+1, m = 0 : N/21,
n a doua. Trecerea la ultima linie se bazeaza pe relat ia evidenta
w
2km
N
= e
j
2
N
2km
= e
j
2
N/2
km
= w
km
N/2
.
Din (5.27) rezulta ca TFD
N
(x[n]) se calculeaza ca suma a doua TFD a unor semnale
cu suport 0 : N/21, formate din esantioanele pare, respectiv impare, ale semnalului
x[n]. Notand x
p
[m] = x[2m] si x
i
[m] = x[2m+ 1] aceste semnale si
U[k] = TFD
N/2
(x
p
[m]), V [k] = TFD
N/2
(x
i
[m])
transformatele Fourier discrete ale lor (de lungime N/2), putem scrie
X[k] = U[k] +w
k
N
V [k], k = 0 : N 1. (5.28)
Atent ie, n aceasta relat ie avem k = 0 : N 1, deci apar dou a perioade ale trans-
formatelor Fourier discrete U[k], V [k]. Schema de calcul corespunzatoare relat iei
(5.28) este ilustrata n gura 5.4; convenim ca unirea a doua saget i sa reprezinte o
operat ie de sumare; o constanta, e.g. w
k
N
, asociata unei saget i nseamna nmult irea
semnalului reprezentat de sageata cu constanta respectiva. Numarul de operat ii
necesar pentru implementarea relat iei (5.28), presupun and U[k] si V [k] cunoscute,
este de 2N, anume N adunari complexe si N nmult iri complexe.
146 CAPITOLUL 5. ANALIZA

IN FRECVENT

A A SEMNALELOR
Cheia reducerii numarului de operat ii n algoritmul FFT este utilizarea recursiva
a modului de calcul din relat ia (5.27) si gura 5.4, pentru calculul ecarei TFD de
lungime mai mica. Putem ilustra ideea prin urmatoarea funct ie recursiva, care
calculeaza TFD
N
(x[n]).
funct ie X = FFT(x, N)
1. daca N = 1 atunci
1. X = x
2. altfel
1. Pune x
p
[m] = x[2m], x
i
[m] = x[2m+ 1], pentru m = 0 : N/2 1
2. Calculeaza U = FFT(x
p
, N/2), V = FFT(x
i
, N/2) (apel recursiv)
3. X[k] = U[k] + w
k
N
V [k], pentru k = 0 : N/2 1
4. X[k] = U[k N/2] +w
k
N
V [k N/2], pentru k = N/2 : N 1
Asadar, se folosesc apeluri recursive pana cand se ajunge la TFD de lungime
1, cand transformata este identica cu semnalul init ial. Notand T(N) numarul de
operat ii necesar calculului TFD
N
(), din algoritmul de mai sus observam ca este
ndeplinita relat ia recursiva
T(N) = 2T(N/2) + 2N, T(1) = 0. (5.29)
Rezolvarea ei furnizeaza T(N) = 2N log
2
N; vom vedea imediat un mod mai intuitiv
de obt inere a aceluiasi rezultat.

In implementarile practice ale algoritmului FFT nu se folosesc apelurile recur-


sive, ci variante iterative echivalente, care conduc la programe mai eciente. Pentru
a ilustra varianta iterativa, am detaliat schema operat iilor pentru calculul TFD
8
()
n gura 5.5. Schema, numita diagrama uture, datorita formei sale, este obt inuta
din cea din gura 5.4 prin detalierea operat iilor necesare tuturor TFD de lungime
mai mica. Liniile punctate verticale separa etapele de calcul (iterat iile sau nivelele
de recursie, dupa cum interpretam algoritmul); n ecare etapa se combina TFD
de lungime mai mica, pentru a obt ine un numar de doua ori mai mic de TFD de
lungime dubla. Observam cu usurint a ca sunt log
2
N etape si ca n ecare dintre
ele se efectueaza 2N operat ii, ceea ce conduce la totalul deja calculat de 2N log
2
N.
Ontrebare imediata este n ce ordine se aa esantioanele semnalului de intrare.
(Iesirea este ordonata natural.) Parcurgand diagrama din gura 5.5 de la dreapta
la stanga, si avand n vedere separarea n part ile para si impara a semnalului de
intrare (ca n gura 5.4), observam urmatoarele.

Inaintea ultimei etape, elementele
x[n], cu n par, se aa n jumatatea de sus a diagramei (adica sunt primele), iar cele
cu n impar se aa n jumatatea de jos. Asadar, privind la reprezentarea binara a
lui n, elementele cu ultimul bit al indicelui egal cu zero sunt n prima jumatate.
Sa privim acum doar la secvent a elementelor cu n par.

Inaintea penultimei etape,
ele sunt separate n doua; cele cu indice par n aceasta secvent a, adica cele pentru
care n se divide cu 4, sau pentru care penultimul bit al lui n este zero, se aa
n sfertul de sus al diagramei; celelalte, pentru care penultimul bit este 1, sunt n
al doilea sfert. Continuand rat ionamentul, observam c a semnalul de intrare este
ordonat dupa numerele obt inute prin inversarea bit ilor indicilor. De exemplu, cu
5.3. TRANSFORMATA FOURIER RAPID

A 147
w
0
8
w
1
8
w
4
8
w
5
8
w
6
8
w
7
8
w
2
8
w
3
8
X[0]
X[1]
X[2]
X[3]
X[4]
X[5]
X[6]
X[7]

w
0
4
w
1
4

w
2
4
w
3
4

w
0
4
w
1
4

w
2
4
w
3
4

>
>
>
>
>
>

w
0
2
w
1
2

>
>
>
>
>
>

w
0
2
w
1
2
>
>
>
>
>
>

w
0
2
w
1
2
>
>
>
>
>
>

w
0
2
w
1
2
x[0]
x[4]
x[2]
x[6]
x[1]
x[5]
x[3]
x[7]
Figura 5.5: Schema completa de calcul al TFD de lungime N = 8 (decimare n
timp).
referint a la gura 5.5, elementul cu indicele 1 = 001
2
este n pozit ia 4 = 100
2
;
ordinea completa este (toate numerele sunt n baza 2): 000, 100, 010, 110, 001,
101, 011, 111. Spunem ca un semnal astfel ordonat se aa n ordine bit-invers a a
indicilor.

Inainte de a scrie algoritmul iterativ anunt at mai devreme, vom face mici modicari
n diagrama din gura 5.5. Rezultatul este diagrama de calcul din gura 5.6,
obt inuta prin simple manipulari ale puterilor numerelor de tip (5.4). Observam
ntai ca, cu referire la (5.28), avem w
k
N
= w
kN/2
N
. Apoi, pentru K putere a lui
2, putem scrie w
m
K
= w
mN/K
N
.

In concluzie, constatam ca se pot utiliza doar con-
stantele w
k
N
, k = 0 : N/2 1.

In ne, calculele se pot desfasura pe loc n vectorul
care cont ine semnalul init ial x[n]. Algoritmul corespunzator diagramei din gura
5.6 este urmatorul:
funct ie x = FFT decimare timp(x, N)
1. Ordoneaza x n ordine bit-inversa a indicilor
2. pentru i = 1 : log
2
N
1. K = 2
i
2. pentru k = 0 : K : N 1
1. pentru m = 0 : K/2 1
1. y = x[k +m]
2. z = w
mN/K
N
x[k +K/2 +m]
3. x[k +m] = y +z
4. x[k +K/2 +m] = y z
148 CAPITOLUL 5. ANALIZA

IN FRECVENT

A A SEMNALELOR
1
1
1
1
X[0]
X[1]
X[2]
X[3]
X[4]
X[5]
X[6]
X[7]

1
1

1
1
>
>
>
>
>
>

1
>
>
>
>
>
>

1
>
>
>
>
>
>

1
>
>
>
>
>
>

1
x[0]
x[4]
x[2]
x[6]
x[1]
x[5]
x[3]
x[7]
w
0
8
w
1
8
w
2
8
w
3
8
w
0
8
w
2
8
w
0
8
w
2
8

w
0
8
w
0
8
w
0
8
w
0
8
Figura 5.6: Schema mbunatat ita de calcul al TFD de lungime N = 8.
Acest algoritm are avantajul ca necesita, dupa cum se vede si din gura 5.6,
doar 3N/2 log
2
N operat ii complexe, din care doar N/2 nmult iri; castigul fat a de
diagrama din gura 5.5 este datorat aparit iei constantelor 1; ele nu mai nece-
sita nmult iri, ci doar transforma unele adunari n scaderi. Datorita calculului pe
loc, memoria necesara este de doar N locat ii (plus alte cateva pentru variabilele
auxiliare). O implementare Matlab a acestui algoritm este prezentata n problema
PR5.3.1.
5.3.2 Decimare n frecvent a
Calculul FFT prin decimare n frecvent a se bazeaza pe o idee duala celei folosite
n (5.27) pentru decimarea n timp. Mai precis, daca acolo se separa semnalul x[n]
ntr-o parte para si una impara, acum separarea se face n transformata Fourier
discreta X[k]. Consideram ntai indicii pari, k = 2, = 0 : N/2 1 si, folosind
denit ia (5.22), putem scrie
X[2] =
N1

n=0
x[n]w
2n
N
=
N/21

n=0
x[n]w
n
N/2
+
N/21

n=0
x[n +N/2]w
(n+N/2)
N/2
=
N/21

n=0
(x[n] +x[n +N/2]) w
n
N/2
. (5.30)
5.3. TRANSFORMATA FOURIER RAPID

A 149

In linia a doua am separat primii N/2 termeni din suma de ultimii N/2 (facand
substitut ia n n + N/2), iar n linia a treia am dat factori comuni si am protat
de egalitatea evidenta w
N/2
N/2
= 1. Am obt inut n nal egalitatea
X[2] = TFD
N/2
(x[n] +x[n + N/2]), = 0 : N/2 1, (5.31)
adica am exprimat jumatatea para a transformatei X[k] printr-o TFD de lungime
N/2 a semnalului u[n] = x[n] +x[n +N/2] obt inut din semnalul init ial x[n].
Pentru indicii impari, k = 2 + 1, = 0 : N/2 1, scriemn mod analog
X[2 + 1] =
N1

n=0
x[n]w
(2+1)n
N
=
N/21

n=0
x[n]w
(2+1)n
N
+
N/21

n=0
x[n +N/2]w
(2+1)(n+N/2)
N
=
N/21

n=0
x[n]w
n
N
w
n
N/2
+
N/21

n=0
x[n +N/2]w
n
N
w
n
N/2
w
N
N
w
N/2
N
=
N/21

n=0
w
n
N
(x[n] x[n +N/2]) w
n
N/2
. (5.32)
Am protat mai sus de egalit at ile w
N
N
= 1 si w
N/2
N
= 1. Ultima relat ie (5.32) este
echivalenta cu
X[2 + 1] = TFD
N/2
(w
n
N
(x[n] x[n +N/2])), = 0 : N/2 1, (5.33)
si are o semnicat ie similara cu (5.31), semnalul de lungime N/2 a carui TFD se
calculeaza ind acumv[n] = w
n
N
(x[n]x[n+N/2]).

In concluzie, prin (5.31) si (5.33)
am reusit exprimarea transformatei Fourier discrete X[k] de lungime N cu ajutorul
a doua transformate de lungime N/2, iar calculele decurg precum n diagrama din
gura 5.7.
Ca si la decimarea n timp, ideea esent iala este de a utiliza recursiv modul de cal-
cul din relat iile (5.31) si (5.33) si gura 5.7 pentru calculul ecarei TFD de lungime
mai mica. Se obt ine urmatoarea funct ie recursiva care calculeaza TFD
N
(x[n]).
funct ie X = FFT(x, N)
1. daca N = 1 atunci
1. X = x
2. altfel
1. u[n] = x[n] +x[n +N/2], pentru n = 0 : N/2 1
2. v[n] = w
n
N
(x[n] x[n +N/2]), pentru n = 0 : N/2 1
3. Calculeaza X
p
= FFT(u, N/2), X
i
= FFT(v, N/2) (apel recursiv)
4. X[2] = X
p
[], X[2 + 1] = X
i
[], pentru = 0 : N/2 1
Forma iterativa a algoritmului este prezentata n diagrama din gura 5.8. Se
observa ca numarul de operat ii este de 3N/2 log
2
N, ca si pentru algoritmul FFT
150 CAPITOLUL 5. ANALIZA

IN FRECVENT

A A SEMNALELOR

w
0
N
w
1
N
1
1
1
1
w
2
N
w
3
N
x[0]
x[1]
x[2]
x[3]
x[4]
x[5]
x[6]
x[7]
TFD
N/2
()
TFD
N/2
()

X[0]
X[2]
X[4]
X[6]
X[1]
X[3]
X[5]
X[7]
u[0]
u[1]
u[2]
u[3]
v[0]
v[1]
v[2]
v[3]
Figura 5.7: Calculul unei TFD de lungime N = 8 utilizand doua TFD de lungime
N/2 = 4 (decimare n frecvent a).
5.3. TRANSFORMATA FOURIER RAPID

A 151
w
0
8
w
1
8
1
1
1
1
w
2
8
w
3
8
x[0]
x[1]
x[2]
x[3]
x[4]
x[5]
x[6]
x[7]
X[0]
X[4]
X[2]
X[6]
X[1]
X[5]
X[3]
X[7]

>
>
>
>
>
>
1
w
0
8

w
0
8
w
2
8

>
>
>
>
>
>
1
w
0
8

>
>
>
>
>
>
1
w
0
8
w
0
8
w
2
8

>
>
>
>
>
>
1
w
0
8
1
1
1
1
Figura 5.8: Schema completa de calcul al TFD de lungime N = 8 (decimare n
frecvent a).
cu decimare n timp din gura 5.6. Iesirea diagramei, adica esantioanele trans-
formatei X[k] sunt n ordinea bit-inversa a indicilor. Din nou, forma de uture
este evidenta. Deoarece detaliile tehnice sunt asemanatoare cu cazul decimarii n
timp, prezentam direct forma detaliata a algoritmului iterativ de calcul al FFT prin
decimare n frecvent a; din nou calculele se fac pe loc. O implementare Matlab a
algoritmului este propusa n problema PR5.3.2.
funct ie x = FFT decimare frecvent a(x, N)
1. pentru i = 1 : log
2
N
1. K = N/2
i1
2. pentru k = 0 : K : N 1
1. pentru m = 0 : K/2 1
1. u = x[k +m] +x[k +K/2 +m]
2. v = w
mN/K
N
(x[k +m] x[k +K/2 +m])
3. x[k +m] = u
4. x[k +K/2 +m] = v
2. Ordoneaza x n ordine bit-inversa a indicilor
Probleme rezolvate
PR 5.3.1 Scriet i o funct ie Matlab care sa implementeze algoritmul FFT cu deci-
mare n timp, varianta iterativa. Argumentul de intrare este un semnal cu suport
0 : N 1, unde N este o putere a lui 2. Funct ia ntoarce transformata Fourier
discreta a semnalului. Presupunet i ca dispunet i de o funct ie de ordonare a unui
152 CAPITOLUL 5. ANALIZA

IN FRECVENT

A A SEMNALELOR
function x = fft_decimare_timp(x)
% Calculeaza pe loc TFD(x).
% Se presupune ca lungimea semnalului este putere a lui 2.
% Algoritm: decimare in timp
N = length(x);
L = log2(N);
x = sort_bitinv(x); % ordine bit-inversa a indicilor
N2 = N/2;
wN = exp( -j*2*pi/N*(0:N2-1) );
K = 1;
NK = N2;
for i = 1 : L
K2 = K;
K = 2*K;
m = 0:K2-1;
for k = 1 : K : N
y = x( k+m );
z = wN(1:NK:N2) .* x( k+K2+m );
x( k+m ) = y + z;
x( k+K2+m ) = y - z;
end
NK = NK/2;
end
Figura 5.9: Funct ie Matlab pentru calculul TFD al unui semnal cu suport de
lungime putere a lui doi, utilizand algoritmul iterativ cu decimare n timp.
semnal n ordinea bit-inversa a indicilor. (Problema PP5.3.2 va propune scrierea
acestui program.)
Solut ie. Funct ia de calcul al TFD este prezentata n gura 5.9 si urmeaza
ndeaproape algoritmul de la sfarsitul sect iunii 5.3.1. Pe parcursul iterat iilor, vari-
abilele K2 si NK au valorile K/2, respectiv N/K. Am eliminat bucla cu contorul
m, protand de posibilitatea operat iilor cu vectori din Matlab. Programul poate
optimizat n continuare (din punctul de vedere al limbajului Matlab), sarcina care
ramane cititorului interesat.
PR 5.3.2 Scriet i o funct ie Matlab care sa implementeze algoritmul FFT cu deci-
mare n frecvent a, varianta iterativa. Condit iile de implementare sunt cele descrise
la problema anterioara.
Solut ie. Funct ia de calcul al TFD este prezentata n gura 5.10. R aman valabile
semnicat iile variabilelor si comentariile de la programul din problema anterioara.
5.3. TRANSFORMATA FOURIER RAPID

A 153
function x = fft_decimare_frecv(x)
% Calculeaza pe loc TFD(x).
% Se presupune ca lungimea semnalului este putere a lui 2.
% Algoritm: decimare in frecventa
N = length(x);
L = log2(N);
N2 = N/2;
wN = exp( -j*2*pi/N*(0:N2-1) );
K = N;
K2 = K/2;
NK = 1;
for i = 1 : L
m = 0:K2-1;
for k = 1 : K : N
u = x(k+m) + x(k+K2+m);
v = wN(1:NK:N2) .* (x(k+m) - x(k+K2+m));
x( k+m ) = u;
x( k+K2+m ) = v;
end
K = K2;
K2 = K/2;
NK = NK*2;
end
x = sort_bitinv(x); % ordine bit-inversa a indicilor
Figura 5.10: Funct ie Matlab pentru calculul TFD al unui semnal cu suport de
lungime putere a lui doi, utilizand algoritmul iterativ cu decimare n frecvent a.
154 CAPITOLUL 5. ANALIZA

IN FRECVENT

A A SEMNALELOR
PR 5.3.3 Formulele (5.31) si (5.33), utilizate pentru algoritmul FFT cu decimare
n frecvent a, au si semnicat ia ca jumatate din transformata X[k] = TFD
N
(x[n])
poate calculata apeland la o TFD de lungime N/2. Aratat i cum se poate calcula
X[4 + 1], = 0 : N/4 1, folosind o TFD de lungime N/4.
Solut ie. Separam suma (5.22) de denit ie a TFD n patru part i:
X[4 + 1] =
N1

n=0
x[n]w
(4+1)n
N
=
N1

n=0
x[n]w
n
N
w
n
N/4
=
N/41

n=0
x[n]w
n
N
w
n
N/4
+
N/41

n=0
x[n +N/4]w
n+N/4
N
w
n
N/4
+
N/41

n=0
x[n +N/2]w
n+N/2
N
w
n
N/4
+
N/41

n=0
x[n + 3N/4]w
n+3N/4
N
w
n
N/4
= TFD
N/4
{w
n
N
(x[n] +jx[n +N/4] x[n +N/2] jx[n + 3N/4])} .
Un rezultat identic se obt ine (cu mai multe calcule), aplicand succesiv formulele
(5.33) si (5.31), prima pentru a separa X[2 +1] din transformata X[k], iar a doua
pentru a separa X[4 + 1] din X[2 + 1].
Probleme propuse
PP 5.3.1 a. Redesenat i diagrama din gura 5.5 permutand liniile orizontale astfel
ncat intrarea sa e ordonata natural, iar iesirea n ordinea bit-inversa a indicilor.
(Observat i ca forma de uture se ment ine.)
b. Redesenat i diagrama din gura 5.5 astfel ncat atat intrarea cat si iesirea sa
e ordonate natural. (Observat i disparit ia formei de uture.)
PP 5.3.2 a. Scriet i o funct ie Matlab care primeste la intrare unntreg n si numarul
de bit i L pe care este reprezentat n (condit ia 0 n < 2
L
este respectata) si ntoarce
numarul obt inut prin inversarea ordinii bit ilor din reprezentarea binara a lui n.
b. Scriet i o funct ie Matlab care primeste un vector format din N numere si
ntoarce vectorul ordonat n ordine bit-inversa a indicilor (se presupune ca indicii
ncep de la zero si ca N este o putere a lui 2). Observat i ca operat ia se poate face pe
loc n vector, prin interschimbari de elemente; daca n este un indice si n = bitinv(n)
indicele obt inut prin inversarea bit ilor n reprezentarea binara a lui n (i.e. bitinv
este funct ia ceruta la punctul a), atunci avem n = bitinv( n).
PP 5.3.3 a. Descriet i un algoritm pentru calculul FFT al unui semnal cu suport
de lungime N putere a lui 3. Folosit i pentru aceasta ideea de decimare n timp si o
formula asemanatoare cu (5.27), dar n care suma din denit ia (5.22) este separata
n trei sume, ecare corespunzand indicilor care dau acelasi rest la mpart irea cu 3.
Desenat i o diagrama de calcul pentru cazul N = 9.
b. Folosit i decimarea n frecvent a pentru a rezolva problema de la punctul
precedent.
c. Generalizat i ideile de mai sus pentru orice lungime N care nu este numar
prim. Desenat i diagrame de calcul pentru N = 6 si N = 12.
5.3. TRANSFORMATA FOURIER RAPID

A 155
PP 5.3.4 Cum se poate calcula transformata Fourier discreta inversa ? Propunet i
doua metode:
a. Modicand algoritmul FFT.
b. Utilizand algoritmul FFT ca atare si protand de proprietat ile TFD. Indicat ie:
daca X[k] = TFD(x[n]), demonstrat i ca Nx

[n] = TFD(X

[k]).
PP 5.3.5 Fie H(z) =

M
n=0
h[n]z
n
un ltru FIR dat.
a. Cum se poate calcula caracteristica sa de frecvent a (pe o grila de frecvent e
echidistante) utilizand FFT ?
b. Cand este mai avantajos sa se procedeze astfel n loc sa se foloseasca formula
directa H() =

M
n=0
h[n]e
jn
?
156 CAPITOLUL 5. ANALIZA

IN FRECVENT

A A SEMNALELOR
Capitolul 6
Cuantizare
6.1 Cuantizare scalara
Denit ia 6.1 Fie C = {c
1
, c
2
, . . . , c
N
} o mult ime de N valori reale, numite coduri.
Cuantizorul q asociaz a un cod ec arei valori x R, i.e. q(x) = c
k
, subnt eleg and
prin aceasta c a num arul real x este aproximat prin codul c
k
din mult imea C.
Asadar, un cuantizor este o funct ie q : R C.
Mult imea C este numita dict ionar (sau lista de coduriengl. codebook). Pre-
supunem, fara pierdere de generalitate, ca dict ionarul este ordonat, adica c
1
< c
2
<
. . . < c
N
, ca n gura 6.1.
Denit ia 6.2 Fie q un cuantizor si C dict ionarul asociat. Mult imea
A
k
= {x R | q(x) = c
k
} (6.1)
se numeste celula Voronoi asociat a codului c
k
.
Celula Voronoi cont ine toate valorile reale care se cuantica cu acelasi cod.
Axa reala este partit ionata n N celule Voronoi, cate una pentru ecare cod din
dict ionar. Aspectul tipic al celulelor Voronoi este cel din gura 6.1, n care A
k
=
(d
k1
, d
k
], adica ecare celula este un interval.

In gura, avemd
0
= si d
N
= ,
daca aceste valori nu sunt nite prin natura semnalului care se cuantizeaza. Prin
cuantizare, toate valorile x pentru care d
k1
< x d
k
se reprezinta prin c
k
.
Valorile d
k
se numesc puncte de decizie (de frontiera). Gracul cuantizoru-
lui are aspectul n trepte din gura 6.2. Asadar, atunci cand celulele Voronoi
sunt mult imi conexe, un cuantizor este complet determinat de dict ionarul c
k
si de
punctele de decizie d
k
.
Un cuantizor este simetric daca q(x) = q(x), pentru orice x R.
Domeniul unui cuantizor este intervalul [d
0
, d
N
] (sau lungimea acestuia). Daca
una dintre valori este innita, atunci domeniul este [d
1
, d
N1
].
Cuantizorul poate privit ca ind obt inut din compunerea a doua funct ii: codor
si decodor. Notam N = 1 : N mult imea primelor N numere naturale. Un codor
este o funct ie q
c
: R N si asociaza unei valori x R un indice n dict ionar. Un
157
158 CAPITOLUL 6. CUANTIZARE

d
0
c
1
d
1
c
2
d
2
c
3
d
3
d
N1
c
N
d
N

Figura 6.1: Dict ionar si puncte de decizie pe axa reala. Unui cod c
k
i corespunde
celula Voronoi (d
k1
, d
k
].

`
q(x)
x
d
N1
d
N2
d
2
d
1
c
1
c
2
c
N1
c
N
Figura 6.2: Gracul unui cuantizor.
decodor este o funct ie q
d
: N C, prin care un indice este transformat n codul
corespunzator.
Denit ia 6.3 Num arul de bit i necesar reprezent arii numerelor din N (si deci din
dict ionarul C), i.e.
r = log
2
N, (6.2)
este numit rezolut ie (sau rat a de codare) a cuantizorului.
Performant ele unui cuantizor
Presupunem ca semnalul cuantizat x este caracterizat de o densitate de probabilitate
p(x), i.e. are proprietat i statistice cunoscute.

In general, semnalul poate privit
ca un proces aleator stat ionar, dar evolut ia sa temporal a nu este de interes la
cuantizare. Pentru evaluarea calitat ii unui cuantizor este sucient sa privim x ca
variabila aleatoare. Masura cea mai folosita a calitat ii este urmatoarea.
6.1. CUANTIZARE SCALAR

A 159
Denit ia 6.4 Distorsiunea (eroarea p atratic a) medie a unui cuantizor este
D =
_

(x q(x))
2
p(x)dx. (6.3)
Pentru un cuantizor cu gracul din gura 6.2, distorsiunea medie poate scrisa
n forma
D =
N

k=1
_
d
k
d
k1
(x c
k
)
2
p(x)dx. (6.4)
Daca interpretam x ca pe un proces aleator, atunci distorsiunea medie este
D = E
_
(x[n] q(x[n]))
2
_
.
Distorsiunea medie este usor de calculat si utilizat, dar poate sa nu corespunda
percept iei subiective pentru anumite semnale (audio, imagini etc.). Pe de alta
parte, criterii de calitate specice unor anume semnale sunt relativ greu de gasit si,
n general, nu sunt acceptate decat de comunitat i de specialisti (si nu de totalitatea
lor).
Presupunem ca semnalul (variabila aleatoare) x are medie nula. O alta masura
populara a calitat ii unui cuantizor este urmatoarea.
Denit ia 6.5 Raportul semnal-zgomot (SNRsignal to noise ratio) asociat unui
cuantizor (si m asurat n decibeli) este
SNR = 10 log
10
E{x
2
}
D
. (6.5)
Daca semnalul nu are medie nula, n (6.5) se foloseste de obicei variant a (1.41)
n loc de E{x
2
}.

In general, despre cuantizoarele cu SNR > 10dB se spune ca au rezolut ie nalta;


pentru acestea sunt valabile rezultatele asimptotice prezentate n acest capitol. Pen-
tru cuantizoarele cu rezolut ie joasa, mai put in utilizate n practica, analiza erorilor
trebuie adaptata de la caz la caz.
Modelarea erorii de cuantizare. Presupunand ca x[n] este un semnal discret
(aleator), pentru analiza proprietat ilor erorii de cuantizare
[n] = x[n] q(x[n]) (6.6)
se fac n mod curent urmatoarele ipoteze simplicatoare:
i) Semnalul x[n] este necorelat cu eroarea de cuantizare [n], i.e.
E{x[n][n]} = E{x[n]}E{[n]}. (6.7)
ii) Eroarea de cuantizare este uniform distribuita.
iii) Semnalul [n] este zgomot alb, n sensul ca este un sir de variabile aleatoare
necorelate.
160 CAPITOLUL 6. CUANTIZARE
Ipoteza de necorelare i) nunseamn a ca semnalele x[n] si [n] sunt independente;
de fapt, din denit ia (6.6) se vede ca eroarea [n] depinde determinist de semnalul
x[n]. Ipoteza ii) este valabila n special pentru cuantizoarele cu rezolut ie mare sau
n cazul n care semnalul x[n] are memorie scurta (valorile autocorelat iilor scad
repede). Vom vedea mai departe ca unele dintre aceste proprietat i sunt satisfacute
n mod natural de unele cuantizoare.
Cuantizorul uniform
Denit ia 6.6 Un cuantizor este uniform atunci c and ntre elementele dict ionarului
c
k
, k = 1 : N, si punctele de decizie d
k
, k = 0 : N, exist a relat iile
c
k+1
c
k
= ,
d
k
=
c
k
+c
k+1
2
,
(6.8)
unde > 0 este pasul de cuantizare.
Asadar, distant a dintre doua coduri succesive este constanta. Din (6.8) rezulta
ca
d
k+1
d
k
= ,
i.e. si distant a dintre punctele de decizie este constanta. De obicei se presupune
ca semnalul x[n] ia valori ntr-un interval [a, b] si ca d
0
= a, d
N
= b. Pasul de
cuantizare este
=
b a
N
. (6.9)
Observat ia 6.7

Intre cuantizoarele cu dict ionar cont inand N coduri, cuantizorul
uniform minimizeaz a eroarea maxim a.

Intr-adevar, daca semnalul x ia valori n
[a, b], atunci eroarea maxima de cuantizare este cel put in
b a
2N
=

2
,
adica eroarea maxima a cuantizorului uniform.
Teorema 6.8 Presupunem c a semnalul de intrare este uniform distribuit n inter-
valul [a, b]. Atunci eroarea de cuantizare are medie nul a
E{} = 0, (6.10)
iar distorsiunea medie (6.3) are valoarea
D =

2
12
. (6.11)
Corelat ia dintre semnalul de intrare si eroarea de cuantizare este
E{x} =

2
12
. (6.12)
6.1. CUANTIZARE SCALAR

A 161
Demonstrat ie. Semnalul x ind uniform distribuit, rezulta ca eroarea de cuanti-
zare = x q(x) este uniform distribuita n intervalul [/2, /2], deci media sa
este nula. Densitatea de probabilitate asociata semnalului x este p(x) = 1/(b a).
Distorsiunea medie este
D
(6.4)
=
N

k=1
_
d
k
d
k1
(x c
k
)
2
p(x)dx
=
N
b a
_
/2
/2

2
d =
1

3
3

/2
/2
=

2
12
,
adica are expresia (6.11).

In ne, avem
E{x} =
_
b
a
xp(x)dx =
N

k=1
_
d
k
d
k1
(x c
k
)xp(x)dx
x=+c
k
=
1
b a
N

k=1
_
/2
/2
( +c
k
)d =
N
b a
_
/2
/2

2
d =

2
12
si deci relat ia (6.12) este demonstrata.
Asadar, ipoteza (6.7), privind necorelarea dintre eroarea de cuantizare si semnal,
nu este satisfacuta. Desigur, cu cat rezolut ia este mai mare, cu atat distorsiunea
medie este mai mica, ca si corelat ia E{x}.
Observat ia 6.9 Presupunem acum ca semnalul de intrare x este distribuit n inter-
valul [a, b] cu o densitate de probabilitate oarecare p(x).

In plus (ipoteza specica
rezolut iei nalte), presupunem ca p(x) este sucient de neteda iar numarul N al
nivelelor de cuantizare este sucient de mare, astfel nc at pe ecare interval de de-
cizie (de lungime ) p(x) este constanta, mai precis p(x) = p
k
pentru x [d
k1
, d
k
].

In acest caz, distorsiunea medie este


D
(6.4)
=
N

k=1
_
d
k
d
k1
(x c
k
)
2
p(x)dx =
N

k=1
p
k
_
d
k
d
k1
(x c
k
)
2
dx
=
N

k=1
p
k
_
/2
/2

2
d =

3
12
N

k=1
p
k
=

2
12
.
Ultima egalitate are loc deoarece
N

k=1
p
k
=
_
b
a
p(x)dx = 1.
Asadar, expresia (6.11) pentru distorsiunea medie a cuantizorului uniform este val-
abila n condit ii mai largi decat cele ale Teoremei 6.8.
SNR la rezolut ie nalt a. Presupunem ca semnalul de intrare are medie zero
si variant a
2
, ceea ce nu este restrictiv.

In plus, presupunem ca densitatea de
probabilitate p(x) este o funct ie para si (ca mai sus) constanta pe ecare interval
162 CAPITOLUL 6. CUANTIZARE
de decizie. Semnalul x ia valori n intervalul [a, a]. Din denit ia (6.2) rezulta ca
N = 2
r
, deci pasul de cuantizare (6.9) are expresia = 2a/2
r
. T inand seama de
(6.11), rezulta ca raportul semnal-zgomot (6.5) are forma
SNR = 10 log
10

2
D
= 10 log
10
12
2

2
= 10 log
10
12
2
2
2r
4a
2
= 20r log
10
2 +ct 6r +ct
(6.13)
Aceasta relat ie permite urmatoarea concluzie.
Observat ia 6.10 La rezolut ie nalta, ecare bit suplimentar utilizat la cuantizare
(i.e. dublarea dimensiunii N a dict ionarului) conduce la cresterea cu 6dB a SNR a
cuantizorului uniform.
Implementarea unui cuantizor
Consideram un cuantizor denit de codurile c
k
, k = 1 : N, si punctele de decizie
d
k
, k = 0 : N. Ne punem problema modului de calcul al codului c
k
= q(x) (sau al
indicelui k asociat), pentru o valoare oarecare (cunoscuta) x a intrarii. Indicele k
este cel pentru care
d
k1
x < d
k
. (6.14)
(

In cazul n care x este chiar un punct de decizie, trebuie sa evitam ambiguitatea


alegerii, de aceea putem alege inegalitat ile ca mai sus.) Cautarea secvent iala n
1 : N a indicelui k este inecienta, deoarece implica N comparat ii n cazul cel mai
defavorabil.
Algoritmul cel mai ecient este cel bazat pe dihotomie. Daca x < d
N/2
, solut ia
este n mult imea 0 : N/2 1; altfel, solut ia se aa n N/2 : N. Cautarea continua
asemanator, pana cand njumatat irea repetata reduce la un singur indice mult imea
n care se cauta. Numarul de comparat ii este r = log
2
N.

In cazul cuantizorului uniform cu x


0
= a, x
N
= b, implementarea este extrem
de simpla, indicele k avand (de exemplu) expresia
k =
_
x a
b a
N
_
+ 1.
(Pentru x = b formula da valoarea incorecta k = N + 1, ceea ce se poate corecta
usor la implementare.)
Probleme rezolvate
PR 6.1.1 Se considera un cuantizor oarecare (neuniform), ale carui puncte de de-
cizie d
k
, k = 0 : N, sunt date. Semnalul de intrare are densitatea de probabilitate
constanta pe ecare interval de decizie, i.e. p(x) = p
k
, x [d
k1
, d
k
].
a. Demonstrat i ca distorsiunea medie a cuantizorului este minima daca ecare
cod este la mijlocul intervalului de decizie, i.e.
c
k
= (d
k1
+d
k
)/2. (6.15)
6.1. CUANTIZARE SCALAR

A 163
b. Presupunand relat ia (6.15) adevarata, demonstrat i ca distorsiunea medie a
cuantizorului are expresia
D =
1
12
N

k=1
p
k

3
k
, (6.16)
unde
k
= d
k
d
k1
este lungimea intervalului k de decizie. Observat i ca dis-
torsiunea medie (6.11) a cuantizorului uniform este un caz particular al relat iei
(6.16).
Solut ie. a. Avand n vedere forma (6.4) a distorsiunii medii, este sucient sa
demonstram (6.15) pentru un singur interval de decizie. Presupunem, fara a pierde
generalitatea, ca intervalul are lungime 1 si c
k
= 0, d
k1
= , d
k
= 1 . Pentru
intervalul respectiv, distorsiunea medie este
D
k
=
_
1

x
2
dx =
1
3
(3
2
3 + 1)
si este minima cand = 1/2, i.e. codul 0 este la mijlocul intervalului.
b. Folosind din nou (6.4), obt inem
D =
N

k=1
p
k
_
d
k
d
k1
(x c
k
)
2
dx
x=+c
k
=
N

k=1
p
k
_

k
/2

k
/2

2
d,
ceea ce conduce imediat la (6.16).
PR 6.1.2 Fie un semnal de intrare cu densitatea de probabilitate p(x) din gura
6.3, cu expresia
p(x) =
_
, daca x [0, 1/2],
, daca x [1/2, 1].
(Din condit ia (1.38) rezulta + = 2.) Acest semnal este cuantizat cu doua
cuantizoare cu N = 4 coduri. Primul este cel uniform, al doilea are punctele de
decizie d
0
= 0, d
1
= 1/6, d
2
= 1/3, d
3
= 1/2, d
4
= 1; punctele de decizie ale celor
doua cuantizoare sunt reprezentate pe axele orizontale ale celor doua grace din
gura 6.3. Codurile sunt plasate optim la mijlocul intervalelor de decizie. Calculat i
distorsiunile medii ale celor doua cuantizoare si determinat i valorile lui pentru
care cuantizorul neuniform are distorsiunea medie mai mic a.
Solut ie. Pentru cuantizorul uniform, distorsiunea medie are expresia (6.11),
conform Observat iei 6.9.

In cazul nostru = 1/4 si deci
D
1
=

2
12
=
1
192
= 0.005208.
Pentru distorsiunea medie a cuantizorului neuniform, folosim expresia (6.16) si,
t inand seama ca
1
=
2
=
3
= 1/6,
4
= 1/2 si p
1
= p
2
= p
3
= , p
4
= =
2 , obt inem
D
2
() =
1
12
4

k=1
p
k

3
k
=
9 4
432
.
Se obt ine D
2
() = D
1
pentru = 1.6875, deci D
2
() D
1
pentru [1.6875, 2].
La limita, se obt ine D
2
(2) = 0.00231, adica o valoare mult mai mica decat D
1
.
164 CAPITOLUL 6. CUANTIZARE

`
p(x)
1
d
3
d
2
d
1
x

`
p(x)
1
d
3
d
2
d
1
x
Figura 6.3: Exemplu de densitate neuniforma de probabilitate si puncte de decizie
pentru cuantizorul uniform (stanga) si un cuantizor neuniform (dreapta).
Probleme propuse
PP 6.1.1 Consideram din nou semnalul de intrare cu densitatea de probabilitate
din problema PR6.1.2. Propunet i un cuantizor cu 5 coduri si calculat i distorsiunea
acestuia.

In ce condit ii este cuantizorul propus mai bun decat cel uniform.
PP 6.1.2 Scriet i un algoritm detaliat de implementare a unui cuantizor, bazat pe
dihotomie.
Ghid Matlab
Un cuantizor uniform primar este implementat de funct ia quant. Apelul
>> y = quant(x, pas)
pune n y multiplul cel mai aproape de x al pasului de cuantizare pas.
Cuantizorul (codorul) uniform este simulat prin
>> k = uencode(x, r, a)

In acest apel, r este rezolut ia (un numar ntreg, deci dimensiunea dict ionarului este
N = 2
r
), iar codurile acopera uniform intervalul [a, a]; rezultatul este indicele
k 0 : N 1. Decodorul este apelat prin
>> y = udecode(k, r, a)
furnizand codul corespunzator indicelui k.
Un cuantizor oarecare este simulat prin
>> k = quantiz(x, d)
Acest apel produce indicele k al codului corespunzator intrarii x, pentru punctele
de decizie aate n vectorul d. (Punctele de decizie si sunt adaugate celor
din vectorul d.)
6.2 Proiectarea unui cuantizor
Pentru distribut ie uniforma a semnalului de intrare, cuantizorul uniform este op-
tim, n sensul ca are distorsiune medie minima (vom demonstra mai tarziu aceasta
6.2. PROIECTAREA UNUI CUANTIZOR 165
g(x)
Cuantizor
uniform
g
1
( y)
Distribut ie
uniforma
Densitate de
probabilitate
p(x)

x
y y
q(x)
COMPresie expANDARE
Figura 6.4: Schema unui compandor.
armat ie). Daca nsa distribut ia este neuniforma, este posibil ca alte cuantizoare,
neuniforme, sa e optime; un exemplu simplu a fost prezentat n problema PR6.1.2.

In aceasta sect iune studiem medode de proiectare a unui cuantizor, atunci cand se
cunoaste distribut ia semnalului de intrare, e analitic, e experimental. Datele de
proiectare sunt dimensiunea dict ionarului (N) sau rezolut ia r. Rezultatul proiectarii
este dict ionarul C si punctele de decizie d
k
.
Compandare
Compandarea funct ioneaza conform schemei din gura 6.4. Semnalul x, cu densitate
de probabilitate (neuniforma) p(x), este transformat prin funct ia g(x), nncercarea
de a obt ine un semnal y cu distribut ie uniforma. Acest semnal este cuantizat cu
un cuantizor uniform, iar codurile y sunt transformate cu funct ia inversa g
1
pen-
tru a obt ine codurile q(x). Numele compandor provine din combinarea extremelor
cuvintelor compresie si expandare, care reprezinta numele atribuite funct iilor g si
g
1
. Proiectarea unui compandor se rezuma la gasirea funct iei g.
Presupunem ca densitatea de probabilitate p(x) este cunoscuta. Funct ia cumu-
lativa de probabilitate este
f(x
0
) = Prob(x x
0
) =
_
x0

p(x)dx, cu f : R [0, 1]. (6.17)


Figura 6.5 prezinta gracul unei funct ii de probabilitate, cu suport nit.

Impart im
intervalul [0, 1] de pe axa verticala n N intervale egale (N = 8 n gura), separate
de punctele
y
k
= k/N, k = 0 : N. (6.18)
Pe axa orizontala, denim punctele corespondente
d
k
R, f(d
k
) = y
k
, k = 0 : N. (6.19)
Se observa ca
Prob(d
k1
x d
k
) =
_
d
k
d
k1
p(x)dx = f(d
k
) f(d
k1
) =
1
N
. (6.20)
166 CAPITOLUL 6. CUANTIZARE
d
0
d
1
d
2
d
3
d
4
d
5
d
6
d
7
d
8
1
f(x)
x
Figura 6.5: Funct ie de probabilitate si puncte de decizie obt inute prin compandare.
Asadar, daca alegem d
k
drept puncte de decizie pentru un cuantizor al semnalului
x, atunci probabilitatea ca x sa apart ina unei celule Voronoi [d
k1
, d
k
] este aceeasi
indiferent de celula.

In concluzie, n schema de compandare din gura 6.4, alegem
funct ia g de compresie identica cu funct ia de probabilitate f. Semnalul y = g(x) nu
va avea neaparat distribut ie uniforma, dar faptul ca Prob(y
k1
y y
k
) = 1/N
asigura o buna aproximat ie a distribut iei uniforme.
Observat ia 6.11 Compandorul obt inut prin procedeul de mai sus nu este neap arat
optim, deoarece densitatea de probabilitate n ecare interval de decizie nu este
constanta. Compandorul realizeaza nsa o buna aproximat ie a cuantizorului optim,
n special la rezolut ie nalta.

In cazul frecvent n care funct ia de probabilitate f(x) nu este cunoscuta analitic,


se poate proceda n doua feluri:
Daca semnalul de intrare este stat ionar, se poate estima experimental f(x),
dupa care se aleg punctele de decizie astfel ncat relat ia (6.20) sa e satisfacuta
aproximativ.
Atunci cand estimarea este imposibila din considerente de timp real, se uti-
lizeaza compresoare g(x) simple, care asigura robustet e pentru familia de sem-
nale cuantizate. Gracul funct iei g(x) are forma tipica din gura 6.5, ceea ce
conduce la celule Voronoi mai mari pentru valori mari (si mai put in frecvente)
ale semnalului si la celule mici pentru valori n preajma lui zero. Un exemplu
este legea- utilizata n telefonia digitala
g

(x) = a
ln(1 +|x|/a)
ln(1 +)
sgn(x).
Se presupune ca semnalul este limitat la valori x [a, a].

In acest caz, g

(x)
are valori n [1, 1]; proiectarea compandorului decurge similar pentru orice
astfel de mult ime de valori.
6.2. PROIECTAREA UNUI CUANTIZOR 167
Condit ii de optimalitate
Presupunand cunoscute densitatea de probabilitate p(x) a semnalului de intrare
si numarul N de nivele de cuantizare, studiem acum relat iile dintre codurile c
k
si
punctele de decizie d
k
pentru cuantizorul optim, cel pentru care distorsiunea medie
(6.3) este minima.
Puncte de decizie optime pentru coduri date. Presupunem xate codurile c
k
,
k = 1 : N. Dorim sa aam punctele de decizie optime pentru aceste coduri. Datorita
formei cumulative a distorsiunii medii, putem reduce studiul la un singur interval
[c
k
, c
k+1
]. Pentru simplitate, consideram c
k
= 0, c
k+1
= 1 si cautam punctul optim
de decizie d
k
= d. Pe intervalul considerat, avand n vedere ca q(x) = c
k
, daca
x [c
k
, d
k
], iar q(x) = c
k+1
daca x [d
k
, c
k+1
], distorsiunea medie este
_
d
0
x
2
dx +
_
1
d
(x 1)
2
dx =
d
3
3

(d 1)
3
3
=
3d
2
3d + 1
3
.
Valoarea minima se obt ine pentru d = 1/2.

In general, se demonstreaza asemanator
ca distorsiunea medie este minima atunci cand punctul de decizie este la mijlocul
distant ei dintre coduri, i.e.
d
k
= (c
k
+c
k+1
)/2, k = 1 : N 1. (6.21)
O alta justicare, mai simpla si mai intuitiva, este urmatoarea. Distorsiunea
este minimizata daca, pentru orice x R, valoarea q(x) este codul cel mai apropiat
de x. Asadar punctul de decizie d
k
se aa la mijlocul intervalului [c
k
, c
k+1
].
Coduri optime pentru puncte de decizie date. Presupunem xate punctele de
decizie d
k
, k = 0 : N, si dorim sa aam codurile optime pentru aceste puncte de
decizie. Din nou, putem reduce studiul la o singura celula Voronoi (data) [d
k1
, d
k
],
pentru care cautam codul optim, anume valoarea c
k
pentru care distorsiunea
D
k
=
_
d
k
d
k1
(x c
k
)
2
p(x)dx (6.22)
este minima. Prezentamntai un rezultat ajutator.
Propozit ia 6.12 Fie o variabil a aleatoare. Constanta care minimizeaz a eroarea
p atratic a medie E{( )
2
} este = E{}, adic a media variabilei.
Demonstrat ie. Notam = E{} media variabilei aleatoare. Observam ca avem
E{( )
2
} = E{( + )
2
} = E{( )
2
} + ( )
2
,
deoarece E{( )} = 0.

In dreapta expresiei de mai sus, primul termen este
constant, deci minimul se obt ine luand = .
Teorema 6.13 Valoarea c
k
care minimizeaz a distorsiunea (6.22) este centrul de
mas a (centroidul) celulei Voronoi A
k
= [d
k1
, d
k
], i.e.
c
k
= E{x | x A
k
} =
_
d
k
d
k1
xp(x)dx
_
d
k
d
k1
p(x)dx
. (6.23)
168 CAPITOLUL 6. CUANTIZARE
Demonstrat ie. Notam
p
k
= Prob(x A
k
) =
_
d
k
d
k1
p(x)dx (6.24)
probabilitatea ca semnalul de intrare sa ia valori n celula Voronoi considerata.
Distorsiunea (6.22) poate scrisa n forma
D
k
= p
k
_
d
k
d
k1
(x c
k
)
2
p(x)
p
k
dx = p
k
E{(x c
k
)
2
| x A
k
},
deoarece p(x)/p
k
are semnicat ie de densitate de probabilitate a semnalului x,
atunci cand consideramdoar valorile din celula Voronoi A
k
. Folosind Propozit ia 6.12,
obt inem
c
k
= E{x | x A
k
} =
_
d
k
d
k1
x
p(x)
p
k
dx,
de unde rezulta imediat (6.23).
Observat ia 6.14 Condit iile (6.21) si (6.23) sunt necesare pentru optimalitate, dar
nu neaparat suciente. Ele sunt satisfacute si de minime locale ale distorsiunii
medii, nu doar de minimul global.
Observat ia 6.15 Pentru o densitate uniforma de probabilitate a intrarii n inter-
valul [a, b], cuantizorul uniform satisface condit iile de optimalitate. Relat ia (6.21)
este evident adevarata, iar (6.23) devine
c
k
=
_
d
k
d
k1
x
b a
dx
_
d
k
d
k1
1
b a
dx
=
1
d
k
d
k1
_
d
k
d
k1
xdx =
d
2
k
d
2
k1
2(d
k
d
k1
)
=
d
k1
+d
k
2
. (6.25)
Astfel, condit iile de optimalitate sunt echivalente cu denit iile (6.8).
Algoritmul Lloyd-Max
Condit iile de optimalitate (6.21) si (6.23) sunt folosite ntr-un algoritm de proiectare
a unui cuantizor, cunoscut sub numele de algoritm Lloyd-Max. Ideea algoritmului
este de a alterna calculul codurilor optime, presupunand punctele de decizie xate,
cu calculul invers, al punctelor de decizie optime, folosind codurile calculate anterior.
Iterat iile continua pana la convergent a. Algoritmul are forma urmatoare.
Algoritmul Lloyd-Max
0. Se da numarul de nivele de cuantizare N. Se alege un dict ionar init ial C =
{c
1
, . . . , c
N
}. Se alege o tolerant a . Se init ializeaza pasul de iterare i = 0.
1. Se calculeaza punctele de decizie optime d
k
, k = 1 : N 1, pentru codurile
c
k
, conform relat iei (6.21).
6.2. PROIECTAREA UNUI CUANTIZOR 169
2. Se calculeaza codurile optime c
k
, k = 1 : N, pentru punctele de decizie d
k
,
conform relat iei (6.23).
3. Calculeaza distorsiunea medie curenta D
(i)
cu una din relat iile (6.3) sau (6.4).
4. Daca
D
(i1)
D
(i)
D
(i)
< ,
atunci stop. Altfel, se pune i i + 1 si se reia de la pasul 1.
Se observa ca distorsiunea scade la ecare pas.

Intr-adevar, pentru e.g. puncte de
decizie date, noile coduri minimizeaza distorsiunea, asadar produc o distorsiune mai
mica decat codurile de la iterat ia anterioara.

In concluzie, algoritmul converge catre
un punct stat ionar, care este un minim local (nu neaparat cel global). Init ializari
diferite ale algoritmului pot produce rezultate diferite.
Proiectare utiliz and date empirice.

In forma data anterior, algoritmul Lloyd-
Max se bazeaza pe cunoasterea densitat ii de probabilitate p(x) a semnalului de
intrare. Presupunem acum ca aceasta nu este cunoscuta.

In schimb, dispunem de
M esantioane ale semnalului de intrare, anume x

, = 1 : M; notam X mult imea


acestor esantioane. Numarul M este sucient de mare (n raport cu N).
Structura algoritmului Lloyd-Max ramane aceeasi. De asemenea, punctele de
decizie se calculeaza la ecare iterat ie cu relat ia (6.21).

In schimb, calculul codurilor
trebuie modicat, deoarece (6.23) nu se mai poate aplica. Pentru coduri xate, o
celula Voronoi care respecta condit ia de optimalitate (6.21) este mult imea nita
A
k
= {x

X, = 1 : M | |x

c
k
| |x

c
i
|, i = 1 : N, i = k}. (6.26)
Asadar celula asociata codului c
k
cont ine esantioanele din X care sunt mai aproape
de acest cod decat de oricare altul. Centrul de masa al unei celule se calculeaza n
mod natural prin media esantioanelor din celula respectiva; n consecint a, n pasul
2 al algoritmului Lloyd-Max, formula (6.23) se nlocuieste cu
c
k
=
1
|A
k
|

A
k
x

. (6.27)
Remarcam ca, n algoritmul Lloyd-Max, celulele (6.26) se stabilesc folosind codurile
de la iterat ia anterioara, n timp ce relat ia (6.27) se utilizeaza pentru calculul co-
durilor n iterat ia curenta.

In ne, distorsiunea se calculeaza n mod natural prin


D =
1
M
N

k=1

A
k
(x

c
k
)
2
. (6.28)
Algoritmul Lloyd-Max capata forma urmatoare.
0. Se dau M esantioane ale semnalului de intrare, x

, = 1 : M. Se alege un
dict ionar init ial C = {c
1
, . . . , c
N
}.
1. Se stabilesc celulele Voronoi discrete conform relat iei (6.26).
170 CAPITOLUL 6. CUANTIZARE
2. Se recalculeaza codurile c
k
, k = 1 : N, conform relat iei (6.27).
3. Se repeta pasii 1 si 2 pana cand distorsiunea (6.28) nu mai scade semnicativ.

In implementarea acestui algoritm apar unele probleme nentalnite n cazul


cunoasterii densitat ii de probabilitate a intrarii. De exemplu, atunci cand un
esantion x

este la egala distant a de doua coduri, trebuie sa-l asociem, conform


unei reguli ad hoc, uneia dintre cele doua celule (6.26) posibile. De asemenea, tre-
buie prevenita situat ia n care o celula (6.26) este vida, caz n care formula (6.27) nu
este aplicabila; tocmai din acest motiv, exista algoritmi de proiectare care pornesc
cu un numar mic de coduri, care creste pe masura ce algoritmul evolueaza.
Algoritmul Lloyd-Max poate utilizat si pentru alte operat ii n afara de cuan-
tizare, de exemplu pentru clasicare.
Probleme rezolvate
PR 6.2.1 Se considera semnalul cu densitatea de probabilitate reprezentata n
gura 6.6 si denita prin
p(x) =
_
x+a
a
2
, pentru x [a, 0],
x+a
a
2
, pentru x [0, a],
unde a > 0 este dat.
a. Calculat i funct ia de probabilitate (6.17).
b. Date punctele (6.18), calculat i punctele de decizie (6.19) ale compandorului.
Solut ie. a. Pentru x 0, funct ia de probabilitate este
f(x) =
_
x
a
+a
a
2
d =
(x +a)
2
2a
2
.
Deoarece p(x) este para, f(x) satisface relat ia de simetrie f(x) = 1f(x). Gracul
funct iei de probabilitate este prezentat n dreapta gurii 6.6.
b. Pentru y
k
0.5, din (6.19) rezulta imediat
d
k
= a
_
2y
k
a.
Pentru y > 0.5, se t ine seama de relat ia de simetrie de mai sus.
PR 6.2.2 Consideram un cuantizor q(x) ai carui coduri ndeplinesc condit iile de
optimalitate (6.21). Demonstrat i ca eroarea de cuantizare = x q(x) satisface
relat iile E{} = 0, E{q(x)} = 0.
Solut ie. Folosind relat iile (6.21) si (6.24), obt inem
E{x} =
_

xp(x)dx =
N

k=1
_
d
k
d
k1
xp(x)dx =
N

k=1
c
k
p
k
= E{q(x)}.
6.2. PROIECTAREA UNUI CUANTIZOR 171
1/a
p(x)
x
a a
1
f(x)
x
a a
Figura 6.6: Densitate de probabilitate p(x) si funct ia de probabilitate f(x) core-
spunzatoare, pentru problema PR6.2.1.
De aici rezulta E{} = E{x} E{q(x)} = 0, adica media erorii e nula.

In mod
similar obt inem,
E{q(x)} =
_

(x q(x))q(x)p(x)dx =
N

k=1
_
d
k
d
k1
(x c
k
)c
k
p(x)dx
=
N

k=1
c
k
_
c
k
p
k
+
_
d
k
d
k1
xp(x)dx
_
= 0.
Deci, eroarea de cuantizare este necorelata cu iesirea cuantizorului.
PR 6.2.3 Studiat i evolut ia algoritmului Lloyd-Max pentru cazul n care intrarea
x [0, 1] este uniform distribuita iar numarul de nivele de cuantizare este N = 2.
Aleget i mai multe init ializari, de exemplu i) c
1
= 0.3, c
2
= 0.7; ii) c
1
= 0.2, c
2
= 0.7.
Solut ie. Singurul punct de decizie care se modica n algoritm este d
1
(celelalte
sunt d
0
= 0, d
2
= 1). Relat ia (6.21) este d
1
= (c
1
+ c
2
)/2. Pentru densitate de
probabilitate uniforma, relat ia (6.23) are forma (6.25), asadar avem
c
1
= d
1
/2, c
2
= (d
1
+ 1)/2.
Evolut ia algoritmului Lloyd-Max este urmatoarea.
Init ializare c
1
= 0.3, c
2
= 0.7 c
1
= 0.2, c
2
= 0.7
Iterat ia 1 d
1
= 0.5 d
1
= 0.45
c
1
= 0.25, c
2
= 0.75 c
1
= 0.225, c
2
= 0.725
Iterat ia 2 idem d
1
= 0.475
c
1
= 0.2375, c
2
= 0.7375
Iterat ia 3 d
1
= 0.4875
etc.
Pentru ambele init ializari, algoritmul converge la codurile optime; cuantizorul
optim este cel uniform. Pentru prima init ializare, algoritmul converge ntr-o singura
iterat ie. Pentru a doua, convergent a este asimptotica.
172 CAPITOLUL 6. CUANTIZARE
PR 6.2.4 Studiat i evolut ia algoritmului Lloyd-Max atunci cand se cunosc M =
6 esantioane ale intrarii, anume cele din mult imea X = {0, 0.2, 0.4, 0.6, 0.8, 1}.
Utilizat i mai multe init ializari, de exemplu i) c
1
= 0.3, c
2
= 0.7; ii) c
1
= 0.2,
c
2
= 0.5.
Solut ie. Aplicand relat iile (6.26) si (6.27), evolut ia algoritmului este urmatoarea.
Presupunem ca atunci cand un esantion este egal departat de doua coduri, el face
parte din celula (6.26) a codului mai mare.
Init ializare c
1
= 0.3, c
2
= 0.7 c
1
= 0.2, c
2
= 0.5
Iterat ia 1 A
1
= {0, 0.2, 0.4} A
1
= {0, 0.2}
A
2
= {0.6, 0.8, 1} A
2
= {0.4, 0.6, 0.8, 1}
c
1
= 0.2, c
2
= 0.8 c
1
= 0.1, c
2
= 0.7
Iterat ia 2 idem idem
Pentru ambele init ializari, algoritmul converge ntr-o iterat ie, dar la cuantizoare
diferite. Pentru a doua init ializare, dupa iterat ia 1, esantionul 0.4 este egal departat
de codurile c
1
= 0.1, c
2
= 0.7. Daca schimbam regula adoptata si includem acest
esantion n celula A
1
(a codului mai mic), atunci rezultatul se schimba si obt inem
aceleasi coduri ca pentru prima init ializare.
Probleme propuse
PP 6.2.1 Proiectat i un compandor pentru intrarea cu densitatea de probabilitate
din PR6.1.2.
PP 6.2.2 Ce cuantizor are o complexitate de implementare mai mare: un compan-
dor sau un cuantizor neuniform ?
PP 6.2.3 Demonstrat i ca, pentru o intrare cu densitate de probabilitate uniforma,
algorimul Lloyd-Max converge catre cuantizorul uniform. (Indicat ie: considerat i
coduri si puncte de decizie diferite de cele ale cuantizorului uniform si demonstrat i
ca ele nu satisfac condit iile de optimalitate (6.21) sau (6.23).)
PP 6.2.4 Dorim sa proiectam un cuantizor pentru un proces ale carui valori le
putem masura. Culegem doua seturi de date X
1
si X
2
, ambele cu M esantioane. Ex-
ecutam algoritmul Lloyd-Max cu ecare din aceste seturi de date si acelasi dict ionar
init ial. Obt inem acelasi rezultat ?
Cum putem proceda pentru a obt ine un dict ionar mai bun ?
Ghid Matlab
Algoritmul Lloyd-Max este implementat de funct ia lloyds. Daca vectorul date
cont ine esantioane ale intrarii (presupuse relevante pentru distribut ia de probabili-
tate a acesteia), iar vectorul c ini cont ine un dict ionar init ial, atunci apelul
>> c = lloyds(date, c_ini)
produce un dict ionar c optimizat cu algoritmul Lloyd-Max.
6.3. CUANTIZARE VECTORIAL

A 173
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Figura 6.7: Celule Voronoi pentru un cuantizor 2D cu coduri aleatoare.
6.3 Cuantizare vectoriala
Un cuantizor vectorial este o funct ie q : R
n
C, unde C R
n
este un dict ionar cu
N elemente. Spre deosebire de cuantizarea scalara, unde ecare element al intrarii
este cuantizat separat, acum se cuantizeaza simultan n valori ale intrarii, sub forma
unui vector n R
n
. Codul q(x) = c
k
, k = 1 : N, este si el un vector de dimensiune
n. Cuantizarea vectoriala permite obt inerea unor distorsiuni mai mici decat cea
scalara, la rezolut ii egale. Pentru reprezentarea unui cod sunt necesari log
2
N bit i.
Deoarece un cod reprezinta n valori ale intrarii, rezolut ia unui cuantizor vectorial
este
r = (log
2
N)/n. (6.29)
Celula Voronoi este denita tot prin relat ia (6.1), dar acum avem A
k
R
n
. Un
exemplu de cuantizor 2D (cu n = 2) este prezentat n gura 6.7. Un cuantizor ale
carui celule Voronoi sunt convexe (ca n gura) se numeste regulat.
Distorsiunea medie a unui cuantizor vectorial este denit a prin relat ii similare
celor din cazul scalar (6.3), (6.4) prin
D =
_
R
n
x q(x)
2
p(x)dx =
N

k=1
_
A
k
x c
k

2
p(x)dx, (6.30)
unde p(x) este densitatea de probabilitate a seturilor de n valori ale intrarii. Norma
utilizata este cea euclidiana.
Comparat ii ntre cuantizarea vectoriala si cea scalara
Cuantizarea vectoriala poate asigura performant e mai bune decat cea scalara. Ilustram
aceasta armat ie n cazul n = 2, pentru cazul simplu n care semnalul de intrare
este uniform distribuit.
174 CAPITOLUL 6. CUANTIZARE
Cuantizor uniform 2D. Cuantizorul scalar uniform este optim. Cuantizand cate
doua valori simultan (dar independent) cu acest cuantizor, obt inem un cuantizor
2D cu celulele Voronoi ca n stanga gurii 6.8.

In general, o astfel de interpretare
conduce la celule Voronoi de forma dreptunghiulara, cu laturile paralele cu axele;
pentru cuantizorul uniform, celulele sunt patrate. Ca n (6.8), notam cu distant a
dintre doua coduri, care este si latura celulei Voronoi. Presupunem ca toate celulele,
inclusiv cele de la margine, au aceeasi forma. Forma cumulativa a distorsiunii (6.30)
si forma identica a celulelor permite limitarea studiului la o singura celula, cea din
jurului codului c
k
= 0 (acelasi rezultat se obt ine pentru orice cod), reprezentata n
stanga gurii 6.9. Deoarece ecare celula are arie
2
, rezulta ca p(x) = 1/(N
2
).
Distorsiunea cuantizorului este
D
uni
= N
_
A
k
(x c
k
)
2
1
N
2
dx =
1

2
_
/2
/2
_
/2
/2
(x
2
1
+x
2
2
)dx
1
dx
2
=

2
6
. (6.31)
(Valoarea de doua ori mai mare decat cea din (6.11) se explica prin lipsa normalizarii
cu n a distorsiunii (6.30), spre deosebire de rezolut ia (6.29).)
Cuantizorul cu celule hexagonale reprezentat n dreapta gurii 6.8 este optim, n
2D, n privint a distorsiunii; nu demonstram aceasta armat ie, ci ne mult umim sa
demonstram ca este mai bun decat cel uniform. Facem aceeasi ipoteza ca mai sus,
anume ca toate cele N celule sunt identice. Consideram o celula Voronoi cu latura
a (egala cu raza cercului circumscris), ca n dreapta gurii 6.9. Aria acestei celule
este
A =
3

3
2
a
2
. (6.32)
Densitatea de probabilitate uniforma are valoarea p(x) = 1/(NA). Presupunand
celula centrata n origine, putem calcula distorsiunea pe cele 6 triunghiuri echilat-
erale formate de doua raze (ale cercului circumscris) si o latura. Distorsiunea medie
a cuantizorului este
D
hex
= 6N
_
a

3/2
0
_
x2/

3
x2/

3
(x
2
1
+x
2
2
)
1
NA
dx
1
dx
2
=
5a
2
12
. (6.33)
Pentru a compara distorsiunile cuantizoarelor hexagonal si uniform, este necesar ca
ariile celulelor Voronoi sa e egale, i.e.

2
=
3

3
2
a
2
.
Raportul distorsiunilor este
D
hex
D
uni
=
5a
2
12
3

3a
2
26
=
5
3

3
= 0.9623. (6.34)

In concluzie, cuantizorul hexagonal ofera un castig de aproape 4%n distorsiune.


Aceasta mbunatat ire nu este prea mare.

Insa, cu cat n creste, cu atat creste
calitatea cuantizarii vectoriale n raport cu cea scalara.
6.3. CUANTIZARE VECTORIAL

A 175
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Figura 6.8: Celule Voronoi pentru cuantizor 2D uniform (st anga) si cuantizor bazat
pe latice hexagonala (dreapta).
`

x
1
/2 /2
x
2
/2
/2
`
x
1
x
2

a/2
a

3/2
a
Figura 6.9: O celula Voronoi pentru cuantizor 2D uniform (stanga) si cuantizor
bazat pe latice hexagonala (dreapta).
176 CAPITOLUL 6. CUANTIZARE

In schimb, implementarea unui cuantizor vectorial este mai dicila decat cea
a unuia scalar. Dihotomia nu mai este posibila si, pentru un dict ionar oarecare,
doar cautarea exhaustiva poate produce codul cel mai apropiat de vectorul x
R
n
cuantizat. Daca nsa dict ionarul are o structura regulata, precum n cazul
celulelor hexagonale, atunci se pot concepe algoritmi ecient i de cautare.

In general,
cuantizoarele vectoriale utilizate n practica folosesc o structura a codurilor care le
face neoptimale, dar (relativ) usor de utilizat.
Condit ii de optimalitate si algoritmul Lloyd generalizat
Celule Voronoi optime pentru coduri date. Presupunand ca dict ionarul este cunos-
cut, distorsiunea este minimizata daca, pentru x R
n
dat, valoarea q(x) este codul
cel mai apropiat de x. Asadar, celula Voronoi optima asociata codului c
k
este
A
k
= {x R
n
| x c
k
x c
i
, i = 1 : N}. (6.35)

In consecint a, celulele Voronoi optime au forma poliedrala (revedet i gura 6.7 pentru
cazul 2D). Daca A
k
si A
i
sunt celule vecine, atunci granit a dintre ele este hiperplanul
ortogonal pe mijlocul segmentului ce uneste codurile c
k
si c
i
.

In plus, celulele sunt
convexe. Punctele de pe frontiera pot atribuite oricareia dintre cele doua celule,
fara modicarea distorsiunii.
Coduri optime pentru celule Voronoi date. Presupunem acum ca celulele Voronoi
sunt cunoscute si vrem sa determinam codurile optime corespunzatoare. Similar
cu (6.23), codul optim asociat celulei A
k
este centrul de masa (centroidul) celulei
respective, i.e.
c
k
=
1
vol A
k
_
A
k
xp(x)dx = E{x | x A
k
}. (6.36)
Algoritmul Lloyd generalizat este versiunea multidimensionala a algoritmului
Lloyd-Max. Structura algoritmului este identica cu cea din cazul scalar. Prezentam
aici versiunea pentru cazul n care se cunoaste mult imea X cont inand M esantioane
ale intrarii (i.e. lucram cu o densitate de probabilitate empirica).
0. Se dau M esantioane ale semnalului de intrare, x

, = 1 : M. Se alege un
dict ionar init ial C = {c
1
, . . . , c
N
}.
1. Se stabilesc celulele Voronoi discrete
A
k
= {x

X, = 1 : M | | x

c
k
x

c
i
, i = 1 : N, i = k}. (6.37)
2. Se recalculeaza codurile c
k
, k = 1 : N, ca ind centrele de masa ale celulelor
Voronoi
c
k
=
1
|A
k
|

A
k
x

. (6.38)
(Reamintim ca |A
k
| este numarul de elemente al mult imii A
k
.)
6.3. CUANTIZARE VECTORIAL

A 177
3. Se repeta pasii 1 si 2 p ana cand distorsiunea
D =
1
M
N

k=1

A
k
x

c
k

2
(6.39)
nu mai scade semnicativ.
Ca si n cazul scalar, algoritmul converge, dar sansa de a se termina ntr-un
minim local este mult mai mare.

Intre diversele versiuni de implementare, algoritmul
Linde-Buzo-Gray este cel mai faimos. Se porneste cu un numar mic de coduri, iar
celulele Voronoi cu multe elemente sunt sparte n doua pe masura ce iterat iile
avanseaza.
Ghid Matlab
Pentru desenarea celulelor Voronoi asociate unui dict ionar n R
2
(ca n gura 6.7)
se foloseste apelul
>> voronoi(cx, cy)
Vectorii cx si cy (de aceeasi dimensiune) cont in coordonatele codurilor.
178 CAPITOLUL 6. CUANTIZARE
Anexa A
Semnale si sisteme analogice

In aceasta anexa, prezentam pe scurt denit ii si proprietat i de baza ale semnalelor


si sistemelor analogice (care funct ioneaza n timp continuu). Prezentarea urmeaza
acelasi curs ca n capitolele dedicate semnalelor si sistemelor discrete.
A.1 Semnale analogice
Denit ia A.1 Un semnal analogic este o funct ie x : R R. Not am x(t) valoarea
semnalului n momentul t R. Aceeasi notat ie este folosit a pentru ntreg semnalul.
Denit ia A.2 Semnalul x(t) este absolut sumabil dac a
_

|x(t)|dt < .
Denit ia A.3 Semnalul x(t) are energie nit a dac a
_

|x(t)|
2
dt < .
Denit ia A.4 Convolut ia semnalelor x(t), y(t) este semnalul
x(t) y(t)
def
=
_

x()y(t )d. (A.1)


Denit ia A.5 Transformata Fourier a unui semnal analogic x(t) este funct ia X :
R C
X() =
_

x(t)e
jt
dt. (A.2)
Not am pe scurt X() = TF(x(t)).
Folosim si notat ia X(j) cu aceeasi semnicat ie ca X().

In general, X() nu
este o funct ie periodica.
179
180 ANEXA A. SEMNALE SI SISTEME ANALOGICE
Propozit ia A.6 Dac a semnalul x(t) este absolut sumabil, atunci X() din (A.2)
exist a pentru orice . (Mai mult, seria (A.2) converge uniform c atre o funct ie
continu a n .)
Propozit ia A.7 Dac a x(t) este un semnal de energie nit a, atunci seria (A.2)
converge (i.e. transformata Fourier exist a) aproape peste tot. Mai precis, e
X
M
() =
_
M
M
x(t)e
jt
. (A.3)
Atunci avem
lim
M
_

|X() X
M
()|
2
d = 0, (A.4)
adic a energia erorii de aproximare a lui X() prin X
M
() tinde spre zero, dar
eroarea nu se anuleaz a neap arat peste tot.
Teorema A.8 Transformata Fourier invers a, care asociaz a unei funct ii X() sem-
nalul x(t) (a c arui transformat a Fourier este X()) este
x(t) =
1
2
_

X()e
jt
d. (A.5)
Teorema A.9 (Parseval) Fie x(t), y(t) dou a semnale discrete ale c aror TF sunt
X(), respectiv Y (). Atunci are loc egalitatea
_

x(t)y

(t)dt =
1
2
_

X()Y

()d. (A.6)
Pun and y(t) = x(t) n (A.6) se obt ine egalitatea (numit a de obicei teorema lui
Parseval)
_

|x(t)|
2
dt =
1
2
_

|X()|
2
d. (A.7)
Teorema A.10 (Convolut ie) Prin transformata Fourier, convolut ia a dou a sem-
nale este transformat a n produs al transformatelor Fourier, i.e.
TF(x(t) y(t)) = X() Y (). (A.8)
Denit ia A.11 Transformata Laplace (bilateral a) a unui semnal x(t) este funct ia
X : C C
X(s) =
_

x(t)e
st
dt. (A.9)
Folosim si notat ia X(s) = TL(x(t)).
Observam ca transformata Fourier (A.2) este un caz particular al transformatei
Laplace, pentru s = j. Notat ia X(j) pentru transformata Fourier subliniaza
aceasta legatura.
Teorema A.12 (Convolut ie) Prin transformata Laplace, convolut ia a dou a sem-
nale este transformat a n produs al transformatelor Laplace, i.e.
TL(x(t) y(t)) = X(s) Y (s). (A.10)
A.2. SISTEME ANALOGICE 181
A.2 Sisteme analogice
Un sistem (ltru) analogic S transforma un semnal de intrare x(t) ntr-un semnal
de iesire y(t) = S{x(t)}.
Denit ia A.13 (Liniaritate) Un sistem S este liniar dac a pentru orice semnale
de intrare x
1
(t), x
2
(t) si orice scalari
1
,
2
are loc egalitatea
S{
1
x
1
(t) +
2
x
2
(t)} =
1
S{x
1
(t)} +
2
S{x
2
(t)}. (A.11)
Denit ia A.14 (Invariant a n timp) Sistemul S este invariant n timp dac a
pentru orice semnal de intrare x(t), cu iesirea corespunz atoare y(t) = S{x(t)}, si
orice nt arziere t
0
R, aplic and semnalul x(t t
0
) la intrarea sistemului se obt ine
iesirea y(t t
0
).
Denit ia A.15 (Cauzalitate) Sistemul S este cauzal dac a, lu and orice semnal
de intrare x(t), cu iesirea corespunz atoare y(t) = S{x(t)}, pentru orice t
0
R,
valoarea y(t
0
) depinde doar de intr arile x(t), t t
0
.
Denit ia A.16 (Stabilitate) Sistemul S este stabil n sens BIBO dac a, pentru
orice semnal de intrare x(t) m arginit, n sensul c a exist a M
x
astfel nc at |x(t)|
M
x
, t R, semnalul de iesire y(t) = S{x(t)} este si el m arginit, i.e. exist a M
y
astfel nc at |y(t)| M
y
, t R.

In continuare discutam doar despre sisteme liniare si invariante n timp (LIT).


Fie S un sistem LIT si h(t) = S{(t)} r aspunsul la impuls al sistemului. Notam (t)
impulsul unitate (Dirac), care are proprietatea remarcabila ca, pentru orice semnal
x(t), are loc egalitatea
x(t) =
_

x()(t )d. (A.12)


Propozit ia A.17 Fie S un sistem si x(t) un semnal de intrare oarecare. Atunci
iesirea y(t) = S{x(t)} este dat a de relat ia
y(t) =
_

x()h(t ) =
_

x(t )h() (A.13)


adic a este convolut ia dintre semnalul de intrare si r aspunsul la impuls al sistemului.
Propozit ia A.18 Un sistem LIT este cauzal dac a si numai dac a r aspunsul s au la
impuls este nul pentru timp negativ, i.e. h(t) = 0 pentru t < 0.
Propozit ia A.19 Un sistem LIT este stabil dac a si numai dac a r aspunsul s au la
impuls este absolut sumabil.
Denit ia A.20 Funct ia de transfer a unui sistem LIT este transformata Laplace
a r aspunsului s au la impuls
H(s) =
_

h(t)e
st
dt. (A.14)
182 ANEXA A. SEMNALE SI SISTEME ANALOGICE
Propozit ia A.21 Fie X(s), Y (s) transformatele Laplace ale semnalelor de intrare,
respectiv iesire ale unui sistem LIT cu funct ia de transfer H(s). Atunci este adev a-
rat a relat ia
Y (s) = H(s)X(s). (A.15)
Din punct de vedere practic, cele mai importante funct ii de transfer au forma
rat ionala, i.e.
H(s) =
B(s)
A(s)
=

M
n=0
b
n
s
n

N
n=0
a
n
s
n
. (A.16)
Funct iile de transfer cauzale (realizabile zic) satisfac relat ia M N.
Propozit ia A.22 Un sistem cu funct ia de transfer H(s) este stabil dac a tot i polii
s ai (r ad acinile numitorului) au parte real a negativ a.
Propozit ia A.23 Consider am un sistem LIT stabil, al c arui r aspuns la impuls este
h(t). Fie H(s) funct ia sa de transfer si H(j) transformata Fourier a r aspunsului
la impuls. Dac a la intrarea sistemului se aplic a semnalul sinusoidal complex x(t) =
e
j0t
, atunci iesirea este semnalul sinusoidal
y(t) = H(j
0
)e
j0t
= |H(j
0
)|e
j(0t+argH(j0))
. (A.17)
Transformata Fourier H(j) a raspunsului la impuls a unui sistem se numeste
r aspuns n frecvent a al sistemului.

You might also like