17.3 Filtre optime

Figura 17-7a ilustrează o problemă obișnuită de filtrare: încercarea de a extrage o formă de undă (în acest exemplu, un impuls exponențial) îngropată în zgomot aleator. După cum se arată în (b), această problemă nu este mai ușoară în domeniul frecvență. Semnalul are un spectru compus în principal din componente de joasă frecvență. În comparație, spectrul zgomotului este alb (aceeași amplitudine la toate frecvențele). Deoarece spectrele semnalului și zgomotului se suprapun, nu este clar modul în care cele două pot fi cel mai bine separate. De fapt, adevărata întrebare este cum să definiți ce înseamnă "cel mai bun". Vom analiza trei filtre, fiecare dintre ele fiind "cel mai bun" (optim) într-un mod diferit. Figura 17-8 prezintă nucleul filtrului și răspunsul în frecvență pentru fiecare dintre aceste filtre. Figura 17-9 prezintă rezultatul folosirii acestor filtre pe forma de undă de exemplu din figura 17-7a.

Filtrul medie mobilă este tema capitolului 15. După cum vă amintiți, fiecare punct de ieșire produs de filtru medie mobilă este media unui anumit număr de puncte din semnalul de intrare. Aceasta face kernelul filtrului un impuls dreptunghiular cu o amplitudine egală cu valoarea inversă a numărului de puncte din medie. Filtrul medie mobilă este optim în sensul că oferă răspunsul la treaptă cel mai rapid pas pentru o anumită reducere a zgomotului.

Figura 17-7 Exemplu de filtrare optimală.

În (a), un impuls exponențial îngropat în zgomot aleator. Spectrele de frecvență ale impulsului și zgomotului sunt arătate în (b). Deoarece semnalul și zgomotul se suprapun în ambele domenii timp și frecvență, cea mai bună modalitate de a le separa nu este evidentă.

Figura 17-8 Exemple de filtre optimale.

În (a), sunt arătate trei nuclee de filtru, fiecare fiind optimal în vreun sens. Răspunsurile în frecvență corespunzătoare sunt arătate în (b). Filtrul medie mobilă este destinat să aibă un impuls dreptunghiular pentru un nucleu de filtru. În comparație, nucleul filtrului matched arată ca semnalul de detectat. Filtrul Wiener este proiectat în domeniul frecvență, bazat pe valoarea realtivă a semnalului și zgomotului prezente la fiecare frecvență.

Filtrul matched a fost discutat anterior în capitolul 7. Așa cum este prezentat în Fig. 17-8a, nucleul filtrului matched este același ca semnalul țintă de detectat, cu excepția faptului că a fost inversat de la stânga la dreapta. Ideea din spatele filtrului matched este corelația, iar acest flip este necesar pentru a efectua corelația folosind convoluția. Amplitudinea fiecărui punct din semnalul de ieșire este o măsură a modului în care nucleul filtrului se potrivește cu secțiunea corespunzătoare a semnalului de intrare. Rețineți că ieșirea unui filtru matched nu arată neapărat ca semnalul de detectat. Acest lucru nu contează cu adevărat; dacă se folosește un filtru matched, forma semnalului țintă trebuie deja cunoscută. Filtrul matched este optim în sensul că partea superioară a vârfului este mai presus de zgomot decât poate fi obținut cu orice alt filtru liniar (vezi figura 17-9b).

Filtrul Wiener (numit după teoria de estimare optimă a lui Norbert Wiener) separă semnalele bazat pe spectrele lor de frecvență. Așa cum se arată în figura 17-7b, la unele frecvențe există mai mult semnal, în timp ce la altele există mai mult zgomot. Se pare logic ca frecvențele "cu mai mult semnal" să treacă prin filtru, în timp ce frecvențele "cu mai mult zgomot" ar trebui blocate. Filtrul Wiener adoptă această idee cu un pas mai departe; câștigul filtrului la fiecare frecvență este determinat de cantitatea relativă de semnal și zgomot la acea frecvență:

Ecuația 17-1 Filtrul Wiener.

Răspunsul în frecvență, reprezentat de H[f], este determinat de spectrele de frecvență ale zgomotului, N[f], și ale semnalului, S[f]. Numai magnitudinile sunt importante; toate fazele sunt zero.

Această relație este utilizată pentru a converti spectrele din figura 17-7b în răspunsul în frecvență al filtrului Wiener în figurile 17-8b. Filtrul Wiener este optim în sensul că maximizează raportul dintre puterea semnalului și puterea de zgomot (pe lungimea semnalului, nu la fiecare punct individual). Un nucleu de filtrare corespunzător este proiectat din răspunsul în frecvență Wiener folosind metoda personalizată.

Figura 17-9 Exemple de utilizare a trei filtre optimale.

Aceste semnale rezultă din filtrarea formei de undă din fig. 17-7, cu filtrele din fig. 17-8. Fiecare din aceste trei filtre este optimal în vreun sens. În (a), filtrul medie mobilă are răspuns cu frontul cel mai ascuțit pentru un nivel dat de reducere a zgomotului aleator. În (b), filtrul matched produce un vârf care este mai departe peste zgomotul rezidual care este produs de oricare alt filtru. În (c), filtrul Wiener optimizează raportul semnal-zgomot.

În timp ce ideile din spatele acestor filtre optime sunt matematic elegante, adesea nu reușesc în practică. Aceasta nu înseamnă că nu ar trebui folosite niciodată.

Ideea este că nu auziți cuvântul "optim" și nu mai gândiți. Să aruncăm o privire la mai multe motive pentru care s-ar putea să nu doriți să le folosiți.

În primul rând, diferența dintre semnalele din figura 17-9 este foarte neimpresionantă. De fapt, dacă nu vi s-au spus ce parametri au fost optimizați, probabil că nu ați putea să-i spuneți prin analizarea semnalelor. Acesta este, de obicei, cazul problemelor care implică spectre de frecvență suprapuse. Cantitatea mică de performanță suplimentară obținută de la un filtru optim nu este pusă în valoare de complexitatea crescută a programului, de efortul suplimentar de proiectare sau de timpul de execuție mai lung.

În al doilea rând: filtrele Wiener și matched sunt determinate complet de caracteristicile problemei. Alte filtre, cum ar fi windowed-sinc și medie mobilă, pot fi adaptate la preferințele dvs. Suporterii filtrului optimal ar susține că acest lucru poate doar reduce eficacitatea filtrului. Acest lucru este foarte discutabil. Rețineți că fiecare dintre aceste filtre este optim într-un anumit mod (adică "într-un anumit sens"). Acest lucru este rareori suficient pentru a susține că întreaga problemă a fost optimizată, mai ales dacă semnalele rezultate sunt interpretate de un observator uman. De exemplu, un inginer biomedical ar putea utiliza un filtru Wiener pentru a maximiza raportul semnal-zgomot într-o electro-cardiogramă. Dar, nu este evident că acest lucru optimizează și capacitatea unui medic de a detecta activitatea neregulată a inimii prin analizarea semnalului.

În al treilea rând: filtrul Wiener și filtrul matched trebuie realizate prin convoluție, ceea ce le face extrem de lent pentru a le executa. Chiar și cu îmbunătățirile de viteză discutate în capitolul următor (convoluție FFT), timpul de calcul poate fi excesiv de lung. În comparație, filtrele recursive (cum ar fi media mobilă sau altele prezentate în Capitolul 19) sunt mult mai rapide și pot oferi un nivel acceptabil de performanță.