Przetwarzanie Sygnałów. Zastosowanie Transformaty Falkowej w nadzorowaniu

Podobne dokumenty
LABORATORIUM AKUSTYKI MUZYCZNEJ. Ćw. nr 12. Analiza falkowa dźwięków instrumentów muzycznych. 1. PODSTAWY TEORETYCZNE ANALIZY FALKOWEJ.

Cyfrowe przetwarzanie i kompresja danych

Akwizycja i przetwarzanie sygnałów cyfrowych

Laboratorium Przetwarzania Sygnałów

2. Próbkowanie Sygnały okresowe (16). Trygonometryczny szereg Fouriera (17). Częstotliwość Nyquista (20).

Podstawy Przetwarzania Sygnałów

EKSTRAKCJA CECH TWARZY ZA POMOCĄ TRANSFORMATY FALKOWEJ

Zastosowanie falek w przetwarzaniu obrazów

Laboratorium Przetwarzania Sygnałów Biomedycznych

Cyfrowe przetwarzanie sygnałów. Wykład 10. Transformata cosinusowa. Falki. Transformata falkowa. dr inż. Robert Kazała

Laboratorium Cel ćwiczenia Celem ćwiczenia jest zapoznanie się z przetwarzaniem sygnałów w MATLAB. 2. Program ćwiczenia. Przykład 1 Wprowadź

CYFROWE PRZTWARZANIE SYGNAŁÓW (Zastosowanie transformacji Fouriera)

TRANSFORMATA FALKOWA 2D. Oprogramowanie Systemów Obrazowania 2016/2017

TRANSFORMATA FALKOWA. Joanna Świebocka-Więk

Podstawy MATLABA, cd.

AKADEMIA MORSKA KATEDRA NAWIGACJI TECHNICZEJ

PL B1. Sposób i układ pomiaru całkowitego współczynnika odkształcenia THD sygnałów elektrycznych w systemach zasilających

Politechnika Świętokrzyska. Laboratorium. Cyfrowe przetwarzanie sygnałów. Ćwiczenie 6. Transformata cosinusowa. Krótkookresowa transformata Fouriera.

Definicja. x(u)h (u t)e i2πuf du. F x (t,f ;h) = Krótko czasowa transformata Fouriera Ciągłą transformata falkowa

WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI I INFORMATYKI INSTYTUT AUTOMATYKI I INFORMATYKI KIERUNEK AUTOMATYKA I ROBOTYKA STUDIA STACJONARNE I STOPNIA

Przekształcenie Fouriera obrazów FFT

ANALIZA SEMANTYCZNA OBRAZU I DŹWIĘKU

FFT i dyskretny splot. Aplikacje w DSP

8. Analiza widmowa metodą szybkiej transformaty Fouriera (FFT)

Falki, transformacje falkowe i ich wykorzystanie

Akustyka muzyczna ANALIZA DŹWIĘKÓW MUZYCZNYCH

Przekształcenia widmowe Transformata Fouriera. Adam Wojciechowski

DYSKRETNA TRANSFORMACJA FOURIERA

TRANSFORMATA FALKOWA WYBRANYCH SYGNAŁÓW SYMULACYJNYCH

Opis efektów kształcenia dla modułu zajęć

Metody Przetwarzania Danych Meteorologicznych Ćwiczenia 14

Kompresja dźwięku w standardzie MPEG-1

Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Elektroniki

Ćwiczenie 6 Projektowanie filtrów cyfrowych o skończonej i nieskończonej odpowiedzi impulsowej

ANALIZA SYGNAŁÓ W JEDNÓWYMIARÓWYCH

Modelowanie Systemów Dynamicznych Studia zaoczne, Automatyka i Robotyka, rok II. Podstawy MATLABA, cz2.

ELEMENTY AUTOMATYKI PRACA W PROGRAMIE SIMULINK 2013

Zastosowanie analizy falkowej do wykrywania uszkodzeń łożysk tocznych

Ćwiczenie 6 Projektowanie filtrów cyfrowych o skończonej i nieskończonej odpowiedzi impulsowej

