Przetwarzanie obrazu Formaty zapisu obrazu cyfrowego Przetwarzanie geometryczne Przetwarzanie bezkontekstowe
Zapis obrazu rastrowego Sprowadza się do zapisu barw poszczególnych punktów Główne cechy: ilość dostępnych barw na piksel stosowana kompresja (stratna/bezstratna) zdolność do przechowywania dodatkowych informacji przeznaczenie (np. obrazy RMI)
początki - Format rastrowy GIF Format GIF (Graphic Interchange Format) zdefiniowano około 1987 roku jako pierwszy uniwersalny format wymiany grafiki między różnymi systemami Jego cechą szczególną jest zapisywanie kolorów pikseli za pomocą indeksów (kolor indeksowany / indexed).
Format rastrowy GIF Kolory indeksowane Index R G B 1 213 124 87 2 123 231 222 3 154 1 234 1 2 3 1 4 3 4 4 3 6 4 8 2 2 1 7 1 2 6 5 5 8 2 5 3 4 2 3 8 6
Przetwarzanie obrazu cyfrowego Format rastrowy GIF Paleta może zawierać maksymalnie 256 kolorów dzięki czemu indeks ma wielkość 1 bajta, co znacząco wpływa na wielkość pliku Możliwe jest zmniejszenie wielkości palety i wykorzystywanie mniejszej ilości bitów do zapisu indeksów
Format rastrowy GIF W formacie GIF wprowadzono pojęcie przeźroczystości. Pewnym indeksom (a wiec kolorom) można przypisać cechę przeźroczysty. Piksele o tym indeksie nie są wyświetlane, zamiast nich widać kolor tła. W ten sposób uzyskano możliwość zapisu obrazów o innych kształtach niż prostokąt.
Format rastrowy GIF Przeźroczystość Dowolne tło. Dowolne tło. Dowolne tło. Dowolne tło. Dowolne tło. Dowolne tło. Dowolne tło. Dowolne tło. Dowolne tło. Dowolne tło. Dowolne tło. Dowolne tło. Dowolne tło. Dowolne tło. Dowolne tło. Dowolne tło. Dowolne tło. Dowolne tło. Dowolne tło. Dowolne tło. Dowolne tło. Dowolne tło. Dowolne tło. Dowolne tło. Dowolne tło. Dowolne tło. Dowolne tło. Dowolne tło.
Przetwarzanie obrazu cyfrowego Format rastrowy GIF Przeźroczystość Tak prosta realizacja przeźroczystości ma jednak swoje wady. Wykorzystanie przeźroczystości koliduje z antyaliasingiem
Antyaliasing Linie inne niż poziome/pionowe są odwzorowywane skokowo Schodkowa krawędź
Antyaliasing Ostre przejścia między dwoma kolorami są rozmywane przez zamianę kolorów pikseli sąsiadujących na kolory pośrednie miedzy tymi dwoma barwami.
Format rastrowy GIF Przeźroczystość Oznaczenie koloru tła (białego) jako przeźroczysty i wyświetlenie obrazka na innym tle powoduje powstanie efektu HALO
Przezroczystość kanał alfa Przezroczystość jest przypisana do każdego piksela (a nie do koloru) tworząc mapę pikseli przezroczystych kanał alfa. Stopień przezroczystości piksela ma 256 poziomów od do 255 lub od % do 1%.
Przezroczystość kanał alfa
Format rastrowy GIF Animacja Format GIF oferuje możliwość zapisywania w jednym pliku wielu obrazów Obrazy te mogą być wyświetlane w sekwencji, tworząc prymitywną animację. Czasy odstępów między obrazami są zapisywane w pliku.
Format rastrowy GIF Kompresja bezstratna LZW (Lempel Ziv Welch) Algorytm kompresji LZW wyszukuje w obrazie obszary jednokolorowe (zbiory pikseli o jednakowym indeksie) i zastępuje indeksy tego obszaru jego opisem (np. obszar 5x6 pikseli, indeks koloru 92). Znakomicie sprawdza się dla grafik umieszczonych na jednakowym tle Zupełnie nieskuteczny w przypadku przejść tonalnych typowych dla obrazów rzeczywistych.
Format rastrowy JPG Format ten jest obecnie najpopularniejszym formatem zapisu obrazów rastrowych. Wykorzystywany jest przede wszystkim do zapisu zdjęć cyfrowych. Swoją popularność zawdzięcza możliwości zapisu obrazu w pełnej gamie kolorów RGB przy jednoczesnym utrzymywaniu stosunkowo niewielkich rozmiarów plików.
Format rastrowy JPG Główną zaletą JPG jest stosowanie bardzo wydajnej, stratnej kompresji JPEG. Kompresja JPEG wywodzi swoją nazwę od Joint Photographic Experts Group zrzeszenia, które opracowało jej podstawy.
Format rastrowy JPG - kompresja Bazuje ona na niedoskonałości postrzegania zmian barwy przez ludzkie oko (znacznie łatwiej zauważamy zmianę jasności niż zmianę koloru). Zmiana koloru nie musi więc być zapisywana tak dokładnie lub można ją w ogóle pominąć
Przetwarzanie obrazu Pięć podstawowych grup Przekształcenia geometryczne Przekształcenia bezkontekstowe (punktowe) Przekształcenia kontekstowe Przekształcenia widmowe (tr. Fouriera) Przekształcenia morfologiczne
Podstawowe przekształcenia geometryczne Przesunięcie Skalowanie Obrót Odbicie lustrzane Pochylenie Inne przekształcenia geometrii obrazu
Przekształcenia geometryczne Obroty Wielokrotność 9 stopni Inne
Przekształcenia geometryczne Obroty Wielokrotność 9 stopni Inne
Przekształcenia geometryczne Przesunięcia Przemieszczenie bloku wartości kolorów pikseli do nowego miejsca w wierszach i kolumnach obrazu
Przekształcenia geometryczne Odbicia Poziome Pionowe odwrócenie kolejności pikseli w każdym wierszu. odwrócenie kolejności wierszy obrazu.
Przekształcenia geometryczne 2D Transformacje obiektów 2D Obiekt graficzny najczęściej opisywany jest za pomocą zbioru wierzchołków połączonych liniami (prostymi lub zdefiniowanymi krzywymi) obiekt wektorowy. Bitmapę można traktować jako prostokątny obiekt wypełniony teksturą zbiorem punktów/wierzchołków o konkretnych położeniach. Transformacja takich obiektów polega na przekształceniu położeń wszystkich jego wierzchołków i ponownym ich połączeniu liniami
Przekształcenia geometryczne 2D Transformacje obiektów 2D Podstawowe transformacje Przesunięcie (translation) x y x y t t x y t y x,y x,y t > -> przesunięcie w prawo/górę t < -> przesunięcie w lewo/dół t x
Przekształcenia geometryczne 2D Transformacje obiektów 2D Podstawowe transformacje Obrót względem środka układu wsp. (rotation) x y x x cos cos y y sin sin x,y x,y Uwaga: częste implementacje algorytmów cos/sin dla kąta podawanego w radianach
Przekształcenia geometryczne 2D Transformacje obiektów 2D Podstawowe transformacje Ciało sztywne (Rigid body) Przesunięcie (translation) Obrót względem środka układu wsp. (rotation) Kształt obiektu pozostaje bez zmian
Przekształcenia geometryczne 2D Transformacje obiektów 2D Podstawowe transformacje Zmiana skali (scaling) x y x y S S x y S > 1 -> powiększenie < S < 1 -> pomniejszenie x,y x,y Co gdy S <?
Przekształcenia geometryczne 2D Transformacje obiektów 2D Podstawowe transformacje Przekształcenia RST Przesunięcie (translation) Obrót względem środka układu wsp. (rotation) Zmiana skali (scaling) Przekształcenia te nie zmieniają wartości kątów w obiekcie
Przekształcenia geometryczne 2D Transformacje obiektów 2D Podstawowe transformacje Pochylenie (shear) Wzdłuż osi X x y x y ay x,y x,y Analogicznie wzdłuż osi Y
Przekształcenia geometryczne 2D Transformacje obiektów 2D Podstawowe transformacje Odbicie (reflection) Wzdłuż osi X Wzdłuż osi Y x x y x y y x y
Przekształcenia geometryczne 2D Transformacje obiektów 2D Podstawowe transformacje Przekształcenia afiniczne Przesunięcie (translation) Obrót względem środka układu wsp. (rotation) Zmiana skali (scaling) Pochylenie (shear) Odbicie (reflection) Przekształcenia te zachowują równoległość linii w obiekcie
Przekształcenia geometryczne 2D Transformacje obiektów 2D Transformacje mogą być stosowane do obrazu globalnie Jak i lokalnie Procedury transformacji lokalnych, zmiany skali (warping), koloru itp. Źródło: Komputerowa analiza i przetwarzanie obrazów, R. Tadeusiewicz, P. Korohoda
Przekształcenia geometryczne 2D Transformacje obiektów 2D Bardziej złożone przekształcenia polegają na wykonaniu serii przekształceń podstawowych (Ma znaczenie kolejność wykonywania przekształceń podstawowych) Oznacza to wielokrotne obliczenia dla każdego punktu -> kosztowne obliczeniowo Rozwiązaniem jest znalezienie przekształcenia złożonego, nie wymagającego dużej złożoności obliczeniowej najlepiej obliczanego zawsze w ten sam sposób.
Przekształcenia geometryczne 2D Transformacje obiektów 2D Przekształcenie wierzchołka o współrzędnych P(x,y) polega na znalezieniu jego nowych współrzędnych P'(x',y'). Dla ujednolicenia sposobu obliczania przekształceń wykorzystuje się zapis współrzędnych w postaci wektorowej x v y 1 Trzecia współrzędna punktu w 2D jest zawsze równa 1 a taki rodzaj współrzędnych jest nazywany współrzędnymi jednorodnymi (homogeneous coordinates)
Przekształcenia geometryczne 2D Transformacje obiektów 2D Współrzędne jednorodne Wprowadził je August Ferdynand Möbius w 1827r. W 1946r. E. Maxwell wykorzystał je do rozwiązywania problemów rzutowania W 1965r. L. Roberts wykorzystał współrzędne jednorodne do ujednolicenia zapisu transformacji afinicznych Podstawowa cecha wsp. jednorodnych to zapis n-wymiarowej przestrzeni za pomocą n+1 współrzędnych (3 współrzędne dla 2D) W przypadku przestrzeni 2D jest ona traktowana jako obszar przestrzeni 3D leżący na płaszczyźnie Z=1. Stąd dodatkowa współrzędna jest zawsze równa 1. -> może być konieczna normalizacja po przekształceniach
Transformacje obiektów 2D Współrzędne jednorodne Podstawowa zaleta: Możliwość łączenia w jednej macierzy różnych przekształceń np. obrót + przesunięcie y yy yx x yx xx y x yy yx xy xx t y o x o t y o x o t t y x o o o o T y x O y x ˆ 1 1 1 1 1 y yy yx x yx xx y yy yx x xy xx t y o x o t y o x o y x t o o t o o y x H y x Jedno mnożenie macierzowe, łatwe do zaimplementowania sprzętowo Przekształcenia geometryczne 2D
Przekształcenia geometryczne 2D Transformacje obiektów 2D Współrzędne jednorodne Dowolna transformacja pojedynczego punktu sprowadza się do przemnożenia reprezentującego go wektora przez odpowiednią macierz przekształcenia P' HP P' x' y' 1 P x 1 y
Transformacje obiektów 2D Współrzędne jednorodne Macierze transformacji przesunięcie x przesunięcie w kierunku osi X y przesunięcie w kierunku osi Y 1 1 1 y x H Przekształcenia geometryczne 2D
Przekształcenia geometryczne 2D Transformacje obiektów 2D Współrzędne jednorodne Macierze transformacji przesunięcie y x
Przekształcenia geometryczne 2D Transformacje obiektów 2D Współrzędne jednorodne Macierze transformacji - obrót H cos sin sin cos 1 - kąt obrotu względem środka układu współrzędnych
Przekształcenia geometryczne 2D Transformacje obiektów 2D Współrzędne jednorodne Macierze transformacji - obrót - kąt obrotu względem środka układu współrzędnych
Przekształcenia geometryczne 2D Transformacje obiektów 2D Współrzędne jednorodne Macierze transformacji - obrót - kąt obrotu względem środka układu współrzędnych
Przekształcenia geometryczne 2D Transformacje obiektów 2D Współrzędne jednorodne Macierze transformacji - skalowanie H S x S y 1 S x skalowanie wzdłuż osi X S y skalowanie wzdłuż osi Y S x =S y -> skalowanie względem środka układu współrzędnych
Przekształcenia geometryczne 2D Transformacje obiektów 2D Współrzędne jednorodne Macierze transformacji - skalowanie S x =,5 S y = Jeśli środek obiektu nie leży na osi Y, nastąpi jego przesunięcie
Przekształcenia geometryczne 2D Transformacje obiektów 2D Współrzędne jednorodne Macierze transformacji - skalowanie S x =,5 S y = Jeśli środek obiektu nie leży na osi Y, nastąpi jego przesunięcie
Przekształcenia geometryczne 2D Transformacje obiektów 2D Współrzędne jednorodne Macierze transformacji - skalowanie S x =S y Jeśli środek obiektu nie znajduje się w środku układu wsp. nastąpi jego przesunięcie
Przekształcenia geometryczne 2D Transformacje obiektów 2D Współrzędne jednorodne Macierze transformacji - skalowanie S x =S y Jeśli środek obiektu nie znajduje się w środku układu wsp. nastąpi jego przesunięcie
Transformacje obiektów 2D Współrzędne jednorodne Macierze transformacji pochylenie 1 1 1 a H W kierunku osi X W kierunku osi Y 1 1 1 a H Przekształcenia geometryczne 2D
Przekształcenia geometryczne 2D Transformacje obiektów 2D Współrzędne jednorodne Macierze transformacji pochylenie W kierunku osi X H 1 a 1 1
Przekształcenia geometryczne 2D Transformacje obiektów 2D Współrzędne jednorodne Macierze transformacji pochylenie W kierunku osi X H 1 a 1 1
Przekształcenia geometryczne 2D Transformacje obiektów 2D Współrzędne jednorodne Macierze transformacji pochylenie W kierunku osi X H 1 a 1 1
Transformacje obiektów 2D Współrzędne jednorodne Macierze transformacji odbicie lustrzane 1 1 1 H Względem osi X Względem osi Y 1 1 1 H Przekształcenia geometryczne 2D
Przekształcenia geometryczne 2D Transformacje obiektów 2D Współrzędne jednorodne Macierze transformacji odbicie lustrzane Względem osi Y Środek obiektu nie leży na osi Y
Przekształcenia geometryczne 2D Transformacje obiektów 2D Współrzędne jednorodne Macierze transformacji odbicie lustrzane Względem osi Y Środek obiektu leży na osi Y
Przekształcenia geometryczne 2D Transformacje obiektów 2D Transformacja względem środka obiektu Skąd środek P s x max 2 x min, y max 2 y min Z reguły maksimum w wierzchołku Problem gdy wierzchołki utworzone krzywymi bardziej złożone wyznaczanie
Przekształcenia geometryczne 2D Transformacje obiektów 2D Transformacja względem środka obiektu Złożenie transformacji: przesunięcie obiektu tak aby jego środek znalazł się w punkcie (,)
Przekształcenia geometryczne 2D Transformacje obiektów 2D Transformacja względem środka obiektu Złożenie transformacji: przesunięcie obiektu tak aby jego środek znalazł się w punkcie (,) wykonanie właściwego przekształcenia
Przekształcenia geometryczne 2D Transformacje obiektów 2D Transformacja względem środka obiektu Złożenie transformacji: przesunięcie obiektu tak aby jego środek znalazł się w punkcie (,) wykonanie właściwego przekształcenia przesunięcie powrotne (o wektor odwrotny)
Przekształcenia geometryczne 2D Transformacje obiektów 2D Transformacja względem środka obiektu Złożenie transformacji: We współrzędnych jednorodnych przekształcenie odpowiadające złożeniu transformacji można wyznaczyć mnożąc macierze poszczególnych transformacji zgodnie z kolejnością ich wykonania. Dowolna transformacja T względem środka obiektu może być zapisana za pomocą mnożenia 3 macierzy (gdzie punkt (x s,y s ) jest środkiem obiektu) 1 1 1 1 1 1 s s s s y x T y x H
Problemy: Sztywne ułożenie pikseli w obrazie, z reguły zachowanie tej samej rozdzielczości w obrazie wynikowym Przekształcenia geometryczne 2D Transformacje obiektów 2D Transformacja obrazu rastrowego Bitmapa jest zbiorem punktów na płaszczyźnie. Można stosować do niej powyższe przekształcenia. Podejście naiwne Dla każdego punktu(piksela) bitmapy wykonanie przekształcenia tego punktu znalezienie położenia tego punktu na nowym obrazie przepisanie barwy punktu do nowego położenia
Przekształcenia geometryczne 2D Transformacje obiektów 2D Transformacja obrazu rastrowego Problem: zachowanie tej samej (skończonej) rozdzielczości w obrazie wynikowym Efekt: Możliwość powstawania dziur w obrazie wynikowym ilość pikseli w obrazie źródłowym i wynikowym może być różna a ilość przekształceń = ilość pikseli obrazu źródłowego
Przekształcenia geometryczne 2D Transformacje obiektów 2D Transformacja obrazu rastrowego Rozwiązanie: Wykonywanie przekształcenia odwrotnego, pikseli docelowych w piksele źródłowe. Piksel docelowy przyjmuje wartość piksela źródłowego, w który trafił po przekształceniu. Konieczność określenia zbioru pikseli docelowych, dla których obliczane będzie przekształcenie odwrotne
Przekształcenia geometryczne 2D Transformacje obiektów 2D Transformacja obrazu rastrowego Konieczność określenia zbioru pikseli docelowych, dla których obliczane będzie przekształcenie odwrotne Możliwe rozwiązanie: Potraktowanie bitmapy jako prostokąta o określonych wierzchołkach Postępowanie: Wykonanie transformacji tego prostokąta Nałożenie prostokąta na piksele docelowe Wyznaczenie zbioru pikseli docelowych obejmowanych przez prostokąt
Przekształcenia geometryczne 2D Transformacje obiektów 2D Transformacja obrazu rastrowego Problem: Sztywne ułożenie pikseli w obrazie Efekt: Obliczone z przekształcenia położenie punktu może nie trafiać w piksel oryginalnego obrazu Rozwiązanie: Interpolacja
Przekształcenia bezkontekstowe Przekształcenia bezkontekstowe cechują dwie właściwości: Punkty obrazu poddawane są przekształceniu niezależnie od otaczających je punktów - sąsiadów. Przekształcane są jedynie wartości punktów (jasność/kolor). Punkty nie zmieniają pozycji w obrazie. Gdy funkcja przekształcenia jest monotoniczna, możliwe jest odtworzenie oryginalnego obrazu* Z reguły temu samemu przekształceniu poddawane są wszystkie punkty obrazu.
Przekształcenia bezkontekstowe Funkcja przekształcenia może być również ekstremalnie niemonotoniczna Źródło: Komputerowa analiza i przetwarzanie obrazów, R. Tadeusiewicz, P. Korohoda
Przekształcenia bezkontekstowe Funkcja przekształcenia może być również ekstremalnie niemonotoniczna - bywa przydatna przy wyszukiwaniu trudno zauważalnych szczegółów np. w analizie ingerencji w obraz Źródło: Komputerowa analiza i przetwarzanie obrazów, R. Tadeusiewicz, P. Korohoda
Przekształcenia bezkontekstowe Najczęściej polegają na obliczeniu nowej wartości piksela na podstawie funkcji L' m, n L( m, n) L(m,n) jest intensywnością (jasnością) obrazu w punkcie (m,n) lub poziomem wartości jednej ze składowych koloru w tym punkcie W przypadku obrazów kolorowych funkcja obliczana jest osobno dla każdej składowej koloru
Przekształcenia bezkontekstowe Wartości intensywności (składowej koloru) są najczęściej liczbami całkowitymi między a 255. Przed wykonaniem na nich funkcji L (m,n) są one często przeskalowywane do zakresu <,1> Nowa wartość piksela, po wykonaniu funkcji, może wykraczać poza przyjęty zakres <,1>. W zależności od przyjętej strategii może nastąpic przycinanie (Wartości mniejsze od są zamieniane na a wartości większe od 1 są ustawiane na 1) lub normalizacja danych wynikowych
Przekształcenia bezkontekstowe Typowe przekształcenia Rozjaśnianie / ściemnianie W tym przypadku funkcja przyjmuje postać: L' m, n L( m, n) ( i mają wartość 1) Do wartości wszystkich pikseli w obrazie dodawana jest taka sama wartość.
Przekształcenia bezkontekstowe Typowe przekształcenia Rozjaśnianie / ściemnianie Jeżeli jest dodatnia następuje rozjaśnienie obrazu. Ujemne wartości powodują ściemnienie obrazu. Im większa jest wartość (ujemna lub dodatnia), tym więcej wartości pikseli obrazu wykracza poza zakres i jest równanych do lub 1.
Przekształcenia bezkontekstowe Typowe przekształcenia Rozjaśnianie / ściemnianie
Przekształcenia bezkontekstowe Tabela LUT Zmiana jasności obrazka powyższą metodą wymagałaby obliczenia wartości funkcji dla każdego punktu obrazu W przypadku obrazu kolorowego RGB, 3 x ilość punktów Ilości pikseli obrazów liczone są w milionach
Przekształcenia bezkontekstowe Tabela LUT Bardziej efektywną metodą jest policzenie funkcji dla wszystkich możliwych wartości Luminancji od do 255 i zapisanie ich w dwuwierszowej tabeli zawierającej starą i nową wartość. LUT (Look Up Table tabela przeglądania).
Przekształcenia bezkontekstowe Tabela LUT
Przekształcenia bezkontekstowe Typowe przekształcenia Zwiększanie/zmniejszanie kontrastu Zmiana kontrastu polega na zwiększaniu lub zmniejszaniu różnic pomiędzy wartościami punktów obrazu. Odbywa się to z wykorzystaniem funkcji w postaci: L' m, n L( m, n) MAX MAX dla L( m, n) 2 2 MAX MAX MAX MAX dla L( m, n) 2 2 2 2 MAX MAX MAX dla L( m, n) MAX 2 2 MAX
Przekształcenia bezkontekstowe Typowe przekształcenia Zwiększanie/zmniejszanie kontrastu Dla wartości mniejszej od 1 następuje zmniejszanie kontrastu, czyli zmniejszenie różnic między poszczególnymi wartościami jaskrawości. W skrajnym przypadku uzyskamy jednolite szare tło. Wartość większa od 1 powoduje zwiększenie kontrastu aż do skrajnego przypadku występowania tylko 2 wartości: i MAX
Przekształcenia bezkontekstowe Typowe przekształcenia Zwiększanie/zmniejszanie kontrastu
Przekształcenia bezkontekstowe Typowe przekształcenia Korekcja gamma Korekcja gamma służy do poprawiania zniekształceń jasności wprowadzonych przez urządzenia takie jak skaner, kamera czy monitor. Wzór jest właściwy wyłącznie gdy potęgowane są wartości z przedziału <, 1>, stąd dzielenie i mnożenie przez wartość MAX. L' m, n MAX * L( m, n) MAX
Przekształcenia bezkontekstowe Typowe przekształcenia Korekcja gamma Dla wartości mniejszej od 1 następuje rozciągniecie wartości ciemnych kosztem wartości jasnych Dla wartości większej od 1, odwrotnie.
Przekształcenia bezkontekstowe Typowe przekształcenia Zwiększanie/zmniejszanie kontrastu
Przekształcenia bezkontekstowe Krzywe Częstym przypadkiem jest sytuacja gdy globalna korekcja bezkontekstowa obrazu (jasność, kontrast, gamma, itp) poprawia pewien obszar obrazu pogarszając jednocześnie inny W takiej sytuacji konieczne jest wykorzystanie narzędzia pozwalającego na precyzyjne ustawienie korekcji dla różnych obszarów jasności. Takim narzędziem są Krzywe (ang. Curves) będące kombajnem pozwalającym na jednoczesne wykorzystanie złożonych korekcji
Przekształcenia bezkontekstowe Krzywe Okno narzędzia krzywe zawiera prostokąt przedzielony ukośną linią. Na dole prostokąta zaprezentowany jest zakres jasności obrazu oryginalnego od do MAX. Po lewej stronie prostokąta przedstawiony jest analogiczny zakres jasności dla obrazu po przekształceniu. Często w tle prostokąta przedstawiany jest histogram obrazu oryginalnego, ułatwiający dobór kształtu krzywej.
Przekształcenia bezkontekstowe Krzywe Ukośna linia reprezentuje przekształcenie jednego zakresu w drugi W swojej obecnej postaci pokazuje przekształcenie 1:1, czyli bez zmian Zaznaczone na zielono zakresy jasności przed i po transformacji mają tą samą szerokość
Przekształcenia bezkontekstowe Krzywe realizacja rozjaśniania Linia została przesunięta w górę Gęstość rozłożenia stopni jasności jest taka sama Zakres stopni jasności jest przesunięty w stosunku do oryginału w stronę większej jasności.
Przekształcenia bezkontekstowe Krzywe realizacja ściemniania Linia została przesunięta w dół Gęstość rozłożenia stopni jasności jest taka sama Zakres stopni jasności jest przesunięty w stosunku do oryginału w stronę mniejszej jasności.
Przekształcenia bezkontekstowe Krzywe realizacja ściemniania Linia została przesunięta w dół Gęstość rozłożenia stopni jasności jest taka sama Zakres stopni jasności jest przesunięty w stosunku do oryginału w stronę mniejszej jasności.
Przekształcenia bezkontekstowe Krzywe realizacja zmiany kontrastu Linia została przekrzywiona w dół Gęstość rozłożenia stopni jasności jest mniejsza Zakres stopni jasności jest przesunięty w stosunku do oryginału w stronę mniejszej jasności. Uzyskano niezamierzone ściemnienie obrazu
Przekształcenia bezkontekstowe Krzywe realizacja zmiany kontrastu Linia została przekrzywiona symetrycznie względem środka Gęstość rozłożenia stopni jasności jest mniejsza Obszar wynikowy znajduje się w odpowiednim zakresie jasności w stosunku do oryginału Prawidłowa realizacja zmiany kontrastu
Przekształcenia bezkontekstowe Krzywe realizacja zmiany kontrastu Linia została przekrzywiona symetrycznie względem środka Gęstość rozłożenia stopni jasności jest większa Obszar wynikowy znajduje się w odpowiednim zakresie jasności w stosunku do oryginału Prawidłowa realizacja zwiększenia kontrastu
Przekształcenia bezkontekstowe Krzywe realizacja korekcji gamma Rysunek rozciągnięcie ciemnych. ilustruje poziomów Zakres najciemniejszy został rozciągnięty Zakres środkowy przesunięty w stronę jaśniejszą Zakres jasny został ściśnięty
Przekształcenia bezkontekstowe Krzywe realizacja korekcji gamma Rysunek rozciągnięcie jasnych. ilustruje poziomów Zakres najciemniejszy został ściśnięty Zakres środkowy przesunięty w stronę ciemniejszą Zakres jasny został rozciągnięty.
Przekształcenia bezkontekstowe Krzywe realizacja korekcji obrazu Jakie niedoskonałości ma ten obraz?
Przekształcenia bezkontekstowe Krzywe realizacja korekcji obrazu Co pokazuje histogram?
Przekształcenia bezkontekstowe Krzywe realizacja korekcji obrazu Korekcja gamma poprawia cały obraz?
Przekształcenia bezkontekstowe Krzywe realizacja korekcji obrazu Korekcja tylko w obszarze najjaśniejszym
Przekształcenia bezkontekstowe Histogram Histogram jest narzędziem wspomagającym wiele bezkontekstowych przekształceń obrazu. Prezentuje on zestawienie (w postaci wykresu słupkowego) ilości w obrazie pikseli o jednakowych poziomach jasności. Słupki odpowiadające poziomom ułożone są w kolejności rosnącej od poziomu do MAX.
Przekształcenia bezkontekstowe Histogram Formalnie wyliczany na podstawie wzoru W przypadku obrazów kolorowych histogram może być generowany albo dla każdej składowej z osobna albo jako histogram obrazu skonwertowanego do monochromatycznego. Źródło: Komputerowa analiza i przetwarzanie obrazów, R. Tadeusiewicz, P. Korohoda
Przekształcenia bezkontekstowe Histogram Histogram prawidłowo naświetlonego obrazu powinien być mniej więcej równomierny. Przesunięcie ciężaru na lewą lub prawą połowę może świadczyć o niedoświetleniu lub prześwietleniu obrazu. Źródło: http://www.cleanimages.com/article-understandingyourdigitalcamerashistogram.asp
Przekształcenia bezkontekstowe Histogram Ogólnie występowanie pustych obszarów świadczy o nieoptymalnym wykorzystaniu zakresu jasności Źródło: Komputerowa analiza i przetwarzanie obrazów, R. Tadeusiewicz, P. Korohoda
Przekształcenia bezkontekstowe Histogram Ogólnie występowanie pustych obszarów świadczy o nieoptymalnym wykorzystaniu zakresu jasności Źródło: Komputerowa analiza i przetwarzanie obrazów, R. Tadeusiewicz, P. Korohoda
Przekształcenia bezkontekstowe Histogram - rozciąganie Rozciągniecie histogramu (ang. histogram stretching) wykonuje się gdy nie pokrywa on całego zakresu wartości składowych obrazu. Operacja ta polega (tak jak wszystkie przekształcenia bezkontekstowe) na przygotowaniu odpowiedniej tablicy LUT Źródło: Komputerowa analiza i przetwarzanie obrazów, R. Tadeusiewicz, P. Korohoda
Przekształcenia bezkontekstowe Histogram - rozciąganie Nowe wartości w tablicy LUT obliczane są według wzoru gdzie v max maksymalna wartość jasności w obrazie v min minimalna wartość jasności w obrazie i max maksymalna możliwa wartość jasności w obrazie Źródło: http://www.algorytm.org/przetwarzanie-obrazow/histogram-rozciaganie.html
Przekształcenia bezkontekstowe Histogram - rozciąganie Źródło: http://atol.am.gdynia.pl/tc/radzienski/polepszanie.htm
Przekształcenia bezkontekstowe Histogram - rozciąganie Źródło: http://atol.am.gdynia.pl/tc/radzienski/polepszanie.htm
Przekształcenia bezkontekstowe Histogram - rozciąganie Bardziej zaawansowane algorytmy mogą uwzględniać środek ciężkości zakresu lub eliminować przerwy w histogramie
Przekształcenia bezkontekstowe Histogram - rozciąganie Przykład życiowego zastosowania rozciągania histogramu
Przekształcenia bezkontekstowe Histogram -rozciąganie Przykład życiowego zastosowania rozciągania histogramu
Przekształcenia bezkontekstowe Histogram - wyrównywanie Wyrównywanie histogramu (ang. histogram equalization) ma na celu takie dobranie wartosci aby wykres był mozliwie "płaski". Celem jest uwypuklenie szczegółów o niewielkiej różnicy kontrastu zmniejszenie płynności przejść tonalnych Operacja ta polega (tak jak wszystkie przekształcenia bezkontekstowe) na przygotowaniu odpowiedniej tablicy LUT Jest jednak nieco bardziej skomplikowana niż rozciąganie histogramu
Przekształcenia bezkontekstowe Histogram - rozciąganie Stosowany algorytm składa się z dwóch etapów 1. Obliczenie dystrybuanty rozkładu prawdopodobieństwa dla każdej wartości intensywności I=,1,2,.., n,..,255 ze wzoru Gdzie h n - jest ilością pikseli o intensywności n S jest ilością wszystkich pikseli obrazu Źródło: http://www.algorytm.org/przetwarzanie-obrazow/histogram-rozciaganie.html
Przekształcenia bezkontekstowe Histogram - rozciąganie Stosowany algorytm składa się z dwóch etapów 2. Obliczenie nowych wartości intensywności i ze wzoru Gdzie D - jest pierwszą dystrybuantą > k jest liczbą dostępnych wartości intensywności (256) Źródło: http://www.algorytm.org/przetwarzanie-obrazow/histogram-rozciaganie.html
Przekształcenia bezkontekstowe Histogram - wyrównanie Źródło: http://atol.am.gdynia.pl/tc/radzienski/polepszanie.htm
Przekształcenia bezkontekstowe Histogram - wyrównanie Źródło: http://atol.am.gdynia.pl/tc/radzienski/polepszanie.htm
Rozciąganie vs wyrównanie Źródło: http://atol.am.gdynia.pl/tc/radzienski/polepszanie.htm
Rozciąganie vs wyrównanie Źródło: http://atol.am.gdynia.pl/tc/radzienski/polepszanie.htm
Zadanie referatowe Zaawansowane techniki przetwarzania obrazu z wykorzystaniem histogramu