Przekształcenia punktowe i geometryczne

Podobne dokumenty
Przeksztaªcenia punktowe i geometryczne

Proste metody przetwarzania obrazu

Komputerowe przetwarzanie obrazu Laboratorium 2 Przykład 1 Informacja na temat obrazu: imfinfo( portret.jpg )

Grafika Komputerowa Wykład 2. Przetwarzanie obrazów. mgr inż. Michał Chwesiuk 1/38

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

Operacje przetwarzania obrazów monochromatycznych

3. OPERACJE BEZKONTEKSTOWE

Cyfrowe przetwarzanie obrazów i sygnałów Wykład 3 AiR III

Przetwarzanie obrazów wykład 2

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

Diagnostyka obrazowa

Implementacja filtru Canny ego

WYKŁAD 3. Przykłady zmian w obrazie po zastosowaniu Uniwersalnego Operatora Punktowego

Diagnostyka obrazowa

POB Odpowiedzi na pytania

Obraz jako funkcja Przekształcenia geometryczne

Diagnostyka obrazowa

Ćwiczenie 6. Transformacje skali szarości obrazów

Laboratorium. Cyfrowe przetwarzanie sygnałów. Ćwiczenie 9. Przetwarzanie sygnałów wizyjnych. Politechnika Świętokrzyska.

Metody komputerowego przekształcania obrazów

Laboratorium Przetwarzania Sygnałów

Laboratorium Cyfrowego Przetwarzania Obrazów

Parametryzacja obrazu na potrzeby algorytmów decyzyjnych

Przekształcenia punktowe

Funkcje analityczne. Wykład 4. Odwzorowania wiernokątne. Paweł Mleczko. Funkcje analityczne (rok akademicki 2017/2018)

ALGORYTMY PRZETWARZANIA OBRAZÓW Projekt. Aplikacja przetwarzająca obrazy z możliwością eksportu i importu do programu MS Excel.

Funkcje analityczne. Wykład 4. Odwzorowania wiernokątne. Paweł Mleczko. Funkcje analityczne (rok akademicki 2016/2017) dla każdego s = (s.

Komputerowe obrazowanie medyczne

Przetwarzanie obrazu. Formaty zapisu obrazu cyfrowego Przetwarzanie geometryczne Przetwarzanie bezkontekstowe

POPRAWIANIE JAKOŚCI OBRAZU W DZIEDZINIE PRZESTRZENNEJ (spatial image enhancement)

Rozpoznawanie Twarzy i Systemy Biometryczne

Analiza obrazu. wykład 3. Marek Jan Kasprowicz Uniwersytet Rolniczy 2009

Kalibracja Obrazów w Rastrowych

Przekształcenia wykresów funkcji

1 Układy równań liniowych

Filtracja liniowa (metody konwolucyjne, tzn. uwzględniające pewne otoczenie przetwarzanego piksla):

Laboratorium Przetwarzania Sygnałów

PRZETWARZANIE SYGNAŁÓW

Operator rozciągania. Obliczyć obraz q i jego histogram dla p 1 =4, p 2 =8; Operator redukcji poziomów szarości

Wyższa Szkoła Informatyki Stosowanej i Zarządzania

Zamiana reprezentacji wektorowej na rastrową - rasteryzacja

Filtracja w domenie przestrzeni

Obrót wokół początku układu współrzędnych o kąt φ można wyrazić w postaci macierzowej następująco

Analiza obrazów - sprawozdanie nr 2

AKWIZYCJA I PRZETWARZANIE WSTĘPNE

Wyższa Szkoła Informatyki Stosowanej i Zarządzania

Funkcje elementarne. Ksenia Hladysz Własności 2. 3 Zadania 5

2 1 3 c c1. e 1, e 2,..., e n A= e 1 e 2...e n [ ] M. Przybycień Matematyczne Metody Fizyki I

czyli Arkuszy / Układów na podstawie modelu w zakładce MODEL

Przetwarzanie obrazów wykład 4

i = [ 0] j = [ 1] k = [ 0]

Co to jest wektor? Jest to obiekt posiadający: moduł (długość), kierunek wraz ze zwrotem.

Histogram obrazu, modyfikacje histogramu

0. OpenGL ma układ współrzędnych taki, że oś y jest skierowana (względem monitora) a) w dół b) w górę c) w lewo d) w prawo e) w kierunku do

AKWIZYCJA I PRZETWARZANIE WSTĘPNE OBRAZU

Przekształcenia geometryczne w grafice komputerowej. Marek Badura

Metody numeryczne Wykład 4

Przekształcenia geometryczne. Mirosław Głowacki Wydział Inżynierii Metali i Informatyki Przemysłowej

