〰️ Transformata falkowa — Haar i Daubechies
Rozłóż sygnał dyskretną transformatą falkową (DWT). Filtry Haara i Daubechies-4 dzielą sygnał na współczynniki aproksymacji i detalu. Zobacz analizę wielorozdzielczą na skalogramie.
Jak to działa
Dyskretna transformata falkowa (DWT) stosuje do sygnału parę filtrów — dolnoprzepustowy filtr skalujący h oraz górnoprzepustowy filtr falkowy g — a następnie próbkuje w dół z współczynnikiem 2. Każdy poziom dzieli poprzednią aproksymację na grubszą aproksymację (cA) i pasmo detalu (cD). To szybki algorytm piramidalny Mallata.
Skalogram wizualizuje amplitudę współczynników falkowych jako mapę cieplną w funkcji czasu i skali (poziomu). Symulator uruchamia następnie odpowiadający bank syntezy — powyższą odwrotną DWT, będącą sprzężeniem etapu analizy, ponieważ Haar i Daubechies są ortogonalnymi bankami filtrów z g[k] = (−1)ᵏ·h[Lf−1−k] — i rysuje rekonstrukcję (bursztynową) na tle oryginału (niebieskiego). Bez progowania obie krzywe pokrywają się, a odczyt „Błąd rekonstrukcji (wzgl. L2)” pozostaje na poziomie precyzji maszynowej, rzędu 1e-16. Podnieś suwak Próg detalu, a małe współczynniki detalu zostaną wyzerowane: błąd rośnie, bursztynowa krzywa odrywa się od niebieskiej i obserwujesz kompresję/odszumianie falkowe w działaniu.
Najczęściej zadawane pytania
Czym jest dyskretna transformata falkowa?
Dyskretna transformata falkowa (DWT) rozkłada sygnał na współczynniki aproksymacji i detalu na wielu poziomach rozdzielczości przy użyciu funkcji skalującej i falkowej.
Jak działa falka Haara?
Falka Haara wykorzystuje prostą parę filtrów: uśredniający (dolnoprzepustowy) i różnicujący (górnoprzepustowy). To najprostsza falka ortogonalna, dzieląca sygnał na zgrubne aproksymacje i drobne detale.
Czym są falki Daubechies?
Falki Daubechies (db2, db4 itd.) to ortogonalne falki o zwartym nośniku i znikających momentach. Zapewniają gładszy rozkład niż falka Haara, kosztem niewielkiego przesunięcia fazowego.
Czym jest analiza wielorozdzielcza?
Analiza wielorozdzielcza (MRA) rozkłada sygnał na zagnieżdżone podprzestrzenie o różnych skalach, umożliwiając jednoczesną lokalizację w czasie i częstotliwości — czego transformata Fouriera nie potrafi zapewnić.
Czym jest skalogram?
Skalogram to dwuwymiarowy wykres energii współczynników falkowych w funkcji czasu i skali. Jasne obszary wskazują duże współczynniki falkowe, ujawniając zlokalizowaną w czasie treść częstotliwościową.
Jaka jest różnica między DWT a STFT?
Krótkoczasowa transformata Fouriera (STFT) używa stałego okna, dając jednolitą rozdzielczość czasowo-częstotliwościową. DWT wykorzystuje falki o zmiennej szerokości: wysoka częstotliwość → wąskie okno czasowe, niska częstotliwość → szerokie okno.
Czym są znikające momenty?
Falka o N znikających momentach jest ortogonalna do wielomianów stopnia do N-1. Więcej znikających momentów oznacza gładsze falki, skuteczniej kompresujące gładkie sygnały.
Jak DWT jest wykorzystywana w JPEG 2000?
JPEG 2000 wykorzystuje dwuortogonalną falkę Cohena-Daubechies-Feauveau 9/7 (CDF 9/7) do kompresji stratnej oraz falkę 5/3 do kompresji bezstratnej, zastępując DCT stosowaną w JPEG.
Czym jest progowanie współczynników?
Progowanie zeruje małe współczynniki detalu falkowego. Progowanie twarde zeruje wszystkie współczynniki poniżej progu; progowanie miękkie dodatkowo zmniejsza duże współczynniki. Stosowane do odszumiania.
Czy DWT można dokładnie odwrócić?
Tak. Odwrotna DWT (IDWT) dokładnie odtwarza oryginalny sygnał ze współczynników aproksymacji i detalu przy użyciu sprzężonych filtrów zwierciadlanych, o ile żaden współczynnik nie został odrzucony ani skwantowany.
O tej symulacji
Ta symulacja uruchamia algorytm piramidalny Mallata na syntetycznym sygnale o 256 próbkach, wielokrotnie splatając go z parą filtrów dolno-/górnoprzepustowych i próbkując w dół z współczynnikiem 2, aby poziom po poziomie wydobyć współczynniki aproksymacji i detalu. Przełączanie między bankami filtrów Haara i Daubechies-4 lub między sygnałami sinusoidalnym, ćwierkającym, skokowym i zaszumionym bezpośrednio pokazuje, jak gładkość filtru i struktura sygnału kształtują powstały skalogram.
🔬 Co pokazuje
Oryginalny przebieg (niebieski) z naniesioną na niego rekonstrukcją odwrotnej DWT (bursztynową), powyżej kolorowego skalogramu, którego wiersze to amplitudy współczynników detalu na każdym poziomie rozkładu — lub, po przełączeniu widoku, ułożone w stos wykresy liniowe aproksymacji i każdego pasma detalu osobno.
🎮 Jak korzystać
Wybierz falkę Haara lub Daubechies-4 oraz typ sygnału z list rozwijanych, przeciągnij suwaki liczby poziomów rozkładu i częstotliwości sygnału, podnieś Próg detalu, aby odrzucić małe współczynniki i obserwować rosnący błąd rekonstrukcji, kliknij Przebuduj, aby przeliczyć, i naciśnij Przełącz widok (lub klawisz I), aby przełączać się między skalogramem a wyświetlaniem wierszy współczynników.
💡 Czy wiesz, że?
W odróżnieniu od transformaty Fouriera, która na każdej częstotliwości używa tego samego, stałego okna, niejawne okno transformaty falkowej automatycznie zwęża się przy wysokich częstotliwościach i poszerza przy niskich — dlatego właśnie sygnał typu ćwierk (chirp, o rosnącej w czasie częstotliwości) rozświetla różne poziomy skalogramu w różnych momentach, zamiast rozmazywać się na całej osi czasu.
Najczęściej zadawane pytania
Dlaczego przełączenie na sygnał skokowy rozświetla tak wiele poziomów detalu naraz?
Ostra nieciągłość zawiera energię w bardzo szerokim zakresie częstotliwości, więc filtr górnoprzepustowy g wydobywa istotne współczynniki detalu dokładnie wokół punktu skoku na każdym poziomie rozkładu — dlatego właśnie skalogram pokazuje jasny pionowy pas w miejscu skoku, przecinający wszystkie wiersze.
Co tak naprawdę zmienia wybór między Haar a Daubechies-4?
Dwuwspółczynnikowy filtr Haara to po prostu para uśredniająco-różnicująca, więc reaguje na gwałtowne zmiany natychmiast, ale daje „blokowe” współczynniki detalu; czterowspółczynnikowy filtr Daubechies-4 ma więcej znikających momentów, dając gładsze, bardziej rozłożone współczynniki dla tego samego sygnału — porównaj oba na sygnale sinusoidalnym, aby zobaczyć wizualną różnicę w gładkości współczynników.
Dlaczego „Energia (rekonstr.)” zgadza się z „Energią (oryg.)” w panelu statystyk?
„Energia (rekonstr.)” to energia sygnału, który faktycznie wychodzi z transformaty odwrotnej: symulator uruchamia bank syntezy (sprzężenie etapu analizy, dokładne, ponieważ Haar i Daubechies są ortogonalnymi bankami filtrów) i mierzy zrekonstruowane próbki. Przy progu detalu równym 0 ta rekonstrukcja jest dokładna, więc energie się zgadzają, a odczyt „Błąd rekonstrukcji (wzgl. L2)” pozostaje na poziomie precyzji maszynowej — rzędu 1e-16. Twierdzenie Parsevala jest powodem, dla którego współczynniki niosą tę samą energię co sygnał; odczyt jest tego dowodem, a nie założeniem.
Co suwak „Próg detalu” robi z rekonstrukcją?
Twardo progowuje współczynniki detalu: każdy współczynnik mniejszy niż dany procent największego zostaje wyzerowany przed uruchomieniem transformaty odwrotnej. Przy 0% nic nie zostaje odrzucone, a rekonstrukcja jest bezstratna (błąd ≈ 1e-16). Podnieś próg, a zaczniesz tracić informacje — wskaźnik „Wyzerowane współczynniki detalu” rośnie, błąd rekonstrukcji zwiększa się od 1e-16 do kilku procent i więcej, a bursztynowa krzywa rekonstrukcji wyraźnie odrywa się od niebieskiego oryginału. Ten kompromis — zachowanie kilku dużych współczynników i odrzucenie wielu małych — to dokładnie sposób działania kompresji i odszumiania falkowego.
Dlaczego zwiększanie liczby poziomów rozkładu przestaje mieć efekt po pewnym momencie?
Każdy poziom zmniejsza o połowę długość aproksymacji poprzez próbkowanie w dół, a pętla w kodzie zatrzymuje się, gdy pozostała aproksymacja jest zbyt krótka do filtrowania — więc powyżej mniej więcej log₂(256)=8 poziomów nie ma już nic do rozłożenia, dlatego suwak poziomów jest ograniczony znacznie poniżej tej wartości.
Dlaczego zaszumiony sygnał sinusoidalny wciąż pokazuje wyraźny wzorzec w wierszach skalogramu o niższym poziomie?
Losowy szum jest rozłożony w przybliżeniu równomiernie na wszystkich częstotliwościach i pojawia się głównie na najdrobniejszym poziomie detalu (najwyższy wiersz, najkrótsza skala), podczas gdy prawdziwa okresowa struktura fali sinusoidalnej koncentruje energię na grubszych poziomach odpowiadających jej częstotliwości — to rozdzielenie według skali jest tą samą zasadą, którą wykorzystuje odszumianie falkowe.