În analiza numerică și funcțională, transformările wavelet discrete (DWT) se referă la transformările wavelet în care waveleturile sunt reprezentate de semnale discrete (eșantioane).
Primul DWT a fost conceput de matematicianul maghiar Alfred Haar . Pentru un semnal de intrare reprezentat de o matrice de 2n numere, transformata wavelet Haar grupează pur și simplu elementele cu 2 și însumează și diferă de ele. Gruparea sumelor se realizează recursiv pentru a forma următorul nivel de descompunere. Rezultatul este 2 n −1 diferență și 1 sumă totală.
Acest DWT simplu ilustrează proprietățile generale utile ale wavelets. În primul rând, transformarea se poate face în operațiuni. În al doilea rând, nu numai că descompune semnalul într-o aparență de benzi de frecvență (prin analizarea lui la diferite scări), dar reprezintă și domeniul temporal, adică momentele de apariție a anumitor frecvențe în semnal. Împreună, aceste proprietăți caracterizează transformarea rapidă wavelet, o posibilă alternativă la transformarea Fourier rapidă obișnuită . La acceptarea condiției de aleatorie a semnalului X , densitatea spectrală a amplitudinilor lui Y se calculează pe baza algoritmului Yates: matricea Y =matricea(± X ), este adevărată și matricea inversă X =matricea(± Y ) .
Cel mai comun set de transformări wavelet discrete a fost formulat de matematicianul belgian Ingrid Daubechies în 1988. Se bazează pe utilizarea relațiilor de recurență pentru a calcula eșantioane din ce în ce mai precise ale funcției wavelet-mamă dată implicit, cu dublarea rezoluției la trecerea la nivelul următor (scală). În lucrarea sa fundamentală, Daubechies derivă o familie de wavelets, prima dintre acestea fiind wavelet Haar. De atunci, interesul pentru această zonă a crescut rapid, ducând la crearea a numeroși descendenți ai familiei originale de wavelet Daubechies.
Alte forme de transformare wavelet discretă includ transformarea wavelet nedecimata (unde nu se efectuează decimarea semnalului), transformarea Newland (unde o bază de wavelet ortonormală este derivată din filtre de tip „top-hat” special construite în domeniul frecvenței). Transformările wavelet de pachete sunt, de asemenea, legate de DWT. O altă formă de DWT este transformarea wavelet complexă.
Transformarea wavelet discretă are multe aplicații în științele naturale, inginerie și matematică (inclusiv cele aplicate). DWT este utilizat pe scară largă în codificarea semnalelor, unde proprietățile de transformare sunt folosite pentru a reduce redundanța în reprezentarea semnalelor discrete, adesea ca prim pas în compresia datelor.
DWP-ul semnalului se obține prin aplicarea unui set de filtre. În primul rând, semnalul este trecut printr-un filtru trece-jos (pass-jos) cu un răspuns la impuls și se obține o convoluție :
În același timp, semnalul este descompus folosind un filtru de trecere înaltă . Rezultatul sunt coeficienți de detaliu (după filtrul trece-înalt) și coeficienți de aproximare (după filtrul trece-jos). Aceste două filtre sunt legate și sunt numite filtre în oglindă în cuadratură (QMF).
Deoarece jumătate din intervalul de frecvență al semnalului a fost filtrată, atunci, conform teoremei Kotelnikov , numărul semnalului poate fi micșorat de 2 ori:
Această extindere a înjumătățit rezoluția în timp din cauza decimării semnalului. Cu toate acestea, fiecare dintre semnalele rezultate reprezintă jumătate din lățimea de bandă de frecvență a semnalului original, astfel încât rezoluția frecvenței este dublată.
Folosind operatorul de rărire
sumele de mai sus pot fi scrise mai scurt:
Calcularea unei convoluții complete urmată de subțiere este o risipă de resurse de calcul.
Schema de ridicare este o optimizare bazată pe alternarea acestor două calcule.
Această descompunere poate fi repetată de mai multe ori pentru a crește și mai mult rezoluția frecvenței cu decimarea suplimentară a coeficienților după filtrarea trece-jos și trece-înalt. Acesta poate fi reprezentat ca un arbore binar, unde frunzele și nodurile corespund spațiilor cu localizare diferită în timp și frecvență. Acest arbore reprezintă structura bancului (pieptenelor) de filtre .
La fiecare nivel al diagramei de mai sus, semnalul este descompus în frecvențe joase și înalte. Datorită dublei decimare, lungimea semnalului trebuie să fie un multiplu de , unde este numărul de niveluri de descompunere.
De exemplu, pentru un semnal de 32 de eșantioane cu un interval de frecvență de la 0 la 3 niveluri, extinderea va oferi 4 ieșiri pe scări diferite:
Nivel | Frecvențele | Lungimea semnalului |
---|---|---|
3 | … | patru |
… | patru | |
2 | … | opt |
unu | … | 16 |
Un exemplu de transformare rapidă wavelet unidimensională, folosind wavelet Haar , pentru o serie de date inițiale de dimensiunea 2 N (numărul de etape de filtrare, respectiv, este N) în C#:
public static List < Double > DirectTransform ( List < Double > SourceList ) { if ( SourceList . Count == 1 ) return SourceList ; Listă < Double > RetVal = listă nouă < Double >(); List < Double > TmpArr = list new < Double >(); pentru ( int j = 0 ; j < SourceList . Count - 1 ; j += 2 ) { RetVal . Adăugați (( SourceList [ j ] - SourceList [ j + 1 ]) / 2.0 ); TmpArr . Adăugați (( SourceList [ j ] + SourceList [ j + 1 ]) / 2.0 ); } RetVal . AddRange ( Transformare directă ( TmpArr )); return RetVal ; }În mod similar, un exemplu de transformare wavelet inversă:
public static List < Double > InverseTransform ( List < Double > SourceList ) { if ( SourceList . Count == 1 ) return SourceList ; Listă < Double > RetVal = listă nouă < Double >(); Listă < Double > TmpPart = listă nouă < Double >(); for ( int i = SourceList . Count / 2 ; i < SourceList . Count ; i ++) TmpPart . Adăugați ( SourceList [ i ]); Listă < Double > SecondPart = InverseTransform ( TmpPart ); pentru ( int i = 0 ; i < SourceList . Count / 2 ; i ++) { RetVal . Adaugă ( SecondPart [ i ] + SourceList [ i ]); RetVal . Adaugă ( SecondPart [ i ] - SourceList [ i ]); } return RetVal ; }
La dezvoltarea noului standard JPEG-2000 , transformarea wavelet a fost aleasă pentru compresia imaginii. Transformarea wavelet în sine nu comprimă datele, dar permite ca imaginea de intrare să fie transformată în așa fel încât redundanța acesteia să poată fi redusă fără o deteriorare vizibilă a calității imaginii.
de compresie | Metode|||||||
---|---|---|---|---|---|---|---|
Teorie |
| ||||||
Fara pierderi |
| ||||||
Audio |
| ||||||
Imagini |
| ||||||
Video |
|