Obraz i komputer. Trzy dziedziny informatyki. Podział przede wszystkim ze względu na dane wejściowe i wyjściowe

Laboratorium Cyfrowego Przetwarzania Obrazów

Filtracja obrazu operacje kontekstowe

PRZETWARZANIE SYGNAŁÓW

3. Macierze i Układy Równań Liniowych

Z ostatniego wzoru i zależności (3.20) można obliczyć n6. Otrzymujemy (3.23) 3.5. Transformacje geometryczne

Zagadnienia brzegowe dla równań eliptycznych

9. Dyskretna transformata Fouriera algorytm FFT

Rozciąganie histogramu

Przetwarzanie obrazu

Algebra liniowa z geometrią

III. Układy liniowe równań różniczkowych. 1. Pojęcie stabilności rozwiązań.

WYKŁAD 3 WYPEŁNIANIE OBSZARÓW. Plan wykładu: 1. Wypełnianie wieloboku

LABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI. Wprowadzenie do środowiska Matlab

1 Przestrzeń liniowa. α 1 x α k x k = 0

SIMR 2016/2017, Analiza 2, wykład 1, Przestrzeń wektorowa

Przekształcenia wykresów funkcji

i ruchów użytkownika komputera za i pozycjonujący oczy cyberagenta internetowego na oczach i akcjach użytkownika Promotor: dr Adrian Horzyk

Michał Strzelecki Metody przetwarzania i analizy obrazów biomedycznych (1)

Przetwarzanie obrazów rastrowych macierzą konwolucji

Układy równań i nierówności liniowych

6. FUNKCJE. f: X Y, y = f(x).

φ(x 1,..., x n ) = a i x 2 i +

Rozwiązywanie układów równań liniowych

Metody i analiza danych

Ćwiczenie pochodzi ze strony

Techniki wizualizacji. Ćwiczenie 4. Podstawowe algorytmy przetwarzania obrazów

Elementy grafiki komputerowej. Elementy geometrii afinicznej

dr Mariusz Grządziel 15,29 kwietnia 2014 Przestrzeń R k R k = R R... R k razy Elementy R k wektory;

czyli Arkuszy / Układów na podstawie modelu

Politechnika Świętokrzyska. Laboratorium. Cyfrowe przetwarzanie sygnałów. Ćwiczenie 8. Filtracja uśredniająca i statystyczna.

Księgarnia PWN: Andrzej Jaskulski - AutoCAD 2010/LT Podstawy projektowania parametrycznego i nieparametrycznego

Akademia Górniczo-Hutnicza

Cyfrowe przetwarzanie obrazów i sygnałów Wykład 7 AiR III

ZAGADNIENIA PROGRAMOWE I WYMAGANIA EDUKACYJNE DO TESTU PRZYROSTU KOMPETENCJI Z MATEMATYKI DLA UCZNIA KLASY II

Cyfrowe przetwarzanie obrazów i sygnałów Wykład 2 AiR III

1 Wartości własne oraz wektory własne macierzy

9. BADANIE PRZEBIEGU ZMIENNOŚCI FUNKCJI

Analiza obrazów. Segmentacja i indeksacja obiektów

Synteza i obróbka obrazu. Tekstury. Opracowanie: dr inż. Grzegorz Szwoch Politechnika Gdańska Katedra Systemów Multimedialnych

Transkrypt:

Przekształcenia punktowe i geometryczne 1 Przekształcenia punktowe Przekształcenia punktowe (bezkontekstowe) są to przekształcenia dotyczące stopnia szarości lub nasycenia barwy dla każdego punktu oddzielnie, dla których nie mają wpływu wartości w punktach sąsiednich. 1.1 Liniowe przekształcenia obrazu Liniowe przekształcenie polega na zmianie wartości piksela przy użyciu przekształcenia liniowego. Zaliczamy do nich między innymi operacje dodawania, negacji czy mnożenia przez pewną liczbę. Służą one np. do rozjaśniania obrazu. Należy pamiętać, że przy stosowaniu kodowania uint8 dozwolone wartości są z przedziału 0-255, a dla kodowania double dozwolone są wartości z przedziału 0-1. 1.2 Nieliniowe przekształcenia obrazu Do nieliniowcych przekształceń zaliczamy np. pierwiastkowanie, potęgowanie logarytmowanie. W niektórych przypadkach jest to znacznie skuteczniejsze niż liniowe korekcje. Szczególne znaczenie ma korekcja gamma γ dana wzorem eq.1. Idee działania współczynnika γ na obraz przedstawia rys.1. Nowy(m, n) = Stary(m, n) γ (1) Rysunek 1: Idea działania korekcji γ. Dla γ < 1 zwiększony jest kontrast dla "ciemnej" części obrazu kosztem "jasnej" części. Dla γ > 1 efekt jest odwrotny: zyskujemy kontrast w części "jasnej kosztem "ciemnej". 1