Rys 1 Schemat modelu masa- sprężyna- tłumik

Teoria sygnałów Signal Theory. Elektrotechnika I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

POLITECHNIKA POZNAŃSKA

Temat ćwiczenia. Analiza częstotliwościowa

Transformata Fouriera

9. Dyskretna transformata Fouriera algorytm FFT

POSZUKIWANIE FALKOWYCH MIAR POTENCJAŁU INFORMACYJNEGO OBRAZÓW CYFROWYCH JAKO WSKAŹNIKÓW JAKOŚCI WIZUALNEJ

SPRZĘTOWA REALIZACJA FILTRÓW CYFROWYCH TYPU SOI

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Diagnostyka obrazowa

WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI I INFORMATYKI INSTYTUT AUTOMATYKI I INFORMATYKI KIERUNEK AUTOMATYKA I ROBOTYKA STUDIA STACJONARNE I STOPNIA

Akademia Górniczo-Hutnicza

Informatyka I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny) kierunkowy (podstawowy / kierunkowy / inny HES)

Przedmowa Wykaz oznaczeń Wykaz skrótów 1. Sygnały i ich parametry Pojęcia podstawowe Klasyfikacja sygnałów

Akademia Górniczo-Hutnicza

Zygmunt Wróbel i Robert Koprowski. Praktyka przetwarzania obrazów w programie Matlab

7. Szybka transformata Fouriera fft

LABORATORIUM Sygnałów, Modulacji i Systemów ĆWICZENIE 2: Modulacje analogowe

Diagnostyka obrazowa

Ćwiczenie 3. Właściwości przekształcenia Fouriera

POLITECHNIKA OPOLSKA

przetworzonego sygnału

WPROWADZENIE DO ŚRODOWISKA SCICOS

BIBLIOTEKA PROGRAMU R - BIOPS. Narzędzia Informatyczne w Badaniach Naukowych Katarzyna Bernat

Transformaty. Kodowanie transformujace

Przekształcenia sygnałów losowych w układach

przedmiot kierunkowy (podstawowy / kierunkowy / inny HES) obieralny (obowiązkowy / nieobowiązkowy) polski semestr VI

AKADEMIA MORSKA W SZCZECINIE WI-ET / IIT / ZTT. Instrukcja do zajęc laboratoryjnych nr 6 AUTOMATYKA

Celem ćwiczenia jest zapoznanie się z podstawowymi funkcjami i pojęciami związanymi ze środowiskiem AutoCAD 2012 w polskiej wersji językowej.

P R Z E T W A R Z A N I E S Y G N A Ł Ó W B I O M E T R Y C Z N Y C H

Ćwiczenie 4. Filtry o skończonej odpowiedzi impulsowej (SOI)

Cyfrowe Przetwarzanie Obrazów i Sygnałów

III. Przebieg ćwiczenia. 1. Generowanie i wizualizacja przebiegów oraz wyznaczanie ich podstawowych parametrów

Laboratorium Przetwarzania Sygnałów Biomedycznych

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

Zmiany fazy/okresu oscylacji Chandlera i rocznej we współrzędnych bieguna ziemskiego.

Zmiany fazy/okresu oscylacji Chandlera i rocznej we współrzędnych bieguna ziemskiego.

AKADEMIA MORSKA KATEDRA NAWIGACJI TECHNICZEJ

Kodowanie transformacyjne. Plan 1. Zasada 2. Rodzaje transformacji 3. Standard JPEG

Dyskretne układy liniowe. Funkcja splotu. Równania różnicowe. Transform

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania KOMPUTEROWE SYSTEMY STEROWANIA (KSS)

DYSKRETNE PRZEKSZTAŁCENIE FOURIERA C.D.

Katedra Automatyzacji Laboratorium Podstaw Automatyzacji Produkcji Laboratorium Podstaw Automatyzacji

Filtracja obrazu operacje kontekstowe

WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI I INFORMATYKI INSTYTUT AUTOMATYKI I INFORMATYKI KIERUNEK AUTOMATYKA I ROBOTYKA STUDIA STACJONARNE I STOPNIA

Andrzej Leśnicki Laboratorium CPS Ćwiczenie 7 1/7 ĆWICZENIE 7. Splot liniowy i kołowy sygnałów

Andrzej Leśnicki Laboratorium CPS Ćwiczenie 6 1/8 ĆWICZENIE 6. Dyskretne przekształcenie Fouriera DFT

Teoria sterowania - studia niestacjonarne AiR 2 stopień

W celu obliczenia charakterystyki częstotliwościowej zastosujemy wzór 1. charakterystyka amplitudowa 0,

Pałkowa analiza sygnałów

Laboratorium Przetwarzania Sygnałów Biomedycznych

Analiza porównawcza wybranych transformat w kontekście zobrazowania zaszumionego sygnału harmonicznego

Algorytmy sztucznej inteligencji

Podstawy Automatyki. wykład 1 ( ) mgr inż. Łukasz Dworzak. Politechnika Wrocławska. Instytut Technologii Maszyn i Automatyzacji (I-24)

Cyfrowe Przetwarzanie Obrazów i Sygnałów

Ćwiczenie 11. Podstawy akwizycji i cyfrowego przetwarzania sygnałów. Program ćwiczenia:

Transformata Fouriera i analiza spektralna

KARTA MODUŁU / KARTA PRZEDMIOTU

Modelowanie Systemów Dynamicznych Studia zaoczne, Automatyka i Robotyka, rok II. Podstawy SIMULINKA

Dostawa oprogramowania. Nr sprawy: ZP /15

Ćwiczenie 0 : Wprowadzenie do cyfrowego przetwarzania sygnałów. wyświetla listę tematów pomocy. wyświetla okno pomocy (Help / Product Help)

Transkrypt:

Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej Przetwarzanie Sygnałów Studia Podyplomowe, Automatyka i Robotyka Zastosowanie Transformaty Falkowej w nadzorowaniu. Wstęp Dobrze znana i szeroko wykorzystywana w analizie sygnałów Transformata Fouriera (ang. Fourier Transform, FT) dokonuje dekompozycji sygnału na składowe sinusoidalne o różnych częstotliwościach: F jt ( ) f ( t) e dt () gdzie F() jest widmem częstotliwościowym, a f(t) badaną realizacją czasową. Podczas transformacji następuje zmiana dziedziny czasu na dziedzinę częstotliwości (Rys. ). W wyniku tej operacji informacja czasowa zostaje utracona. Jest to poważną wadą w przypadku analizy sygnałów niestacjonarnych, gdy informacja o chwili wystąpienia i czasie trwania danego zjawiska jest bardzo istotna Z tego względu transformata Fouriera jest skuteczna jedynie dla sygnałów periodycznych, regularnych i stacjonarnych. Rys.. Transformata Fouriera. Przejście z dziedziny czasu do dziedziny częstotliwości: sygnał w dziedzinie czasu (po lewej) i w dziedzinie częstotliwości (po prawej). W pewnym stopniu remedium na wady transformaty Fouriera jest zaproponowana w roku 946 przez Dennisa Gabora krótko-okresowa transformata Fouriera (ang. Short-Time Fourier Transform, STFT). Transformata ta, za pomocą przesuwanego wzdłuż sygnału okna czasowego w(t), dzieli sygnał na małe kawałki, które można uznać za stacjonarne. Następnie, kawałki te poddawane są FT (Rys. 2): F jt ( t, ) [ f ( t) w( t )] e dt (2) W ten sposób odzyskuje się, w pewnym stopniu, traconą przez FT informację czasową.

