TEORIA I ZASTOSOWANIA ANALIZY FALKOWEJ OBRAZÓW cz. II Prof. dr hab. Jan T. Białasiewicz.

Slides:



Advertisements
Podobne prezentacje
Wspólne skoroszytów Wspólne użytkowanie skoroszytów Arkusze i skoroszyty Tworzenie nowego skoroszytu Obliczenia w skoroszytach Przeglądanie wzorów w skoroszytach.
Advertisements

Praca kontrolna Oprogramowania biurowego z Analiza danych z list i tabel. Analiza danych jest to wyodrębnianie najistotniejszych danych z, przeważnie.
MS Access 2003 Kwerendy Paweł Górczyński.
MS Access 2000 Kwerendy Piotr Górczyński 25/08/2001.
-Microsoft PowerPoint -Microsoft Word -Microsoft Excel
Prezentacja o PREZENTACJACH^^ Dorota Fiedor 3F
PRZYKŁAD ROZWIĄZANIA RAMY
PRZYKŁAD ROZWIĄZANIA TARCZY
„Zasady formatowania plików w formacie Microsoft Word”
Algorytmy.
Opracowała: Iwona Kowalik
ADRESOWANIE WZGLĘDNE I BEZWZGLĘDNE Ćwiczenia
ARKUSZ KALKULACYJNY JUŻ PROŚCIEJ SIĘ NIE DA Wersja OFFICE 2010
Poznaj bliżej program Microsoft Office Word 2007
Komputerowe metody przetwarzania obrazów cyfrowych
Opracowanie: mgr Barbara Benisz
Opracowanie Dorota Libera
Elementy Rachunku Prawdopodobieństwa i Statystyki
Częstotliwość próbkowania, aliasing
Formatowanie tabel. Formatowanie warunkowe. Wstawianie funkcji.
Urzekające kwiatki w gimpie Samouczek
Sterowanie – metody alokacji biegunów II
Arkusz kalkulacyjny MS Excel
Tytuł:Poradnik do programu PowerPoint?
EDYTOR GRAFIKI "PAINT" Prezentacja ma na celu zapoznanie uczniów z podstawowymi funkcjami edytora grafiki Paint.
Formatowanie tekstu w Microsoft Word
Temat 5: Pozycjonowanie elementów
Wzorce slajdów programu microsoft powerpoint
Elementy multimedialne na stronie
Aplikacje internetowe Grafika na stronach WWW ciąg dalszy Atrybuty znacznika body.
Aplikacje internetowe
Metody odszumiania sygnałów
Sieci neuronowe, falki jako przykłady metod analizy sygnałów
Excel Wykresy – różne typy, wykresy funkcji.
Informatyka +.
Animacje/rożne orientacje slajdów power point 2013
Obróbka obrazu w komputerze
Jak narysować wykres korzystając z programu Excel?
Formatowanie tabel. Formatowanie warunkowe. Wstawianie funkcji.
Sprawdzanie poczty głosowej 1.Kliknij kartę Telefon. Zostaną wyświetlone wiadomości i informacje o osobach dzwoniących. 2.Zatrzymaj wskaźnik na wiadomości.
prezentacja multimedialna
Wzorce slajdów, animacje, różne orientacje slajdów
Kolumny, tabulatory, tabele, sortowanie
SAMOUCZEK PRZYKŁAD ZASTOSOWANIA PROGRAMU DO MODELOWANIA TARCZ.
PRZYKŁAD OBLICZENIOWY PRĘT
PRZYKŁAD ROZWIĄZANIA KRATOWNICY
© 2012 Microsoft Corporation. Wszelkie prawa zastrzeżone. Dodawanie kontaktu Lista Kontakty upraszcza komunikację i umożliwia sprawdzenie statusu obecności.
Znajdowanie pokoju i wchodzenie do niego Skorzystaj z funkcji wyszukiwania programu Lync w celu znalezienia pokojów, do których masz dostęp. 1.W oknie.
Wykład 4 Dr Aneta Polewko-Klim Dr Aneta Polewko-Klim
Operacje na plikach i folderach
Pakiety numeryczne Graphical User Interface Łukasz Sztangret Katedra Informatyki Stosowanej i Modelowania.
Tworzenie wykresów część I
Przewodnik Wprowadzenie do
Filtrowanie, Funkcje bazodanowe
Wstawianie funkcji i formatowanie tabel w Excelu FORMATOWANIE TABEL, ORAZ FORMATOWANIE WARUNKOWE.
Tabele Przestawne Adam Wójcik Tomasz Kowalski.  Czym Tabele Przestawne są?  Jak je używać?  Zadania.
Przewodnik Wyszukiwanie eKsiążek EBSCO.
 1. Logujemy się do YouTube i przesyłamy film na serwer (klikamy na Prześlij film ). W czasie przetwarzania pliku możemy uzupełnić informacje o wideo.
