← inapoi la cuprins · Cursul profesorului: cap. 6.3 si 8.1–8.2 · Notitele colegilor: p. 25–27, 30 · Inainte: Cap 6 — DFT
Un termometru masoara ceva din ora in ora. Sapte citiri la rand arata asa:
$$1,\ 2,\ 3,\ 10,\ 3,\ 2,\ 1$$
Valoarea 10 e suspecta: e un varf brusc, cel mai probabil o eroare de masurare. Vrei sa “netezesti” lista, ca varful sa nu mai sara in ochi.
Cea mai simpla idee: in loc de fiecare citire, scrii media ultimelor 5 citiri. O valoare gresita se “dilueaza” intre 4 valori bune. Din 10 ramane cam 4 (calculul complet e in sectiunea 3).
Regula “fa media ultimelor 5 valori” este un filtru digital. Operatia matematica din spatele ei se numeste convolutie.
Dupa esantionare (Cap 4) un semnal nu mai e o curba. E o lista de numere, numite esantioane. Un filtru digital este o regula care:
“Suma ponderata” inseamna: inmultesti fiecare numar cu o pondere (un coeficient) si aduni rezultatele. La media a 5 valori, toate ponderile sunt $\frac15$. La alte filtre ponderile sunt diferite intre ele.
| Simbol | Ce este | Exemplu |
|---|---|---|
| $n$ | numarul de ordine al esantionului. Numaratoarea incepe de la 0, nu de la 1. | $n = 0, 1, 2, \dots$ |
| $x(n)$ | intrarea: lista de numere care intra in filtru. $x(0)$ e primul numar, $x(1)$ al doilea. (In curs apare si notata $s(n)$ — e acelasi lucru.) | $x = [1, 2, 3]$ → $x(0) = 1$, $x(1) = 2$, $x(2) = 3$ |
| $h(n)$ | coeficientii filtrului (ponderile). Tot o lista de numere. | $h = [1, 1]$ → $h(0) = 1$, $h(1) = 1$ |
| $y(n)$ | iesirea: lista de numere pe care o scoate filtrul. | o calculam mai jos |
| $P$ | cate numere are intrarea $x$ | pentru $[1, 2, 3]$: $P = 3$ |
| $M$ | cate numere are filtrul $h$ | pentru $[1, 1]$: $M = 2$ |
Incepem cu cel mai mic exemplu posibil. Formula vine abia la 2.5.
Filtrul are doi coeficienti, deci se uita la doua valori de la intrare: cea de acum si cea de la pasul dinainte.
Scris cu simboluri: $y(n) = h(0)\cdot x(n) + h(1)\cdot x(n-1)$.
Aici $x(n)$ este intrarea de la pasul $n$ (“de acum”), iar $x(n-1)$ este intrarea de la pasul $n - 1$ (“cu un pas in urma”).
O singura conventie: daca regula cere o valoare care nu exista (inainte de primul numar sau dupa ultimul), punem 0 in locul ei.
| pasul $n$ | intrarea de acum, $x(n)$ | intrarea dinainte, $x(n-1)$ | calculul $h(0)\cdot x(n) + h(1)\cdot x(n-1)$ | $y(n)$ |
|---|---|---|---|---|
| 0 | $x(0) = 1$ | $x(-1)$ nu exista → 0 | $1\cdot 1 + 1\cdot 0$ | 1 |
| 1 | $x(1) = 2$ | $x(0) = 1$ | $1\cdot 2 + 1\cdot 1$ | 3 |
| 2 | $x(2) = 3$ | $x(1) = 2$ | $1\cdot 3 + 1\cdot 2$ | 5 |
| 3 | $x(3)$ nu exista → 0 | $x(2) = 3$ | $1\cdot 0 + 1\cdot 3$ | 3 |
| 4 | $x(4)$ nu exista → 0 | $x(3)$ nu exista → 0 | $1\cdot 0 + 1\cdot 0$ | 0 — de aici incolo iese doar 0, ne oprim |
Rezultat: $y = [1, 3, 5, 3]$.
Tocmai ai facut o convolutie. Se scrie $y = h * x$ si se citeste “h convolutie cu x”.
Ce vezi in desen: randul albastru este intrarea $x$ si sta pe loc. Randul portocaliu este filtrul $h$, scris intors ($h(1)$ in stanga, $h(0)$ in dreapta). La fiecare pas il muti cu o casuta la dreapta. Casutele care ajung una sub alta se inmultesc (liniile verzi), apoi produsele se aduna. Casutele gri, punctate, au iesit in afara lui $x$: acolo e 0, nu contribuie.
Daca filtrul are $M$ coeficienti in loc de 2, regula se lungeste: te uiti la ultimele $M$ valori de la intrare.
$$y(n) = h(0)\,x(n) + h(1)\,x(n-1) + h(2)\,x(n-2) + \dots + h(M-1)\,x(n-M+1)$$
Ca sa nu scrii toata suma, se foloseste semnul $\sum$ (“sigma” = aduna toti termenii):
$$\boxed{\,y(n) = (h * x)(n) = \sum_{k=0}^{M-1} h(k)\cdot x(n-k)\,}$$
Cum o citesti, bucata cu bucata:
Verificare pe exemplul nostru ($M = 2$, deci $k$ ia valorile 0 si 1): $y(n) = h(0)\,x(n-0) + h(1)\,x(n-1)$. Exact regula din 2.2.
Aceasta este definitia convolutiei din curs. $M$ = numarul de esantioane din $h(n)$.
In exemplu: $x$ are $P = 3$ numere, $h$ are $M = 2$ numere, iar $y$ a iesit cu 4 numere.
$$\text{lungimea lui } y = M + P - 1 = 2 + 3 - 1 = 4$$
Total: $P + (M - 1)$. Iesirea e deci mai lunga decat intrarea, cu $M - 1$ valori.
Acelasi $x = [1, 2, 3]$, dar $h = [2, 1]$, adica $h(0) = 2$, $h(1) = 1$. Regula: $y(n) = 2\cdot x(n) + 1\cdot x(n-1)$.
| pasul $n$ | $x(n)$ | $x(n-1)$ | calculul $2\cdot x(n) + 1\cdot x(n-1)$ | $y(n)$ |
|---|---|---|---|---|
| 0 | 1 | 0 | $2\cdot 1 + 1\cdot 0$ | 2 |
| 1 | 2 | 1 | $2\cdot 2 + 1\cdot 1$ | 5 |
| 2 | 3 | 2 | $2\cdot 3 + 1\cdot 2$ | 8 |
| 3 | 0 | 3 | $2\cdot 0 + 1\cdot 3$ | 3 |
Rezultat: $y = [2, 5, 8, 3]$. Observa: coeficientul $h(0) = 2$ a inmultit mereu valoarea cea mai noua.
Daca nu iese egal, ai gresit un termen pe undeva.
Acesta e exemplul profesorului, dat si ca test la curs. Sunt numerele din povestea cu termometrul.
Cate numere va avea $y$: $M + P - 1 = 5 + 7 - 1 = 11$.
Scriem formula din 2.5 pentru $M = 5$:
$$y(n) = \tfrac15 x(n) + \tfrac15 x(n-1) + \tfrac15 x(n-2) + \tfrac15 x(n-3) + \tfrac15 x(n-4)$$
Toti coeficientii sunt $\frac15$, deci il scoatem in fata:
$$y(n) = \frac{x(n) + x(n-1) + x(n-2) + x(n-3) + x(n-4)}{5}$$
Aduni ultimele 5 valori si imparti la 5. Este media ultimelor 5 intrari. De aici numele: medie alunecatoare (Moving Average) — fereastra de 5 valori “aluneca” peste semnal.
Valorile care nu exista (inainte de $x(0)$ sau dupa $x(6)$) sunt 0 si nu le mai scriem.
| $n$ | ce valori din $x$ prinde fereastra de 5 | suma lor | $y(n)$ = suma / 5 |
|---|---|---|---|
| 0 | 1 | 1 | $\frac15 = 0.2$ |
| 1 | 2, 1 | 3 | $\frac35 = 0.6$ |
| 2 | 3, 2, 1 | 6 | $\frac65 = 1.2$ |
| 3 | 10, 3, 2, 1 | 16 | $\frac{16}{5} = 3.2$ |
| 4 | 3, 10, 3, 2, 1 | 19 | $\frac{19}{5} = 3.8$ |
| 5 | 2, 3, 10, 3, 2 | 20 | $\frac{20}{5} = 4$ |
| 6 | 1, 2, 3, 10, 3 | 19 | $\frac{19}{5} = 3.8$ |
| 7 | 1, 2, 3, 10 | 16 | $\frac{16}{5} = 3.2$ |
| 8 | 1, 2, 3 | 6 | $\frac65 = 1.2$ |
| 9 | 1, 2 | 3 | $\frac35 = 0.6$ |
| 10 | 1 | 1 | $\frac15 = 0.2$ |
Cum citesti un rand, de exemplu $n = 4$: fereastra prinde $x(4), x(3), x(2), x(1), x(0)$, adica 3, 10, 3, 2, 1. Suma e 19. Impartit la 5 da $\frac{19}{5}$.
Cum citesti randul $n = 7$: fereastra ar prinde $x(7), x(6), x(5), x(4), x(3)$. Dar $x(7)$ nu exista (e 0). Raman 1, 2, 3, 10. Suma e 16.
Verificare: suma lui $x$ este $1 + 2 + 3 + 10 + 3 + 2 + 1 = 22$. Suma lui $h$ este $5\cdot\frac15 = 1$. Suma lui $y$ este $\frac{1 + 3 + 6 + 16 + 19 + 20 + 19 + 16 + 6 + 3 + 1}{5} = \frac{110}{5} = 22$ ✓
Ce vezi in desen: in stanga intrarea, cu varful de 10 la $n = 3$. In dreapta iesirea, desenata la aceeasi scara: varful a scazut la 4 si s-a latit. Pe axa orizontala e numarul esantionului $n$, pe cea verticala valoarea lui.
Este cel mai simplu semnal posibil: un singur 1, la $n = 0$, si in rest doar zerouri.
$$\delta(n) = \begin{cases} 1, & n = 0 \\ 0, & n \neq 0 \end{cases} \qquad\text{adica}\qquad \delta = [1, 0, 0, 0, \dots]$$
$\delta$ se citeste “delta”. Il mai gasesti sub numele: impuls, semnal Delta, Kronecker Delta.
Impulsul intarziat: $\delta(n - 2)$ este acelasi 1, dar mutat la $n = 2$: $[0, 0, 1, 0, \dots]$. In general $\delta(n - d)$ are 1-ul la pozitia $n = d$.
Luam filtrul $h = [1, 1]$ din sectiunea 2 si ii dam la intrare $x = \delta = [1, 0, 0, \dots]$. Regula e aceeasi: $y(n) = h(0)\cdot x(n) + h(1)\cdot x(n-1)$.
| $n$ | $x(n)$ | $x(n-1)$ | calculul | $y(n)$ |
|---|---|---|---|---|
| 0 | 1 | 0 | $h(0)\cdot 1 + h(1)\cdot 0$ | $h(0) = 1$ |
| 1 | 0 | 1 | $h(0)\cdot 0 + h(1)\cdot 1$ | $h(1) = 1$ |
| 2 | 0 | 0 | $h(0)\cdot 0 + h(1)\cdot 0$ | 0 |
A iesit $y = [h(0), h(1)] = [1, 1]$. Exact coeficientii filtrului.
Nu e o coincidenta. Singurul 1 de la intrare “trece” pe rand prin dreptul fiecarui coeficient si il scoate la iesire, unul cate unul. Merge la fel pentru orice filtru:
$$\boxed{\,x(n) = \delta(n) \;\Rightarrow\; y(n) = (h * \delta)(n) = h(n)\,}$$
Ce vezi in desen: in stanga impulsul $\delta(n)$: un singur bat de inaltime 1, la $n = 0$. In dreapta ce scoate filtrul “media a 5 valori” din sectiunea 3: cinci bete de inaltime $\frac15$, adica exact $h(n)$.
De aceea lista $h(n)$ are doua nume care inseamna acelasi lucru:
Intrebarea fireasca: am aflat ce face filtrul cu un singur impuls. De unde stim ce face cu orice alt semnal?
Raspunsul: orice semnal este o suma de impulsuri, fiecare mutat la locul lui si inmultit cu valoarea de acolo. Pentru $x = [1, 2, 3]$:
$$[1, 2, 3] = \underbrace{[1, 0, 0]}_{1\cdot\delta(n)} + \underbrace{[0, 2, 0]}_{2\cdot\delta(n-1)} + \underbrace{[0, 0, 3]}_{3\cdot\delta(n-2)}$$
Acum folosim cele doua proprietati ale unui sistem LTI (liniar si invariant in timp, Cap 0 §2):
Aplicam pe fiecare bucata, cu $h = [1, 1]$:
| bucata de intrare | ce scoate filtrul pentru ea | ca lista de 4 valori |
|---|---|---|
| $1\cdot\delta(n)$ | $1\cdot h(n)$ | $[1, 1, 0, 0]$ |
| $2\cdot\delta(n-1)$ | $2\cdot h(n-1)$ | $[0, 2, 2, 0]$ |
| $3\cdot\delta(n-2)$ | $3\cdot h(n-2)$ | $[0, 0, 3, 3]$ |
| suma = $x$ | suma = $y$ | $[1, 3, 5, 3]$ |
A iesit $[1, 3, 5, 3]$ — acelasi rezultat ca in sectiunea 2. Deci convolutia este, privita altfel: fiecare valoare de la intrare lasa in urma ei o copie a lui $h$ (inmultita cu valoarea respectiva), iar copiile se aduna.
Ce vezi in desen: pe coloana din stanga, intrarea desfacuta in 3 impulsuri (albastru) si suma lor (mov, jos). Pe coloana din dreapta, raspunsul filtrului la fiecare impuls (rosu): cate o copie a lui $h = [1, 1]$, mutata si inmultita. Jos (verde) suma raspunsurilor: $y = [1, 3, 5, 3]$.
Intrebarea: ai un sistem la care ai acces doar la intrare si la iesire. Nu stii ce e inauntru. Cum ii afli functia de transfer?
Raspunsul, in 3 pasi:
De ce pasul 3 da functia de transfer: vezi teorema convolutiei, sectiunea 6.
Alte doua variante corecte: (a) bagi pe rand cate o sinusoida de fiecare frecventa si masori de cate ori s-a schimbat amplitudinea la iesire — asa e definita functia de transfer in Cap 1 §3; (b) bagi orice semnal cunoscut $x(n)$, masori $y(n)$ si calculezi $H(k) = Y(k)/X(k)$ (unde $X(k) \neq 0$).
Fiecare proprietate, cu un exemplu mic pe care il poti verifica de mana.
$h * x = x * h$. Nu conteaza care lista e “filtrul” si care e “semnalul”. Rezultatul e acelasi.
Exemplu: stim ca $[1, 1] * [1, 2, 3] = [1, 3, 5, 3]$. Schimbam rolurile: filtrul e $h = [1, 2, 3]$ ($M = 3$), intrarea e $x = [1, 1]$. Regula: $y(n) = 1\cdot x(n) + 2\cdot x(n-1) + 3\cdot x(n-2)$.
Tot $[1, 3, 5, 3]$ ✓
La ce ajuta: la examen alegi ca “filtru” lista mai scurta. Ai mai putini termeni de adunat la fiecare pas.
Doua lucruri:
Exemplu pentru suma, cu $h = [1, 1]$, $a = [1, 2, 3]$, $b = [0, 1, 0]$:
La ce ajuta: daca semnalul e o suma de sinusoide, poti trece fiecare sinusoida separat prin filtru si aduni la sfarsit. Exact ce faceai in Cap 1 §5.
Exemplu: $\delta(n-2) = [0, 0, 1]$.
$$[0, 0, 1] * [1, 2, 3] = [0, 0, 1, 2, 3]$$
Verificare cu ideea din 4.3: valoarea 1 de pe pozitia 2 lasa in urma ei o copie a lui $[1, 2, 3]$ care incepe de la pozitia 2. Zerourile nu lasa nimic.
Daca treci semnalul prin filtrul $h_1$ si apoi rezultatul prin filtrul $h_2$, e ca si cum l-ai trece o singura data prin filtrul $h_1 * h_2$.
Exemplu: doua filtre $[1, 1]$ puse unul dupa altul.
(Filtrul $h = [1, 2, 1]$ apare intr-o problema de examen din 2026 — vezi Cap 9.)
Pana aici am lucrat doar in timp: liste de esantioane. Acum ne uitam la aceeasi operatie in frecventa: ce se intampla cu spectrul.
| $k$ | cu ce inmultesti $x(0), x(1), x(2), x(3)$ |
|---|---|
| 0 | $1,\ 1,\ 1,\ 1$ |
| 1 | $1,\ -j,\ -1,\ j$ |
| 2 | $1,\ -1,\ 1,\ -1$ |
| 3 | $1,\ j,\ -1,\ -j$ |
Notam cu litere mari spectrele: $X(k)$ pentru intrare, $H(k)$ pentru filtru, $Y(k)$ pentru iesire.
Luam exemplul din sectiunea 2: $x = [1, 2, 3]$, $h = [1, 1]$, $y = h * x = [1, 3, 5, 3]$.
Pas 1 — aducem cele trei liste la aceeasi lungime, $N = 4$, punand zerouri la coada:
Pas 2 — calculam spectrul fiecarei liste cu tabelul din 6.1.
Pentru $x = [1, 2, 3, 0]$:
Pentru $h = [1, 1, 0, 0]$:
Pentru $y = [1, 3, 5, 3]$:
Pas 3 — inmultim $H(k)$ cu $X(k)$, linie cu linie, si comparam cu $Y(k)$:
| $k$ | $H(k)$ | $X(k)$ | $H(k)\cdot X(k)$ | $Y(k)$ |
|---|---|---|---|---|
| 0 | $2$ | $6$ | $2\cdot 6 = 12$ | $12$ ✓ |
| 1 | $1 - j$ | $-2 - 2j$ | $-4$ (calculul e mai jos) | $-4$ ✓ |
| 2 | $0$ | $2$ | $0\cdot 2 = 0$ | $0$ ✓ |
| 3 | $1 + j$ | $-2 + 2j$ | $-4$ | $-4$ ✓ |
Calculul de la $k = 1$, desfacand parantezele (si $j^2 = -1$, Cap 0 §3):
$$(1 - j)(-2 - 2j) = -2 - 2j + 2j + 2j^2 = -2 + 2\cdot(-1) = -4$$
Concluzie: spectrul iesirii este produsul dintre spectrul filtrului si spectrul intrarii, la fiecare $k$. In timp am facut o convolutie (complicata). In frecventa aceeasi operatie e o simpla inmultire.
Pe scurt: convolutie intr-un domeniu (timp sau frecventa) = inmultire in celalalt domeniu.
$$(h * x)(n) \;\longleftrightarrow\; H(k)\cdot X(k) \qquad\qquad h(n)\cdot x(n) \;\longleftrightarrow\; (H * X)(k)$$
Sageata dubla $\longleftrightarrow$ inseamna “ii corespunde in celalalt domeniu” (stanga: timp, dreapta: frecventa).
(Detaliu pentru cine verifica numeric: la a doua forma, cu formulele DFT din curs, mai apare un factor constant $\frac1N$. El nu schimba forma spectrului. In curs teorema se enunta fara el, asa cum e scrisa mai sus.)
Asta e poanta capitolului. Pune cap la cap ce stii deja:
Teorema spune ce trebuie facut cu esantioanele ca sa obtii aceasta inmultire in frecventa: o convolutie cu $h(n)$.
| in timp (pe esantioane) | in frecventa (pe spectru) | |
|---|---|---|
| semnalul de intrare | $x(n)$ | $X(k)$ |
| filtrul | $h(n)$ — coeficientii = raspunsul la impuls | $H(k)$ — functia de transfer (“fereastra”) |
| operatia de filtrare | convolutie: $y(n) = (h * x)(n)$ | inmultire: $Y(k) = H(k)\cdot X(k)$ |
Ce vezi in desen: randul de sus e in frecventa, cel de jos in timp. Intrarea (albastru) este suma dintre un cosinus lent (linia de la $k = 2$) si unul rapid (linia de la $k = 16$). Filtrul (portocaliu) este media ultimelor 8 valori; spectrul lui e aproape 1 la frecvente mici si exact 0 la $k = 16$. Sus: inmultind linie cu linie, linia de la $k = 2$ ramane aproape intreaga ($32\cdot 0.9 = 28.8$), iar cea de la $k = 16$ dispare ($25.6\cdot 0 = 0$). Jos: aceeasi filtrare facuta prin convolutie — din semnalul “zimtat” ramane doar cosinusul lent.
Din 6.2 avem $H(k) = [2,\ 1 - j,\ 0,\ 1 + j]$. Ne intereseaza marimea (modulul, Cap 0 §3): $|1 - j| = \sqrt{1^2 + 1^2} = \sqrt2 \approx 1.41$.
| $k$ | ce frecventa e | $\lvert H(k)\rvert$ | ce face filtrul cu ea |
|---|---|---|---|
| 0 | frecventa 0 (semnal constant) | 2 | o lasa sa treaca (o si dubleaza) |
| 1 | $f_s/4$ | 1.41 | trece, mai slab |
| 2 | $f_s/2$ (cea mai mare frecventa posibila) | 0 | o elimina complet |
| 3 | $-f_s/4$ (oglinda lui $k = 1$) | 1.41 | la fel ca $k = 1$ |
Frecventele joase trec, cea mai inalta e taiata → $h = [1, 1]$ este un filtru trece-jos. Normal: $[1, 1]$ aduna doua valori vecine, deci e (de 2 ori) media lor.
Ai intalnit-o deja, fara sa-i spunem pe nume:
Ce se cere: lungimea lui $y$.
Ce stim: $x$ are $P = 4$ valori, $h$ are $M = 3$ valori.
Pas 1. Formula din 2.6: lungimea = $M + P - 1 = 3 + 4 - 1 = 6$.
Raspuns a): $y$ are 6 valori: $y(0), y(1), \dots, y(5)$.
Ce se cere: cele 6 valori.
Ce stim: $x(0) = 2$, $x(1) = 0$, $x(2) = 4$, $x(3) = 6$; $h(0) = 1$, $h(1) = 2$, $h(2) = 1$.
Pas 1 — scriem regula (formula din 2.5 cu $M = 3$):
$$y(n) = 1\cdot x(n) + 2\cdot x(n-1) + 1\cdot x(n-2)$$
In cuvinte: valoarea de acum, plus de 2 ori cea dinainte, plus cea de acum 2 pasi.
Pas 2 — calculam pe rand (ce nu exista e 0):
| $n$ | $x(n)$ | $x(n-1)$ | $x(n-2)$ | calculul $1\cdot x(n) + 2\cdot x(n-1) + 1\cdot x(n-2)$ | $y(n)$ |
|---|---|---|---|---|---|
| 0 | 2 | 0 | 0 | $2 + 0 + 0$ | 2 |
| 1 | 0 | 2 | 0 | $0 + 4 + 0$ | 4 |
| 2 | 4 | 0 | 2 | $4 + 0 + 2$ | 6 |
| 3 | 6 | 4 | 0 | $6 + 8 + 0$ | 14 |
| 4 | 0 | 6 | 4 | $0 + 12 + 4$ | 16 |
| 5 | 0 | 0 | 6 | $0 + 0 + 6$ | 6 |
Raspuns b): $y = [2, 4, 6, 14, 16, 6]$.
Ce se cere: o verificare.
Pas 1 — numarul de valori: am obtinut 6, cat am prezis la a) ✓
Pas 2 — regula sumelor (2.7): suma lui $x$ este $2 + 0 + 4 + 6 = 12$. Suma lui $h$ este $1 + 2 + 1 = 4$. Produsul: $12\cdot 4 = 48$. Suma lui $y$: $2 + 4 + 6 + 14 + 16 + 6 = 48$ ✓
Raspuns c): rezultatul trece ambele verificari.
Regula filtrului (pentru toate punctele): $y(n) = \frac12 x(n) + \frac12 x(n-1)$ — media dintre valoarea de acum si cea dinainte.
Ce se cere: $y$ pentru intrarea constanta.
Pas 1 — prima valoare: $y(0) = \frac12\cdot 3 + \frac12\cdot 0 = 1.5$ (inainte nu era nimic).
Pas 2 — valorile din mijloc, $n = 1, \dots, 5$: $y(n) = \frac12\cdot 3 + \frac12\cdot 3 = 3$.
Pas 3 — ultima valoare: $y(6) = \frac12\cdot 0 + \frac12\cdot 3 = 1.5$ (semnalul s-a terminat).
Raspuns a): $y = [1.5, 3, 3, 3, 3, 3, 1.5]$. Lasand deoparte cele doua margini, constanta 3 a trecut neschimbata.
Ce se cere: $y$ pentru intrarea alternanta.
Pas 1 — prima valoare: $y(0) = \frac12\cdot 1 + \frac12\cdot 0 = 0.5$.
Pas 2 — valorile din mijloc: doua valori vecine sunt mereu $1$ si $-1$. Media lor: $\frac12\cdot 1 + \frac12\cdot(-1) = 0$. Deci $y(1) = y(2) = \dots = y(5) = 0$.
Pas 3 — ultima valoare: $y(6) = \frac12\cdot 0 + \frac12\cdot(-1) = -0.5$.
Raspuns b): $y = [0.5, 0, 0, 0, 0, 0, -0.5]$. Lasand deoparte marginile, alternanta a fost stearsa complet.
Ce vezi in desen: sus, semnalul constant intra (albastru) si iese (rosu) tot 3. Jos, semnalul alternant intra si iese 0. La capete ($n = 0$ si $n = 6$) sunt valorile de margine.
Ce se cere: tipul filtrului.
Pas 1 — ce frecventa are semnalul constant: nu se schimba deloc, deci are frecventa 0 — cea mai joasa posibila (Cap 0 §6: constanta = linie la $f = 0$).
Pas 2 — ce frecventa are semnalul alternant: isi schimba semnul la fiecare esantion. Mai repede de atat un semnal esantionat nu se poate schimba. Este un cosinus cu frecventa $f_s/2$: $\cos(\pi n) = 1, -1, 1, -1, \dots$ — cea mai mare frecventa care exista dupa esantionare (Cap 4).
Pas 3 — punem cap la cap: frecventa cea mai joasa trece, frecventa cea mai inalta e taiata.
Raspuns c): este un filtru trece-jos. Explicatia in cuvinte: media a doua valori vecine netezeste schimbarile rapide si lasa neatinse zonele unde semnalul sta pe loc.
Ce se cere: acelasi lucru pentru $h = [\frac12, -\frac12]$.
Pas 1 — regula noua: $y(n) = \frac12 x(n) - \frac12 x(n-1)$ — jumatate din diferenta dintre valoarea de acum si cea dinainte.
Pas 2 — semnalul constant: in mijloc, $\frac12\cdot 3 - \frac12\cdot 3 = 0$. Iese $[1.5, 0, 0, 0, 0, 0, -1.5]$ → constanta e stearsa.
Pas 3 — semnalul alternant: in mijloc, de exemplu la $n = 1$: $\frac12\cdot(-1) - \frac12\cdot 1 = -1$; la $n = 2$: $\frac12\cdot 1 - \frac12\cdot(-1) = 1$. Iese $[0.5, -1, 1, -1, 1, -1, 0.5]$ → alternanta trece neschimbata.
Raspuns d): acum e un filtru trece-sus. O diferenta intre vecini e 0 unde semnalul sta pe loc si mare unde se schimba repede. (Un singur semn schimbat a transformat trece-jos in trece-sus — ideea e reluata in Cap 9.)
Intai, ce semnal e la intrare (din Cap 6): un cosinus de amplitudine $A$ care cade exact pe linia $m$ da doua linii de inaltime $A\cdot N/2$: una la $k = m$ si oglinda ei la $k = N - m$.
Deci $x$ = esantioanele lui $2\cos(2\pi\cdot 1000\,t) + 2\cos(2\pi\cdot 3000\,t)$.
Ce se cere: $|Y(k)|$ dupa filtrul ideal si semnalul ramas.
Ce stim: teorema convolutiei: $Y(k) = H(k)\cdot X(k)$, deci $|Y(k)| = |H(k)|\cdot|X(k)|$ — inmultim linie cu linie.
Pas 1 — inmultirea:
| $k$ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|
| $\lvert X(k)\rvert$ | 0 | 8 | 0 | 8 | 0 | 8 | 0 | 8 |
| $\lvert H(k)\rvert$ | 1 | 1 | 1 | 0 | 0 | 0 | 1 | 1 |
| $\lvert Y(k)\rvert$ = produsul | 0 | 8 | 0 | 0 | 0 | 0 | 0 | 8 |
Pas 2 — ce semnal e asta: au ramas liniile de la $k = 1$ si $k = 7$, de inaltime 8 → cosinusul de 1000 Hz, cu amplitudinea $8/(N/2) = 8/4 = 2$.
Raspuns a): $|Y(k)| = [0, 8, 0, 0, 0, 0, 0, 8]$. A ramas doar $2\cos(2\pi\cdot 1000\,t)$; cosinusul de 3000 Hz a fost eliminat.
Ce se cere: $|Y(k)|$ dupa filtrul real $h = [\frac12, \frac12]$.
Ce stim: tot $|Y(k)| = |H(k)|\cdot|X(k)|$, cu valorile lui $|H(k)|$ din enunt. (Ele vin din DFT-ul pe 8 puncte al lui $h$ completat cu zerouri — nu trebuie calculate aici.)
Pas 1 — inmultirea:
| $k$ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|
| $\lvert X(k)\rvert$ | 0 | 8 | 0 | 8 | 0 | 8 | 0 | 8 |
| $\lvert H(k)\rvert$ | 1 | 0.92 | 0.71 | 0.38 | 0 | 0.38 | 0.71 | 0.92 |
| $\lvert Y(k)\rvert$ = produsul | 0 | 7.39 | 0 | 3.06 | 0 | 3.06 | 0 | 7.39 |
(Cu valorile nerotunjite, $0.9239$ si $0.3827$: $8\cdot 0.9239 = 7.39$ si $8\cdot 0.3827 = 3.06$.)
Raspuns b): $|Y(k)| = [0,\ 7.39,\ 0,\ 3.06,\ 0,\ 3.06,\ 0,\ 7.39]$. Linia de 1000 Hz a ramas aproape intreaga. Linia de 3000 Hz a scazut la mai putin de jumatate, dar nu a disparut: filtrul real nu taie brusc, ca cel ideal.
Ce vezi in desen: randul de sus e punctul a), cel de jos punctul b). In fiecare rand: spectrul intrarii (albastru) × spectrul filtrului (portocaliu) = spectrul iesirii (rosu). Pe axa orizontala e indicele $k$; linia $k$ inseamna frecventa $k\cdot 1000$ Hz.
Ce se cere: amplitudinile cosinusurilor la iesire.
Ce stim: o linie de inaltime $L$ (impreuna cu oglinda ei) inseamna un cosinus de amplitudine $A = L/(N/2) = L/4$.
Pas 1 — 1000 Hz: $A = 7.39/4 \approx 1.85$ (la intrare era 2).
Pas 2 — 3000 Hz: $A = 3.06/4 \approx 0.77$ (la intrare era 2).
Raspuns c): la iesire avem aproximativ $1.85\cos(2\pi\cdot 1000\,t) + 0.77\cos(2\pi\cdot 3000\,t)$ (fiecare cu o mica intarziere, care nu se vede in $|Y(k)|$). Se vede direct regula din Cap 1: amplitudinea de la iesire = amplitudinea de la intrare × $|H|$ la frecventa respectiva ($2\cdot 0.92$ si $2\cdot 0.38$).
(Nota: rezultatul e valabil dupa primul esantion, cand filtrul are deja ambele valori de care are nevoie — fara efectul de margine din Problema 2.)
Ce se cere: $h(n)$.
Pas 1. Din 4.2: ce iese cand intra $\delta(n)$ este chiar raspunsul la impuls.
Raspuns a): $h = [1, 2, 1]$.
Ce se cere: $y = h * x$ pentru $x = [1, 0, -1]$.
Ce stim: $M = 3$, $P = 3$ → $y$ are $3 + 3 - 1 = 5$ valori. Regula: $y(n) = 1\cdot x(n) + 2\cdot x(n-1) + 1\cdot x(n-2)$.
Pas 1 — calculul:
| $n$ | $x(n)$ | $x(n-1)$ | $x(n-2)$ | calculul | $y(n)$ |
|---|---|---|---|---|---|
| 0 | 1 | 0 | 0 | $1 + 0 + 0$ | 1 |
| 1 | 0 | 1 | 0 | $0 + 2 + 0$ | 2 |
| 2 | $-1$ | 0 | 1 | $-1 + 0 + 1$ | 0 |
| 3 | 0 | $-1$ | 0 | $0 - 2 + 0$ | −2 |
| 4 | 0 | 0 | $-1$ | $0 + 0 - 1$ | −1 |
Pas 2 — verificare: suma lui $x$ este $1 + 0 - 1 = 0$, deci suma lui $y$ trebuie sa fie $0\cdot 4 = 0$. Si este: $1 + 2 + 0 - 2 - 1 = 0$ ✓
Raspuns b): $y = [1, 2, 0, -2, -1]$.
Incearca-le fara sa te uiti la raspunsuri (sunt imediat dupa, in 9.1).
G1. Semnalul $x$ are 7 esantioane, filtrul $h$ are 5 coeficienti. Cate esantioane are $y = h * x$?
G2. Cat este $[1, 2] * [1, 1, 1]$?
G3. La intrarea unui filtru cu coeficientii $h(n)$ punem impulsul $\delta(n)$. La iesire obtinem:
G4. Convolutiei a doua semnale in timp ii corespunde, in frecventa:
G5. Filtrul cu $h = [\frac13, \frac13, \frac13]$ este:
G6. Inmultim doua semnale in timp, esantion cu esantion: $y(n) = h(n)\cdot x(n)$. Spectrul lui $y$ este:
G7. Cat este $x * \delta(n - 3)$?
G8. La o anumita frecventa $k$ avem $|X(k)| = 6$ si $|H(k)| = 0.5$. Cat este $|Y(k)|$ la iesirea filtrului?
| Grila | Raspuns | De ce e corect | De ce sunt gresite celelalte |
|---|---|---|---|
| G1 | B | $M + P - 1 = 5 + 7 - 1 = 11$ (sectiunea 2.6) | A: iesirea e mai lunga decat intrarea, cu $M - 1$; C: ai uitat de “−1” ($5 + 7$); D: lungimile nu se inmultesc |
| G2 | C | regula $y(n) = 1\cdot x(n) + 2\cdot x(n-1)$ pe $x = [1, 1, 1]$: $1$; $1 + 2 = 3$; $1 + 2 = 3$; $0 + 2 = 2$. Verificare: $1 + 3 + 3 + 2 = 9 = 3\cdot 3$ | A: e inmultire pozitie cu pozitie, nu convolutie; B si D: au prea putine valori (trebuie $2 + 3 - 1 = 4$) |
| G3 | B | $h * \delta = h$: impulsul scoate coeficientii unul cate unul (sectiunea 4.2) | A: ar fi adevarat doar pentru filtrul $h = [1]$; C: suma coeficientilor iese (dupa un timp) la o intrare constanta egala cu 1, nu la impuls; D: impulsul are un 1, deci iese ceva |
| G4 | C | teorema convolutiei: $(h * x)(n) \leftrightarrow H(k)\cdot X(k)$ | A: adunarea spectrelor corespunde adunarii semnalelor; B: convolutia spectrelor corespunde inmultirii in timp (invers); D: nu exista o asemenea regula |
| G5 | A | face media a 3 valori vecine → netezeste salturile rapide, lasa constanta neschimbata ($\frac13 + \frac13 + \frac13 = 1$) | B: un trece-sus ar sterge constanta (ar avea suma coeficientilor 0, ca $[\frac12, -\frac12]$); C: nu taie frecventele joase; D: varfurile sunt turtite, deci schimba semnalul |
| G6 | C | a doua jumatate a teoremei: inmultire in timp ↔ convolutie in frecventa (sectiunea 6.6) | A: asta e pentru convolutie in timp; B: asta e pentru adunare in timp; D: inmultirea cu alt semnal schimba spectrul (vezi AM) |
| G7 | B | convolutia cu un impuls mutat la $n = 3$ muta semnalul acolo: incepe cu 3 esantioane mai tarziu (sectiunea 5.3) | A: inmultirea cu 3 ar fi $x * [3]$; C: $n - 3$ inseamna mai tarziu, nu mai devreme; D: convolutia cu un delta nu taie nimic din semnal |
| G8 | C | spectrele se inmultesc: $\lvert Y(k)\rvert = \lvert H(k)\rvert\cdot\lvert X(k)\rvert = 0.5\cdot 6 = 3$ | A si D: spectrele se inmultesc, nu se aduna si nu se scad; B: ai impartit la 0.5 in loc sa inmultesti |
Raspunsurile sunt scrise asa cum le-ai pune pe foaie: scurt, cu formula si cu o propozitie de explicatie.
T1. Ce este convolutia? Dati definitia si o aplicatie. (examen 2023, 2026)
Aplicatie: filtrarea digitala. Orice filtrare a unui semnal $x(n)$ cu un filtru de coeficienti $h(n)$ se face prin convolutie. Exemplu: $h = [\frac15, \dots, \frac15]$ (Moving Average) face media ultimelor 5 valori si netezeste semnalul (filtru trece-jos).
T2. Enuntati teorema convolutiei. La ce foloseste? (examen 2023, 2026)
La ce foloseste: arata ca filtrarea, care in frecventa este inmultirea spectrului cu functia de transfer $H(k)$, se realizeaza in timp prin convolutia cu coeficientii $h(n)$. A doua forma explica modulatia (inmultirea cu un cosinus muta spectrul) si scurgerea spectrala (DFT leakage).
T3. Ce este raspunsul la impuls al unui sistem?
T4. Cum aflati functia de transfer a unui sistem la care aveti acces doar la intrare si la iesire? (examen 2024)
T5. De ce filtrul “Moving Average” este un filtru trece-jos?
T6. Care este legatura dintre $h(n)$ si $H(k)$?
Urmatorul capitol: Cap 8 — Scurgerea spectrala (DFT leakage), zero-padding si ferestre.