1.3 Wyrównywanie histogramu Histogram wykreśla się poleceniem imhist(obraz). Histogram jest to wykres słupkowy określający ile punktów przybiera daną wartość (intensywność). Wyrównanie histogramu polega na "upodobnieniu" go do histogramu dla rozkładu równomiernego (wszystkie intensywności mają jednakową częstotliwość występowania). Do wyrównywania histogramu służy polecenie histeq(obraz, ilość_klas). Czasami stosuje się wyrównywanie lokalne, tzn. dzieli się obraz na kilka części i każdą wyrównuje oddzielnie. Do tego stosuje się funkcję adapthisteq(obraz, parametry). Do najważniejszych parametrów tego przekształcenia zaliczamy: NumTiles - Wielkość elementu, dla którego wyrównujemy histogram ClipLimits - skalarna wielkość decydująca o kontraście (0,1) NBins - Ilość klas histogramu Range - zakres wyrównywanych wartości Distribution - rodzaj histogramu, do którego będzie normowany obraz: uniform (płaski), Rayleigh (dzwonkowy) i Exponential (krzywa eksponenty). Alpha - parametr rozkładu histogramu, tylko dla Rayleigh i Exponential. 1.4 Normalizacja Normalizacja ma na celu rozciągnięcie zakresu tonalnego obrazu. Jeżeli intensywność punktów na obrazie zajmuje tylko część dozwolonej skali, to możliwe jest rozciągnięcie intensywności tak, by zajmowała pełną skalę. Stosowana jest normalizacja zarówno w wymiarze globalnym, jak i lokalnym. Jeżeli przez M oznaczamy minimum w normalizowanym obszarze, przez N maksimum, a przez L i U odpowiednio minimum i maksimum skali, to intensywność punktu wynosi: ( ) L U Nowy(m, n) = M N (Stary(m, n) M) + L (2) Obraz metodą globalną normalizuje się przy użyciu funkcji: imadjust(obraz, [low_in; high_in], [low_out; high_out], gamma). 1.5 Binaryzacja Binaryzacja to zamiana dowolnego obrazu na obraz logiczny. Stosuje się kilka rodzajów binaryzacji: z dolnym progiem: wszystko poniżej progu: 0, powyżej 1 L(m, n) = { 0 gdy L(m, n) prg 1 gdy L(m, n) > prg z górnym progiem: negatyw binaryzacji z dolnym progiem { 0 gdy L(m, n) > prg L(m, n) = 1 gdy L(m, n) prg z dwoma progami: przypomina funkcję bramkową lub jej negatyw wielokryterialna: kilka progów i tylko niektóre przedziały mają wartość prawda / fałsz. 2

z histerezą: wymaga podania 2 wartości progowych (próg1<próg2), wartość piksela L(m,n) dana jest wzorem: 0 gdy L(m, n) prg1 L(m, n) = s gdy prg1 < L(m, n) prg2 1 gdy L(m, n) > prg2 s - wartość sąsiadujących punktów. automatyczne progowanie metodą maksymalnej entropii Wartość entropii H dla obrazu A definiowana jest poprzez eq3. size(a) H = (A x,y ln A x,y ) (3) x,y=1 Binaryzacja metodą maksymalnej entropii polega na znalezieniu takiej wartości progu k, dzielącej obraz na tło (piksele o intensywności mniejszej lub równej k) i obiekty (o intensywności większej niż k), która maksymalizuje funkcję H(k) (eq.4). 1 N k (obiekt) H(k) = 1 N k (tlo) k (A x,y ln A x,y ) x,y=1 k (A x,y ln A x,y ) + ln N k(tlo) N x,y=1 k (obiekt) (4) gdzie N k (tlo) - ilość elementów tła, a N k (obiekt) - ilość pikseli obiektów uzyskanych przy binaryzacji z progiem k. 2 Przekształcenia geometryczne Do przekształceń geometrycznych zaliczamy między innymi: przesunięcie, obrót, zniekształcenie, odbicia symetryczne, powielanie fragmentów. Mają one wpływ na kształt, wielkość lub wygląd obrazu. 2.1 Przesunięcie o wektor Możliwe są przesunięcia o wektor z dodaniem nowej powierzchni (zwiększenie wymiarów obrazu wyjściowego o wektor) lub przesunięcie w sposób cykliczny z użyciem funkcji circshift(obraz,wektor). 2.2 Obrót Obraz można obracać przy użyciu funkcji imrotate(obraz, kąt w stopniach, opcje). Pierwszą opcją są metody interpolacji nowych danych: najbliższego sąsiada ( nearest ); dwuliniowa ( bilinear ); bikubiczna ( bicubic ). Drugą opcją jest rozmiar wyjściowy obrazu: 3

crop : Obraz wyjściowy ma taki sam rozmiar jak wejściowy. Rogi są obcięte, wolne miejsca wypełnione zerami. loose : Obraz wyjściowy na ogół jest powiększony tak, by zmieścił się cały obraz. Wolne miejsca wypełnione zerami. Opcjami domyślnymi jest nearest, loose. Użycie kąta dodatniego powoduje obrót przeciwnie do kierunku wskazówek zegara. Rotacja obrazu polega na wyliczeniu nowych współrzędnych danego piksela obrazu. Sprowadza się to do wymnożenia wektora współrzędnych przez macierz rotacji: [ ] [ ] [ ] x obr cos θ sin θ x = (5) sin θ cos θ y y obr 2.3 Odbicia symetryczne Odbicia symetryczne mogą być względem prostej pionowej (fliplr (obraz)) lub poziomej (flipud (obraz)). Odbicia te (a zwłaszcza odbicie poziome) mają zastosowanie podczas kalibracji (ang. registering) zdjęcia (przypisania współrzędnych, np. geograficznych, do poszczególnych pikseli obrazu). 2.4 Dodawanie wierszy, kolumn do obrazu Dodawanie kolumn i wierszy do obrazu ma na celu głównie podczas filtracji w celu zmniejszenia efektów brzegowych. Służy do tego polecenie padarray (obraz, rozmiar, metoda, kierunek); Rozmiar w formie wektora [x y] mówi, ile wersów x i ile kolumn y należy dodać. Do metod zaliczamy: circular - doklejanie cykliczne replicate - doklejanie poprzez kopiowanie skrajnych wersów / kolumn symmetric - odbicie symetryczne. Istnieją 3 kierunki: pre : doklejanie z góry i z lewej; post : zdołu i z prawej; both : z obu jednocześnie. 2.5 Zmiana kształtu i wymiarów obrazu Zmiana wymiarów obrazu odbywa się przy wykorzystaniu polecenia reshape (obraz, [nowy rozmiar], opcja );. Do poprawnego działania funkcji musi być spełniony warunek zachowania powierzchni: (x old y old = x new y new ) Do zmiany kształtu, bez konieczności spełnienia powyższego warunku może służyć polecenie imresize(obraz, [nowy rozmiar], opcja ). Zmiana kształtu może odbywać się przy wykorzystaniu dwóch poleceń: maketform (typ, parametry) do tworzenia maski przekształcającej i imtransform (obraz, forma);" do zastosowania maski. W nowszych wersjach polecenie maketform zostało zastąpione poleceniami: affine2d([ macierz 3x3 ]) i projective2d([ macierz 3x3 ]). W przypadku afinicznym, ostatnia kolumna musi mieć wartości [0; 0; 1], a dane w trzecim wierszu nie mają 4

wpływu na obraz. Polecenie imtransform zostało zastąpione natomiast poleceniem imwarp(obraz, maska). Wyróżniamy następujące typy transformacji: ( affine,[t A T B ; T C T D ; T E T F ]) - przekształcenie afiniczne: każde różnowartościowe przekształcenie geometryczne, które wszystkie proste zawarte w dziedzinie tego odwzorowania przekształca na proste (rys.2). Przekształcenie afiniczne dane jest wzorem: [x new y new ] = [x y 1] T (6) Rysunek 2: Parametry przekształcenia afinicznego (źródło:wróbel & Koprowski, 2004) ( projective,[t A T D T G ; T B T E T H ; T C T F T I ]): takie przekształcenie, gdzie każde punkty leżące na jednej prostej przechodzą w punkty leżące na drugiej prostej (rys.3). Projekcja dane jest wzorem: [x new y new z new ] = [x y w] T (7). W przypadku obrazów 2D, powyższe równania można zapisać w następujący sposób: x new = T A x + T B y + T C T G x + T H y + T I y new = T D x + T E y + T F T G x + T H y + T I (8) Rysunek 3: Parametry projekcji (źródło:wróbel & Koprowski, 2004) custom box composite 5

2.6 Rozpoznanie transformacji geometrycznej Polecenie fitgeotrans pozwala na estymację wartości parametrów transformacji (np. obrotu czy skalowania). W tym celu konieczne jest określenie par punktów na dwóch obrazach (przed i po operacji) odpowiadającym tej samej lokalizacji. Do tej operacji można użyć funkcji cpselect. W zależności od ilości wyznaczonych par punktów, możliwa jest estymacja wartości parametrów przekształceń: Nonreflective similarity - dla dwóch i więcej par punktów Affine - dla 3 i więcej par punktów projective - dla 4 i więcej par punktów 6