Transformacja falkowa (wavelet): definicja, warianty i zastosowania

Transformacja falkowa (wavelet): praktyczne wprowadzenie, warianty (dyskretna, dyadyjna) i zastosowania w redukcji szumów, kompresji oraz analizie sygnałów.

Autor: Leandro Alegsa

Transformacja falowa jest czasowo-częstotliwościową reprezentacją sygnału. Umożliwia analizę sygnałów w różnych skalach (częstotliwościach) i pozycjach czasowych; stosuje się ją m.in. do redukcji szumów, ekstrakcji cech, wykrywania krawędzi oraz kompresji sygnału i obrazu.

Definicja — ciągła transformacja falowa (CWT)

Transformacja falowa sygnału ciągłego zwykle zapisuje się w postaci skalarnej odwzorowującej sygnał na przestrzeń parametrów (skala, przesunięcie). Formalnie:

[ W ψ f ] ( a , b ) = 1 a ∫ - ∞ ∞ f ( t ) ψ ∗ ( t - b a ) d t {\i1}styk stylistyczny \i0}left[W_psi \i0}fright](a),b)= {frac {1} {sqrt {a} {\i1}int {\i1}infty {\i1}{\i1}infty {\i1}{\i1}psi {\i1} {\i1}left {\i1}{\i1}{\displaystyle \left[W_{\psi }f\right](a,b)={\frac {1}{\sqrt {a}}}\int _{-\infty }^{\infty }{f(t)\psi ^{*}\left({\frac {t-b}{a}}\right)}dt\,}...{\i0}

W powyższym wzorze:

  • ψ {\i1}psi\psi jest tzw. falą macierzystą (mother wavelet),
  • Styl aa oznacza dylatację (skalowanie) falki — odwracalną zmianę rozciągłości czasowej (skala/frekfencja),
  • b{\displaystyle b} oznacza przesunięcie czasowe fali (pozycja w czasie),
  • {\i1}Symbol dysplastylu*{\displaystyle *} {\i1}oznacza złożony koniugat*.

Ciągła transformacja falowa daje bogatą reprezentację czasowo‑częstotliwościową, lecz w praktyce często stosuje się dyskretną wersję (DWT), która jest efektywnie obliczalna i umożliwia odwzorowanie z zachowaniem informacji o skali.

Dyskretna transformacja falkowa (DWT) — parametry dyskretyzacji

Jeśli wybierzemy skalę i przesunięcie z siatki dyskretnej, np.

a = a 0 m {\i1}displaystyle a={a_{0}}^{m}} {\displaystyle a={a_{0}}^{m}} i b = a 0 m k T {\i1}displaystyle b={a_{0}}^{m}kT} {\displaystyle b={a_{0}}^{m}kT},

gdzie a_{0} > 1 {\displaystyle a_{0}>1}, T > 0 i m,k są liczbami całkowitymi, otrzymujemy dyskretną transformację falkową sygnału ciągłego. Najczęściej wybieranym przypadkiem jest siatka dyadyczna (a0 = 2).

W przypadku dyadycznym (a = 2^m, b = 2^m k T):

[ W ψ f ] ( m , k ) = 1 2 m ∫ - ∞ ∞ f ( t ) ψ ∗ ( 2 - m t - k T ) d t {\i1}displaystyle \i0}left[W_psi \i0}fright](m),k)=frac {\i1}{\i1}sqrt {\i1}{\i1}sqrt {\i0}COPY0\i0}int {\i1}-infty {\i1}{\i1}{\i1}f(t)\i1}psi {\i1}{\i1}left(2^(m)\i0}t-kT\i0}right){\i0}dt,}{\displaystyle \left[W_{\psi }f\right](m,k)={\frac {1}{\sqrt {2^{m}}}}\int _{-\infty }^{\infty }{f(t)\psi ^{*}\left(2^{-m}t-kT\right)}dt\,}

  • m mto skala (poziom rozdzielczości),
  • kk oznacza przesunięcie/indeks czasowy na danej skali,
  • T{\displaystyle T} jest stałą krokową zależną od wyboru fali macierzystej.

Transformację dyadyczną można zapisać także przez splot sygnału z odpowiednimi filtrami:

[ W ψ f ] ( m , k ) = ∫ - ∞ ∞ f ( t ) h m ( 2 m k T - t ) d t {\i1}...{\i0}(m,k)=int _{-infty \i0} {\i1}{f(t)h_{m} {\i1}left(2^(m)\i0}kT-t-t}right)}dt\i0} {\displaystyle \left[W_{\psi }f\right](m,k)=\int _{-\infty }^{\infty }{f(t)h_{m}\left(2^{m}kT-t\right)}dt\,},

