31.1 Real DFT

Toți cei patru membri ai familiei de transformate Fourier (DFT, DTFT, transformata Fourier și seria Fourier) pot fi efectuate fie cu numere reale, fie cu numere complexe. Deoarece DSP este preocupat în principal de DFT, îl vom folosi ca exemplu. Înainte de a sări în matematica complexă, să trecem în revistă DFT-ul real, cu un accent special pe lucrurile incomode cu matematica.

În capitolul 8 am definit versiunea reală a transformatei Fourier discrete conform ecuațiilor:

ECUAȚIA 31-1 Real DFT.

Aceasta este transformata directă, calculând domeniul frecvență din domeniul timp. În ciuda utilizării numelor: partea reală și partea imaginară, aceste ecuații implică doar numere obișnuite. Indicele de frecvență, k, se execută de la 0 la N/2. Acestea sunt aceleași ecuații date în Ec. 8-4, cu excepția faptului că termenul 2/N a fost inclus în transformata directă.

În cuvinte, un semnal din domeniu timp de N eșantioane, x[n], este descompus într-un set de N/2 +1 unde cosinus și N/2 +1 unde sinus, cu frecvențe date de index, k. Amplitudinile undelor cosinus sunt conținute în ReX[k], în timp ce amplitudinile undelor sinus sunt conținute în ImX[k]. Aceste ecuații funcționează corelând unda cosinus sau sinus respectivă cu semnalul din domeniul timp. În ciuda utilizării numelor: parte reală și parte imaginară, nu există numere complexe în aceste ecuații. Nu există un j oriunde la vedere! Am inclus, de asemenea, factorul de normalizare, 2/N, în aceste ecuații. Nu uitați, acest lucru poate fi așezat în fața ecuației de sinteză sau de analiză sau poate fi tratat ca o etapă separată (așa cum este descris în Ec. 8-3). Aceste ecuații ar trebui să fie foarte familiare din capitolele anterioare. Dacă nu sunt așa, întoarceți-vă și gândiți-vă la aceste concepte înainte de a continua. Dacă nu înțelegeți DFT reală, niciodată nu veți fi capabili să înțelegeți DFT complexă.

Chiar dacă DFT reală folosește doar numere reale, substituția permite reprezentarea domeniului frecvență folosind numere complexe. După cum sugerează numele șirurilor, ReX[k] devine partea reală a spectrului de frecvență complex, iar ImX[kJ devine partea imaginară. Cu alte cuvinte, plasăm un j cu fiecare valoare în partea imaginară și adăugăm rezultatul la partea reală. Dar, nu faceți greșeala de a crede că aceasta este „DFT complexă”. Aceasta nu este decât DFT reală cu substituţie complexă.

În timp ce DFT reală este adecvată pentru multe aplicații în știință și inginerie, este matematic incomodă din trei aspecte. Întâi, poate profita de numere complexe doar prin utilizarea substituției. Acest lucru îi face pe matematicieni neconfortabili; ei vor să spună: „acesta este egal cu aceea”, nu pur și simplu: „acesta reprezintă aceea”. De exemplu, imaginați-ne că ni se oferă afirmația matematică: A este egal cu B. Știm imediat consecințe nenumărate: 5A = 5B, 1+A = 1+B, A/x = B/x, etc. Acum să presupunem că avem în vedere afirmația: A reprezintă B. Fără informații suplimentare, nu știm absolut nimic! Când lucrurile sunt egale, avem acces la patru mii de ani de matematică. Când lucrurile se reprezintă doar reciproc, trebuie să pornim de la zero cu noi definiții. De exemplu, când sinusoidele sunt reprezentate de numere complexe, permitem adunarea și scăderea, dar interzicem înmulțirea și divizarea.

Al doilea lucru gestionat slab de transformata Fourier reală este porțiunea de frecvență negativă a spectrului. După cum vă amintiți din capitolul 10, undele sinus și cosinus pot fi descrise ca având o frecvență pozitivă sau o frecvență negativă. Deoarece cele două vizualizări sunt identice, transformata Fourier reală ignoră frecvențele negative. Dar, există aplicații în care frecvențele negative sunt importante. Aceasta se produce atunci când componentele de frecvență negativă sunt obligate să se deplaseze în porțiunea de frecvență pozitivă a spectrului. Fantomele iau formă umană, ca să zic așa. De exemplu, acest lucru se întâmplă în aliasing, convoluție circulară și modularea amplitudinii. Deoarece transformata Fourier reală nu folosește frecvențe negative, capacitatea sa de a face față acestor situații este foarte limitată.

A treia noastră plângere este manevrarea specială a ReX [0] și ReX [N/2], primul și ultimul punct din spectrul de frecvență. Să presupunem că începem cu un semnal cu N puncte, x[n]. Aplicarea DFT oferă spectrul de frecvență conținut în ReX[k] și ImX[k], unde k rulează de la 0 la N/2. Dar, acestea nu sunt amplitudinile necesare reconstruirii formei de undă din domeniul timp; eșantioanele ReX[0] și ReX[N/2] trebuie mai întâi împărțite la doi. (Consultați Ecuația 8-3 pentru a vă reîmprospăta memoria.) Aceasta se realizează cu ușurință în programele de calculator, dar incomod să fie abordată în ecuații.

Transformarea Fourier complexă este o soluție elegantă la aceste probleme. Este firesc ca numerele complexe și frecvențele negative să meargă mână în mână. Să vedem cum funcționează.