Istotą kolumn jest przedzielenie strony na kilka części położonych obok siebie. Ilość kolumn jest generowana przez użytkownika, odpowiednio dla jego potrzeb.
TEORIA I ZASTOSOWANIA ANALIZY FALKOWEJ OBRAZÓW cz. I
TEORIA I ZASTOSOWANIA ANALIZY FALKOWEJ OBRAZÓW cz. III Prof. dr hab. Jan T. Białasiewicz.
 Formuła to wyrażenie algebraiczne (wzór) określające jakie operacje ma wykonać program na danych. Może ona zawierać liczby, łańcuchy znaków, funkcje,
Wykład 4 Dr Aneta Polewko-Klim Dr Aneta Polewko-Klim
czyli geometria (i nie tylko) w sztuce. Fraktale w Logo Komeniuszu
 Cele operacyjne:  Uczeń:   doskonali:   · zasady tworzenia tabeli;  · sposoby formatowania tekstu w programie Word;  · umiejętność wyrównania.
Przykładowe zadanie egzaminacyjne.
ROBOTYKA - NAUKA PROGRAMOWANIA KODOWANIE PRZEZ RYSOWANIE
Opracował Tomasz Durawa
Wyższa Szkoła Ekologii i Zarządzania
ASSISTENZA TECNICA LR Instalacja oprogramowania , programowanie i obsługa systemu Direct Plus Landirenzo do obsługi silników z bezpośrednim wtryskiem.
Zapis prezentacji:

TEORIA I ZASTOSOWANIA ANALIZY FALKOWEJ OBRAZÓW cz. II Prof. dr hab. Jan T. Białasiewicz

Jednowymiarowa analiza falkowa ciągła W Wavelet Toolbox analiza falkowa ciągła realizowana jest przez pojedynczą funkcję: cwt. cwt W tej części dowiemy się jak Załadować sygnał Wykonać analizę falkową ciągłą tego sygnału Otrzymać reprezentację graficzną współczynników Otrzymać reprezentację graficzną współczynników dla ustalonej wartości skali Otrzymać reprezentację graficzną maksimów lokalnych współczynników w funkcji skali Wybrać jeden z przedstawionych na ekranie wykresów Zastąpić skalę odpowiadającą jej pseudoczęstotliwością Powiększyć detal Zobrazować współczynniki w trybie normalnym lub bezwzględnym Wybrać wartości skali, dla których wykonujemy analizę

Analiza ciągła przy użyciu linii rozkazowej Załadujemy sygnał sinusoidalnyn z szumem: load noissin; c = cwt(noissin,1:48,'db4'); c = cwt(noissin,1:48,'db4','plot');

Analiza ciągła przy użyciu linii rozkazowej Pojawia się reprezentacja graficzna reprezentująca jedynie część wysokoczęstotliwościową sygnału czy też szumu. Nie pokazuje ona okresowego charakteru sygnału.

Analiza ciągła przy użyciu linii rozkazowej Drugi argument cwt pozwala dokładnie ustalić wartości skal. Powtórzmy analizę używając co drugiej całkowitej wartości skali.od 2 do 128. Piszemy c = cwt(noissin,2:2:128,'db4','plot'); Ten obrazek daje nam jaśniejszą informację o tym co dzieje sie z sygnałem, podjreślając jego okresowość.

