new transformata falkowahome.agh.edu.pl/~jsw/oso/ft.pdf · 2015. 1. 14. · transformata fouriera...
Post on 21-Oct-2020
10 Views
Preview:
TRANSCRIPT
-
TRANSFORMATA FALKOWA
Joanna Świebocka-Więk
-
Plan prezentacji 1. Fala a falka czyli porównanie transformaty Fouriera i falkowej
2. Funkcja falkowa a funkcja skalująca
3. Ciągła transformata falkowa
1. Skala
2. Współczynnik przesunięcia
3. Algorytm CWT
4. Rodziny funkcji falkowych
5. Dyskretna transformata falkowa
1. Subsampling
2. Wielorozdzielczość
3. Algorytm Mallata
6. Wavelet Toolbox Matlab
7. Usuwanie szumu, kompresja obrazu
8. Zastosowanie
9. Bibliografia
-
1. Fala a falka FALA
• stała amplituda • nieskończona energia • analiza Fouriera (falowa,
harmoniczna) – sygnał przedstawiany przy użyciu
funkcji sinus i cosinus (współczynniki Fouriera reprezentują wkład funkcji sinus i cosinus do danej częstotliwości)
– analiza częstotliwościowa stacjonarnych (np. okresowych szeregów czasowych
– użyteczne w analizie globalnych cech sygnału
FALKA • przebiegi ciągłe oscylacyjne o różnych
czasach trwania i o zróżnicowanym widmie
• skończona energia skupiona wokół jednego punktu
• analiza falkowa
– dekompozycja sygnału falkami otrzymanymi przez translację i dylatację falki podstawowej (mother wavelet)
– analiza czasowo-częstotliwościowa niestacjonarnych szeregów czasowych
– użyteczna w analizie globalnych i lokalnych cech sygnału
-
TRANSFORMATA FOURIERA
przechodząc z układu czas-wartość do układu częstotliwość-wartość tracimy informację o czasie wystąpienia danego zdarzenia.
TRANSFORMATA FALKOWA
pozwala na przejście z układu czas-wartość do układu czas-skala(częstotliwość), co umożliwia analizę zmiany częstotliwości w dziedzinie czasu
Porównanie transformaty falkowej i Fouriera
-
SYGNAŁ 1 SYGNAŁ 2
t
t t
f f
t
FT FT
CWT CWT
f f
Porównanie transformaty falkowej i Fouriera
-
• FOURIER: Analiza częstotliwościowa pozwala stwierdzić, że badany sygnał składa się z czterech częstotliwości harmonicznych (cztery prążki) jednak nie dostarcza żadnych informacji na temat tego jak poszczególne harmoniczne zmieniają się w czasie.
• FALKI: Początkowo sygnał znajduje się w pewnym paśmie częstotliwościowym, a następnie czterokrotnie zmienia to pasmo. Lokalizacja częstotliwościowa sygnału jest gorsza niż w przypadku transformaty Fouriera, ale za to dostępna jest informacja o zmienności częstotliwości badanego sygnału w czasie.
Porównanie transformaty falkowej i Fouriera
-
Inny przykład…
CO WIĘCEJ…
rozdzielczość czasowa transformacji falkowej może się
zmieniać ponieważ jest ona zależna od częstotliwości falki -
lepsza rozdzielczość dla wyższych częstotliwości.
Porównanie transformaty falkowej i Fouriera
-
• Zarówno transformata Fouriera jak i falkowa opierają się na wykorzystaniu iloczynu skalarnego sygnału s(t) i pozostałej części - "jądra przekształcenia”, będącego główną różnica między tymi przekształceniami
• Wykorzystanie falek jako jądra przekształcenia, pozwala na przedstawienie każdej funkcji ciągłej z określoną dokładnością wyrażoną współczynnikami falkowymi
• Nieskończenie wiele funkcji, nieskończenie wiele transformacji falkowych (wybór falki zależy od potrzeb analizy, od tego jakie kształty rytmu są poszukiwane w zapisie)
Porównanie transformaty falkowej i Fouriera
-
Wybór transformaty
• W przypadku gdy obiektem zainteresowań są przebiegi niegasnące lub trwające długo w porównaniu z oknem analizy, gdy jest nieistotna lokalizacja czasowa przebiegów przejściowych, najlepszą bazą będzie zbiór sinusoid a więc użycie transformacji Fouriera.
• Jeżeli badany sygnał jest zasadniczo niestacjonarny , bogaty w przebiegi przejściowe a przedmiotem analizy ma być lokalizacja czasowa przebiegów przejściowych o określonych częstotliwościach bazą do analizy będą falki.
-
Czemu „zasadniczo”?
Pomimo licznych zalet transformaty falkowej, nigdy nie uzyska się w jej wyniku precyzyjnej informacji np. o częstotliwościach zawartych w sygnale („pomiędzy piątą a siódmą sekundą występowała częstotliwość 100Hz”).
Dzieje się tak dlatego funkcja falkowa (konkretnie jej „jądro przekształcenia”) nie reprezentuje jednej częstotliwości lecz przeważnie przedział częstotliwości (pseudoczęstotliwość), z reguły jednak istotniejsza jest informacja o chwili zmiany częstotliwości a nie o jej precyzyjnej wartości.
-
2. Funkcja falkowa a funkcja skalująca
Pełen zbiór falek użytych do dekompozycji składa się z przebiegu podstawowego oraz pozostałych przebiegów, które są jego kopiami, przesuniętymi w czasie oraz rozciągniętymi lub ściśniętymi na osi czasu tworzących rodzinę falek.
W analizie wielorozdzielczej wymagany jest zbiór dwóch funkcji:
• funkcji falkowej zwanej falką MATKĄ
• funkcji skalującej - zwaną CÓRKĄ
Funkcja skalująca jest przypisana tylko i wyłącznie jednej funkcji falkowej (dwie różne falki nie mogą mieć tej samej funkcji skalującej).
-
Po co jest funkcja skalująca?
• funkcja falkowa odpowiada filtrowi pasmowoprzepustowemu (lub górnoprzepustowym)
• funkcja skalująca odpowiada filtrowi dolnoprzepustowemu służącemu aproksymacji (uśrednieniu, wygładzeniu przebiegu)
• zwiększając stopień aproksymacji tracimy część informacji o sygnale (zmiennych wysokoczęstotliwościowe czyli szybko zmieniających się w czasie).
• funkcja skalująca przyporządkowana jest ZAWSZE jednej funkcji falkowej Ψ(t) (generowanie rodziny funkcji skalujących tak jak dla funkcji falkowych w oparciu o translację i skalę).
-
Cechy falki matki
• zerowa wartość średnia (funkcja skalująca przypisana funkcji falkowej ma wartość średnią różną od zera.)
• normalizacja
• skupiona wokół wartości t=0
• ortogonalność (żadnej z falek nie można zapisać jako liniową kombinację dowolnych pozostałych ze zbioru)
• skończone pasmo przenoszenia (czas trwania), nośnik zwarty
• wartości w nieskończoności dążą do 0
-
Ciągła transformata falkowa (Continous Wavelet Transform, CWT)
• gdzie: ŝΨ(a,b) - współczynnik falkowy zależny od parametrów a i b (iloczyn
skalarny sygnału s(t) i falki, co pozwala określić, jak dobrze dana falka przybliża sygnał (wężyk oznacza transformatę falkową).
a - parametr skali , współczynnik kompresji (a>0 - falka rozciągnięta, a
-
Ciągła transformata falkowa
Pod wpływem zmiany parametrów a (parametr skali) i b (parametr przesunięcia) tworzy się tzw. rodzinę falek, wykorzystywaną do dekompozycji sygnału s(t) na kilku poziomach detali
• Falka używana w danej transformacie jest zawsze jedna. Nie da się użyć kilku falek jednocześnie.
• Kształt falki zależy tylko do funkcji ja opisującej a funkcji może być nieograniczona ilość
• Falki mają ten sam kształt w obrębie rodziny ( z dokładnością do skali i translacji)
-
Skala
• decyduje o tym jaką pseudoczęstotliwość reprezentuje falka. Przyjmuje wartości
większe od 0. Jest odwrotnie proporcjonalny do pseudoczęstotliwości falki (ze
wzrostem a pseudoczęstotliwość maleje).
Dla a=1/4 przebieg falki jest "ściśnięty„ (zmienia się szybko w czasie, charakteryzuję
się wyższymi częstotliwościami).
Dla a=1 przebieg zmian jest najwolniejszy, częstotliwości występujące w tym sygnale
będą niższe od częstotliwości w przypadku gdy a=1/4.
-
Skala
Na wykresie dwuwymiarowym (czasowo- częstotliwościowym) tam gdzie w Fourierze była częstotliwość w wavelet jest skala!
Związek między skalą a częstotliwością Fa=Fc/aD gdzie: • a - skala • D - okres próbkowania • Fa – centralna częstotliwość w falce w Hz • Fc – (pseudoczęstotliwość wyrażona w Hz)
W Matlabie równanie to jest realizowane poprzez użycie funkcji scl2frq
-
Normalizacja
Podczas zmiany skali (parametru a) falka zostaje "rozciągnięta" lub "ściśnięta. Jednocześnie zmienia się jej wysokość w taki sposób, że podczas ściskania jej amplituda roście, natomiast podczas "rozciągania" maleje. Za zmianę amplitudy odpowiada człon normalizacyjny:
Funkcja falkowa zachowuje stałą energię bez względu na parametr skali a (całka z wykresu funkcji falkowej jest stała, bez względu na jej rozciągnięcie).
-
Współczynnik przesunięcia
• Odpowiada za przesuwanie się funkcji falkowej wzdłuż badanego sygnału.
Ψ (t) Ψ (t+b)
• Wraz ze zmianą współczynnika b, funkcja falki jest przesuwana wzdłuż osi czasu.
• b może przyjmować wartości " >0 " lub "
-
Algorytm CWT 1.Wybraną falkę główną porównuje się z początkiem
analizowanego sygnału. Wyliczony współczynnik określa jak duże jest podobieństwo falki do aktualnego fragmentu sygnału. Następnie wybiera się kolejny fragment sygnału (zwiększenie b ) i ponownie porównuje się go z falką. Proces ten powtarza się aż do pokrycia całości sygnału.
2. Przeskalowuje się falkę (zwiększenie a) i powtarza czynności z punktu pierwszego.
• Ostatnim możliwym do wykonania krokiem jest przypadek, w którym czas trwania falki jest równy czasowi trwania sygnału.
Do wizualizacji otrzymanych współczynników wykorzystuje się układ czas-skala (czas-częstotliwość), na którym jasność punktów jest proporcjonalna do wartości
-
Algorytm CWT –c.d.
1. Falka przy pewnej skali a i współczynniku przesunięcia b jest porównywana z sygnałem s(t), uzyskujemy współczynnik falkowy.
2. Przesunięcie funkcji falkowej (zmiana parametru b). Funkcja falkowa zostaje porównywana z innym fragmentem sygnału s(t). Inną wartość przyjmuje współczynnik falkowy. Podobieństwo jest mniejsze
3. Skala a została zwiększona - "rozszerzenie" falki. W wyniku porównania funkcji falkowej z sygnałem s(t) uzyskujemy inne wartości współczynnika falkowego .
Gdy funkcja falkowa zostanie przesunięta na koniec sygnału badanego s(t), wszystkie fragmenty sygnału zostaną porównane z funkcją falkowa przy zadanej skali. Następuje zmiana skali a i porównywanie sygnału zostaje rozpoczęta od nowa.
-
Rodziny falek Falki rzeczywiste • db (Daubechies) • coif (Coiflet) • gaus(pochodna gaussowska)
• haar (=db1)
• sym (Symlets)
• bior (biortogonalne)
• rbio (odwrotne biortogonalne)
• meyr (Meyera)
• dmey (dyskretna aproksymacja Meyera)
• mexh (Mexican hat)
• morl (Morleta)
• fbsp ( sklejki częstotliwości)
……. I tak ponad 100 możliwości w samym MATLABIE
Zespoły falek •cgau6 (pochodna gaussowska) •shan (Shannon) •cmor (kompleksowe Morleta)
-
Falka Haara • najprostsza, obecnie bez zastosowania
praktycznego, jedyna która nie
wprowadza przesunięcia fazowego we-
wy
-
Falki Daubechies (db)
f- funkcja skalująca y - funkcja falkowa
Od nazwiska Ingrid Daubechies
Falka Daubechies pierwszego rzędu to falka
Harra.
Można zauważyć, że wraz ze wzrostem rzędu
wzrasta gładkość falki jak i jej funkcji
skalującej
Zmiana rzędu falki, wymusza wzrost (nawet
dwukrotny ) liczby współczynników ją
opisujących
Nie zawsze najlepszą falką jest ta z
najwyższego rzędu (wydłuża się znacznie
czas obliczeń).
.
-
Falki coiflets
Stworzone przez Ingrid Daubechies na prośbę R. Coifman'a jako próba eliminacji zjawiska występowania nieliniowego przesunięcia fazowego pomiędzy sygnałem na wejściu i sygnałem na wyjściu
-
Falki Symlets
Prawie symetryczne falki zaproponowane przez Ingrid Daubechies jako modyfikacja falek db
-
Falki biortogonalne
dec- baza filtrów dekompozycji sygnału (analiza w różnych skalach)
rec – baza filtrów syntezy (rekonstrukcji) sygnału
ortogonalność brak ortogonalności
-
Dyskretna transformata falkowa (Discrete Wavelet Transform, DWT)
• Analityczne wzory na ciągłe transformaty falkowe są w zasadzie nie do wykonania nawet dla prostych sygnałów.
• Często transformaty są liczone numerycznie na zadanej siatce czasu i skali (próbkowanie na płaszczyźnie dwóch zmiennych) –dyskretyzacja transformaty falkowej
• Tak otrzymana transformata zawiera dużo nadmiarowej (redundantnej) informacji szczególnie dla rekonstrukcji sygnału (obciążenie procesora i przedłużenie czasu obliczeń).
• Istnieją jednak metody przyśpieszenia działania transformat falkowych, (jak FFT dla transformat Fouriera). Metody te nazywa się dyskretnymi transformatami falkowymi
-
Sposób przetwarzania sygnału • filtracja sygnału w serii kaskadowo połączonych filtrów
• równoczesna filtracja górnoprzepustowa i dolnoprzepustowa
• sygnał zostaje zdekomponowany na dwa podsygnały o niskich yd i wysokich częstotliwościach yh, kolejne wartości próbkowanego sygnału stanowią współczynniki transformacji falkowej
-
Sygnał dyskretny o długości N=2n i Dt=1 jest przepuszczany przez filtr połówkowy dolnoprzepustowy g z funkcją przenoszenia G(f) = 1 dla f < fc/2, i G(f) = 0 dla f > fc/2
fc jest częstotliwością Nyquista (ƒc =1/2Δt = ½)
Filtr usuwa wszystkie częstotliwości powyżej połowy częstotliwości Nyquista. Zbyt duża liczba próbek pozwala usunąć co drugą próbkę z sygnału (zasadą Nyquista).
Otrzymujemy próbkę o długości N/2 punktów. Dwójkowanie (subsampling) zwiększa skalę dwukrotnie, ``rozdzielczość'' zmniejsza się dwukrotnie jako skutek filtracji (aproksymacja sygnału).
• gdzie:
yd – współczynniki aproksymacji
yg- współczynniki detali
Subsampling
-
Jeśli dodatkowo ten sam sygnał przepuścimy przez połówkowy filtr górnoprzepustowy i dokonamy ``dwójkowanie'' to otrzymamy sygnał, który opisuje ``szczegóły'' sygnału wejściowego. Oba sygnały ( o ile filtry są idealne) zawierają całą informację zawartą w sygnale wejściowym
Subsampling
-
Wielorozdzielczość • Sygnał jako suma reprezentacji szczegółowej i aproksymowanej • na każdym następnym poziomie reprezentacja z poziomu
poprzedniego jest ponownie przedstawiana w postaci sumy reprezentacji szczegółowej i reprezentacji zgrubnej
• reprezentacja szczegółowa na danym poziomie nie ulega zmianie w wyniku kolejnych iteracji
• z każdym kolejnym poziomem ciąg szczegółów rozbudowuje się o jeden element , z każdym kolejnym poziomem reprezentacji jest również związana jej rozdzielczość
• W ten sposób powstaje drabina kolejnych współczynników, które
będziemy nazywali współczynnikami falki. Ilość tych współczynników jest równa ilości punktów sygnału ale ich uporządkowanie jest specyficzne - powiązane z procesem filtracji i dwójkowania.
-
• Wielorozdzielczość - dekompozycja sygnału w ciąg sygnałów o coraz mniejszej rozdzielczości na wielu poziomach
gdzie:
sl+1- aproksymata (niskoczęstotliwościowa reprezentacja sygnału)
dl+1- detale (wysokoczęstotliwościowa reprezentacja sygnału)
• Wejściowy sygnał podzielony na dwa sygnały sl+1 i dl+1 zawierające dwukrotnie mniej próbek każdy, na ich podstawie możliwe jest późniejsze bezstratne odtworzenie obrazu.
• Sygnał sl+1 poddawany jest ponownej dekompozycji, sygnał dl+1 jest zapisywany na wyjściu transformacji
-
Algorytm Mallata W dalszej części dekompozycja polega na sekwencyjnym filtrowaniu górno- i
dolnoprzepustowym osobno wzdłuż kolumn i wierszy
LL- filtr dolnoprzepustowy dla wierszy i kolumn
LH- dolnoprzepustowy dla wierszy, górnoprzepustowy dla kolumn
HL- górnoprzepustowy dla wierszy, dolnoprzepustowy dla kolumn
HH- filtr górnoprzepustowy dla wierszy i kolumn
-
• Analiza wierszy i kolumn przy użyciu filtrów odbywa się oddzielnie (najpierw dekomponowane na aproksymaty i detale są wiersze, na podstawie otrzymanych podobrazów, dekomponowane są kolumny)
• Po dekompozycji obraz jest reprezentowany przez 4 macierze współczynników falkowych (każda składowa- ¼ obrazu pierwotnego), posiadające dwukrotnie mniejszą rozdzielczość liniową
• Każda kolejna dekompozycja według tego schematu pozwala na wprowadzenie wielopoziomowej rozdzielczości
• W dalszej części dekompozycja polega na sekwencyjnym filtrowaniu górnoprzepustowym i dolnoprzepustowym osobno wzdłuż kolumn i wierszy
Algorytm Mallata
-
Algorytm Mallata
LL- obraz powstaje na drodze obliczania średniej wartości grup pikseli o wymiarach 2x2 (uproszczona reprezentacja transformowanego obszaru)
LH- ekspozycja krawędzi pionowych
HL- ekspozycja krawędzi poziomych
HH- ekspozycja krawędzi diagonalnych
Można obliczyć na podstawie składowych zawierających krawędzie, intensywność tych krawędzi w 3 kierunkach (można również analizować intensywność sygnału w każdym komponencie z osobna)
-
Zapis macierzowy transformacji falkowej
Funkcja transformująca
gdzie: w0,w1 – reprezentacja funkcji podstawowej
(filtracja górnoprzepustowa) h0, h1 –reprezentacja funkcji skalującej,
filtracja dolnoprzepustowa
Przekształcenie obrazu do reprezentacji
falkowej: T = H S HT gdzie: S- obraz T- transformata Haara obrazu S Rekonstrukcja obrazu z równania odwrotnego
S = H-1 T H
0 1
0 1
0 1
0 1
0 0 ... ... ...
0 0 ... ... ...
... ... ... ... ... ... ...
... ... ... ... ... ... ...
0 0 ... ... ...
0 0 ... ... ...
... ... ... ... ... ... ...
h h
h h
H
w w
w w
gdzie: nieparzyste wiersze - filtr dolnoprzepustowy, parzyste wiersze – filtr górnoprzepustowy.
y=C x • automatyczne dwójkowanie, • permutacja wszystkich parzystych elementów wektora y na N/2 pierwszych miejsc a nieparzystych na ostatnie N/2 miejsc
-
Wavelet Toolbox
-
Usuwanie szumu
• Niska skala na wykresie określa, ze mamy do
czynienia ze współczynnikami odpowiadającymi wysokim częstotliwościom, a wiec cechom lokalnym sygnału (np. z szumem).
• Wysoka skala mówi, ze mamy do czynienia z niskimi częstotliwościami,
a wiec z cechami globalnymi
sygnału (np. z okresowością).
-
Usuwanie szumu
• Aby sie go pozbyć, wystarczy
usunąć współczynniki
”krótkich” falek.
• Zerując współczynniki w transformacie falkowej, kasujemy część informacji. Jednak nawet usuniecie dużej części informacji pozostaje niezauważalne dla ludzkiego oka.
-
Kompresja obrazu
JPEG Kompresja 90% 16 116 B
JPEG2000 Kompresja 90% 16 116 B
-
Kompresja obrazu
JPEG Kompresja 95% 8 012 B
JPEG2000 Kompresja 95% 9 985 B
-
Kompresja obrazu
JPEG Kompresja 99% 4 429 B
JPEG2000 Kompresja 99% 2 239 B
-
Zastosowanie 1. Matematyka teoretyczna i stosowana •analiza matematyczna •analiza harmoniczna •analiza funkcjonalna •równania różniczkowe cząstkowe •teoria aproksymacji •metody numeryczne •statystyka •fraktale i chaos
2. Geofizyka • turbulencja • zimne fronty atmosferyczne • dyspersja fal oceanicznych • analiza sygnałów sejsmicznych • analiza zjawiska El Niño • ruch obrotowy Ziemi • próba detekcji fal grawitacyjnych
-
Zastosowanie 3. Analiza szeregów czasowych
•redukcja szumu
•kompresja
•filtracja
4. Astronomia
• hierarchiczna struktura Wszechświata
• badanie gromad galaktyk i ich struktury
• liczenie galaktyk
• wykrywanie źródeł promieniowania γ
• Odkrycie oscylacji magnetycznych Słońca
• analiza danych astronomicznych
• Badanie aktywności Słońca i plan ma Słońcu
-
Zastosowanie
5. Człowiek
• receptory (filtry) w ludzkiej siatkówce i mózgu są wrażliwe na plamki i krawędzie o różnych skalach i przesunięciach
• ludzki słuch używający filtrów o w przybliżeniu stałym kształcie
• rozpoznawanie mowy
• odczytywanie ręcznego pisma (OCR), projektowanie czcionek
• rozpoznawanie twarzy
• Analiza stanu funkcjonalnego mózgu
• Redukcja zakłóceń mięśniowych w elektrokardiografii
• Monitorowanie tętna i oddychania
-
Zastosowanie 6. Grafika komputerowa
•tworzenie filmów animowanych
•standard JPEG 2000 do kompresji i transmisji obrazów
•przechowywanie, przeszukiwanie i odzyskiwanie odcisków palców (FBI)
7. Muzyka
•generowanie dźwięku
•kompresja plików mp3
•redukcja szumu w starych nagraniach muzycznych
•analogia do zapisu nutowego
-
Bibliografia
1. Zastosowanie teorii falek w diagnostyce technicznej, W. Batko, A. Ziółko
2. Transformacje falkowe w zastosowaniach elektrodiagnostycznych, Piotr Augustyniak
3. Misiti M., Misiti Y., Oppenheim G., Poggi J.M. User's Guide: "Wavelet Toolbox for use with MATLAB" Mathworks 1996.
4. Falki i Aproksymacje, Jan T. Białasiewicz
5. Cyfrowe przetwarzanie sygnałów , Tomasz Zieliński
6. Ten lectures on wavelets, Ingrid Daubechies
7. www.home.agh.edu.pl/~falki
http://www.home.agh.edu.pl/~falki
-
DZIĘKUJĘ
ZA
UWAGĘ
top related