Przetwarzanie obrazu. Formaty zapisu obrazu cyfrowego Przetwarzanie geometryczne Przetwarzanie bezkontekstowe

Podobne dokumenty
Grafika 2D. Przekształcenia geometryczne 2D. opracowanie: Jacek Kęsik

Przetwarzanie obrazu

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

Obraz jako funkcja Przekształcenia geometryczne

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

Przekształcenia punktowe

Proste metody przetwarzania obrazu

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

3. OPERACJE BEZKONTEKSTOWE

Grafika. Formaty zapisu obrazu cyfrowego

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

Plan wykładu. Wprowadzenie Program graficzny GIMP Edycja i retusz zdjęć Podsumowanie. informatyka +

Cała prawda o plikach grafiki rastrowej

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

INFORMATYKA WSTĘP DO GRAFIKI RASTROWEJ

Technologie Informacyjne

FORMATY PLIKÓW GRAFICZNYCH

dr inż. Piotr Odya dr inż. Piotr Suchomski

Plan wykładu. Wprowadzenie Program graficzny GIMP Edycja i retusz zdjęć Podsumowanie. informatyka +

Histogram obrazu, modyfikacje histogramu

Przetwarzanie obrazów wykład 2

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

Grafika komputerowa. Dla DSI II

Przekształcenia punktowe i geometryczne

Grafika rastrowa (bitmapa)-

Diagnostyka obrazowa

Parametryzacja obrazu na potrzeby algorytmów decyzyjnych

Dodatek B - Histogram

Wykorzystanie grafiki wektorowej do tworzenia elementów graficznych stron i prezentacji

Grafika Komputerowa Wykład 1. Wstęp do grafiki komputerowej Obraz rastrowy i wektorowy. mgr inż. Michał Chwesiuk 1/22

Formaty plików graficznych

GRAFIKA RASTROWA. WYKŁAD 1 Wprowadzenie do grafiki rastrowej. Jacek Wiślicki Katedra Informatyki Stosowanej

Animowana grafika 3D. Opracowanie: J. Kęsik.

Przetwarzanie obrazu

Operacje przetwarzania obrazów monochromatycznych

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

POB Odpowiedzi na pytania

Grafika 2D. Animacja Zmiany Kształtu. opracowanie: Jacek Kęsik

Klasyfikacja metod kompresji

Dane obrazowe. R. Robert Gajewski omklnx.il.pw.edu.pl/~rgajewski

Metody komputerowego przekształcania obrazów

dr hab. inż. Lidia Jackowska-Strumiłło, prof. PŁ Instytut Informatyki Stosowanej, PŁ

Waldemar Izdebski - Wykłady z przedmiotu SIT / Mapa zasadnicza 30

Komputerowe obrazowanie medyczne

Animowana grafika 3D. Opracowanie: J. Kęsik.

Kompresja obrazów i formaty plików graficznych

1 LEKCJA. Definicja grafiki. Główne działy grafiki komputerowej. Programy graficzne: Grafika rastrowa. Grafika wektorowa. Grafika trójwymiarowa

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

Podstawy grafiki komputerowej. Teoria obrazu.

Analiza obrazów. Segmentacja i indeksacja obiektów

Obróbka grafiki cyfrowej

Implementacja filtru Canny ego

Gimp Grafika rastrowa (konwersatorium)

Transformacje obiektów 3D

Przetwarzanie obrazów rastrowych macierzą konwolucji

Klasyfikacja metod kompresji

Z życia grafika-webmastera

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

Grafika na stronie www

Grafika komputerowa dziedzina informatyki zajmująca się wykorzystaniem technik komputerowych do celów wizualizacji artystycznej oraz wizualizacji i

Analiza obrazów - sprawozdanie nr 2

Grafika Komputerowa Wybrane definicje. Katedra Informatyki i Metod Komputerowych Uniwersytet Pedagogiczny im. KEN w Krakowie apw@up.krakow.

Podstawy grafiki komputerowej

GRAFIKA. Rodzaje grafiki i odpowiadające im edytory

Przewodnik po soczewkach

1. Opis okna podstawowego programu TPrezenter.

Joint Photographic Experts Group

Grafika 2D. Animacja Zmiany Kształtu. opracowanie: Jacek Kęsik

OBRÓBKA FOTOGRAFII. WYKŁAD 1 Korekcja obrazu. Jacek Wiślicki Katedra Informatyki Stosowanej

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

Według raportu ISO z 1988 roku algorytm JPEG składa się z następujących kroków: 0.5, = V i, j. /Q i, j

Tematy lekcji zajęć komputerowych klasa 5b grupa 1 i grupa 2

Podstawy przetwarzania obrazów teledetekcyjnych. Format rastrowy

4. Oprogramowanie OCR do rozpoznawania znaków 39

Materiały dla studentów pierwszego semestru studiów podyplomowych Grafika komputerowa i techniki multimedialne rok akademicki 2011/2012 semestr zimowy

Technologie cyfrowe semestr letni 2018/2019

Projektowanie graficzne. Wykład 2. Open Office Draw

ANALIZA I INDEKSOWANIE MULTIMEDIÓW (AIM)

SYLABUS ECCC MOD U Ł : C S M2 GR A F I K A KO M P U T E R O W A PO Z I O M: PO D S T A W O W Y (A)

Wymagania edukacyjne na ocenę z informatyki klasa 3

Python: JPEG. Zadanie. 1. Wczytanie obrazka

Grafika komputerowa. Oko posiada pręciki (100 mln) dla detekcji składowych luminancji i 3 rodzaje czopków (9 mln) do detekcji koloru Żółty

Grafika 2D. Pojęcia podstawowe. opracowanie: Jacek Kęsik

Analiza obrazu. wykład 1. Marek Jan Kasprowicz Uniwersytet Rolniczy Marek Jan Kasprowicz Analiza obrazu komputerowego 2009 r.

Zasady edycji (cyfrowej) grafiki nieruchomej

Przedmowa 11 Ważniejsze oznaczenia 14 Spis skrótów i akronimów 15 Wstęp 21 W.1. Obraz naturalny i cyfrowe przetwarzanie obrazów 21 W.2.

Podstawy Informatyki Wykład V

Grafika komputerowa. Zajęcia 7

Formaty obrazów rastrowych biblioteki PBM

Plan wykładu. Akcelerator 3D Potok graficzny

Warstwa Rysunek bitmapowy Rysunek wektorowy

Pomiar światła w aparatach cyfrowych w odniesieniu do histogramu.

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

Dodawanie grafiki i obiektów

1. Prymitywy graficzne

GRAFIKA WEKTOROWA. WYKŁAD 1 Wprowadzenie do grafiki wektorowej. Jacek Wiślicki Katedra Informatyki Stosowanej

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

Transkrypt:

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