Analiza ciągła przy użyciu interfejsu graficznego 1. napisz wavemenu

Analiza ciągła przy użyciu interfejsu graficznego Kliknij Continuous Wavelet 1-D menu. 2. Załaduj sygnał. Wybierz opcję File, Load Signal. Gdy pojawi się okno dialogu Load Signal, wybierz MAT-file noissin.mat, który powinien znajdować sie w katalogu MATLAB toolbox/wavelet/wavedemo. Kliknij OK. Zakłócony szumem sygnał sinusoidalny został załadowany do narzędzia Continuous Wavelet 1- D tool. Standardowa wartość okresu próbkowania jest równa 1 (sek).

Analiza ciągła przy użyciu interfejsu graficznego 3. Wyznacz transformatę falkową ciągłą. Najpierw ustaw te same parametry, które wybraliśmy w poprzedniej sekcji używając linii rozkazowej. Kliknij Analyze.

Analiza ciągła przy użyciu interfejsu graficznego

4. Popatrz na współczynniki falkowe przy ustalonej skali (częstotliwości). Wybierz inną skalę a = 40 przez prawe kliknięcie na tę wartość na grafie współczynników. Krok 9 (poniżej) wyjaśnia dokładniej jak wybrać pożądaną wartość skali. Kliknij New Coefficients Line. Narzędzie zaktualizuje wykres.

Analiza ciągła przy użyciu interfejsu graficznego 5. Popatrz na trajektorie wartości maksymalnych współczynników falkowych (Maxima Line). Kliknij Refresh Maxima Line, zostaną wyświetlone połączone maksyma lokalne współczynników w funkcji skali od a = 40 do a=1. Przy naciśniętym prawym klawiszu myszki, pozycja (X) jej kursora i odpowiadająca tej pozycji skala (Sca) mogą być odczytane w ramce Info (na dole ekranu).

Analiza ciągła przy użyciu interfejsu graficznego

6. Przełącz się ze skali na pseudoczęstotliwość. Za pomocą klawisza w prawej części ekranu, wybierz Frequencies zamiast Scales. Znowu tak jak poprzednio położenie kursora na wykresie (przy naciśnietym prawym klawiszu) podane jest jako pozycja (X) and częstotliwość (Frq) w Hz. Pozwala to interpretować skalę posługując sie związaną z nią pseudoczęstotliwością, której wartość zależy od wybranej falki i częstotliwości próbkowania.

Analiza ciągła przy użyciu interfejsu graficznego

Usuń z ekranu dolne dwa okienka zmieniając wybór opcji w ramce Selected Axes.

Analiza ciągła przy użyciu interfejsu graficznego 7. Uzyskaj powiększenie wybranego fragmentu. Przy naciśniętym lewym klawiszu rozciągnij okienko na ten fragment sygnału, który chcesz powiększyć.

Analiza ciągła przy użyciu interfejsu graficznego Kliknij klawisz X+ (znajdujący się na dole ekranu), aby uzyskać powiększenie tylko w poziomie.

Analiza ciągła przy użyciu interfejsu graficznego 8. Popatrz na współczynniki lub ich wartości bezwzględne.  Narzędzie Continuous Wavelet 1-D pozwala uzyskać graf współczynników falkowych lub też ich wartości bezwzględnych. W Coloration Mode menu wybierz dowolny spośród absolute modes lub normal modes.  W normal modes, skala kolorów przebiega między minimalną i maksymalną wartością współczynników. W absolute modes, kolory są skalowane między zerem i maksymalną wartością bezwaględną współczynników.

Analiza ciągła przy użyciu interfejsu graficznego Graf współczynników zostaje wyświetlony w wybranym trybie (mode).

Jednowymiarowa analiza falkowa dyskretna Analiza-Funkje dekompozycji dwtdwtDekompozycja jednopoziomowa wavedecDekompozycja wielopoziomowaavedec wmaxlevMaksymalny poziom dekompozycjimaxlev Synteza-Funkcje rekonstrukcji idwtidwtRekonstrukcja jednopoziomowa waverecRekonstrukcja pełnaaverec wrcoefRekonstrukcja selektywnarcoef upcoefRekonstrukcja pojedynczapcoef