gdzie h m {\i1}displaystyle h_{m}{\displaystyle h_{m}} jest charakterystyką impulsową filtra związaną z falą macierzystą, a ψ m ∗ {\i1} {\i1}displaystyle {\i1}^{\i1}{\displaystyle {\psi _{m}}^{*}} reprezentuje odpowiednio skalowaną i zespoloną falę macierzystą dla danej skali m.

Dyskretna transformacja falkowa dla sygnału dyskretnego

W praktycznych zastosowaniach sygnał jest często dyskretny (próbkowany). Dyskretna transformacja falkowa (DWT) dla sygnału x[n] na siatce dyadycznej realizowana jest przez kaskadę filtrów (filtr dolnoprzepustowy — aproksymacja oraz filtr górnoprzepustowy — detale) z następującymi krokami:

  • konwolucja z filtrami analizy (h — wysoka część, g — niska część),
  • downsampling (podpróbkowanie) o 2 (dla dyadycznej DWT),
  • powtórzenie na sygnale aproksymacyjnym, co daje wielopoziomowy rozkład (piramida Mallata).

Formalnie współczynniki aproksymacji i detali na poziomie j można zapisać jako:

  • cA_j[k] = sum_n g[n - 2k] cA_{j-1}[n]
  • cD_j[k] = sum_n h[n - 2k] cA_{j-1}[n]

gdzie cA_0 to oryginalny sygnał x[n]. Odwrotna transformacja (rekonstrukcja) korzysta z filtrów syntezy i upsamplingu; przy poprawnym doborze filtrów osiąga się tzw. perfect reconstruction (dokładną rekonstrukcję sygnału).

Właściwości falki (wavelet) — warunki i cechy

  • Warunek dopuszczalności (admissibility): konieczny do tego, aby transformacja była odwracalna. Dla fali ψ wymaga się, aby stała C_ψ była skończona (zwykle związane z brakiem składowej stałej, czyli ∫ ψ(t) dt = 0).
  • Zero średniej: falka musi mieć zerową średnią — dlatego wykrywa zmiany i przejścia, nie reaguje na składową stałą.
  • Momenty zanikania (vanishing moments): jeśli ∫ t^k ψ(t) dt = 0 dla k = 0,1,...,N-1, to falka jest niewrażliwa na wielomiany stopnia < N-1, co przekłada się na lepszą kompresję i wykrywanie anomalii.
  • Wsparcie (support) i regularność: falki mogą mieć ograniczone wsparcie (compact support) — to ważne dla implementacji w czasie rzeczywistym; ich regularność (gładkość) wpływa na jakość aproksymacji.
  • Ortonormalność i biortogonalność: w DWT używane są często bazy ortonormalne (np. fale Daubechies) lub biortogonalne (dające oddzielne filtry analizy i syntezy).

Analiza wielorozdzielczości i banki filtrów

Multiresolution Analysis (MRA) to podstawowy formalizm: sygnał jest dekomponowany na zbiór przestrzeni V_j (aproksymacja) i W_j (detale), gdzie przejście między poziomami obsługują funkcje skalujące φ (scaling function) i fale ψ. Implementacyjnie MRA realizowana jest przez bank filtrów (analiza i synteza), a operacja przebiega szybko dzięki algorytmowi Mallata i schematowi liftingowemu (lifting scheme), który pozwala uzyskać efektywną i numerycznie stabilną implementację DWT.

Warianty transformacji falkowej

  • Ciągła (CWT) — pełna, redundatna reprezentacja czasowo‑częstotliwościowa; użyteczna do wizualizacji (skalogramy) i wykrywania sygnałów okresowych.
  • Dyskretna (DWT) — efektywna obliczeniowo, z hierarchią skal; stosowana w kompresji i filtracji.
  • Stacjonarna / Undecimated DWT (UDWT) — bez podpróbkowania, daje translacyjnie niezmienniczą reprezentację (przydatne w denoisingu), kosztem redundancji.
  • Biortogonalna, ortogonalna, kompleksowa falki — różne właściwości dotyczące rekonstrukcji, przesunięć fazy i reprezentacji zespolonej (np. Dual-Tree Complex Wavelet Transform).
  • Wavelet packets — rozszerzenie DWT, gdzie dekompozycję wykonuje się zarówno na gałęziach niskich, jak i wysokich częstotliwości, co daje bardziej elastyczne spektrum podziału częstotliwości.
  • Lifting scheme — metoda konstrukcji filtrów i szybkiej bezpośredniej implementacji DWT, umożliwia generowanie in-place inwersji i adaptacyjnych algorytmów.