amplituda okno STFT częstotliwość czas czas Rys. 2. Zasada działania STFT. Główną wadą STFT jest fakt, że jakość informacji częstotliwościowej jest odwrotnie proporcjonalna do jakości informacji czasowej. Związane jest to z szerokością okna czasowego, która jest stała. Dla wąskiego okna występuje dobra rozdzielczość czasowa i słaba rozdzielczość częstotliwościowa, dla szerokiego okna sytuacja jest odwrotna. Transformata falkowa natomiast dokonuje dekompozycji sygnału na składowe falkowe o różnych częstotliwościach (skalach) i różnych pozycjach. Ponieważ falka zmienia swoją szerokość (skalę), nie występuje tu, jak w STFT, antagonizm między rozdzielczością informacji czasowej, a rozdzielczością informacji częstotliwościowej. Falkę można tu rozpatrywać w kategoriach okna o zmiennej szerokości. Dla porównania, na Rys. 3 przedstawiono rozdzielczość reprezentacji czasowej, częstotliwościowej, STFT oraz falkowej. Rys. 3. Różnice w rozdzielczości w dziedzinie: czasowej, częstotliwościowej, transformaty STFT oraz falkowej. Asymetria i nieregularne kształty niektórych falek naturalnie predysponują je do analizy sygnałów przejściowych, o gwałtownych zmianach i pikach. Sygnały takie, o wiele trudniej odwzorować za pomocą sinusoid. Ponieważ dla różnych falek uzyskuje się różne reprezentacje tego samego sygnału, kluczową sprawą jest wybór falki bazowej. Jest to bardzo ważny element całej analizy. Na Rys. 4 przedstawiono kilka najbardziej popularnych falek.

- - - falka Haara falka Meyera - - 2 - falka Coiflet 'coif6' 5.5 f. skalująca Haara f. skalująca Meyera - f. skalująca Coiflet 'coif6' - 5 - falka Morleta - - falka Daubechies 'db6' - 5 - falka Symlet 'sym6' 5 falka Meksykański Kapelusz - - f. skalująca Daubechies 'db6' - 5 f. skalująca Symlet 'sym6' - 5 Rys. 4. Różne rodzaje falek, oraz odpowiadające im funkcje skalujące. 2. Ciągła transformata falkowa Ciągła transformata falkowa (ang. Continous Wavelet Transform, CWT) ma postać: f ( a, b) gdzie: L 2 (R), f L 2 (R), b R, a R +. a t b f t dt a (3) Jądrem transformaty falkowej jest falka podstawowa (bazowa) L 2 (R) (ang. mother wavelet). Generalnie jest ona funkcją oscylującą, szybko zanikającą lub określoną na nośniku zwartym, o zerowej wartości średniej. Rodzina falek jest tworzona z falki podstawowej poprzez jej przesunięcie, realizowane przez parametr translacji b oraz zmianę jej skali (częstotliwości) realizowanej przez parametr skalujący a: t b a, b( t) (4) a a

Czynnik normalizujący a -/2 sprawia, że wszystkie falki rodziny mają taką samą energię. Wzór (3) produkuje współczynniki falkowe f(a,b), które są funkcją skali a i przesunięcia b. Współczynnik falkowy jest miarą podobieństwa (korelacji) między sygnałem f(t) a falką dla odpowiedniej skali i pozycji. Rys. 5 obrazuje procedurę obliczania tych współczynników. Falka jest przesuwania wzdłuż sygnału i dla każdej jej pozycji obliczany jest współczynnik falkowy. Po osiągnięciu końca sygnału, falka zostaje przeskalowana, powraca na początek sygnału i cała procedura się powtarza. Zestaw wszystkich współczynników f(a,b) reprezentuje sygnał f(t) w dziedzinie falkowej. t) t-k) t-2) k t-3) k Powtórz operację translacji Translacja Translacja Skalowanie Translacja Translacja t/2) Rys. 5. Procedura obliczania współczynników falkowych dla CWT. Istnieją różne metody graficznej reprezentacji ciągłej transformaty falkowej. Rys. 6 przedstawia jedną z nich: dwuwymiarową reprezentację współczynników falkowych w funkcji czasu i skali, gdzie kolor oznacza amplitudę współczynników. Analizowany jest tu sygnał skokowy, zakłócony szumem białym. W miejscach zmian wartości średniej (tj. w próbkach 5,, 5) wyraźnie widać pionowe czarne linie, które je identyfikują. Można zatem stosować tę transformatę jako detektor skokowych zmian w sygnale.