Jednowymiarowa analiza falkowa dyskretna Struktura dekompozycji detcoefWyodrębnianie współczynników detalietcoef appcoefWyodrębnianie współczynników aproksymacjippcoef upwlevJednopoziomowa rekonstrukcja struktury dekompozycjipwlev Usuwanie szumu i kompresja ddencmp Wyznaczanie parametrow standardowych dla usuwania szumu i kompresjidencmp wbmpenWyznaczanie globalnego progu dla usuwania szumubmpen z sygnałów 1-D i 2-D wdcbmProgi dla 1-D przy użyciu strategii Birgé-Massartdcbm wdencmpUsuwanie szumu i kompresja falkowadencmp wdenAutomatyczne usuwanie szumu za pomocą falekden wthrmngrwthrmngrManager ustawiania progów

Analiza jednowymiarowa przy użyciu linii rozkazowej W tym przykładzie analizowany jest rzeczywisty sygnał – zużycie energii elektrycznej mierzone w ciągu trzech dni. Sygnał ten jest szczególnie interesujący ze względu na występujący w nim szum, wywołany niesprawnością urządzenia pomiarowego. Zobaczymy jak szum ten może być usuniety przez analizę falkową.

Analiza jednowymiarowa przy użyciu linii rozkazowej 1. Załaduj sygnał. load leleccum; s = leleccum(1:3920); l_s = length(s); 2. Wykonaj jednopoziomową dekompozycję sygnału. [cA1,cD1] = dwt(s,'db1');

Analiza jednowymiarowa przy użyciu linii rozkazowej 3. Wykorzystując współczynniki falkowe, skonstruuj aproksymacje i detale (poziomu 1) : A1 = upcoef('a',cA1,'db1',1,l_s); D1 = upcoef('d',cD1,'db1',1,l_s); lub A1 = idwt(cA1,[],'db1',l_s); D1 = idwt([],cD1,'db1',l_s); 4. Przedstaw graficznie aproksymację i detal: subplot(1,2,1); plot(A1); title('Approximation A1') subplot(1,2,2); plot(D1); title('Detail D1')

Analiza jednowymiarowa przy użyciu linii rozkazowej

5. Odtwórz sygnał przy użyciu odwrotnej transformaty falkowej. A0 = idwt(cA1,cD1,'db1',l_s); err = max(abs(s-A0)) err = e Wykonaj wielopoziomową dekompozycję falkową sygnału. [C,L] = wavedec(s,3,'db1'); Otrzymujemy wektor C, będący konkatenacją współczynników wszystkich składowych dekompozycji trzeciego poziomu, to znaczy aproksymacji trzeciego poziomu i detali pierwszych trzech poziomów. Wektor L specyfikuje długość każdej ze składowych.

Analiza jednowymiarowa przy użyciu linii rozkazowej

7Wyodrębnij współczynniki aproksymacji i detali. Aproksymację poziomu 3 wyodrębnia z C następująca instrukcja: cA3 = appcoef(C,L,'db1',3); Detale poziomu 3, 2 i 1 otrzymujemy z wektora C pisząc cD3 = detcoef(C,L,3); cD2 = detcoef(C,L,2); cD1 = detcoef(C,L,1); lub [cD1,cD2,cD3] = detcoef(C,L,[1,2,3]);

Analiza jednowymiarowa przy użyciu linii rozkazowej lub [cD1,cD2,cD3] = detcoef(C,L,[1,2,3]); Wyniki przedstawia poniższy rysunek, który pokazuje sygnał s, współczynniki aproksymacji poziomu 3 (cA3) i współczynniki detali poziomów 3 do 1 (cD3, cD2 and cD1), od góry do dołu.

Analiza jednowymiarowa przy użyciu linii rozkazowej cA3 cD3 cD2 cD1

Analiza jednowymiarowa przy użyciu linii rozkazowej 8. Zrekonstruuj aproksymację poziomu 3 i detale poziomów 1, 2 i 3: A3 = wrcoef('a',C,L,'db1',3); D1 = wrcoef('d',C,L,'db1',1); D2 = wrcoef('d',C,L,'db1',2); D3 = wrcoef('d',C,L,'db1',3);

