10.4 Compresie și extindere, metode multirate

După cum se arată în figura 10-12, o compresie a semnalului într-un domeniu are ca rezultat o expansiune în cealaltă și invers. Pentru semnalele continue, dacă X(f) este Transformata Fourier a x(t), atunci 1/k × X(f/k) este Transformata Fourier a x(kt), unde k este parametrul care controlează expansiunea sau contracția. Dacă un eveniment se întâmplă mai repede (este comprimat în timp), acesta trebuie să fie compus din frecvențe mai înalte. Dacă un eveniment are loc mai lent (este extins în timp), trebuie să fie compus din frecvențe mai joase. Acest model se păstrează dacă este dus la una dintre cele două extreme. Adică, dacă semnalul din domeniul timp este comprimat până devine un impuls, spectrul de frecvență corespunzător este extins până devine o valoare constantă. De asemenea, dacă domeniul timp este extins până devine o valoare constantă, domeniul frecvență devine un impuls.

Semnalele discrete se comportă într-o manieră similară, dar există și câteva detalii. Prima problemă cu semnale discrete este aliasing-ul. Imaginați-vă că impulsul din (a) este comprimat de câteva ori mai mult decât este arătat. Spectrul de frecvență se extinde cu un factor egal, iar câteva dintre cocoașele din (b) sunt împinse la frecvențe dincolo de 0,5. Aliasing-ul rezultat rupe relația simplă de expansiune/contracție. Acest tip de aliasing se poate întâmpla și în domeniul timp. Imaginați-vă că spectrul de frecvență din (f) este comprimat mult mai greu, rezultând semnalul din domeniul timp din (e) extins în perioadele învecinate.

Figura 10-12 Compresie și extindere.
Comprimarea unui semnal într-un domeniu determină extinderea semnalului în celălalt domeniu și vice-versa.
Figurile (c) și (d) prezintă un semnal discret și spectrul său, respectiv. În (a) și (b), domeniul timp a fost comprimat, rezultând extinderea spectrului de frecvență. Figurile (e) și (f) arată procesul opus. Cum se arată în aceste figuri, semnalele discrete sunt extinse sau contractate prin extinderea sau contracția formei de undă continuă aferentă. Această formă de undă aferentă este apoi reeșantionată pentru a găsi noul semnal discret.

O a doua problemă este de a defini exact ce înseamnă să comprimați sau să extindeți un semnal discret. Așa cum este arătat în figura 10-12a, un semnal discret este comprimat prin comprimarea curbei continue aferente pe care se află eșantioanele și apoi reeșantionând noua curbă continuă pentru a găsi noul semnal discret. De asemenea, același proces pentru extinderea semnalelor discrete este prezentat în (e). Atunci când un semnal discret este comprimat, evenimentele din semnal (cum ar fi lățimea impulsului) se întâmplă pe un număr mai mic de eșantioane. De asemenea, evenimentele dintr-un semnal extins au loc peste un număr mai mare de eșantioane.

O modalitate echivalentă de a privi această procedură este aceea de a menține forma de undă continuă aferentă la fel, dar reeșantionată la o rată de eșantionare diferită. De exemplu, uitați-vă la figura 10-13a, o formă de undă Gaussiană discretă compusă din 50 de eșantioane. În (b), aceeași curbă de bază este reprezentată de 400 de eșantioane. Schimbarea dintre (a) și (b) poate fi văzută în două moduri: (1) rata de eșantionare a fost menținută constantă, dar forma de undă aferentă a fost extinsă de opt ori mai largă sau (2) forma de undă a fost menținută constantă, dar rata de eșantionare a crescut de opt ori.

Metodele de modificare a ratei de eșantionare în acest mod se numesc tehnici multirată. Dacă se adaugă mai multe eșantioane, se numește interpolare. Dacă se utilizează mai puține eșantioane pentru a reprezenta semnalul, se numește decimare. Capitolul 3 descrie modul în care sunt utilizate tehnicile multirată în ADC și CAD.

