Operacje punktowe i kontekstowe. Przestrzenna filtracja ... · transformacji potęgowej dla...
Transcript of Operacje punktowe i kontekstowe. Przestrzenna filtracja ... · transformacji potęgowej dla...
Rodzaje przekształceń na obrazach
Metody przekształcania obrazów, zarówno monochromatycznych jak i barwnych można podzielić na kilka grup:
przekształcenia punktowe (bezkontekstowe) – przekształcenia są funkcją wartości pikseli i nie zależąod lokalizacji i sąsiedztwa (otoczenia, kontekstu) przekształcanego piksela. Przekształcenia punktowe zachowują cechy przestrzenne i geometryczne w obrazie, a zmianie mogą ulec jedynie wartości (jasność) poszczególnych pikseli w obrazie. Najczęstszymi operacjami są operacje liniowe, potęgowe oraz logarytmiczne. Przekształcenia punktowe należą do najprostszych metod poprawy jakości obrazu (image enhancement),
przekształcenia kontekstowe,
przekształcenia morfologiczne,
przekształcenia geometryczne.
Mnożenie obrazu przez liczbę
Skalowanie obrazu (mnożenie obrazu przez liczbę).
Operacja dla dużych wartości parametru α może powodować silne nasycenie wartości pikseli (przekraczanie dopuszczalnej wartości) i w konsekwencji utratę informacji. Konieczna jest normalizacja obrazu wynikowego. Operacja powoduje modyfikację kontrastu.
Pytanie: jak operacja skalowania modyfikuje histogram obrazu?
Rys. Dwa przykład mnożenia obrazu przez liczbę (tu: α =4, oraz α =20, odpowiednio). Operacja pozwala wydobyć z obrazu elementy wcześniej niewidoczne, jednocześnie nasycając jasne partie obrazu.
a b c d
Przesunięcie (image offset)
Przesunięcie obrazu (image offset) jest prostą liniową operacją punktową opisaną równaniem
gdzie f jest obrazem wejściowym, f’ obrazem wyjściowym, L∈[0,255] jest parametrem przesunięcia.
Dla L>0 obraz wyjściowy jest rozjaśnioną wersją obrazu wejściowego. Konieczne jest uwzględnienie przypadków, gdy wartości pikseli obrazu wyjściowego przekraczają wartości dopuszczalne. Sytuacja taka prowadzi do częściowej lub całkowitej (w skrajnym przypadku L>255) utraty informacji. Utrata jest nieodwracalna.
Relacje przestrzenne pomiędzy pikselami oraz kontrast obrazu pozostają niezmienione. Zmianie (przesunięciu) ulega średnia oraz histogram obrazu:
a
Rys. Negatywny przykład przesunięcia obrazu. (a) – obraz oryginalny, (b) obraz przekształcony, dla L=140. Widoczna utrata informacji.
Operacja MOŻE poprawić jakość wizualną obrazu.
Wykorzystanie operacji…
b
Negatyw obrazu (skalowanie + offset)
Przykłady Obraz oryginalny Obraz +50
Obraz +100 Obraz −100
Obraz x2 Obraz x3
a b
c d
ef
Rys.1. Przykład prostych operacji arytmetycznych wykonanych na danych obrazowych: a) obraz oryginalny; b) zwiększenie wartości każdego piksela obrazu o stałą wartość równą 50; c) zwiększenie wartości pikseli obrazu o wartość 100; d) zmniejszenie wartości pikseli o wartość 100; e), f) wynik mnożenia wartości każdego piksela przez czynnik, odpowiednio, 2 i 3.
Przekształcenia logarytmiczne obrazua
b
Rys.1. Przykład zastosowania funkcji logarytmicznej (a) do korekcji obrazu. Na rysunku (b) przedstawiony jest obraz przez transformacją, (c) rysunek po transformacji.
gdzie f(x,y) – piksel obrazu wejściowego, g(x,y) – piksel obrazu wyjściowego, c – czynnik normujący.
Przekształcenie wykorzystywane do selektywnego podwyższenia kontrastu (różnicowania) w obszarze małych wartości pikseli, przy jednoczesnym zmniejszeniu dynamiki w obszarów jasnych.
Operacja logarytmowania powoduje globalne rozjaśnienie obrazu.
Przekształcenia logarytmiczne obrazu opisane sąrównaniem:
50 100 150 200 250
50
100
150
200
250a
Operacje potęgowania
gdzie f(x,y) – obraz wejściowy, g(x,y) – obraz wyjściowy, c –czynnik normujący, g - parametr przekształcenia.
Efekt przekształceń potęgowych uzależniony jest od wartości parametru γ.
Dla γ>1uzyskuje się efekt zwiększenia kontrastu w obszarze dużych wartości pikseli (jasne partie obrazu). Dla 0<γ<1efektem jest zwiększenie kontrastu w obszarze małych wartości pikseli (ciemne partie obrazu) przy jednoczesnym zmniejszeniu kontrastu jasnych partii obrazu.
Przekształcenie potęgowe obrazu opisane jest równaniem
Rys.1. Krzywe potęgowe dla różnych wartości parametru γ. [Gonzalez, Woods].
Rys.2. Pierwszy wiersz: pola o jasności [0,60]. Drugi wiersz: pola o jasności [0,190].
Operacje potęgowania - ilustracja
Rys.1. Przykład wykorzystania funkcji potęgowej do korekcji jakości obrazu. (a) – obraz oryginalny; (b), (c), (d) obrazy po wykonaniu transformacji potęgowej dla współczynnika γ równego odpowiednio: 3, 4 oraz 5. Minimum z wartości pikseli obrazu (a) jest równe 176.
a b
c d
Operacje potęgowania - ilustracja
Rys.1. Przykład niewłaściwego wykorzystania funkcji potęgowej do korekcji obrazu cyfrowego. (a) – obraz oryginalny wymagający korekcji; obrazy (b), (c) i (d) przedstawiają efekt transformacji potęgowej dla γ równego odpowiednio: 0.5, 0.25, 0.1
a b
c d
Przekształcenia kawałkami liniowe
50 100 150 200 250
0.0250.05
0.0750.1
0.1250.15
0.175Histogramy obrazow
Rys.1. Przykład rozciągania histogramu obrazu o słabym kontraście: a) wykres funkcji transformującej obraz; b) obraz oryginalny, c) obraz po przekształceniu; d) histogram obrazu oryginalnego (krzywa czerwona) oraz przekształconego (krzywa niebieska). Wartość minimalna i maksymalna pikseli w obrazie oryginalnym wynosi odpowiednio: 94 i 119. Przekształcenie tego typu jest nieodwracalne (dlaczego?).
50 100 150 200 250
50
100
150
200
250Funkcja przeksztalcenia
Obraz oryginalny Obraz przeksztalconya b dc
Obraz przeksztalcony
50 100 150 200 250
50
100
150
200
250Krzywa przeksztalcenia
50 100 150 200 250
50
100
150
200
250
Rys.2. Przykłady przekształceń obrazów funkcjami kawałkami liniowymi: a) – wycięcie przedziału wartości jasności; b) – negowanie obrazu. Przekształcenie (a) jest nieodwracalne. Negacja obrazu jest operacją odwracalną.
a b
Przekształcenia kawałkami liniowe są najbardziej elastyczne z przekształceń dotychczas omówionych. Pozwalają na dowolne modelowanie funkcji przekształcenia w zależności od obrazu wejściowego i pożądanego efektu.
50 100 150 200 250
2000
4000
6000
8000
10000
12000
50 100 150 200 250
2000
4000
6000
8000
10000
12000
Rozciąganie histogramu
Operacja rozciągania histogramu (full-scale histogram stretching, FSHS) wykonywana jest dla obrazów o słabej dynamice, nieefektywnie wykorzystujących dostępną przestrzeń wartości pikseli (obrazy o histogramach zlokalizowanych w wąskim przedziale).
Rozciąganie histogramu jest operacją punktową wykonywaną na obrazie oryginalnym, piksel po pikselu. Niech oryginalny przedział zmienności wartości pikseli dany jest przez [A,B], natomiast [0,L-1] niech jest dostępnym przedziałem zmienności. Wówczas operacja rozciągania histogramu, FSHS, dana jest przez równanie:
gdzie f(x,y) jest wartością piksela o współrzędnych (x,y) obrazu oryginalnego.
a b
Rys. Przykład operacji rozciągania histogramu. (a), (b) odpowiednio obraz oryginalny oraz jego histogram, (c), (d) – obraz po rozciągnięciu histogramu oraz odpowiadający mu histogram. Wartości pikseli w obrazie oryginalnym przyjmują wartości z przedziału [131,177], w obrazie wynikowym pokrywają cały dostępny zakres [0,255].
Rozciąganie histogramu
Zwiększa dynamikę obrazu (szerszy przedziałwartości pikseli jakie pojawiają się w obrazie wyjściowym). Powoduje zwiększenie kontrastu w obrazie.
Pozwala na efektywniejsze wykorzystanie dostępnego przedziału wartości pikseli (np. dla obrazów 8 bitowych, jest to przedział [0..255].
c d
Rozciąganie histogramu z progiem
Rys. Przykład operacji rozciągania histogramu z progiem. (a) – obraz oryginalny, (b) – histogram obrazu oryginalnego, (c) – fragment histogramu obrazu oryginalnego obcięty dla liczby wystąpień pikseli mniejszej od 100, (d) - obraz po rozciągnięciu histogramu z progiem t=80 (próg pomija wartości mniej niż 0,65% całkowitej liczby pikseli ≈120 000).
W przypadku stosowania podstawowej wersji algorytmu rozciągania histogramu widoczną poprawę kontrastu uzyskuje się jedynie w przypadkach, gdy wartości histogramu są zerowe w szerokich zakresach [0,A) oraz (B,255]. W pozostałych przypadkach metoda może nie wnieść zauważalnych różnić lub nie wnosi ich w ogóle.
W takich przypadkach właściwe jest zastosowanie rozciągania histogramu przy pominięciu poziomów jasności, dla których liczba odpowiadających pikseli jest mniejsza od zadanego progu. Rozciągana jest wówczas środkowa częśćoryginalnego histogramu.
a
50 100 150 200 250
20
40
60
80
100
50 100 150 200 250
2000
4000
6000
8000
10000
12000
b
c
d
Wygładzanie histogramu
Wygładzanie histogramu jest operacją pożądana z punktu widzenia teorii informacji, ponieważ obraz o płaskim histogramie, w którym prawdopodobieństwa poszczególnych wartości (jasności) pikseli są identyczne, posiada maksymalną entropię, tzn. niesie najwięcej informacji. Jeśli dowolna z możliwych wartości pikseli jest bardziej prawdopodobna niż inne wówczas entropia maleje, a tym samym zmniejszeniu ulega ilość informacji w obrazie.
Wygładzanie histogramu sprowadza się do takiego przekształcenia wartości pikseli, by w równych przedziałach wartości pikseli (oś odciętych histogramu) liczba pikseli przyjmujących te wartości była w przybliżeniu identyczna.
Przyjmując, że dozwolone wartości pikseli leżą w przedziale [0,1] wygładzanie histogramu dane jest równaniem:
gdzie f’ jest obrazem wynikowym, natomiast F(.) jest dystrybuantą znormalizowanego histogramu
a b
Rys. Wyrównanie histogramu. (a) – obraz oryginalny; (b) – obraz po przekształceniu.
Wygładzanie histogramu - ilustracja
Wygładzanie histogramu jest operacją globalną i może prowadzić do pogorszenia wizualnej jakości obrazu poprzez niepożądaną utratę szczegółów obrazu.
Rys. Pogorszenie jakości obrazu po transformacji wygładzania histogramu.
a b
Kontekstowa filtracja obrazu. Filtry liniowe
f(x-1,y+1)
w(-1,-1) w(-1,0) w-1,1)
w(0,-1) w(0,0) w(0,1)
w(1,-1) w(1,0) w(1,1)
f(x-1,y-1) f(x-1,y)
f(x,y-1) f(x,y) f(x,y+1)
f(x+1,y-1) f(x+1,y) f(x+1,y+1)
g(x,y)
Maska przekształcenia
Obraz oryginalny Obraz wyjściowy
Filtracja obrazu jest operacją kontekstową w której wartość piksela obrazu wynikowego wyznaczana jest jako kombinacja wartości pikseli z sąsiedztwa.Filtracja wykonywana jest w celu: usuwania zakłóceń i szumu w obrazie, wzmacniania niektórych elementów obrazu (np. krawędzi), poprawy jakości wizualnej obrazu, rekonstrukcji obrazu.Filtracja liniowa realizowana jest jako operacja dwuwymiarowego splotu dyskretnego:
gdzie f(x,y) jest obrazem wejściowym, g(x,y) – obrazem wyjściowym, współczynniki w określają rodzaj i postaćprzekształcenia i stanowią razem maskę (jądro) przekształcenia.
Rys.1. Schemat liniowej filtracji obrazu.
Należy zwrócić uwagę na specjalną obsługę pikseli leżących bezpośrednio na brzegu obrazu (istnieje kilka sposób obsługi takiej sytuacji).Maska w przekształcenia decyduje o sposobie działania filtru.
Filtry wygładzające
Zadaniem filtrów wygładzających jest przestrzenne uśrednienie wartości obrazu, prowadzące do redukcji szumów, zakłóceń o odpowiedniej charakterystyce oraz niewielkich fluktuacji wartości pikseli w obszarach porównywalnych z rozmiarem jądra przekształcenia. Niepożądanym efektem ubocznym filtracji tego typu jest osłabienie (rozmycie) konturów obiektów w obrazie i zmniejszenie ostrości obrazu.
Działanie filtrów uśredniających jest równoważne z tłumieniem składowych obrazu o dużych częstotliwościach, przy jednoczesnym pozostawieniu w obrazie składowych o małych częstotliwościach. Filtry te działają więc jak typowe filtry dolnoprzepustowe.
Filtry wygładzające realizowane są jako przekształcenia z maskami określonego kształtu i rozmiaru. Najczęściej wykorzystywaną maską jest maska kwadratowa. Najprostszym przykładem filtru tego typu jest filtr uśredniający reprezentowany przez maskę 3x3:
Wynik filtracji zależy od wartości współczynników (wag) filtru oraz jego rozmiaru i kształtu. W ogólności zwiększanie rozmiaru maski filtru powoduje silniejsze rozmycie (zmniejszenie ostrości) obrazu, ze względu na uśrednianie w większym obszarze. Jednocześnie zwiększa się złożoność obliczeniowa przekształcenia.
Efekt wygładzenia można zmniejszyć przez zwiększenie wagi punktu centralnego, na którym centrowana jest maska przekształcenia.
Rys. 1. Wynik filtracji dolnoprzepustowej obrazu oryginalnego przedstawionego na rysunku (a). (b), (c) i (d) przedstawiają obrazy po filtracji z maską, opowiednio 3x3, 7x7 oraz 17x17. Wszystkie współczynniki filtrów są równe 1. Rysunki (e) i (f) przedstawiają wiersz 230 obrazu oryginalnego oraz obrazu przedstawionego na rysunku (d).
a b
c d
50 100 150 200 250 300
50
100
150
200
250
50 100 150 200 250 300
50
100
150
200
250e f
i
k
jjjjj1 1 11 1 11 1 1
y
{
zzzzz19
Przestrzenne uśrednianie obrazu – przykład 1
50 100 150 200 250
50
100
150
200
250
300Obraz po filtracji H5x5L
50 100 150 200 250
50
100
150
200
250
300Obraz oryginalny
50 100 150 200 250
50
100
150
200
250
300Obraz progowany H48. % maxL
50 100 150 200 250
50
100
150
200
250
300Obraz progowany H48. % maxL
a b
50 100 150 200 250
50
100
150
200
250
300Obraz po filtracji H11x11L
c
50 100 150 200 250
50
100
150
200
250
300Obraz po filtracji H23x23L
d e f
Rys.1. Przykład zastosowania przestrzennej filtracji uśredniającej: a) – obraz oryginalny; b) – e) przykład filtracji filtrem o wielkości odpowiednio 5x5, 11x11 oraz 23x23 piksele; e) – f) efekt dodatkowego progowania obrazów, odpowiednio, c) oraz d) z progiem ustalonym na 48% maksymalnego poziomu jasności każdego z obrazów.
Rysunek (g) przedstawia wynik maskowania (logiczne AND) obrazu oryginalnego przez obraz (f).
Stosowanie filtrów uśredniających o różnych rozmiarach masek daje efekt eliminacji obiektów obrazu o rozmiarach odpowiadających rozmiarowi filtru. Proces ten może byćwykorzystany do eliminacji nieistotnych szczegółów obrazu. Niepożądanym efektem w innych zastosowaniach jest rozmycie konturów obiektów.
50 100 150 200 250
50
100
150
200
250
300 g
Filtry gaussowskie
Szczególną klasą filtrów dolnoprzepustowych są filtry gaussowskie, których współczynniki stanowią aproksymacjędwuwymiarowej funkcji Gaussa:
i
k
jjjjj1 4 14 32 41 4 1
y
{
zzzzz
i
k
jjjjjjjjjjjjj
1 3 4 3 13 12 19 12 34 19 32 19 43 12 19 12 31 3 4 3 1
y
{
zzzzzzzzzzzzz
i
k
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
0 0 1 2 2 3 2 2 1 0 00 1 3 5 8 9 8 5 3 1 01 3 7 13 18 21 18 13 7 3 12 5 13 24 34 39 34 24 13 5 22 8 18 34 50 56 50 34 18 8 23 9 21 39 56 64 56 39 21 9 32 8 18 34 50 56 50 34 18 8 22 5 13 24 34 39 34 24 13 5 21 3 7 13 18 21 18 13 7 3 10 1 3 5 8 9 8 5 3 1 00 0 1 2 2 3 2 2 1 0 0
y
{
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
Filtry gaussowskie są filtrami symetrycznymi w których największą wagę otrzymuje współczynnik odpowiadający elementowi centralnemu, a współczynniki mają tym mniejsząwartość im większa jest ich odległość od elementu centralnego.
Rozmiar maski filtru gaussowskiego powinien być dobrany zależnie od wartości parametru σ (wariancji) funkcji Gaussa. Zwykle przyjmuje się maskę o rozmiarze 6σ x 6σ .
Przykłady masek dla filtrów gaussowskich podane są obok.
Rys.1. Przykłady jąder (masek) przekształceńgaussowskich dla różnych wartości odchylenia standardowego σ.
a
b
c
Filtr gaussowski – przykład
a b c
Rys.1. Porównanie działania filtru Gaussa oraz prostego filtru uśredniającego dla identycznych rozmiarów masek, w tym przypadku równych 11x11 pikseli.
(a) – obraz oryginalny; (b) – wynik filtracji Gaussa; (c) – wynik filtracji prostym filtrem uśredniającym. Widoczna jest silniejsza degradacja obrazu (c) w stosunku do obrazu (b).
Usuwanie zakłóceń
Usuwanie zakłóceń za pomocą filtrów liniowych, np.. filtru Gaussa, nie oznacza fizycznego wyeliminowania zakłócenia. Znacznie lepsze efekty osiągają w takim przypadku filtry nieliniowe, m. in. różne warianty filtrów medianowych.
Filtry wygładzające dokonują osłabienia i rozproszenia zakłócenia na piksele sąsiednie oraz wprowadzają do obrazu nowe wartości jasności (patrz Rys. 2)
i
k
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 00 0 0 0 0 255 0 0 0 0 00 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0
y
{
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
i
k
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 00 0 0 0 5 20 5 0 0 0 00 0 0 0 20 157 20 0 0 0 00 0 0 0 5 20 5 0 0 0 00 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0
y
{
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
i
k
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 00 0 0 0 28 28 28 0 0 0 00 0 0 0 28 28 28 0 0 0 00 0 0 0 28 28 28 0 0 0 00 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0
y
{
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
2a 2b 2c
Rys.2. Schemat procesu usuwania zakłóceń dla filtru gaussowskiego (2b) oraz prostego uśredniającego (2c). Oryginalny obraz poddawany filtracji jest przedstawiony na rysunku (2a). Zastosowany filtr gaussowski ma maskę: {{1,4,1},{4,32,4},{1,4,1}}
Rys.1. Rysunek przedstawia przekrój przez wiersz 250 odpowiednio: obrazu oryginalnego (krzywa czerwona), zakłóconego szumem o rozkładzie normalnym ze średnią 0 i wariancją 20.0 (krzywa czarna) oraz obrazu odszumionego filtrem Gaussa z maską 5x5 (krzywa niebieska).
Obrazy przedstawione są na następnym slajdzie.
50 100 150 200 250 300 350
50
100
150
200
250
300 1
Usuwanie zakłóceń. Przykładcba
d e
Rys.1. Przykład zastosowania filtru Gaussa do filtracji obrazu zakłóconego szumem Gaussa.
a- obraz oryginalny (bez szumu).
(b) - obraz oryginalny po dodaniu szumu o rozkładzie gaussowskim o zerowej średniej i odchyleniu standardowym równym 10.0;
(c) – obraz (b) po filtracji filtrem Gaussa z maską5x5;
Obrazy (d) i (e) to odpowiednio obraz zakłócony szumem Gaussa o średniej zerowej i odchyleniu równym 20.0 oraz obraz po filtracji z maską 5x5.
Usuwanie zakłóceń. Przykład zakłóceń impulsowych
a b
Rys.1. Obraz (a) – obraz zakłócony 2% szumem typu salt and pepper; (b) – wynik usuwania zakłócenia przez filtrację gaussowską z jądrem przekształcenia 5x5.
Przykład wskazuje, że użycie tego typu filtracji do zakłóceń impulsowych (sól i pieprz) jest nieuzasadnione. Właściwym rozwiązaniem może być w tym przypadku filtracja medianowa.
Filtry górnoprzepustowe
W przeciwieństwie do filtrów dolnoprzepustowych, zadaniem filtrów górnoprzepustowych jest wyostrzanie obrazu.
Podstawowym narzędziem wyostrzania obrazu są operatory wyostrzające – operatory pierwszej i drugiej pochodnej.
Operatory pochodnych wykorzystywane są również jako narzędzia wykrywania krawędzi w obrazie.
Operatory pierwszej i drugiej pochodnej (1D)
Większość procedur wyostrzania obrazu oraz detekcji krawędzi wykorzystuje operatory pierwszej oraz drugiej pochodnej obrazu, przy czym w takim przypadku obraz jest dyskretną funkcją dwuwymiarową.
Dla uproszczenia zapiszmy operatory w przypadku jednowymiarowym.Operatory, odpowiednio, pierwszej i drugiej pochodnej mają postać:
a
b
c
Rys. 1. Ilustracja własności pierwszej i drugiej pochodnej sygnału dyskretnego. (a) – sygnał wejściowy. Można przyjąć, że jest to fragment wiersza pewnego obrazu; (b), (c) odpowiednio pierwsza i druga pochodna sygnału.
5 10 15 20 25 30
1
2
3
4
5
6
5 10 15 20 25 30
-1
1
2
3
4
5 10 15 20 25 30
-4
-2
2
4
Własności pierwszej i drugiej pochodnej:
obie generują zero w obszarach o ustalonej wartości,
dla punktów krawędzi pierwsza pochodna przyjmuje wartości niezerowe (dodatnie lub ujemne w zależności od rodzaju przejścia) w całym obszarze krawędzi z pominięciem ostatniego punktu. Efektem są stosunkowo rozległe obszary o niezerowych wartościach (grube krawędzie),
punkty krawędzi w obrazie mogą być rozpoznane na podstawie śledzenia wartości pierwszej pochodnej: piksele dla których wartość pierwszej pochodnej przekracza ustalony próg są interpretowane jako piksele krawędzi,
druga pochodna generuje dwie wartości: ujemną oraz dodatnią dla krawędzi o dowolnej grubości. Jest to cecha niepożądana, odpowiedzialna za zjawisko podwójnego konturu w obrazach po filtracji operatorem drugiej pochodnej,
korzystając z drugiej pochodnej krawędź może być rozpoznana na podstawie śledzenia przejść przez zero (patrz rysunek (c))
Wrażliwość pochodnych na zakłócenia
Rys. 1. Ilustracja wrażliwości pierwszej oraz drugiej pochodnej na zakłócenie szumem Gaussa. (a) – obraz oryginalny, jego pierwsza oraz druga pochodna; (b) oraz (c) przedstawia obrazy zakłócone szumem Gaussa o zerowej średniej oraz odchyleniu standardowym równym odpowiednio 1.0 oraz 10.0. Przykład wskazuje ogólną zasadęzgodnie z którą druga pochodna jest dużo bardziej wrażliwa na zakłócenia obecne w obrazie.
a
b
c
Problemem związanym ze stosowaniem pierwszej i drugiej pochodnej jako narzędzia detekcji obszarów o dużej zmienności wartości pikseli - w szczególności jako narzędzi detekcji krawędzi - jest ich wrażliwość na zakłócenia i artefakty obecne w obrazie.
W przypadku idealnym, niejednorodności wartości pikseli powinny występować jedynie w obszarach odpowiadających rzeczywistym, fizycznym krawędziom obiektów przedstawionych w obrazie.
Ze względu m. in. na występowanie zakłóceń (szumów), niejednorodności oświetlenia, czy faktury tła obrazu wierna (bezbłędna) detekcja krawędzi w obrazie jest bardzo trudna do osiągnięcia (niemożliwa?). Możliwe jest błędne wykrycie krawędzi w obszarze braku krawędzi (błędna odpowiedź pozytywna) lub pominięcie istniejącej krawędzi (błędna odpowiedź negatywna).
Sam proces detekcji najczęściej jest rozszerzany o dodatkowe etapy redukcji zakłóceń, progowania oraz – rzadziej - uzupełniania przerwanych (dziurawych) krawędzi.
W praktyce, nawet zakłócenia, które nie powodują wyraźnego pogorszenia wizualnej jakości obrazu prowadzą do zniekształcenia sygnału generowanego przez pierwszą i drugą pochodną. Taka sytuacja uniemożliwia poprawną identyfikację obszarów zawierających krawędzie.
Uśrednianie obrazu (filtracja dolnoprzepustowa)
Rys. 1. (a) – obraz oryginalny; (b) – obraz zaszumionyszumem Gaussa o średniej 0 oraz wariancji 10.0; (c) przekrój przez wybrany wiersz obrazu zaszumionego(widoczne zaszumienie); (d) i (e) - odpowiednio pierwsza i druga pochodna dla wybranego wiersza obrazu zaszumionego.
(f) – obraz po zastosowaniu filtru Gaussa z maskąprzedstawioną na rysunku (j); (g) – przekrój przez wiersz obrazu uśrednionego; (h) i (i) – odpowiednio pierwsza i druga pochodna dla wiersza obrazu wygładzonego.
W tym przypadku pozytywny efekt filtracji dolnoprzepustowej jest bezdyskusyjny. Zakłócenia o innej charakterystyce powinny być usuwane przez filtracjęinnego rodzaju.
a b
c
20 40 60 80 100
50
100
150
200
250
20 40 60 80 100
-20
-10
10
20
30
20 40 60 80 100
-40
-20
20
i
k
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
0 0 0 0 0 0 0 0 0 0 00 0 0 1 1 1 1 1 0 0 00 0 1 2 4 4 4 2 1 0 00 1 2 5 9 11 9 5 2 1 00 1 4 9 17 21 17 9 4 1 00 1 4 11 21 25 21 11 4 1 00 1 4 9 17 21 17 9 4 1 00 1 2 5 9 11 9 5 2 1 00 0 1 2 4 4 4 2 1 0 00 0 0 1 1 1 1 1 0 0 00 0 0 0 0 0 0 0 0 0 0
y
{
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
10 20 30 40 50 60 70
50
100
150
200
250
10 20 30 40 50 60
5
10
15
20
10 20 30 40 50 60
-4
-2
2
4
d
e
g
h
i
j
Istotnym etapem detekcji krawędzi jest wstępna filtracja obrazu filtrem wygładzającym (dolnoprzepustowym) w celu redukcji wpływu zakłóceń na efekt detekcji. Przykład wpływu filtru dolnoprzepustowego na rezultat detekcji krawędzi pokazany jest na rysunku.
f
Laplasjan – narzędzie wyostrzania obrazów
Laplasjan (druga pochodna) dla dyskretnej funkcji dwuwymiarowej ma postać:
i jest najczęściej realizowany jako przekształcenie z maskami 3x3 postaci:
Laplasjan z maską pierwszej postaci jest izotropowy jedynie dla krawędzi poziomych i pionowych. Włączenie równieżkierunków diagonalnych wymaga stosowania maski drugiej postaci. W takim przypadku laplasjan jest operatorem bezkierunkowym. Cecha taka jest niewątpliwą zaletą, ponieważ zastosowanie jednej maski odpowiada detekcji krawędzi o dowolnym kierunku. Jest to rozwiązanie o mniejszej złożoności obliczeniowej i czasowej w stosunku do rozwiązańwykorzystujących pierwszą pochodną (metody gradientowe).
Analiza laplasjanu niesie informację o znaku krawędzi, tzn. czy krawędź reprezentuje przejście od wartości mniejszej do większej czy też przeciwnie.
Możliwe jest stosowanie masek ze zmienionymi znakami współczynników w stosunku do podanych wyżej.
Suma wag masek Laplace’a jest równa zero, dzięki czemu w obszarach stałej wartości pikseli przekształcenie generuje odpowiedź zerową.
W ogólności zastosowanie laplasjanu powoduje pojawianie się w obrazie wynikowym wartości ujemnych.
Laplasjan. Przykład
i
k
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
255 0 0 0 0 0 0 0 0 0 0255 255 0 0 0 0 0 0 0 0 0255 255 255 0 0 0 0 0 0 0 0255 255 255 255 0 0 0 0 0 0 0255 255 255 255 255 0 0 0 0 0 0255 255 255 255 255 255 0 0 0 0 0255 255 255 255 255 255 255 0 0 0 0255 255 255 255 255 255 255 255 0 0 0255 255 255 255 255 255 255 255 255 0 0255 255 255 255 255 255 255 255 255 255 0255 255 255 255 255 255 255 255 255 255 255
y
{
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
i
k
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
255 0 0 0 0 0 0 0 0 0 0255 −765 765 255 0 0 0 0 0 0 0255 −255 −765 765 255 0 0 0 0 0 0255 0 −255 −765 765 255 0 0 0 0 0255 0 0 −255 −765 765 255 0 0 0 0255 0 0 0 −255 −765 765 255 0 0 0255 0 0 0 0 −255 −765 765 255 0 0255 0 0 0 0 0 −255 −765 765 255 0255 0 0 0 0 0 0 −255 −765 765 0255 0 0 0 0 0 0 0 −255 −765 0255 255 255 255 255 255 255 255 255 255 255
y
{
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
Rys. 1. Przykład filtracji obrazu z maską laplasjanu z elementem centralnym równym -8.
(a), (b) – macierz obrazu oraz obraz; (c), (d) – macierz obrazu przetworzonego oraz obraz przetworzony.
Na rysunkach (c) i (d) widoczny jest efekt podwójnego konturu.
a c
b d
Wykorzystanie laplasjanu - przykład
a
b
c
Rys. 1. (a) – obraz oryginalny; (b) – wynik przetwarzania z maską Laplace’a z elementem centralnym -4; (c) – wynik po przeskalowaniu obrazu (b) do przedziału [0,255].
Rysunek (b) przedstawia obraz w którym wartości obrazu po zastosowaniu przekształcenia Laplace’a zostały obcięte do przedziału [0,255]. Wartośćminimalna i maksymalna jakie pojawiają się w obrazie wynikowym to odpowiednio -299 oraz 303.
Wykorzystanie laplasjanu - przykład
a
b
c
Rys. 1. (a) – obraz oryginalny; (b) – wynik przetwarzania z maską Laplace’a z elementem centralnym -8; (c) – wynik przeskalowania obrazu (b) do przedziału [0,255].
W tym przypadku poprawnie odwzorowana została znacznie większa liczba krawędzi (uwzględnione kierunki diagonalne).
Laplasjan - wyostrzanie obrazu
Laplasjan jest ważnym narzędziem wyostrzania obrazów. Dysponując obrazem wejściowym f(x,y) jest wyostrzoną postaćmożna otrzymać przez odjęcie (lub dodanie) do obrazu wejściowego obrazu będącego wynikiem przetwarzania z maską Laplace’a:
5 10 15 20 25 30
1
2
3
4
5
6
5 10 15 20 25 30
-4
-2
2
4
5 10 15 20 25 30-2
2
4
6
8
Rys. 1. Wyostrzanie sygnału jednowymiarowego poprzez sumowanie (odejmowanie) sygnału z przesuniętym laplasjanem. (a) – sygnał wejściowy, (b) – druga pochodna sygnału, (c) – wynik odjęcia drugiej pochodnej od sygnału. Widoczne jest wzmocnienie kontrastu na granicach krawędzi. Proces ten jest podobny do fizjologicznego tłumienia obocznego zachodzącego w ludzkim oku i odpowiedzialnego m. in. za powstawanie tzw. masm Macha.
gdzie znak, + lub -, zależy od postaci masek użytych do przetwarzania. W przypadku masek przedstawionych na poprzednich rysunkach stosuje się odejmowanie (znak -). W przypadku zmiany znaku wag w maskach należy zastosowaćdodawanie (znak +).
Operacja dodania do obrazu wejściowego wyniku wyznaczenia drugiej pochodnej (laplasjanu) powoduje zwiększenie kontrastu na krawędziach.
a
b
c
Efekt wyostrzenia krawędzi można dodatkowo wzmocnićpoprzez wprowadzenie czynnika skalującego k, zwiększającego wagę obrazu będącego wynikiem wyznaczenia drugiej pochodnej:
Proces taki jest nazywany podbijaniem częstości wysokich: highboost filtering.
Uwaga: obraz f’(x,y) nie powinien być dodatkowo skalowany do dopuszczalnego przedziału wartości! Dlaczego?
Laplasjan – wyostrzanie obrazu. Przykłada
b
c
d
Rys. 1. Wyostrzanie obrazu przy wykorzystaniu operatora Laplace’a. (a) – obraz oryginalny; (b), (c) i (d) przedstawiają obrazy wyostrzone (highboost filtering) dla współczynnika k równego odpowiednio: 0.5, 1.0 oraz 1.5.
Laplasjan – wyostrzanie obrazu. Przykłada
b c
Rys. 1. Przykład niewłaściwego przetwarzania obrazu wyostrzonego. (a) – obraz oryginalny z zaznaczonym wierszem 150; (b) – przekrój przez wiersz 150 obrazu oryginalnego; (c) – przekrój przez wiersz 150 w obrazie wyostrzonym z parametrem k=1.5. Widoczne jest przekroczenie przedziału wartości [0,255]; (d) – przekrój przez wiersz 150 po dodatkowym przeskalowaniu przedziału wartości przyjmowanych przez piksele do przedziału [0,255].
Efektem tego jest globalne zmniejszenie kontrastu przedstawione na rysunku (e).
100 200 300 400
50
100
150
200
100 200 300 400
-400
-200
200
400
600
100 200 300 400
50
100
150
200
250d
e
Maskowanie nieostrości (unsharp masking)Przykładem bardziej ogólnej metody wyostrzania jest metoda maskowania nieostrości. Metoda ta wykorzystuje
podobne zjawiska jak poprzednio opisana, ale jest bardziej elastyczna.
Procedura maskowania nieostrości przebiega w następujący sposób:
1. przeprowadź filtrację dolnoprzepustową obrazu oryginalnego (prosty filtr uśredniający lub filtr Gaussa),
2. odejmij obraz wygładzony od obrazu oryginalnego. Wynik odejmowania jest nazywany maską,
3. dodaj maskę do obrazu oryginalnego
Większa elastyczność metody maskowania nieostrości polega na możliwości sterowania nie tylko głębokościąwyostrzenia ale również szerokością.
5 10 15 20
50
100
150
200
250
10 15 20
-10
-5
5
10
10 15 20100
120
140
160
180
200
5 10 15 20
50
100
150
200
250
10 15 20
-40
-20
20
40
10 15 20
100
150
200
250
a b c
d e f
Rys. 1. Przykład maskowania nieostrości w przypadku wykorzystania dwóch różnych filtrów wygładzających.
(a), (b) i (c) – zastosowanie filtru Gaussa 3x3 piksele; (d), (e) i (f) – zastosowanie filtru Gaussa 15x15 pikseli.