Analiza jednowymiarowa przy użyciu linii rozkazowej 9. Zilustruj graficznie wyniki dekompozycji wielopoziomowej. subplot(2,2,1); plot(A3); title('Approximation A3') subplot(2,2,2); plot(D1); title('Detail D1') subplot(2,2,3); plot(D2); title('Detail D2') subplot(2,2,4); plot(D3); title('Detail D3')

Analiza jednowymiarowa przy użyciu linii rozkazowej

10. Zrekonstruuj sygnał oryginalny posługując się dekompozycją poziomu 3. A0 = waverec(C,L,'db1'); err = max(abs(s-A0)) err = e-013

Analiza jednowymiarowa przy użyciu linii rozkazowej 11. Zgrubne usuwanie szumu z sygnału. Aproksymacja A3 poziomu 3 jest stosunkowo”czysta” i jest podobna do sygnału oryginalnego. Aby porównać aproksymację i sygnał oryginalny, piszemy subplot(2,1,1);plot(s); title('Original'); axis off subplot(2,1,2);plot(A3); title('Level 3 Approximation'); axis off

Analiza jednowymiarowa przy użyciu linii rozkazowej Oczywiście, pozbywając się całej informacji wysokoczęstotliwościowej, straciliśmy również wiele „ostrych” cech sygnału oryginalnego.

Analiza jednowymiarowa przy użyciu linii rozkazowej 12. Usuń szum posługując sie eliminacj.a progową. Otrzymujemy reprezentację graficzną detali D1, D2, and D3: subplot(3,1,1); plot(D1); title('Detail Level 1'); axis off subplot(3,1,2); plot(D2); title('Detail Level 2'); axis off subplot(3,1,3); plot(D3); title('Detail Level 3'); axis off

Analiza jednowymiarowa przy użyciu linii rozkazowej Zauważmy, że cD1, cD2, and cD3 są po prostu wektorami MATLABa, więc możemy bezpośrednio wykonywać operacje na każdym z wektorów, zastępując wartość każdego elementu ułamkiem wartości maksymalnej lub wartości średniej wektora. Następnie możemy zrekonstruować nowe sygnały detali D1, D2 i D3 ze współczynników poddanych eliminacji progowej.

Analiza jednowymiarowa przy użyciu linii rozkazowej Aby usunąć szum, użyj instrukcję ddencmp do wyznaczenia standardowych parametrów i instrukcję wdencmp do realizacji właściwego usunięcia szumu:ddencmpwdencmp [thr,sorh,keepapp] = ddencmp('den','wv',s); clean = wdencmp('gbl',C,L,'db1',3,thr,sorh,keepapp); Zauważ, że wdencmp wykorzystuje wyniki dekompozycji (C and L), uzyskane w kroku 6. Specyfikujemy również, że do analizy używaliśmy falkę db1 jak również deklarujemy opcję globalną eliminacji progowej 'gbl'. Więcej informacji można uzyskać zapoznając się z opisem instrukcji ddencmp i wdencmp.wdencmp6 ddencmpwdencmp

Analiza jednowymiarowa przy użyciu linii rozkazowej subplot(2,1,1); plot(s(2000:3920)); title('Original') subplot(2,1,2); plot(clean(2000:3920)); title('De- noised') Zauważmy, że usunęliśmy szum nie pozbywając się jednocześnie „ostrych” detali sygnału oryginalnego. Przykład ten pokazuje jak silnym narzędziem jest analiza falkowa.

Analiza jednowymiarowa przy użyciu interfejsu graficznego 1. Otwórz interfejs graficzny wavelet toolbox pisząc wavemenu w linii rozkazowej. 2. Kliknij element Wavelet 1-D. 3. Zaladuj sygnał leleccum. 4. Wykonaj jednopoziomową dekompozycję falkową.

Analiza jednowymiarowa przy użyciu interfejsu graficznego

5. Powiększ istotny element wykresu.