Iată problema: dacă avem un semnal discret arbitrar, cum știm care este curba continuă aferentă? Depinde dacă informația semnalului este codificată în domeniul timp sau în domeniul frecvență. Pentru semnale codate pe domeniul timp, dorim ca forma de undă continuă aferentă să fie o curbă netedă care trece prin toate eșantioanele. În cel mai simplu caz, am putea trasa linii drepte între puncte și apoi rotunji colțurile aspre. Următorul nivel de sofisticare este utilizarea unui algoritm de aproximare a curbei, cum ar fi o funcție spline sau o aproximare polinomială. Nu există un singur răspuns "corect" la această problemă. Această abordare se bazează pe minimizarea neregularităților în forma de undă din domeniul timp și ignoră complet domeniul frecvență.

Când un semnal are informația codificată în domeniul frecvență, ignorăm forma de undă din domeniul timp și ne concentrăm asupra spectrului de frecvențe. Așa cum am discutat în ultimul capitol, se poate obține o eșantionare mai fină a unui spectru de frecvență (mai multe eșantioane între frecvența 0 și 0,5) prin umplerea semnalului din domeniul timp cu zerouri înainte de a aplica DFT. Dualitatea permite acest lucru în direcția opusă. Dacă vrem o eșantionare mai fină în domeniul timp (interpolare), umplem spectrul de frecvență cu zerouri înainte de a aplica DFT inversă. Se spune că vrem să interpolam un semnal 50 de eșantioane dintr-un semnal de 400 eșantionare. Se procedează astfel: (1) Luați cele 50 de eșantioane și adăugați zerouri pentru a face ca semnalul să aibă lungimea de 64 de eșantioane. (2) Utilizați o DFT de 64 puncte pentru a găsi spectrul de frecvență, care va consta dintr-o parte reală de 33 de puncte și o parte imaginară de 33 de puncte. (3) Umpleți partea dreaptă a spectrului de frecvență (ambele părți reală și imaginară) cu 224 de zerouri pentru a face spectrul de frecvență lung de 257 de puncte. (4) Utilizați o DFT inversă de 512 puncte pentru a transforma datele înapoi în domeniul timp. Acest lucru va duce la un semnal de 512 eșantioane care este o versiune de înaltă rezoluție a semnalului cu 64 eșantioane. Primele 400 de eșantioane din acest semnal sunt o versiune interpolată a celor 50 de eșantioane originale.

Figura 10-13 Interpolarea prin umplerea domeniului frecvență.

Figurile (a) și (c) constau fiecare din 50 eșantioane. Ele sunt interpolate de 400 eșantioane prin umplerea domeniului frecvență cu zerouri, rezultând în (b) și (d), respectiv.
(Figurile (b) și (d) sunt semnale discrete, dar sunt desenate ca linii continue din cauza numărului mare de eșantioane).

Trăsătura principală a acestei tehnici este că semnalul interpolat este alcătuit din exact aceleași frecvențe ca semnalul original. Aceasta poate sau nu poate oferi o potrivire bună în domeniul timp. De exemplu, fig. 10-13 (a) și (b) prezintă un semnal de 50 de eșantioane care este interpolat într-un semnal de 400 eșantioane prin această metodă. Interpolarea este o potrivire perfectă între punctele originale, ca și cum ar fi fost folosită o rutină de potrivire a curbei. În comparație, (c) și (d) arată un alt exemplu în care domeniul timp este o încurcătură! Comportarea oscilatorie prezentată în (d) apare la fronturi sau alte discontinuități ale semnalului. Aceasta include, de asemenea, orice discontinuitate între eșantionul zero și N-1, deoarece domeniul timp este privit ca fiind circular. Această depășire (overshoot) la discontinuități este numită Efect Gibbs și este discutată în Capitolul 11. O altă tehnică de interpolare în domeniul frecvență este prezentată în Capitolul 3, adăugând zerouri între eșantioanele domeniului timp și filtrarea trece-jos.

Secțiunea următoare: Înmulțirea semnalelor (Modularea în amplitudine)