Zastosowania praktyczne

Transformacje falkowe znalazły szerokie zastosowanie w nauce i inżynierii, m.in.:

  • Redukcja szumów (denoising): metoda progowania (thresholding) współczynników falkowych — miękkie lub twarde progowanie — pozwala skutecznie usuwać szumy przy zachowaniu krawędzi.
  • Kompresja obrazów: standard JPEG 2000 wykorzystuje DWT (biortogonalne fale) zamiast DCT, co poprawia kompresję przy zachowaniu jakości i daje lepszą skalowalność.
  • Analiza sygnałów biomedycznych: wykrywanie arytmii w sygnale ECG, analiza EEG, ekstrakcja cech dla diagnostyki.
  • Geofizyka i sejsmika: separacja sygnałów i szumów, analiza wieloskalowa sygnałów sejsmicznych.
  • Przetwarzanie obrazów i rozpoznawanie wzorców: wykrywanie krawędzi, analiza tekstur, kompresja i fuzja obrazów.
  • Analiza czasu‑częstotliwościowa w elektronice i mechanice: wykrywanie przemijających zdarzeń, diagnoza maszyn i analiza drgań.

Rekonstrukcja i praktyka implementacyjna

W praktyce wybór falki (np. Daubechies, Symlets, Coiflets, Haar) zależy od wymagań: długość filtra, liczba momentów zanikania, gładkość i symetrię. Implementacje korzystają z algorytmu Mallata lub schematu liftingowego; ważne jest zapewnienie perfect reconstruction (dokładnej rekonstrukcji) i stabilności numerycznej.

Podsumowanie

Transformacja falowa daje elastyczne narzędzie analizy sygnałów w wielu skalach i w czasie. Dzięki właściwościom takim jak lokalizacja czasowo‑częstotliwościowa, możliwości uzyskania rzadkiej reprezentacji oraz efektywnym algorytmom (DWT, lifting), fale znalazły zastosowanie w denoisingu, kompresji, analizie biomedycznej, przemysłowej diagnostyce i obrazowaniu. W praktyce wybór konkretnego wariantu i falki jest kompromisem między redundancją, dokładnością rekonstrukcji i złożonością obliczeniową.

Ciągła falowa transformacja sygnału rozkładu częstotliwości. Używany symlet z 5 zanikającymi momentami.Zoom
Ciągła falowa transformacja sygnału rozkładu częstotliwości. Używany symlet z 5 zanikającymi momentami.

Pytania i odpowiedzi

P: Co to jest transformata falkowa?


O: Transformacja falkowa to czasowo-częstotliwościowa reprezentacja sygnału, stosowana do redukcji szumów, ekstrakcji cech lub kompresji sygnału.

P: Jak definiuje się transformatę falkową sygnałów ciągłych?


O: Transformacja falkowa sygnałów ciągłych jest definiowana jako całka po wszystkich wartościach funkcji pomnożona przez falkę macierzystą, gdzie parametry "a" i "b" oznaczają odpowiednio dylatację i przesunięcie w czasie.

P: Co to są dyadyczne dyskretne transformaty falkowe?


O: Dyadyczna dyskretna transformata falkowa to dyskretna wersja zwykłej dyskretnej transformaty falkowej o skali częstotliwości "m", skali czasu "k" i stałej "T". Można je zapisać jako całkę po wszystkich wartościach funkcji pomnożoną przez filtr o charakterystyce impulsowej, który jest identyczny z falą macierzystą dla danego m.

P: Co oznacza w tym kontekście "fala macierzysta"?


O: W tym kontekście "falka macierzysta" oznacza funkcje, które w połączeniu z innymi funkcjami tworzą podstawę do obliczenia określonego rodzaju transformacji (w tym przypadku transformacji falkowej).

P: Jak oblicza się dyskretne falki dyadyczne?


O: Dyskretne falki dyadyczne oblicza się za pomocą całki nad wszystkimi wartościami funkcji pomnożonej przez filtr charakterystyki impulsowej, który jest identyczny z falką macierzystą dla danego m. Dodatkowo, jako parametry wymagają skali częstotliwości m, skali czasu k i stałej T.

P: Co oznaczają "a" i "b" przy definiowaniu falek ciągłych?


O: Przy definiowaniu falek ciągłych 'a' oznacza dylatację, a 'b' przesunięcie w czasie.


Przeszukaj encyklopedię
AlegsaOnline.com - 2020 / 2025 - License CC3