Analiza jednowymiarowa przy użyciu interfejsu graficznego 6. Wykonaj dekompozycję wielopoziomową. Wybierz 3 w Level menu po prawej stronie un góry, a następnie znowu kliknij Analyze. „Full Decomposition Mode” jest trybem standardowym ilustracji graficznej

Analiza jednowymiarowa przy użyciu interfejsu graficznego Są również inne możliwości  "Separate Mode," w którym detale i aproksymacje pokazane są w oddzielnych kolumnach.  "Superimpose Mode," w ktorym detale, nałożone na siebie, pokazane są na jednym wykresie różnymi kolorami. Aproksymacje są pokazane w podobny sposób.  "Tree Mode," w którym pokazane jest drzewo dekompozycji i jeden wybrany dodatkowy element. Kliknij na drzewo dekompozycji w celu wybrania tego elementu.  "Show and Scroll Mode," który pokazuje trzy okna. W pierwszym jest sygnał oryginalny nałożony na wybraną aproksymację. Drugie okno pokazuje wybrany detal. Trzecie okno pokazuje współczynniki falkowe.  "Show and Scroll Mode (Stem Cfs)" jest bardzo podobny do "Show and Scroll Mode" z tym, że w trzecim oknie pokazuje współczynniki falkowe w postaci wykresów typu „stem” zamiast kolorowych bloków.

Analiza jednowymiarowa przy użyciu interfejsu graficznego

7. Usuń szum z sygnału. Kliknij De-noise. Pojawi się okno Wavelet 1-D De-noising. Do dyspozycji jest wiele opcji, które służą do wymaganego dostrojenia algorytmu usuwania szumu. Dokonajmy wyboru standardowego przez kliknięcie De-noise. Pojawi się sygnał pozbawiony szumu, nałożony na sygnał oryginalny. Zostaną również wyświetlone współczynniki falkowe obu sygnałów.

Analiza jednowymiarowa przy użyciu interfejsu graficznego

8. Popraw wyniki analizy. Używając narzędzia graficznego łatwo jest w dowolnej chwili poprawić wyniki analizy. Dotychczas zajmowaliśmy sie analizą poziomu 3, używając db1. Poprawmy naszą analizę sygnału konsumpcji energii elektrycznej używając falke db3 na poziomie 5. Wybieramy 5 w Level menu i wybieramy db3 z Wavelet menu. Klikamy Analyze. 9. Dokonaj kompresji sygnału: kliknij Compress. Pojawia się okno kompresji.

Analiza jednowymiarowa przy użyciu interfejsu graficznego

Aby w sposób szybki i łatwy wykonać kompresję, skorzystamy ze standardowej kompresji globalnej. Klikniemy Compress. Sygnał konsumpcji energii elektrycznej zostaje ponownie wyświetlony na czerwono z nałożoną wersją po kompresji w kolorze żółtym. Poniżej wykonaliśmy powiększenie, żeby lepiej widzieć fragment sygnału zkłócony szumem.

Analiza jednowymiarowa przy użyciu interfejsu graficznego Widać, że proces kompresji usunąłwiększość szumu, ale zachował 99.74% energii sygnału oryginalnego. Automatyczna eliminacja progowa okazała się bardzo efektywna zerując wszystkie oprócz 3.2% współczynników falkowych.

Analiza jednowymiarowa przy użyciu interfejsu graficznego 10. Pokaż rezidua. Kliknij Residuals w oknie Wavelet 1-D Compression.

Analiza jednowymiarowa przy użyciu interfejsu graficznego Wyświetlone statystyki obejmują miary tendencji (wartość średnia, mode, median) i dyspersji (zakres, odchylenie standardowe). In addition, the tool provides frequency- distribution diagrams (histograms and cumulative histograms). Included also are time-series diagrams: autocorrelation function and spectrum. The same feature exists for the Wavelet 1-D De-noising tool.