Rys. 6. Wizualizacja ciągłej transformaty falkowej z zastosowaniem falki db3. 3. Dyskretna transformata falkowa Transformata falkowa jest przekształceniem dwuparametrowym, odwzorowującym jednowymiarowy sygnał f(t) w dwuwymiarową tablicę współczynników c j,k : j / 2 j f ( t) c 2 2 t k (5) j, k j, k gdzie zbiór funkcji falkowych j, k ( t) jest zazwyczaj bazą ortogonalną. Zbiór wszystkich współczynników cj,k jest nazywany dyskretną transformatą falkową sygnału f(t), a wzór (5) jest transformatą odwrotną. Wprowadzając tzw. funkcję skalującą φj,k sygnał f(t) można przedstawić jako: t t f ( t) a d (6) k k k j, k j, k j k Pierwsza suma we wzorze (6) stanowi aproksymację sygnału, druga suma, wraz ze wzrostem j reprezentuje coraz bardziej szczegółowe detale sygnału.

Transformatę falkową można rozpatrywać w kategoriach filtrów cyfrowych. Jeżeli wyrazimy funkcję skalującą (t) i falkę jako sumę ważoną przesuniętych funkcji skalujących z wyższego poziomu (2t): t h( n) 2 2 t n (7) (t) n t h n t n ( ) 2 2 (8) to h(n) i h(n) możemy traktować jako współczynniki cyfrowego filtru FIR. n Rys. 7. Pojedynczy blok transformacyjny (po lewej) oraz cały proces dekompozycji (po prawej). Pojedynczy blok transformacyjny jest przedstawiony na Rys. 7. Filtr górno-przepustowy h(n) reprezentuje falkę podstawową i na wyjściu produkuje współczynniki falkowe (detale sygnału). Filtr dolno-przepustowy h(n) reprezentuje funkcję skalującą i na wyjściu daje aproksymację sygnału. Cały proces dekompozycji polega na przepływie sygnału przez identyczne bloki transformacyjne, tak, że wyjście z poprzedniego bloku jest wejściem do następnego bloku. Podobnie jak w przypadku CWT, istnieje szereg możliwości graficznej reprezentacji DWT. Na Rys. 8 zostały pokazane przebiegi aproksymacji i detali dla tego samego sygnału, który był analizowanego za pomocą CWT na Rys. 6. Jak widać, sygnał aproksymacji na poziomie 9 (a9) mógłby być z powodzeniem wykorzystany jako funkcja decyzyjna, dla celów rozpoznawania momentu zmiany wartości średniej zakłóconego sygnału.

Rys. 8. Przebiegi aproksymacji i detali. Kolumna lewa zawiera analizowany sygnał (na górze) oraz kolejne jego aproksymacje (od ado a9). W kolumnie prawej analogiczne przedstawione są detale (od ddo d9). 4. Matlab Wavelet Toolbox Matlab posiada narzędzia do analizy falkowej zgromadzone w Wavelet Toolbox. Toolbox ten w postaci graficznego interfejsu uruchamia się wpisując w linii komend: wavemenu Pojawia się wtedy następujące okno (Rys. 9):

Rys. 9. Menu główne Wavelet Toolbox Transformata ciągła znajduje się pod przyciskiem Continuous Wavelet -D, a transformata dyskretna pod przyciskiem Wavelet -D. Sygnał do analizy należy zapisać w formacie mat-pliku, za pomocą polecenia save: save nazwa_pliku nazwa_zmiennej W wyniku powstanie sygnał nazwa_pliku.mat zawierający zmienną nazwa_zmiennej. Następnie w oknie Continuous Wavelet -D lub Wavelet -D należy kliknąć menu File Load Signal i wybrać nazwa_pliku.mat. Na Rys. znajduje się opis parametrów ciągłej transformaty falkowej dla okna Continuous Wavelet -D (takie ustawienia zostały zastosowane na Rys. 6). Natomiast na Rys. znajduje się opis parametrów dyskretnej transformaty falkowej dla okna Wavelet -D (takie ustawienia zostały zastosowane na Rys. 8).

