Mam problem ze zrozumieniem, jak odczytać wykres wykreślony przez transformację falkową,
oto mój prosty kod Matlab,
load noissin;
% c is a 48-by-1000 matrix, each row
% of which corresponds to a single scale.
c = cwt(noissin,1:48,'db4','plot');
Najjaśniejsza część oznacza, że skalowalny rozmiar kawy jest większy, ale jak dokładnie mogę zrozumieć tę fabułę, co się tam dzieje? Proszę mi pomóc.
Odpowiedzi:
Wyobraź sobie przez sekundę, że właśnie wykreśliłeś falę daubechies-4 , jak widać tutaj na czerwono.
Teraz wyobraź sobie, że bierzesz ten kształt fali na czerwono i po prostu wykonujesz korelację krzyżową ze swoim sygnałem. Spisujesz ten wynik. To będzie pierwszy rząd twojej działki. To jest skala-1. Następnie rozszerzasz falkę Daubechies-4 (to znaczy, po prostu sprawiasz, że „rozciąga się” ona w czasie, z jakiegoś powodu). Następnie ponownie wykonujesz korelację krzyżową tego nowego przebiegu z sygnałem. Następnie dostajesz drugi wiersz swojej działki. To jest skala-2. Cały czas robisz to dla wszystkich skal, co oznacza, że nadal bierzesz pierwotną falkę „matki” i dalej się rozszerzasz, a następnie korelujesz krzyżowo, rozszerzasz i korelujesz krzyżowo itd. I po prostu wykreślasz wyniki jeden na górze inni
Właśnie to pokazuje wykres CWT. Wyniki przeprowadzania korelacji krzyżowej sygnału z falką w różnych skalach, to znaczy przy różnych czynnikach rozszerzenia (rozciągania).
Pozwól nam zinterpretować twój wizerunek. W pierwszym rzędzie widać, że masz słabe amplitudy w swojej korelacji krzyżowej. Oznacza to, że mówi ci, że prawie nic w twoim sygnale nie koreluje (ani nie „dopasowuje”) twojej falki, gdy jest ona w skali 1, (gdy jest w najmniejszej skali). Ciągle rozciągasz swoją falkę i korelujesz, a mimo to nic nie pasuje do twojego sygnału, dopóki nie osiągniesz powiedzmy skali 31. Kiedy więc rozciągniesz falkę 31 razy i wykonasz korelację krzyżową, zaczniesz widzieć jasne plamy, co oznacza, że otrzymujesz dobre wyniki korelacji krzyżowej między rozciągniętą falą a sygnałem.
Jeśli jednak spojrzysz na samą górę, mamy najjaśniejsze punkty. Tak więc dla skali-46 wykonałeś ten rząd, rozciągając oryginalną falkę 46 razy, a następnie skorelowałeś go krzyżowo z sygnałem, i to jest twój rząd-46. Widzisz więc wiele fajnych jasnych punktów. Widać, że w pozycjach (oś x) ~ 25, ~ 190 i ~ 610 mam jasne plamki. To oznacza, że masz w sygnale pewną cechę, która bardzo ściśle pasuje do twojej falki, która jest rozciągnięta 46 razy . Więc masz „coś” w tych miejscach, które ściśle pasują do twojej falki na taką skalę.
(Oczywiście w twoim przypadku użyłeś hałasu, więc pozycje, o których mówiłem, są losowe - to znaczy, że nie dzieje się nic naprawdę „interesującego”. Wykonaj CWT z impulsem sinusoidalnym i to, co mówię, może bądź dla ciebie bardziej zrozumiały).
Podsumowując, CWT pokazuje po prostu wszystkie możliwe wyniki korelacji między twoim szablonem / dopasowanym filtrem (w tym przypadku falką daub-4), w różnych pozycjach, (oś x), także przy różnych rozciągniętych czynnikach, (oś y) .
Mam nadzieję, że to pomogło.
źródło
Te wykresy pomogły mi zrozumieć, pochodzące z tła STFT :
Kompleks Morlet (sinusoidalne) falkowej wygląda i zachowuje się jak jądra złożonego z STFT (ponieważ to pochodzi od Gabor przekształcać , rodzaj STFT). Kiedy „przesuwasz go” obok sygnału o tej samej częstotliwości, dopasowuje się on, bez względu na fazę mierzonego sygnału, wytwarzając pomiary wielkości i fazy w każdym punkcie (a to jest wykres samej wielkości):
Wykres wielkości złożonej transformaty falkowej Morleta
Wartościach rzeczywistych Morlet falkowej tylko mecze, gdy fazy falki i linia sygnału. Gdy przesuniesz go obok mierzonego sygnału, wchodzi on i wychodzi z fazy, wytwarzając maksima i minima, gdy anulują lub wzmacniają:
Wielkość ciągłej prawdziwej transformaty falkowej Morleta
(Właściwie w takim przypadku wykreślamy wielkość, więc zarówno dodatnie, jak i ujemne dopasowania dają pomarańczowe kropki. Lepiej zamiast tego przejść na dwubiegunową mapę kolorów , aby pokazać, że niektóre szczyty są w fazie, a inne nie w fazie) :
Ciągła prawdziwa transformata falkowa Morleta za pomocą bipolarnej kolormapy
W przypadku Morleta o wartościach rzeczywistych informacje o wielkości i fazie są łączone w jedną wartość wyjściową.
Najczęściej używane falki mają wartość rzeczywistą, więc pasują do siebie tylko wtedy, gdy mierzona fala i fala, którą testujesz w linii, prowadzą do tych oscylacji lub fal na skalogramie, gdy przesuwasz się jedna po drugiej.
źródło
To jest przykład, który moim zdaniem najlepiej zrozumieć fabułę Wavelet.
Spójrz na zdjęcie poniżej, kształt fali (A) jest naszym oryginalnym sygnałem, kształt fali (B) pokazuje falę Daubechies 20 (Db20) o długości około 1/8 sekundy, która zaczyna się na początku (t = 0) i skutecznie kończy się dobrze przed 1/4 sekundy. Wartości zerowe są przedłużane do pełnej 1 sekundy. Porównanie punkt po punkcie * z naszym sygnałem pulsacyjnym (A) będzie bardzo słabe i uzyskamy bardzo małą wartość korelacji.
najpierw przesuwamy lekko nierozciągniętą falę podstawową lub macierzystą nieco w prawo i wykonujemy kolejne porównanie sygnału z tym nowym przebiegiem, aby uzyskać kolejną wartość korelacji. Nadal się przesuwamy, a gdy falka Db20 znajduje się w pozycji pokazanej w (C), uzyskujemy nieco lepsze porównanie niż z (B), ale nadal bardzo słaba, ponieważ (C) i (A) mają różne częstotliwości.
Po dalszym przesuwaniu falki do końca 1-sekundowego przedziału czasowego, zaczynamy od początku z lekko rozciągniętą falką na początku i kilkakrotnie przesuwamy w prawo, aby uzyskać kolejny pełny zestaw tych wartości korelacji. Kształt fali (D) pokazuje falkę Db20 rozciągniętą do miejsca, w którym częstotliwość jest w przybliżeniu taka sama jak puls (A) i przesunięta w prawo, aż szczyty i doliny zrównają się dość dobrze. Przy tych konkretnych przesunięciach i rozciągnięciach powinniśmy uzyskać bardzo dobre porównanie i dużą wartość korelacji. Dalsze przesuwanie w prawo jednak nawet przy tym samym rozciąganiu spowoduje coraz słabsze korelacje. Dalsze rozciąganie wcale nie pomaga, ponieważ nawet po ustawieniu w linii puls i nadmiernie rozciągnięta falka nie będą miały tej samej częstotliwości.
W CWT mamy jedną wartość korelacji dla każdego przesunięcia każdego rozciągniętego falka. † Aby pokazać wartości korelacji (jakość „dopasowania”) dla wszystkich tych rozciągnięć i przesunięć, używamy wyświetlacza 3D.
Oto jest,
Jasne punkty wskazują, gdzie szczyty i doliny rozciągniętej i przesuniętej falki najlepiej pasują do pików i dolin wbudowanego impulsu (ciemne, gdy brak wyrównania, ściemniacz, w którym ustawiają się tylko niektóre szczyty i doliny, ale najjaśniejsze tam, gdzie wszystkie szczyty i doliny wyrównać). W tym prostym przykładzie rozciągnięcie falki 2 razy od 40 do 20 Hz (rozciągnięcie filtra z pierwotnych 20 punktów do 40 punktów) i przesunięcie go o 3/8 sekundy w czasie dało najlepszą korelację i zgadza się z tym, co wiedzieliśmy a priori lub „z góry” o impulsie (impuls wyśrodkowany na 3/8 sekundy, częstotliwość impulsu 20 Hz).
Wybraliśmy falkę Db20, ponieważ wygląda trochę jak sygnał tętna. Gdybyśmy nie z góry wiedzieli, jak wygląda to wydarzenie, moglibyśmy wypróbować kilka falek (łatwo przełączanych w oprogramowaniu), aby zobaczyć, który wyprodukował wyświetlacz CWT z najjaśniejszymi punktami (wskazując najlepszą korelację). To powiedziałoby nam coś o kształcie wydarzenia.
W powyższym prostym samouczku mogliśmy po prostu wizualnie rozpoznać lokalizację i częstotliwość impulsu (A). Następny przykład jest nieco bardziej reprezentatywny dla falek w prawdziwym świecie, w którym lokalizacja i częstotliwość nie są widoczne gołym okiem.
Zobacz poniższy przykład,
Wavelets można wykorzystać do analizy lokalnych wydarzeń. Konstruujemy powoli 300-punktowy sygnał fali sinusoidalnej i dodajemy małą „usterkę” lub nieciągłość (nachylenie) w czasie = 180. Nie zauważylibyśmy usterki, gdybyśmy nie spojrzeli na zbliżenie (b).
Zobaczmy teraz, jak FFT wyświetli tę usterkę, spójrz,
Niska częstotliwość fali sinusoidalnej jest łatwa do zauważenia, ale niewielkiej usterki nie widać.
Ale jeśli użyjemy CWT zamiast FFT, to wyraźnie wyświetli tę usterkę,
Jak widać, wyświetlanie falek CWT wyraźnie pokazuje pionową linię w czasie = 180 i w niskiej skali. (Falka ma bardzo małe rozciąganie w niskich skalach, co wskazuje, że usterka była bardzo krótka.) CWT również dobrze porównuje się z dużą oscylującą falą sinusoidalną, która ukrywa usterkę. W tych wyższych skalach falka została rozciągnięta (do niższej częstotliwości), a zatem „znajduje” szczyt i dolinę fali sinusoidalnej w czasie = 75 i 225, Do tej krótkiej nieciągłości zastosowaliśmy krótki 4-punktowy Db4 falka (jak pokazano) dla najlepszego porównania.
źródło