Dwuwymiarowa dyskretna analiza falkowa Funkcje Analizy-Dekompozycji Nazwa Funkcji Przeznaczenie dwt2Dekompozycja jednopoziomowawt2 wavedec2wavedec2Dekompozycja wielopoziomowa wmaxlevwmaxlevMaksymalny poziom dekompozycji falkowej Funkcje Syntezy-Rekonstrukcji idwt2idwt2 Rekonstrukcja jednopoziomowa waverec2waverec2 Rekonstrukcja pełna wrcoef2wrcoef2 Rekonstrukcja selektywna upcoef2upcoef2 Rekonstrukcja pojedyncza Decomposition Structure Utilities detcoef2detcoef2 Wyodrębnianie współczynników detali appcoef2appcoef2 Wyodrębnianie współczynników aproksymacji upwlev2upwlev2 Rekonstrukcja struktury dekompozycji

Dwuwymiarowa dyskretna analiza falkowa Usuwanie Szumu i Kompresja Nazwa FunkcjiPrzeznaczenie ddencmpddencmp Wyznacz parametry standardowe dla usuwania szumu i kompresji wbmpenwbmpen Próg globalny dla usuwania szumu 1-D i 2-D wdcbm2wdcbm2 `Progi dla falek 2-D przy użyciu strategii Birgé-Massart wdencmpwdencmp Usuwanie szumu i kompresja falkowa wthrmngrwthrmngr Manager ustawiania progów

Analiza dwuwymiarowa przy uzyciu linii rozkazowej 1. Załaduj obraz. load wbarb; 2. Wyświetl obraz. Type image(X); colormap(map); colorbar;

Analiza dwuwymiarowa przy uzyciu linii rozkazowej 3.Przetwórz „indexed image” na „grayscale image.” Jeśli „ colormap” jest gładka, wówczas „indexed image” może być bezpośrednio poddany transformacie falkowej. 4. Wykonaj jednopoziomową dekompozycję falkową. [cA1,cH1,cV1,cD1] = dwt2(X,'bior3.7'); Rozkaz ten generuje macierze pierwszego poziomu współczynników aproksymacji (cA1) oraz detali poziomych, pionowych i diagonalnych (cH1,cV1,cD1, odpowiednio).

Analiza dwuwymiarowa przy uzyciu linii rozkazowej 5. Posługując się współczynnikami zrekonstruuj i wyświetl aproksymację i detale. Aby wykonać jednopoziomową rekonstrukcję aproksymacji i detali (A 1, H 1, V 1, and D 1 ) posługując sie współczynnikami cA 1, cH 1, cV 1, and cD 1, napisz A1 = upcoef2('a',cA1,'bior3.7',1); H1 = upcoef2('h',cH1,'bior3.7',1); V1 = upcoef2('v',cV1,'bior3.7',1); D1 = upcoef2('d',cD1,'bior3.7',1);

Analiza dwuwymiarowa przy uzyciu linii rozkazowej lub sx = size(X); A1 = idwt2(cA1,[],[],[],'bior3.7',sx); H1 = idwt2([],cH1,[],[],'bior3.7',sx); V1 = idwt2([],[],cV1,[],'bior3.7',sx); D1 = idwt2([],[],[],cD1,'bior3.7',sx); Aby wyświetlić wyniki dekompozycji jednopoziomowej, napisz colormap(map); subplot(2,2,1); image(wcodemat(A1,192)); title('Approximation A1') subplot(2,2,2); image(wcodemat(H1,192)); title('Horizontal Detail H1') subplot(2,2,3); image(wcodemat(V1,192)); title('Vertical Detail V1') subplot(2,2,4); image(wcodemat(D1,192)); title('Diagonal Detail D1')

Analiza dwuwymiarowa przy uzyciu linii rozkazowej

6. Zrekonstruuj obraz za pomocą jednopoziomowej transformaty odwrotnej. Xsyn = idwt2(cA1,cH1,cV1,cD1,'bior3.7'); Obraz oryginalny zostaje zrekonstruowany przy uzyciu współczynników pierwszego poziomu aproksymacji i detali. 7. Wykonaj dekompozycję wielopoziomową. [C,S] = wavedec2(X,2,'bior3.7'); Współczynniki w wyniku konkatenacji tworzą wektor C. Argument S zawiera informację o każdym elemencie tego wektora.

Analiza dwuwymiarowa przy uzyciu linii rozkazowej 8. Wyodrębnij współczynniki aproksymacji i detali. Aby wyodrębnić z C współczynniki aproksymacji poziomu 2, piszemy cA2 = appcoef2(C,S,'bior3.7',2); Aby wyodrębnić detale z C, piszemy cH2 = detcoef2('h',C,S,2); cV2 = detcoef2('v',C,S,2); cD2 = detcoef2('d',C,S,2); cH1 = detcoef2('h',C,S,1); cV1 = detcoef2('v',C,S,1); cD1 = detcoef2('d',C,S,1); lub [cH2,cV2,cD2] = detcoef2('all',C,S,2); [cH1,cV1,cD1] = detcoef2('all',C,S,1);

Analiza dwuwymiarowa przy uzyciu linii rozkazowej 9. Rekonstrukcja aproksymacji poziomu 2 i detali poziomu 1 i 2. A2 = wrcoef2('a',C,S,'bior3.7',2); H1 = wrcoef2('h',C,S,'bior3.7',1); V1 = wrcoef2('v',C,S,'bior3.7',1); D1 = wrcoef2('d',C,S,'bior3.7',1); H2 = wrcoef2('h',C,S,'bior3.7',2); V2 = wrcoef2('v',C,S,'bior3.7',2); D2 = wrcoef2('d',C,S,'bior3.7',2);

Analiza dwuwymiarowa przy uzyciu linii rozkazowej 10. Wyświetl wyniki dekompozycji wielopoziomowej. colormap(map); subplot(2,4,1);image(wcodemat(A1,192)); title('Approximation A1') subplot(2,4,2);image(wcodemat(H1,192)); title('Horizontal Detail H1') subplot(2,4,3);image(wcodemat(V1,192)); title('Vertical Detail V1') subplot(2,4,4);image(wcodemat(D1,192)); title('Diagonal Detail D1') subplot(2,4,5);image(wcodemat(A2,192)); title('Approximation A2') subplot(2,4,6);image(wcodemat(H2,192)); title('Horizontal Detail H2') subplot(2,4,7);image(wcodemat(V2,192)); title('Vertical Detail V2') subplot(2,4,8);image(wcodemat(D2,192)); title('Diagonal Detail D2')

Analiza dwuwymiarowa przy uzyciu linii rozkazowej

11. Wykorzystując dekompozycję wielopoziomową, zrekonstruuj obraz oryginalny. X0 = waverec2(C,S,'bior3.7'); 12. Wykonaj kompresję obrazu i wyświetl go. [thr,sorh,keepapp] = ddencmp('cmp','wv',X); [Xcomp,CXC,LXC,PERF0,PERFL2] = wdencmp('gbl',C,S,'bior3.7',2,thr,sorh,keepapp); Rozkaz ddencmp używany jest do wyznaczenia parametrów standardowych oryginalnego obrazu X. Rozkaz wdencmp operuje na wynikach dekompozycji (C i S). W końcu, specyfikujemy globalną opcję progów 'gbl'.ddencmp

Analiza dwuwymiarowa przy uzyciu linii rozkazowej Aby zobaczyć wynik kompresji obok obrazu oryginalnego,piszemy colormap(map); subplot(121); image(X); title('Original Image'); axis square subplot(122); image(Xcomp); title('Compressed Image'); axis square

Analiza dwuwymiarowa przy uzyciu linii rozkazowej PERF0 PERF0 = To jest procentowa ilość wyzerowanych współczynników falkowych. PERFL2 PERFL2 = To jest procentowa ilość zachowanej energii obrazu.

Analiza dwuwymiarowa przy użyciu interfejsu graficznego Podobne wyniki można uzyskać posługując się interfejsem graficznym, ale jest łatwo uzyskać powiększenie detali:

Analiza dwuwymiarowa przy użyciu interfejsu graficznego Popatrzmy na wynik kompresji wyświetlony obok obrazu oryginalnego. Zauważmy, że kompresja eliminuje prawie połowę współczynników, a mimo to nie zauważamy pogorszenia jakości obrazu.