Przetwarzanie obrazu
Przekształcenia geometryczne Obroty Przesunięcia Odbicia Rozciągnięcia itp
Przekształcenia geometryczne Obroty Wielokrotność 90 stopni Inne
Przekształcenia geometryczne Obroty Wielokrotność 90 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 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. Z reguły temu samemu przekształceniu poddawane są wszystkie punkty obrazu.
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
Wartości intensywności (składowej koloru) są najczęściej liczbami całkowitymi między 0 a 255. Przed wykonaniem na nich funkcji L (m,n) są one często przeskalowywane do zakresu <0,1> Nowa wartość piksela, po wykonaniu funkcji, może wykraczać poza przyjęty zakres <0,1>. Wartości mniejsze od 0 są zamieniane na 0 a wartości większe od 1 są ustawiane na 1.
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ść.
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 0 lub 1.
Typowe przekształcenia Rozjaśnianie / ściemnianie
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
Tabela LUT Bardziej efektywną metodą jest policzenie funkcji dla wszystkich możliwych wartości od 0 do 255 i zapisanie ich w dwuwierszowej tabeli zawierającą starą i nową wartość. LUT (Look Up Table tabela przeglądania).
Tabela LUT
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 0 dla L( m, n) 0 2 2 MAX MAX MAX MAX dla 0 L( m, n) 2 2 2 2 MAX MAX MAX dla L( m, n) MAX 2 2 MAX
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: 0 i MAX
Typowe przekształcenia Zwiększanie/zmniejszanie kontrastu
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 <0, 1>, stąd dzielenie i mnożenie przez wartość MAX. L' m, n MAX * L( m, n) MAX
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.
Typowe przekształcenia Zwiększanie/zmniejszanie kontrastu
Histogram Histogram jest narzędziem wspomagającym wiele bezkontekstowych przekształceń obrazu. Prezentuje on zestawienie (w postaci wykresu słupkowego) procentowej 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 0 do MAX.
Histogram 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.
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
Histogram Obraz nie zawsze wykorzystuje cały dostępny zakres jaskrawości Można wykonać rozciągniecie histogramu uzyskując zwiększenie dystansu między poszczególnymi stopniami jasności.
Histogram Obraz nie zawsze wykorzystuje cały dostępny zakres jaskrawości Można wykonać rozciągniecie histogramu uzyskując zwiększenie dystansu między poszczególnymi stopniami jasności.
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 wszystkich korekcji
Krzywe Okno narzędzia krzywe zawiera prostokąt przedzielony ukośną linią. Na dole prostokąta zaprezentowany jest zakres jasności obrazu oryginalnego od 0 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.
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ść
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.
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.
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.
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
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
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
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
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.
Krzywe realizacja korekcji obrazu Jakie niedoskonałości ma ten obraz?
Krzywe realizacja korekcji obrazu Co pokazuje histogram?
Krzywe realizacja korekcji obrazu Korekcja gamma poprawia cały obraz?
Krzywe realizacja korekcji obrazu Korekcja tylko w obszarze najjaśniejszym
Przetwarzanie kontekstowe Przekształcenia kontekstowe dokonują transformacji poziomów jasności pikseli analizując za każdym razem nie tylko jasność danego piksela ale również jasności pikseli go otaczających.
Przetwarzanie kontekstowe Najczęściej wykorzystuje się prostokątne otoczenie badanego piksela numerując piksele w stosunku do piksela środkowego (i,j=0). Otoczenie najczęściej ma grubość 1 piksela (Im większy obszar wkoło piksela tym dłuższy czas obliczania przekształcenia) -1,-1 0,-1 1,-1-1,0 0,0 1,0-1,1 0,1 1,1
Przetwarzanie kontekstowe Przekształcenia liniowe Najczęściej stosowanym rodzajem filtru liniowego jest Konwolucja (splot) K j i j i j n i m n m w A a A ), (, ), (, 1 ' K j i j w i a ), ( ), ( Gdzie w(i,j) jest wagą jasności piksela w pozycji i,j w stosunku do piksela przekształcanego.
Przetwarzanie kontekstowe Przekształcenia liniowe filtr uśredniający Piksel przyjmuje wartość średnią liczoną z wszystkich pikseli otoczenia. Uzyskuje się w ten sposób efekt rozmycia obrazu 1 1 1 1 1 1 1 1 1
Przetwarzanie kontekstowe Przekształcenia liniowe filtr uśredniający Filtr ten powoduje wygładzenie poszarpanych brzegów czy chropowatych powierzchni za cenę utraty ogólnej ostrości obrazu
Przetwarzanie kontekstowe Przekształcenia liniowe filtr Gaussa Filtr Gaussa przypisuje większą wagę do oryginalnej jasności piksela Wykorzystuje dwa rodzaje masek 1 1 1 1 2 1 1 1 1 1 2 1 2 4 2 1 2 1
Przetwarzanie kontekstowe Przekształcenia liniowe filtr Gaussa W większości programów edycyjnych narzędzie rozmycia Gaussowskiego pozwala na wybór promienia wielkości maski Im większa wartość promienia tym mocniejsze rozmycie
Przetwarzanie kontekstowe Przekształcenia liniowe filtr wzmacniający Filtr wzmacniajacy ma za zadanie uwydatnić zmianę koloru/jasności. Powoduje on wyodrębnienie szczegółów takich jak krawędzie, narożniki itp. Podstawowymi maskami wyodrębniającymi są maski Laplace a 0-1 0 1-2 1-1 0-1 -2 1-2 -1-1 -1-1 4-1 -2 4-2 0 4 0 1 4 1-1 8-1 0-1 0 1-2 1-1 0-1 -2 1-2 -1-1 -1 Cechą tych filtrów jest zerowanie się sumy wszystkich wag w masce
Przetwarzanie kontekstowe Przekształcenia liniowe filtr wzmacniający W programach graficznych filtry wzmacniające wykorzystują predefiniowaną maskę pozostawiając użytkownikowi pośrednią regulację mocy filtru. Za pomocą tego typu filtrów można uzyskać zarówno niewielkie wzmocnienie krawędzi
Przetwarzanie kontekstowe Przekształcenia liniowe filtr wzmacniający W programach graficznych filtry wzmacniające wykorzystują predefiniowaną maskę pozostawiając użytkownikowi pośrednią regulację mocy filtru. Jak i zupełne ich wyodrębnienie z obrazu
Przetwarzanie kontekstowe Przekształcenia liniowe filtr krawędziowy kierunkowy Filtry tego typu są określane nazwą filtrów Sobela Pozwalają one na wyodrębnienie w obrazie krawędzi ułożonych w pewnym kierunku 1 2 1 0 0 0-1 0 1-2 0 2-1 -2-1 Poziomy -1 0 1 Pionowy
Przetwarzanie kontekstowe Przekształcenia liniowe filtr krawędziowy kierunkowy Filtry tego typu są określane nazwą filtrów Sobela Pozwalają one na wyodrębnienie w obrazie krawędzi ułożonych w pewnym kierunku
Przetwarzanie kontekstowe Przekształcenia liniowe filtr krawędziowy kierunkowy Filtry Sobela pozwalają również na wyszukiwanie krawędzi ukośnych 0 0 0-1 0 0 0 1 0
Przetwarzanie kontekstowe Przekształcenia nieliniowe Liniowe przekształcenia stosowały tą samą funkcję dla wszystkich punktów obrazu. W przypadku przekształceń nieliniowych dobór przekształcenia następuje na podstawie analizy otoczenia przetwarzanego piksela
Przetwarzanie kontekstowe Przekształcenia nieliniowe Filtry nieliniowe możemy podzielić na: filtry kombinowane Są one nieliniową kombinacją wyników kilku filtrów liniowych. (Np. wykonanie kilku rozmyć obrazu i wybranie punktów najbardziej zbliżonych do wartości oryginalnych
Przetwarzanie kontekstowe Przekształcenia nieliniowe Filtry nieliniowe możemy podzielić na: operacje logiczne Najczęściej wykonywane są one na obrazach binarnych. Typowe przekształcenia to inwersja (NOT) wycinanie maską (AND) odejmowanie (SUB), także wielu obrazów OR, XOR
Przetwarzanie kontekstowe Przekształcenia nieliniowe Filtry nieliniowe możemy podzielić na: Filtry statystyczne Minimum Jako nowa wartość jest wybierana najmniejsza wartość spośród wartości otoczenia (najmniejsza jasność) Maksimum Jako nowa wartość jest wybierana największa wartość spośród wartości otoczenia (największa jasność)
Przetwarzanie kontekstowe Przekształcenia nieliniowe Filtry nieliniowe możemy podzielić na: Filtry statystyczne Medianowe Filtry wybierające jako nową wartość, tą z wartości otoczenia, która jest najbliższą wartości średniej. Nie wprowadza nowych wartości do obrazu. Za pomocą filtru medianowego możemy uzyskać wygładzanie bez rozmycia. Wadą tego filtru jest tendencja do obgryzania narożników.
Przetwarzanie kontekstowe Przekształcenia nieliniowe Mediana w Gimpie
Przetwarzanie kontekstowe Przekształcenia nieliniowe Filtry nieliniowe możemy podzielić na: filtry adaptacyjne zmiana charakterystyki działania w zależności od cech analizowanego obrazu. Np. filtr uśredniający składający się z dwóch etapów 1 - detekcja krawędzi 2- zastosowanie filtra uśredniającego (wygładzenie) do punktów nie będących krawędziami.
Przetwarzanie obrazu rastrowego Tyle o teorii A w praktyce