nazwa sygnału i jego długość rząd falki nazwa falki okres próbkowania tryb ustawiania osi skali(pionowej) poziom minimalny (początkowy) krok zmiany skali poziom maksymalny (końcowy) uruchomienie obliczeń Rys.. Parametry transformacji okna Continuous Wavelet -D.

nazwa sygnału i jego długość nazwa falki poziom dekompozycji uruchomienie obliczeń tryb wizualizacji wyników więcej opcji wizualizacji Rys. Parametry transformacji okna Wavelet -D.

Zamiast korzystać z interfejsu graficznego, można napisać odpowiedni program w Matlabie. Poniżej znajduje się przykładowy kod realizujący obliczanie i wyświetlanie aproksymacji i detali dla dyskretnej transformaty falkowej (uzyskujemy efekt podobny do Rys. 8). % Transformata Falkowa % Obliczanie detali i aproksymacji sygnału clear % wygenerowanie sygnału testowego N = 2; war =.3; std = sqrt(war); s = skoki(n,[ -]); sygnal = s + std*randn(n,); % transformata poziom=9; %maksymalny poziom dekompozycji falka='haar'; %rodzaj falki [C,L] = wavedec(sygnal,poziom,falka); %dyskretna transformata falkowa a9=wrcoef('a',c,l,falka,9); %aproksymacja na poziomie 9 d9=wrcoef('d',c,l,falka,9); %detale na poziomie 9 a8=wrcoef('a',c,l,falka,8); %aproksymacja na poziomie 8 d8=wrcoef('d',c,l,falka,8); %detale na poziomie 8 %... % analogicznie można obliczać detale i aproksymacje na kolejnych poziomach (niższych) %... % wizualizacja subplot(3,,),plot(sygnal),title('sygnał'),axis([ length(s) min(s) max(s)]) subplot(3,2,3),plot(a9),ylabel('a9'),title('aproksymacje') subplot(3,2,4),plot(d9),ylabel('d9'),title('detale') subplot(3,2,5),plot(a8),ylabel('a8') subplot(3,2,6),plot(d8),ylabel('d8') %... % analogicznie dla kolejnych poziomów dekompozycji %... 5. Wykonanie ćwiczenia Wygenerować sygnał ze skokową zmianą wartości średniej i sygnał ze skokową zmianą wariancji, zakłócony szumem białym. a) Dla różnych parametrów sygnałów testowych (wartości zakłócenia, poziomu skoku, wariancji, itp.) i różnych parametrów transformaty (rodzaju falki, rzędu falki, poziomu dekompozycji) wykonać kilka prób ciągłej transformaty falkowej i wyciągnąć wnioski w kwestii przydatności tej transformaty do detekcji nagłych zmian w sygnale. b) Zbadać przydatność aproksymacji w dyskretnej transformacie falkowej jako funkcji decyzyjnej, dla celów rozpoznawania momentu zmiany wartości średniej zakłóconego sygnału (rodzaj i rząd falki, poziom dekompozycji, itp. należy dobrać empirycznie). Wykonać badania statystyczne dla populacji -5 sygnałów testowych. Można się

oprzeć na przedstawionym powyżej kodzie Matlaba i poniższej funkcji do generowania skoków function [y,kdl] = skoki(n,amplitudy) % generowanie sygnału złożonego ze skoków % Wejścia: % N - długość sygnału % amplitudy - amplitudy skoków % Np. amplitudy = [ -5-5] % Wyjścia: % y - sygnał skokowy % kdl - długość skoku k=length(amplitudy); %liczba skoków kdl=round(n/k); y=ones(kdl,k); for i=:k y(:,i)=y(:,i)*amplitudy(i); end y=y(:); %wyrównanie sygnału do długości N N2=length(y); while(n~=n2) if N2 > N y(end)=[]; else y(end+)=y(end); end N2=length(y); end